summaryrefslogtreecommitdiff
path: root/cad
diff options
context:
space:
mode:
authormef <mef@pkgsrc.org>2016-03-15 15:15:59 +0000
committermef <mef@pkgsrc.org>2016-03-15 15:15:59 +0000
commit1183fd7d4698b911f69ee329135f19940390cacd (patch)
tree19c1d9336a3a0667beef41b3a99e5643ac0b0da7 /cad
parent484b16bd859ccdb4f8bce00874d25a1c6dea13ab (diff)
downloadpkgsrc-1183fd7d4698b911f69ee329135f19940390cacd.tar.gz
Import klayout-0.24.5 as cad/klayout.
Although a comparatively simple piece of software, a layout viewer is not only just a tool for the chip design engineer. Today design's complexity require not only a simple "viewer". Rather, a viewer is the microscope through which the engineer looks at the design. There are numerous viewers available, but sadly there are not many which satisfy a few basic requirements. Most of them are commercial and expensive. If there is need for a simple, yet powerful viewer - here it is.
Diffstat (limited to 'cad')
-rw-r--r--cad/klayout/DESCR8
-rw-r--r--cad/klayout/Makefile61
-rw-r--r--cad/klayout/PLIST12
-rw-r--r--cad/klayout/distinfo10
-rw-r--r--cad/klayout/patches/patch-build.sh19
-rw-r--r--cad/klayout/patches/patch-config_Makefile_conf_freebsd-32-gcc-release56
-rw-r--r--cad/klayout/patches/patch-config_Makefile_conf_netbsd-32-gcc-release56
-rw-r--r--cad/klayout/patches/patch-src_layApplication.cc16
8 files changed, 238 insertions, 0 deletions
diff --git a/cad/klayout/DESCR b/cad/klayout/DESCR
new file mode 100644
index 00000000000..11f7fc09ce0
--- /dev/null
+++ b/cad/klayout/DESCR
@@ -0,0 +1,8 @@
+ Although a comparatively simple piece of software, a layout viewer is not
+only just a tool for the chip design engineer. Today design's complexity
+require not only a simple "viewer". Rather, a viewer is the microscope
+through which the engineer looks at the design.
+
+There are numerous viewers available, but sadly there are not many which
+satisfy a few basic requirements. Most of them are commercial and
+expensive. If there is need for a simple, yet powerful viewer - here it is.
diff --git a/cad/klayout/Makefile b/cad/klayout/Makefile
new file mode 100644
index 00000000000..79aa4bcf5a5
--- /dev/null
+++ b/cad/klayout/Makefile
@@ -0,0 +1,61 @@
+# $NetBSD: Makefile,v 1.1 2016/03/15 15:15:59 mef Exp $
+
+DISTNAME= klayout-0.24.5
+CATEGORIES= cad
+MASTER_SITES= http://www.klayout.org/downloads/
+
+MAINTAINER= pkgsrc-users@NetBSD.org
+HOMEPAGE= http://www.klayout.org/downloads/
+COMMENT= Simple GDS and OASIS file viewer and Editor
+LICENSE= gnu-gpl-v2
+
+USE_LANGUAGES= c c++
+USE_TOOLS+= gmake
+
+CFLAGS+= -I${PREFIX}/include/python${PYVERSUFFIX}
+NO_CONFIGURE= yes
+
+SUBST_CLASSES+= rpath
+SUBST_MESSAGE.rpath= Add COMPILER_RPATH_FLAG and PREFIX to NetBSD specific config file
+SUBST_FILES.rpath+= config/Makefile.conf.netbsd-32-gcc-release
+SUBST_STAGE.rpath= post-patch
+SUBST_VARS.rpath= COMPILER_RPATH_FLAG PREFIX
+SUBST_SED.rpath= -e 's|@@LDFLAGS@@|${LDFLAGS}|'
+
+AUTO_MKDIRS= yes
+INSTALL_BINDIR= ${DESTDIR}${PREFIX}/bin
+INSTALL_LIBDIR= ${DESTDIR}${PREFIX}/lib
+REL_DIR= build.netbsd-32-gcc-release
+
+OTHER_BIN= \
+ strm2cif \
+ strm2dxf \
+ strm2gds \
+ strm2gdstxt \
+ strm2oas \
+ strm2txt \
+ strmclip \
+ strmcmp \
+ strmxor
+
+do-build:
+ (cd ${WRKSRC}; sh build.sh -python python${PYVERSSUFFIX} -qt ${PREFIX}/qt4)
+
+do-install:
+ (cd ${WRKSRC}; \
+ pwd; \
+ ${INSTALL_PROGRAM} ${REL_DIR}/main/klayout ${INSTALL_BINDIR}; \
+ ${INSTALL_LIB} ${REL_DIR}/main/libklayout.so ${INSTALL_LIBDIR} ;\
+ for bin in ${OTHER_BIN}; do \
+ ${INSTALL_PROGRAM} ${REL_DIR}/main/$$bin ${INSTALL_BINDIR} ;\
+ done ;\
+ ${CHMOD} 755 ${INSTALL_BINDIR}/* ;\
+ )
+
+.include "../../lang/python/pyversion.mk"
+.include "../../lang/ruby/buildlink3.mk"
+.include "../../x11/qt4-libs/buildlink3.mk"
+# libQtDesigner
+.include "../../x11/qt4-tools/buildlink3.mk"
+BUILDLINK_DEPMETHOD.qt4-tools= full
+.include "../../mk/bsd.pkg.mk"
diff --git a/cad/klayout/PLIST b/cad/klayout/PLIST
new file mode 100644
index 00000000000..1bcbb316b94
--- /dev/null
+++ b/cad/klayout/PLIST
@@ -0,0 +1,12 @@
+@comment $NetBSD: PLIST,v 1.1 2016/03/15 15:15:59 mef Exp $
+bin/klayout
+bin/strm2cif
+bin/strm2dxf
+bin/strm2gds
+bin/strm2gdstxt
+bin/strm2oas
+bin/strm2txt
+bin/strmclip
+bin/strmcmp
+bin/strmxor
+lib/libklayout.so
diff --git a/cad/klayout/distinfo b/cad/klayout/distinfo
new file mode 100644
index 00000000000..045c039d130
--- /dev/null
+++ b/cad/klayout/distinfo
@@ -0,0 +1,10 @@
+$NetBSD: distinfo,v 1.1 2016/03/15 15:15:59 mef Exp $
+
+SHA1 (klayout-0.24.5.tar.gz) = 171d153b56f7f1bea3c0fb943a003558465efb9c
+RMD160 (klayout-0.24.5.tar.gz) = b0e4ce93092e84b2cb193886ab6a8b682e48521d
+SHA512 (klayout-0.24.5.tar.gz) = b1b8e80060adf089b9059802656421629bd4ddb781fe924e234ece075021fc4fe3cb3dbc2ebdc8b7d14183927223c6132aa62a88b8667b5eb8103dbd4f02dd56
+Size (klayout-0.24.5.tar.gz) = 11251829 bytes
+SHA1 (patch-build.sh) = 3a1e61100de101cbe82b0c4abfa10a0ab2f7ead7
+SHA1 (patch-config_Makefile_conf_freebsd-32-gcc-release) = 8ee1a6f42465ef650fbd26ec6dcdea4db249d018
+SHA1 (patch-config_Makefile_conf_netbsd-32-gcc-release) = 1fd264f8a25d4410cd48fcfbbbfbf149e65e3b22
+SHA1 (patch-src_layApplication.cc) = d3f115836e75a76ab2322048d8698c0dcd6c7492
diff --git a/cad/klayout/patches/patch-build.sh b/cad/klayout/patches/patch-build.sh
new file mode 100644
index 00000000000..d467b2ff34a
--- /dev/null
+++ b/cad/klayout/patches/patch-build.sh
@@ -0,0 +1,19 @@
+$NetBSD: patch-build.sh,v 1.1 2016/03/15 15:15:59 mef Exp $
+
+Add NetBSD and FreeBSD
+
+--- build.sh.orig 2016-02-27 07:20:29.000000000 +0900
++++ build.sh 2016-03-08 23:14:50.000000000 +0900
+@@ -39,6 +39,12 @@ Darwin*)
+ PLATFORM="mac-yosemite-gcc-release"
+ EXEC_HOLDER="klayout.app/Contents/MacOS"
+ ;;
++FreeBSD)
++ PLATFORM="freebsd-32-gcc-release"
++ ;;
++NetBSD)
++ PLATFORM="netbsd-32-gcc-release"
++ ;;
+ *)
+ # Assume Linux for the remaining variants
+ case `arch` in
diff --git a/cad/klayout/patches/patch-config_Makefile_conf_freebsd-32-gcc-release b/cad/klayout/patches/patch-config_Makefile_conf_freebsd-32-gcc-release
new file mode 100644
index 00000000000..86f2629ab41
--- /dev/null
+++ b/cad/klayout/patches/patch-config_Makefile_conf_freebsd-32-gcc-release
@@ -0,0 +1,56 @@
+$NetBSD: patch-config_Makefile_conf_freebsd-32-gcc-release,v 1.1 2016/03/15 15:15:59 mef Exp $
+
+Add FreeBSD, but not checked yet
+
+--- /dev/null 2013-04-27 17:36:48.000000000 +0900
++++ config/Makefile.conf.freebsd-32-gcc-release 2013-04-27 17:37:10.000000000 +0900
+@@ -0,0 +1,49 @@
++
++# Configuration file for
++# gcc, FreeBSD
++# release build
++
++# Compiler options
++
++AR=ar -r
++
++# Compiler general
++INC=-I$(TOP_SOURCE) -I$(SOURCE) -I. -I$(QTINCLUDE)
++DEFS=-DQT_THREAD_SUPPORT -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_TO_ASCII
++
++# C++
++CXX?=gcc
++CXXOPT_DEP=-MM -MG
++CXXWARN=-Wall -Wno-deprecated -Woverloaded-virtual \
++ -Wsign-promo -Wsynth -Wno-long-long -Wno-strict-aliasing
++CXXOPT=${CXXFLAGS} -c -o
++CXXOPT_SO=-fPIC $(CXXOPT)
++
++# C
++CC?=gcc
++CCOPT_DEP=-MM -MG
++CCWARN=
++CCOPT=${CFLAGS} -c -o
++CCOPT_SO=-fPIC $(CCOPT)
++
++# Linker
++LINK?=${CXX}
++LOPT=${LDFLAGS} -g -Wl,-E -o
++LOPT_SO=${LDFLAGS} -g -shared -o
++
++LIBS=${PTHREAD_LIBS} -L$(QTLIB) -lQtGui -lQtCore -lQtXml -lQtNetwork -lQtSql -lQtDesigner -lrt -lm -lcrypt -lz
++
++.PHONY: install
++install:
++ mkdir -p $(INSTALL_BINDIR)
++ cp main/$(EXEC_NAME) $(INSTALL_BINDIR)
++ for bin in $(OTHER_BIN) ; \
++ do \
++ cp main/$$bin $(INSTALL_BINDIR) ; \
++ done
++ for plugin in $(PLUGINS) ; \
++ do \
++ cp $$plugin/*.so $(INSTALL_BINDIR) ; \
++ done
++ chmod 755 $(INSTALL_BINDIR) $(INSTALL_BINDIR)/*
++
diff --git a/cad/klayout/patches/patch-config_Makefile_conf_netbsd-32-gcc-release b/cad/klayout/patches/patch-config_Makefile_conf_netbsd-32-gcc-release
new file mode 100644
index 00000000000..7e31f4b9d02
--- /dev/null
+++ b/cad/klayout/patches/patch-config_Makefile_conf_netbsd-32-gcc-release
@@ -0,0 +1,56 @@
+$NetBSD: patch-config_Makefile_conf_netbsd-32-gcc-release,v 1.1 2016/03/15 15:15:59 mef Exp $
+
+Add NetBSD
+
+--- /dev/null 2013-04-27 17:36:48.000000000 +0900
++++ config/Makefile.conf.netbsd-32-gcc-release 2013-04-27 17:37:10.000000000 +0900
+@@ -0,0 +1,49 @@
++
++# # Configuration file for
++# # gcc, NetBSD
++# # release build
++#
++# # Compiler options
++#
++AR=ar -r
++#
++# # Compiler general
++INC=-I$(TOP_SOURCE) -I$(SOURCE) -I. -I$(QTINCLUDE)
++DEFS=-DQT_THREAD_SUPPORT -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_TO_ASCII
++#
++# # C++
++CXX=gcc
++CXXOPT_DEP=-MM -MG
++CXXWARN=-Wall -Wno-deprecated -Woverloaded-virtual \
++ -Wsign-promo -Wsynth -Wno-long-long -Wno-strict-aliasing
++CXXOPT=${CXXFLAGS} -c -o
++CXXOPT_SO=-fPIC $(CXXOPT)
++#
++# # C
++CC=gcc
++CCOPT_DEP=-MM -MG
++CCWARN=
++CCOPT=${CFLAGS} -c -o
++CCOPT_SO=-fPIC $(CCOPT)
++#
++# # Linker
++LINK=gcc
++LOPT=@@LDFLAGS@@ -g -Wl,-E -o
++LOPT_SO= @COMPILER_RPATH_FLAG@@PREFIX@/lib:@PREFIX@/qt-4/lib:/usr/lib @@LDFLAGS@@ -g -shared -o
++#
++LIBS=${PTHREAD_LIBS} -L$(QTLIB) -lQtGui -lQtCore -lQtXml -lQtNetwork -lQtSql -lQtDesigner -lrt -lm -lcrypt -lz
++
++#.PHONY: install
++#install:
++# mkdir -p $(INSTALL_BINDIR)
++# cp main/$(EXEC_NAME) $(INSTALL_BINDIR)
++# for bin in $(OTHER_BIN) ; \
++# do \
++# cp main/$$bin $(INSTALL_BINDIR) ; \
++# done
++# for plugin in $(PLUGINS) ; \
++# do \
++# cp $$plugin/*.so $(INSTALL_BINDIR) ; \
++# done
++# chmod 755 $(INSTALL_BINDIR) $(INSTALL_BINDIR)/*
++
diff --git a/cad/klayout/patches/patch-src_layApplication.cc b/cad/klayout/patches/patch-src_layApplication.cc
new file mode 100644
index 00000000000..9296289cadc
--- /dev/null
+++ b/cad/klayout/patches/patch-src_layApplication.cc
@@ -0,0 +1,16 @@
+$NetBSD: patch-src_layApplication.cc,v 1.1 2016/03/15 15:15:59 mef Exp $
+
+To avoid following message
+error: 'struct sigaction' has no member named 'sa_restorer'
+
+--- src/layApplication.cc.orig 2016-02-27 07:20:30.000000000 +0900
++++ src/layApplication.cc 2016-03-08 23:52:13.000000000 +0900
+@@ -349,7 +349,7 @@ static void install_signal_handlers ()
+ act.sa_sigaction = signal_handler;
+ sigemptyset (&act.sa_mask);
+ act.sa_flags = SA_SIGINFO;
+-#if !defined(__APPLE__)
++#if !defined(__APPLE__) && !defined(__NetBSD__)
+ act.sa_restorer = 0;
+ #endif
+