1VPPREPROC(1) User Contributed Perl Documentation VPPREPROC(1)
2
3
4
6 vppreproc - Preprocess Verilog code using verilog-perl
7
9 vppreproc --help
10 vppreproc [verilog_options] [-o filename] [verilog_files.v...]
11
13 Vppreproc reads the Verilog files passed on the command line and
14 outputs preprocessed output to standard out or the filename passed with
15 -o.
16
17 Note vppreproc was named vppp until release 3.100, so if you're looking
18 for vppp, this is the right replacement. The vppp name conflicted with
19 another non-Verilog related tool.
20
22 The following arguments are compatible with GCC, VCS and most Verilog
23 programs.
24
25 +define+var+value =item -Dvar=value
26 Defines the given preprocessor symbol.
27
28 -f file
29 Read the specified file, and act as if all text inside it was
30 specified as command line parameters.
31
32 -f file
33 Read the specified file, and act as if all text inside it was
34 specified as command line parameters. Any relative paths are
35 relative to the current directory.
36
37 +incdir+dir =item -Idir
38 Add the directory to the list of directories that should be
39 searched for include directories or libraries.
40
41 +libext+ext+ext...
42 Specify the extensions that should be used for finding modules. If
43 for example module x is referenced, look in x.ext.
44
45 -y dir
46 Add the directory to the list of directories that should be
47 searched for include directories or libraries.
48
50 --help
51 Displays this message and program version and exits.
52
53 --o file
54 Use the given filename for output instead of stdout.
55
56 --dump-defines
57 Suppress normal output, and instead print a list of all defines
58 existing at the end of processing the input file.
59
60 --noblank
61 Removes empty lines from the output. Should be used with --noline,
62 as if correct line numbers are needed, blank lines must be
63 preserved for proper accounting by the program reading the output
64 of vppreproc.
65
66 --nocomment
67 Remove comments.
68
69 --noline
70 Remove `line directives.
71
72 -P Same as --noline --noblank, similar to "GCC -P" behavior.
73
74 --pedantic
75 Rigorously obey the Verilog spec. This disables the `error
76 feature, and may disable other features that are not specified in
77 the approved language reference manual. Defaults false.
78
79 --simple
80 Requests simple output, an alias for --noline, --nocomment and
81 --noblank.
82
83 --synthesis
84 Define SYNTHESIS, and ignore text between "ambit", "pragma",
85 "synopsys" or "synthesis" translate_off and translate_on meta
86 comments. Note using metacomments is discouraged as they have led
87 to silicon bugs (versus ifdef SYNTHESIS); see
88 <https://www.veripool.org/papers/TenIPEdits_SNUGBos07_paper.pdf>.
89
90 --version
91 Displays program version and exits.
92
94 Vppreproc supports the preprocessing constructs defined in the Verilog
95 2001 and SystemVerilog 2005 standards.
96
97 The following additional constructs may be added to your Verilog code.
98
99 `__FILE__
100 The __FILE__ define expands to the current filename as a string,
101 like C++'s __FILE__. This was incorporated into to the 1800-2009
102 standard (but supported by Verilog-Perl since 2004!)
103
104 `__LINE__
105 The __LINE__ define expands to the current filename as a string,
106 like C++'s __LINE__. This was incorporated into to the 1800-2009
107 standard (but supported by Verilog-Perl since 2004!)
108
109 `error string
110 This will report an error when encountered, like C++'s #error.
111
113 Verilog-Perl is part of the <https://www.veripool.org/> free Verilog
114 EDA software tool suite. The latest version is available from CPAN and
115 from <https://www.veripool.org/verilog-perl>.
116
117 Copyright 2000-2022 by Wilson Snyder. This package is free software;
118 you can redistribute it and/or modify it under the terms of either the
119 GNU Lesser General Public License Version 3 or the Perl Artistic
120 License Version 2.0.
121
123 Wilson Snyder <wsnyder@wsnyder.org>
124
126 Verilog-Perl, Verilog::Getopt, Verilog::Preproc
127
128
129
130perl v5.36.0 2023-01-20 VPPREPROC(1)