1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-11-19 00:13:33 +00:00

cad/freehdl: resurrect

This commit is contained in:
Thierry Thomas 2023-11-21 21:01:18 +01:00
parent b4123d933a
commit fd8e54173e
14 changed files with 263 additions and 1 deletions

1
MOVED
View File

@ -8088,5 +8088,4 @@ devel/mingw32-bin-msvcrt||2023-11-21|Has expired: Last upstream release was in 2
devel/mingw32-zlib||2023-11-21|Has expired: Last upstream release was in 2014 and project mingw32 is defunct
devel/mingw32-gcc||2023-11-21|Has expired: Upstream release was in 2015 and mingw32 project is defunct
www/guile-www||2023-11-21|Has expired: Last upstream release was in 2002 and no longer relevant nowadays
cad/freehdl||2023-11-21|Has expired: Upstream vaporized and SF site do not have dists anymore
x11-toolkits/wlroots-devel|x11-toolkits/wlroots|2023-11-21|Out of date: use x11-toolkits/wlroots for now

View File

@ -33,6 +33,7 @@
SUBDIR += feappv
SUBDIR += fidocadj
SUBDIR += freecad
SUBDIR += freehdl
SUBDIR += fritzing
SUBDIR += gds3d
SUBDIR += gdscpp

26
cad/freehdl/Makefile Normal file
View File

@ -0,0 +1,26 @@
PORTNAME= freehdl
PORTVERSION= 0.0.7
PORTREVISION= 10
CATEGORIES= cad
MASTER_SITES= http://freehdl.seul.org/~enaroska/
MAINTAINER= ports@FreeBSD.org
COMMENT= Free VHDL simulator
WWW= http://www.freehdl.seul.org/
USES= gmake pathfix libtool makeinfo perl5 pkgconfig
USE_LDCONFIG= yes
USE_GCC= yes
GNU_CONFIGURE= yes
CONFIGURE_ARGS= SYSTEM_LIBTOOL=${FALSE}
INSTALL_TARGET= install-strip
# Bug 219297: GCC 6 changed its default from -std=gnu++98 to -std=gnu++14, and
# this port's code is not compatible with C++11. Since the project looks
# abandoned upstream, it makes more sense to just continue building with an
# older C++ standard.
USE_CXXSTD= gnu++98
INFO= fire
.include <bsd.port.mk>

3
cad/freehdl/distinfo Normal file
View File

@ -0,0 +1,3 @@
TIMESTAMP = 1700588581
SHA256 (freehdl-0.0.7.tar.gz) = b12f2066d856d03e8abc0d93d6ba566b9c55b18e60d47614106c64030324d2de
SIZE (freehdl-0.0.7.tar.gz) = 1394351

View File

@ -0,0 +1,15 @@
--- freehdl/kernel-db.hh.orig 2013-04-30 20:25:10.000000000 +0000
+++ freehdl/kernel-db.hh
@@ -254,10 +254,10 @@ public:
// A hash function template used tp generate a hash number from
// d
-class db_basic_key_hash : public hash<unsigned long> {
+class db_basic_key_hash : public __gnu_cxx::hash<unsigned long> {
public:
size_t operator()(const db_basic_key& x) const {
- return (*(hash<unsigned long> *)this)(((unsigned long)x.value)>>2);
+ return (*(__gnu_cxx::hash<unsigned long> *)this)(((unsigned long)x.value)>>2);
}
};

View File

@ -0,0 +1,13 @@
--- freehdl/kernel-sig-info.hh.orig 2013-02-25 17:49:33.000000000 +0000
+++ freehdl/kernel-sig-info.hh
@@ -164,10 +164,6 @@ template<class T>class sig_info : public
type_info_interface *type, char attr, sig_info_base *base_sig,
acl *aclp, vtime delay, void *sr) :
sig_info_base(iname, n, sln, type, attr, base_sig, aclp, delay, sr) {};
- /* Constructor to instantiate a guard signal */
- sig_info(name_stack &iname, const char *n, const char *sln,
- void *reader, void *sr) :
- sig_info_base(iname, n, sln, reader, sr) {};
/* Constructor to instantiate an alias signal */
sig_info(name_stack &iname, const char *n, const char *sln,
type_info_interface *ty, sig_info_base *aliased_sig,

View File

@ -0,0 +1,15 @@
--- freehdl/kernel-util.hh.orig 2013-04-30 20:24:07.000000000 +0000
+++ freehdl/kernel-util.hh
@@ -24,10 +24,10 @@ using namespace __gnu_cxx;
// A hash function template used tp generate a hash number from
// pointer values.
template<class T>
-class pointer_hash : public hash<unsigned long> {
+class pointer_hash : public __gnu_cxx::hash<unsigned long> {
public:
size_t operator()(const T& x) const {
- return (*(hash<unsigned long> *)this)(((unsigned long)x)>>2);
+ return (*(__gnu_cxx::hash<unsigned long> *)this)(((unsigned long)x)>>2);
}
};

View File

@ -0,0 +1,11 @@
--- freehdl/std-vhdl-types.hh.orig 2013-02-25 17:33:20.000000000 +0000
+++ freehdl/std-vhdl-types.hh
@@ -1483,7 +1483,7 @@ A concat(array_info *ainfo, const A &a1,
new_array.info->add_ref();
/* Allocate memory for the data */
- const int mem_size = length * ainfo->element_type->size();
+ const int mem_size = length * ainfo->element_type->size;
new_array.data = (char*)internal_dynamic_alloc(mem_size);
/* Note, scalar(...) can be evaluated at compile time. */

View File

@ -0,0 +1,37 @@
--- kernel/driver_info.cc.orig 2013-02-25 17:38:05.000000000 +0000
+++ kernel/driver_info.cc
@@ -268,6 +268,7 @@ do_scalar_inertial_assignment(driver_inf
*************************************************************************
*************************************************************************/
+inline int do_record_transport_assignment(driver_info &, const record_base &, int, const vtime &);
// Creates transaction composite signals. Returns number of assigned scalars.
inline int
@@ -311,7 +312,6 @@ do_array_transport_assignment(driver_inf
assigned_scalars += do_array_transport_assignment(driver, (array_base&)value.data[j], i, tr_time);
break;
case RECORD:
- inline int do_record_transport_assignment(driver_info &, const record_base &, int, const vtime &);
assigned_scalars += do_record_transport_assignment(driver, (record_base&)value.data[j], i, tr_time);
break;
}
@@ -338,6 +338,9 @@ driver_info::transport_assign(const arra
}
+inline int do_record_inertial_assignment(driver_info &, const record_base &, int,
+ const vtime &, const vtime &);
+
// Creates transaction for composite signals. Returns number of assigned scalars.
inline int
do_array_inertial_assignment(driver_info &driver,
@@ -381,8 +384,6 @@ do_array_inertial_assignment(driver_info
assigned_scalars += do_array_inertial_assignment(driver, (array_base&)value.data[j], i, tr_time, rm_time);
break;
case RECORD:
- inline int do_record_inertial_assignment(driver_info &, const record_base &, int,
- const vtime &, const vtime &);
assigned_scalars += do_record_inertial_assignment(driver, (record_base&)value.data[j], i, tr_time, rm_time);
break;
}

View File

@ -0,0 +1,10 @@
--- kernel/fhdl_stream.cc.orig 2006-01-12 08:05:01.000000000 +0000
+++ kernel/fhdl_stream.cc
@@ -2,6 +2,7 @@
#if HAVE_UNISTD_H
#include <unistd.h>
#endif
+#include <cstring>
#include <sstream>
#include <assert.h>
#include <freehdl/kernel-error.hh>

View File

@ -0,0 +1,10 @@
--- vaul/dunit.cc.orig 2005-12-14 08:23:06.000000000 +0000
+++ vaul/dunit.cc
@@ -27,6 +27,7 @@
#include <errno.h>
#include <string.h>
+#include <stdlib.h>
#if HAVE_MALLOC_H
#include <malloc.h>
#endif

View File

@ -0,0 +1,10 @@
--- vaul/pool.cc.orig 2005-12-14 08:23:06.000000000 +0000
+++ vaul/pool.cc
@@ -24,6 +24,7 @@
#include <freehdl/vaul-lexer.h>
#include <freehdl/vaul-util.h>
+#include <stdlib.h>
#if HAVE_MALLOC_H
#include <malloc.h>
#endif

3
cad/freehdl/pkg-descr Normal file
View File

@ -0,0 +1,3 @@
The goals of the FreeHDL project are to develop a VHDL simulator that has
a graphical waveform viewer and a source level debugger. It also aims at
VHDL-93 compliancy. The project is at a very early development stage.

109
cad/freehdl/pkg-plist Normal file
View File

@ -0,0 +1,109 @@
bin/freehdl-config
bin/freehdl-gennodes
bin/freehdl-v2cc
bin/gvhdl
include/freehdl/fire-types.h
include/freehdl/fire-chunk.t
include/freehdl/fire-chunk.h
include/freehdl/tree-supp.h
include/freehdl/fire.h
include/freehdl/vaul-creator-base.h
include/freehdl/vaul-dfile.h
include/freehdl/vaul-dunit.h
include/freehdl/vaul-dynarray.h
include/freehdl/vaul-errors.h
include/freehdl/vaul-lexer.h
include/freehdl/vaul-list.h
include/freehdl/vaul-mempool.h
include/freehdl/vaul-parser.h
include/freehdl/vaul-pool.h
include/freehdl/vaul-printer.h
include/freehdl/vaul-ref.h
include/freehdl/vaul-types.h
include/freehdl/vaul-util.h
include/freehdl/vaul-chunk.t
include/freehdl/vaul-chunk.h
include/freehdl/vaul.h
include/freehdl/FlexLexer.h
include/freehdl/cdfggen-chunk.t
include/freehdl/cdfggen-chunk.h
include/freehdl/kernel-acl.hh
include/freehdl/kernel-classes.hh
include/freehdl/kernel-driver-info.hh
include/freehdl/kernel-error.hh
include/freehdl/kernel-flags.hh
include/freehdl/kernel-global-event-queue.hh
include/freehdl/kernel-handle-info.hh
include/freehdl/kernel-handle.hh
include/freehdl/kernel-kernel-class.hh
include/freehdl/kernel-list.hh
include/freehdl/kernel-map-list.hh
include/freehdl/kernel-name-stack.hh
include/freehdl/kernel-pcounter.hh
include/freehdl/kernel-process-base.hh
include/freehdl/kernel.h
include/freehdl/kernel-delayed-procedure-base.hh
include/freehdl/kernel-reader-info.hh
include/freehdl/kernel-sig-info.hh
include/freehdl/kernel-sigacl-list.hh
include/freehdl/kernel-wait-info.hh
include/freehdl/kernel-winfo-item.hh
include/freehdl/kernel-attributes.hh
include/freehdl/kernel-dump.hh
include/freehdl/kernel-util.hh
include/freehdl/kernel-fhdl-stream.hh
include/freehdl/kernel-register.hh
include/freehdl/kernel-resolver-process.hh
include/freehdl/kernel-resolver-descriptor.hh
include/freehdl/kernel-source-descriptor.hh
include/freehdl/kernel-signal-source-list-array.hh
include/freehdl/std.h
include/freehdl/kernel-persistent-dump.hh
include/freehdl/kernel-persistent-cdfg-dump.hh
include/freehdl/kernel-Xinfo-kind.hh
include/freehdl/kernel-Xinfo-data-descriptor.hh
include/freehdl/kernel-stack-trace.hh
include/freehdl/kernel-db.hh
include/freehdl/std-memory.hh
include/freehdl/std-standard.hh
include/freehdl/std-vhdl-types.hh
lib/libfreehdl-fire.so.0.0.0
lib/libfreehdl-fire.so.0
lib/libfreehdl-fire.so
lib/libfreehdl-fire.a
lib/libfreehdl-vaul.so.0.0.0
lib/libfreehdl-vaul.so.0
lib/libfreehdl-vaul.so
lib/libfreehdl-vaul.a
lib/libfreehdl-kernel.so.0.0.0
lib/libfreehdl-kernel.so.0
lib/libfreehdl-kernel.so
lib/libfreehdl-kernel.a
lib/libfreehdl-std.so.0.0.0
lib/libfreehdl-std.so.0
lib/libfreehdl-std.so
lib/libfreehdl-std.a
lib/freehdl/libieee.so.0.0.0
lib/freehdl/libieee.so.0
lib/freehdl/libieee.so
lib/freehdl/libieee.a
lib/libfreehdl-cdfggen.so.0.0.0
lib/libfreehdl-cdfggen.so.0
lib/libfreehdl-cdfggen.so
lib/libfreehdl-cdfggen.a
man/man1/freehdl-config.1.gz
man/man1/freehdl-gennodes.1.gz
man/man1/freehdl-v2cc.1.gz
man/man1/gvhdl.1.gz
man/man5/v2cc.libs.5.gz
%%DATADIR%%/lib/std/standard.vhdl
%%DATADIR%%/lib/std/textio.vhdl
%%DATADIR%%/lib/ieee/std_logic_1164.vhdl
%%DATADIR%%/lib/ieee/numeric_std.vhdl
%%DATADIR%%/lib/ieee/numeric_bit.vhdl
%%DATADIR%%/lib/ieee/std_logic_signed.vhdl
%%DATADIR%%/lib/ieee/std_logic_unsigned.vhdl
%%DATADIR%%/lib/ieee/std_logic_arith.vhdl
%%DATADIR%%/lib/ieee/math_real.vhdl
%%DATADIR%%/lib/ieee/vital_timing.vhdl
libdata/pkgconfig/freehdl.pc