pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/cad/nvc



Module Name:    pkgsrc
Committed By:   ryoon
Date:           Sun Dec 28 05:42:55 UTC 2025

Added Files:
        pkgsrc/cad/nvc: DESCR Makefile PLIST distinfo
        pkgsrc/cad/nvc/patches: patch-src_lib.c patch-thirdparty_cpustate.c

Log Message:
cad/nvc: import nvc-1.18.2

NVC is a free software VHDL compiler and simulator implementing
almost all of IEEE 1076-2008.


To generate a diff of this commit:
cvs rdiff -u -r0 -r1.1 pkgsrc/cad/nvc/DESCR pkgsrc/cad/nvc/Makefile \
    pkgsrc/cad/nvc/PLIST pkgsrc/cad/nvc/distinfo
cvs rdiff -u -r0 -r1.1 pkgsrc/cad/nvc/patches/patch-src_lib.c \
    pkgsrc/cad/nvc/patches/patch-thirdparty_cpustate.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Added files:

Index: pkgsrc/cad/nvc/DESCR
diff -u /dev/null pkgsrc/cad/nvc/DESCR:1.1
--- /dev/null   Sun Dec 28 05:42:55 2025
+++ pkgsrc/cad/nvc/DESCR        Sun Dec 28 05:42:54 2025
@@ -0,0 +1,2 @@
+NVC is a free software VHDL compiler and simulator implementing
+almost all of IEEE 1076-2008.
Index: pkgsrc/cad/nvc/Makefile
diff -u /dev/null pkgsrc/cad/nvc/Makefile:1.1
--- /dev/null   Sun Dec 28 05:42:55 2025
+++ pkgsrc/cad/nvc/Makefile     Sun Dec 28 05:42:54 2025
@@ -0,0 +1,42 @@
+# $NetBSD: Makefile,v 1.1 2025/12/28 05:42:54 ryoon Exp $
+
+DISTNAME=      nvc-1.18.2
+CATEGORIES=    cad
+MASTER_SITES=  https://www.nickg.me.uk/files/
+
+MAINTAINER=    ryoon%NetBSD.org@localhost
+HOMEPAGE=      https://www.nickg.me.uk/nvc/
+COMMENT=       VHDL compiler and simulator implementing IEEE 1076-2008
+LICENSE=       gnu-gpl-v3
+
+USE_LANGUAGES= c c++
+
+USE_TOOLS+=    bash:run gmake pkg-config
+
+REPLACE_BASH+= contrib/*.sh
+
+GNU_CONFIGURE= yes
+
+# Cannot perform in-tree build.
+OBJDIR=                        ../build
+CONFIGURE_DIRS=                ${OBJDIR}
+CONFIGURE_SCRIPT=      ${WRKSRC}/configure
+
+# Do not create almost empty object files
+# with warning, "plugin needed to handle lto object".
+CONFIGURE_ARGS+=       --disable-lto
+
+NOT_PAX_MPROTECT_SAFE+=        bin/nvc
+
+pre-configure:
+       # Cannot perform in-tree build.
+       ${RUN} cd ${WRKSRC} && ${MKDIR} ${OBJDIR}
+
+.include "../../archivers/zstd/buildlink3.mk"
+.include "../../devel/capstone/buildlink3.mk"
+.include "../../devel/check/buildlink3.mk"
+.include "../../devel/libdwarf/buildlink3.mk"
+.include "../../devel/libffi/buildlink3.mk"
+.include "../../devel/zlib/buildlink3.mk"
+.include "../../lang/llvm/buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
Index: pkgsrc/cad/nvc/PLIST
diff -u /dev/null pkgsrc/cad/nvc/PLIST:1.1
--- /dev/null   Sun Dec 28 05:42:55 2025
+++ pkgsrc/cad/nvc/PLIST        Sun Dec 28 05:42:54 2025
@@ -0,0 +1,181 @@
+@comment $NetBSD: PLIST,v 1.1 2025/12/28 05:42:54 ryoon Exp $
+bin/nvc
+include/vhpi_user.h
+lib/nvc/ieee.08/IEEE.FIXED_FLOAT_TYPES
+lib/nvc/ieee.08/IEEE.FIXED_GENERIC_PKG
+lib/nvc/ieee.08/IEEE.FIXED_GENERIC_PKG-body
+lib/nvc/ieee.08/IEEE.FIXED_PKG
+lib/nvc/ieee.08/IEEE.FLOAT_GENERIC_PKG
+lib/nvc/ieee.08/IEEE.FLOAT_GENERIC_PKG-body
+lib/nvc/ieee.08/IEEE.FLOAT_PKG
+lib/nvc/ieee.08/IEEE.IEEE_BIT_CONTEXT
+lib/nvc/ieee.08/IEEE.IEEE_STD_CONTEXT
+lib/nvc/ieee.08/IEEE.MATH_COMPLEX
+lib/nvc/ieee.08/IEEE.MATH_COMPLEX-body
+lib/nvc/ieee.08/IEEE.MATH_REAL
+lib/nvc/ieee.08/IEEE.MATH_REAL-body
+lib/nvc/ieee.08/IEEE.NUMERIC_BIT
+lib/nvc/ieee.08/IEEE.NUMERIC_BIT-body
+lib/nvc/ieee.08/IEEE.NUMERIC_BIT_UNSIGNED
+lib/nvc/ieee.08/IEEE.NUMERIC_BIT_UNSIGNED-body
+lib/nvc/ieee.08/IEEE.NUMERIC_STD
+lib/nvc/ieee.08/IEEE.NUMERIC_STD-body
+lib/nvc/ieee.08/IEEE.NUMERIC_STD_UNSIGNED
+lib/nvc/ieee.08/IEEE.NUMERIC_STD_UNSIGNED-body
+lib/nvc/ieee.08/IEEE.STD_LOGIC_1164
+lib/nvc/ieee.08/IEEE.STD_LOGIC_1164-body
+lib/nvc/ieee.08/IEEE.STD_LOGIC_ARITH
+lib/nvc/ieee.08/IEEE.STD_LOGIC_ARITH-body
+lib/nvc/ieee.08/IEEE.STD_LOGIC_MISC
+lib/nvc/ieee.08/IEEE.STD_LOGIC_MISC-body
+lib/nvc/ieee.08/IEEE.STD_LOGIC_SIGNED
+lib/nvc/ieee.08/IEEE.STD_LOGIC_SIGNED-body
+lib/nvc/ieee.08/IEEE.STD_LOGIC_TEXTIO
+lib/nvc/ieee.08/IEEE.STD_LOGIC_UNSIGNED
+lib/nvc/ieee.08/IEEE.STD_LOGIC_UNSIGNED-body
+lib/nvc/ieee.08/IEEE.VITAL_MEMORY
+lib/nvc/ieee.08/IEEE.VITAL_MEMORY-body
+lib/nvc/ieee.08/IEEE.VITAL_PRIMITIVES
+lib/nvc/ieee.08/IEEE.VITAL_PRIMITIVES-body
+lib/nvc/ieee.08/IEEE.VITAL_TIMING
+lib/nvc/ieee.08/IEEE.VITAL_TIMING-body
+lib/nvc/ieee.08/_NVC_LIB
+lib/nvc/ieee.08/_index
+lib/nvc/ieee.19/IEEE.FIXED_FLOAT_TYPES
+lib/nvc/ieee.19/IEEE.FIXED_GENERIC_PKG
+lib/nvc/ieee.19/IEEE.FIXED_GENERIC_PKG-body
+lib/nvc/ieee.19/IEEE.FIXED_PKG
+lib/nvc/ieee.19/IEEE.FLOAT_GENERIC_PKG
+lib/nvc/ieee.19/IEEE.FLOAT_GENERIC_PKG-body
+lib/nvc/ieee.19/IEEE.FLOAT_PKG
+lib/nvc/ieee.19/IEEE.IEEE_BIT_CONTEXT
+lib/nvc/ieee.19/IEEE.IEEE_STD_CONTEXT
+lib/nvc/ieee.19/IEEE.MATH_COMPLEX
+lib/nvc/ieee.19/IEEE.MATH_COMPLEX-body
+lib/nvc/ieee.19/IEEE.MATH_REAL
+lib/nvc/ieee.19/IEEE.MATH_REAL-body
+lib/nvc/ieee.19/IEEE.NUMERIC_BIT
+lib/nvc/ieee.19/IEEE.NUMERIC_BIT-body
+lib/nvc/ieee.19/IEEE.NUMERIC_BIT_UNSIGNED
+lib/nvc/ieee.19/IEEE.NUMERIC_BIT_UNSIGNED-body
+lib/nvc/ieee.19/IEEE.NUMERIC_STD
+lib/nvc/ieee.19/IEEE.NUMERIC_STD-body
+lib/nvc/ieee.19/IEEE.NUMERIC_STD_UNSIGNED
+lib/nvc/ieee.19/IEEE.NUMERIC_STD_UNSIGNED-body
+lib/nvc/ieee.19/IEEE.STD_LOGIC_1164
+lib/nvc/ieee.19/IEEE.STD_LOGIC_1164-body
+lib/nvc/ieee.19/IEEE.STD_LOGIC_TEXTIO
+lib/nvc/ieee.19/_NVC_LIB
+lib/nvc/ieee.19/_index
+lib/nvc/ieee/IEEE.MATH_COMPLEX
+lib/nvc/ieee/IEEE.MATH_COMPLEX-body
+lib/nvc/ieee/IEEE.MATH_REAL
+lib/nvc/ieee/IEEE.MATH_REAL-body
+lib/nvc/ieee/IEEE.NUMERIC_BIT
+lib/nvc/ieee/IEEE.NUMERIC_BIT-body
+lib/nvc/ieee/IEEE.NUMERIC_STD
+lib/nvc/ieee/IEEE.NUMERIC_STD-body
+lib/nvc/ieee/IEEE.STD_LOGIC_1164
+lib/nvc/ieee/IEEE.STD_LOGIC_1164-body
+lib/nvc/ieee/IEEE.STD_LOGIC_ARITH
+lib/nvc/ieee/IEEE.STD_LOGIC_ARITH-body
+lib/nvc/ieee/IEEE.STD_LOGIC_MISC
+lib/nvc/ieee/IEEE.STD_LOGIC_MISC-body
+lib/nvc/ieee/IEEE.STD_LOGIC_SIGNED
+lib/nvc/ieee/IEEE.STD_LOGIC_SIGNED-body
+lib/nvc/ieee/IEEE.STD_LOGIC_TEXTIO
+lib/nvc/ieee/IEEE.STD_LOGIC_TEXTIO-body
+lib/nvc/ieee/IEEE.STD_LOGIC_UNSIGNED
+lib/nvc/ieee/IEEE.STD_LOGIC_UNSIGNED-body
+lib/nvc/ieee/IEEE.VITAL_MEMORY
+lib/nvc/ieee/IEEE.VITAL_MEMORY-body
+lib/nvc/ieee/IEEE.VITAL_PRIMITIVES
+lib/nvc/ieee/IEEE.VITAL_PRIMITIVES-body
+lib/nvc/ieee/IEEE.VITAL_TIMING
+lib/nvc/ieee/IEEE.VITAL_TIMING-body
+lib/nvc/ieee/_NVC_LIB
+lib/nvc/ieee/_index
+lib/nvc/nvc.08/NVC.COVER_PKG
+lib/nvc/nvc.08/NVC.COVER_PKG-body
+lib/nvc/nvc.08/NVC.POLYFILL
+lib/nvc/nvc.08/NVC.PSL_SUPPORT
+lib/nvc/nvc.08/NVC.PSL_SUPPORT-body
+lib/nvc/nvc.08/NVC.RANDOM
+lib/nvc/nvc.08/NVC.RANDOM-body
+lib/nvc/nvc.08/NVC.SIM_PKG
+lib/nvc/nvc.08/NVC.SIM_PKG-body
+lib/nvc/nvc.08/NVC.TEXT_UTIL
+lib/nvc/nvc.08/NVC.TEXT_UTIL-body
+lib/nvc/nvc.08/NVC.VERILOG
+lib/nvc/nvc.08/NVC.VERILOG-body
+lib/nvc/nvc.08/_NVC_LIB
+lib/nvc/nvc.08/_index
+lib/nvc/nvc.19/NVC.COVER_PKG
+lib/nvc/nvc.19/NVC.COVER_PKG-body
+lib/nvc/nvc.19/NVC.POLYFILL
+lib/nvc/nvc.19/NVC.PSL_SUPPORT
+lib/nvc/nvc.19/NVC.PSL_SUPPORT-body
+lib/nvc/nvc.19/NVC.RANDOM
+lib/nvc/nvc.19/NVC.RANDOM-body
+lib/nvc/nvc.19/NVC.SIM_PKG
+lib/nvc/nvc.19/NVC.SIM_PKG-body
+lib/nvc/nvc.19/NVC.TEXT_UTIL
+lib/nvc/nvc.19/NVC.TEXT_UTIL-body
+lib/nvc/nvc.19/NVC.VERILOG
+lib/nvc/nvc.19/NVC.VERILOG-body
+lib/nvc/nvc.19/_NVC_LIB
+lib/nvc/nvc.19/_index
+lib/nvc/nvc/NVC.COVER_PKG
+lib/nvc/nvc/NVC.COVER_PKG-body
+lib/nvc/nvc/NVC.POLYFILL
+lib/nvc/nvc/NVC.POLYFILL-body
+lib/nvc/nvc/NVC.PSL_SUPPORT
+lib/nvc/nvc/NVC.PSL_SUPPORT-body
+lib/nvc/nvc/NVC.RANDOM
+lib/nvc/nvc/NVC.RANDOM-body
+lib/nvc/nvc/NVC.SIM_PKG
+lib/nvc/nvc/NVC.SIM_PKG-body
+lib/nvc/nvc/NVC.TEXT_UTIL
+lib/nvc/nvc/NVC.TEXT_UTIL-body
+lib/nvc/nvc/NVC.VERILOG
+lib/nvc/nvc/NVC.VERILOG-body
+lib/nvc/nvc/_NVC_LIB
+lib/nvc/nvc/_index
+lib/nvc/std.08/STD.ENV
+lib/nvc/std.08/STD.ENV-body
+lib/nvc/std.08/STD.STANDARD
+lib/nvc/std.08/STD.STANDARD-body
+lib/nvc/std.08/STD.TEXTIO
+lib/nvc/std.08/STD.TEXTIO-body
+lib/nvc/std.08/_NVC_LIB
+lib/nvc/std.08/_index
+lib/nvc/std.19/STD.ENV
+lib/nvc/std.19/STD.ENV-body
+lib/nvc/std.19/STD.REFLECTION
+lib/nvc/std.19/STD.REFLECTION-body
+lib/nvc/std.19/STD.STANDARD
+lib/nvc/std.19/STD.STANDARD-body
+lib/nvc/std.19/STD.TEXTIO
+lib/nvc/std.19/STD.TEXTIO-body
+lib/nvc/std.19/_NVC_LIB
+lib/nvc/std.19/_index
+lib/nvc/std/STD.STANDARD
+lib/nvc/std/STD.STANDARD-body
+lib/nvc/std/STD.TEXTIO
+lib/nvc/std/STD.TEXTIO-body
+lib/nvc/std/_NVC_LIB
+lib/nvc/std/_index
+libexec/nvc/functions.sh
+libexec/nvc/install-fmf.sh
+libexec/nvc/install-icecube2.sh
+libexec/nvc/install-ise.sh
+libexec/nvc/install-libero.sh
+libexec/nvc/install-osvvm.sh
+libexec/nvc/install-osvvm.tcl
+libexec/nvc/install-quartus.sh
+libexec/nvc/install-uvvm.sh
+libexec/nvc/install-vivado.sh
+libexec/nvc/install-vunit.sh
+libexec/nvc/install-xpm_vhdl.sh
+man/man1/nvc.1
+share/bash-completion/completions/nvc.bash
Index: pkgsrc/cad/nvc/distinfo
diff -u /dev/null pkgsrc/cad/nvc/distinfo:1.1
--- /dev/null   Sun Dec 28 05:42:55 2025
+++ pkgsrc/cad/nvc/distinfo     Sun Dec 28 05:42:54 2025
@@ -0,0 +1,7 @@
+$NetBSD: distinfo,v 1.1 2025/12/28 05:42:54 ryoon Exp $
+
+BLAKE2s (nvc-1.18.2.tar.gz) = 6ac11d29eceb288531f356351a7cf32d07f2bd661f67cc77f7e63cc00fd967e0
+SHA512 (nvc-1.18.2.tar.gz) = 107f757114c5e8a97c553af91b5778367419ef6aae1be74a5b782491a60baca37bf1a5ad8342383c856c7a29da2f1d6e93581b50ef30d0b4ffb1a3fc211a091b
+Size (nvc-1.18.2.tar.gz) = 2601236 bytes
+SHA1 (patch-src_lib.c) = 787bb41f45a32b2f0f329fd9a32c702db755c005
+SHA1 (patch-thirdparty_cpustate.c) = f4ae833e8b2c1b3909c84b16673ff0fb5f089e6d

Index: pkgsrc/cad/nvc/patches/patch-src_lib.c
diff -u /dev/null pkgsrc/cad/nvc/patches/patch-src_lib.c:1.1
--- /dev/null   Sun Dec 28 05:42:55 2025
+++ pkgsrc/cad/nvc/patches/patch-src_lib.c      Sun Dec 28 05:42:55 2025
@@ -0,0 +1,15 @@
+$NetBSD: patch-src_lib.c,v 1.1 2025/12/28 05:42:55 ryoon Exp $
+
+* Fix ctype(3) abuse.
+
+--- src/lib.c.orig     2025-12-24 09:55:32.955684412 +0000
++++ src/lib.c
+@@ -411,7 +411,7 @@ static lib_t lib_find_at(const char *nam
+ 
+    struct dirent *e;
+    while ((e = readdir(d))) {
+-      if (!isalpha(e->d_name[0]))
++      if (!isalpha((unsigned char)(e->d_name[0])))
+          continue;
+ 
+       const char *dot = strchr(e->d_name, '.');
Index: pkgsrc/cad/nvc/patches/patch-thirdparty_cpustate.c
diff -u /dev/null pkgsrc/cad/nvc/patches/patch-thirdparty_cpustate.c:1.1
--- /dev/null   Sun Dec 28 05:42:55 2025
+++ pkgsrc/cad/nvc/patches/patch-thirdparty_cpustate.c  Sun Dec 28 05:42:55 2025
@@ -0,0 +1,33 @@
+$NetBSD: patch-thirdparty_cpustate.c,v 1.1 2025/12/28 05:42:55 ryoon Exp $
+
+* Support NetBSD/amd64.
+
+--- thirdparty/cpustate.c.orig 2025-12-24 09:15:22.124726860 +0000
++++ thirdparty/cpustate.c
+@@ -154,6 +154,26 @@ void fill_cpu_state(struct cpu_state *cp
+    cpu->regs[13] = uc->sc_r13;
+    cpu->regs[14] = uc->sc_r14;
+    cpu->regs[15] = uc->sc_r15;
++#elif defined __NetBSD__ && defined __x86_64__
++   cpu->pc = uc->uc_mcontext.__gregs[_REG_RIP];
++   cpu->sp = uc->uc_mcontext.__gregs[_REG_RSP];
++
++   cpu->regs[0]  = uc->uc_mcontext.__gregs[_REG_RAX];
++   cpu->regs[1]  = uc->uc_mcontext.__gregs[_REG_RCX];
++   cpu->regs[2]  = uc->uc_mcontext.__gregs[_REG_RDX];
++   cpu->regs[3]  = uc->uc_mcontext.__gregs[_REG_RBX];
++   cpu->regs[4]  = uc->uc_mcontext.__gregs[_REG_RSP];
++   cpu->regs[5]  = uc->uc_mcontext.__gregs[_REG_RBP];
++   cpu->regs[6]  = uc->uc_mcontext.__gregs[_REG_RSI];
++   cpu->regs[7]  = uc->uc_mcontext.__gregs[_REG_RDI];
++   cpu->regs[8]  = uc->uc_mcontext.__gregs[_REG_R8];
++   cpu->regs[9]  = uc->uc_mcontext.__gregs[_REG_R9];
++   cpu->regs[10] = uc->uc_mcontext.__gregs[_REG_R10];
++   cpu->regs[11] = uc->uc_mcontext.__gregs[_REG_R11];
++   cpu->regs[12] = uc->uc_mcontext.__gregs[_REG_R12];
++   cpu->regs[13] = uc->uc_mcontext.__gregs[_REG_R13];
++   cpu->regs[14] = uc->uc_mcontext.__gregs[_REG_R14];
++   cpu->regs[15] = uc->uc_mcontext.__gregs[_REG_R15];
+ #elif defined __APPLE__ && defined __arm64__
+    cpu->pc = uc->uc_mcontext->__ss.__pc;
+    cpu->sp = uc->uc_mcontext->__ss.__sp;



Home | Main Index | Thread Index | Old Index