checkpoint deb packaging wip
[freeside.git] / debian / rules
index d37dfd1..a8835e5 100755 (executable)
@@ -12,30 +12,37 @@ PERL   ?= /usr/bin/perl
 #PACKAGE = $(shell dh_listpackages)
 PACKAGE = freeside
 TMP     = $(CURDIR)/debian/$(PACKAGE)
-DBC_SCRIPTS = $(TMP)/usr/share/dbconfig-common/scripts/freeside
+#DBC_SCRIPTS = $(TMP)/usr/share/dbconfig-common/scripts/freeside
 
-#this is gotten from dbconfig-common
-DB_TYPE = db_type_is_configured_during_pkg_install_by_dbconfig-common_not_at_build_time
+##this is gotten from dbconfig-common
+#DB_TYPE = db_type_is_configured_during_pkg_install_by_dbconfig-common_not_at_build_time
 
 #no chance, it doesn't get backslash-interpolted now...
-#DEBVERSION                    = `head -1 debian/changelog | cut -d')' -f1 | cut -c11-`
-DEBVERSION                    = 1.7.3~rc2-1
-export VERSION                = $(DEBVERSION) (Debian)
+##DEBVERSION                    = `head -1 debian/changelog | cut -d')' -f1 | cut -c11-`
+#DEBVERSION                    = 1.7.3~rc2-1
+#export VERSION                = $(DEBVERSION) (Debian)
 
-export FREESIDE_CONF          = /etc/freeside
-export FREESIDE_LOG           = /var/log/freeside
-export FREESIDE_LOCK          = /var/lock/freeside
-export FREESIDE_CACHE         = $(TMP)/var/cache/freeside
-FREESIDE_CACHE         = $(TMP)/var/cache/freeside
+#export FREESIDE_CONF          = /etc/freeside
+#export FREESIDE_LOG           = /var/log/freeside
+#export FREESIDE_LOCK          = /var/lock/freeside
+#export FREESIDE_CACHE         = $(TMP)/var/cache/freeside
+#FREESIDE_CACHE         = $(TMP)/var/cache/freeside
 
 #XXX huh?
-export FREESIDE_EXPORT        = /var/spool/freeside
+#export FREESIDE_EXPORT        = /var/spool/freeside
+
+export FREESIDE_CONF = $(TMP)/usr/local/etc/freeside
+export FREESIDE_LOG = $(TMP)/usr/local/etc/freeside
+export FREESIDE_LOCK = $(TMP)/usr/local/etc/freeside
+export FREESIDE_CACHE = $(TMP)/usr/local/etc/freeside
+export FREESIDE_EXPORT = $(TMP)/usr/local/etc/freeside
 
 #XXX own subdir?
-export MASON_HANDLER          = $(TMP)-webui/usr/share/freeside/handler.pl
+#export MASON_HANDLER          = $(TMP)-webui/usr/share/freeside/handler.pl
+export MASON_HANDLER=$(TMP)-webui/usr/local/etc/freeside/handler.pl
 
-export APACHE_VERSION         = 2
-export FREESIDE_DOCUMENT_ROOT = $(TMP)-webui/usr/share/freeside/www
+#export FREESIDE_DOCUMENT_ROOT = $(TMP)-webui/usr/share/freeside/www
+export FREESIDE_DOCUMENT_ROOT = $(TMP)-webui/var/www/freeside
 export INIT_FILE              = $(TMP).init
 export INIT_INSTALL           = /bin/true
 export HTTPD_RESTART          = /bin/true
@@ -49,22 +56,22 @@ export INSTALLGROUP           = adm
 export SELFSERVICE_MACHINES   = 
 
 #prompt ?   XXX these are runtime, not buildtime :/
-export RT_DOMAIN              = `dnsdomainname`
-export RT_TIMEZONE            = `cat /etc/timezone`
+#export RT_DOMAIN              = `dnsdomainname`
+#export RT_TIMEZONE            = `cat /etc/timezone`
 
-export HOSTNAME               = `hostname -f`
-export FREESIDE_URL           = http://$(HOSTNAME)/freeside/
+#export HOSTNAME               = `hostname -f`
+#export FREESIDE_URL           = http://$(HOSTNAME)/freeside/
 
 #specific to deb pkg, for purposes of saving off a permanent copy of default
 #config for postinst and that sort of thing
-export DIST_CONF           = $(TMP)/usr/share/freeside/default_conf
+#export DIST_CONF           = $(TMP)/usr/share/freeside/default_conf
 
 #XXX yuck.  proper RT layout is entirely necessary
 #this seems to infect way to much of RT with the build location, requiring
 # a kludge to hack it out afterwords.  look into using fakeroot (didn't
 # realize it would need to be explicit argh)
 # (but leaving it for now, otherwise can't get RT to put files where we need em)
-export RT_PATH                = $(TMP)/var/opt/freeside/rt
+#export RT_PATH                = $(TMP)/var/opt/freeside/rt
 
 # This has to be exported to make some magic below work.
 export DH_OPTIONS
@@ -114,14 +121,14 @@ install-stamp: build-stamp
 
         #false laziness w/install-perl-modules now
        #install this for postinst later (no create-config)
-       install -d $(DIST_CONF)
+       ##install -d $(DIST_CONF)
        #install conf/[a-z]* $(DEFAULT_CONF)
        #CVS is not [a-z]
-       install `ls -d conf/[a-z]* | grep -v CVS` $(DIST_CONF)
+       ##install `ls -d conf/[a-z]* | grep -v CVS` $(DIST_CONF)
 
        install -d $(FREESIDE_DOCUMENT_ROOT)
        install -d $(FREESIDE_CACHE)/masondata #MASONDATA
-       $(MAKE) -e install-docs
+       $(MAKE) -e DESTDIR=$(TMP)-webui install-docs
 
        #hack the build dir out of Freeside too.  oh yeah, sucky.
        perl -p -i -e "\
@@ -131,71 +138,75 @@ install-stamp: build-stamp
          ${TMP}/usr/share/perl5/FS/*/* \
          ${TMP}/usr/bin/*
 
-       rm -r $(FREESIDE_DOCUMENT_ROOT).*
+       #rm -r $(FREESIDE_DOCUMENT_ROOT).*
 
        install -d $(APACHE_CONF)
-       install debian/freeside.apache-alias.conf $(APACHE_CONF)/freeside-alias.conf
-       FREESIDE_DOCUMENT_ROOT=/usr/share/freeside/www MASON_HANDLER=/usr/share/freeside/handler.pl FREESIDE_CONF=/etc/freeside $(MAKE) -e install-apache
+       #install debian/freeside.apache-alias.conf $(APACHE_CONF)/freeside-alias.conf
+       #FREESIDE_DOCUMENT_ROOT=/usr/share/freeside/www MASON_HANDLER=/usr/share/freeside/handler.pl FREESIDE_CONF=/etc/freeside $(MAKE) -e install-apache
+       $(MAKE) -e install-apache
 
        $(MAKE) -e install-init
 
        #RT
        #(configure-rt)
-
-       # XXX need to adjust db-type, db-database, db-rt-user, db-rt-pass
-       # based on info from dbc
-       ( cd rt; \
-         cp config.layout.in config.layout; \
-         perl -p -i -e "\
-           s'%%%FREESIDE_DOCUMENT_ROOT%%%'${FREESIDE_DOCUMENT_ROOT}'g;\
-           s'%%%MASONDATA%%%'${FREESIDE_CACHE}/masondata'g;\
-         " config.layout; \
-         ./configure --prefix=${RT_PATH} \
-                     --enable-layout=Freeside \
-                     --with-db-type=Pg \
-                     --with-db-dba=freeside \
-                     --with-db-database=_DBC_DBNAME_ \
-                     --with-db-rt-user=_DBC_DBUSER_ \
-                     --with-db-rt-pass=_DBC_DBPASS_ \
-                     --with-web-user=freeside \
-                     --with-web-group=freeside \
-                     --with-rt-group=freeside \
-       )
-
-       #(create-rt)
-       install -d $(RT_PATH)
-       ( cd rt; make install )
-       #hack the build dir out of RT.  yeah, sucky.
-       perl -p -i -e "\
-         s'${TMP}''g;\
-       " ${RT_PATH}/etc/RT_Config.pm \
-         ${RT_PATH}/lib/RT.pm \
-         ${RT_PATH}/bin/mason_handler.fcgi \
-         ${RT_PATH}/bin/mason_handler.scgi \
-         ${RT_PATH}/bin/standalone_httpd \
-         ${RT_PATH}/bin/webmux.pl \
-         ${RT_PATH}/bin/rt-crontool \
-         ${RT_PATH}/sbin/rt-dump-database \
-         ${RT_PATH}/sbin/rt-setup-database
-       
-       #hack @INC dir out of RT (well, handler.pl) too.
-       perl -p -i -e "\
-         s'/opt/rt3/'/var/opt/freeside/rt/'g;\
-       " ${TMP}-webui/usr/share/freeside/handler.pl
-
-       mv ${RT_PATH}/etc/RT_Config.pm ${RT_PATH}/etc/RT_Config.pm.dbc
-
-       perl -p -i -e "\
-         s'%%%RT_DOMAIN%%%'${RT_DOMAIN}'g;\
-         s'%%%RT_TIMEZONE%%%'${RT_TIMEZONE}'g;\
-         s'%%%FREESIDE_URL%%%'${FREESIDE_URL}'g;\
-       " ${RT_PATH}/etc/RT_SiteConfig.pm
-
-       install -D debian/dbconfig-common.install $(DBC_SCRIPTS)/install/pgsql
-       install -D debian/dbconfig-common.install $(DBC_SCRIPTS)/install/mysql
+       $(MAKE) -e configure-rt
+
+       ## XXX need to adjust db-type, db-database, db-rt-user, db-rt-pass
+       ## based on info from dbc
+       #( cd rt; \
+       #  cp config.layout.in config.layout; \
+       #  perl -p -i -e "\
+       #    s'%%%FREESIDE_DOCUMENT_ROOT%%%'${FREESIDE_DOCUMENT_ROOT}'g;\
+       #    s'%%%MASONDATA%%%'${FREESIDE_CACHE}/masondata'g;\
+       #  " config.layout; \
+       #  ./configure --prefix=${RT_PATH} \
+       #              --enable-layout=Freeside \
+       #              --with-db-type=Pg \
+       #              --with-db-dba=freeside \
+       #              --with-db-database=_DBC_DBNAME_ \
+       #              --with-db-rt-user=_DBC_DBUSER_ \
+       #              --with-db-rt-pass=_DBC_DBPASS_ \
+       #              --with-web-user=freeside \
+       #              --with-web-group=freeside \
+       #              --with-rt-group=freeside \
+       #)
+
+       ##(create-rt)
+       #$(MAKE) -e create-rt
+
+       #install -d $(RT_PATH)
+       #( cd rt; make install )
+       ##hack the build dir out of RT.  yeah, sucky.
+       #perl -p -i -e "\
+       #  s'${TMP}''g;\
+       #" ${RT_PATH}/etc/RT_Config.pm \
+       #  ${RT_PATH}/lib/RT.pm \
+       #  ${RT_PATH}/bin/mason_handler.fcgi \
+       #  ${RT_PATH}/bin/mason_handler.scgi \
+       #  ${RT_PATH}/bin/standalone_httpd \
+       #  ${RT_PATH}/bin/webmux.pl \
+       #  ${RT_PATH}/bin/rt-crontool \
+       #  ${RT_PATH}/sbin/rt-dump-database \
+       #  ${RT_PATH}/sbin/rt-setup-database
+       #
+       ##hack @INC dir out of RT (well, handler.pl) too.
+       #perl -p -i -e "\
+       #  s'/opt/rt3/'/var/opt/freeside/rt/'g;\
+       #" ${TMP}-webui/usr/share/freeside/handler.pl
+
+       #mv ${RT_PATH}/etc/RT_Config.pm ${RT_PATH}/etc/RT_Config.pm.dbc
+
+       #perl -p -i -e "\
+       #  s'%%%RT_DOMAIN%%%'${RT_DOMAIN}'g;\
+       #  s'%%%RT_TIMEZONE%%%'${RT_TIMEZONE}'g;\
+       #  s'%%%FREESIDE_URL%%%'${FREESIDE_URL}'g;\
+       #" ${RT_PATH}/etc/RT_SiteConfig.pm
+
+       #install -D debian/dbconfig-common.install $(DBC_SCRIPTS)/install/pgsql
+       #install -D debian/dbconfig-common.install $(DBC_SCRIPTS)/install/mysql
        
-       install -D debian/dbconfig-common.upgrade $(DBC_SCRIPTS)/upgrade/pgsql/$(DEBVERSION)
-       install -D debian/dbconfig-common.upgrade $(DBC_SCRIPTS)/upgrade/mysql/$(DEBVERSION)
+       #install -D debian/dbconfig-common.upgrade $(DBC_SCRIPTS)/upgrade/pgsql/$(DEBVERSION)
+       #install -D debian/dbconfig-common.upgrade $(DBC_SCRIPTS)/upgrade/mysql/$(DEBVERSION)
        
        dh_install
 
@@ -207,7 +218,6 @@ binary-arch:
 binary-indep: build install
        dh_testdir
        dh_testroot
-       dh_installchangelogs ChangeLog
        dh_installdocs #freeside.docs README AGPL
        dh_installexamples eg/*
 #      dh_installmenu