mirror of
ssh://git.janware.com/srv/git/janware/proj/jw-pkg
synced 2026-01-15 03:53:32 +01:00
- Punch out built-in channel [rpm-sys] on channel list
generation
- Change target install-packages to install-%
56 lines
1.7 KiB
Makefile
56 lines
1.7 KiB
Makefile
# === variable definitions
|
|
MOD_SCRIPT_DIR = $(MODDIR)/devutil/scripts
|
|
GET_OS_SH = $(MOD_SCRIPT_DIR)/get_os.sh
|
|
GENERATE_SELECTION = $(MOD_SCRIPT_DIR)/generate_selection.sh
|
|
UPLOAD_SH = $(MOD_SCRIPT_DIR)/upload.sh
|
|
|
|
DISTRIBUTOR = $(shell $(GET_OS_SH) | cut -d- -f1)
|
|
DISTRO_RELEASE = $(shell $(GET_OS_SH) | cut -d- -f2-)
|
|
UPLOAD_URL = root@ftp.jannet.de:/home/ftp/dat/pub/packages/linux/$(DISTRIBUTOR)/$(DISTRO_RELEASE)/inst-source/setup/descr
|
|
|
|
SELECTION = $(shell sh $(GENERATE_SELECTION) -s)-packages.txt
|
|
CHANNEL_LIST = $(shell sh $(GENERATE_SELECTION) -s)-channels.txt
|
|
|
|
# === targets
|
|
all: selection.done channels.done
|
|
install:
|
|
clean:
|
|
rm -rf *.done *.tmp
|
|
distclean: clean
|
|
upload: upload.done
|
|
install-smart: rpm-install-smart.done
|
|
commit: selection.done channels.done
|
|
cvs add $(SELECTION) $(CHANNEL_LIST)
|
|
cvs commit -m "o updated by target $@"
|
|
|
|
# === rules
|
|
selection.done: $(MODDIR)/make/smart-selection.mk
|
|
rpm -qa --queryformat '%{NAME}\n' | \
|
|
sed ' \
|
|
/gpg-pubkey/ d \
|
|
' > $(SELECTION)
|
|
touch $@
|
|
|
|
channels.done: $(MODDIR)/make/smart-selection.mk
|
|
smart channel --show | sed '/\[rpm-sys\]/,/\[/ d' > $(CHANNEL_LIST)
|
|
touch $@
|
|
|
|
upload.done: selection.done
|
|
sh $(UPLOAD_SH) $(SELECTION) $(CHANNEL_LIST) $(UPLOAD_URL)
|
|
ssh -l root ftp.jannet.de /etc/cron.hourly/create_packet_descriptions.sh
|
|
touch $@
|
|
|
|
rpm-install-smart.done:
|
|
if ! rpm -q smart >/dev/null 2>&1 ; then \
|
|
wget ftp.jannet.de:/pub/packages/linux/$(DISTRIBUTOR)/$(DISTRO_RELEASE)/inst-source/rpm/i686/smart.rpm; \
|
|
sudo rpm -U smart.rpm; \
|
|
fi
|
|
touch $@
|
|
|
|
smart-update.done:
|
|
smart update
|
|
touch $@
|
|
|
|
install-%: smart-update.done
|
|
cat $* | xargs sudo smart install -y
|
|
|