########################################################################### # # Makefile -- Makefile for packages included with Greenstone runtime # # A component of the Greenstone digital library software # from the New Zealand Digital Library Project at the # University of Waikato, New Zealand. # # Copyright (C) 2000 New Zealand Digital Library Project # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. # ########################################################################### USE_Z3950=@USE_Z3950@ USE_YAZ=@USE_YAZ@ USE_APACHE_HTTPD=@USE_APACHE_HTTPD@ ifeq ($(USE_Z3950), 1) # make sure USE_YAZ is set USE_YAZ=1 D2M=d2m else D2M= endif ifeq ($(USE_YAZ), 1) # we only compile the src and client dirs for now. YAZ=yaz/yaz-2.1.4/src yaz/yaz-2.1.4/client else YAZ= endif USE_CORBA=@USE_CORBA@ MICO_DIR=@MICO_DIR@ ifeq ($(USE_CORBA), 1) ifeq ($(MICO_DIR), default) CORBA="mico/mico" else CORBA= endif else CORBA= endif ifeq ($(USE_APACHE_HTTPD), 1) HTTPD=apache-httpd/httpd-2.2.11 else HTTPD= endif # PACKAGEDIRS contains the packages that we want to make and install. It # is assumed that each package will have at least four rules: all, install, # clean, and distclean. PACKAGEDIRS = $(YAZ) $(D2M) $(CORBA) $(HTTPD) all: for odir in $(PACKAGEDIRS); do \ echo making $@ in $$odir; \ (cd $$odir && $(MAKE) $(MDEFINES) $@) || exit 1; \ done ifeq ($(CORBA), "mico/mico") cd mico/mico; $(MAKE) $(MDEFINES) install mkdir -p ../bin/linux mkdir -p ../lib mkdir -p ../include mkdir -p ../man cp -f mico/bin/* ../bin/linux cp -f mico/lib/* ../lib/ cp -fr mico/include/* ../include cp -fr mico/man ../man endif ifeq ($(USE_YAZ), 1) # need to do make install in include and src dirs to get the header files and # lib file into the right place cd yaz/yaz-2.1.4/include; $(MAKE) $(MDEFINES) install cd yaz/yaz-2.1.4/src; $(MAKE) $(MDEFINES) install endif install: for idir in $(PACKAGEDIRS); do \ echo installing $$idir; \ (cd $$idir && $(MAKE) install) || exit 1; \ done ifeq ($(USE_APACHE_HTTPD), 1) cp -f apache-httpd/httpd.conf.in ../../apache-httpd/conf/. mkdir -p ../../etc/logs-gsi @ echo "*************** INFO ***************" @ echo "Run: source setup.bash, to set up the environment for greenstone" @ echo "Type: make configure-admin, to set the admin password" @ echo "Edit the build.properties file to change the port number if necessary" @ echo "Type: make configure-web, to configure the included apache webserver" @ echo "EITHER type: make web-start, to launch the webserver from the command-line" @ echo "OR run: gs2-server.sh, to launch the GUI version of the included webserver" @ echo "************************************" endif clean: for subdir in $(PACKAGEDIRS); do \ echo cleaning $@ in $$subdir; \ (cd $$subdir && $(MAKE) clean || exit 0) ; \ done distclean: for subdir in $(PACKAGEDIRS); do \ echo cleaning $@ in $$subdir; \ (cd $$subdir && $(MAKE) distclean || exit 0) ; \ done