Add test that manifest (tar file) contains all files in repository
git-svn-id: file://localhost/svn/verilator/trunk/verilator@1058 77ca24e4-aefa-0310-84f0-b9a241c72d87
This commit is contained in:
parent
faad36a3ef
commit
4f30025aa0
|
|
@ -0,0 +1,26 @@
|
|||
^CVS/
|
||||
/CVS/
|
||||
\.git/
|
||||
\.svn/
|
||||
\.(bak|old)/
|
||||
\.(bak|old)$
|
||||
\bMakefile$
|
||||
\.tar\.
|
||||
.*\.tgz
|
||||
.*\.log
|
||||
.*\.tmp
|
||||
.*\.tex
|
||||
.*\.key
|
||||
.*\.vcd
|
||||
/obj_dir/
|
||||
/obj_dbg/
|
||||
/obj_opt/
|
||||
/logs/
|
||||
Makefile
|
||||
src/Makefile_obj
|
||||
include/verilated.mk
|
||||
config.cache
|
||||
config.status
|
||||
verilator_bin.*
|
||||
autom4te\.cache/
|
||||
nodist/
|
||||
29
Makefile.in
29
Makefile.in
|
|
@ -103,19 +103,25 @@ DISTBIN = $(wildcard bin/verilator-*)
|
|||
|
||||
DISTFILES_INC = $(INFOS) .cvsignore COPYING *.in *.ac \
|
||||
Changes README TODO \
|
||||
MANIFEST.SKIP \
|
||||
bin/* \
|
||||
install-sh configure mkinstalldirs *.texi \
|
||||
include/verilated.[chv]* \
|
||||
include/verilatedos.[chv]* \
|
||||
include/*.in \
|
||||
src/.cvsignore src/*.in src/*.cpp src/*.[chly] src/astgen src/*fix \
|
||||
include/.*ignore \
|
||||
.*attributes */.*attributes */*/.*attributes \
|
||||
src/.*ignore src/*.in src/*.cpp src/*.[chly] src/astgen src/*fix \
|
||||
src/*.pl \
|
||||
test_*/.cvsignore test_*/Makefile* test_*/*.cpp \
|
||||
test_*/.*ignore test_*/Makefile* test_*/*.cpp \
|
||||
test_*/*.pl test_*/*.v test_*/*.vc test_*/vlint \
|
||||
test_verilated/vgen*.pl \
|
||||
test_regress/t/*.v* \
|
||||
test_regress/t/*.pl \
|
||||
test_regress/t/*.cpp \
|
||||
test_regress/t/*.h \
|
||||
test_regress/t/*.mem \
|
||||
test_regress/t/*.out \
|
||||
test_regress/t/*.pl \
|
||||
test_regress/t/*.v* \
|
||||
verilator.* \
|
||||
|
||||
INST_PROJ_FILES = \
|
||||
|
|
@ -203,7 +209,7 @@ verilator.pdf: bin/verilator $(DISTCONFIG)
|
|||
mv verilator2.tex verilator.tex
|
||||
pdflatex verilator.tex
|
||||
pdflatex verilator.tex
|
||||
-rm -f verilator.toc verilator.aux verilator.idx
|
||||
-rm -f verilator.toc verilator.aux verilator.idx verilator.out
|
||||
|
||||
INSTALL: install.texi
|
||||
$(MAKEINFO) -I$(srcdir) $(srcdir)/install.texi --output=$@ \
|
||||
|
|
@ -253,8 +259,8 @@ install-project: dist
|
|||
for p in verilator.1 ; do \
|
||||
$(INSTALL_PROGRAM) -m 0666 $$p $(DIRPROJECT_PREFIX)/man/man1/$$p; \
|
||||
done
|
||||
$(INST_PROJ_CVS) $(DISTNAME).tar.gz $(DIRPROJECT)/hw/utils/verilator/verilator.tgz
|
||||
rm $(DISTNAME).tar.gz
|
||||
$(INST_PROJ_CVS) $(DISTNAME).tgz $(DIRPROJECT)/hw/utils/verilator/verilator.tgz
|
||||
rm $(DISTNAME).tgz
|
||||
|
||||
install-project-quick:
|
||||
@echo "Install-project-quick (no strip) to $(DIRPROJECT)"
|
||||
|
|
@ -331,6 +337,12 @@ TAGFILES=${srcdir}/*/*.cpp ${srcdir}/*/*.h ${srcdir}/*/[a-z]*.in \
|
|||
TAGS: $(TAGFILES)
|
||||
etags $(TAGFILES)
|
||||
|
||||
######################################################################
|
||||
# Test targets
|
||||
|
||||
dist-file-list:
|
||||
@echo "dist-file-list:"; # Scripts look for this
|
||||
@echo $(wildcard $(DISTFILES))
|
||||
|
||||
######################################################################
|
||||
# Distributions
|
||||
|
|
@ -358,6 +370,7 @@ dist: $(DISTDEP) maintainer-copy
|
|||
chmod -R a+r $(DISTNAME)
|
||||
tar chf $(DISTNAME).tar $(DISTNAME)
|
||||
gzip --force --best $(DISTNAME).tar
|
||||
mv $(DISTNAME).tgz $(DISTNAME).tgz
|
||||
rm -fr $(DISTNAME)
|
||||
|
||||
maintainer-diff:
|
||||
|
|
@ -367,4 +380,4 @@ preexist:
|
|||
svnorcvs nexists $(DISTTAGNAME)
|
||||
|
||||
maintainer-dist: preexist dist tag
|
||||
svnorcvs release $(DISTNAME).tar.gz
|
||||
svnorcvs release $(DISTNAME).tgz
|
||||
|
|
|
|||
|
|
@ -60,7 +60,7 @@ The latest version is available at
|
|||
@uref{http://www.veripool.org/verilator}
|
||||
|
||||
Download the latest package from that site, and decompress.
|
||||
@samp{gunzip verilator_version.tar.gz ; tar xvf verilator_version.tar}
|
||||
@samp{tar xvzf verilator_version.tgz}
|
||||
|
||||
@node Directory Structure, Supported Systems, Obtaining Distribution, Top
|
||||
@section Directory Structure
|
||||
|
|
|
|||
|
|
@ -0,0 +1,58 @@
|
|||
#!/usr/bin/perl
|
||||
if (!$::Driver) { use FindBin; exec("./driver.pl", @ARGV, $0); die; }
|
||||
# $Id$
|
||||
# DESCRIPTION: Verilator: Verilog Test driver/expect definition
|
||||
#
|
||||
# Copyright 2003 by Wilson Snyder. This program is free software; you can
|
||||
# redistribute it and/or modify it under the terms of either the GNU
|
||||
# General Public License or the Perl Artistic License.
|
||||
|
||||
my $root = "..";
|
||||
my $Debug;
|
||||
|
||||
###
|
||||
# Call once and ignore to rebuild any targets before we need the output
|
||||
`cd $root && make dist-file-list`;
|
||||
my $manifest_files = `cd $root && make dist-file-list`;
|
||||
$manifest_files =~ s!.*dist-file-list:!!sg;
|
||||
my %files;
|
||||
foreach my $file (split /\s+/,$manifest_files) {
|
||||
next if $file eq '';
|
||||
$files{$file} |= 1;
|
||||
}
|
||||
|
||||
my $all_files = `cd $root && find . -type f -print`;
|
||||
foreach my $file (split /\s+/,$all_files) {
|
||||
next if $file eq '';
|
||||
$file =~ s!^\./!!;
|
||||
$files{$file} |= 2;
|
||||
}
|
||||
|
||||
my $skip = file_contents("$root/MANIFEST.SKIP");
|
||||
foreach my $file (sort keys %files) {
|
||||
foreach my $skip (split /\s+/,$skip) {
|
||||
if ($file =~ /$skip/) {
|
||||
$files{$file} |= 4;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
foreach my $file (sort keys %files) {
|
||||
my $tar = $files{$file}&1;
|
||||
my $dir = $files{$file}&2;
|
||||
my $skip = $files{$file}&4;
|
||||
|
||||
print +(($tar ? "TAR ":" ")
|
||||
.($dir ? "DIR ":" ")
|
||||
.($skip ? "SKIP ":" ")
|
||||
." $file\n") if $Debug;
|
||||
|
||||
if ($dir && !$tar && !$skip) {
|
||||
$Last_Self->error("File not in manifest or MANIFEST.SKIP: $file");
|
||||
} elsif (!$dir && $tar && !$skip) {
|
||||
$Last_Self->error("File in manifest, but not directory: $file");
|
||||
}
|
||||
}
|
||||
|
||||
ok(1);
|
||||
1;
|
||||
Loading…
Reference in New Issue