Line 1... |
Line 1... |
#!/usr/bin/perl -w
|
#!/usr/bin/perl -w
|
# $Id: vbomconv 558 2014-06-01 22:20:51Z mueller $
|
# $Id: vbomconv 575 2014-07-27 20:55:41Z mueller $
|
#
|
#
|
# Copyright 2007-2013 by Walter F.J. Mueller
|
# Copyright 2007-2014 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
|
|
# 2014-07-26 575 1.10.1 use XTWI_PATH now (ise/vivado switch done later)
|
# 2013-10-20 543 1.10 add --viv_vhdl
|
# 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
|
Line 218... |
Line 219... |
|
|
if (exists $opts{ghdl_a} || exists $opts{ghdl_a_cmd}) {
|
if (exists $opts{ghdl_a} || exists $opts{ghdl_a_cmd}) {
|
foreach (@file_list) {
|
foreach (@file_list) {
|
my $file = $_;
|
my $file = $_;
|
my $cmd = "ghdl -a";
|
my $cmd = "ghdl -a";
|
$cmd .= ' -P$XILINX/ghdl/unisim' if $has_unisim;
|
$cmd .= ' -P$XTWI_PATH/ISE_DS/ISE/ghdl/unisim' if $has_unisim;
|
$cmd .= ' -P$XILINX/ghdl/simprim' if $has_simprim;
|
$cmd .= ' -P$XTWI_PATH/ISE_DS/ISE/ghdl/simprim' if $has_simprim;
|
$cmd .= " --ieee=synopsys";
|
$cmd .= " --ieee=synopsys";
|
$cmd .= " $file";
|
$cmd .= " $file";
|
print "$cmd\n";
|
print "$cmd\n";
|
if (exists $opts{ghdl_a}) {
|
if (exists $opts{ghdl_a}) {
|
my $wrc = system "/bin/sh", "-c", $cmd;
|
my $wrc = system "/bin/sh", "-c", $cmd;
|
Line 303... |
Line 304... |
|
|
$cmd .= "ghdl -m";
|
$cmd .= "ghdl -m";
|
$cmd .= " -o $stem";
|
$cmd .= " -o $stem";
|
# -fexplicit needed for ISE 13.1,13.3
|
# -fexplicit needed for ISE 13.1,13.3
|
$cmd .= ' -fexplicit' if $has_unisim or $has_simprim;
|
$cmd .= ' -fexplicit' if $has_unisim or $has_simprim;
|
$cmd .= ' -P$XILINX/ghdl/unisim' if $has_unisim;
|
$cmd .= ' -P$XTWI_PATH/ISE_DS/ISE/ghdl/unisim' if $has_unisim;
|
$cmd .= ' -P$XILINX/ghdl/simprim' if $has_simprim;
|
$cmd .= ' -P$XTWI_PATH/ISE_DS/ISE/ghdl/simprim' if $has_simprim;
|
$cmd .= " --ieee=synopsys";
|
$cmd .= " --ieee=synopsys";
|
$cmd .= " --no-vital-checks" if $is_ssim or $is_fsim or $is_tsim;
|
$cmd .= " --no-vital-checks" if $is_ssim or $is_fsim or $is_tsim;
|
|
|
foreach (@file_list) {
|
foreach (@file_list) {
|
next unless /\.c$/; # C source ?
|
next unless /\.c$/; # C source ?
|