diff --git a/BUILD b/BUILD new file mode 100644 index 000000000..e31e6a251 --- /dev/null +++ b/BUILD @@ -0,0 +1,3 @@ + +For build instructions see http://www.klayout.de/build.html. + diff --git a/CONTRIB b/CONTRIB new file mode 100644 index 000000000..e3a1ec817 --- /dev/null +++ b/CONTRIB @@ -0,0 +1,19 @@ + +List of Contributions and 3rd Party Sources + +1.) contrib/gds2_txt + + The original version of the code for the GDS2 text format reader and writer has been contributed + by Romain Gauci from Oscillated Recall Technology (http://www.or-tech.co.jp). + +2.) contrib/zlib + + ZLIB 1.2.5 + See license terms and conditions in zlib.h + + Copyright (C) 1995-2010 Jean-loup Gailly and Mark Adler + + Jean-loup Gailly Mark Adler + jloup@gzip.org madler@alumni.caltech.edu + + diff --git a/build.sh b/build.sh new file mode 100755 index 000000000..f52cb6e6f --- /dev/null +++ b/build.sh @@ -0,0 +1,460 @@ +#!/bin/sh + +CURR_DIR=`pwd` +RUN_MAKE=1 + +HAVE_QTBINDINGS=1 +HAVE_64BIT_COORD=0 +HAVE_QT5=0 + +RUBYINCLUDE="" +RUBYINCLUDE2="" +RUBYLIBFILE="" +RUBYVERSIONCODE="" + +PYTHONINCLUDE="" +PYTHONLIBFILE="" + +QMAKE="qmake" +RUBY="" +PYTHON="" +BUILD="" +BIN="" + +MAKE_OPT="" + +CONFIG="release" + +# Check, whether build.sh is run from the top level folder +if ! [ -e src ] || ! [ -e src/klayout.pro ]; then + echo "*** ERROR: run build.sh from the top level folder" + exit 1 +fi + +while [ "$*" != "" ]; do + + a=$1 + shift + + case $a in + -with-qtbinding) + HAVE_QTBINDINGS=1 + ;; + -without-qtbinding) + HAVE_QTBINDINGS=0 + ;; + -with-64bit-coord) + HAVE_64BIT_COORD=1 + ;; + -without-64bit-coord) + HAVE_64BIT_COORD=0 + ;; + -release) + CONFIG="release" + ;; + -debug) + CONFIG="debug" + ;; + -python) + PYTHON="$1" + shift + ;; + -nopython) + PYTHON="-" + ;; + -pyinc) + PYTHONINCLUDE="$1" + shift + ;; + -pylib) + PYTHONLIBFILE="$1" + shift + ;; + -qmake) + QMAKE="$1" + shift + ;; + -ruby) + RUBY="$1" + shift + ;; + -noruby) + RUBY="-" + ;; + -rbvers) + RUBYVERSIONCODE="$1" + shift + ;; + -rbinc) + RUBYINCLUDE="$1" + shift + ;; + -rbinc2) + RUBYINCLUDE2="$1" + shift + ;; + -rblib) + RUBYLIBFILE="$1" + shift + ;; + -build) + BUILD="$1" + shift + ;; + -bin|-prefix) + BIN="$1" + shift + ;; + -qt4) + HAVE_QT5=0 + ;; + -qt5) + HAVE_QT5=1 + ;; + -dry-run) + RUN_MAKE=0 + ;; + -option) + MAKE_OPT="$MAKE_OPT $1" + shift + ;; + -h|--help|-help) + echo "usage: build [options]" + echo "" + echo "options:" + echo " -debug Run a debug build" + echo " -release Run a release build [default]" + echo " -qmake Use qmake 'prog'" + echo " -noruby Don't build with Ruby support" + echo " -ruby Use Ruby interpreter 'prog'" + echo " -nopython Don't build with Python support" + echo " -python Use Python interpreter 'prog'" + echo " -build Directory where to do the build" + echo " -bin|-prefix Directory where to install the binary" + echo " -option