From 3a861d781f081a0a0d8e256af28a5b9d01b7ce10 Mon Sep 17 00:00:00 2001 From: miker Date: Tue, 12 Jun 2007 02:54:44 +0000 Subject: [PATCH] Patch from Dan Scott to fix up the OpenILS/Evergreen build process in the new SVN repo: * removes a ton of OpenSRF cruft such as build targets * adds two new configuration variables (OPENSRF_HEADERS and OPENSRF_LIBS) to point to the OpenSRF heads and libraries,respectively * removes one unnecessary makefile variable (TMPDIR) git-svn-id: svn://svn.open-ils.org/ILS/trunk@7419 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- Open-ILS/src/Makefile | 5 ++-- Open-ILS/src/c-apps/Makefile | 44 ++++++++++++++++++------------------ config.sh | 10 +++++++- install.conf.default | 20 +++++++--------- install.sh | 36 +---------------------------- 5 files changed, 42 insertions(+), 73 deletions(-) diff --git a/Open-ILS/src/Makefile b/Open-ILS/src/Makefile index 8219bc9215..c5596b3230 100644 --- a/Open-ILS/src/Makefile +++ b/Open-ILS/src/Makefile @@ -1,8 +1,7 @@ -export TMPDIR = $(TMP)/opensrf -export LDFLAGS += -L $(TMPDIR) -L . +export LDFLAGS += -L . -L $(OPENSRF_LIBS) export CFLAGS += -pipe -g -Wall -O2 -fPIC -I$(LIBXML2_HEADERS) -I$(APACHE2_HEADERS) -I$(APR_HEADERS) \ - -I$(LIBXML2_HEADERS)/libxml -I$(TMP) -I$(TMPDIR) + -I$(LIBXML2_HEADERS)/libxml -I$(TMP) -I$(OPENSRF_HEADERS) export INCDIR = "$(INCLUDEDIR)/openils/" diff --git a/Open-ILS/src/c-apps/Makefile b/Open-ILS/src/c-apps/Makefile index 3ecbe0e929..4006a0ce71 100644 --- a/Open-ILS/src/c-apps/Makefile +++ b/Open-ILS/src/c-apps/Makefile @@ -14,58 +14,58 @@ oils_dataloader.o: oils_dataloader.c oils_dataloader: oils_dataloader.o @echo $@ - $(CC) $(LDLIBS) $(LDFLAGS) -loils_idl -loils_utils oils_dataloader.o -o $(TMPDIR)/$@ + $(CC) $(LDLIBS) $(LDFLAGS) -loils_idl -loils_utils oils_dataloader.o -o $(TMP)/$@ oils_cstore.so: oils_cstore.o liboils_utils.so liboils_idl.so @echo $@ $(CC) -shared -W1 -L/usr/local/lib/dbd \ - $(LDLIBS) $(LDFLAGS) -loils_idl -ldbi -loils_utils -ldbdpgsql oils_cstore.o -o $(TMPDIR)/$@ + $(LDLIBS) $(LDFLAGS) -loils_idl -ldbi -loils_utils -ldbdpgsql oils_cstore.o -o $(TMP)/$@ oils_rstore.o: oils_cstore.c oils_utils.h - $(CC) $(CFLAGS) -I$(TMPDIR) -I$(TMPDIR)/opensrf/ -DRSTORE -c -o $@ oils_cstore.c + $(CC) $(CFLAGS) -I$(TMP) -DRSTORE -c -o $@ oils_cstore.c oils_rstore.so: oils_rstore.o liboils_utils.so liboils_idl.so @echo $@ $(CC) -shared -W1 -L/usr/local/lib/dbd \ - $(LDLIBS) $(LDFLAGS) -loils_idl -ldbi -ldbdpgsql oils_rstore.o -o $(TMPDIR)/$@ + $(LDLIBS) $(LDFLAGS) -loils_idl -ldbi -ldbdpgsql oils_rstore.o -o $(TMP)/$@ oils_fetch.so: oils_fetch.o liboils_utils.so @echo $@ $(CC) -shared -W1 -L/usr/local/lib/dbd \ - $(LDLIBS) $(LDFLAGS) -ldbi -ldbdpgsql -loils_utils oils_fetch.o -o $(TMPDIR)/$@ + $(LDLIBS) $(LDFLAGS) -ldbi -ldbdpgsql -loils_utils oils_fetch.o -o $(TMP)/$@ oils_idl-core.o: oils_idl-core.c oils_idl.h liboils_idl.so: oils_idl-core.o @echo $@ $(CC) -shared -W1 $(LDLIBS) $(LDFLAGS) oils_idl-core.o -o $@ - cp $@ $(TMPDIR)/ - mkdir -p $(TMPDIR)/openils/ - cp oils_idl.h $(TMPDIR)/openils/ - cp idl_fieldmapper.h $(TMPDIR)/openils/ + cp $@ $(TMP)/ + mkdir -p $(TMP)/openils/ + cp oils_idl.h $(TMP)/openils/ + cp idl_fieldmapper.h $(TMP)/openils/ oils_auth.so: oils_auth.o liboils_utils.so @echo $@ - $(CC) -shared -W1 $(LDLIBS) $(LDFLAGS) -loils_utils -loils_idl oils_auth.o -o $(TMPDIR)/$@ + $(CC) -shared -W1 $(CFLAGS) $(LDLIBS) $(LDFLAGS) -loils_utils -loils_idl oils_auth.o -o $(TMP)/$@ liboils_utils.so: oils_utils.o oils_event.o oils_constants.h @echo $@ $(CC) -shared -W1 $(LDLIBS) $(LDFLAGS) oils_utils.o oils_event.o -o $@ - cp $@ $(TMPDIR)/ - mkdir -p $(TMPDIR)/openils/ - cp oils_event.h $(TMPDIR)/openils/ - cp oils_utils.h $(TMPDIR)/openils/ - cp oils_constants.h $(TMPDIR)/openils/ + cp $@ $(TMP)/ + mkdir -p $(TMP)/openils/ + cp oils_event.h $(TMP)/openils/ + cp oils_utils.h $(TMP)/openils/ + cp oils_constants.h $(TMP)/openils/ install: @echo $@; - cp $(TMPDIR)/oils_auth.so $(LIBDIR)/ - #cp $(TMPDIR)/oils_fetch.so $(LIBDIR)/ - cp $(TMPDIR)/oils_cstore.so $(LIBDIR)/ - cp $(TMPDIR)/oils_rstore.so $(LIBDIR)/ - cp $(TMPDIR)/liboils_utils.so $(LIBDIR)/ - cp $(TMPDIR)/liboils_idl.so $(LIBDIR)/ - cp $(TMPDIR)/oils_dataloader $(BINDIR)/ + cp $(TMP)/oils_auth.so $(LIBDIR)/ + #cp $(TMP)/oils_fetch.so $(LIBDIR)/ + cp $(TMP)/oils_cstore.so $(LIBDIR)/ + cp $(TMP)/oils_rstore.so $(LIBDIR)/ + cp $(TMP)/liboils_utils.so $(LIBDIR)/ + cp $(TMP)/liboils_idl.so $(LIBDIR)/ + cp $(TMP)/oils_dataloader $(BINDIR)/ mkdir -p $(INCDIR)/ cp oils_utils.h $(INCDIR) cp oils_idl.h $(INCDIR) diff --git a/config.sh b/config.sh index e00bc2acda..f1aeb78e08 100755 --- a/config.sh +++ b/config.sh @@ -80,6 +80,12 @@ function buildConfig { prompt "Libxml2 headers directory [$LIBXML2_HEADERS] " read X; if [ ! -z "$X" ]; then LIBXML2_HEADERS="$X"; fi; + prompt "OpenSRF headers directory [$OPENSRF_HEADERS] " + read X; if [ ! -z "$X" ]; then OPENSRF_HEADERS="$X"; fi; + + prompt "OpenSRF libraries directory [$OPENSRF_LIBS] " + read X; if [ ! -z "$X" ]; then OPENSRF_LIBS="$X"; fi; + prompt "Build targets [${TARGETS[@]:0}] " read X; if [ ! -z "$X" ]; then TARGETS=("$X"); fi; @@ -135,6 +141,9 @@ function writeConfig { _write "APR_HEADERS=\"$APR_HEADERS\""; _write "LIBXML2_HEADERS=\"$LIBXML2_HEADERS\""; + _write "OPENSRF_HEADERS=\"$OPENSRF_HEADERS\""; + _write "OPENSRF_LIBS=\"$OPENSRF_LIBS\""; + _write "WEBDIR=\"$WEBDIR\""; _write "TEMPLATEDIR=\"$TEMPLATEDIR\""; _write "ETCDIR=\"$ETCDIR\""; @@ -151,7 +160,6 @@ function writeConfig { STR="$STR)"; _write "$STR"; - _write "OPENSRFDIR=\"OpenSRF/src/\""; _write "OPENILSDIR=\"Open-ILS/src/\""; _write "EVERGREENDIR=\"Evergreen/\""; diff --git a/install.conf.default b/install.conf.default index c427d6136d..43037297dd 100644 --- a/install.conf.default +++ b/install.conf.default @@ -18,13 +18,6 @@ # -------------------------------------------------------------------- # Build targets. Options include: # -# opensrf_all - builds all OpenSRF compenents -# opensrf_jserver - custom 'single-domain' jabber server which may be used in place of jabberd2 -# opensrf_router - jabber router. -# opensrf_gateway - mod_ils_gateway, Apache module for proxying API calls -# opensrf_srfsh - diagnostic shell interface to OpenSRF -# opensrf_core - install the OpenSRF perl modules and core files for running opensrf -# # openils_all - builds all OpenILS compenents # openils_core - install the Open-ILS perl modules, and core files for running and openils server # openils_web - copies over the javascript and html templates to the web root directory for running the OPAC @@ -35,14 +28,11 @@ # evergreen_core - builds core Evergreen components (does not build evergreen_xul_client!) # evergreen_xul_client - client XUL application # -# When running the server components of OpenSRF/OpenILS, the simplest -# thing is to build 'opensrf' even if you -# don't use all of the components. # Build marcdumper only if you need to convert MARC binary files to MARCXML. # If you only want to build the client app, then just build evergreen_xul_client. # -------------------------------------------------------------------- -TARGETS=("opensrf_all" "openils_core" "openils_web" "openils_db"); +TARGETS=("openils_core" "openils_web" "openils_db"); # -------------------------------------------------------------------- @@ -93,12 +83,18 @@ APR_HEADERS="/usr/include/apr-1.0/"; LIBXML2_HEADERS="/usr/include/libxml2/"; +# -------------------------------------------------------------------- +# Directories where the OpenSRF headers and libraries are located. +# You must build and install OpenSRF before OpenILS. +# -------------------------------------------------------------------- +OPENSRF_HEADERS="/openils/include/" +OPENSRF_LIBS="/openils/lib/" + # -------------------------------------------------------------------- # These point to the top level makefiles for each of the sub # projects. Only change these if you have relocated the directories. # -------------------------------------------------------------------- -OPENSRFDIR="OpenSRF/src/"; OPENILSDIR="Open-ILS/src/"; EVERGREENDIR="Evergreen/"; diff --git a/install.sh b/install.sh index 4769f68131..91150cf8d8 100755 --- a/install.sh +++ b/install.sh @@ -116,7 +116,7 @@ function runInstall { APACHE2_HEADERS=$APACHE2_HEADERS LIBXML2_HEADERS=$LIBXML2_HEADERS DBPORT=$DBPORT\ BINDIR=$BINDIR LIBDIR=$LIBDIR PERLDIR=$PERLDIR INCLUDEDIR=$INCLUDEDIR \ WEBDIR=$WEBDIR TEMPLATEDIR=$TEMPLATEDIR ETCDIR=$ETCDIR REPORTERDIR=$REPORTERDIR\ - OPENSRFDIR=$OPENSRFDIR OPENILSDIR=$OPENILSDIR EVERGREENDIR=$EVERGREENDIR \ + OPENSRF_HEADERS=$OPENSRF_HEADERS OPENSRF_LIBS=$OPENSRF_LIBS OPENILSDIR=$OPENILSDIR EVERGREENDIR=$EVERGREENDIR \ CIRCRULESDIR=$CIRCRULESDIR CATALOGSCRIPTDIR=$CATALOGSCRIPTDIR CGIDIR=$CGIDIR \ DBDRVR=$DBDRVR DBHOST=$DBHOST DBVER=$DBVER DATADIR=$DATADIR ADMINDIR=$ADMINDIR\ PENALTYRULESDIR=$PENALTYRULESDIR DBNAME=$DBNAME DBUSER=$DBUSER DBPW=$DBPW XSLDIR=$XSLDIR NEW_OPAC_URL=$NEW_OPAC_URL \ @@ -125,39 +125,6 @@ function runInstall { case "$target" in - # OpenSRF --- - - "opensrf_all") - if building; then $MAKE -C "$OPENSRFDIR" all; fi; - if installing; then $MAKE -C "$OPENSRFDIR" install; fi; - ;; - - "opensrf_jserver" ) - if building; then $MAKE -C "$OPENSRFDIR" "jserver"; fi; - if installing; then $MAKE -C "$OPENSRFDIR" "jserver-install"; fi; - ;; - - "opensrf_router" ) - if building; then $MAKE -C "$OPENSRFDIR" "router"; fi; - if installing; then $MAKE -C "$OPENSRFDIR" "router-install"; fi; - ;; - - "opensrf_gateway" ) - if building; then $MAKE -C "$OPENSRFDIR" "gateway"; fi; - if installing; then $MAKE -C "$OPENSRFDIR" "gateway-install"; fi; - ;; - - "opensrf_srfsh" ) - if building; then $MAKE -C "$OPENSRFDIR" "srfsh"; fi; - if installing; then $MAKE -C "$OPENSRFDIR" "srfsh-install"; fi; - ;; - - "opensrf_core" ) - if building; then $MAKE -C "$OPENSRFDIR" libstack/opensrf; fi; - if installing; then $MAKE -C "$OPENSRFDIR" "perl-install"; fi; - ;; - - # OpenILS --- "openils_all" ) @@ -278,7 +245,6 @@ function checkParams { function cleanMe { loadConfig; - make "TMP=$TMP" -s -C "$OPENSRFDIR" clean; make "TMP=$TMP" -s -C "$OPENILSDIR" clean; make "TMP=$TMP" -s -C "$EVERGREENDIR" clean; } -- 2.43.2