Download raw body.
New port: cad/prjpeppercorn (Attempt 2)
Hello!
You can find the second attempt of my port attached to this email. I have
applied the changes, suggested by Stu (Thank you, btw).
In this particular port, I added a new directory layer to the
installation in the
share/ directory. So share/prjpeppercorn-1.13/ became
share/prjpeppercorn/1.13
In addition to that: Using ldd(1), I noticed that the resulting binaries had
some implicit library dependencies. They are now explicitly stated
inside the
Makefile.
Please have another look, hopefully, this time around, it meets your
standards
a little bit better.
Thomas
On 6/9/26 00:52, Thomas Dettbarn wrote:
> For your consideration, please find the port for cad/prjpeppercorn
> attached to this email.
> It is part of the yosys & nextpnr & openfpgaloader toolchain,
> which can be used for FPGA design and synthesis on OpenBSD.
>
> Thomas
>
diff --git a/cad/prjpeppercorn/Makefile b/cad/prjpeppercorn/Makefile
new file mode 100644
index 00000000000..192bcd31da4
--- /dev/null
+++ b/cad/prjpeppercorn/Makefile
@@ -0,0 +1,37 @@
+COMMENT= GateMate FPGAs Bitstream Documentation and Tools
+CATEGORIES= cad
+V= 1.13
+DISTNAME= prjpeppercorn-${V}
+SHAREDIR= prjpeppercorn/${V}
+
+GH_ACCOUNT= YosysHQ
+GH_PROJECT= prjpeppercorn
+GH_TAGNAME= v${V}
+
+HOMEPAGE= https://github.com/YosysHQ/prjpeppercorn
+MAINTAINER= Thomas Dettbarn <dettus@dettus.net>
+
+# ISC License
+PERMIT_PACKAGE= yes
+
+WANTLIB= c
+MODULES= devel/cmake
+NO_TEST= Yes
+
+LIB_DEPENDS= devel/boost
+WRKSRC= ${WRKDIST}/libgm
+
+do-install:
+ ${INSTALL_PROGRAM} ${WRKBUILD}/gmpack ${PREFIX}/bin/
+ ${INSTALL_PROGRAM} ${WRKBUILD}/gmunpack ${PREFIX}/bin/
+ ${INSTALL_DATA_DIR} ${PREFIX}/share/${SHAREDIR}/gatemate/
+ ${INSTALL_DATA_DIR} ${PREFIX}/share/${SHAREDIR}/delay/
+ ${INSTALL_DATA} ${WRKDIST}/gatemate/* ${PREFIX}/share/${SHAREDIR}/gatemate/
+ ${INSTALL_PROGRAM} ${WRKDIST}/delay.sh ${PREFIX}/share/${SHAREDIR}/
+ ${INSTALL_DATA} ${WRKDIST}/delay/* ${PREFIX}/share/${SHAREDIR}/delay/
+ ${INSTALL_PROGRAM} ${WRKDIST}/decompress.py ${PREFIX}/share/${SHAREDIR}/
+
+
+
+.include <bsd.port.mk>
+
diff --git a/cad/prjpeppercorn/distinfo b/cad/prjpeppercorn/distinfo
new file mode 100644
index 00000000000..7895716657b
--- /dev/null
+++ b/cad/prjpeppercorn/distinfo
@@ -0,0 +1,2 @@
+SHA256 (prjpeppercorn-1.13.tar.gz) = FHiAxUCPGhY3JyO0C7kEIxrOzUk+4/kNst81rbOb6Cw=
+SIZE (prjpeppercorn-1.13.tar.gz) = 5718234
diff --git a/cad/prjpeppercorn/patches/patch-libgm_CMakeLists_txt b/cad/prjpeppercorn/patches/patch-libgm_CMakeLists_txt
new file mode 100644
index 00000000000..68275165320
--- /dev/null
+++ b/cad/prjpeppercorn/patches/patch-libgm_CMakeLists_txt
@@ -0,0 +1,21 @@
+Unnecessary dependency to .git
+Index: libgm/CMakeLists.txt
+--- libgm/CMakeLists.txt.orig
++++ libgm/CMakeLists.txt
+@@ -88,7 +88,8 @@ string(STRIP "${CURRENT_GIT_VERSION}" CURRENT_GIT_VERS
+ if (EXISTS "${CMAKE_BINARY_DIR}/generated/last_git_version")
+ file(READ "${CMAKE_BINARY_DIR}/generated/last_git_version" LAST_GIT_VERSION)
+ endif()
+-if (NOT ("${LAST_GIT_VERSION}" STREQUAL "${CURRENT_GIT_VERSION}") OR NOT GIT_EXECUTABLE)
++#if (NOT ("${LAST_GIT_VERSION}" STREQUAL "${CURRENT_GIT_VERSION}") OR NOT GIT_EXECUTABLE)
++if (TRUE)
+ configure_file(
+ ${CMAKE_SOURCE_DIR}/tools/version.cpp.in
+ ${CMAKE_BINARY_DIR}/generated/version.cpp
+@@ -132,4 +133,4 @@ add_custom_target(
+ -style=file
+ -i
+ ${CLANGFORMAT_FILES}
+-)
+\ No newline at end of file
++)
diff --git a/cad/prjpeppercorn/pkg/DESCR b/cad/prjpeppercorn/pkg/DESCR
new file mode 100644
index 00000000000..915426b01bb
--- /dev/null
+++ b/cad/prjpeppercorn/pkg/DESCR
@@ -0,0 +1 @@
+GateMate FPGAs Bitstream Documentation and Tools
diff --git a/cad/prjpeppercorn/pkg/PLIST b/cad/prjpeppercorn/pkg/PLIST
new file mode 100644
index 00000000000..f1a890460ff
--- /dev/null
+++ b/cad/prjpeppercorn/pkg/PLIST
@@ -0,0 +1,21 @@
+@bin bin/gmpack
+@bin bin/gmunpack
+share/prjpeppercorn/
+share/prjpeppercorn/1.13/
+share/prjpeppercorn/1.13/decompress.py
+share/prjpeppercorn/1.13/delay/
+share/prjpeppercorn/1.13/delay.sh
+share/prjpeppercorn/1.13/delay/cc_best_eco_dly.dly
+share/prjpeppercorn/1.13/delay/cc_best_lpr_dly.dly
+share/prjpeppercorn/1.13/delay/cc_best_spd_dly.dly
+share/prjpeppercorn/1.13/delay/cc_typ_eco_dly.dly
+share/prjpeppercorn/1.13/delay/cc_typ_lpr_dly.dly
+share/prjpeppercorn/1.13/delay/cc_typ_spd_dly.dly
+share/prjpeppercorn/1.13/delay/cc_worst_eco_dly.dly
+share/prjpeppercorn/1.13/delay/cc_worst_lpr_dly.dly
+share/prjpeppercorn/1.13/delay/cc_worst_spd_dly.dly
+share/prjpeppercorn/1.13/gatemate/
+share/prjpeppercorn/1.13/gatemate/__init__.py
+share/prjpeppercorn/1.13/gatemate/chip.py
+share/prjpeppercorn/1.13/gatemate/die.py
+share/prjpeppercorn/1.13/gatemate/timing.py
New port: cad/prjpeppercorn (Attempt 2)