blob: 00a780c98a2f9fa5f5c2727a66cf6ab7e73a873e [file] [log] [blame]
# 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