mirror of
ssh://git.janware.com/srv/git/janware/proj/jw-pkg
synced 2026-01-15 03:53:32 +01:00
82 lines
2.6 KiB
Makefile
82 lines
2.6 KiB
Makefile
|
|
include $(MODDIR)/make/defs.mk
|
||
|
|
|
||
|
|
CLEAN = $(wildcard *.spec *.rpm *~ *.rpmrc)
|
||
|
|
DIST_SRC_DIR = dist/src/$(PROJECT_STEM)
|
||
|
|
DIST_PCKG_DIR = dist/pckg
|
||
|
|
PCKG_TAR = $(PROJECT_STEM).tar.gz
|
||
|
|
PCKG_RPM_I386 = $(PROJECT_STEM).i386.rpm
|
||
|
|
PCKG_RPM_SRC = $(PROJECT_STEM).src.rpm
|
||
|
|
BUILD_ROOT = /usr/src/packages/BUILD
|
||
|
|
RPMS_DIR = /usr/src/packages/RPMS/i386
|
||
|
|
SRPMS_DIR = /usr/src/packages/SRPMS
|
||
|
|
TARGET_HOST = dspcd.jannet.de
|
||
|
|
TARGET_DIR_TAR = $(FTP_PUB_DIR_ABS)/$(PROJECT)/tar
|
||
|
|
TARGET_DIR_RPM_I386 = $(FTP_PUB_DIR_ABS)/$(PROJECT)/rpm/i386
|
||
|
|
TARGET_DIR_RPM_SRC = $(FTP_PUB_DIR_ABS)/$(PROJECT)/rpm/src
|
||
|
|
TARGET_USER = jan
|
||
|
|
TARGET_GROUP = jannet
|
||
|
|
TARGET_FILE_MODE = 755
|
||
|
|
TARGET_DIR_MODE = 755
|
||
|
|
TARGET_DIR = $(TARGET_DIR_RPM)/$(PROJECT)
|
||
|
|
REMOTE_TARGETS = \
|
||
|
|
$(TARGET_DIR_RPM_SRC)/$(PCKG_RPM_SRC) \
|
||
|
|
$(TARGET_DIR_RPM_I386)/$(PCKG_RPM_I386) \
|
||
|
|
$(TARGET_DIR_TAR)/$(PCKG_TAR)
|
||
|
|
|
||
|
|
DIST_DIRS = $(DIST_SRC_DIR) $(DIST_PCKG_DIR)
|
||
|
|
|
||
|
|
$(DIST_DIRS):
|
||
|
|
mkdir -p $@
|
||
|
|
|
||
|
|
clean.dist:
|
||
|
|
rm -rf $(DIST_SRC_DIR) $(DIST_FILE_TAR)
|
||
|
|
|
||
|
|
cpmod.dist: clean.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
|
||
|
|
|
||
|
|
$(REMOTE_TARGETS):
|
||
|
|
make $(addprefix $(DIST_PCKG_DIR)/,$(notdir $@))
|
||
|
|
$(UPLOAD_SH) $(addprefix $(DIST_PCKG_DIR)/,$(notdir $@)) $@
|
||
|
|
|
||
|
|
test: $(REMOTE_TARGETS)
|
||
|
|
|
||
|
|
cpfiles.dist: clean.dist
|
||
|
|
cp Makefile $(DIST_SRC_DIR)
|
||
|
|
. make/mkspec.sh -V $(DIST_VERSION) -S $(notdir $(DIST_FILE_TAR)) -N $(PROJECT) > $(DIST_SRC_DIR)/$(PROJECT_STEM).spec
|
||
|
|
echo $(DIST_VERSION) > $(DIST_SRC_DIR)/VERSION
|
||
|
|
|
||
|
|
$(DIST_FILE_TAR): $(DIST_SRC_DIR) $(DIST_PCKG_DIR) cpmod.dist cpfiles.dist
|
||
|
|
tar -czvf $@ -C $(dir $(DIST_SRC_DIR)) $(notdir $(DIST_SRC_DIR))
|
||
|
|
|
||
|
|
#$(PROJECT).rpmrc: Makefile
|
||
|
|
# echo "%define _topdir $(shell cd $(TODPIR); pwd)" > $@
|
||
|
|
|
||
|
|
$(DIST_FILES_RPM): $(DIST_FILE_TAR)
|
||
|
|
set -e; \
|
||
|
|
su - -m -c "cd `pwd`; rpm -ta --clean $<"
|
||
|
|
cp $(RPMS_DIR)/$(notdir $@) $@
|
||
|
|
|
||
|
|
# --buildroot $(BUILD_ROOT) $<"
|
||
|
|
# --define _rpmdir$(PCKGDIR) \
|
||
|
|
# --define _builddir$(shell pwd)
|
||
|
|
|
||
|
|
build.dist: $(DIST_DIRS) cpmod.dist cpfiles.dist $(DIST_FILE_TAR)
|
||
|
|
rpm.dist: $(DIST_FILE_TAR) $(DIST_FILES_RPM)
|
||
|
|
|
||
|
|
# -- install.dist
|
||
|
|
upload.dist: build.dist rpm.dist
|
||
|
|
/usr/bin/rsync -az -v --links -e /usr/bin/ssh $(DIST_FILES_RPM) $(TARGET_USER)@$(TARGET_HOST):$(TARGET_DIR_RPM)
|