jw-pkg/make/smart-selection.mk

52 lines
1.6 KiB
Makefile
Raw Normal View History

2006-09-14 15:04:48 +00:00
# === variable definitions
MOD_SCRIPT_DIR = $(MODDIR)/devutil/scripts
GET_OS_SH = $(MOD_SCRIPT_DIR)/get_os.sh
2006-09-14 15:04:48 +00:00
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
2006-09-14 15:04:48 +00:00
SELECTION = $(shell sh $(GENERATE_SELECTION) -s)-packages.txt
CHANNEL_LIST = $(shell sh $(GENERATE_SELECTION) -s)-channels.txt
# === targets
all: selection.done channels.done
install:
2006-09-14 15:04:48 +00:00
clean:
rm -rf *.done *.tmp
distclean: clean
upload: upload.done
2006-09-14 15:04:48 +00:00
install-smart: rpm-install-smart.done
2006-09-14 15:53:46 +00:00
commit: selection.done channels.done
cvs add $(SELECTION) $(CHANNEL_LIST)
cvs commit -m "o updated by target $@"
2006-09-14 15:04:48 +00:00
# === 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
2006-09-14 15:04:48 +00:00
smart channel --show > $(CHANNEL_LIST)
touch $@
upload.done: selection.done
2006-09-14 15:04:48 +00:00
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 $@
install-packages:
cat $(SELECTION) | xargs sudo smart install -y
2006-09-14 15:53:46 +00:00