mirror of
				https://github.com/apache/cloudstack.git
				synced 2025-11-04 00:02:37 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			170 lines
		
	
	
		
			7.5 KiB
		
	
	
	
		
			Makefile
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			170 lines
		
	
	
		
			7.5 KiB
		
	
	
	
		
			Makefile
		
	
	
		
			Executable File
		
	
	
	
	
#!/usr/bin/make -f
 | 
						|
# -*- makefile -*-
 | 
						|
# Sample debian/rules that uses debhelper.
 | 
						|
#
 | 
						|
# This file was originally written by Joey Hess and Craig Small.
 | 
						|
# As a special exception, when this file is copied by dh-make into a
 | 
						|
# dh-make output file, you may use that output file without restriction.
 | 
						|
# This special exception was added by Craig Small in version 0.37 of dh-make.
 | 
						|
#
 | 
						|
# Modified to make a template file for a multi-binary package with separated
 | 
						|
# build-arch and build-indep targets  by Bill Allombert 2001
 | 
						|
 | 
						|
DEBVERS := $(shell dpkg-parsechangelog | sed -n -e 's/^Version: //p')
 | 
						|
VERSION := $(shell echo '$(DEBVERS)' | sed -e 's/^[[:digit:]]*://' -e 's/[~-].*//')
 | 
						|
PACKAGE = $(shell dh_listpackages|head -n 1|cut -d '-' -f 1)
 | 
						|
SYSCONFDIR = "/etc"
 | 
						|
DESTDIR = "debian/tmp"
 | 
						|
 | 
						|
# Uncomment this to turn on verbose mode.
 | 
						|
export DH_VERBOSE=1
 | 
						|
 | 
						|
# This has to be exported to make some magic below work.
 | 
						|
export DH_OPTIONS
 | 
						|
 | 
						|
configure: configure-stamp
 | 
						|
configure-stamp:
 | 
						|
	dh_testdir
 | 
						|
	cp packaging/debian/replace.properties replace.properties.tmp
 | 
						|
	echo VERSION=${VERSION} >> replace.properties.tmp
 | 
						|
	touch configure-stamp
 | 
						|
 | 
						|
build: build-indep
 | 
						|
 | 
						|
build-indep: build-indep-stamp
 | 
						|
 | 
						|
build-indep-stamp: configure
 | 
						|
	mvn package -DskipTests -Dsystemvm \
 | 
						|
        -Dcs.replace.properties=replace.properties.tmp
 | 
						|
	touch $@
 | 
						|
 | 
						|
clean:
 | 
						|
	dh_testdir
 | 
						|
	dh_testroot
 | 
						|
	rm -f build-arch-stamp build-indep-stamp configure-stamp
 | 
						|
	rm -f replace.properties.tmp
 | 
						|
	dh_clean
 | 
						|
 | 
						|
install:
 | 
						|
	dh_testdir
 | 
						|
	dh_testroot
 | 
						|
	dh_prep -s
 | 
						|
 | 
						|
	# Common packages
 | 
						|
	mkdir -p $(DESTDIR)/$(SYSCONFDIR)/$(PACKAGE)
 | 
						|
	mkdir -p $(DESTDIR)/$(SYSCONFDIR)/init.d
 | 
						|
	mkdir -p $(DESTDIR)/var/cache/$(PACKAGE)
 | 
						|
	mkdir -p $(DESTDIR)/var/log/$(PACKAGE)
 | 
						|
	mkdir -p $(DESTDIR)/var/lib/$(PACKAGE)
 | 
						|
	mkdir -p $(DESTDIR)/usr/bin
 | 
						|
	mkdir -p $(DESTDIR)/usr/share
 | 
						|
 | 
						|
	# cloudstack-agent
 | 
						|
	mkdir $(DESTDIR)/$(SYSCONFDIR)/$(PACKAGE)/agent
 | 
						|
	mkdir $(DESTDIR)/var/log/$(PACKAGE)/agent
 | 
						|
	mkdir $(DESTDIR)/usr/share/$(PACKAGE)-agent
 | 
						|
	mkdir $(DESTDIR)/usr/share/$(PACKAGE)-agent/plugins
 | 
						|
	install -D agent/target/cloud-agent-$(VERSION)-SNAPSHOT.jar $(DESTDIR)/usr/share/$(PACKAGE)-agent/lib/$(PACKAGE)-agent.jar
 | 
						|
	install -D plugins/hypervisors/kvm/target/cloud-plugin-hypervisor-kvm-$(VERSION)-SNAPSHOT.jar $(DESTDIR)/usr/share/$(PACKAGE)-agent/lib/
 | 
						|
	install -D plugins/hypervisors/kvm/target/dependencies/* $(DESTDIR)/usr/share/$(PACKAGE)-agent/lib/
 | 
						|
	install -D packaging/debian/init/cloud-agent $(DESTDIR)/$(SYSCONFDIR)/init.d/$(PACKAGE)-agent
 | 
						|
	install -D agent/bindir/cloud-setup-agent.in $(DESTDIR)/usr/bin/cloudstack-setup-agent
 | 
						|
	install -D agent/bindir/cloud-ssh.in $(DESTDIR)/usr/bin/cloud-ssh
 | 
						|
	install -D agent/target/transformed/* $(DESTDIR)/$(SYSCONFDIR)/$(PACKAGE)/agent
 | 
						|
 | 
						|
	# cloudstack-management
 | 
						|
	mkdir $(DESTDIR)/$(SYSCONFDIR)/$(PACKAGE)/server
 | 
						|
	mkdir $(DESTDIR)/$(SYSCONFDIR)/$(PACKAGE)/management
 | 
						|
	mkdir -p $(DESTDIR)/$(SYSCONFDIR)/security/limits.d/
 | 
						|
	mkdir -p $(DESTDIR)/$(SYSCONFDIR)/sudoers.d/
 | 
						|
	mkdir -p $(DESTDIR)/usr/share/$(PACKAGE)-management
 | 
						|
	mkdir -p $(DESTDIR)/usr/share/$(PACKAGE)-management/webapps/client
 | 
						|
	mkdir $(DESTDIR)/usr/share/$(PACKAGE)-management/setup
 | 
						|
	mkdir $(DESTDIR)/var/log/$(PACKAGE)/management
 | 
						|
	mkdir $(DESTDIR)/var/cache/$(PACKAGE)/management
 | 
						|
	mkdir $(DESTDIR)/var/cache/$(PACKAGE)/management/work
 | 
						|
	mkdir $(DESTDIR)/var/cache/$(PACKAGE)/management/temp
 | 
						|
	mkdir $(DESTDIR)/var/log/$(PACKAGE)/ipallocator
 | 
						|
	mkdir $(DESTDIR)/var/lib/$(PACKAGE)/management
 | 
						|
	mkdir $(DESTDIR)/var/lib/$(PACKAGE)/mnt
 | 
						|
	cp -r client/target/utilities/scripts/db/* $(DESTDIR)/usr/share/$(PACKAGE)-management/setup/
 | 
						|
	cp -r client/target/cloud-client-ui-$(VERSION)-SNAPSHOT/* $(DESTDIR)/usr/share/$(PACKAGE)-management/webapps/client/
 | 
						|
	cp server/target/conf/* $(DESTDIR)/$(SYSCONFDIR)/$(PACKAGE)/server/
 | 
						|
	cp client/target/conf/* $(DESTDIR)/$(SYSCONFDIR)/$(PACKAGE)/management/
 | 
						|
 | 
						|
	# nast hack for a couple of configuration files
 | 
						|
	mv $(DESTDIR)/$(SYSCONFDIR)/$(PACKAGE)/server/cloudstack-limits.conf $(DESTDIR)/$(SYSCONFDIR)/security/limits.d/
 | 
						|
	mv $(DESTDIR)/$(SYSCONFDIR)/$(PACKAGE)/server/cloudstack-sudoers $(DESTDIR)/$(SYSCONFDIR)/sudoers.d/cloudstack
 | 
						|
	chmod 0440 $(DESTDIR)/$(SYSCONFDIR)/sudoers.d/cloudstack
 | 
						|
 | 
						|
	ln -s tomcat6-nonssl.conf $(DESTDIR)/$(SYSCONFDIR)/$(PACKAGE)/management/tomcat6.conf
 | 
						|
	mkdir -p $(DESTDIR)/$(SYSCONFDIR)/$(PACKAGE)/management/Catalina/localhost/client
 | 
						|
	mkdir -p ${DESTDIR}/usr/share/tomcat6/lib
 | 
						|
	install -D packaging/debian/init/cloud-management $(DESTDIR)/$(SYSCONFDIR)/init.d/$(PACKAGE)-management
 | 
						|
	install -D client/bindir/cloud-update-xenserver-licenses.in $(DESTDIR)/usr/bin/cloud-update-xenserver-licenses
 | 
						|
	ln -s /usr/share/tomcat6/bin $(DESTDIR)/usr/share/$(PACKAGE)-management/bin
 | 
						|
	ln -s ../../..$(SYSCONFDIR)/$(PACKAGE)/management $(DESTDIR)/usr/share/$(PACKAGE)-management/conf
 | 
						|
	ln -s ../../../usr/share/tomcat6/lib $(DESTDIR)/usr/share/$(PACKAGE)-management/lib
 | 
						|
	ln -s ../../java/$(PACKAGE)-server.jar $(DESTDIR)/usr/share/tomcat6/lib/$(PACKAGE)-server.jar
 | 
						|
	ln -s ../../../var/log/$(PACKAGE)/management $(DESTDIR)/usr/share/$(PACKAGE)-management/logs
 | 
						|
	ln -s ../../../var/cache/$(PACKAGE)/management/temp $(DESTDIR)/usr/share/$(PACKAGE)-management/temp
 | 
						|
	ln -s ../../../var/cache/$(PACKAGE)/management/work $(DESTDIR)/usr/share/$(PACKAGE)-management/work
 | 
						|
 | 
						|
	# cloudstack-common
 | 
						|
	mkdir -p $(DESTDIR)/usr/share/$(PACKAGE)-common
 | 
						|
	mkdir $(DESTDIR)/usr/share/$(PACKAGE)-common/scripts
 | 
						|
	mkdir $(DESTDIR)/usr/share/$(PACKAGE)-common/setup
 | 
						|
	mkdir $(DESTDIR)/usr/share/$(PACKAGE)-common/lib
 | 
						|
	cp -r scripts/installer $(DESTDIR)/usr/share/$(PACKAGE)-common/scripts
 | 
						|
	cp -r scripts/network $(DESTDIR)/usr/share/$(PACKAGE)-common/scripts
 | 
						|
	cp -r scripts/storage $(DESTDIR)/usr/share/$(PACKAGE)-common/scripts
 | 
						|
	cp -r scripts/util $(DESTDIR)/usr/share/$(PACKAGE)-common/scripts
 | 
						|
	cp -r scripts/vm $(DESTDIR)/usr/share/$(PACKAGE)-common/scripts
 | 
						|
	install -D client/target/utilities/bin/cloud-migrate-databases $(DESTDIR)/usr/bin
 | 
						|
	install -D client/target/utilities/bin/cloud-set-guest-password $(DESTDIR)/usr/bin
 | 
						|
	install -D client/target/utilities/bin/cloud-set-guest-sshkey $(DESTDIR)/usr/bin
 | 
						|
	install -D client/target/utilities/bin/cloud-setup-databases $(DESTDIR)/usr/bin
 | 
						|
	install -D client/target/utilities/bin/cloud-setup-management $(DESTDIR)/usr/bin
 | 
						|
	install -D client/target/cloud-client-ui-$(VERSION)-SNAPSHOT/WEB-INF/classes/vms/systemvm.iso $(DESTDIR)/usr/share/$(PACKAGE)-common/vms/systemvm.iso
 | 
						|
	# We need jasypt for cloud-install-sys-tmplt, so this is a nasty hack to get it into the right place
 | 
						|
	install -D agent/target/dependencies/jasypt-1.9.0.jar $(DESTDIR)/usr/share/$(PACKAGE)-common/lib
 | 
						|
 | 
						|
	# cloudstack-python
 | 
						|
	mkdir -p $(DESTDIR)/usr/lib/python2.7/dist-packages
 | 
						|
	cp -r python/lib/cloud* $(DESTDIR)/usr/lib/python2.7/dist-packages
 | 
						|
 | 
						|
	# cloudstack-usage
 | 
						|
	mkdir $(DESTDIR)/$(SYSCONFDIR)/$(PACKAGE)/usage
 | 
						|
	mkdir $(DESTDIR)/var/log/$(PACKAGE)/usage
 | 
						|
	mkdir $(DESTDIR)/usr/share/$(PACKAGE)-usage
 | 
						|
	mkdir $(DESTDIR)/usr/share/$(PACKAGE)-usage/plugins
 | 
						|
	install -D usage/target/cloud-usage-$(VERSION)-SNAPSHOT.jar $(DESTDIR)/usr/share/$(PACKAGE)-usage/lib/$(PACKAGE)-usage.jar
 | 
						|
	install -D usage/target/dependencies/* $(DESTDIR)/usr/share/$(PACKAGE)-usage/lib/
 | 
						|
	cp usage/target/transformed/* $(DESTDIR)/$(SYSCONFDIR)/$(PACKAGE)/usage/
 | 
						|
	install -D packaging/debian/init/cloud-usage $(DESTDIR)/$(SYSCONFDIR)/init.d/$(PACKAGE)-usage
 | 
						|
 | 
						|
	# cloudstack-awsapi
 | 
						|
	mkdir $(DESTDIR)/var/log/$(PACKAGE)/awsapi
 | 
						|
 | 
						|
	dh_installdirs
 | 
						|
	dh_install
 | 
						|
	dh_python2
 | 
						|
 | 
						|
binary: install
 | 
						|
	dh_install
 | 
						|
	dh_installchangelogs
 | 
						|
	dh_installdocs LICENSE
 | 
						|
	dh_installdocs DISCLAIMER
 | 
						|
	dh_installdocs NOTICE
 | 
						|
	dh_installdocs INSTALL.md
 | 
						|
	dh_installman
 | 
						|
	dh_link
 | 
						|
	dh_strip
 | 
						|
	dh_compress
 | 
						|
	dh_fixperms
 | 
						|
	dh_makeshlibs
 | 
						|
	dh_installdeb
 | 
						|
	dh_gencontrol
 | 
						|
	dh_md5sums
 | 
						|
	dh_builddeb
 |