ROOT=/ SUPERUSER=root SUPERGROUP=root NAME=initscripts VERSION := $(shell awk '/Version:/ { print $$2 }' initscripts-vl.spec) RELEASE := $(shell awk '/Release:/ { print $$2 }' initscripts-vl.spec) TAG=$(NAME)-$(VERSION) mandir=/usr/share/man all: (cd src; make) (make -C po) install: mkdir -p $(ROOT)/etc mkdir -p $(ROOT)/etc/profile.d $(ROOT)/sbin $(ROOT)/usr/sbin mkdir -p $(ROOT)$(mandir)/man8 install -m644 inittab $(ROOT)/etc/inittab.sysv install -m644 inittab.upstart $(ROOT)/etc/inittab.upstart install -m644 adjtime $(ROOT)/etc install -m755 setsysfont $(ROOT)/sbin install -m755 service $(ROOT)/sbin install -m644 networks $(ROOT)/etc install -m755 sys-unconfig $(ROOT)/usr/sbin install -m644 service.8 sys-unconfig.8 $(ROOT)$(mandir)/man8 install -m644 sysctl.conf $(ROOT)/etc/sysctl.conf if uname -m | grep -q ppc ; then \ install -m644 sysctl.conf.ppc $(ROOT)/etc/sysctl.conf ; fi if uname -m | grep -q sparc ; then \ install -m644 sysctl.conf.sparc $(ROOT)/etc/sysctl.conf ; fi for f in profile.d/* ; do \ install -m755 $$f $(ROOT)/etc/profile.d ; \ done mkdir -p $(ROOT)/etc/X11 install -m755 prefdm $(ROOT)/etc/X11/prefdm cp -af rc.d sysconfig $(ROOT)/etc cp -af ppp NetworkManager init $(ROOT)/etc mkdir -p $(ROOT)/etc/ppp/peers mkdir -p $(ROOT)/lib cp -af udev $(ROOT)/lib mkdir -p $(ROOT)/etc/sysconfig/modules mkdir -p $(ROOT)/etc/sysconfig/networking/devices mkdir -p $(ROOT)/etc/sysconfig/networking/profiles/default mkdir -p $(ROOT)/etc/sysconfig/console mv $(ROOT)/etc/sysconfig/network-scripts/ifup $(ROOT)/sbin mv $(ROOT)/etc/sysconfig/network-scripts/ifdown $(ROOT)/sbin (cd $(ROOT)/etc/sysconfig/network-scripts; \ ln -sf ifup-ippp ifup-isdn ; \ ln -sf ifdown-ippp ifdown-isdn ; \ ln -sf ../../../sbin/ifup . ; \ ln -sf ../../../sbin/ifdown . ) make install ROOT=$(ROOT) mandir=$(mandir) -C src make install PREFIX=$(ROOT) -C po # Make sure locale stuff from initscripts goes in /usr/share/locale too # mkdir -p $(ROOT)/usr/share/locale # cp -a $(ROOT)/etc/locale/* $(ROOT)/usr/share/locale/ mkdir -p $(ROOT)/var/run/netreport mkdir -p $(ROOT)/var/log chown $(SUPERUSER):$(SUPERGROUP) $(ROOT)/var/run/netreport chmod u=rwx,g=rwx,o=rx $(ROOT)/var/run/netreport touch $(ROOT)/var/run/utmp touch $(ROOT)/var/log/wtmp touch $(ROOT)/var/log/btmp for i in 0 1 2 3 4 5 6 ; do \ dir=$(ROOT)/etc/rc.d/rc$$i.d; \ mkdir $$dir; \ chmod u=rwx,g=rx,o=rx $$dir; \ done # Can't store symlinks in a CVS archive ln -s ../init.d/killall $(ROOT)/etc/rc.d/rc0.d/S00killall ln -s ../init.d/killall $(ROOT)/etc/rc.d/rc6.d/S00killall ln -s ../init.d/halt $(ROOT)/etc/rc.d/rc0.d/S01halt ln -s ../init.d/halt $(ROOT)/etc/rc.d/rc6.d/S01reboot ln -s ../init.d/single $(ROOT)/etc/rc.d/rc1.d/S99single ln -s ../rc.local $(ROOT)/etc/rc.d/rc2.d/S99local ln -s ../rc.local $(ROOT)/etc/rc.d/rc3.d/S99local ln -s ../rc.local $(ROOT)/etc/rc.d/rc4.d/S99local ln -s ../rc.local $(ROOT)/etc/rc.d/rc5.d/S99local # These are LSB compatibility symlinks. At some point in the future # the actual files will be here instead of symlinks for i in 0 1 2 3 4 5 6 ; do \ ln -s rc.d/rc$$i.d $(ROOT)/etc/rc$$i.d; \ done for i in rc rc.sysinit rc.local ; do \ ln -s rc.d/$$i $(ROOT)/etc/$$i; \ done check: for afile in `find . -type f -perm +111|grep -v \.csh | grep -v po/ ` ; do \ if ! file $$afile | grep -s ELF >/dev/null; then \ bash -n $$afile || { echo $$afile ; exit 1 ; } ; \ fi ;\ done clean: make clean -C src make clean -C po @rm -fv *~ changenew ChangeLog.old *gz @find . -name "*~" -exec rm -f \{\} \; tag: if [ ! -d ../tags/$(TAG) ] ;then \ svn copy ../trunk ../tags/$(TAG) ;\ svn commit -m "tagging as $(TAG)" ../tags/$(TAG) ;\ echo "Tagged as $(TAG)" ;\ fi tarbz2: clean cd .. && cp -a trunk/ $(NAME)-$(VERSION)/ cd .. && tar --exclude ".svn" -cjf $(NAME)-vine-$(VERSION).tar.bz2 $(NAME)-$(VERSION) mkdir -p ~/rpm/SOURCES/$(NAME) mv ../$(NAME)-vine-$(VERSION).tar.bz2 ~/rpm/SOURCES/$(NAME)/ rm -rf ../$(NAME)-$(VERSION) echo "The archive is at ~/rpm/SOURCES/initscripts-$(VERSION).tar.bz2" srpm: tarbz2 rpmbuild -bs $(NAME)-vl.spec rpm: tarbz2 rpmbuild -ba $(NAME)-vl.spec