1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158
|
# 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
./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
SBINDIR ?= /sbin
CONFDIR ?= /etc
DATADIR ?= /usr/share
DOCDIR ?= /usr/share/doc
MANDIR ?= /usr/share/man
install: all README.html palo.conf palo/palo palo.8.gz changelog.gz
${INSTALL} -d ${DESTDIR}${DOCDIR}/palo \
${DESTDIR}${CONFDIR} ${DESTDIR}${SBINDIR} \
${DESTDIR}${DATADIR}/palo \
${DESTDIR}${MANDIR}/man8
${INSTALL} -m644 palo.conf ${DESTDIR}${DOCDIR}/palo
${INSTALL} palo/palo ${DESTDIR}$(SBINDIR)
@# iplboot isn't natively executable -- don't set mode=x
${INSTALL} -m644 iplboot ${DESTDIR}${DATADIR}/palo
${INSTALL} -m644 README.html README changelog.gz \
${DESTDIR}${DOCDIR}/palo
${INSTALL} -m644 palo.8.gz ${DESTDIR}${MANDIR}/man8
uninstall:
${RM} -rf ${DESTDIR}${DOCDIR}/palo
${RM} -rf ${DESTDIR}${SBINDIR}/palo
${RM} -rf ${DESTDIR}${DATADIR}/palo
${RM} -rf ${DESTDIR}${MANDIR}/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
|