summaryrefslogtreecommitdiffstats
path: root/Makefile
diff options
context:
space:
mode:
authorOliver Tappe2007-06-15 16:41:35 +0200
committerOliver Tappe2007-06-15 16:41:35 +0200
commit12e050a766746bf80f34d4659d47049c0bbdd7be (patch)
treef542b6e2d465879b1796569d4bd1d6797c778698 /Makefile
parent* obsoleted two more files (diff)
downloadcore-12e050a766746bf80f34d4659d47049c0bbdd7be.tar.gz
core-12e050a766746bf80f34d4659d47049c0bbdd7be.tar.xz
core-12e050a766746bf80f34d4659d47049c0bbdd7be.zip
* simplified use of PATH-variables to only the top-level set, all the
others will cease to be settable by the user soon * adjusted builddebianpackage accordingly (and did a cleanup along the way) Felix: please review, I hope I didn't mess it up... git-svn-id: http://svn.openslx.org/svn/openslx/trunk@1167 95ad53e4-c205-0410-b2fa-d234c58c8868
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile128
1 files changed, 52 insertions, 76 deletions
diff --git a/Makefile b/Makefile
index 8de12953..51bc7295 100644
--- a/Makefile
+++ b/Makefile
@@ -7,7 +7,6 @@
#
# (c) 2006, 2007 - OpenSLX GmbH
-DESTDIR = /
# enforce the use of bash (/bin/sh might be a link to incomplete shells)
SHELL = /bin/bash
@@ -24,15 +23,9 @@ endif
ifeq ($(SLX_BASE_PATH),)
SLX_BASE_PATH = /opt/openslx
endif
-ifeq ($(SLX_BIN_PATH),)
- SLX_BIN_PATH = ${SLX_BASE_PATH}/bin
-endif
-ifeq ($(SLX_SHARE_PATH),)
- SLX_SHARE_PATH = ${SLX_BASE_PATH}/share
-endif
-ifeq ($(SLX_VMWARE_PATH),)
- SLX_VMWARE_PATH = ${SLX_BASE_PATH}/vmware
-endif
+SLX_BIN_PATH = ${SLX_BASE_PATH}/bin
+SLX_SHARE_PATH = ${SLX_BASE_PATH}/share
+SLX_VMWARE_PATH = ${SLX_BASE_PATH}/vmware
ifeq ($(SLX_PRIVATE_PATH),)
SLX_PRIVATE_PATH = /var/opt/openslx
@@ -41,12 +34,8 @@ endif
ifeq ($(SLX_PUBLIC_PATH),)
SLX_PUBLIC_PATH = /srv/openslx
endif
-ifeq ($(SLX_EXPORT_PATH),)
- SLX_EXPORT_PATH = ${SLX_PUBLIC_PATH}/export
-endif
-ifeq ($(SLX_TFTPBOOT_PATH),)
- SLX_TFTPBOOT_PATH = ${SLX_PUBLIC_PATH}/tftpboot
-endif
+SLX_EXPORT_PATH = ${SLX_PUBLIC_PATH}/export
+SLX_TFTPBOOT_PATH = ${SLX_PUBLIC_PATH}/tftpboot
ifeq ($(SLX_TEMP_PATH),)
SLX_TEMP_PATH = /tmp
@@ -55,8 +44,6 @@ endif
ifeq ($(SLX_INSTALL_LOG),)
SLX_INSTALL_LOG = install.log
endif
-#When adding new directory variables above, consider to add them to the
-#packaging tool for .deb packages too.
tarball:
@OPENSLX_VERSION_SVNREV=$$( svnversion); \
@@ -149,106 +136,94 @@ supported."; \
echo $${DEFAULT_DB_TYPE} >DEFAULT-DB-TYPE; \
fi; \
echo "Installing OpenSLX project files"; \
- mkdir -p $(DESTDIR)$(SLX_CONFIG_PATH) \
- -p $(DESTDIR)$(SLX_BASE_PATH)/lib \
- -p $(DESTDIR)$(SLX_BIN_PATH) \
- -p $(DESTDIR)$(SLX_SHARE_PATH)/templates \
- -p $(DESTDIR)$(SLX_SHARE_PATH)/initramfs \
- -p $(DESTDIR)$(SLX_SHARE_PATH)/busybox \
- -p $(DESTDIR)$(SLX_SHARE_PATH)/squashfs \
- -p $(DESTDIR)$(SLX_PRIVATE_PATH)/config/default/initramfs \
- -p $(DESTDIR)$(SLX_PRIVATE_PATH)/config/default/rootfs \
- -p $(DESTDIR)$(SLX_PRIVATE_PATH)/db \
- -p $(DESTDIR)$(SLX_PRIVATE_PATH)/stage1 \
- -p $(DESTDIR)$(SLX_PUBLIC_PATH) \
- -p $(DESTDIR)$(SLX_TFTPBOOT_PATH) \
- -p $(DESTDIR)$(SLX_SHARE_PATH)/themes; \
- for dir in $(USR_BIN_PATH); do \
- test -d $(DESTDIR)$${dir} || \
- mkdir -p $(DESTDIR)$${dir}; \
- done;
+ mkdir -p $(SLX_BUILD_PATH)$(SLX_CONFIG_PATH) \
+ -p $(SLX_BUILD_PATH)$(SLX_BASE_PATH)/lib \
+ -p $(SLX_BUILD_PATH)$(SLX_BIN_PATH) \
+ -p $(SLX_BUILD_PATH)$(SLX_SHARE_PATH)/templates \
+ -p $(SLX_BUILD_PATH)$(SLX_SHARE_PATH)/initramfs \
+ -p $(SLX_BUILD_PATH)$(SLX_SHARE_PATH)/busybox \
+ -p $(SLX_BUILD_PATH)$(SLX_SHARE_PATH)/squashfs \
+ -p $(SLX_BUILD_PATH)$(SLX_PRIVATE_PATH)/config/default/initramfs \
+ -p $(SLX_BUILD_PATH)$(SLX_PRIVATE_PATH)/config/default/rootfs \
+ -p $(SLX_BUILD_PATH)$(SLX_SHARE_PATH)/themes \
+ -p $(SLX_BUILD_PATH)${USR_BIN_PATH};
@ # copy license
- @cp COPYING $(DESTDIR)$(SLX_BASE_PATH)/;
+ @cp COPYING $(SLX_BUILD_PATH)$(SLX_BASE_PATH)/;
- @ # copy initramfs generator scripts (and inject SLX_CONFIG_PATH, SLX_SHARE_PATH on the way):
- @cp ./initramfs/mkdxsinitrd $(DESTDIR)$(SLX_BIN_PATH)/; \
+ @ # copy initramfs generator scripts (and inject SLX_CONFIG_PATH, SLX_BASE_PATH on the way):
+ @cp ./initramfs/mkdxsinitrd $(SLX_BUILD_PATH)$(SLX_BIN_PATH)/; \
sed -e "s,@@@SLX_CONFIG_PATH@@@,$(SLX_CONFIG_PATH)," \
- -e "s,@@@SLX_SHARE_PATH@@@,$(SLX_SHARE_PATH)," \
- -i $(DESTDIR)$(SLX_BIN_PATH)/mkdxsinitrd;
+ -e "s,@@@SLX_BASE_PATH@@@,$(SLX_BASE_PATH)," \
+ -i $(SLX_BUILD_PATH)$(SLX_BIN_PATH)/mkdxsinitrd;
@ # copy all PERL-scripts and their required modules:
- @cp bin/slx* $(DESTDIR)$(SLX_BIN_PATH)/; \
- cp config-db/slx* $(DESTDIR)$(SLX_BIN_PATH)/; \
- cp installer/slx* $(DESTDIR)$(SLX_BIN_PATH)/; \
+ @cp bin/slx* $(SLX_BUILD_PATH)$(SLX_BIN_PATH)/; \
+ cp config-db/slx* $(SLX_BUILD_PATH)$(SLX_BIN_PATH)/; \
+ cp installer/slx* $(SLX_BUILD_PATH)$(SLX_BIN_PATH)/; \
tar --exclude=.svn -cp -C lib OpenSLX \
- | tar -xp -C $(DESTDIR)$(SLX_BASE_PATH)/lib; \
+ | tar -xp -C $(SLX_BUILD_PATH)$(SLX_BASE_PATH)/lib; \
tar --exclude=.svn --exclude *.example \
-cp -C lib distro-info \
- | tar -xp -C $(DESTDIR)$(SLX_SHARE_PATH); \
+ | tar -xp -C $(SLX_BUILD_PATH)$(SLX_SHARE_PATH); \
tar --exclude=.svn --exclude prereqfiles --exclude trusted-package-keys/* \
-cp -C lib distro-info \
- | tar -xp -C $(DESTDIR)$(SLX_CONFIG_PATH); \
+ | tar -xp -C $(SLX_BUILD_PATH)$(SLX_CONFIG_PATH); \
tar --exclude=.svn -cp -C config-db OpenSLX \
- | tar -xp -C $(DESTDIR)$(SLX_BASE_PATH)/lib; \
+ | tar -xp -C $(SLX_BUILD_PATH)$(SLX_BASE_PATH)/lib; \
tar --exclude=.svn -cp -C installer OpenSLX \
- | tar -xp -C $(DESTDIR)$(SLX_BASE_PATH)/lib; \
+ | tar -xp -C $(SLX_BUILD_PATH)$(SLX_BASE_PATH)/lib; \
@ # link all binaries & scripts into user-path:
- @ln -sf $(SLX_BIN_PATH)/slx* $(DESTDIR)$(USR_BIN_PATH)/; \
- ln -sf $(SLX_BIN_PATH)/mkdxsinitrd $(DESTDIR)$(USR_BIN_PATH)/; \
+ @ln -sf $(SLX_BIN_PATH)/slx* $(SLX_BUILD_PATH)$(USR_BIN_PATH)/; \
+ ln -sf $(SLX_BIN_PATH)/mkdxsinitrd $(SLX_BUILD_PATH)$(USR_BIN_PATH)/; \
@ # copy shareable data:
@cd initramfs/initrd-stuff; tar --exclude=.svn -cp * | \
- tar -xp -C $(DESTDIR)$(SLX_SHARE_PATH)/initramfs; cd ../..; \
+ tar -xp -C $(SLX_BUILD_PATH)$(SLX_SHARE_PATH)/initramfs; cd ../..; \
tar --exclude=.svn -cp -C initramfs distro-specs | \
- tar -xp -C $(DESTDIR)$(SLX_SHARE_PATH); \
+ tar -xp -C $(SLX_BUILD_PATH)$(SLX_SHARE_PATH); \
cp -p config-db/PXE-template.example \
- $(DESTDIR)$(SLX_CONFIG_PATH)/; \
+ $(SLX_BUILD_PATH)$(SLX_CONFIG_PATH)/; \
cp -a installer/default_files/machine-setup.default \
- $(DESTDIR)$(SLX_SHARE_PATH)/templates/; \
+ $(SLX_BUILD_PATH)$(SLX_SHARE_PATH)/templates/; \
cp -a installer/default_files/hwdata/{pcitable.local,Cards.local} \
- $(DESTDIR)$(SLX_SHARE_PATH)/templates/; \
+ $(SLX_BUILD_PATH)$(SLX_SHARE_PATH)/templates/; \
tar --exclude=.svn -cp -C installer/default_files tftpboot | \
- tar -xp -C $(DESTDIR)$(SLX_SHARE_PATH); \
+ tar -xp -C $(SLX_BUILD_PATH)$(SLX_SHARE_PATH); \
cd theming; tar --exclude=.svn -cp * | \
- tar -xp -C $(DESTDIR)$(SLX_SHARE_PATH)/themes; cd ..; \
+ tar -xp -C $(SLX_BUILD_PATH)$(SLX_SHARE_PATH)/themes; cd ..; \
cp -pP tools/busybox{,.links,.x86_64,.i586} \
- $(DESTDIR)$(SLX_SHARE_PATH)/busybox/; \
- cp -p tools/mksquashfs $(DESTDIR)$(SLX_SHARE_PATH)/squashfs/; \
+ $(SLX_BUILD_PATH)$(SLX_SHARE_PATH)/busybox/; \
+ cp -p tools/mksquashfs $(SLX_BUILD_PATH)$(SLX_SHARE_PATH)/squashfs/; \
@ # create pre-/postinit scripts for us in initramfs:
@echo -e "#!/bin/sh\n#\n# This script allows the local admin to \
extend the\n# capabilities at the beginning of the initramfs (stage3). \
The toolset is rather\n# restricted and you have to keep in mind that \
stage4 rootfs has the\n# prefix '/mnt'." \
- > $(DESTDIR)$(SLX_PRIVATE_PATH)/config/default/initramfs/preinit.local; \
+ > $(SLX_BUILD_PATH)$(SLX_PRIVATE_PATH)/config/default/initramfs/preinit.local; \
echo -e "#!/bin/sh\n#\n# This script allows the local admin to \
extend the\n# capabilities at the end of the initramfs (stage3). The \
toolset is rather\n# restricted and you have to keep in mind that stage4 \
rootfs has the\n# prefix '/mnt'. But you might use some special slx \
functions via\n# inclusion: '. /etc/functions' ..." \
- > $(DESTDIR)$(SLX_PRIVATE_PATH)/config/default/initramfs/postinit.local; \
- chmod u+x $(DESTDIR)$(SLX_PRIVATE_PATH)/config/default/initramfs/*init.local; \
+ > $(SLX_BUILD_PATH)$(SLX_PRIVATE_PATH)/config/default/initramfs/postinit.local; \
+ chmod u+x $(SLX_BUILD_PATH)$(SLX_PRIVATE_PATH)/config/default/initramfs/*init.local; \
@ # create complete default settings and empty local settings file:
@echo -e "# default setup for OpenSLX-installation\
\nSLX_BASE_PATH=${SLX_BASE_PATH}\
-\nSLX_BIN_PATH=${SLX_BIN_PATH}\
\nSLX_CONFIG_PATH=${SLX_CONFIG_PATH}\
-\nSLX_EXPORT_PATH=${SLX_EXPORT_PATH}\
\nSLX_PRIVATE_PATH=${SLX_PRIVATE_PATH}\
\nSLX_PUBLIC_PATH=${SLX_PUBLIC_PATH}\
-\nSLX_SHARE_PATH=${SLX_SHARE_PATH}\
-\nSLX_TEMP_PATH=${SLX_TEMP_PATH}\
-\nSLX_TFTPBOOT_PATH=${SLX_TFTPBOOT_PATH}\
-\nSLX_VMWARE_PATH=${SLX_VMWARE_PATH}\n" \
- > $(DESTDIR)$(SLX_SHARE_PATH)/settings.default; \
- test -e $(DESTDIR)$(SLX_CONFIG_PATH)/settings || \
+\nSLX_TEMP_PATH=${SLX_TEMP_PATH}\n" \
+ > $(SLX_BUILD_PATH)$(SLX_SHARE_PATH)/settings.default; \
+ test -e $(SLX_BUILD_PATH)$(SLX_CONFIG_PATH)/settings || \
echo -e "# Local setup for OpenSLX (overrides default settings).\
\n#\n# Please look at $(SLX_SHARE_PATH)/settings.default and the docs to learn\
\n# about the available options.\n" \
- > $(DESTDIR)$(SLX_CONFIG_PATH)/settings; \
+ > $(SLX_BUILD_PATH)$(SLX_CONFIG_PATH)/settings; \
@ # create slxversion script:
@if test -e REVISION; then \
@@ -261,9 +236,9 @@ functions via\n# inclusion: '. /etc/functions' ..." \
OPENSLX_SVN_SNAPSHOT="1"; \
. ./VERSIONS; \
echo -e "#! /bin/sh\n\necho $${OPENSLX_VERSION_STRING}" \
- > $(DESTDIR)${SLX_BIN_PATH}/slxversion; \
- chmod a+x $(DESTDIR)${SLX_BIN_PATH}/slxversion; \
- ln -sf $(SLX_BIN_PATH)/slxversion $(DESTDIR)$(USR_BIN_PATH)/; \
+ > $(SLX_BUILD_PATH)${SLX_BIN_PATH}/slxversion; \
+ chmod a+x $(SLX_BUILD_PATH)${SLX_BIN_PATH}/slxversion; \
+ ln -sf $(SLX_BIN_PATH)/slxversion $(SLX_BUILD_PATH)$(USR_BIN_PATH)/; \
@ # set default db-type:
@DEFAULT_DB_TYPE=$$(cat DEFAULT-DB-TYPE); \
@@ -282,9 +257,10 @@ vmware_install:
uninstall:
@echo "Uninstalling openslx.org project files but keeping configs \
and stage1"
- @echo "files in $(SLX_PRIVATE_PATH) (please remove manually)"
+ @echo "files in $(SLX_CONFIG_PATH) (please remove manually)"
@rm -rf $(SLX_BASE_PATH)
@rm -rf $(SLX_PUBLIC_PATH)
+ @echo "files in $(SLX_PRIVATE_PATH) (please remove manually)"
@rm -f $(USR_BIN_PATH)/slx*
@rm -f $(USR_BIN_PATH)/mkdxsinitrd