pkgsrc-WIP-changes archive

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

Import klayout-0.2.4 (but packaging is not completed yet).



Module Name:	pkgsrc-wip
Committed By:	Makoto Fujiwara <makoto%ki.nu@localhost>
Pushed By:	mef
Date:		Thu Mar 10 20:33:47 2016 +0900
Changeset:	d318d3d27a0b4b4c262cb4ee93f3970520b04e15

Added Files:
	klayout/DESCR
	klayout/Makefile
	klayout/PLIST
	klayout/TODO
	klayout/distinfo
	klayout/patches/patch-build.sh
	klayout/patches/patch-config_Makefile_conf_freebsd-32-gcc-release
	klayout/patches/patch-config_Makefile_conf_netbsd-32-gcc-release
	klayout/patches/patch-src_layApplication.cc

Log Message:
Import klayout-0.2.4 (but packaging is not completed yet).

(Packaging is not completed yet. Please anybody fix problem, thanks)
 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.

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=d318d3d27a0b4b4c262cb4ee93f3970520b04e15

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

diffstat:
 klayout/DESCR                                      |  8 ++++
 klayout/Makefile                                   | 35 ++++++++++++++
 klayout/PLIST                                      |  1 +
 klayout/TODO                                       | 41 ++++++++++++++++
 klayout/distinfo                                   | 10 ++++
 klayout/patches/patch-build.sh                     | 19 ++++++++
 ...tch-config_Makefile_conf_freebsd-32-gcc-release | 56 ++++++++++++++++++++++
 ...atch-config_Makefile_conf_netbsd-32-gcc-release | 56 ++++++++++++++++++++++
 klayout/patches/patch-src_layApplication.cc        | 16 +++++++
 9 files changed, 242 insertions(+)

diffs:
diff --git a/klayout/DESCR b/klayout/DESCR
new file mode 100644
index 0000000..11f7fc0
--- /dev/null
+++ b/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/klayout/Makefile b/klayout/Makefile
new file mode 100644
index 0000000..5c77b0a
--- /dev/null
+++ b/klayout/Makefile
@@ -0,0 +1,35 @@
+# $NetBSD$
+
+DISTNAME=	klayout-0.24.5
+CATEGORIES=	cad
+MASTER_SITES=	http://www.klayout.org/downloads/
+
+MAINTAINER=	pkgsrc-users%NetBSD.org@localhost
+HOMEPAGE=	http://www.klayout.org/downloads/
+COMMENT=	Simple GDS and OASIS file viewer and Editor
+LICENSE=	gnu-gpl-v2
+
+BROKEN=		Shared library linking fails, see TODO, thank you.
+
+USE_LANGUAGES=	c c++
+USE_TOOLS+=	gmake
+
+CFLAGS+=	-I${PREFIX}/include/python${PYVERSUFFIX}
+LD_LIBRARY_PATH=${PREFIX}/lib
+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
+
+do-build:
+	(cd ${WRKSRC}; sh build.sh -python python${PYVERSSUFFIX} -qt ${PREFIX}/qt4)
+
+.include "../../lang/python/pyversion.mk"
+.include "../../lang/ruby/buildlink3.mk"
+.include "../../x11/qt4-libs/buildlink3.mk"
+# libQtDesigner
+.include "../../x11/qt4-tools/buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/klayout/PLIST b/klayout/PLIST
new file mode 100644
index 0000000..48d96a5
--- /dev/null
+++ b/klayout/PLIST
@@ -0,0 +1 @@
+@comment $NetBSD$
diff --git a/klayout/TODO b/klayout/TODO
new file mode 100644
index 0000000..3ee97a6
--- /dev/null
+++ b/klayout/TODO
@@ -0,0 +1,41 @@
+- Tested only on NetBSD/amd64 7.0 and 7.99.25
+- Currently rpath or LD_LIBRARY_PATH is not properly set
+- make install is not implemented yet.
+  (thus PLIST is not ready)
+- (Test is done before make package, by:
+   env LD_LIBRARY_PATH=/usr/pkg/lib:/usr/pkg/qt4/lib   \
+   /export/WRKOBJDIR/wip/klayout/work/klayout-0.24.5/bin.netbsd-32-gcc-release/klayout
+  )
+- Several hard coding for string gcc ar etc
+- ruby version handling is not properly setup
+- MAKE_JOBS= may not be in effect ?
+
+
+(sample log)
+-----------------
+Build done.
+
+Final binary is ready in /export/WRKOBJDIR/wip/klayout/work/klayout-0.24.5/bin.netbsd-32-gcc-release/klayout.
+To run it, you may need to add the following to your LD_LIBRARY_PATH:
+/usr/pkg/qt4/lib
+Shared object "libruby23.so.23" not found
+Shared object "libruby23.so.23" not found
+=> Unwrapping files-to-be-installed.
+762.07s 77.20s 14:00.81 99% 0+0k 0+609io 470pf+0w
+-----------------
+
+
+sh -c 'gcc  /lib  -g -shared -o libklayout.so antConfig.o antObject.o antPlugin.o antService.o antTemplate.o dbArray.o dbBox.o dbBoxConvert.o dbBoxScanner.o dbCell.o dbCellGraphUtils.o dbCellHullGenerator.o dbCellInst.o dbCellMapping.o dbCIF.o dbCIFReader.o dbCIFWriter.o dbClipboard.o dbClipboardData.o dbClip.o dbDXF.o dbDXFReader.o dbDXFWriter.o dbEdge.o dbEdgePair.o dbEdges.o dbEdgePairRelations.o dbEdgePairs.o dbEdgeProcessor.o dbFuzzyCellMapping.o dbGDS2.o dbGDS2ReaderBase.o dbGDS2Reader.o dbGDS2WriterBase.o dbGDS2Writer.o dbHershey.o dbInstances.o dbInstElement.o dbLayerMapping.o dbLayerProperties.o dbLayout.o dbLayoutDiff.o dbLayoutQuery.o dbLayoutStateModel.o dbLayoutUtils.o dbLibrary.o dbLibraryManager.o dbLibraryProxy.o dbLoadLayoutOptions.o dbManager.o dbMatrix.o dbMemStatistics.o dbOASIS.o dbOASISReader.o dbOASISWriter.o dbObject.o dbPath.o dbPCellDeclaration.o dbPCellHeader.o dbPCellVariant.o dbPoint.o dbPolygon.o dbFillTool.o dbPolygonTools.o dbPropertiesReposit
ory.o dbRecursiveShapeIterator.o dbReader.o dbRegion.o dbSaveLayoutOptions.o dbShape.o dbShapes2.o dbShapes.o dbStatic.o dbStream.o dbStreamLayers.o dbText.o dbTextWriter.o dbTilingProcessor.o dbTrans.o dbUserObject.o dbVector.o dbWriter.o dbWriterTools.o edtConfig.o edtMainService.o edtPlugin.o edtService.o edtServiceImpl.o edtUtils.o extDiffPlugin.o extGerberDrillFileReader.o extGerberImport.o extGerberImporter.o extNetTracer.o extRS274XApertures.o extRS274XReader.o extLEFDEFImport.o extLEFDEFImporter.o extLEFImporter.o extDEFImporter.o extStreamImport.o extStreamImporter.o extBooleanOperationsPlugin.o extXORPlugin.o gsi.o gsiExternalMain.o gsiTypes.o gsiClassBase.o gsiClass.o gsiMethods.o gsiInterpreter.o gsiObject.o gsiRuntimeError.o gsiDeclAnt.o gsiDeclBasic.o gsiDeclDbBox.o gsiDeclDbCell.o gsiDeclDbCellMapping.o gsiDeclDbEdge.o gsiDeclDbEdges.o gsiDeclDbEdgePair.o gsiDeclDbEdgePairs.o gsiDeclDbEdgeProcessor.o gsiDeclDbInstElement.o gsiDeclDbLayerMapping.o gsiDeclDbLayout.o gsiD
 eclDbLayoutUtils.o gsiDeclDbLibrary.o gsiDeclDbManager.o gsiDeclDbMatrix.o gsiDeclDbPath.o gsiDeclDbPoint.o gsiDeclDbPolygon.o gsiDeclDbRecursiveShapeIterator.o gsiDeclDbRegion.o gsiDeclDbReader.o gsiDeclDbShape.o gsiDeclDbShapeProcessor.o gsiDeclDbShapes.o gsiDeclDbText.o gsiDeclDbTrans.o gsiDeclDbTilingProcessor.o gsiDeclEdt.o gsiDeclImg.o gsiDeclInternal.o gsiDeclLayApplication.o gsiDeclLayDialogs.o gsiDeclLayLayers.o gsiDeclLayLayoutView.o gsiDeclLayMainWindow.o gsiDeclLayPlugin.o gsiDeclLayMacro.o gsiDeclLayMarker.o gsiDeclLayMenu.o gsiDeclRdb.o gsiDeclTl.o gsiExpression.o imgObject.o imgPlugin.o imgService.o layAnnotationShapes.o layApplication.o layBitmap.o layBitmapRenderer.o layBitmapsToImage.o layBrowser.o layCanvasPlane.o layCellTreeModel.o layCellView.o layColorPalette.o layConverters.o layCursor.o layDrawing.o layEditable.o layExceptions.o layFileDialog.o layFinder.o layFixedFont.o layGenericSyntaxHighlighter.o layLayerProperties.o layLayoutViewConfig.o layMarker.o layM
 ouseTracker.o layHelpSource.o layHelpProvider.o layGSIHelpProvider.o layResourceHelpProvider.o layObjectInstPath.o layParsedLayerSource.o layPlugin.o layProgress.o layProperties.o layQtTools.o layRedrawLayerInfo.o layRedrawThreadCanvas.o layRedrawThread.o layRedrawThreadWorker.o layRenderer.o layRubberBox.o laySearchReplacePlugin.o laySnap.o layStipplePalette.o layStream.o layTechnology.o layTechnologySelector.o layVersion.o layViewObject.o layViewOp.o layViewport.o layZoomBox.o libBasic.o libBasicArc.o libBasicText.o libBasicCircle.o libBasicEllipse.o libBasicPie.o libBasicDonut.o libBasicRoundPath.o libBasicRoundPolygon.o libBasicStrokedPolygon.o pya.o pyaConvert.o pyaInspector.o pyaMarshal.o pyaObject.o pyaRefs.o pyaUtils.o pyaHelpers.o rba.o rdb.o rdbFile.o rdbUtils.o rdbReader.o rdbRVEReader.o tlAssert.o tlCollection.o tlDataMapping.o tlDeflate.o tlException.o tlExpression.o tlGlobPattern.o tlHeap.o tlInternational.o tlLog.o tlObserver.o tlProgress.o tlStaticObjects.o tlStream.
 o tlString.o tlThreadedWorkers.o tlTimer.o tlVariant.o tlXMLParser.o tlXMLWriter.o dbGDS2Converter.o dbGDS2Text.o dbGDS2TextReader.o dbGDS2TextWriter.o tlHttpStream.o antConfigPage.o antPropertiesPage.o edtDialogs.o edtEditorOptionsPages.o edtPCellParametersPage.o edtInstPropertiesPage.o edtPartialService.o edtPropertiesPages.o edtPropertiesPageUtils.o extDiffToolDialog.o extGerberImportDialog.o extLEFDEFImportDialogs.o extNetTracerConfig.o extNetTracerDialog.o extStreamImportDialog.o extXORToolDialog.o extBooleanOperationsDialogs.o gtf.o imgLandmarksDialog.o imgNavigator.o imgPropertiesPage.o imgWidgets.o layAbstractMenu.o layBookmarkList.o layBookmarkManagementForm.o layBrowseInstancesForm.o layBrowserDialog.o layBrowserPanel.o layBrowseShapesForm.o layCellSelectionForm.o layCIFReaderPlugin.o layCIFWriterPlugin.o layClipDialog.o layCrashMessage.o layConfigurationDialog.o layDialogs.o layDisplayState.o layDitherPattern.o layDXFReaderPlugin.o layDXFWriterPlugin.o layEditStipplesForm
 .o layEditStippleWidget.o layFillDialog.o layGDS2ReaderPlugin.o layGDS2WriterPlugin.o layGridNet.o layHelpDialog.o layHierarchyControlPanel.o layLayerControlPanel.o layLayerMappingWidget.o layLayerToolbox.o layLayerTreeModel.o layLayoutCanvas.o layLayoutPropertiesForm.o layLayoutStatisticsForm.o layLayoutView.o layLayoutViewConfigPages.o layLoadLayoutOptionsDialog.o layLogViewerDialog.o layMacroVariableView.o layMacroEditorDialog.o layMacroEditorPage.o layMacroEditorSetupDialog.o layMacro.o layMacroInterpreter.o layMacroPropertiesDialog.o layMacroEditorTree.o layMainConfigPages.o layMainWindow.o layMove.o layNavigator.o layOASISWriterPlugin.o layProgressWidget.o layPropertiesDialog.o laySaveLayoutOptionsDialog.o laySearchReplaceDialog.o laySearchReplaceConfigPage.o laySearchReplacePropertiesWidgets.o laySelectCellViewForm.o laySelector.o laySelectStippleForm.o laySession.o laySettingsForm.o layTechSetupDialog.o layTipDialog.o layWidgets.o layRuntimeErrorForm.o rdbInfoWidget.o rdbMar
 kerBrowser.o rdbMarkerBrowserDialog.o rdbMarkerBrowserPage.o tlDeferredExecution.o resources.o  libmoc.a /usr/pkg/lib/libruby23.so.23.0 /usr/pkg/lib/libpython2.7.so  -L/usr/pkg/qt4/lib -lQtGui -lQtCore -lQtXml -lQtNetwork -lQtSql -lQtDesigner -lrt -lm -lcrypt -lz'
+/lib: file not recognized: File format not recognized
+/export/WRKOBJDIR/wip/klayout/work/klayout-0.24.5/src/Makefile.body:715: recipe for target 'libklayout.so' failed
+gmake[3]: *** [libklayout.so] Error 1
+gmake[3]: Leaving directory '/export/WRKOBJDIR/wip/klayout/work/klayout-0.24.5/build.netbsd-32-gcc-release/main'
+Makefile:16: recipe for target 'all' failed
+gmake[2]: *** [all] Error 1
+gmake[2]: Leaving directory '/export/WRKOBJDIR/wip/klayout/work/klayout-0.24.5/build.netbsd-32-gcc-release'
+*** Error code 1
+
+Stop.
+make[1]: stopped in /export/CHROOT/usr/pkgsrc/wip/klayout
+*** Error code 1
+
diff --git a/klayout/distinfo b/klayout/distinfo
new file mode 100644
index 0000000..0c8723b
--- /dev/null
+++ b/klayout/distinfo
@@ -0,0 +1,10 @@
+$NetBSD$
+
+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) = 224acc80fabc6cbb5ecaf138086a8ce14c2914a7
+SHA1 (patch-src_layApplication.cc) = d3f115836e75a76ab2322048d8698c0dcd6c7492
diff --git a/klayout/patches/patch-build.sh b/klayout/patches/patch-build.sh
new file mode 100644
index 0000000..c6527b9
--- /dev/null
+++ b/klayout/patches/patch-build.sh
@@ -0,0 +1,19 @@
+$NetBSD$
+
+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/klayout/patches/patch-config_Makefile_conf_freebsd-32-gcc-release b/klayout/patches/patch-config_Makefile_conf_freebsd-32-gcc-release
new file mode 100644
index 0000000..d9ec6b8
--- /dev/null
+++ b/klayout/patches/patch-config_Makefile_conf_freebsd-32-gcc-release
@@ -0,0 +1,56 @@
+$NetBSD$
+
+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/klayout/patches/patch-config_Makefile_conf_netbsd-32-gcc-release b/klayout/patches/patch-config_Makefile_conf_netbsd-32-gcc-release
new file mode 100644
index 0000000..b390869
--- /dev/null
+++ b/klayout/patches/patch-config_Makefile_conf_netbsd-32-gcc-release
@@ -0,0 +1,56 @@
+$NetBSD$
+
+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/klayout/patches/patch-src_layApplication.cc b/klayout/patches/patch-src_layApplication.cc
new file mode 100644
index 0000000..c678ad6
--- /dev/null
+++ b/klayout/patches/patch-src_layApplication.cc
@@ -0,0 +1,16 @@
+$NetBSD$
+
+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
+ 


Home | Main Index | Thread Index | Old Index