| # Native PARISC/Linux Project Bootstrap Code |
| # |
| # Copyright (C) 2000 Hewlett Packard (Paul Bame, bame@puffin.external.hp.com) |
| # Copyright (C) 1999 Jason Eckhardt <jle@cygnus.com> |
| # Helge Deller <deller@gmx.de> |
| # Christopher Beard <cjbeard@thepuffingroup.com> |
| # Alex deVries <adevries@thepuffingroup.com> |
| # |
| |
| # This is here temporarily for folks who still have the old linux makefile |
| ifneq ($(strip ${TOPDIR}),) |
| PA=${TOPDIR} |
| endif |
| |
| # here is one which should work for nearly everyone, unless they |
| # have a different name for their linux tree: |
| ifeq ($(strip ${PA}),) |
| PA := $(shell pwd)/../linux |
| endif |
| |
| export PA |
| |
| # GNU make is needed, can be overridden by environment, e.g. for HP-UX |
| MAKE ?= make |
| |
| # Choose at most one of RAMDISK or NFSROOT below |
| # |
| # Set RAMDISK to a ramdisk image to in order to load the ramdisk on the |
| # boot medium and make the default kernel command line to use it |
| # |
| # RAMDISK = ${PA}/ramdisk.bin |
| |
| # |
| # Set NFSROOT to the IP address of your NFS root server to make |
| # a kernel command line to use NFS root. This is incompatible with |
| # RAMDISK above. Though you can have both a ramdisk and an NFS root, |
| # as far as palo is concerned anyway, this Makefile doesn't help you |
| # do that and I'm not sure the kernel's very good at it right now either. |
| # |
| NFSROOT = 10.10.10.2 |
| # NFSROOT = 10.10.10.2:/tftpboot/nfsroot |
| |
| |
| ROOT=root=/dev/sda1 |
| |
| # |
| # In case you want to use ISA cards (or any edge triggered EISA cards) in your |
| # EISA slots, just uncomment the following line and specify the corresponding |
| # irq level(s) |
| # |
| # EISAIRQ = eisa_irq_edge=3,4,5,7,9,10,11,14,15 |
| |
| |
| ifneq ($(strip ${RAMDISK}),) |
| PALOSTUFF=-r ${RAMDISK} |
| ROOT=root=/dev/ram initrd=0/ramdisk |
| endif |
| |
| ifneq ($(strip ${NFSROOT}),) |
| PALOSTUFF= |
| ROOT=root=/dev/nfs nfsroot=${NFSROOT} ip=bootp |
| endif |
| |
| CMDLINE = 0/vmlinux HOME=/ TERM=linux $(ROOT) $(EISAIRQ) $(CONSOLE) |
| |
| HELP2MAN := $(shell command -v help2man 2> /dev/null) |
| |
| all: makepalo README palo.conf |
| |
| README: README.html |
| lynx -dump README.html > README |
| |
| makepalo: |
| cd palo && $(MAKE) |
| |
| makeipl: |
| cd ipl && $(MAKE) |
| |
| lifimage: all Makefile lifimage-only |
| |
| lifimage-only: ${PA}/vmlinux iplboot |
| ./palo/palo -f /dev/null \ |
| -b iplboot \ |
| -k ${PA}/vmlinux \ |
| ${PALOSTUFF} \ |
| -c "${CMDLINE}" \ |
| -s lifimage |
| |
| iplboot: makeipl makepalo ipl/iplelf |
| ./palo/mkbootable ipl/iplelf iplboot |
| |
| clean: |
| # We intentionally don't remove iplboot here so that the file |
| # is available for cross-installation. |
| rm -f lifimage palo.8.gz changelog.gz palo.tgz |
| cd ipl && $(MAKE) clean |
| cd palo && $(MAKE) clean |
| |
| realclean: |
| rm -f iplboot lifimage palo.8.gz changelog.gz README palo.tgz |
| cd ipl && $(MAKE) clean |
| cd palo && $(MAKE) clean |
| |
| distclean: |
| rm -f lifimage palo.8.gz changelog.gz README palo.tgz |
| cd ipl && $(MAKE) distclean |
| cd palo && $(MAKE) distclean |
| |
| ifdef HELP2MAN |
| palo.8: makepalo palo/usage.txt palo.help2man |
| help2man --section=8 --no-info \ |
| --name="boot media management tool for PA-RISC/HPPA." \ |
| --include=palo.help2man ./palo/palo > palo.8 |
| endif |
| |
| palo.8.gz: palo.8 |
| gzip -9 < palo.8 > palo.8.gz |
| |
| changelog.gz: debian/changelog |
| gzip -9 < debian/changelog > changelog.gz |
| |
| INSTALL = install |
| IFLAGS = -o root -g root |
| INSTALL += ${IFLAGS} |
| DESTDIR = ./root |
| |
| install: all README.html palo.conf palo/palo palo.8.gz changelog.gz |
| ${INSTALL} -d ${DESTDIR}/usr/share/doc/palo \ |
| ${DESTDIR}/etc ${DESTDIR}/sbin \ |
| ${DESTDIR}/usr/share/palo \ |
| ${DESTDIR}/usr/share/man/man8 |
| ${INSTALL} -m644 palo.conf ${DESTDIR}/usr/share/doc/palo |
| ${INSTALL} palo/palo ${DESTDIR}/sbin |
| @# iplboot isn't natively executable -- don't set mode=x |
| ${INSTALL} -m444 iplboot ${DESTDIR}/usr/share/palo |
| ${INSTALL} -m444 README.html README changelog.gz \ |
| ${DESTDIR}/usr/share/doc/palo |
| ${INSTALL} -m444 palo.8.gz ${DESTDIR}/usr/share/man/man8 |
| |
| uninstall: |
| ${RM} -rf ${DESTDIR}/usr/share/doc/palo |
| ${RM} -rf ${DESTDIR}/sbin/palo |
| ${RM} -rf ${DESTDIR}/usr/share/palo |
| ${RM} -rf ${DESTDIR}/usr/share/man/man8/palo.8.gz |
| |
| palo.tgz: |
| tar cvfz palo.tgz * |
| |
| # Build RPM source and binary package |
| palo.rpm rpm: |
| rm -f palo.tgz && $(MAKE) palo.tgz && rpmbuild -ta palo.tgz |
| |