1884c25d1SGordon Tetlow#$FreeBSD$ 2884c25d1SGordon Tetlow# @(#)Makefile 8.1 (Berkeley) 6/2/93 3884c25d1SGordon Tetlow 4e1fe3dbaSRuslan ErmilovNO_MAN= 5e1fe3dbaSRuslan Ermilov 6e1fe3dbaSRuslan Ermilov.include <bsd.own.mk> 7d9ca85fcSRuslan ErmilovMK_SSP= no 8e1fe3dbaSRuslan Ermilov 9884c25d1SGordon TetlowPROG= rescue 10884c25d1SGordon TetlowBINDIR?=/rescue 11884c25d1SGordon Tetlow 12884c25d1SGordon Tetlow# Shell scripts need #! line to be edited from /bin/sh to /rescue/sh 13884c25d1SGordon TetlowSCRIPTS= nextboot_FIXED 1404ddb211SJohn BaldwinSCRIPTSNAME_nextboot_FIXED= nextboot 15884c25d1SGordon Tetlownextboot_FIXED: ../../sbin/reboot/nextboot.sh 16884c25d1SGordon Tetlow sed '1s/\/bin\//\/rescue\//' ${.ALLSRC} > ${.TARGET} 17884c25d1SGordon TetlowCLEANFILES+= nextboot_FIXED 18884c25d1SGordon Tetlow 19d4208689SBrooks DavisSCRIPTS+= dhclient_FIXED 20d4208689SBrooks DavisSCRIPTSNAME_dhclient_FIXED= dhclient-script 21d4208689SBrooks Davisdhclient_FIXED: ../../sbin/dhclient/dhclient-script 22d4208689SBrooks Davis sed '1s/\/bin\//\/rescue\//' ${.ALLSRC} > ${.TARGET} 23d4208689SBrooks DavisCLEANFILES+= dhclient_FIXED 24884c25d1SGordon Tetlow 25169733f4SAdrian Chadd# The help which used to be here is now in mk/bsd.crunchgen.mk 26884c25d1SGordon Tetlow 27884c25d1SGordon Tetlow# Define Makefile variable RESCUE 28884c25d1SGordon TetlowCRUNCH_BUILDOPTS+= -DRESCUE 29884c25d1SGordon Tetlow# Define compile-time RESCUE symbol when compiling components 30884c25d1SGordon TetlowCRUNCH_BUILDOPTS+= CRUNCH_CFLAGS=-DRESCUE 31884c25d1SGordon Tetlow 324d938af0SGordon Tetlow# An experiment that failed: try overriding bsd.lib.mk and bsd.prog.mk 334d938af0SGordon Tetlow# rather than incorporating rescue-specific logic into standard files. 34884c25d1SGordon Tetlow#MAKEFLAGS= -m ${.CURDIR} ${.MAKEFLAGS} 35884c25d1SGordon Tetlow 36884c25d1SGordon Tetlow# Hackery: 'librescue' exists merely as a tool for appropriately 37884c25d1SGordon Tetlow# recompiling specific library entries. We _know_ they're needed, and 38884c25d1SGordon Tetlow# regular archive searching creates ugly library ordering problems. 39884c25d1SGordon Tetlow# Easiest fix: tell the linker to include them into the executable 40884c25d1SGordon Tetlow# first, so they are guaranteed to override the regular lib entries. 41884c25d1SGordon Tetlow# Note that if 'librescue' hasn't been compiled, we'll just get the 42884c25d1SGordon Tetlow# regular lib entries from libc and friends. 43884c25d1SGordon TetlowCRUNCH_LIBS+= ${.OBJDIR}/../librescue/*.o 44884c25d1SGordon Tetlow 45884c25d1SGordon Tetlow################################################################### 46884c25d1SGordon Tetlow# Programs from stock /bin 47884c25d1SGordon Tetlow# 48884c25d1SGordon Tetlow# WARNING: Changing this list may require adjusting 49884c25d1SGordon Tetlow# /usr/include/paths.h as well! You were warned! 50884c25d1SGordon Tetlow# 51d60d0f81SGordon TetlowCRUNCH_SRCDIRS+= bin 5239ae372dSDavid E. O'BrienCRUNCH_PROGS_bin= cat chflags chio chmod cp date dd df echo \ 5321be3b31SYaroslav Tykhiy ed expr getfacl hostname kenv kill ln ls mkdir mv \ 54585ca1e1SWarner Losh pkill ps pwd realpath rm rmdir setfacl sh stty sync test 5584bee0d7SEd SchoutenCRUNCH_LIBS+= -lcrypt -ledit -lkvm -ll -ltermcap -lutil 56169733f4SAdrian ChaddCRUNCH_BUILDTOOLS+= bin/sh 57884c25d1SGordon Tetlow 58884c25d1SGordon Tetlow# Additional options for specific programs 59884c25d1SGordon TetlowCRUNCH_ALIAS_test= [ 60884c25d1SGordon TetlowCRUNCH_ALIAS_sh= -sh 61884c25d1SGordon Tetlow# The -sh alias shouldn't appear in /rescue as a hard link 62884c25d1SGordon TetlowCRUNCH_SUPPRESS_LINK_-sh= 1 63884c25d1SGordon TetlowCRUNCH_ALIAS_ln= link 64884c25d1SGordon TetlowCRUNCH_ALIAS_rm= unlink 65884c25d1SGordon TetlowCRUNCH_ALIAS_ed= red 66eb4e4048SYaroslav TykhiyCRUNCH_ALIAS_pkill= pgrep 67eb4e4048SYaroslav Tykhiy 68e1fe3dbaSRuslan Ermilov.if ${MK_RCMDS} != "no" 69d60d0f81SGordon TetlowCRUNCH_PROGS_bin+= rcp 70884c25d1SGordon Tetlow.endif 71884c25d1SGordon Tetlow 72e1fe3dbaSRuslan Ermilov.if ${MK_TCSH} != "no" 73d60d0f81SGordon TetlowCRUNCH_PROGS_bin+= csh 74884c25d1SGordon TetlowCRUNCH_ALIAS_csh= -csh tcsh -tcsh 75169733f4SAdrian ChaddCRUNCH_BUILDTOOLS+= bin/csh 76884c25d1SGordon TetlowCRUNCH_SUPPRESS_LINK_-csh= 1 77884c25d1SGordon TetlowCRUNCH_SUPPRESS_LINK_-tcsh= 1 78884c25d1SGordon Tetlow.endif 79884c25d1SGordon Tetlow 80884c25d1SGordon Tetlow################################################################### 81884c25d1SGordon Tetlow# Programs from standard /sbin 82884c25d1SGordon Tetlow# 83884c25d1SGordon Tetlow# WARNING: Changing this list may require adjusting 84884c25d1SGordon Tetlow# /usr/include/paths.h as well! You were warned! 85884c25d1SGordon Tetlow# 8639ae372dSDavid E. O'Brien# Note that mdmfs have their own private 'pathnames.h' 87884c25d1SGordon Tetlow# headers in addition to the standard 'paths.h' header. 88884c25d1SGordon Tetlow# 89d60d0f81SGordon TetlowCRUNCH_SRCDIRS+= sbin 902f161397SMarcel MoolenaarCRUNCH_PROGS_sbin= atacontrol badsect \ 91513b02ffSHartmut Brandt camcontrol ccdconfig clri devfs dmesg dump \ 92cc795cb4SMarius Strobl dumpfs dumpon fsck fsck_ffs fsck_msdosfs fsdb \ 932f161397SMarcel Moolenaar fsirand gbde geom ifconfig init \ 9439ae372dSDavid E. O'Brien kldconfig kldload kldstat kldunload ldconfig \ 95c89454cbSCraig Rodrigues md5 mdconfig mdmfs mknod mount mount_cd9660 \ 96a3367e4fSGordon Tetlow mount_msdosfs mount_nfs mount_ntfs mount_nullfs \ 97534046e3SRong-En Fan mount_udf mount_unionfs newfs \ 98043fc269SPoul-Henning Kamp newfs_msdos nos-tun ping reboot \ 9939ae372dSDavid E. O'Brien restore rcorder route routed rtquery rtsol savecore \ 100d2a0bb08SEd Schouten spppcontrol swapon sysctl tunefs umount 10140353969SPoul-Henning Kamp 102e1fe3dbaSRuslan Ermilov.if ${MK_ATM} != "no" 1032b851aebSRobert WatsonCRUNCH_PROGS_sbin+= atmconfig 10440353969SPoul-Henning Kamp.endif 10540353969SPoul-Henning Kamp 106e1fe3dbaSRuslan Ermilov.if ${MK_INET6_SUPPORT} != "no" 10740353969SPoul-Henning KampCRUNCH_PROGS_sbin+= ping6 10840353969SPoul-Henning Kamp.endif 10940353969SPoul-Henning Kamp 110e1fe3dbaSRuslan Ermilov.if ${MK_IPFILTER} != "no" 111cf4ee2c9SDarren ReedCRUNCH_PROGS_sbin+= ipf 1125433713cSDavid E. O'Brien.endif 11387820315SKip Macy.if ${MK_ZFS} != "no" 11487820315SKip MacyCRUNCH_PROGS_sbin+= zfs 11587820315SKip MacyCRUNCH_PROGS_sbin+= zpool 11687820315SKip Macy.endif 1175433713cSDavid E. O'Brien 118884c25d1SGordon Tetlow# crunchgen does not like C++ programs; this should be fixed someday 119884c25d1SGordon Tetlow# CRUNCH_PROGS+= devd 120884c25d1SGordon Tetlow 1216e7fd77bSOlivier HouchardCRUNCH_LIBS+= -lalias -lcam -lcurses -ldevstat -lipsec 122cea557adSRuslan Ermilov.if ${MK_IPX} != "no" 123cea557adSRuslan ErmilovCRUNCH_LIBS+= -lipx 124cea557adSRuslan Ermilov.endif 12587820315SKip Macy.if ${MK_ZFS} != "no" 12687820315SKip MacyCRUNCH_LIBS+= -lzfs -lnvpair -luutil -lavl 12787820315SKip Macy.endif 1285061de23SJamie GrittonCRUNCH_LIBS+= -lgeom -lbsdxml -ljail -lkiconv -lmd -lreadline -lsbuf -lufs -lz 129884c25d1SGordon Tetlow 13025faff34SWarner Losh.if ${MACHINE_CPUARCH} == "i386" 1312f161397SMarcel MoolenaarCRUNCH_PROGS_sbin+= bsdlabel sconfig fdisk 1329b6e332fSGordon TetlowCRUNCH_ALIAS_bsdlabel= disklabel 133cea557adSRuslan Ermilov#.if ${MK_NCP} != "no" 134cea557adSRuslan Ermilov#CRUNCH_PROGS+= mount_nwfs 135cea557adSRuslan Ermilov#CRUNCH_LIBS+= -lncp 136cea557adSRuslan Ermilov#.endif 137cea557adSRuslan Ermilov#CRUNCH_PROGS+= mount_smbfs 138cea557adSRuslan Ermilov#CRUNCH_LIBS+= -lsmb 139884c25d1SGordon Tetlow.endif 140884c25d1SGordon Tetlow 141884c25d1SGordon Tetlow.if ${MACHINE} == "pc98" 1422f161397SMarcel MoolenaarCRUNCH_PROGS_sbin+= bsdlabel 143107e6cdaSGordon TetlowCRUNCH_SRCDIR_fdisk= $(.CURDIR)/../../sbin/fdisk_pc98 144884c25d1SGordon Tetlow.endif 145884c25d1SGordon Tetlow 14625faff34SWarner Losh.if ${MACHINE_CPUARCH} == "ia64" 1472f161397SMarcel MoolenaarCRUNCH_PROGS_sbin+= mca 148884c25d1SGordon Tetlow.endif 149884c25d1SGordon Tetlow 15025faff34SWarner Losh.if ${MACHINE_CPUARCH} == "sparc64" 1512f161397SMarcel MoolenaarCRUNCH_PROGS_sbin+= bsdlabel sunlabel 152884c25d1SGordon Tetlow.endif 153884c25d1SGordon Tetlow 15425faff34SWarner Losh.if ${MACHINE_CPUARCH} == "amd64" 1552f161397SMarcel MoolenaarCRUNCH_PROGS_sbin+= bsdlabel fdisk 1569b6e332fSGordon TetlowCRUNCH_ALIAS_bsdlabel= disklabel 157884c25d1SGordon Tetlow.endif 158884c25d1SGordon Tetlow 159884c25d1SGordon TetlowCRUNCH_SRCDIR_atm= $(.CURDIR)/../../sbin/atm/atm 160513b02ffSHartmut BrandtCRUNCH_SRCDIR_atmconfig= $(.CURDIR)/../../sbin/atm/atmconfig 161884c25d1SGordon TetlowCRUNCH_SRCDIR_fore_dnld= $(.CURDIR)/../../sbin/atm/fore_dnld 162884c25d1SGordon TetlowCRUNCH_SRCDIR_ilmid= $(.CURDIR)/../../sbin/atm/ilmid 163884c25d1SGordon TetlowCRUNCH_SRCDIR_rtquery= $(.CURDIR)/../../sbin/routed/rtquery 164cf4ee2c9SDarren ReedCRUNCH_SRCDIR_ipf= $(.CURDIR)/../../sbin/ipf/ipf 16587820315SKip Macy.if ${MK_ZFS} != "no" 16687820315SKip MacyCRUNCH_SRCDIR_zfs= ${.CURDIR}/../../cddl/sbin/zfs 16787820315SKip MacyCRUNCH_SRCDIR_zpool= ${.CURDIR}/../../cddl/sbin/zpool 16887820315SKip Macy.endif 169884c25d1SGordon TetlowCRUNCH_ALIAS_reboot= fastboot halt fasthalt 170884c25d1SGordon TetlowCRUNCH_ALIAS_restore= rrestore 171884c25d1SGordon TetlowCRUNCH_ALIAS_dump= rdump 172884c25d1SGordon TetlowCRUNCH_ALIAS_fsck_ffs= fsck_4.2bsd fsck_ufs 17308910321SRuslan ErmilovCRUNCH_ALIAS_geom= glabel gpart 174884c25d1SGordon Tetlow 175884c25d1SGordon Tetlow# dhclient has historically been troublesome... 176d4208689SBrooks DavisCRUNCH_PROGS_sbin+= dhclient 177d4208689SBrooks DavisCRUNCH_BUILDOPTS_dhclient= -DRELEASE_CRUNCH -Dlint 178884c25d1SGordon Tetlow 179884c25d1SGordon Tetlow################################################################## 180884c25d1SGordon Tetlow# Programs from stock /usr/bin 181884c25d1SGordon Tetlow# 182d60d0f81SGordon TetlowCRUNCH_SRCDIRS+= usr.bin 183884c25d1SGordon Tetlow 184eb4e4048SYaroslav TykhiyCRUNCH_PROGS_usr.bin= head mt sed tail tee 185eb4e4048SYaroslav Tykhiy 1869a9ea25fSXin LICRUNCH_PROGS_usr.bin+= gzip 187884c25d1SGordon TetlowCRUNCH_ALIAS_gzip= gunzip gzcat zcat 188884c25d1SGordon Tetlow 189d60d0f81SGordon TetlowCRUNCH_PROGS_usr.bin+= bzip2 190884c25d1SGordon TetlowCRUNCH_ALIAS_bzip2= bunzip2 bzcat 191884c25d1SGordon TetlowCRUNCH_LIBS+= -lbz2 192884c25d1SGordon Tetlow 1937fbeb03eSMartin MatuskaCRUNCH_PROGS_usr.bin+= xz 1947fbeb03eSMartin MatuskaCRUNCH_ALIAS_xz= unxz lzma unlzma xzcat lzcat 1957fbeb03eSMartin MatuskaCRUNCH_LIBS+= -llzma 1967fbeb03eSMartin Matuska 197cc7f9762SDavid E. O'BrienCRUNCH_PROGS_usr.bin+= tar 1983b495423STim KientzleCRUNCH_LIBS+= -larchive -lmd 1993b495423STim Kientzle.if ${MK_OPENSSL} != "no" 2003b495423STim KientzleCRUNCH_LIBS+= -lcrypto 2013b495423STim Kientzle.endif 202cc7f9762SDavid E. O'Brien 203d60d0f81SGordon TetlowCRUNCH_PROGS_usr.bin+= vi 204884c25d1SGordon TetlowCRUNCH_ALIAS_vi= ex 205884c25d1SGordon Tetlow 2067ad67863SDag-Erling SmørgravCRUNCH_PROGS_usr.bin+= id 2077ad67863SDag-Erling SmørgravCRUNCH_ALIAS_id= groups whoami 2087ad67863SDag-Erling Smørgrav 209884c25d1SGordon Tetlow################################################################## 210ad02aba6SDag-Erling Smørgrav# Programs from stock /usr/sbin 211ad02aba6SDag-Erling Smørgrav# 212ad02aba6SDag-Erling SmørgravCRUNCH_SRCDIRS+= usr.sbin 213ad02aba6SDag-Erling Smørgrav 214eb4e4048SYaroslav TykhiyCRUNCH_PROGS_usr.sbin= chroot 215eb4e4048SYaroslav Tykhiy 216eb4e4048SYaroslav TykhiyCRUNCH_PROGS_usr.sbin+= chown 217eb4e4048SYaroslav TykhiyCRUNCH_ALIAS_chown= chgrp 21887820315SKip Macy################################################################## 21987820315SKip MacyCRUNCH_LIBS+= -lm 220ad02aba6SDag-Erling Smørgrav 221169733f4SAdrian Chadd.include <bsd.crunchgen.mk> 222884c25d1SGordon Tetlow.include <bsd.prog.mk> 223