Backport staff client makefile enhancements from trunk
authordbs <dbs@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Wed, 10 Dec 2008 04:39:38 +0000 (04:39 +0000)
committerdbs <dbs@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Wed, 10 Dec 2008 04:39:38 +0000 (04:39 +0000)
git-svn-id: svn://svn.open-ils.org/ILS/branches/rel_1_4@11493 dcc99617-32d9-48b4-a31d-7c20da2025e4

Open-ILS/xul/staff_client/Makefile.am

index 3746816..e5d1e51 100644 (file)
@@ -5,30 +5,46 @@
 
 export STAFF_CLIENT_BUILD_ID = $$(/bin/cat build/BUILD_ID)
 OPENSRF_JSLIBS = "$(OPENSRF_LIBS)/javascript"
+CHROME_LOCALES = $$(ls -1 chrome/locale)
+SKIN_CSS = $$(ls -1 server/skin/*css | sed -e "s/.css/_custom.css/")
 
 install-exec-local: build
 
-build: build_dir generated open-ils stamp
+build: build_dir chrome2remote localize_manifest generated custom_skins open-ils stamp
        @echo To test the staff client:
        @echo "  cd build/"
        @echo "  xulrunner application.ini"
 
 build_dir:
        @echo ' * Creating and populating build/ '
-       mkdir -p build/
-       cp -R chrome build/
-       cp -R server build/
-       cp -R defaults build/
-       cp -R components build/
-       cp application.ini build/
-       cp -R build/chrome/content/util/ build/server/
-       cp -R build/chrome/content/auth/ build/server/
-       cp build/chrome/content/main/constants.js build/server/main/constants.js
-       cp build/chrome/content/main/simple_auth.xul build/server/main/simple_auth.xul
-       cp build/chrome/content/main/bindings.xml build/server/main/bindings.xml
-       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
-       external/prune_dirs.sh build/
+       @mkdir -p build/
+       @cp -fR chrome build/
+       @cp -fR server build/
+       @cp -fR defaults build/
+       @cp -fR components build/
+       @cp application.ini build/
+       @cp -fR build/chrome/content/util/ build/server/
+       @cp -fR build/chrome/content/auth/ build/server/
+       @cp build/chrome/content/main/constants.js build/server/main/constants.js
+       @cp build/chrome/content/main/simple_auth.xul build/server/main/simple_auth.xul
+       @cp build/chrome/content/main/bindings.xml build/server/main/bindings.xml
+       @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
+       @external/prune_dirs.sh build/
+
+# Convert chrome to remote for server localization
+chrome2remote:
+       @sed -i 's/chrome:\/\/open_ils_staff_client\/locale\//\/xul\/server\/locale\/<\!--#echo var=locale-->\//' build/server/auth/verify_credentials.xul
+       @sed -i 's/chrome:\/\/open_ils_staff_client\/locale\//\/xul\/server\/locale\/<\!--#echo var=locale-->\//' build/server/main/simple_auth.xul
+       @for loc in $(CHROME_LOCALES); do \
+               cp -fr chrome/locale/$$loc build/server/locale/. ; \
+       done;
+
+# Update the manifest for our installed locales
+localize_manifest:
+       @for loc in $(CHROME_LOCALES) ; do \
+               if [ "$$loc" != "en-US" ]; then ( echo "locale open_ils_staff_client $$loc locale/$$loc/" >> build/chrome/chrome.manifest ) ; fi; \
+       done;
 
 stamp:
        @/bin/date +"%Y%m%d.%H%M%S" > build/BUILD_ID
@@ -45,12 +61,15 @@ stamp:
 
 generated:
        @echo ' * Grabbing lang.dtd from the OPAC code '
-       cp @top_srcdir@/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 @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/
-
+       @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_skins:
+       @for skin in $(SKIN_CSS); do \
+               if [ ! -f "$$skin" ]; then ( touch build/"$$skin" ); fi \
+       done;