Makefile revision 91394
150477Speter# $FreeBSD: head/lib/libstand/Makefile 91394 2002-02-27 17:16:18Z tmm $ 233548Sjkh# 32893Sdfr# Originally from $NetBSD: Makefile,v 1.21 1997/10/26 22:08:38 lukem Exp $ 42893Sdfr# 533548Sjkh# Notes: 633548Sjkh# - We don't use the libc strerror/sys_errlist because the string table is 72893Sdfr# quite large. 82893Sdfr# 92893Sdfr 102893SdfrLIB= stand 112893SdfrNOPROFILE= YES 122893SdfrNOPIC= YES 132893SdfrMAN= libstand.3 142893Sdfr 152893Sdfr# Mostly OK, some of the libc imports are a bit noisy 162893SdfrCFLAGS+= -Wall 172893Sdfr 182893Sdfr.if ${MACHINE_ARCH} == "alpha" 192893SdfrCFLAGS+= -mno-fp-regs 202893Sdfr.endif 212893Sdfr.if ${MACHINE_ARCH} == "i386" 222893SdfrCFLAGS+= -mpreferred-stack-boundary=2 232893Sdfr.endif 242893Sdfr.if ${MACHINE_ARCH} == "powerpc" 252893SdfrCFLAGS+= -msoft-float 262893Sdfr.endif 272893Sdfr 282893Sdfr# standalone components and stuff we have modified locally 292893SdfrSRCS+= __main.c assert.c bcd.c bswap.c environment.c getopt.c gets.c \ 302893Sdfr globals.c pager.c printf.c strdup.c strerror.c strtol.c random.c \ 312893Sdfr sbrk.c twiddle.c zalloc.c zalloc_malloc.c 322893Sdfr 332893Sdfr# private (pruned) versions of libc string functions 342893SdfrSRCS+= strcasecmp.c 35139776Simp 362893Sdfr# byte order functions from libc 378876Srgrimes.PATH: ${.CURDIR}/../libc/${MACHINE_ARCH}/net 382893SdfrSRCS+= htons.S ntohs.S htonl.S ntohl.S 392893Sdfr 408876Srgrimes# string functions from libc 412893Sdfr.PATH: ${.CURDIR}/../libc/string 428876Srgrimes.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "powerpc" || \ 432893Sdfr ${MACHINE_ARCH} == "sparc64" 442893SdfrSRCS+= bcmp.c bcopy.c bzero.c ffs.c index.c memccpy.c memchr.c memcmp.c \ 452893Sdfr memcpy.c memmove.c memset.c qdivrem.c rindex.c strcat.c strchr.c \ 462893Sdfr strcmp.c strcpy.c strcspn.c strlen.c strncat.c strncmp.c strncpy.c \ 478876Srgrimes strpbrk.c strrchr.c strsep.c strspn.c strstr.c strtok.c swab.c 482893Sdfr.endif 492893Sdfr.if ${MACHINE_ARCH} == "alpha" 502893Sdfr.PATH: ${.CURDIR}/../libc/alpha/string 512893SdfrSRCS+= bcmp.c bcopy.S bzero.S ffs.S index.c memccpy.c memchr.c memcmp.c \ 522893Sdfr memcpy.S memmove.S memset.c rindex.c strcat.c strchr.c \ 53171754Sbde strcmp.c strcpy.c strcspn.c strlen.c \ 5440651Sbde strncat.c strncmp.c strncpy.c strpbrk.c strrchr.c strsep.c \ 55171754Sbde strspn.c strstr.c strtok.c swab.c 56171754Sbde 57171748SbdeSRCS+= __divqu.S __divq.S __divlu.S __divl.S 58171754SbdeSRCS+= __remqu.S __remq.S __remlu.S __reml.S 59171754Sbde 60171748SbdeCLEANFILES+= __divqu.S __divq.S __divlu.S __divl.S 612893SdfrCLEANFILES+= __remqu.S __remq.S __remlu.S __reml.S 62164033Srwatson 632893Sdfr 64171754Sbde__divqu.S: ${.CURDIR}/../libc/alpha/gen/divrem.m4 652893Sdfr m4 -DNAME=__divqu -DOP=div -DS=false -DWORDSIZE=64 \ 662893Sdfr ${.ALLSRC} > ${.TARGET} 67171754Sbde 68171754Sbde__divq.S: ${.CURDIR}/../libc/alpha/gen/divrem.m4 69171754Sbde m4 -DNAME=__divq -DOP=div -DS=true -DWORDSIZE=64 \ 70171754Sbde ${.ALLSRC} > ${.TARGET} 7177162Sru 7277162Sru__divlu.S: ${.CURDIR}/../libc/alpha/gen/divrem.m4 7377162Sru m4 -DNAME=__divlu -DOP=div -DS=false -DWORDSIZE=32 \ 7477162Sru ${.ALLSRC} > ${.TARGET} 75171754Sbde 762893Sdfr__divl.S: ${.CURDIR}/../libc/alpha/gen/divrem.m4 77172757Sbde m4 -DNAME=__divl -DOP=div -DS=true -DWORDSIZE=32 \ 78138471Sphk ${.ALLSRC} > ${.TARGET} 79172757Sbde 80172757Sbde__remqu.S: ${.CURDIR}/../libc/alpha/gen/divrem.m4 81172757Sbde m4 -DNAME=__remqu -DOP=rem -DS=false -DWORDSIZE=64 \ 82172757Sbde ${.ALLSRC} > ${.TARGET} 83172757Sbde 84172757Sbde__remq.S: ${.CURDIR}/../libc/alpha/gen/divrem.m4 85138471Sphk m4 -DNAME=__remq -DOP=rem -DS=true -DWORDSIZE=64 \ 86138471Sphk ${.ALLSRC} > ${.TARGET} 87138471Sphk 8856674Snyan__remlu.S: ${.CURDIR}/../libc/alpha/gen/divrem.m4 8956674Snyan m4 -DNAME=__remlu -DOP=rem -DS=false -DWORDSIZE=32 \ 9056674Snyan ${.ALLSRC} > ${.TARGET} 9156674Snyan 9256674Snyan__reml.S: ${.CURDIR}/../libc/alpha/gen/divrem.m4 9356674Snyan m4 -DNAME=__reml -DOP=rem -DS=true -DWORDSIZE=32 \ 9456674Snyan ${.ALLSRC} > ${.TARGET} 9556674Snyan.endif 9656674Snyan.if ${MACHINE_ARCH} == "ia64" 9756674Snyan.PATH: ${.CURDIR}/../libc/ia64/string 9856674SnyanSRCS+= bcmp.c bcopy.S bzero.S ffs.S index.c memccpy.c memchr.c memcmp.c \ 99151897Srwatson memcpy.S memmove.S memset.c rindex.c strcat.c strchr.c \ 100151897Srwatson strcmp.c strcpy.c strcspn.c strlen.c \ 10130309Sphk strncat.c strncmp.c strncpy.c strpbrk.c strrchr.c strsep.c \ 102171757Sbde strspn.c strstr.c strtok.c swab.c 103120492Sfjoe 104138471Sphk.PATH: ${.CURDIR}/../libc/ia64/gen 105138471SphkSRCS+= __divdi3.S __divsi3.S __moddi3.S __modsi3.S 106132023SalfredSRCS+= __udivdi3.S __udivsi3.S __umoddi3.S __umodsi3.S 107170188Strhodes.endif 108138471Sphk 109101777Sphk.if ${MACHINE_ARCH} != "sparc64" 110101777Sphk# _setjmp/_longjmp 111101777Sphk.PATH: ${.CURDIR}/${MACHINE_ARCH} 112101777SphkSRCS+= _setjmp.S 11312338Sbde.endif 114134345Stjr 115134345Stjr# decompression functionality from libbz2 116134345Stjr.PATH: ${.CURDIR}/../../contrib/bzip2 11733548SjkhCFLAGS+=-I. -DBZ_NO_STDIO -DBZ_NO_COMPRESS 118166558SrodrigcSRCS+= _bzlib.c _crctable.c _decompress.c _huffman.c _randtable.c _bzlib.h \ 11933548Sjkh _bzlib_private.h 12033548Sjkh 121138471Sphk# check your belt - ugly bzip2 stuff ahead 122138471Sphk.for file in bzlib.c bzlib.h bzlib_private.h 12333548SjkhCLEANFILES+= _${file} _${file}.orig 124138471Sphk 125138471Sphk_${file}: ${file} ${file}.diff 126138471Sphk patch -s -b .orig -o ${.TARGET} < ${.ALLSRC:M*.diff} ${.ALLSRC:M*.[ch]} 127138471Sphk.endfor 128138471Sphk 129138471Sphk.for file in crctable.c decompress.c huffman.c randtable.c 130138471SphkCLEANFILES+= _${file} 131138471Sphk 132138471Sphk_${file}: ${file} 133138471Sphk sed "s|bzlib_private\.h|_bzlib_private.h|" ${.ALLSRC} > ${.TARGET} 134138471Sphk.endfor 135138471Sphk 136138471Sphk# decompression functionality from libz 137138471Sphk.PATH: ${.CURDIR}/../libz 138138471SphkCFLAGS+=-DHAVE_MEMCPY 139138471SphkSRCS+= adler32.c crc32.c infblock.c infcodes.c inffast.c inflate.c \ 140134345Stjr inftrees.c infutil.c zutil.c 141134345Stjr 142134345Stjr# io routines 143134345StjrSRCS+= closeall.c dev.c ioctl.c nullfs.c stat.c \ 144134345Stjr fstat.c close.c lseek.c open.c read.c write.c readdir.c 145134345Stjr 146134345Stjr# network routines 147134345StjrSRCS+= arp.c ether.c inet_ntoa.c in_cksum.c net.c udp.c netif.c rpc.c 148134345Stjr 149134345Stjr# network info services: 150138471SphkSRCS+= bootp.c rarp.c bootparam.c 151138471Sphk 152138471Sphk# boot filesystems 153138471SphkSRCS+= ufs.c nfs.c cd9660.c tftp.c zipfs.c bzipfs.c 154138471SphkSRCS+= netif.c nfs.c 155138471SphkSRCS+= dosfs.c ext2fs.c 156138471Sphk 157138471Sphkbeforeinstall: 158138471Sphk ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 ${.CURDIR}/stand.h \ 159138471Sphk ${DESTDIR}/usr/include 160152595Srodrigc 161152595Srodrigc.include <bsd.lib.mk> 162138471Sphk