Line 1... |
Line 1... |
#!/usr/bin/perl -w
|
#!/usr/bin/perl -w
|
# $Id: vbomconv 518 2013-05-12 16:45:02Z mueller $
|
# $Id: vbomconv 543 2013-11-03 22:43:41Z mueller $
|
#
|
#
|
# Copyright 2007-2012 by Walter F.J. Mueller
|
# Copyright 2007-2013 by Walter F.J. Mueller
|
#
|
#
|
# This program is free software; you may redistribute and/or modify it under
|
# This program is free software; you may redistribute and/or modify it under
|
# the terms of the GNU General Public License as published by the Free
|
# the terms of the GNU General Public License as published by the Free
|
# Software Foundation, either version 2, or at your option any later version.
|
# Software Foundation, either version 2, or at your option any later version.
|
#
|
#
|
Line 12... |
Line 12... |
# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
# for complete details.
|
# for complete details.
|
#
|
#
|
# Revision History:
|
# Revision History:
|
# Date Rev Version Comment
|
# Date Rev Version Comment
|
|
# 2013-10-20 543 1.10 add --viv_vhdl
|
# 2012-02-05 456 1.9.4 redo filename substitution (= and :); add --get_top
|
# 2012-02-05 456 1.9.4 redo filename substitution (= and :); add --get_top
|
# 2012-01-02 448 1.9.3 use in ghdl_m -fexplicit also when simprim used
|
# 2012-01-02 448 1.9.3 use in ghdl_m -fexplicit also when simprim used
|
# 2011-11-27 433 1.9.2 use in ghdl_m -fexplicit when unisim used
|
# 2011-11-27 433 1.9.2 use in ghdl_m -fexplicit when unisim used
|
# 2011-08-13 405 1.9.1 always write 'vhdl' into xst prj files again; for
|
# 2011-08-13 405 1.9.1 always write 'vhdl' into xst prj files again; for
|
# -xst_export: remove opt file export, add ucf_cpp
|
# -xst_export: remove opt file export, add ucf_cpp
|
Line 55... |
Line 56... |
my %opts = ();
|
my %opts = ();
|
|
|
GetOptions(\%opts, "help", "trace", "ise_path=s",
|
GetOptions(\%opts, "help", "trace", "ise_path=s",
|
"dep_xst", "dep_ghdl", "dep_isim",
|
"dep_xst", "dep_ghdl", "dep_isim",
|
"xst_prj", "isim_prj",
|
"xst_prj", "isim_prj",
|
|
"viv_vhdl",
|
"ghdl_a", "ghdl_a_cmd",
|
"ghdl_a", "ghdl_a_cmd",
|
"ghdl_i", "ghdl_i_cmd",
|
"ghdl_i", "ghdl_i_cmd",
|
"ghdl_m", "ghdl_m_cmd",
|
"ghdl_m", "ghdl_m_cmd",
|
"xst_export=s",
|
"xst_export=s",
|
"ghdl_export=s",
|
"ghdl_export=s",
|
Line 341... |
Line 343... |
foreach (@file_list) {
|
foreach (@file_list) {
|
print "vhdl work $_\n";
|
print "vhdl work $_\n";
|
}
|
}
|
}
|
}
|
|
|
|
# --viv_vhdl ---------------------------------------------------------
|
|
|
|
if (exists $opts{viv_vhdl}) {
|
|
print "read_vhdl {\n";
|
|
foreach (@file_list) {
|
|
print " $_\n";
|
|
}
|
|
print "}\n";
|
|
}
|
|
|
# --dep_xst ----------------------------------------------------------
|
# --dep_xst ----------------------------------------------------------
|
|
|
if (exists $opts{dep_xst}) {
|
if (exists $opts{dep_xst}) {
|
print "#\n";
|
print "#\n";
|
print "$stem.ngc : $stem.dep_xst\n";
|
print "$stem.ngc : $stem.dep_xst\n";
|
Line 811... |
Line 823... |
print " --dep_xst generate xst dependencies for make (on stdout)\n";
|
print " --dep_xst generate xst dependencies for make (on stdout)\n";
|
print " --dep_ghdl generate ghdl dependencies for make (on stdout)\n";
|
print " --dep_ghdl generate ghdl dependencies for make (on stdout)\n";
|
print " --dep_isim generate isim dependencies for make (on stdout)\n";
|
print " --dep_isim generate isim dependencies for make (on stdout)\n";
|
print " --xst_prj generate xst project file (on stdout)\n";
|
print " --xst_prj generate xst project file (on stdout)\n";
|
print " --isim_prj generate isim project file (on stdout)\n";
|
print " --isim_prj generate isim project file (on stdout)\n";
|
|
print " --viv_vhdl generate vivado read_vhdl command (on stdout)\n";
|
print " --ghdl_a generate and execute ghdl -a (analyse)\n";
|
print " --ghdl_a generate and execute ghdl -a (analyse)\n";
|
print " --ghdl_a_cmd like ghdl_a, but only print command, no exec\n";
|
print " --ghdl_a_cmd like ghdl_a, but only print command, no exec\n";
|
print " --ghdl_i generate and execute ghdl -i (inspect)\n";
|
print " --ghdl_i generate and execute ghdl -i (inspect)\n";
|
print " --ghdl_i_cmd like ghdl_i, but only print command, no exec\n";
|
print " --ghdl_i_cmd like ghdl_i, but only print command, no exec\n";
|
print " --ghdl_m generate and execute ghdl -m (make)\n";
|
print " --ghdl_m generate and execute ghdl -m (make)\n";
|