Update GNU address in -V output and add -V stub to VHDL target.

This patch updates the GNU address in the -V output, adds the
VERSION_TAG info to the tgt-vvp back end and adds the whole -V
hook to the tgt-vhdl back end.
This commit is contained in:
Cary R 2008-11-18 18:28:45 -08:00 committed by Stephen Williams
parent cedbdb63fa
commit 5eaea58209
6 changed files with 48 additions and 24 deletions

View File

@ -31,9 +31,9 @@ const char NOTICE[] =
" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" " MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n"
" GNU General Public License for more details.\n" " GNU General Public License for more details.\n"
"\n" "\n"
" You should have received a copy of the GNU General Public License\n" " You should have received a copy of the GNU General Public License along\n"
" along with this program; if not, write to the Free Software\n" " with this program; if not, write to the Free Software Foundation, Inc.,\n"
" Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA\n" " 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.\n"
; ;
const char HELP[] = const char HELP[] =
@ -844,7 +844,7 @@ int main(int argc, char **argv)
if (version_flag || verbose_flag) { if (version_flag || verbose_flag) {
printf("Icarus Verilog version " VERSION " (" VERSION_TAG ")\n\n"); printf("Icarus Verilog version " VERSION " (" VERSION_TAG ")\n\n");
printf("Copyright 1998-2008 Stephen Williams\n"); printf("Copyright 1998-2008 Stephen Williams\n\n");
puts(NOTICE); puts(NOTICE);
} }

View File

@ -31,9 +31,9 @@ const char NOTICE[] =
" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" " MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n"
" GNU General Public License for more details.\n" " GNU General Public License for more details.\n"
"\n" "\n"
" You should have received a copy of the GNU General Public License\n" " You should have received a copy of the GNU General Public License along\n"
" along with this program; if not, write to the Free Software\n" " with this program; if not, write to the Free Software Foundation, Inc.,\n"
" Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA\n" " 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.\n"
; ;
# include <stdio.h> # include <stdio.h>
@ -289,7 +289,7 @@ int main(int argc, char*argv[])
case 'v': case 'v':
fprintf(stderr, "Icarus Verilog Preprocessor version " fprintf(stderr, "Icarus Verilog Preprocessor version "
VERSION " (" VERSION_TAG ")\n\n"); VERSION " (" VERSION_TAG ")\n\n");
fprintf(stderr, "%s\n", COPYRIGHT); fprintf(stderr, "%s\n\n", COPYRIGHT);
fputs(NOTICE, stderr); fputs(NOTICE, stderr);
break; break;

14
main.cc
View File

@ -33,9 +33,9 @@ const char NOTICE[] =
" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" " MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n"
" GNU General Public License for more details.\n" " GNU General Public License for more details.\n"
"\n" "\n"
" You should have received a copy of the GNU General Public License\n" " You should have received a copy of the GNU General Public License along\n"
" along with this program; if not, write to the Free Software\n" " with this program; if not, write to the Free Software Foundation, Inc.,\n"
" Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA\n" " 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.\n"
; ;
# include <stdio.h> # include <stdio.h>
@ -589,10 +589,10 @@ int main(int argc, char*argv[])
return flag_errors; return flag_errors;
if (version_flag) { if (version_flag) {
cout << "\n\nIcarus Verilog Parser/Elaborator version " cout << "\nIcarus Verilog Parser/Elaborator version "
<< VERSION << " (" << VERSION_TAG << ")" << endl; << VERSION << " (" << VERSION_TAG << ")" << endl << endl;
cout << COPYRIGHT << endl; cout << COPYRIGHT << endl << endl;
cout << endl << NOTICE << endl; cout << NOTICE << endl;
dll_target_obj.test_version(flags["DLL"]); dll_target_obj.test_version(flags["DLL"]);

View File

@ -38,7 +38,7 @@ INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@ INSTALL_DATA = @INSTALL_DATA@
CPPFLAGS = @ident_support@ -I. -I$(srcdir)/.. @CPPFLAGS@ @DEFS@ @PICFLAG@ CPPFLAGS = @ident_support@ -I. -I$(srcdir)/.. -DVERSION='"$(VERSION)"' @CPPFLAGS@ @DEFS@ @PICFLAG@
CXXFLAGS = -Wall @CXXFLAGS@ CXXFLAGS = -Wall @CXXFLAGS@
LDFLAGS = @LDFLAGS@ LDFLAGS = @LDFLAGS@

View File

@ -18,6 +18,7 @@
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/ */
#include "version.h"
#include "vhdl_target.h" #include "vhdl_target.h"
#include "vhdl_element.hh" #include "vhdl_element.hh"
@ -31,6 +32,24 @@
#include <map> #include <map>
#include <set> #include <set>
static const char*version_string =
"Icarus Verilog VHDL Code Generator " VERSION " (" VERSION_TAG ")\n\n"
"Copyright (C) 2008 Nick Gasson (nick@nickg.me.uk)\n\n"
" This program is free software; you can redistribute it and/or modify\n"
" it under the terms of the GNU General Public License as published by\n"
" the Free Software Foundation; either version 2 of the License, or\n"
" (at your option) any later version.\n"
"\n"
" This program is distributed in the hope that it will be useful,\n"
" but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n"
" GNU General Public License for more details.\n"
"\n"
" You should have received a copy of the GNU General Public License along\n"
" with this program; if not, write to the Free Software Foundation, Inc.,\n"
" 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.\n"
;
/* /*
* Maps a signal to the scope it is defined within. Also * Maps a signal to the scope it is defined within. Also
* provides a mechanism for renaming signals -- i.e. when * provides a mechanism for renaming signals -- i.e. when
@ -194,3 +213,9 @@ extern "C" int target_design(ivl_design_t des)
return g_errors; return g_errors;
} }
extern "C" const char* target_query(const char*key)
{
if (strcmp(key, "version") == 0) return version_string;
return 0;
}

View File

@ -1,5 +1,5 @@
/* /*
* Copyright (c) 2001-2007 Stephen Williams (steve@icarus.com) * Copyright (c) 2001-2008 Stephen Williams (steve@icarus.com)
* *
* This source code is free software; you can redistribute it * This source code is free software; you can redistribute it
* and/or modify it in source code form under the terms of the GNU * and/or modify it in source code form under the terms of the GNU
@ -17,9 +17,7 @@
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*/ */
/* # include "version.h"
*/
# include "vvp_priv.h" # include "vvp_priv.h"
# include <string.h> # include <string.h>
# include <assert.h> # include <assert.h>
@ -27,7 +25,8 @@
# include <sys/stat.h> # include <sys/stat.h>
static const char*version_string = static const char*version_string =
"Icarus Verilog VVP Code Generator " VERSION "\n" "Icarus Verilog VVP Code Generator " VERSION " (" VERSION_TAG ")\n\n"
"Copyright (c) 2001-2008 Stephen Williams (steve@icarus.com)\n\n"
" This program is free software; you can redistribute it and/or modify\n" " This program is free software; you can redistribute it and/or modify\n"
" it under the terms of the GNU General Public License as published by\n" " it under the terms of the GNU General Public License as published by\n"
" the Free Software Foundation; either version 2 of the License, or\n" " the Free Software Foundation; either version 2 of the License, or\n"
@ -38,9 +37,9 @@ static const char*version_string =
" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" " MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n"
" GNU General Public License for more details.\n" " GNU General Public License for more details.\n"
"\n" "\n"
" You should have received a copy of the GNU General Public License\n" " You should have received a copy of the GNU General Public License along\n"
" along with this program; if not, write to the Free Software\n" " with this program; if not, write to the Free Software Foundation, Inc.,\n"
" Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA\n" " 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.\n"
; ;
FILE*vvp_out = 0; FILE*vvp_out = 0;