Index: Makefile ================================================================== --- Makefile +++ Makefile @@ -17,10 +17,11 @@ # make install CSCOPTS='-accumulate-profile -profile-name $(PWD)/profile-ww$(shell date +%V.%u)' # rm .o ; make install CSCOPTS='-profile' ; ... ; chicken-profile | less SHELL=/bin/bash PREFIX=$(PWD) +CHICKEN_PREFIX=$(PWD)/new-chicken/ CSCOPTS= INSTALL=install SRCFILES = common.scm items.scm launch.scm ods.scm runconfig.scm \ server.scm configf.scm db.scm keys.scm margs.scm \ megatest-version.scm process.scm runs.scm tasks.scm \ @@ -463,40 +464,40 @@ curl https://code.call-cc.org/releases/4.13.0/chicken-4.13.0.tar.gz > tgz/chicken-4.13.0.tar.gz tgz/ffcall.tar.gz : wget -c -O tgz/ffcall.tar.gz 'http://www.kiatoa.com/fossils/ffcall/tarball?name=ffcall&uuid=trunk' -build/sqlite-autoconf-3090200/configure : tgz/sqlite-autoconf-3090200.tar.gz +$(CHICKEN_PREFIX)/sqlite-autoconf-3090200/configure : tgz/sqlite-autoconf-3090200.tar.gz mkdir -p build; cd build; tar xf ../tgz/sqlite-autoconf-3090200.tar.gz -build/lib/libnanomsg.so : tgz/nanomsg-1.0.0.tar.gz +$(CHICKEN_PREFIX)/lib/libnanomsg.so : tgz/nanomsg-1.0.0.tar.gz cd tgz; tar -xzvf nanomsg-1.0.0.tar.gz cd tgz/nanomsg-1.0.0; mkdir build; cd build; - cd tgz/nanomsg-1.0.0/build; cmake ../ -DCMAKE_INSTALL_PREFIX=`pwd`/../../../build/ + cd tgz/nanomsg-1.0.0/build; cmake ../ -DCMAKE_INSTALL_PREFIX=$(CHICKEN_PREFIX) cd tgz/nanomsg-1.0.0/build; make; make install -build/chicken-4.13.0/LICENSE : tgz/chicken-4.13.0.tar.gz +$(CHICKEN_PREFIX)/chicken-4.13.0/LICENSE : tgz/chicken-4.13.0.tar.gz mkdir -p build/eggs-installed cd build;tar xf ../tgz/chicken-4.13.0.tar.gz tgz/opensrc.fossil : cd tgz; fossil clone http://www.kiatoa.com/fossils/opensrc opensrc.fossil mkdir tgz/opensrc cd tgz/opensrc; fossil open --nested ../opensrc.fossil; fossil up; fossil uv sync -build/lib/libiupweb.so : tgz/opensrc.fossil +$(CHICKEN_PREFIX)/lib/libiupweb.so : tgz/opensrc.fossil cd tgz/opensrc; fossil unversioned cat libs/cd/cd-5.10_Linux26g4_64_lib.tar.gz > ../cd.tgz cd tgz/opensrc; fossil unversioned cat libs/im/im-3.11_Linux26g4_64_lib.tar.gz > ../im.tgz cd tgz/opensrc; fossil unversioned cat libs/iup/iup-3.19.1_Linux26g4_64_lib.tar.gz > ../iup.tgz cd tgz; tar -xzf cd.tgz; cd tgz; tar -xzf im.tgz; cd tgz; tar -xzf iup.tgz; - cp tgz/include/* `pwd`/build/include/ - cp tgz/*.so `pwd`/build/lib/ - cp tgz/*.a `pwd`/build/lib/ - cp tgz/ftgl/lib/*/* `pwd`/build/lib/ + cp tgz/include/* $(CHICKEN_PREFIX)/include/ + cp tgz/*.so $(CHICKEN_PREFIX)/lib/ + cp tgz/*.a $(CHICKEN_PREFIX)/lib/ + cp tgz/ftgl/lib/*/* $(CHICKEN_PREFIX)/lib/ EGGS=srfi-69 srfi-42 sqlite3 iup canvas-draw typed-records md5 regex-case base64 \ format dot-locking csv-xml z3 udp hostinfo directory-utils stack dbi crypt sha1 \ posix-extras pathname-expand csv call-with-environment-variables s11n spiffy \ uri-common intarweb http-client spiffy-request-vars spiffy-directory-listing \ @@ -503,42 +504,45 @@ ansi-escape-sequences test slice rfc3339 uuid-lib filepath srfi-19 sparse-vectors \ sql-de-lite fmt readline apropos json simple-exceptions rpc trace logpro refdb EGGSTARG=$(addsuffix .done,$(addprefix build/eggs-installed/,$(EGGS))) EGGSTARG2=$(addsuffix .done, $(EGGS)) -build/lib/libcallback.a : tgz/ffcall.tar.gz +$(CHICKEN_PREFIX)/lib/libcallback.a : tgz/ffcall.tar.gz cd tgz; tar -xzvf ffcall.tar.gz - cd tgz/ffcall; ./configure --prefix=`pwd`/../../build --enable-shared + cd tgz/ffcall; ./configure --prefix=$(CHICKEN_PREFIX) --enable-shared cd tgz/ffcall; make CC="gcc -fPIC"; make install -build/bin/sqlite3 : build/sqlite-autoconf-3090200/configure - cd build/sqlite-autoconf-3090200; ./configure --prefix=`pwd`/..; make; make install - -build/bin/csi : build/bin/sqlite3 build/lib/libiupweb.so build/chicken-4.13.0/LICENSE $(EGGSTARG2) - cd build/chicken-4.13.0;make PLATFORM=linux PREFIX=`pwd`/.. - cd build/chicken-4.13.0;make PLATFORM=linux PREFIX=`pwd`/.. install - -nanomsg.done : build/lib/libnanomsg.so - CSC_OPTIONS="-I`pwd`/build/include -L`pwd`/build/lib -L`pwd`/build/lib64" build/bin/chicken-install nanomsg > nanomsg.done - -iup.done : build/lib/libcallback.a - CSC_OPTIONS="-I`pwd`/build/include -L`pwd`/build/lib" build/bin/chicken-install -D no-library-checks -feature disable-iup-web -feature disable-iup-pplot -feature disable-iup-matrixex iup > iup.done +$(CHICKEN_PREFIX)/bin/sqlite3 : build/sqlite-autoconf-3090200/configure + cd build/sqlite-autoconf-3090200; ./configure --prefix=$(CHICKEN_PREFIX); make; make install + +$(CHICKEN_PREFIX)/bin/csi : $(CHICKEN_PREFIX)/bin/sqlite3 $(CHICKEN_PREFIX)/lib/libiupweb.so $(CHICKEN_PREFIX)/chicken-4.13.0/LICENSE + cd build/chicken-4.13.0;make PLATFORM=linux PREFIX=$(CHICKEN_PREFIX) + cd build/chicken-4.13.0;make PLATFORM=linux PREFIX=$(CHICKEN_PREFIX) install + +chicken : $(CHICKEN_PREFIX)/bin/csi $(EGGSTARG2) + echo "Fake target to build prefix chicken" + +nanomsg.done : $(CHICKEN_PREFIX)/lib/libnanomsg.so + CSC_OPTIONS="-I$(CHICKEN_PREFIX)/include -L$(CHICKEN_PREFIX)/lib -L$(CHICKEN_PREFIX)/lib64" $(CHICKEN_PREFIX)/bin/chicken-install nanomsg > nanomsg.done + +iup.done : $(CHICKEN_PREFIX)/lib/libcallback.a + CSC_OPTIONS="-I$(CHICKEN_PREFIX)/include -L$(CHICKEN_PREFIX)/lib" $(CHICKEN_PREFIX)/bin/chicken-install -D no-library-checks -feature disable-iup-web -feature disable-iup-pplot -feature disable-iup-matrixex iup > iup.done canvas-draw.done : - CSC_OPTIONS="-I`pwd`/build/include -L`pwd`/build/lib" build/bin/chicken-install -D no-library-checks canvas-draw > canvas-draw.done + CSC_OPTIONS="-I$(CHICKEN_PREFIX)/include -L$(CHICKEN_PREFIX)/lib" $(CHICKEN_PREFIX)/bin/chicken-install -D no-library-checks canvas-draw > canvas-draw.done sqlite3.done : - CSC_OPTIONS="-I`pwd`/build/include -L`pwd`/build/lib" build/bin/chicken-install sqlite3 > sqlite3.done + CSC_OPTIONS="-I$(CHICKEN_PREFIX)/include -L$(CHICKEN_PREFIX)/lib" $(CHICKEN_PREFIX)/bin/chicken-install sqlite3 > sqlite3.done sql-de-lite.done : - CSC_OPTIONS="-I`pwd`/build/include -L`pwd`/build/lib" build/bin/chicken-install sql-de-lite > sql-de-lite.done + CSC_OPTIONS="-I$(CHICKEN_PREFIX)/include -L$(CHICKEN_PREFIX)/lib" $(CHICKEN_PREFIX)/bin/chicken-install sql-de-lite > sql-de-lite.done %.done : - build/bin/chicken-install $* > $*.done + $(CHICKEN_PREFIX)/bin/chicken-install $* > $*.done build/eggs-installed/%.done : build/bin/csi $(EGGS) - build/bin/chicken-install $* > build/eggs-installed/$*.done + $(CHICKEN_PREFIX)/bin/chicken-install $* > build/eggs-installed/$*.done #====================================================================== # Attic #======================================================================