UPLOAD_SH = $(MODDIR)/devutil/scripts/upload.sh CLEAN += $(wildcard *.spec *.rpm *~ *.rpmrc *.dist .*.swp) DIST_SRC_DIR = dist/src/$(PROJECT)-$(DIST_VERSION) DIST_PCKG_DIR = dist/pckg PCKG_TAR = $(PROJECT)-$(DIST_VERSION).tar.gz PCKG_RPM_RUN_I386 = $(PROJECT)-run-$(DIST_VERSION).i386.rpm PCKG_RPM_DEVEL_I386 = $(PROJECT)-devel-$(DIST_VERSION).i386.rpm PCKG_RPM_SRC = $(PROJECT)-$(DIST_VERSION).src.rpm #TARGET_HOST = ftp.jannet.de TARGET_HOST = nb02 TARGET_HOST_LOGIN = root PCKG_ROOT = $(FTP_PCKG_DIR)/$(PROJECT) CURRENT_SRC = $(PCKG_ROOT)/src/$(PCKG_TAR) CURRENT_RPM_RUN_I386 = $(PCKG_ROOT)/rpm/run/$(PCKG_RPM_RUN_I386) CURRENT_RPM_DEVEL_I386 = $(PCKG_ROOT)/rpm/devel/$(PCKG_RPM_DEVEL_I386) CURRENT_RPM_SRC = $(PCKG_ROOT)/rpm/src/$(PCKG_RPM_SRC) test: echo $(REMOTE_TARGETS) REMOTE_TARGET_PREFIX = rsync_ssh://$(TARGET_HOST_LOGIN)@$(TARGET_HOST):/usr/local/ftp REMOTE_TARGETS = \ $(REMOTE_TARGET_PREFIX)$(CURRENT_SRC):640:750:jan.ytsrc \ $(REMOTE_TARGET_PREFIX)$(PCKG_ROOT)/CURRENT_SRC:640:750:jan.ytsrc \ $(REMOTE_TARGET_PREFIX)$(CURRENT_RPM_RUN_I386):640:750:jan.ytrun \ $(REMOTE_TARGET_PREFIX)$(PCKG_ROOT)/CURRENT_RPM_RUN_I386:640:750:jan.ytrun \ $(REMOTE_TARGET_PREFIX)$(CURRENT_RPM_DEVEL_I386):640:750:jan.ytdev \ $(REMOTE_TARGET_PREFIX)$(PCKG_ROOT)/CURRENT_RPM_DEVEL_I386:640:750:jan.ytdev \ $(REMOTE_TARGET_PREFIX)$(CURRENT_RPM_SRC):640:750:jan.ytsrc \ $(REMOTE_TARGET_PREFIX)$(PCKG_ROOT)/CURRENT_RPM_SRC:640:750:jan.ytsrc DIST_FILES = $(shell echo $(REMOTE_TARGETS) | sed 's/\b.*\///g; s/:.*\b//g') # $(DIST_FILE_TAR) \ # $(DIST_FILE_RPM_RUN_I386) \ # $(DIST_FILE_RPM_DEVEL_I386) \ # $(DIST_FILE_RPM_SRC) #BUILD_ROOT = /usr/src/packages/BUILD RPMS_DIR = /usr/src/packages/RPMS/i386 SRPMS_DIR = /usr/src/packages/SRPMS #TARGET_DIR_SRC = $(FTP_PCKG_DIR)/src #TARGET_DIR_RPM_RUN_I386 = $(FTP_PCKG_DIR)/rpm/run/i386 #TARGET_DIR_RPM_DEVEL_I386 = $(FTP_PCKG_DIR)/rpm/devel/i386 #TARGET_DIR_RPM_SRC = $(FTP_PCKG_DIR)/rpm/src #TARGET_OWNER = jan #TARGET_GROUP = jannet #TARGET_FILE_MODE = 644 #TARGET_DIR_MODE = 755 #TARGET_DIR = $(TARGET_DIR_RPM)/$(PROJECT) #REMOTE_FILES = \ # $(TARGET_DIR_RPM_SRC)/$(PCKG_RPM_SRC) \ # $(TARGET_DIR_RPM_I386)/, $(PCKG_RPM_I386)) \ # $(TARGET_DIR_SRC)/$(PCKG_TAR) #REMOTE_TARGETS = \ # $(addsuffix :$(TARGET_FILE_MODE):$(TARGET_DIR_MODE):$(TARGET_OWNER).$(TARGET_GROUP),$(REMOTE_FILES)) DIST_DIRS = $(DIST_SRC_DIR) $(DIST_PCKG_DIR) clean.dist: rm -rf $(DIST_SRC_DIR) $(DIST_FILE_TAR) rsync_ssh\://% ftp\://% scp\://%: make $(shell echo $(addprefix $(DIST_PCKG_DIR)/,$(notdir $@)) | sed 's/:.*//g') $(UPLOAD_SH) $(shell echo $(addprefix $(DIST_PCKG_DIR)/,$(notdir $@)) $@ | sed 's/:.*//g') $@ cpmod.dist: for mod in $(REQUIRED); do \ make -C $$mod distclean ;\ mkdir -p $(DIST_SRC_DIR)/$$mod ;\ tar -C $$mod \ --exclude=dist \ --exclude=pckg \ --exclude=Debug \ --exclude=CVS \ --exclude=old \ --exclude=v1.1 \ --exclude='*.o' \ --exclude='*~' \ --exclude=xml-flat \ -cf - . | tar -C $(DIST_SRC_DIR)/$$mod -xf - ;\ done touch $@ cpfiles.dist: mkdir -p $(DIST_SRC_DIR) cp Makefile $(DIST_SRC_DIR) sh make/mkspec.sh -V $(DIST_VERSION) -S $(notdir $(PCKG_TAR)) -N $(PROJECT) > $(DIST_SRC_DIR)/$(PROJECT)-$(DIST_VERSION).spec echo $(DIST_VERSION) > $(DIST_SRC_DIR)/VERSION touch $@ %.tar.gz: cpfiles.dist cpmod.dist mkdir -p $(DIST_PCKG_DIR) tar -czvf $@ -C $(dir $(DIST_SRC_DIR)) $(notdir $(DIST_SRC_DIR)) %.src.rpm: %.tar.gz rpm -ts $< cp $(SRPMS_DIR)/$(notdir $@) $@ $(DIST_PCKG_DIR)/$(PCKG_RPM_RUN_I386) $(DIST_PCKG_DIR)/$(PCKG_RPM_DEVEL_I386): $(DIST_PCKG_DIR)/$(PCKG_TAR) if [ $< -nt $(RPMS_DIR)/$(notdir $@) ]; then rpm -tb --clean $<; fi cp $(RPMS_DIR)/$(notdir $@) $@ $(DIST_PCKG_DIR)/CURRENT_%: echo $(CURRENT_$*) > $@ # set -e; \ # su - -m -c "cd `pwd`; rpm -ta --clean $<" # --buildroot $(BUILD_ROOT) $<" # --define _rpmdir$(PCKGDIR) \ # --define _builddir$(shell pwd) #$(PROJECT).rpmrc: Makefile # echo "%define _topdir $(shell cd $(TODPIR); pwd)" > $@ build.dist: $(DIST_FILES) #upload.dist: build.dist rpm.dist upload.dist: make $(REMOTE_TARGETS) touch $@.done