Start using automake/autoconf for configuring, building, and installing Evergreen
authordbs <dbs@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Wed, 27 Aug 2008 20:12:04 +0000 (20:12 +0000)
committerdbs <dbs@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Wed, 27 Aug 2008 20:12:04 +0000 (20:12 +0000)
git-svn-id: svn://svn.open-ils.org/ILS/trunk@10466 dcc99617-32d9-48b4-a31d-7c20da2025e4

41 files changed:
AUTHORS [new file with mode: 0644]
ChangeLog [new file with mode: 0644]
Evergreen/Makefile.am [new file with mode: 0644]
Makefile [deleted file]
Makefile.am [new file with mode: 0644]
NEWS [new file with mode: 0644]
Open-ILS/admin/ils_admin/settings.py.example
Open-ILS/examples/Makefile.in [moved from Open-ILS/examples/Makefile with 100% similarity]
Open-ILS/examples/oils_sip.xml.example
Open-ILS/examples/opensrf.xml.example
Open-ILS/examples/opensrf_core.xml.example
Open-ILS/src/Makefile [deleted file]
Open-ILS/src/Makefile.am [new file with mode: 0644]
Open-ILS/src/apachemods/Makefile [deleted file]
Open-ILS/src/apachemods/Makefile.am [new file with mode: 0644]
Open-ILS/src/c-apps/Makefile.am [new file with mode: 0644]
Open-ILS/src/extras/Makefile [deleted file]
Open-ILS/src/extras/Makefile.am [new file with mode: 0644]
Open-ILS/src/extras/autogen.sh
Open-ILS/src/extras/eg_config.in [new file with mode: 0644]
Open-ILS/src/java/Makefile.am [moved from Open-ILS/src/java/Makefile with 82% similarity]
Open-ILS/src/offline/offline-config.pl [deleted file]
Open-ILS/src/offline/offline-config.pl.in [new file with mode: 0644]
Open-ILS/src/perlmods/OpenILS/WWW/Method.pm
Open-ILS/src/perlmods/OpenILS/WWW/Web.pm
Open-ILS/src/python/Makefile [deleted file]
Open-ILS/src/python/Makefile.am [new file with mode: 0644]
Open-ILS/src/reporter/clark-kent.pl
Open-ILS/src/reporter/find_orphaned_reports.pl
Open-ILS/src/support-scripts/long-overdue-status-update.pl
Open-ILS/src/support-scripts/offline-blocked-list.pl
Open-ILS/src/support-scripts/reshelving_complete.srfsh
Open-ILS/src/support-scripts/thaw_expired_frozen_holds.srfsh
Open-ILS/xul/staff_client/Makefile.am [moved from Open-ILS/xul/staff_client/Makefile with 76% similarity]
autogen.sh [new file with mode: 0644]
build/i18n/Makefile.in [new file with mode: 0644]
config.sh [deleted file]
configoptions.sh [new file with mode: 0644]
configure.ac [new file with mode: 0644]
install.conf.default [deleted file]
install.sh [deleted file]

diff --git a/AUTHORS b/AUTHORS
new file mode 100644 (file)
index 0000000..5650c91
--- /dev/null
+++ b/AUTHORS
@@ -0,0 +1 @@
+#AUTHORS
diff --git a/ChangeLog b/ChangeLog
new file mode 100644 (file)
index 0000000..3323187
--- /dev/null
+++ b/ChangeLog
@@ -0,0 +1 @@
+#ChangeLog
diff --git a/Evergreen/Makefile.am b/Evergreen/Makefile.am
new file mode 100644 (file)
index 0000000..cea1835
--- /dev/null
@@ -0,0 +1,53 @@
+#--------------------------------------------------------------------
+# Makefile.am for Evergreen
+# Author: Kevin Beswick (kevinbeswick00@gmail.com)
+## Process this file with automake to generate Makefile.in
+#-------------------------------------------------------------------
+
+NEW_OPAC_URL=myopac.domain
+NEW_XUL_PACKAGE_NAME=openils
+NEW_XUL_PACKAGE_LABEL=OpenILS
+
+if BUILDEGCORE
+EGCORE_INST = circ-install iplist-install perl-install web-install
+endif 
+
+if BUILDEGXULCLIENT
+EGXUL_INST = xul
+endif
+
+install-data-hook: $(EGCORE_INST) $(EGXUL_INST)
+
+xul:
+       @echo $@
+       cp -R staff_client local_staff_client
+       find local_staff_client/ -type f -exec sed -i s/evergreen/${NEW_XUL_PACKAGE_NAME}/g {} \;
+       find local_staff_client/ -type f -exec sed -i s/Evergreen/${NEW_XUL_PACKAGE_LABEL}/g {} \;
+       (cd local_staff_client/chrome/skin/evergreen; mv evergreen.css ${NEW_XUL_PACKAGE_NAME}.css)
+       (cd local_staff_client/defaults/preferences; mv evergreen.js ${NEW_XUL_PACKAGE_NAME}.js)
+       (cd local_staff_client/chrome/content; mv evergreen ${NEW_XUL_PACKAGE_NAME})
+       (cd local_staff_client/chrome/locale/en-US/; mv evergreen ${NEW_XUL_PACKAGE_NAME})
+       (cd local_staff_client/chrome/skin; mv evergreen ${NEW_XUL_PACKAGE_NAME})
+       make -C local_staff_client build
+       find local_staff_client/ -type f -exec sed -i s/gapines.org/${NEW_OPAC_URL}/g {} \;
+       make -C local_staff_client package
+
+perl-install:
+       @echo $@
+       mkdir -p $(PERLDIR)
+       cp -r src/perlmods/* $(PERLDIR)
+
+circ-install:
+       @echo $@
+       mkdir -p $(CIRCRULESDIR)
+       cp src/javascript/backend/circ/*.js $(CIRCRULESDIR)
+
+iplist-install:
+       @echo $@
+       mkdir -p $(ETCDIR)
+       cp conf/lib_ips.txt $(ETCDIR)
+
+web-install:
+       @echo $@
+       cp web/opac/images/* $(WEBDIR)/opac/images/
+
diff --git a/Makefile b/Makefile
deleted file mode 100644 (file)
index a193e39..0000000
--- a/Makefile
+++ /dev/null
@@ -1,45 +0,0 @@
-# vim:noet:ts=4
-# --------------------------------------------------------------------
-# Copyright (C) 2005  Georgia Public Library Service 
-# Bill Erickson <highfalutin@gmail.com>
-#
-# 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.
-# --------------------------------------------------------------------
-
-SHELL=/bin/bash
-
-all: build
-
-verbose:       oldconfig
-       @./install.sh build verbose
-
-config:        
-       @./config.sh
-
-default_config:        
-       @./config.sh default
-
-oldconfig:     install.conf
-
-install.conf:  
-       @./config.sh
-
-build: oldconfig
-       @./install.sh build
-
-install:
-       @./install.sh install
-
-clean:
-       @./install.sh clean
-       
-test:
-       @./install.sh test
diff --git a/Makefile.am b/Makefile.am
new file mode 100644 (file)
index 0000000..c65e702
--- /dev/null
@@ -0,0 +1,50 @@
+#----------------------------------------------------------
+# Makefile.am for openils
+# Author: Kevin Beswick (kevinbeswick00@gmail.com)
+## Process this file with automake to generate Makefile.in
+#----------------------------------------------------------
+
+# Set some variables
+
+export PREFIX=@prefix@
+export BINDIR=@bindir@
+export LIBDIR=@libdir@
+export perldir=$(LIBDIR)/perl5
+export INCLUDEDIR=@includedir@
+export ETCDIR=@sysconfdir@
+export WEBDIR=@localstatedir@/web
+export CGIDIR=@localstatedir@/cgi-bin
+export TEMPLATEDIR=@localstatedir@/templates
+
+export datadir=@localstatedir@/data
+export circrulesdir=@localstatedir@/circ
+export catalogscriptdir=@localstatedir@/catalog
+export penaltyrulesdir=@localstatedir@/penalty
+export XSLDIR=@localstatedir@/xsl
+export REPORTERDIR=@localstatedir@/reporter
+export ADMINDIR=@localstatedir@/admin
+export SOCK=@localstatedir@/lock
+export PID=@localstatedir@/run
+export LOG=@localstatedir@/log
+
+
+
+# Derived from autoconf:
+export TMP = @TMP@
+export APXS2 = @APXS2@
+export APACHE2_HEADERS = @APACHE2_HEADERS@
+export APR_HEADERS = @APR_HEADERS@
+export LIBXML2_HEADERS = @LIBXML2_HEADERS@
+export DBI_LIBS = @DBI_LIBS@
+export OPENSRF_HEADERS = @OPENSRF_HEADERS@
+export OPENSRF_LIBS = @OPENSRF_LIBS@
+#export DBDRVR = @DBDRVR@
+#export DBHOST = @DBHOST@
+#export DBPORT = @DBPORT@
+#export DBNAME = @DBNAME@
+#export DBUSER = @DBUSER@
+#export DBPW = @DBPW@
+#export DBVER = @DBVER@
+
+SUBDIRS = Open-ILS/src
+
diff --git a/NEWS b/NEWS
new file mode 100644 (file)
index 0000000..2aafebb
--- /dev/null
+++ b/NEWS
@@ -0,0 +1 @@
+#NEWS
index ad556c6..9dc74ee 100644 (file)
@@ -10,7 +10,7 @@ ADMINS = (
 MANAGERS = ADMINS
 
 DATABASE_ENGINE = 'sqlite3'           # 'postgresql', 'mysql', 'sqlite3' or 'ado_mssql'.
-DATABASE_NAME = '/openils/var/data/django.db'             # Or path to database file if using sqlite3.
+DATABASE_NAME = 'LOCALSTATEDIR/data/django.db'             # Or path to database file if using sqlite3.
 DATABASE_SCHEMAS = ''
 DATABASE_USER = ''             # Not used with sqlite3.
 DATABASE_PASSWORD = ''         # Not used with sqlite3.
@@ -85,7 +85,7 @@ TEMPLATE_DIRS = (
     # Put strings here, like "/home/html/django_templates" or "C:/www/django/templates".
     # Always use forward slashes, even on Windows.
     # Don't forget to use absolute paths, not relative paths.
-        '/openils/var/admin/ils_admin/templates/default'
+        'LOCALSTATEDIR/admin/ils_admin/templates/default'
 )
 
 INSTALLED_APPS = (
index 295666d..115ea9a 100644 (file)
@@ -54,7 +54,7 @@
        
                        <!-- implementation specific config options go here -->
                        <implementation_config>
-                               <bootstrap>/openils/conf/opensrf_core.xml</bootstrap>
+                               <bootstrap>SYSCONFDIR/opensrf_core.xml</bootstrap>
                                <currency>USD</currency>
 
                                <!-- These defines what this SIP code has the ability to support -->
@@ -90,8 +90,8 @@
                                        <option name='msg64_summary_datatype' value='barcode' />
                                </option>
                                <scripts>
-                                       <path>/openils/var/</path>
-                    <path>/openils/var/catalog/</path>
+                                       <path>LOCALSTATEDIR/</path>
+                    <path>LOCALSTATEDIR/catalog/</path>
                                        <item_config>circ/circ_item_config.js</item_config>
                                </scripts>
 
index 9be8ab7..5b0794c 100644 (file)
@@ -10,12 +10,12 @@ vim:et:ts=4:sw=4:
     <default>
 
         <dirs>
-            <log>/openils/var/log</log> <!-- unix::server log files -->
-            <sock>/openils/var/sock</sock> <!-- unix::server sock files -->
-            <pid>/openils/var/pid</pid>
-            <xsl>/openils/var/xsl</xsl>
-            <script>/openils/var</script>
-            <script_lib>/openils/var</script_lib>
+            <log>LOCALSTATEDIR/log</log> <!-- unix::server log files -->
+            <sock>LOCALSTATEDIR/lock</sock> <!-- unix::server sock files -->
+            <pid>LOCALSTATEDIR/run</pid>
+            <xsl>LOCALSTATEDIR/xsl</xsl>
+            <script>LOCALSTATEDIR</script>
+            <script_lib>LOCALSTATEDIR</script_lib>
         </dirs>
 
         <!-- global data visibility settings -->
@@ -26,15 +26,15 @@ vim:et:ts=4:sw=4:
             </user>
         </share>
 
-        <IDL>/openils/conf/fm_IDL.xml</IDL> <!-- top level IDL file -->
+        <IDL>SYSCONFDIR/fm_IDL.xml</IDL> <!-- top level IDL file -->
 
         <server_type>prefork</server_type> <!-- net::server type -->
 
-        <ils_events>/openils/var/data/ils_events.xml</ils_events> <!-- ILS events description file -->
+        <ils_events>LOCALSTATEDIR/data/ils_events.xml</ils_events> <!-- ILS events description file -->
 
         <email_notify> <!-- this will eventually move into the notifications section below... -->
             <!-- global email notification settings -->
-            <template>/openils/var/data/hold_notification_template.example</template>
+            <template>LOCALSTATEDIR/data/hold_notification_template.example</template>
             <smtp_server>localhost</smtp_server>
 
             <!--
@@ -58,8 +58,8 @@ vim:et:ts=4:sw=4:
 
             <!-- The system can generate an XML file of overdue notices.  This is the
                 directory where they are stored.  Files are named overdue.YYYY-MM-DD.xml -->
-            <notice_dir>/openils/var/data/overdue</notice_dir>
-            <combined_template>/openils/var/data/templates/overdue_combined_xml.example</combined_template>
+            <notice_dir>LOCALSTATEDIR/data/overdue</notice_dir>
+            <combined_template>LOCALSTATEDIR/data/templates/overdue_combined_xml.example</combined_template>
 
             <notice>
                 <!-- Notify at 7 days overdue -->
@@ -70,7 +70,7 @@ vim:et:ts=4:sw=4:
                 <!-- do we attempt email notification? -->
                 <email_notify>true</email_notify>
                 <!-- notice template file -->
-                <email_template>/openils/var/data/templates/overdue_7day.example</email_template>
+                <email_template>LOCALSTATEDIR/data/templates/overdue_7day.example</email_template>
             </notice>
         </overdue>
 
@@ -86,7 +86,7 @@ vim:et:ts=4:sw=4:
                 <notify_interval>1 day</notify_interval>
                 <file_append>false</file_append>
                 <email_notify>true</email_notify>
-                <email_template>/openils/var/data/templates/predue_1day.example</email_template>
+                <email_template>LOCALSTATEDIR/data/templates/predue_1day.example</email_template>
             </notice>
         </predue>
       </notifications>
@@ -107,9 +107,9 @@ vim:et:ts=4:sw=4:
                 </database>
                 <files>
                     <!-- successful report outputs go here -->
-                    <output_base>/openils/var/web/reporter</output_base>
-                    <success_template>/openils/var/data/report-success</success_template>
-                    <fail_template>/openils/var/data/report-fail</fail_template>
+                    <output_base>LOCALSTATEDIR/web/reporter</output_base>
+                    <success_template>LOCALSTATEDIR/data/report-success</success_template>
+                    <fail_template>LOCALSTATEDIR/data/report-fail</fail_template>
                 </files>
             </setup>
         </reporter>
@@ -351,7 +351,7 @@ vim:et:ts=4:sw=4:
                     <max_superpages>10</max_superpages>
 
                     <!-- zip code database file -->
-                    <!--<zips_file>/openils/var/data/zips.txt</zips_file>-->
+                    <!--<zips_file>LOCALSTATEDIR/data/zips.txt</zips_file>-->
                 </app_settings>
             </open-ils.search>
 
@@ -393,7 +393,7 @@ vim:et:ts=4:sw=4:
                 </unix_config>
                 <app_settings>
                     <marctemplates>
-                        <K_book>/openils/var/templates/marc/k_book.xml</K_book>
+                        <K_book>LOCALSTATEDIR/templates/marc/k_book.xml</K_book>
                     </marctemplates>
                 </app_settings>
             </open-ils.cat>
@@ -471,9 +471,9 @@ vim:et:ts=4:sw=4:
                 </unix_config>
                 <app_settings>
                     <patron_penalty>penalty/patron_penalty.js</patron_penalty>
-                    <script_path>/openils/lib/javascript</script_path>
-                    <script_path>/openils/var</script_path>
-                    <script_path>/openils/var/catalog</script_path>
+                    <script_path>LIBDIR/javascript</script_path>
+                    <script_path>LOCALSTATEDIR</script_path>
+                    <script_path>LOCALSTATEDIR/catalog</script_path>
                 </app_settings>
             </open-ils.penalty>
 
@@ -499,9 +499,9 @@ vim:et:ts=4:sw=4:
                     </notify_hold>
 
                     <!-- circulation policy scripts -->
-                    <script_path>/openils/lib/javascript</script_path>
-                    <script_path>/openils/var</script_path>
-                    <script_path>/openils/var/catalog</script_path>
+                    <script_path>LIBDIR/javascript</script_path>
+                    <script_path>LOCALSTATEDIR</script_path>
+                    <script_path>LOCALSTATEDIR/catalog</script_path>
                     <legacy_script_support>false</legacy_script_support>
                     <scripts> 
                         <circ_permit_patron>circ/circ_permit_patron.js</circ_permit_patron>
@@ -591,9 +591,9 @@ vim:et:ts=4:sw=4:
                     <max_spare_children>5</max_spare_children>
                 </unix_config>
                 <app_settings>
-                    <script_path>/openils/lib/javascript/</script_path>
-                    <script_path>/openils/var/catalog/</script_path>
-                    <script_path>/openils/var/web/opac/common/js/</script_path>
+                    <script_path>LIBDIR/javascript/</script_path>
+                    <script_path>LOCALSTATEDIR/catalog/</script_path>
+                    <script_path>LOCALSTATEDIR/web/opac/common/js/</script_path>
                     <scripts>
                         <biblio_fingerprint>biblio_fingerprint.js</biblio_fingerprint>
                         <biblio_descriptor>biblio_descriptor.js</biblio_descriptor>
@@ -617,8 +617,8 @@ vim:et:ts=4:sw=4:
                     <max_spare_children>5</max_spare_children>
                 </unix_config>
                 <app_settings>
-                    <script_path>/openils/lib/javascript/</script_path>
-                    <script_path>/openils/var/catalog/</script_path>
+                    <script_path>LIBDIR/javascript/</script_path>
+                    <script_path>LOCALSTATEDIR/catalog/</script_path>
                     <scripts>
                         <biblio_fingerprint>biblio_fingerprint.js</biblio_fingerprint>
                     </scripts>
index c3aca94..58d9934 100644 (file)
@@ -21,7 +21,7 @@ vim:et:ts=2:sw=2:
     <port>5222</port>
 
     <!-- log to a local file -->
-    <logfile>/openils/var/log/osrfsys.log</logfile>
+    <logfile>LOCALSTATEDIR/log/osrfsys.log</logfile>
 
     <!-- Log to syslog. You can use this same layout for 
     defining the logging of all services in this file -->
@@ -35,7 +35,7 @@ vim:et:ts=2:sw=2:
     <loglevel>3</loglevel>
 
     <!-- config file for the services -->
-    <settings_config>/openils/conf/opensrf.xml</settings_config>
+    <settings_config>SYSCONFDIR/opensrf.xml</settings_config>
 
   </opensrf>
 
@@ -51,7 +51,7 @@ vim:et:ts=2:sw=2:
     <secret>secret</secret>
     <listen_address>10.0.0.3</listen_address>
     <loglevel>3</loglevel>
-    <logfile>/openils/var/log/osrfsys.log</logfile>
+    <logfile>LOCALSTATEDIR/log/osrfsys.log</logfile>
   </chopchop>
 
   <!-- The section between <gateway>...</gateway> is a standard OpenSRF C stack config file -->
@@ -85,7 +85,7 @@ vim:et:ts=2:sw=2:
     <username>mylogin</username>
     <passwd>mypassword</passwd>
     <port>5222</port>
-    <logfile>/openils/var/log/gateway.log</logfile>
+    <logfile>LOCALSTATEDIR/log/gateway.log</logfile>
     <loglevel>3</loglevel>
 
   </gateway>
@@ -126,7 +126,7 @@ vim:et:ts=2:sw=2:
         <max_reconnect_attempts>5</max_reconnect_attempts>
 
       </transport>
-      <logfile>/openils/var/log/router.log</logfile>
+      <logfile>LOCALSTATEDIR/log/router.log</logfile>
       <loglevel>2</loglevel>
     </router>
 
diff --git a/Open-ILS/src/Makefile b/Open-ILS/src/Makefile
deleted file mode 100644 (file)
index 4c71189..0000000
+++ /dev/null
@@ -1,205 +0,0 @@
-# vim:noet:ts=4
-
-export LDFLAGS                 += -L . -L$(TMP) -L $(OPENSRF_LIBS)
-export CFLAGS                  += -pipe -g -Wall -O2 -fPIC -I../../include -I$(LIBXML2_HEADERS) -I$(APACHE2_HEADERS) -I$(APR_HEADERS) \
-                               -D_LARGEFILE64_SOURCE -I$(LIBXML2_HEADERS)/libxml  -I$(TMP) -I$(OPENSRF_HEADERS)
-
-export INCDIR = "$(INCLUDEDIR)/openils/"
-
-export STAFF_CLIENT_BUILD_ID = `/bin/cat ../xul/staff_client/build/BUILD_ID`
-
-all:  c_apps client-xul mod_xmlent python-build
-
-install:       perl-install python-install web-install server-xul string-templates-install xsl-install c_apps-install circ_rules-install offline-install storage-bootstrap cgi-bootstrap
-
-web-install:   webcore-install autojs-install mod_xmlent-install offline-install reporter-install
-
-circ_rules-install:
-       @echo $@
-       mkdir -p $(CIRCRULESDIR)
-       mkdir -p $(PENALTYRULESDIR)
-       mkdir -p $(CATALOGSCRIPTDIR)
-       cp javascript/backend/circ/*.js $(CIRCRULESDIR)
-       cp javascript/backend/penalty/*.js $(PENALTYRULESDIR)
-       cp javascript/backend/catalog/*.js $(CATALOGSCRIPTDIR)
-       cp support-scripts/fine_generator.pl $(BINDIR) 
-       cp support-scripts/hold_targeter.pl $(BINDIR) 
-       cp support-scripts/reshelving_complete.srfsh $(BINDIR) 
-       cp support-scripts/thaw_expired_frozen_holds.srfsh $(BINDIR) 
-       cp support-scripts/long-overdue-status-update.pl $(BINDIR) 
-
-
-# -----------------------------------------------------------------------------------
-# Web stuff
-# -----------------------------------------------------------------------------------
-mod_xmlent:
-       @echo $@
-       make -C apachemods mod_xmlent.so
-
-mod_xmlent-install:
-       @echo $@
-       make -C apachemods mod_xmlent-install
-
-client-xul:
-       @echo $@
-       @echo "Building staff client"
-       make -C ../xul/staff_client 
-
-server-xul:
-       @echo $@
-       mkdir -p ${WEBDIR}
-       @echo "Creating ${WEBDIR}/xul/"
-       mkdir -p ${WEBDIR}/xul/
-       @echo "BUILD_ID = ${STAFF_CLIENT_BUILD_ID}"
-       @echo "Copying xul into ${WEBDIR}/xul/${STAFF_CLIENT_BUILD_ID}"
-       mkdir -p "${WEBDIR}/xul/${STAFF_CLIENT_BUILD_ID}"
-       cp -R ../xul/staff_client/build/server "${WEBDIR}/xul/${STAFF_CLIENT_BUILD_ID}/"
-
-webcore-install:
-       @echo $@
-       echo "Copying web into $(WEBDIR)"
-       mkdir -p $(ADMINDIR)
-       cp -r ../admin/* $(ADMINDIR)
-       mkdir -p $(WEBDIR)
-       mkdir -p $(WEBDIR)/js/dojo/opensrf/
-       mkdir -p $(WEBDIR)/opac/extras/xsl/
-       cp -r ../web/* $(WEBDIR)
-       cp $(OPENSRF_LIBS)/javascript/* $(WEBDIR)/opac/common/js/
-       # dojo-ified opensrf libs
-       cp $(OPENSRF_LIBS)/javascript/md5.js $(WEBDIR)/js/dojo/opensrf/
-       cp $(OPENSRF_LIBS)/javascript/JSON_v1.js $(WEBDIR)/js/dojo/opensrf/
-       cp $(OPENSRF_LIBS)/javascript/opensrf*js $(WEBDIR)/js/dojo/opensrf/
-       cp $(OPENSRF_LIBS)/javascript/DojoSRF.js $(WEBDIR)/js/dojo/
-       ln -sf $(WEBDIR)/opac/skin/default/xml/index.xml $(WEBDIR)/opac/skin/default/xml/mresult.xml
-       ln -sf $(WEBDIR)/opac/skin/default/xml/index.xml $(WEBDIR)/opac/skin/default/xml/rresult.xml
-       ln -sf $(WEBDIR)/opac/skin/default/xml/index.xml $(WEBDIR)/opac/skin/default/xml/rdetail.xml
-       ln -sf $(WEBDIR)/opac/skin/default/xml/index.xml $(WEBDIR)/opac/skin/default/xml/advanced.xml
-       ln -sf $(WEBDIR)/opac/skin/default/xml/index.xml $(WEBDIR)/opac/skin/default/xml/myopac.xml
-       ln -sf $(WEBDIR)/opac/skin/default/xml/index.xml $(WEBDIR)/opac/skin/default/xml/cnbrowse.xml
-       cp ../xul/staff_client/chrome//content//util/date.js $(WEBDIR)/opac/common/js/
-       cp ../xsl/*.xsl $(WEBDIR)/opac/extras/xsl/
-       ln -sf $(ETCDIR)/fm_IDL.xml $(WEBDIR)/reports/
-       cp ../xul/staff_client/server/admin/adminlib.js $(WEBDIR)/reports/
-       mkdir -p $(WEBDIR)/opac/extras/slimpac/
-       mkdir -p $(WEBDIR)/standalone/
-       
-
-c_apps:
-       @echo $@
-       make -C c-apps
-       make -C extras oils_requestor
-
-c_apps-install:
-       @echo $@
-       make -C c-apps install
-       make -C extras oils_requestor-install
-
-autojs-install:
-       @echo $@
-       cp extras/fieldmapper.pl $(BINDIR)
-       cp extras/org_tree_js.pl $(BINDIR)
-       cp extras/org_lasso_js.pl $(BINDIR)
-       cp extras/org_tree_html_options.pl $(BINDIR)
-       cp extras/org_tree_proximity.pl $(BINDIR)
-       cp extras/autogen.sh $(BINDIR)
-       cp extras/openurl_map.pl $(BINDIR)
-       cp support-scripts/offline-blocked-list.pl $(BINDIR) # this should probably be somewhere else
-# -----------------------------------------------------------------------------------
-
-perl-install:
-       @echo $@
-       @echo "Installing Perl modules to $(PERLDIR)"
-       mkdir -p $(PERLDIR)
-       mkdir -p $(DATADIR)
-       mkdir -p $(BINDIR)
-       mkdir -p $(DATADIR)/overdue/
-       cp extras/ils_events.xml $(DATADIR)
-       cp -r perlmods/* $(PERLDIR)
-       cp ../examples/opensrf.xml.example $(ETCDIR)
-       cp ../examples/opensrf_core.xml.example $(ETCDIR)
-       cp ../examples/fm_IDL.xml $(ETCDIR)
-       cp ../examples/oils_sip.xml.example $(ETCDIR)
-       cp ../examples/hold_notification_template.example $(DATADIR)
-       cp ../examples/oils_ctl.sh $(BINDIR)
-       cp ../examples/lib_ips.txt.example $(ETCDIR)
-       mkdir -p $(TEMPLATEDIR)
-       cp -r templates/marc $(TEMPLATEDIR)
-
-# ------------------------------------------------------------------------------
-
-python-build:
-       if [ -n "$(EG_PYTHON_INSTALL)" ]; then echo $@; make -C python build; fi;
-
-# -----------------------------------------------------------------------------------
-
-python-install:
-       if [ -n "$(EG_PYTHON_INSTALL)" ]; then echo $@; make -C python install; fi;
-
-# -----------------------------------------------------------------------------------
-
-reporter-install:
-       @echo $@
-       @echo "Installing Reporter email templates to $(REPORTERDIR) and example configs to $(ETCDIR)"
-       cp reporter/clark-kent.pl $(BINDIR)
-       cp reporter/find_orphaned_reports.pl $(BINDIR)
-       cp reporter/report-fail $(DATADIR)
-       cp reporter/report-success $(DATADIR)
-       mkdir -p $(REPORTERDIR)
-
-# -----------------------------------------------------------------------------------
-offline-install:
-       @echo "Installing offline CGIs to $(CGIDIR)/offline";
-       mkdir -p $(CGIDIR)/offline;
-       mkdir -p $(DATADIR)/offline;
-       perl -pe "s{##CONFIG##}{$(ETCDIR)}" < offline/offline.pl > $(TMP)/offline.pl;
-       cp offline/offline-config.pl $(ETCDIR)
-       cp $(TMP)/offline.pl $(CGIDIR)/offline/
-       chmod +x $(CGIDIR)/offline/offline.pl
-
-# -----------------------------------------------------------------------------------
-
-cgi-bootstrap:
-       @echo "Installing cgi's to $(CGIDIR)"
-       mkdir -p $(TMP)/cgi-bin
-       mkdir -p $(CGIDIR)
-       for i in cgi-bin/*cgi; do perl -pe "s{##CONFIG##}{$(ETCDIR)}" < $$i > $(TMP)/$$i; done
-       cp $(TMP)/cgi-bin/*cgi $(CGIDIR)
-       cp -r cgi-bin/support $(CGIDIR)
-       cp cgi-bin/setup.pl $(ETCDIR)/live-db-setup.pl
-       chmod 755 $(CGIDIR)/*cgi
-
-storage-bootstrap:
-       @echo $@
-       @echo ""
-       @echo "WARNING!"
-       @echo ""
-       @echo "storage-bootstrap will DESTROY all data within all of the ILS tables in your database."
-       @echo "The database this script will touch has a DBI DSN of"
-       @echo "    dbi:$(DBDRVR):host=$(DBHOST);dbname=$(DBNAME);port=$(DBPORT)"
-       @echo "Type control-c to avoid destroying all of the data.  Type enter to continue..."
-       @echo ""
-       @read X;
-       ./extras/import/build-oils-db.sh $(DBDRVR) $(DBHOST) $(DBPORT) $(DBNAME) $(DBUSER) $(DBPW)
-
-# -----------------------------------------------------------------------------------
-
-
-string-templates-install:
-       @echo "Installing string templates to $(TEMPLATEDIR)"
-       mkdir -p $(TEMPLATEDIR)
-       cp -r templates/strings $(TEMPLATEDIR)
-
-xsl-install:   
-       @echo "Installing XSL files to $(XSLDIR)"
-       mkdir -p $(XSLDIR)
-       cp ../xsl/*.xsl $(XSLDIR)
-#      mkdir -p $(WEBDIR)/xsl/
-#      cp ../xsl/*.xsl $(WEBDIR)/xsl/
-
-clean:
-       @echo $@
-       make -C extras clean
-       make -C apachemods clean
-       make -C c-apps clean
-       if [ -n "$(EG_PYTHON_INSTALL)" ]; then echo $@; make -C python clean --all; fi;
-
diff --git a/Open-ILS/src/Makefile.am b/Open-ILS/src/Makefile.am
new file mode 100644 (file)
index 0000000..ad3abff
--- /dev/null
@@ -0,0 +1,283 @@
+# Copyright (C) 2008 Equinox Software, Inc.
+# Kevin Beswick <kevinbeswick00@gmail.com>
+#
+# 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.
+#
+## Process this file with automake to generate Makefile.in
+
+
+export INCDIR = "$(INCLUDEDIR)/openils/"
+export STAFF_CLIENT_BUILD_ID = `/bin/cat @top_srcdir@/Open-ILS/xul/staff_client/build/BUILD_ID`
+export DEF_LDFLAGS = -L. -L$(TMP) -L$(OPENSRF_LIBS)
+export DEF_CFLAGS = -D_LARGEFILE64_SOURCE -pipe -g -Wall -O2 -fPIC -I@top_srcdir@/include -I$(LIBXML2_HEADERS) -I$(APACHE2_HEADERS) -I$(APR_HEADERS)  -I$(LIBXML2_HEADERS)/libxml  -I$(TMP) -I$(OPENSRF_HEADERS)
+export DEF_LDLIBS = -lopensrf 
+
+
+# Establish some installation directories and such
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+datadir=@localstatedir@/data
+circrulesdir=@localstatedir@/circ
+catalogscriptdir=@localstatedir@/catalog
+penaltyrulesdir=@localstatedir@/penalty
+examples = @top_srcdir@/Open-ILS/examples
+jsbackend = @srcdir@/javascript/backend
+supportscr = @srcdir@/support-scripts
+webdir = $(WEBDIR)
+admindir = $(ADMINDIR)
+opacjsdir = $(DESTDIR)$(WEBDIR)/opac/common/js
+jsdojodir = $(DESTDIR)$(WEBDIR)/js/dojo
+jsdojoosrfdir = $(DESTDIR)$(WEBDIR)/js/dojo/opensrf
+opacextrasdir = $(DESTDIR)$(WEBDIR)/opac/extras/xsl/
+reportsdir = $(DESTDIR)$(WEBDIR)/reports/
+
+# Collect files to be used by multiple targets
+
+autojsbinscripts = @srcdir@/extras/fieldmapper.pl \
+        @srcdir@/extras/org_tree_js.pl \
+        @srcdir@/extras/org_lasso_js.pl \
+        @srcdir@/extras/org_tree_html_options.pl \
+        @srcdir@/extras/org_tree_proximity.pl \
+        @srcdir@/extras/autogen.sh \
+        @srcdir@/support-scripts/offline-blocked-list.pl 
+
+# Decide which entities to build
+
+#----------------------------
+# Build ILS CORE
+#----------------------------
+
+if BUILDILSCORE
+
+#Add directories to build
+OILSCORE_DIRS = c-apps extras 
+#Add manual (non-automake) install targets for simplicity of installing.
+OILSCORE_INST = ilscore-install
+
+core_data = @srcdir@/extras/ils_events.xml \
+           $(examples)/hold_notification_template.example
+
+sysconf_DATA = $(examples)/opensrf.xml.example \
+              $(examples)/opensrf_core.xml.example \
+              $(examples)/fm_IDL.xml \
+              $(examples)/oils_sip.xml.example \
+              $(examples)/lib_ips.txt.example
+
+core_scripts =   $(examples)/oils_ctl.sh \
+                $(supportscr)/fine_generator.pl \
+                $(supportscr)/hold_targeter.pl \
+                $(supportscr)/reshelving_complete.srfsh \
+                $(supportscr)/thaw_expired_frozen_holds.srfsh \
+                $(supportscr)/long-overdue-status-update.pl \
+                $(srcdir)/extras/openurl_map.pl 
+        
+installautojs = $(autojsbinscripts)
+
+#circ-rules-install
+circrules_SCRIPTS = $(jsbackend)/circ/circ_duration.js \
+                   $(jsbackend)/circ/circ_groups.js \
+                   $(jsbackend)/circ/circ_item_config.js \
+                   $(jsbackend)/circ/circ_lib.js \
+                   $(jsbackend)/circ/circ_permit_copy.js \
+                   $(jsbackend)/circ/circ_permit_hold.js \
+                   $(jsbackend)/circ/circ_permit_patron.js \
+                   $(jsbackend)/circ/circ_permit_renew.js 
+penaltyrules_SCRIPTS = $(jsbackend)/penalty/patron_penalty.js
+catalogscript_SCRIPTS = $(jsbackend)/catalog/biblio_descriptor.js \
+                       $(jsbackend)/catalog/biblio_fingerprint.js \
+                       $(jsbackend)/catalog/fixed_fields.js \
+                       $(jsbackend)/catalog/phys_char.js \
+                       $(jsbackend)/catalog/record_type.js
+
+endif
+
+#--------------------
+# Build ILS WEB
+#--------------------
+
+if BUILDILSWEB
+OILSWEB_DIRS = apachemods
+OILSWEB_INST = webcore-install offline-install cgi-bootstrap
+
+#webcore-install
+
+reports_SCRIPTS = @top_srcdir@/Open-ILS/xul/staff_client/server/admin/adminlib.js
+opacjs_SCRIPTS = $(OPENSRF_LIBS)/javascript/DojoSRF.js \
+                $(OPENSRF_LIBS)/javascript/JSON_v0.js \
+                $(OPENSRF_LIBS)/javascript/JSON_v1.js \
+                $(OPENSRF_LIBS)/javascript/md5.js \
+                $(OPENSRF_LIBS)/javascript/opensrf.js \
+                $(OPENSRF_LIBS)/javascript/opensrf_xhr.js \
+                $(OPENSRF_LIBS)/javascript/opensrf_xmpp.js \
+                @top_srcdir@/Open-ILS/xul/staff_client/chrome//content//util/date.js
+jsdojo_SCRIPTS = $(OPENSRF_LIBS)/javascript/DojoSRF.js
+jsdojoosrf_SCRIPTS = $(OPENSRF_LIBS)/javascript/md5.js \
+                    $(OPENSRF_LIBS)/javascript/JSON_v1.js \
+                    $(OPENSRF_LIBS)/javascript/opensrf.js \
+                    $(OPENSRF_LIBS)/javascript/opensrf_xhr.js \
+                    $(OPENSRF_LIBS)/javascript/opensrf_xmpp.js
+
+installautojs = $(autojsbinscripts)
+
+
+endif
+
+
+#---------------------
+# Build ILS Reporter
+#---------------------
+
+if BUILDILSREPORTER
+OILSREP_INST = reporter-install
+#reporter-install
+reporter_scripts = @srcdir@/reporter/clark-kent.pl \
+                  @srcdir@/reporter/find_orphaned_reports.pl
+reporter_data = @srcdir@/reporter/report-fail \
+              @srcdir@/reporter/report-success
+endif
+
+#------------------------------
+# Build ILS XUL CLIENT/SERVER
+#------------------------------
+
+if BUILDILSCLIENT
+OILSCLIENT_DIRS = ../xul/staff_client
+OILSSERVER_INST = server-xul
+endif
+
+#------------------------------
+# Build EVERGREEN PYTHON
+#------------------------------
+
+if BUILDEGPYTHON
+OILSPYTHON_DIR = python
+endif
+
+#------------------------------
+# Build EVERGREEN JAVA
+#------------------------------
+
+if BUILDEGJAVA
+OILSJAVA_DIR = java
+endif
+
+bin_SCRIPTS = $(core_scripts) $(reporter_scripts) $(installautojs) @srcdir@/extras/eg_config
+data_DATA = $(core_data) $(reporter_data)
+
+# Take care of which subdirectories to build, and which extra files to include in a distibution.
+
+SUBDIRS = $(OILSCORE_DIRS) $(OILSWEB_DIRS) $(OILSCLIENT_DIRS) $(OILSPYTHON_DIR) $(OILSJAVA_DIR)
+
+EXTRA_DIST = @srcdir@/perlmods @srcdir@/templates @top_srcdir@/Open-ILS/xsl @srcdir@/cgi-bin
+
+# Install header files
+
+oilsincludedir = $(DESTDIR)@includedir@/openils
+headsdir = @top_srcdir@/Open-ILS/include/openils
+oilsinclude_HEADERS = $(headsdir)/idl_fieldmapper.h $(headsdir)/oils_constants.h $(headsdir)/oils_event.h $(headsdir)/oils_idl.h $(headsdir)/oils_utils.h
+
+# Install everything that did not get installed by autotools
+
+install-data-hook: $(OILSCORE_INST) $(OILSWEB_INST) $(OILSREP_INST) $(OILSSERVER_INST)
+
+uninstall-hook:
+       rm -R $(perldir)
+       rm -R $(TEMPLATEDIR)
+       rm -R $(XSLDIR)
+       rm -R $(CGIDIR)
+       rm -R $(admindir) 
+       rm -R $(webdir)
+       rm -R $(opacextrasdir)
+
+
+#perl-install and string-templates-install     
+ilscore-install:
+       @echo $@
+       @echo "Installing Perl modules"
+       mkdir -p $(perldir)
+       mkdir -p $(TEMPLATEDIR)
+       cp -r @srcdir@/perlmods/* $(perldir)
+       cp -r @srcdir@/templates/marc $(TEMPLATEDIR)
+       sed -i 's|SYSCONFDIR|@sysconfdir@|g' '$(DESTDIR)@libdir@/perl5/OpenILS/WWW/Web.pm'
+       sed -i 's|SYSCONFDIR|@sysconfdir@|g' '$(DESTDIR)@libdir@/perl5/OpenILS/WWW/Method.pm'
+       @echo "Installing string templates to $(TEMPLATEDIR)"
+       mkdir -p $(TEMPLATEDIR)
+       mkdir -p $(datadir)/overdue/
+       cp -r @srcdir@/templates/strings $(TEMPLATEDIR)
+       sed -i 's|LOCALSTATEDIR|@localstatedir@|g' '$(DESTDIR)@sysconfdir@/oils_sip.xml.example'
+       sed -i 's|SYSCONFDIR|@sysconfdir@|g' '$(DESTDIR)@sysconfdir@/oils_sip.xml.example'
+       sed -i 's|LOCALSTATEDIR|@localstatedir@|g' '$(DESTDIR)@sysconfdir@/opensrf_core.xml.example'
+       sed -i 's|SYSCONFDIR|@sysconfdir@|g' '$(DESTDIR)@sysconfdir@/opensrf_core.xml.example'
+       sed -i 's|LOCALSTATEDIR|@localstatedir@|g' '$(DESTDIR)@sysconfdir@/opensrf.xml.example'
+       sed -i 's|SYSCONFDIR|@sysconfdir@|g' '$(DESTDIR)@sysconfdir@/opensrf.xml.example'
+       sed -i 's|LIBDIR|@libdir@|g' '$(DESTDIR)@sysconfdir@/opensrf.xml.example'
+       sed -i 's|SYSCONFDIR|@sysconfdir@|g' '$(DESTDIR)@bindir@/autogen.sh'
+       sed -i 's|LOCALSTATEDIR|@localstatedir@|g' '$(DESTDIR)@bindir@/autogen.sh'
+       sed -i 's|BINDIR|@bindir@|g' '$(DESTDIR)@bindir@/reshelving_complete.srfsh'
+       sed -i 's|BINDIR|@bindir@|g' '$(DESTDIR)@bindir@/long-overdue-status-update.pl'
+       sed -i 's|SYSCONFDIR|@sysconfdir@|g' '$(DESTDIR)@bindir@/long-overdue-status-update.pl'
+       sed -i 's|BINDIR|@bindir@|g' '$(DESTDIR)@bindir@/thaw_expired_frozen_holds.srfsh'
+       sed -i 's|BINDIR|@bindir@|g' '$(DESTDIR)@bindir@/offline-blocked-list.pl'
+
+webcore-install:
+       mkdir -p $(WEBDIR)
+       mkdir -p $(WEBDIR)/opac/extras/slimpac/
+       mkdir -p $(WEBDIR)/standalone/
+       mkdir -p $(opacextrasdir)
+       mkdir -p $(XSLDIR)
+       cp -r @top_srcdir@/Open-ILS/admin/ @localstatedir@
+       cp -r @top_srcdir@/Open-ILS/web/ @localstatedir@
+       cp @top_srcdir@/Open-ILS/xsl/*.xsl $(opacextrasdir)
+       cp @top_srcdir@/Open-ILS/xsl/*.xsl $(XSLDIR)
+       ln -sf $(DESTDIR)$(WEBDIR)/opac/skin/default/xml/index.xml $(DESTDIR)$(WEBDIR)/opac/skin/default/xml/mresult.xml
+       ln -sf $(DESTDIR)$(WEBDIR)/opac/skin/default/xml/index.xml $(DESTDIR)$(WEBDIR)/opac/skin/default/xml/rresult.xml
+       ln -sf $(DESTDIR)$(WEBDIR)/opac/skin/default/xml/index.xml $(DESTDIR)$(WEBDIR)/opac/skin/default/xml/rdetail.xml
+       ln -sf $(DESTDIR)$(WEBDIR)/opac/skin/default/xml/index.xml $(DESTDIR)$(WEBDIR)/opac/skin/default/xml/advanced.xml
+       ln -sf $(DESTDIR)$(WEBDIR)/opac/skin/default/xml/index.xml $(DESTDIR)$(WEBDIR)/opac/skin/default/xml/myopac.xml
+       ln -sf $(DESTDIR)$(WEBDIR)/opac/skin/default/xml/index.xml $(DESTDIR)$(WEBDIR)/opac/skin/default/xml/cnbrowse.xml
+       ln -sf $(DESTDIR)@sysconfdir@/fm_IDL.xml $(DESTDIR)$(WEBDIR)/reports/
+       sed -i 's|LOCALSTATEDIR|@localstatedir@|g' '$(DESTDIR)@localstatedir@/admin/ils_admin/settings.py.example'
+
+
+offline-install:
+       @echo "Installing offline CGIs to $(CGIDIR)/offline";
+       mkdir -p $(TMP)
+       mkdir -p $(CGIDIR)/offline;
+       mkdir -p $(datadir)/offline;
+       perl -pe "s{##CONFIG##}{@sysconfdir@}" < @srcdir@/offline/offline.pl > $(TMP)/offline.pl;
+       cp @srcdir@/offline/offline-config.pl @sysconfdir@
+       cp $(TMP)/offline.pl $(DESTDIR)$(CGIDIR)/offline/
+       chmod +x $(DESTDIR)$(CGIDIR)/offline/offline.pl
+
+cgi-bootstrap:
+       @echo "Installing cgi's to $(CGIDIR)"
+       mkdir -p $(TMP)/cgi-bin
+       mkdir -p $(CGIDIR)
+       for i in @srcdir@/cgi-bin/*cgi; do perl -pe "s{##CONFIG##}{@sysconfdir@}" < $$i > $(TMP)/$$i; done
+       cp $(TMP)/cgi-bin/*cgi $(CGIDIR)
+       cp -r @srcdir@/cgi-bin/support $(CGIDIR)
+       cp @srcdir@/cgi-bin/setup.pl @sysconfdir@/live-db-setup.pl
+       chmod 755 $(DESTDIR)$(CGIDIR)/*cgi
+
+server-xul:
+       @echo $@
+       mkdir -p $(WEBDIR)
+       mkdir -p $(WEBDIR)/xul/
+       @echo "BUILD_ID = $(STAFF_CLIENT_BUILD_ID)"
+       @echo "Copying xul into $(WEBDIR)/xul/$(STAFF_CLIENT_BUILD_ID)"
+       mkdir -p "$(WEBDIR)/xul/$(STAFF_CLIENT_BUILD_ID)"
+       cp -R @top_srcdir@/Open-ILS/xul/staff_client/build/server "${WEBDIR}/xul/${STAFF_CLIENT_BUILD_ID}/"
+
+reporter-install:
+       sed -i 's|SYSCONFDIR|@sysconfdir@|g' '$(DESTDIR)@bindir@/clark-kent.pl'
+       sed -i 's|SYSCONFDIR|@sysconfdir@|g' '$(DESTDIR)@bindir@/find_orphaned_reports.pl'
+
+
diff --git a/Open-ILS/src/apachemods/Makefile b/Open-ILS/src/apachemods/Makefile
deleted file mode 100644 (file)
index 88a84b7..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-LDLIBS += -lxml2 -lopensrf -lxslt
-
-all:   mod_xmlent.so
-
-install: mod_xmlent-install
-
-mod_xmlent.o:  mod_xmlent.c
-mod_xmlent.so: mod_xmlent.o
-       @echo $@
-       $(CC) $(LDFLAGS) $(LDLIBS) -shared -W1 mod_xmlent.o -lexpat -o $@
-
-mod_xmlent-install:
-       $(APXS2) -i -a -n xmlent mod_xmlent.so
-
-
-clean:
-       echo $@
-       /bin/rm -f *.o *.so 
diff --git a/Open-ILS/src/apachemods/Makefile.am b/Open-ILS/src/apachemods/Makefile.am
new file mode 100644 (file)
index 0000000..e2c3fc0
--- /dev/null
@@ -0,0 +1,17 @@
+#-------------------------------------------------------------
+# Makefile.am for Open-ILS/src/apachemods
+# Author: Kevin Beswick (kevinbeswick00@gmail.com)
+## Process this file with automake to generate Makefile.in
+#-------------------------------------------------------------
+
+AM_CFLAGS = -D_LARGEFILE64_SOURCE -Wall -I@abs_top_srcdir@/Open-ILS/include/ -I$(LIBXML2_HEADERS) -I$(APACHE2_HEADERS) -I$(APR_HEADERS) -I$(OPENSRF_HEADERS)
+AM_LDFLAGS = -L$(LIBDIR) -L$(OPENSRF_LIBS)
+
+       
+
+install-exec-local:
+       $(APXS2) -c $(AM_LDFLAGS) -lxml2 -lopensrf -lxslt -lexpat $(AM_CFLAGS) @srcdir@/mod_xmlent.c
+       $(APXS2) -i -a @srcdir@/mod_xmlent.la
+
+clean-local:
+       rm @srcdir@/mod_xmlent.la @srcdir@/mod_xmlent.lo @srcdir@/mod_xmlent.slo
diff --git a/Open-ILS/src/c-apps/Makefile.am b/Open-ILS/src/c-apps/Makefile.am
new file mode 100644 (file)
index 0000000..2db42f5
--- /dev/null
@@ -0,0 +1,34 @@
+#-----------------------------------------------------------
+# Makefile.am for Open-ILS/src/c-apps
+# Author: Kevin Beswick (kevinbeswick00@gmail.com)
+# Process this file with automake to generate Makefile.in
+#-----------------------------------------------------------
+
+AM_CFLAGS = $(DEF_CFLAGS) -DOSRF_LOG_PARAMS -I@top_srcdir@/include/
+AM_LDFLAGS = $(DEF_LDFLAGS) -L$(DBI_LIBS) -lopensrf 
+
+bin_PROGRAMS = oils_dataloader
+oils_dataloader_SOURCES = oils_dataloader.c
+oils_dataloader_LDFLAGS = $(AM_LDFLAGS) -loils_idl
+oils_dataloader_DEPENDENCIES = liboils_idl.la liboils_utils.la
+
+lib_LTLIBRARIES = liboils_idl.la liboils_utils.la oils_cstore.la oils_rstore.la oils_auth.la
+
+liboils_idl_la_SOURCES = oils_idl-core.c
+
+liboils_utils_la_SOURCES = oils_utils.c oils_event.c
+
+oils_cstore_la_SOURCES = oils_cstore.c
+oils_cstore_la_LDFLAGS = $(AM_LDFLAGS) -loils_idl -ldbi -loils_utils -ldbdpgsql -module
+oils_cstore_la_DEPENDENCIES = liboils_utils.la liboils_idl.la
+
+oils_rstore_la_SOURCES = oils_cstore.c
+oils_rstore_la_CFLAGS = $(AM_CFLAGS) -DRSTORE -c
+oils_rstore_la_LDFLAGS = $(AM_LDFLAGS) -loils_idl -ldbi -ldbdpgsql -module
+oils_rstore_la_DEPENDENCIES = liboils_utils.la liboils_idl.la
+
+oils_auth_la_SOURCES = oils_auth.c
+oils_auth_la_LDFLAGS = -module -loils_idl -loils_utils
+oils_auth_la_DEPENDENCIES = liboils_utils.la
+
+
diff --git a/Open-ILS/src/extras/Makefile b/Open-ILS/src/extras/Makefile
deleted file mode 100644 (file)
index 76cb9b6..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-LDLIBS += -lreadline -loils_utils -lopensrf -lxml2 -loils_idl -L../c-apps
-CFLAGS += -I../../include
-all:   oils_requestor
-
-oils_requestor:        oils_requestor.o
-oils_requestor-install:
-       cp oils_requestor $(BINDIR)
-
-oils_requestor.o:      oils_requestor.c
-
-clean:
-       /bin/rm -f *.o oils_requestor
diff --git a/Open-ILS/src/extras/Makefile.am b/Open-ILS/src/extras/Makefile.am
new file mode 100644 (file)
index 0000000..6f25e3b
--- /dev/null
@@ -0,0 +1,13 @@
+#--------------------------------------------------------------
+# Makefile.am for Open-ILS/src/extras
+# Author: Kevin Beswick (kevinbeswick00@gmail.com)
+## Process this file with automake to generate Makefile.in
+#-------------------------------------------------------------
+
+LDADD = $(DEF_LDLIBS) -lreadline -loils_utils -lopensrf -lxml2 -loils_idl
+AM_LDFLAGS = -L@top_builddir@/Open-ILS/src/c-apps -L$(OPENSRF_LIBS)
+AM_CFLAGS = $(DEF_CFLAGS) -I@top_srcdir@/include
+
+bin_PROGRAMS = oils_requestor
+oils_requestor_SOURCES = oils_requestor.c
+oils_requestor_LDADD = $(LDADD)
index cb266b4..381e84f 100755 (executable)
@@ -35,11 +35,11 @@ function usage {
        echo "Examples:";
        echo "";
        echo "  Update organization tree:";
-       echo "    $0 -c /openils/conf/opensrf_core.xml";
-       echo "    $0 /openils/conf/opensrf_core.xml";
+       echo "    $0 -c SYSCONFDIR/opensrf_core.xml";
+       echo "    $0 SYSCONFDIR/opensrf_core.xml";
        echo "";
        echo "  Update organization tree and refresh proximity:";
-       echo "    $0 -u -c /openils/conf/opensrf_core.xml";
+       echo "    $0 -u -c SYSCONFDIR/opensrf_core.xml";
        echo "";
        exit;
 }
@@ -69,9 +69,9 @@ done
 
 [ -z "$CONFIG" ] && usage;
 
-JSDIR="/openils/var/web/opac/common/js/";
-FMDOJODIR="/openils/var/web/js/dojo/fieldmapper/";
-SLIMPACDIR="/openils/var/web/opac/extras/slimpac/";
+JSDIR="LOCALSTATEDIR/web/opac/common/js/";
+FMDOJODIR="LOCALSTATEDIR/web/js/dojo/fieldmapper/";
+SLIMPACDIR="LOCALSTATEDIR/web/opac/extras/slimpac/";
 
 echo "Updating fieldmapper";
 perl fieldmapper.pl "$CONFIG"  > "$JSDIR/fmall.js";
diff --git a/Open-ILS/src/extras/eg_config.in b/Open-ILS/src/extras/eg_config.in
new file mode 100644 (file)
index 0000000..568ba03
--- /dev/null
@@ -0,0 +1,140 @@
+# Copyright (C) 2008 Equinox Software, Inc.
+# Kevin Beswick <kevinbeswick00@gmail.com>
+#
+# 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.
+#
+
+# Shows configuration options of Evergreen
+
+prefix=@prefix@
+exec_prefix=@prefix@
+datarootdir=@datarootdir@
+
+function showInstalled {
+       if test "@BUILDILSCORE_TRUE@" = ""; then
+               echo "EG_CORE"
+       fi
+       if test "@BUILDILSWEB_TRUE@" = ""; then
+               echo "EG_WEB"
+       fi
+       if test "@BUILDILSREPORTER_TRUE@" = ""; then
+               echo "EG_REPORTER"
+       fi
+       if test "@BUILDILSCLIENT_TRUE@" = ""; then
+               echo "EG_CLIENT"
+       fi
+       if test "@BUILDEGJAVA_TRUE@" = ""; then
+               echo "EG_JAVA"
+       fi
+       if test "@BUILDEGPYTHON_TRUE@" = ""; then
+               echo "EG_PYTHON"
+       fi
+
+
+}
+
+function showAll {
+        echo @PACKAGE_STRING@  
+        echo PREFIX=@prefix@
+        echo BINDIR=@bindir@
+        echo LIBDIR=@libdir@
+        echo TMP=@TMP@
+        echo INCLUDEDIR=@includedir@
+        echo SYSCONFDIR=@sysconfdir@
+        echo APXS2=@APXS2@
+        echo APACHE2_HEADERS=@APACHE2_HEADERS@
+        echo APR_HEADERS=@APR_HEADERS@
+        echo LIBXML2_HEADERS=@LIBXML2_HEADERS@
+        echo 
+        echo "Installed modules:"
+        showInstalled;
+}
+
+
+function showHelp {
+        echo 
+        echo "------------------------------------------------------------"
+        echo " eg_config                                                  "
+        echo " Shows configuration of evergreen                           "
+        echo "------------------------------------------------------------"
+        echo
+        echo "Usage: eg_config [--option]"
+        echo 
+        echo "Options: "
+        echo
+        echo "--help                  displays help"
+        echo "--version               displays version number of evergreen"
+        echo "--installed             displays options that were installed"
+        echo "--prefix                displays prefix"
+        echo "--bindir                displays bindir"
+        echo "--libdir                displays libdir"
+        echo "--tmp                   displays tmp"
+        echo "--includedir            displays includedir"
+        echo "--sysconfdir            displays sysconfdir"
+        echo "--apxs                  displays location of apxs"
+        echo "--apache                displays location of apache2 headers"
+        echo "--apr                   displays location of apr headers"
+        echo "--libxml                displays location of libxml2 headers" 
+        echo
+}
+
+case "$1" in
+     --installed)
+               showInstalled;
+               ;;
+     --cconfig) cconfig;
+               ;;
+     --libxml)
+               echo @LIBXML2_HEADERS@;
+               ;;
+     --apr)
+               echo @APR_HEADERS@;
+               ;;
+     --apache)
+               echo @APACHE2_HEADERS@;
+               ;;
+     --prefix)
+               echo @prefix@
+               ;;
+     --version) 
+               echo @PACKAGE_STRING@;
+               ;;
+     --bindir)
+               echo @bindir@
+               ;;
+     --libdir)
+               echo @libdir@;
+               ;;
+     --sysconfdir)
+               echo @sysconfdir@;
+               ;;
+     --localstatedir)
+               echo @localstatedir@;
+               ;;
+     --tmpdir)
+               echo @TMP@;
+               ;;
+     --apxs)
+               echo @APXS2@;
+               ;;
+     --includedir)
+               echo @includedir@;
+               ;;
+     --docdir)
+               echo @docdir@;
+               ;;
+     --help)
+               showHelp;
+               ;;
+     *)
+               showAll;
+               ;;
+esac
similarity index 82%
rename from Open-ILS/src/java/Makefile
rename to Open-ILS/src/java/Makefile.am
index f22722f..feac4e2 100644 (file)
@@ -2,16 +2,16 @@ JAVA_LIBDIR = .lib
 JAVAC = javac -J-Xmx256m
 JAVA = java -Xmx256m 
 OSRF_HOME = ../../../../../OpenSRF/trunk/src/java
-OSRF_JAVA = $(OSRF_HOME)/opensrf.jar
+OSRFJAVA = $(OSRF_HOME)/opensrf.jar
 EXT = $(OSRF_HOME)/ext
-JAVA_LIBS = .:$(JAVA_LIBDIR):$(OSRF_JAVA):$(EXT)/json-jdk1.5-2007-05-01.jar:$(EXT)/wstx-lgpl-3.2.1.jar:$(EXT)/stax-api-1.0.1.jar:$(EXT)/java_memcached-release_1.5.1.jar
+JAVA_LIBS = .:$(JAVA_LIBDIR):$(OSRFJAVA):$(EXT)/json-jdk1.5-2007-05-01.jar:$(EXT)/wstx-lgpl-3.2.1.jar:$(EXT)/stax-api-1.0.1.jar:$(EXT)/java_memcached-release_1.5.1.jar
 JAVA_SRC = \
        org/open_ils/*.java\
        org/open_ils/idl/*.java\
        org/open_ils/util/*.java\
        org/open_ils/test/*.java
 
-all:   jar
+all-local:     jar
 
 jar:
        mkdir -p $(JAVA_LIBDIR)
diff --git a/Open-ILS/src/offline/offline-config.pl b/Open-ILS/src/offline/offline-config.pl
deleted file mode 100755 (executable)
index 3c0497b..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-$main::config{base_dir} = '/openils/var/data/offline/';
-$main::config{bootstrap} = '/openils/conf/opensrf_core.xml';
-$main::config{dsn} = 'dbi:Pg:host=W.X.Y.Z;dbname=TABLE;port=5432';
-$main::config{usr} = 'DBUSER';
-$main::config{pw} = 'DBPASS';
-
diff --git a/Open-ILS/src/offline/offline-config.pl.in b/Open-ILS/src/offline/offline-config.pl.in
new file mode 100644 (file)
index 0000000..068b0c3
--- /dev/null
@@ -0,0 +1,5 @@
+$main::config{base_dir} = '@localstatedir@/data/offline/';
+$main::config{bootstrap} = '@sysconfdir@/opensrf_core.xml';
+$main::config{dsn} = 'dbi:@DBDRVR@:host=@DBHOST@;dbname=@DBNAME@;port=@DBPORT@';
+$main::config{usr} = '@DBUSER@';
+$main::config{pw} = '@DBPW@';
index 6ebe67e..530eff7 100644 (file)
@@ -78,7 +78,7 @@ sub handler {
 
 sub child_init_handler {
        OpenSRF::System->bootstrap_client( 
-               config_file => "/openils/conf/opensrf_core.xml" );
+               config_file => "SYSCONFDIR/opensrf_core.xml" );
 }
 
 
index 922877c..f10946d 100644 (file)
@@ -17,7 +17,7 @@ use OpenSRF::System;
 my $main_ttk = "opac/logic/page_router.ttk";
 my $error_ttk = "opac/pages/error.ttk";
 my $init_ttk = "opac/logic/page_init.ttk";
-my $bootstrap = "/openils/conf/opensrf_core.xml";
+my $bootstrap = "SYSCONFDIR/opensrf_core.xml";
 my $child_init_ttk = "opac/logic/child_init.ttk";
 
 my $includes = [];  # [  '/pines/cvs/ILS/Open-ILS/src/templates' ];
diff --git a/Open-ILS/src/python/Makefile b/Open-ILS/src/python/Makefile
deleted file mode 100644 (file)
index 6be673c..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-# makefile for OpenSRF Python modules and scripts
-
-# ------------------------------------------------------------------------------
-# BUILD
-# ------------------------------------------------------------------------------
-build:
-       @echo $@
-       python setup.py build
-
-# ------------------------------------------------------------------------------
-# INSTALL
-# ------------------------------------------------------------------------------
-install:       build
-       @echo $@
-       python setup.py install
-
-# ------------------------------------------------------------------------------
-# CLEAN        
-# ------------------------------------------------------------------------------
-clean:
-       python setup.py clean --all
-
diff --git a/Open-ILS/src/python/Makefile.am b/Open-ILS/src/python/Makefile.am
new file mode 100644 (file)
index 0000000..4034547
--- /dev/null
@@ -0,0 +1,14 @@
+# makefile for OpenSRF Python modules and scripts
+
+all-local:
+       @echo $@
+       python @srcdir@/setup.py build
+
+# ------------------------------------------------------------------------------
+# INSTALL
+# ------------------------------------------------------------------------------
+install-data-local:
+       @echo $@
+       python @srcdir@/setup.py install
+
+
index d7c3410..48e5030 100755 (executable)
@@ -29,7 +29,7 @@ use Email::Send;
 use open ':utf8';
 
 
-my ($count, $config, $sleep_interval, $lockfile, $daemon) = (1, '/openils/conf/opensrf_core.xml', 10, '/tmp/reporter-LOCK');
+my ($count, $config, $sleep_interval, $lockfile, $daemon) = (1, 'SYSCONFDIR/opensrf_core.xml', 10, '/tmp/reporter-LOCK');
 
 GetOptions(
        "daemon"        => \$daemon,
index ec9a89f..099e3f8 100755 (executable)
@@ -10,7 +10,7 @@ use OpenSRF::Utils::SettingsClient;
 use OpenILS::Reporter::SQLBuilder;
 use File::Find;
 
-my ($config, $du, $live, %seen) = ('/openils/conf/bootstrap.conf', 0, 0);
+my ($config, $du, $live, %seen) = ('SYSCONFDIR/bootstrap.conf', 0, 0);
 
 GetOptions(
        "boostrap=s"    => \$config,
index 903edab..19f86b5 100755 (executable)
@@ -2,7 +2,7 @@
 use strict;
 use warnings;
 
-use lib '/openils/lib/perl5/';
+use lib 'LIBDIR/perl5/';
 
 use OpenSRF::System;
 use OpenSRF::Application;
@@ -16,7 +16,7 @@ use Digest::MD5 qw/md5_hex/;
 use Getopt::Long;
 
 my ($od_length, $user, $password, $config) =
-       ('180 days', 'admin', 'open-ils', '/openils/conf/opensrf_core.xml');
+       ('180 days', 'admin', 'open-ils', 'SYSCONFDIR/opensrf_core.xml');
 
 GetOptions(
        'overdue=s'     => \$od_length,
index 42327d0..5d2480c 100755 (executable)
@@ -4,7 +4,7 @@ use strict; use warnings;
 my $config = shift || die "Please specify a config file\n";
 my $context = shift || 'opensrf';
 
-my $oils_reqr = '/openils/bin/oils_requestor'; # XXX command line param
+my $oils_reqr = 'BINDIR/oils_requestor'; # XXX command line param
 
 if(1) { # XXX command line param
 
index 6d87c64..3a53b18 100755 (executable)
@@ -1,2 +1,2 @@
-#!/openils/bin/srfsh
+#!BINDIR/srfsh
 request open-ils.storage open-ils.storage.action.circulation.reshelving.complete "24h"
index 96d6828..3783167 100755 (executable)
@@ -1,2 +1,2 @@
-#!/openils/bin/srfsh
+#!BINDIR/srfsh
 request open-ils.storage open-ils.storage.action.hold_request.thaw_expired_frozen
similarity index 76%
rename from Open-ILS/xul/staff_client/Makefile
rename to Open-ILS/xul/staff_client/Makefile.am
index c242891..526e157 100644 (file)
@@ -1,16 +1,14 @@
-# ILS/Open-ILS/xul/staff_client/Makefile
+#---------------------------------------------------------
+# Makefile.am for xul/staff_client
+## Process this file with automake to generate Makefile.in
+#---------------------------------------------------------
 
 export STAFF_CLIENT_BUILD_ID = $$(/bin/cat build/BUILD_ID)
-ifeq ($(origin $(OPENSRF_LIBS)), undefined)
-       # Reasonable default when making the client outside of the root dir
-       OPENSRF_JSLIBS := "/openils/lib/javascript"
-else
-       OPENSRF_JSLIBS := "$(OPENSRF_LIBS)/javascript"
-endif
+OPENSRF_JSLIBS = "$(OPENSRF_LIBS)/javascript"
 
-all: build 
+install-exec-local: build
 
-build: build_dir generated open-ils custom stamp 
+build: build_dir generated open-ils stamp
        @echo To test the staff client:
        @echo "  cd build/"
        @echo "  xulrunner application.ini"
@@ -29,9 +27,10 @@ build_dir:
        cp build/chrome/content/main/simple_auth.xul build/server/main/simple_auth.xul
        cp build/chrome/content/OpenILS/data.js build/server/OpenILS/data.js
        cp build/chrome/content/OpenILS/global_util.js build/server/OpenILS/global_util.js
+       for i in `cd @top_srcdir@/Evergreen/xul/staff_client/server/ && find -type f |grep -v \.svn|cut -f2- -d/`; do cp @top_srcdir@/Evergreen/xul/staff_client/server/$$i build/server/$$i; done
        external/prune_dirs.sh build/
 
-stamp: 
+stamp:
        @/bin/date +"%Y%m%d.%H%M%S" > build/BUILD_ID
        @if [ -n "${STAFF_CLIENT_BUILD_ID}" ]; then ( echo "Stamping with Build ID: ${STAFF_CLIENT_BUILD_ID}" ; echo ${STAFF_CLIENT_BUILD_ID} > build/BUILD_ID ) ; fi
        @if [ -z "${STAFF_CLIENT_BUILD_ID}" ]; then ( echo "No Build ID for versioning" ; echo "none" > build/BUILD_ID ) ; fi
@@ -45,19 +44,12 @@ stamp:
 
 generated:
        @echo ' * Grabbing lang.dtd from the OPAC code '
-       cp ../../../Open-ILS/web/opac/locale/en-US/lang.dtd build/chrome/locale/en-US/
+       cp @top_srcdir@/Open-ILS/web/opac/locale/en-US/lang.dtd build/chrome/locale/en-US/
 
 open-ils:
        @echo ' * Grabbing more OPAC code and legacy code and custom code'
-       #cp ../../../OpenSRF/src/javascript/*.js build/chrome/content/OpenSRF/
-       cp ../../../Open-ILS/web/opac/common/js/*.js build/chrome/content/OpenILS/util/
+       cp @top_srcdir@/Open-ILS/web/opac/common/js/*.js build/chrome/content/OpenILS/util/
        cp $(OPENSRF_JSLIBS)/*.js build/chrome/content/OpenILS/util/
        external/prune_dirs.sh build/
 
-custom:
-       @echo ' * Placeholder for debugging tweaks '
-       #(cd chrome/content/OpenILS/util; cp RemoteRequest.js~ RemoteRequest.js)
 
-clean: 
-       @echo ' * Removing build/ '
-       rm -rf build/
diff --git a/autogen.sh b/autogen.sh
new file mode 100644 (file)
index 0000000..dc8591f
--- /dev/null
@@ -0,0 +1,21 @@
+#!/bin/sh
+# autogen.sh - generates configure using the autotools
+
+: ${LIBTOOLIZE=libtoolize}
+: ${ACLOCAL=aclocal}
+: ${AUTOHEADER=autoheader}
+: ${AUTOMAKE=automake}
+: ${AUTOCONF=autoconf}
+
+
+${LIBTOOLIZE} --force --copy
+${ACLOCAL}
+${AUTOMAKE} --add-missing
+
+
+${AUTOCONF}
+
+echo 
+echo "---------------------------------------------"
+echo "autogen finished running, now run ./configure"
+echo "---------------------------------------------"
diff --git a/build/i18n/Makefile.in b/build/i18n/Makefile.in
new file mode 100644 (file)
index 0000000..30e176e
--- /dev/null
@@ -0,0 +1,129 @@
+POTSRC=po/en-US
+POOUTDIR=po
+POINDIR=po
+PROJECT=locale
+LOCALE=fr-CA
+DTDDIR=../../Open-ILS/web/opac/locale
+CHROME_PROPSDIR=../../Open-ILS/xul/staff_client/chrome/locale
+SERVER_PROPSDIR=../../Open-ILS/xul/staff_client/server/locale
+FMIDLSRC=../../Open-ILS/examples/fm_IDL.xml
+FMIDLOUT=fm_IDL.pot
+FMIDLENT=fm_IDL.xml
+FMIDLENTITY=fm_IDL.xml.ent
+FMIDLPO=fm_IDL.po
+EVTSRC=../../Open-ILS/src/extras/ils_events.xml
+EVTOUT=ils_events.xml.pot
+EVTPO=ils_events.xml.po
+EVTXML=ils_events.xml
+SQLSRC=../../Open-ILS/src/sql/Pg/950.data.seed-values.sql
+SQLPOT=db.seed.pot
+SQLPO=db.seed.po
+SQLOUT=950.data.seed-values.sql
+PROGRESS=--progress none
+
+# This Makefile can be used to generate and update PO files for Evergreen,
+# as well as generate updated SQL, fieldmapper IDL, DTD and JavaScript
+# property files from the PO.
+#
+# Usage:
+#
+# To create a new set of untranslated PO files for locale ll-LL:
+#   make LOCALE=ll-LL newpo
+#
+# To create a new set of POT files from the en-US source:
+#   make LOCALE=ll-LL newpot
+#
+# To update a set of translated PO files with new or changed en-US strings:
+#   make LOCALE=ll-LL updatepo
+#
+# To create a set of translated project files (DTDs, JavaScript message catalogs):
+#   make LOCALE=ll-LL project
+#
+# To install a set of translated project files:
+#   make LOCALE=ll-LL install
+
+# Generate PO files from all POT files in POOUTDIR for locale LOCALE
+newpo: 
+       @pot2po $(PROGRESS) -i $(POTSRC) -o $(POOUTDIR)/$(LOCALE) 
+       @echo "Generated new PO files for locale $(LOCALE)"
+
+# Generate a new set of POT files and entityized fieldmapper IDL
+newpot: dtds2pot fmidl2pot fmidl2fmidlent ils2pot props2pot sql2pot
+       @echo "Generated new POT files"
+
+# Generate DTD, JavaScript message catalogs, fieldmapper IDL,
+# and SQL insert files from PO for locale LOCALE
+project: po2dtds po2props po2sql fmidlpo2entity po2ils
+       @echo "Generated project files for locale $(LOCALE)"
+
+# Update PO files with new and changed strings from POT files
+updatepo: 
+       pot2po $(PROGRESS) -o $(POOUTDIR)/$(LOCALE) -i $(POTSRC) -t $(POOUTDIR)/$(LOCALE) 2>&1
+       @echo "Updated PO files for locale $(LOCALE)"
+
+# Update PO files with new and changed strings from POT files
+updateopac: 
+       @msgmerge -U $(POOUTDIR)/$(LOCALE)/opac.dtd.po $(POTSRC)/opac.dtd.pot 2>&1
+       @echo "Updated PO file opac.dtd.po for locale $(LOCALE)"
+
+dtds2po:
+       @moz2po $(PROGRESS) -o $(POOUTDIR)/$(LOCALE) -i $(DTDDIR)/en-US/ 2>&1
+
+props2po:
+       @moz2po $(PROGRESS) -o $(POOUTDIR)/$(LOCALE) -i $(CHROME_PROPSDIR)/en-US/ 2>&1
+       @moz2po $(PROGRESS) -o $(POOUTDIR)/$(LOCALE) -i $(SERVER_PROPSDIR)/en-US/ 2>&1
+
+dtds2pot:
+       @moz2po -P $(PROGRESS) -o $(POTSRC) -i $(DTDDIR)/en-US/ 2>&1
+
+ils2pot:
+       @scripts/ils_events.py --pot $(EVTSRC) --output $(POTSRC)/$(EVTOUT)
+
+po2ils:
+       @scripts/ils_events.py --create $(POINDIR)/$(LOCALE)/$(EVTPO) --locale $(LOCALE) --output $(PROJECT)/$(LOCALE)/$(EVTXML) 
+
+props2pot:
+       @moz2po -P $(PROGRESS) -o $(POTSRC) -i $(CHROME_PROPSDIR)/en-US/ 2>&1
+       @moz2po -P $(PROGRESS) -o $(POTSRC) -i $(SERVER_PROPSDIR)/en-US/ 2>&1
+
+po2dtds:
+       @po2moz $(PROGRESS) -o $(PROJECT)/$(LOCALE) -t $(DTDDIR)/en-US/ -i $(POINDIR)/$(LOCALE) 2>&1
+
+po2props:
+       @po2moz $(PROGRESS) -o $(PROJECT)/$(LOCALE) -t $(CHROME_PROPSDIR)/en-US/ -i $(POINDIR)/$(LOCALE) 2>&1
+       @po2moz $(PROGRESS) -o $(PROJECT)/$(LOCALE) -t $(SERVER_PROPSDIR)/en-US/ -i $(POINDIR)/$(LOCALE) 2>&1
+
+sql2pot:
+       @scripts/db-seed-i18n.py --pot $(SQLSRC) --output $(POTSRC)/$(SQLPOT)
+
+po2sql:
+       scripts/db-seed-i18n.py --sql $(POINDIR)/$(LOCALE)/$(SQLPO) --locale $(LOCALE) --output $(PROJECT)/$(LOCALE)/$(SQLOUT)
+
+# Generate a fieldmapper IDL file that uses entities instead of hard-coded strings
+fmidl2fmidlent:
+       @scripts/fieldmapper.py --convert $(FMIDLSRC) --output $(POOUTDIR)/$(FMIDLENT)
+
+# Generate a POT file for translating the entity values
+fmidl2pot:
+       @scripts/fieldmapper.py --pot $(FMIDLSRC) --output $(POTSRC)/$(FMIDLOUT)
+
+# Generate a set of entity declarations from a PO file
+fmidlpo2entity:
+       @scripts/fieldmapper.py --entity $(POINDIR)/$(LOCALE)/$(FMIDLPO) --output $(PROJECT)/$(LOCALE)/$(FMIDLENTITY)
+
+# Install updated project files to their corresponding location in the source tree
+install: updatepo project 
+       mkdir -p $(CHROME_PROPSDIR)/$(LOCALE)
+       cp $(PROJECT)/$(LOCALE)/auth.properties $(CHROME_PROPSDIR)/$(LOCALE)/.
+       cp $(PROJECT)/$(LOCALE)/offline.properties $(CHROME_PROPSDIR)/$(LOCALE)/.
+       mkdir -p $(SERVER_PROPSDIR)/$(LOCALE)
+       cp $(PROJECT)/$(LOCALE)/admin.properties $(SERVER_PROPSDIR)/$(LOCALE)/.
+       cp $(PROJECT)/$(LOCALE)/cat.properties $(SERVER_PROPSDIR)/$(LOCALE)/.
+       cp $(PROJECT)/$(LOCALE)/circ.properties $(SERVER_PROPSDIR)/$(LOCALE)/.
+       cp $(PROJECT)/$(LOCALE)/common.properties $(SERVER_PROPSDIR)/$(LOCALE)/.
+       cp $(PROJECT)/$(LOCALE)/multiclass_search_help.html $(SERVER_PROPSDIR)/$(LOCALE)/.
+       cp $(PROJECT)/$(LOCALE)/patron.properties $(SERVER_PROPSDIR)/$(LOCALE)/.
+       mkdir -p $(DTDDIR)/$(LOCALE)
+       cp $(PROJECT)/$(LOCALE)/lang.dtd $(DTDDIR)/$(LOCALE)/
+       cp $(PROJECT)/$(LOCALE)/opac.dtd $(DTDDIR)/$(LOCALE)/
+
diff --git a/config.sh b/config.sh
deleted file mode 100755 (executable)
index 0605aa8..0000000
--- a/config.sh
+++ /dev/null
@@ -1,263 +0,0 @@
-#!/bin/bash
-# --------------------------------------------------------------------
-# Copyright (C) 2005  Georgia Public Library Service 
-# Bill Erickson <highfalutin@gmail.com>
-# Mike Rylander <mrylander@gmail.com>
-#
-# 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.
-# --------------------------------------------------------------------
-
-
-# --------------------------------------------------------------------
-# Prompts the user for config settings and writes a custom config
-# file based on these settings
-# --------------------------------------------------------------------
-
-
-CONFIG_FILE="install.conf";
-DEFAULT_CONFIG_FILE="install.conf.default";
-USE_DEFAULT="$1";
-
-function buildConfig {
-
-       if [ -f "$CONFIG_FILE" ]; then
-               source "$CONFIG_FILE";
-       else
-               if [ -f "$DEFAULT_CONFIG_FILE" ]; then
-                       source "$DEFAULT_CONFIG_FILE";
-               fi;
-       fi;
-
-    if [ -n "$USE_DEFAULT" ]; then
-        prompt "Default config requested, not prompting for values...\n";
-        writeConfig;
-        return 0;
-    fi;
-
-
-       echo "";
-       echo "-----------------------------------------------------------------------";
-       echo "Type Enter to select the default"
-       echo "-----------------------------------------------------------------------";
-
-       prompt "Install prefix [$PREFIX] ";
-       read X; if [ ! -z "$X" ]; then PREFIX="$X"; fi
-
-       BINDIR="$PREFIX/bin/";
-       LIBDIR="$PREFIX/lib/";
-       PERLDIR="$LIBDIR/perl5/";
-       INCLUDEDIR="$PREFIX/include/";
-       ETCDIR="$PREFIX/conf";
-       WEBDIR="$PREFIX/var/web";
-       DATADIR="$PREFIX/var/data";
-       CGIDIR="$PREFIX/var/cgi-bin";
-       TEMPLATEDIR="$PREFIX/var/templates";
-       CIRCRULESDIR="$PREFIX/var/circ";
-       CATALOGSCRIPTDIR="$PREFIX/var/catalog";
-       PENALTYRULESDIR="$PREFIX/var/penalty";
-       XSLDIR="$PREFIX/var/xsl";
-       REPORTERDIR="$PREFIX/var/web/reporter";
-       TMP="$(pwd)/.tmp";
-       ADMINDIR="$PREFIX/var/admin";
-
-       prompt "Apache2 apxs binary [$APXS2] "
-       read X; if [ ! -z "$X" ]; then APXS2="$X"; fi;
-
-       prompt "Apache2 headers directory [$APACHE2_HEADERS] "
-       read X; if [ ! -z "$X" ]; then APACHE2_HEADERS="$X"; fi;
-
-       prompt "Apache2 APR headers directory [$APR_HEADERS] "
-       read X; if [ ! -z "$X" ]; then APR_HEADERS="$X"; fi;
-
-       prompt "Libdbi libraries directory [$DBI_LIBS] "
-       read X; if [ ! -z "$X" ]; then DBI_LIBS="$X"; fi;
-
-       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;
-
-       prompt "Should we build Python modules? (Y/N) [$EG_PYTHON_INSTALL] "
-       read X; 
-    if [ "$X" = "Y" ]; 
-        then EG_PYTHON_INSTALL="Y"; 
-        else EG_PYTHON_INSTALL="";
-    fi;
-
-       prompt "Database Driver [$DBDRVR] "
-       read X; if [ ! -z "$X" ]; then DBDRVR="$X"; fi;
-
-       prompt "Database Host [$DBHOST] "
-       read X; if [ ! -z "$X" ]; then DBHOST="$X"; fi;
-
-       prompt "Database Port [$DBPORT] "
-       read X; if [ ! -z "$X" ]; then DBPORT="$X"; fi;
-
-       prompt "Database Name [$DBNAME] "
-       read X; if [ ! -z "$X" ]; then DBNAME="$X"; fi;
-
-       prompt "Database User [$DBUSER] "
-       read X; if [ ! -z "$X" ]; then DBUSER="$X"; fi;
-
-       prompt "Database Password [$DBPW] "
-       read X; if [ ! -z "$X" ]; then DBPW="$X"; fi;
-
-       prompt "Reporter Template Directory [$REPORTERDIR] "
-       read X; if [ ! -z "$X" ]; then REPORTERDIR="$X"; fi;
-
-       writeConfig;
-}
-
-function prompt { echo ""; echo -en "$*"; }
-
-function writeConfig {
-
-       rm -f "$CONFIG_FILE";
-       echo "Writing installation config to $CONFIG_FILE...";
-
-       _write "PREFIX=\"$PREFIX\"";
-       _write "BINDIR=\"$BINDIR\"";
-       _write "LIBDIR=\"$LIBDIR\"";
-       _write "PERLDIR=\"$PERLDIR\"";
-       _write "INCLUDEDIR=\"$INCLUDEDIR\"";
-       _write "SOCK=\"$PREFIX/var/sock\"";
-       _write "PID=\"$PREFIX/var/pid\"";
-       _write "LOG=\"$PREFIX/var/log\"";
-       _write "DATADIR=\"$DATADIR\"";
-
-       _write "TMP=\"$TMP\"";
-       _write "APXS2=\"$APXS2\"";
-       _write "APACHE2_HEADERS=\"$APACHE2_HEADERS\"";
-       _write "APR_HEADERS=\"$APR_HEADERS\"";
-       _write "DBI_LIBS=\"$DBI_LIBS\"";
-       _write "LIBXML2_HEADERS=\"$LIBXML2_HEADERS\"";
-
-       _write "OPENSRF_HEADERS=\"$OPENSRF_HEADERS\"";
-       _write "OPENSRF_LIBS=\"$OPENSRF_LIBS\"";
-
-       _write "WEBDIR=\"$WEBDIR\"";
-       _write "TEMPLATEDIR=\"$TEMPLATEDIR\"";
-       _write "ETCDIR=\"$ETCDIR\"";
-       _write "CIRCRULESDIR=\"$CIRCRULESDIR\"";
-       _write "CATALOGSCRIPTDIR=\"$CATALOGSCRIPTDIR\"";
-       _write "PENALTYRULESDIR=\"$PENALTYRULESDIR\"";
-       _write "XSLDIR=\"$XSLDIR\"";
-
-       # print out the targets
-       STR="TARGETS=(";
-       for target in ${TARGETS[@]:0}; do
-               STR="$STR \"$target\"";
-       done;
-       STR="$STR)";
-       _write "$STR";
-
-    _write "EG_PYTHON_INSTALL=\"$EG_PYTHON_INSTALL\"";
-       _write "OPENILSDIR=\"Open-ILS/src/\"";
-       _write "EVERGREENDIR=\"Evergreen/\"";
-
-
-       _write "CGIDIR=\"$CGIDIR\"";
-
-       # db vars
-       _write "DBDRVR=\"$DBDRVR\"";
-       _write "DBHOST=\"$DBHOST\"";
-       _write "DBPORT=\"$DBPORT\"";
-       _write "DBNAME=\"$DBNAME\"";
-       _write "DBUSER=\"$DBUSER\"";
-       _write "DBPW=\"$DBPW\"";
-       _write "REPORTERDIR=\"$REPORTERDIR\"";
-       _write "ADMINDIR=\"$ADMINDIR\"";
-
-
-       # Now we'll write out the DB bootstrapping config
-       CONFIG_FILE='Open-ILS/src/cgi-bin/setup.pl';
-       rm -f "$CONFIG_FILE";
-       echo "Writing bootstrapping config to $CONFIG_FILE...";
-
-       STR='$main::config{dsn} =';
-               STR="$STR 'dbi:${DBDRVR}:host=";
-               STR="${STR}${DBHOST};dbname=";
-               STR="${STR}${DBNAME};port=";
-               STR="${STR}${DBPORT}';";
-       _write "$STR"
-
-       STR='$main::config{usr} =';
-               STR="$STR '$DBUSER';";
-       _write "$STR"
-       
-       STR='$main::config{pw} =';
-               STR="$STR '$DBPW';";
-       _write "$STR"
-       
-       _write '$main::config{index} = "config.cgi";';
-
-
-    # --------------------------------------------------------------------
-       # Now we'll write out the offline config
-       CONFIG_FILE='Open-ILS/src/offline/offline-config.pl';
-       rm -f "$CONFIG_FILE";
-       echo "Writing bootstrapping config to $CONFIG_FILE...";
-
-    _write "\$main::config{base_dir} = '$PREFIX/var/data/offline/';";
-    _write "\$main::config{bootstrap} = '$ETCDIR/opensrf_core.xml';";
-
-       STR='$main::config{dsn} =';
-               STR="$STR 'dbi:${DBDRVR}:host=";
-               STR="${STR}${DBHOST};dbname=";
-               STR="${STR}${DBNAME};port=";
-               STR="${STR}${DBPORT}';";
-       _write "$STR"
-
-       STR='$main::config{usr} =';
-               STR="$STR '$DBUSER';";
-       _write "$STR"
-       
-       STR='$main::config{pw} =';
-               STR="$STR '$DBPW';";
-       _write "$STR"
-    # --------------------------------------------------------------------
-       
-
-       prompt "";
-       prompt "";
-       prompt "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!";
-       prompt "!! If installing openils_all / openils_db !!";
-       prompt "!! Before running 'make install' you MUST !!";
-       prompt "!! create a database for Open-ILS.  Use   !!";
-       prompt "!! the settings that you listed above and !!";
-       prompt "!! the install scripts will create the    !!";
-       prompt "!! database for you.  -miker              !!";
-       prompt "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!";
-       prompt "";
-       prompt "";
-
-       prompt "To write a new config, run 'make config'";
-       prompt "";
-       prompt "To edit individual install locations (e.g. changing the lib directory),"
-       prompt "edit the install.conf file generated from this script"
-       prompt ""
-
-}
-
-function _write {
-       echo "$*" >> "$CONFIG_FILE";
-}
-
-
-
-buildConfig;
diff --git a/configoptions.sh b/configoptions.sh
new file mode 100644 (file)
index 0000000..993a769
--- /dev/null
@@ -0,0 +1,67 @@
+#!/bin/bash
+
+echo "------------------------------------------"
+echo "Options selector for Open-ILS configure"
+echo "------------------------------------------"
+echo " "
+echo "Install Open-ILS ALL? (y/n) "
+read X; 
+if [ $X == "y" ] ; then 
+TARGS=${TARGS}" --enable-openils-all"
+fi
+echo "Install Open-ILS CORE? (y/n) "
+read X; 
+if [ $X == "n" ] ; then 
+TARGS=${TARGS}" --disable-openils-core" 
+fi
+echo "Install Open-ILS WEB? (y/n) "
+read X;
+if [ $X == "n" ] ; then 
+TARGS=${TARGS}" --disable-openils-web" 
+fi
+echo "Install Open-ILS DB? (y/n) "
+read X;
+if [ $X == "n" ] ; then
+TARGS=${TARGS}" --disable-openils-db"
+fi
+echo "Install Open-ILS MARCDUMPER? (y/n) "
+read X;
+if [ $X == "y" ] ; then
+TARGS=${TARGS}" --enable-openils-marcdumper"
+fi
+echo "Install Open-ILS REPORTER? (y/n) "
+read X;
+if [ $X == "y" ] ; then
+TARGS=${TARGS}" --enable-openils-reporter"
+elseif [ $X == "n" ] ; then
+TARGS=${TARGS}" --disable-openils-reporter"
+fi
+echo "Install Open-ILS XUL CLIENT? (y/n) "
+read X;
+if [ $X == "y" ] ; then
+TARGS=${TARGS}" --enable-openils-client-xul"
+fi
+echo "Install Open-ILS XUL SERVER? (y/n) "
+read X;
+if [ $X == "y" ] ; then
+TARGS=${TARGS}" --enable-openils-server-xul"
+elseif [ $X == "n" ] ; then
+TARGS=${TARGS}" --disable-openils-server-xul"
+fi
+echo "Install EVERGREEN CORE? (y/n) "
+read X;
+if [ $X == "y" ] ; then
+TARGS=${TARGS}" --enable-evergreen-core"
+fi
+echo "Install EVERGREEN XUL CLIENT? (y/n) "
+read X;
+if [ $X == "y" ] ; then
+TARGS=${TARGS}" --enable-evergreen-xul-client"
+fi
+
+
+echo ${TARGS}
+./configure --with-dbver=81 --with-dbuser=evergreen --with-dbpw=evergreen ${TARGS}
+make
+sudo make install
+
diff --git a/configure.ac b/configure.ac
new file mode 100644 (file)
index 0000000..19f8d8f
--- /dev/null
@@ -0,0 +1,451 @@
+# Copyright (C) 2008 Equinox Software, Inc.
+# Kevin Beswick <kevinbeswick00@gmail.com>
+#
+# 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.
+
+
+#---------------------------
+# Init
+#---------------------------
+
+export PATH=${PATH}:/usr/sbin
+AC_PREREQ(2.59)
+AC_INIT(Open-ILS, trunk, open-ils-dev@list.georgialibraries.org)
+AM_INIT_AUTOMAKE([OpenILS], [trunk])
+AC_REVISION($Revision: 0.1 $)
+AC_CONFIG_SRCDIR([configure.ac])
+AC_PREFIX_DEFAULT([/openils/])
+AC_SUBST(prefix)
+AC_SUBST([abs_top_builddir])
+
+#-----------------------------------
+# Checks for programs.
+#-----------------------------------
+
+AC_PROG_LIBTOOL
+AC_PROG_CC
+AC_PROG_INSTALL
+AC_PROG_LN_S
+AC_PROG_MAKE_SET
+
+#-----------------------------------
+# Install options 
+#-----------------------------------
+
+# install openils-all?
+#AC_ARG_ENABLE([openils-all],
+#[  --enable-openils-all    enables the installation of the default openils system (base system,web,staffclient) ],
+#[case "${enableval}" in
+#    yes) openils_all=true;
+#       openils_core=true;
+#       openils_web=true;
+#       openils_db=true;
+#       openils_reporter=true;
+#       openils_client_xul=true;
+#       openils_server_xul=true ;;
+#    no)  openils_all=false ;;
+#  *) AC_MSG_ERROR([please choose another value for --enable-openils-all (supported values are yes or no])
+#esac],
+#[openils_all=false])
+
+# install evergreen-core?
+AC_ARG_ENABLE([evergreen-core],
+[  --disable-evergreen-core    disables the installation of the evergreen core components ],
+[case "${enableval}" in
+    yes) openils_core=true ;;
+    no)  openils_core=false ;;
+  *) AC_MSG_ERROR([please choose another value for --disable-evergreen-core (supported values are yes or no])
+esac],
+[openils_core=true])
+
+AM_CONDITIONAL([BUILDILSCORE], [test x$openils_core = xtrue])
+
+# install evergreen-web?
+
+AC_ARG_ENABLE([evergreen-web],
+[  --disable-evergreen-web    disables the installation of the openils web modules ],
+[case "${enableval}" in
+    yes) openils_web=true ;;
+    no)  openils_web=false ;;
+  *) AC_MSG_ERROR([please choose another value for --disable-evergreen-web (supported values are yes or no])
+esac],
+[openils_web=true])
+
+AM_CONDITIONAL([BUILDILSWEB], [test x$openils_web = xtrue])
+
+# build evergreendb ?
+#
+#AC_ARG_ENABLE([openils-db],
+#[  --disable-openils-db    disables the installation of the openils db modules ],
+#[case "${enableval}" in
+#    yes) openils_db=true ;;
+#    no)  openils_db=false ;;
+#  *) AC_MSG_ERROR([please choose another value for --disable-openils-db (supported values are yes or no])
+#esac],
+#[openils_db=true])
+#
+#AM_CONDITIONAL([BUILDILSDB], [test x$openils_db = xtrue])
+
+# build evergreen-reporter ?
+
+AC_ARG_ENABLE([evergreen-reporter],
+[  --disable-evergreen-reporter    disables the installation of the evergreen reporter module ],
+[case "${enableval}" in
+    yes) openils_reporter=true ;;
+    no)  openils_reporter=false ;;
+  *) AC_MSG_ERROR([please choose another value for --disable-evergreen-reporter (supported values are yes or no])
+esac],
+[openils_reporter=true])
+
+AM_CONDITIONAL([BUILDILSREPORTER], [test x$openils_reporter = xtrue])
+
+# build evergreen-client ?
+
+AC_ARG_ENABLE([evergreen-client],
+[  --disable-evergreen-client    disables the installation of the evergreen staff client ],
+[case "${enableval}" in
+    yes) openils_client=true ;;
+    no)  openils_client=false ;;
+  *) AC_MSG_ERROR([please choose another value for --disable-evergreen-client (supported values are yes or no])
+esac],
+[openils_client=true])
+
+AM_CONDITIONAL([BUILDILSCLIENT], [test x$openils_client = xtrue])
+
+
+# build evergreen java ?
+
+AC_ARG_ENABLE([evergreen-java],
+[  --enable-evergreen-java    enables the installation of the evergreen java components ],
+[case "${enableval}" in
+    yes) evergreen_java=true ;;
+    no)  evergreen_java=false ;;
+  *) AC_MSG_ERROR([please choose another value for --enable-evergreen-java (supported values are yes or no])
+esac],
+[evergreen_java=false])
+
+AM_CONDITIONAL([BUILDEGJAVA], [test x$evergreen_java = xtrue])
+
+
+# build the evergreen python modules?
+
+AC_ARG_ENABLE([evergreen-python],
+[  --disable-evergreen-python    disables the installation of the evergreen python modules ],
+[case "${enableval}" in
+    yes) EG_PYTHON_INSTALL=true ;;
+    no)  EG_PYTHON_INSTALL=false ;;
+  *) AC_MSG_ERROR([please choose another value for --disable-python-install (supported values are yes or no)])
+esac],
+[EG_PYTHON_INSTALL=true])
+
+AM_CONDITIONAL([BUILDEGPYTHON], [test x$EG_PYTHON_INSTALL = xtrue])
+
+
+
+#-----------------------------------
+# Check for dependencies 
+#-----------------------------------
+
+AC_CHECK_PROG([MEMCACHED],memcached,yes,no)
+if test $MEMCACHED = "no"; then
+       AC_MSG_ERROR([*** memcached not found, aborting])
+fi
+
+AC_CHECK_PROG([ASPELL],aspell,yes,no)
+if test $ASPELL = "no"; then
+       AC_MSG_ERROR([*** aspell not found, aborting])
+fi
+
+AC_CHECK_PROG([CPAN],cpan,yes,no)
+if test $CPAN = "no"; then
+       AC_MSG_ERROR([*** cpan not found, aborting])
+fi
+
+AC_CHECK_PROG([YAZ],yaz-config,yes,no)
+if test $YAZ = "no"; then
+       AC_MSG_ERROR([*** yaz not found, aborting])
+fi
+
+AC_CHECK_PROG([PERL],perl,yes,no)
+if test $PERL = "no"; then 
+       AC_MSG_ERROR([*** perl not found, aborting])
+fi
+
+
+#-----------------------------------
+# Set install path variables 
+#-----------------------------------
+
+AC_ARG_WITH([tmp],
+[ --with-tmp=path              location for the tmp dir for OpenILS (default is /tmp) ],
+[TMP=${withval}],
+[TMP=/tmp])
+AC_SUBST([TMP])
+
+
+APXS2=`apxs2 -q BINDIR`/apxs2
+AC_SUBST([APXS2])
+
+APACHE2_HEADERS=`apxs2 -q INCLUDEDIR`
+AC_SUBST([APACHE2_HEADERS])
+
+APR_HEADERS=`apr-config --includedir`
+AC_SUBST([APR_HEADERS])
+
+AC_ARG_WITH([libxml],
+[  --with-libxml=path         location of the libxml headers (default is /usr/include/libxml2)],
+[LIBXML2_HEADERS=${withval}],
+[LIBXML2_HEADERS=/usr/include/libxml2/])
+AC_SUBST([LIBXML2_HEADERS])
+
+AC_ARG_WITH([dbi],
+[  --with-dbi=path             location of the libdbi libraries (default is /usr/local/lib/dbd)],
+[DBI_LIBS=${withval}],
+[DBI_LIBS=/usr/local/lib/dbd/])
+AC_SUBST([DBI_LIBS])
+
+AC_ARG_WITH([opensrf-headers],
+[  --with-opensrf-headers=path         location of the opensrf header files (default is /openils/include/)],
+[OPENSRF_HEADERS=${withval}],
+[OPENSRF_HEADERS=/openils/include/])
+AC_SUBST([OPENSRF_HEADERS])
+
+AC_ARG_WITH([opensrf-libs],
+[  --with-opensrf-libs=path            location of the opensrf libraries (default is /openils/lib/)],
+[OPENSRF_LIBS=${withval}],
+[OPENSRF_LIBS=/openils/lib/])
+AC_SUBST([OPENSRF_LIBS])
+
+#-------------------------------------------------------------
+# Set DB Info
+#-------------------------------------------------------------
+
+AC_ARG_WITH([dbdrvr],
+[ --with-dbdrvr=name           name of the database driver to be used by open-ils (default is Pg)],
+[DBDRVR=${withval}],
+[DBDRVR=Pg])
+AC_SUBST([DBDRVR])
+
+if test $DBDRVR="Pg"; then
+       AC_CHECK_PROG([PGSQL],pg,yes,no)
+       if test $PGSQL = "no"; then
+        AC_MSG_ERROR([*** postgresql not found, aborting])
+       fi
+fi
+
+AC_ARG_WITH([dbhost],
+[ --with-dbhost=address            name of the database hostname to be used by open-ils (default is 127.0.0.1)],
+[DBHOST=${withval}],
+[DBHOST=127.0.0.1])
+AC_SUBST([DBHOST])
+
+AC_ARG_WITH([dbport],
+[ --with-dbport=number            name of the database port to be used by open-ils (default is 5432)],
+[DBPORT=${withval}],
+[DBPORT=5432])
+AC_SUBST([DBPORT])
+
+AC_ARG_WITH([dbname],
+[ --with-dbname=name            name of the database to be used by open-ils (default is evergreen)],
+[DBNAME=${withval}],
+[DBNAME=evergreen])
+AC_SUBST([DBNAME])
+
+AC_ARG_WITH([dbuser],
+[ --with-dbuser=name            name of the database username to be used by open-ils (default is postgres)],
+[DBUSER=${withval}],
+[DBUSER=postgres])
+AC_SUBST([DBUSER])
+
+AC_ARG_WITH([dbver],
+[ --with-dbver=number            version of the database to be used by open-ils, leaving out the periods in the version number (default is 82)],
+[DBVER=${withval}],
+[DBVER=82])
+AC_SUBST([DBVER])
+
+
+AC_ARG_WITH([dbpw],
+[ --with-dbpw=password            password of the database to be used by open-ils (default is postgres)],
+[DBPW=${withval}],
+[DBPW=postgres])
+AC_SUBST([DBPW])
+
+#------------------------------------
+# Checks for libraries. 
+#------------------------------------
+
+# Check for the existance of libraries in non-standard locations
+
+AC_MSG_CHECKING(for -lopensrf)
+if test -e ${OPENSRF_LIBS}/libopensrf.so; then
+AC_MSG_RESULT([yes])
+else
+AC_MSG_ERROR([*** libopensrf not found (or not in location specified to configure), aborting])
+fi
+
+# Check for the rest of the libraries
+
+#check for dynamic linking functions
+AC_CHECK_LIB(dl,dlopen)
+
+#check for the libdbi library
+AC_CHECK_LIB(dbi,dbi_initialize)
+
+#to check for the availability and function of a particular
+#driver we need a runtime check (since the driver is loaded
+#dynamically). This example checks for the mysql driver
+AC_MSG_CHECKING([for libdbi pgsql driver (dynamic load)])
+AC_RUN_IFELSE(
+  [AC_LANG_PROGRAM(,
+    [[dbi_initialize(0); return(dbi_conn_new("pgsql") ? 0 : 1);]])],
+  [AC_MSG_RESULT("yes")],
+  [AC_MSG_FAILURE("pgsql driver not installed?")])
+
+AC_CHECK_LIB([expat], [main], [], AC_MSG_ERROR(*** OpenILS requires libexpat))
+AC_CHECK_LIB([readline], [main], [], AC_MSG_ERROR(*** OpenILS requires libreadline))
+AC_CHECK_LIB([xml2], [main], [], AC_MSG_ERROR(*** OpenILS requires libxml2))
+AC_CHECK_LIB([xslt], [main], [], AC_MSG_ERROR(*** OpenILS requires libxslt))
+AC_CHECK_LIB([yaz], [main], [], AC_MSG_ERROR(*** OpenILS requires libyaz))
+AC_CHECK_LIB([perl], [main], [], AC_MSG_ERROR(*** OpenILS requires libperl-dev))
+AC_CHECK_LIB([pq], [main], [], AC_MSG_ERROR(*** OpenILS requires libpq))
+
+
+#------------------------------------
+# Checks for header files.
+#------------------------------------
+
+AC_HEADER_STDC
+AC_CHECK_HEADERS([fcntl.h langinfo.h locale.h stdlib.h string.h unistd.h])
+
+#-------------------------------------------------------------------
+# Checks for typedefs, structures, and compiler characteristics.
+#-------------------------------------------------------------------
+
+AC_C_CONST
+AC_TYPE_SIZE_T
+AC_STRUCT_TM
+AC_HEADER_STDBOOL
+
+#-------------------------------------------------------------------
+# Checks for library functions.
+#-------------------------------------------------------------------
+
+AC_FUNC_STRFTIME
+AC_FUNC_STRTOD
+AC_CHECK_FUNCS([localtime_r memset nl_langinfo setlocale strcasecmp strchr strdup strerror strncasecmp])
+
+
+#------------------------------------
+# Generate some config files
+#------------------------------------
+# write out the DB bootstrapping config
+       CONFIG_FILE='Open-ILS/src/cgi-bin/setup.pl';
+       rm -f "$CONFIG_FILE";
+       echo "Writing bootstrapping config to $CONFIG_FILE...";
+
+       STR='$main::config{dsn} =';
+               STR="$STR 'dbi:${DBDRVR}:host=";
+               STR="${STR}${DBHOST};dbname=";
+               STR="${STR}${DBNAME};port=";
+               STR="${STR}${DBPORT}';";
+       echo "$STR" >> "$CONFIG_FILE";
+
+       STR='$main::config{usr} =';
+               STR="$STR '$DBUSER';";
+       echo "$STR" >> "$CONFIG_FILE";
+       
+       STR='$main::config{pw} =';
+               STR="$STR '$DBPW';";
+       echo "$STR" >> "$CONFIG_FILE";
+       
+       echo '$main::config{index} = "config.cgi";' >> "$CONFIG_FILE";
+
+#----------------------------
+# Create Makefiles/Output
+#----------------------------
+
+AC_CONFIG_FILES([Makefile
+                 Open-ILS/examples/Makefile
+                 Open-ILS/src/Makefile
+                 Open-ILS/src/apachemods/Makefile
+                 Open-ILS/src/c-apps/Makefile
+                 Open-ILS/src/extras/Makefile
+                 Open-ILS/src/java/Makefile
+                 Open-ILS/src/python/Makefile
+                 Open-ILS/xul/staff_client/Makefile
+                Open-ILS/src/offline/offline-config.pl
+                Open-ILS/src/extras/eg_config
+                 build/i18n/Makefile],  [if test -e "./Open-ILS/src/extras/eg_config"; then chmod 755 Open-ILS/src/extras/eg_config; fi])
+AC_OUTPUT
+
+
+#-------------------------------------------------
+# OUTPUT STUFF 
+#-------------------------------------------------
+
+AC_MSG_RESULT([])
+AC_MSG_RESULT([--------------------- Configuration options:  -----------------------])
+
+AC_MSG_RESULT([])
+AC_MSG_RESULT([-------- Installation Options: --------])
+if test "$openils_core" = "true" ; then
+       AC_MSG_RESULT([Evergreen Core:                  yes])
+else
+       AC_MSG_RESULT([Evergreen Core:                  no])
+fi
+if test "$openils_web" = "true" ; then
+        AC_MSG_RESULT([Evergreen Web:                  yes])
+else
+        AC_MSG_RESULT([Evergreen Web:                  no])
+fi
+if test "$openils_reporter" = "true" ; then
+        AC_MSG_RESULT([Evergreen Reporter:             yes])
+else
+        AC_MSG_RESULT([Evergreen Reporter:             no])
+fi
+if test "$openils_client" = "true" ; then
+        AC_MSG_RESULT([Evergreen Staff Client:         yes])
+else
+        AC_MSG_RESULT([Evergreen Staff Client:         no])
+fi
+if test "$EG_PYTHON_INSTALL" = "true" ; then
+        AC_MSG_RESULT([Evergreen Python Components:    yes])
+else
+        AC_MSG_RESULT([Evergreen Python Components:    no])
+fi
+if test "$evergreen_java" = "true" ; then
+        AC_MSG_RESULT([Evergreen Java Components:      yes])
+else
+        AC_MSG_RESULT([Evergreen Java Components:      no])
+fi
+AC_MSG_RESULT([]) 
+AC_MSG_RESULT([-------- DB Info --------])
+AC_MSG_RESULT([Driver:         ${DBDRVR}])
+AC_MSG_RESULT([Host:           ${DBHOST}])
+AC_MSG_RESULT([Port:           ${DBPORT}])
+AC_MSG_RESULT([DB Name:        ${DBNAME}])
+AC_MSG_RESULT([Username:       ${DBUSER}])
+AC_MSG_RESULT([Version:        ${DBVER}])
+AC_MSG_RESULT([Password:       ${DBPW}])
+AC_MSG_RESULT([])
+AC_MSG_RESULT([-------- Installation Directories --------])
+AC_MSG_RESULT(Installation dir prefix:                  ${prefix})
+AC_MSG_RESULT(Temporary dir location:                   ${TMP})
+AC_MSG_RESULT(APXS2 dir location:                       ${APXS2})
+AC_MSG_RESULT(Apache headers location:                  ${APACHE2_HEADERS})
+AC_MSG_RESULT(APR headers location:                     ${APR_HEADERS})
+AC_MSG_RESULT(libxml headers location:                  ${LIBXML2_HEADERS})
+AC_MSG_RESULT(libdbi dir location:                      ${DBI_LIBS})
+AC_MSG_RESULT(OpenSRF Headers location:                 ${OPENSRF_HEADERS})
+AC_MSG_RESULT(OpenSRF Libraries location:               ${OPENSRF_LIBS})
+
+AC_MSG_RESULT([----------------------------------------------------------------------])
+
diff --git a/install.conf.default b/install.conf.default
deleted file mode 100644 (file)
index 09200b7..0000000
+++ /dev/null
@@ -1,124 +0,0 @@
-#!/bin/bash
-# --------------------------------------------------------------------
-# Copyright (C) 2005  Georgia Public Library Service 
-# Bill Erickson <highfalutin@gmail.com>
-#
-# 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.
-# --------------------------------------------------------------------
-
-
-# --------------------------------------------------------------------
-# Build targets.  Options include:
-# 
-# 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
-# openils_db                   - installs the database schemas 
-# openils_reporter             - installs the base of OpenILS Reporter
-#
-# evergreen_core               - builds core Evergreen components (does not build evergreen_xul_client!)
-# evergreen_xul_client   - client XUL application
-#
-# If you only want to build the client app, then just build evergreen_xul_client.
-# --------------------------------------------------------------------
-
-TARGETS=("openils_core" "openils_web" "openils_db");
-
-
-# --------------------------------------------------------------------
-# Should we build the Evergreen Python modules?
-# These depend on having the setuptools module installed.
-# --------------------------------------------------------------------
-EG_PYTHON_INSTALL="N"
-
-# --------------------------------------------------------------------
-# Global install prefix.  Binaries will be installed into PREFIX/bin,
-# libraries will be installed into PREFIX/lib, etc.  The user 
-# running 'install.sh install' must have write permissions to PREFIX
-# --------------------------------------------------------------------
-PREFIX="/openils/";
-BINDIR="$PREFIX/bin/";
-LIBDIR="$PREFIX/lib/";
-PERLDIR="$LIBDIR/perl5/";
-INCLUDEDIR="$PREFIX/include/";
-ETCDIR="$PREFIX/etc/";
-WEBDIR="$PREFIX/web/";
-CGIDIR="$PREFIX/cgi-bin/";
-TEMPLATEDIR="$PREFIX/templates";
-
-
-# --------------------------------------------------------------------
-# Temporary build files go here.  The User running 'install.sh build'
-# must have write permissions to TMP
-# --------------------------------------------------------------------
-TMP="/tmp/ilstmp/";
-
-
-# --------------------------------------------------------------------
-# Location of the apxs binary for Apache2.  This must be set when
-# building the mod_ils_gateway C plugin for allowing web access
-# to the published API.
-# --------------------------------------------------------------------
-
-APXS2="/usr/bin/apxs2";
-
-
-# --------------------------------------------------------------------
-# Directories where the Apache2 header files are located.  These must 
-# be set when building the mod_ils_gateway C plugin for allowing web 
-# access to the published API.
-# --------------------------------------------------------------------
-APACHE2_HEADERS="/usr/include/apache2";
-APR_HEADERS="/usr/include/apr-1.0/";
-
-
-# --------------------------------------------------------------------
-# Directory where the libdbi libraries are located. libdbi is used
-# by the OpenILS cstore, fetch, and rstore applications
-# --------------------------------------------------------------------
-DBI_LIBS="/usr/local/lib/dbd";
-
-# --------------------------------------------------------------------
-# Directory where the libxml2 headers are located.  Libxml2 is used
-# by various components
-# --------------------------------------------------------------------
-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.
-# --------------------------------------------------------------------
-OPENILSDIR="Open-ILS/src/";
-EVERGREENDIR="Evergreen/";
-
-
-
-
-# --------------------------------------------------------------------
-# These are used to create the perl DBI DSN for the bootstrapping
-# scripts.
-# --------------------------------------------------------------------
-DBDRVR="Pg";
-DBHOST="127.0.0.1";
-DBPORT="5432";
-DBNAME="evergreen";
-DBUSER="postgres";
-DBPW="postgres";
-
diff --git a/install.sh b/install.sh
deleted file mode 100755 (executable)
index 2e93434..0000000
+++ /dev/null
@@ -1,280 +0,0 @@
-#!/bin/bash
-# vim:noet:ts=4
-# --------------------------------------------------------------------
-# Copyright (C) 2005  Georgia Public Library Service 
-# Bill Erickson <highfalutin@gmail.com>
-#
-# 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.
-# --------------------------------------------------------------------
-
-
-# --------------------------------------------------------------------
-# ILS install script
-# --------------------------------------------------------------------
-CONFIG_FILE="install.conf";
-DEFAULT_CONFIG_FILE="install.conf.default";
-verbose="-s" #clear this to get full build output
-
-
-# --------------------------------------------------------------------
-# Loads all of the path information from the user setting 
-# install variables as it goes
-# --------------------------------------------------------------------
-
-function fail {
-       MSG="$1";
-       echo "A build error occured: $MSG";
-       exit 99;
-}
-
-
-#function postMessage {
-
-#cat <<-WORDS
-#      --------------------------------------------------------------------
-
-
-#}
-
-
-
-# --------------------------------------------------------------------
-# Makes sure the install directories exist and are writable
-# --------------------------------------------------------------------
-
-function mkDir {
-       mkdir -p "$1";
-       [ "$?" != "0" ] && fail "Error creating $1";
-       [ ! -w "$1" ] && fail "We don't have write access to $1";
-}
-
-function mkInstallDirs {
-
-       installing      && mkDir "$PREFIX";
-       building        && mkDir "$TMP";
-       installing      && mkDir "$SOCK";
-       installing      && mkDir "$PID";
-       installing      && mkDir "$LOG";
-
-
-       # add the opensrf user and group
-        if installing; then
-               if [ ! $(grep "^opensrf:" /etc/group) ]; then groupadd opensrf; fi
-               if [ ! $(grep "^opensrf:" /etc/passwd) ]; then useradd -g opensrf opensrf; fi
-       fi;
-
-}
-
-function installing {
-       if [ -z "$INSTALLING" ]; then return 1; fi;
-       return 0;
-}
-
-function building {
-       if [ -z "$BUILDING" ]; then return 1; fi;
-       return 0;
-}
-
-function testing {
-       if [ -z "$TESTING" ]; then return 1; fi;
-       return 0;
-}
-
-
-# --------------------------------------------------------------------
-# Loads the config file.  If it can't fine CONFIG_FILE, it attempts to
-# use DEFAULT_CONFIG_FILE.  If it can't find that, it fails.
-# --------------------------------------------------------------------
-function loadConfig {
-       if [ ! -f "$CONFIG_FILE" ]; then
-               if [ -f "$DEFAULT_CONFIG_FILE" ]; then
-                       echo "+ + + Copying $DEFAULT_CONFIG_FILE to $CONFIG_FILE and using its settings...";
-                       cp "$DEFAULT_CONFIG_FILE" "$CONFIG_FILE";
-               else
-                       fail "config file \"$CONFIG_FILE\" cannot be found";
-               fi
-       fi
-       source "$CONFIG_FILE";
-}
-
-
-
-
-function runInstall {
-
-       # pass the collected variables to make
-       for target in ${TARGETS[@]:0}; do
-
-               echo ""
-               echo "-------------- [ $target ] -------------------------------------------";
-               echo ""
-
-               MAKE="make $verbose APXS2=$APXS2 PREFIX=$PREFIX TMP=$TMP APR_HEADERS=$APR_HEADERS \
-                       APACHE2_HEADERS=$APACHE2_HEADERS LIBXML2_HEADERS=$LIBXML2_HEADERS DBPORT=$DBPORT\
-                       BINDIR=$BINDIR DBI_LIBS=$DBI_LIBS LIBDIR=$LIBDIR PERLDIR=$PERLDIR EG_PYTHON_INSTALL=$EG_PYTHON_INSTALL INCLUDEDIR=$INCLUDEDIR \
-                       WEBDIR=$WEBDIR TEMPLATEDIR=$TEMPLATEDIR ETCDIR=$ETCDIR REPORTERDIR=$REPORTERDIR\
-                       OPENSRF_HEADERS=$OPENSRF_HEADERS OPENSRF_LIBS=$OPENSRF_LIBS OPENILSDIR=$OPENILSDIR EVERGREENDIR=$EVERGREENDIR \
-                       CIRCRULESDIR=$CIRCRULESDIR CATALOGSCRIPTDIR=$CATALOGSCRIPTDIR CGIDIR=$CGIDIR \
-                       DBDRVR=$DBDRVR DBHOST=$DBHOST DATADIR=$DATADIR ADMINDIR=$ADMINDIR\
-                       PENALTYRULESDIR=$PENALTYRULESDIR DBNAME=$DBNAME DBUSER=$DBUSER DBPW=$DBPW XSLDIR=$XSLDIR NEW_OPAC_URL=$NEW_OPAC_URL \
-                       NEW_XUL_PACKAGE_NAME=$NEW_XUL_PACKAGE_NAME NEW_XUL_PACKAGE_LABEL=$NEW_XUL_PACKAGE_LABEL";
-
-
-               case "$target" in
-       
-                       # OpenILS ---                   
-
-                       "openils_all" )
-                               if building;    then $MAKE -C "$OPENILSDIR" all; fi;
-                               if testing;             then $MAKE -C "$OPENILSDIR/../examples" test; fi;
-                               if installing; then $MAKE -C "$OPENILSDIR" install; fi;
-                               ;;
-
-                       "openils_core" )
-                               if building; then 
-                                       $MAKE -C "$OPENILSDIR" "c_apps";
-                                       $MAKE -C "$OPENILSDIR" "python-build";
-                               fi;
-                               if installing; then 
-                                       $MAKE -C "$OPENILSDIR" "perl-install"; 
-                                       $MAKE -C "$OPENILSDIR" "python-install"; 
-                                       $MAKE -C "$OPENILSDIR" "string-templates-install"; 
-                                       $MAKE -C "$OPENILSDIR" "xsl-install"; 
-                                       $MAKE -C "$OPENILSDIR" "c_apps-install"; 
-                                       $MAKE -C "$OPENILSDIR" "circ_rules-install"; 
-                                       $MAKE -C "$OPENILSDIR" "autojs-install"; 
-                               fi;
-                               ;;
-
-                       "openils_web" )
-                               if building; then $MAKE -C "$OPENILSDIR" "mod_xmlent"; fi;
-                               #if building; then $MAKE -C "$OPENILSDIR" "mod_ils_rest_gateway"; fi;
-                               if installing; then
-                                       $MAKE -C "$OPENILSDIR" "web-install";
-                                       $MAKE -C "$OPENILSDIR" "cgi-bootstrap";
-                                       $MAKE -C "$OPENILSDIR" "reporter-install";
-                               fi;
-                               ;;
-
-                       "openils_db" )
-                               if installing; then 
-                                       $MAKE -C "$OPENILSDIR" "storage-bootstrap"; 
-                               fi;
-                               ;;
-
-                       "openils_reporter" )
-                               if installing; then 
-                                       $MAKE -C "$OPENILSDIR" "reporter-install";
-                               fi;
-                               ;;
-
-                       "openils_client_xul" )
-                               if building; then
-                                       $MAKE -C "$OPENILSDIR" "client-xul";
-                               fi;
-                               ;;
-
-                       "openils_server_xul" )
-                               if installing; then
-                                       $MAKE -C "$OPENILSDIR" "server-xul";
-                               fi;
-                               ;;
-
-                       # Evergreen ---                         
-
-                       "evergreen_core" )
-                               if installing;  then $MAKE -C "$EVERGREENDIR" "install"; fi;
-                               ;;      
-
-                       "evergreen_xul_client" )
-                               if building;    then $MAKE -C "$EVERGREENDIR" xul; fi;
-                               ;;
-
-
-                       *) fail "Unknown target: $target";;
-
-               esac
-
-       done
-
-       if installing; then
-               echo -e "\nNow run: chown -R opensrf:opensrf $PREFIX"
-       fi
-}
-
-
-# --------------------------------------------------------------------
-# Checks command line parameters for special behavior
-# Supported params are:
-# clean - cleans all build files
-# build - builds the specified sources
-# install - installs the specified sources
-# test - tests the specified sources
-# --------------------------------------------------------------------
-function checkParams {
-
-       if [ -z "$1" ]; then usage; fi;
-
-       for arg in "$@"; do
-
-               lastArg="$arg";
-
-               case "$arg" in
-
-                       "clean") 
-                               cleanMe;;
-
-                       "build")
-                               BUILDING="1";;
-
-                       "install")
-                               INSTALLING="1";;
-                       
-                       "verbose")
-                               verbose="";;
-
-                       "test")
-                               TESTING="1";;
-
-                       *) fail "Unknown option => $arg";
-               esac
-       done
-
-       if [ "$lastArg" = "clean" ]; then exit 0; fi;
-}
-
-
-function cleanMe {
-       loadConfig;
-       make "TMP=$TMP" -s -C "$OPENILSDIR"  clean;
-       make "TMP=$TMP" -s -C "$EVERGREENDIR" clean;
-       make "TMP=$TMP" -s -C "$OPENILSDIR/../xul/staff_client"  clean;
-}
-
-function usage {
-       echo "usage: $0 [ build | install | clean ]";
-       exit;
-}
-
-checkParams "$@";
-
-if building; then echo "Building..."; fi;
-if testing; then echo "Testing..."; fi;
-if installing; then echo "Installing..."; fi;
-
-
-# --------------------------------------------------------------------
-# Kick it off...
-# --------------------------------------------------------------------
-loadConfig;
-mkInstallDirs;
-runInstall;
-