X-Git-Url: http://gitweb.michael.orlitzky.com/?a=blobdiff_plain;f=lib%2Fmakefile;fp=lib%2Fmakefile;h=4115134d0db1f5dfcf88171dfcebeabdfc384c35;hb=1717bafe07c9f51e0fae441db35b2d03d893cd3e;hp=0000000000000000000000000000000000000000;hpb=c62d089df5a523ff0cd87b2a71e5be3e9ab337bf;p=dead%2Fcensus-tools.git diff --git a/lib/makefile b/lib/makefile new file mode 100644 index 0000000..4115134 --- /dev/null +++ b/lib/makefile @@ -0,0 +1,68 @@ +SHAPELY_URL=http://pypi.python.org/packages/source/S/Shapely/Shapely-1.0.14.tar.gz +LP_SOLVE_LIB_URL=http://downloads.sourceforge.net/project/lpsolve/lpsolve/5.5.0.15/lp_solve_5.5.0.15_source.tar.gz +LP_SOLVE_PYTHON_URL=http://downloads.sourceforge.net/project/lpsolve/lpsolve/5.5.0.15/lp_solve_5.5.0.15_Python_source.tar.gz + + +all: lp_solve shapely + + +clean: + rm -rf lp_solve + rm -rf lp_solve_5.5 + rm -rf Shapely + rm -f *.tar.gz + + +shapely: ./Shapely/setup.py + +# We just need to check for any Shapely file here. There +# is nothing special about setup.py. +./Shapely/setup.py: + if [ ! -d Shapely ]; then \ + wget -O shapely.tar.gz $(SHAPELY_URL); \ + tar -xvzf shapely.tar.gz; \ + rm shapely.tar.gz; \ + mv Shapely* Shapely; \ + fi; + + +lp_solve: ./lp_solve/liblpsolve55.so ./lp_solve/lpsolve55.so + + +# Patch Makefile.Linux so that it doesn't pass the -l +# flag to flex. Double dollar signs are required to get +# a single '$' within a makefile. +LFLAGS_PATCH = sed -i 's/^LFLAGS = -L -l$$/LFLAGS = -L/' +./lp_solve/liblpsolve55.so: + make lp_solve_lib_src + if [ -f lp_solve_5.5/Makefile.Linux ]; then \ + $(LFLAGS_PATCH) lp_solve_5.5/Makefile.Linux; \ + mv lp_solve_5.5/Makefile.Linux lp_solve_5.5/Makefile; \ + fi; + make -C lp_solve_5.5 + mkdir -p lp_solve + mv lp_solve_5.5/lpsolve55/liblpsolve55.so ./lp_solve + + +./lp_solve/lpsolve55.so: + make ./lp_solve/liblpsolve55.so lp_solve_python_src + cd lp_solve_5.5/extra/Python; \ + sed -i 's~lpsolve55/bin/\(ux\|win\)32~../lp_solve~' setup.py; \ + python setup.py build; \ + mv build/lib.linux-*/* ../../../lp_solve/; + + +lp_solve_lib_src: + if [ ! -d lp_solve_5.5 ]; then \ + wget -O lp_solve.tar.gz $(LP_SOLVE_LIB_URL); \ + tar -xvzf lp_solve.tar.gz; \ + rm lp_solve.tar.gz; \ + fi; + + +lp_solve_python_src: lp_solve_lib_src + if [ ! -d lp_solve_5.5/extra ]; then \ + wget -O lp_solve_python.tar.gz $(LP_SOLVE_PYTHON_URL); \ + tar -xvzf lp_solve_python.tar.gz; \ + rm lp_solve_python.tar.gz; \ + fi;