From 81aab712cfe805dc00010cb2ff5761787d0a4050 Mon Sep 17 00:00:00 2001 From: d3v11 Date: Sat, 29 Oct 2011 10:17:30 -0400 Subject: SpliceX update: pyinstall added --- contrib/splicex/README | 70 ++++++++++++++++++++++++++++++++++++++------------ 1 file changed, 54 insertions(+), 16 deletions(-) (limited to 'contrib/splicex/README') diff --git a/contrib/splicex/README b/contrib/splicex/README index 66dc9a7..2a44677 100644 --- a/contrib/splicex/README +++ b/contrib/splicex/README @@ -21,33 +21,71 @@ AUTHOR: d3v11 -DEPENDS ON: - python (>=2.6), python-dev(>=2.6), cython (>=0.12.1), - gcc (>=4.4.3), bash (>=4.1.5), man (>=2.5.7) (UN)INSTALL: - SOURCE: + You may optionally install splicex with cython. Doing so takes + longer to install because of compile times but splicex will + also be 20% to 35% faster, depending on your system. I recommend + this option if you intend on putting splicex to long-term use. + If your goal is simply to test, try, and/or debug splicex then + using the pythonic install will be more practical. - ./configure - make compile - make install + DEPENDS ON: - DEBIAN/UBUNTU: + python (>=2.6), python-dev(>=2.6), cython (>=0.12.1), + gcc (>=4.4.3), bash (>=4.1.5), man (>=2.5.7) - ./configure - make compile - make install-deb + SOURCE: - UNINSTALL: + ./configure + make compile + make install + + DEBIAN/UBUNTU: + + ./configure + make compile + make install-deb + + UNINSTALL: - source: - make uninstall + SOURCE: + make uninstall + + DEBIAN/UBUNTU: + apt-get remove splicex + +PYTHONIC (UN)INSTALL: + + You make optionally install splicex as pure python. + Install times are quick but splicex will be 20% to 35% + slower than compiling an executable binary with the + cython + gcc option above. I recommend using this option + if you simply want to test, try, and/or debug splicex. + + DEPENDS ON: - debian/ubuntu: - apt-get remove splicex + python (>=2.6), bash (>=4.1.5), man (>=2.5.7) + + SOURCE: + + ./configure --no-compile + make pyinstall + + DEBIAN/UBUNTU: + + ./configure --no-compile + make pyinstall-deb + + UNINSTALL: + + SOURCE: + make uninstall + DEBIAN/UBUNTU: + apt-get remove splicex TOOLS: -- cgit v1.2.3 From 78e607b3e4c55b830193dee5711b220e6ca79720 Mon Sep 17 00:00:00 2001 From: d3v11 Date: Sat, 29 Oct 2011 11:37:41 -0400 Subject: SpliceX patched compiler for /path/to/Python.h and /path/to/structmember.h --- contrib/splicex/CHANGES | 20 ++++++++++++++++++++ contrib/splicex/README | 14 ++++++++++++++ contrib/splicex/configure | 11 ++++++++++- contrib/splicex/src/make.in | 4 ++-- 4 files changed, 46 insertions(+), 3 deletions(-) (limited to 'contrib/splicex/README') diff --git a/contrib/splicex/CHANGES b/contrib/splicex/CHANGES index 3a0e43b..442a19e 100644 --- a/contrib/splicex/CHANGES +++ b/contrib/splicex/CHANGES @@ -25,3 +25,23 @@ CHANGES: via Cython. see README for dependencies and installation details. + SpliceX compiler flags patched. recent + update did not distinguish: + + /usr/include/ + + -FROM- + + /usr/local/include/ + + Thus, if you have debian python-dev or + source python-dev the ./configure script + should choose the appropriate option. + if the configure still failed to locate + the python development files (headers) + please let me know and I will correct. + + SpliceX can now optionally do a pure + python install. This cuts down on + dependencies and is useful if you just + want to test, try, and/or debug. diff --git a/contrib/splicex/README b/contrib/splicex/README index 2a44677..1a8bf8a 100644 --- a/contrib/splicex/README +++ b/contrib/splicex/README @@ -32,6 +32,20 @@ AUTHOR: If your goal is simply to test, try, and/or debug splicex then using the pythonic install will be more practical. + NOTES: + + If you installed Python from source you can ignore + the python-dev dependency below. However, your source + install of Python must have the development files. IE: + + tar xvf Python-*.tgz + cd Python-* + ./configure --with-pydebug + make install + + This generates Python.h and structmember.h, which are + need for gcc to compile splicex. + DEPENDS ON: python (>=2.6), python-dev(>=2.6), cython (>=0.12.1), diff --git a/contrib/splicex/configure b/contrib/splicex/configure index 535520e..933b51d 100755 --- a/contrib/splicex/configure +++ b/contrib/splicex/configure @@ -57,7 +57,15 @@ echo echo -e " python version == $1" echo -e " interpreter path == $PYPATH" if [ -z "$2" ]; then - echo -e " compiler flags == gcc -I/usr/include/$1" + if [ -e /usr/include/"$1"/Python.h ] && [ -e /usr/include/"$1"/structmember.h ]; then + PYHEADERS="/usr/include/$1" + echo -e " compiler flags == gcc -I /usr/include/$1" + elif [ -e /usr/local/include/"$1"/Python.h ] && [ -e /usr/local/include/"$1"/structmember.h ]; then + PYHEADERS="/usr/local/include/$1" + echo -e " compiler flags == gcc -I /usr/local/include/$1" + else + echo -e " Python.h and structmember.h could not be found... FAILED" + fi fi echo if [ -z "$2" ]; then @@ -69,6 +77,7 @@ sed -e s^PYTHON^"$PYPATH"^g src/deshadow.pyx >build/deshadow.pyx || exit 1 echo -ne " generating Makefile..." if [ -z "$2" ]; then sed -e s^PYTHON^"$1"^g src/make.in >Makefile || exit 1 + sed -i s^HEADERS^"$PYHEADERS"^g Makefile || exit 1 echo -ne ' DONE' echo else diff --git a/contrib/splicex/src/make.in b/contrib/splicex/src/make.in index 5393658..3ebd9a0 100644 --- a/contrib/splicex/src/make.in +++ b/contrib/splicex/src/make.in @@ -1,10 +1,10 @@ compile: cython build/deshadow.pyx -o build/deshadow.c - gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/PYTHON -c build/deshadow.c -o build/deshadow.o + gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I HEADERS -c build/deshadow.c -o build/deshadow.o gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions build/deshadow.o -o build/deshadow.so cython build/splicex.pyx -o build/splicex.c - gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/PYTHON -c build/splicex.c -o build/splicex.o + gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I HEADERS -c build/splicex.c -o build/splicex.o gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions build/splicex.o -o build/splicex.so install-deb: -- cgit v1.2.3 From 516246a2c7ca83a055711b5703b3859560b5a23c Mon Sep 17 00:00:00 2001 From: d3v11 Date: Sat, 29 Oct 2011 11:41:38 -0400 Subject: SpliceX `make pyinstall*` now `make install` --- contrib/splicex/README | 4 ++-- contrib/splicex/src/pymake.in | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) (limited to 'contrib/splicex/README') diff --git a/contrib/splicex/README b/contrib/splicex/README index 1a8bf8a..66d01a2 100644 --- a/contrib/splicex/README +++ b/contrib/splicex/README @@ -86,12 +86,12 @@ PYTHONIC (UN)INSTALL: SOURCE: ./configure --no-compile - make pyinstall + make install DEBIAN/UBUNTU: ./configure --no-compile - make pyinstall-deb + make install-deb UNINSTALL: diff --git a/contrib/splicex/src/pymake.in b/contrib/splicex/src/pymake.in index f948da6..5ca74e2 100644 --- a/contrib/splicex/src/pymake.in +++ b/contrib/splicex/src/pymake.in @@ -1,4 +1,4 @@ -pyinstall-deb: +install-deb: mkdir DEBIAN/splicex mkdir DEBIAN/splicex/DEBIAN mkdir DEBIAN/splicex/usr @@ -24,7 +24,7 @@ pyinstall-deb: dpkg -i DEBIAN/splicex.deb rm -rf DEBIAN/splicex DEBIAN/splicex.deb -pyinstall: +install: make preinstall mkdir /etc/splicex cp build/splicex.pyx /usr/bin/splicex -- cgit v1.2.3 From ffe498e2ea71158854b23a3348f12648af870284 Mon Sep 17 00:00:00 2001 From: d3v11 Date: Sat, 29 Oct 2011 12:02:16 -0400 Subject: splicex readme update --- contrib/splicex/README | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'contrib/splicex/README') diff --git a/contrib/splicex/README b/contrib/splicex/README index 66d01a2..b851334 100644 --- a/contrib/splicex/README +++ b/contrib/splicex/README @@ -44,7 +44,7 @@ AUTHOR: make install This generates Python.h and structmember.h, which are - need for gcc to compile splicex. + needed for gcc to compile splicex. DEPENDS ON: -- cgit v1.2.3