Home | History | Annotate | Line # | Download | only in libhack
      1  1.40  christos # $NetBSD: Makefile.inc,v 1.40 2025/09/27 20:59:39 christos Exp $
      2  1.15     lukem #
      3   1.1       gwr # Include this fragment to build libhack.o
      4   1.1       gwr # It is .o and not .a to make sure these are the
      5   1.1       gwr # objects you get (and not the ones in libc.a)
      6  1.15     lukem #
      7   1.1       gwr 
      8  1.15     lukem #
      9  1.15     lukem # Required variables:
     10  1.15     lukem #	HACKSRC		This directory
     11  1.15     lukem #
     12  1.15     lukem # Optional variables:
     13  1.15     lukem #	HACKOBJS	Extra objects to build.
     14  1.15     lukem #			The following extra objects are available:
     15  1.15     lukem #			gethost.o	cut-down gethostby{name,addr}()
     16  1.15     lukem #					that only supports /etc/hosts
     17  1.15     lukem #
     18  1.15     lukem 
     19  1.29       roy .include <bsd.own.mk>
     20  1.29       roy 
     21  1.17  christos CPPFLAGS+=	-DSMALL
     22  1.27      manu CPPFLAGS+=	-DLIBHACK
     23  1.33       roy 
     24  1.28  christos HACKOBJS+=	getcap.o getgrent.o getnet.o getnetgr.o getpwent.o jemalloc.o \
     25  1.22    martin 		localeconv.o multibyte.o perror.o runetable.o setlocale.o \
     26  1.40  christos 		nl_langinfo.o strcasecmp.o sysctl.o \
     27  1.36  jdolecek 		strerror.o strsignal.o syslog.o utmp.o fmtcheck.o \
     28  1.38  christos 		aligned_alloc.o regcomp.o regexec.o wrap.o
     29  1.29       roy 
     30  1.29       roy .if (${USE_YP} != "no")
     31  1.29       roy HACKOBJS+=	yplib.o
     32  1.29       roy .endif
     33   1.1       gwr 
     34  1.32    martin .if ${HACK_CURSES:Uno} == "yes"
     35  1.32    martin CURSES_SRC!=	cd ${HACKSRC}/../../../lib/libcurses && \
     36  1.32    martin 		${MAKE} DISABLE_WCHAR=yes -v SRCS
     37  1.32    martin 
     38  1.32    martin .for s in ${CURSES_SRC}
     39  1.32    martin CPPFLAGS.${s}+=	-DDISABLE_WCHAR -DSMALL \
     40  1.32    martin 		-I${HACKSRC}/../../../lib/libcurses \
     41  1.32    martin 		-I${HACKSRC}/../../../lib/libterminfo
     42  1.32    martin HACKOBJS+=	${s:S/.c/.o/}
     43  1.32    martin ${s:S/.c/.o/}:	${HACKSRC}/../../../lib/libcurses/${s}
     44  1.32    martin .endfor
     45  1.35    martin 
     46  1.35    martin TERMINFO_SRC!=	cd ${HACKSRC}/../../../lib/libterminfo && \
     47  1.35    martin 		${MAKE} SMALLPROG=1 -v SRCS
     48  1.35    martin TERMINFO_PATH!=	cd ${HACKSRC}/../../../lib/libterminfo && \
     49  1.35    martin 		${MAKE} -v .OBJDIR
     50  1.35    martin 
     51  1.35    martin .for s in ${TERMINFO_SRC}
     52  1.35    martin CPPFLAGS.${s}+=	-DDISABLE_WCHAR -DSMALL \
     53  1.35    martin 		-I${HACKSRC}/../../../lib/libterminfo \
     54  1.35    martin 		-I${TERMINFO_PATH}
     55  1.35    martin HACKOBJS+=	${s:S/.c/.o/}
     56  1.35    martin .if ${s:Mhash*} != ""
     57  1.35    martin ${s:S/.c/.o/}:	${TERMINFO_PATH}/${s}
     58  1.35    martin .else
     59  1.35    martin ${s:S/.c/.o/}:	${HACKSRC}/../../../lib/libterminfo/${s}
     60  1.35    martin .endif
     61  1.35    martin .endfor
     62  1.32    martin .endif
     63  1.32    martin 
     64  1.23   tnozaki CPPFLAGS.runetable.c+= -I${HACKSRC}/../../../lib/libc/citrus \
     65  1.23   tnozaki 			-DALL_80_TO_FF_SW1
     66  1.22    martin 
     67  1.24  christos CPPFLAGS.syslog.c+= -I${HACKSRC}/../../../lib/libc/include
     68  1.40  christos CPPFLAGS.sysctl.c+= -I${HACKSRC}/../../../lib/libc/include
     69  1.28  christos CPPFLAGS.jemalloc.c+= -I${HACKSRC}/../../../lib/libc/include
     70  1.25  christos CPPFLAGS.gethost.c+= -I${HACKSRC}/../../../lib/libc/net
     71  1.24  christos 
     72  1.28  christos .if !defined(LIB)
     73  1.15     lukem libhack.o: ${HACKOBJS}
     74  1.39    martin 	${LD} -r ${HACK_LD_FLAGS} -o $@ ${.ALLSRC}
     75  1.28  christos .endif
     76   1.2       gwr 
     77  1.26  christos .if 1
     78  1.28  christos .PATH.c: \
     79  1.28  christos 	${HACKSRC} \
     80  1.28  christos 	${HACKSRC}/../../../lib/libc/gen \
     81  1.28  christos 	${HACKSRC}/../../../lib/libc/locale \
     82  1.37  christos 	${HACKSRC}/../../../lib/libc/regex \
     83  1.28  christos 	${HACKSRC}/../../../lib/libc/stdlib
     84  1.26  christos .else
     85  1.15     lukem # XXX .PATH won't work here, because of crunchgen used by various builds
     86  1.37  christos regcomp.o:	${HACKSRC}/../../../lib/libc/regex/regcomp.c
     87  1.37  christos regexec.o:	${HACKSRC}/../../../lib/libc/regex/regexec.c
     88  1.17  christos getcap.o:	${HACKSRC}/../../../lib/libc/gen/getcap.c
     89  1.15     lukem getgrent.o:	${HACKSRC}/getgrent.c
     90  1.15     lukem gethost.o:	${HACKSRC}/gethost.c
     91  1.15     lukem getnet.o:	${HACKSRC}/getnet.c
     92  1.15     lukem getnetgr.o:	${HACKSRC}/getnetgr.c
     93  1.15     lukem getpwent.o:	${HACKSRC}/getpwent.c
     94  1.15     lukem localeconv.o:	${HACKSRC}/localeconv.c
     95  1.21  christos multibyte.o:	${HACKSRC}/multibyte.c
     96  1.15     lukem perror.o:	${HACKSRC}/perror.c
     97  1.28  christos jemalloc.o:	${HACKSRC}/../../../lib/libc/stdlib/jemalloc.c
     98  1.36  jdolecek aligned_alloc.o:	${HACKSRC}/../../../lib/libc/stdlib/aligned_alloc.c
     99  1.22    martin runetable.o:	${HACKSRC}/../../../lib/libc/locale/runetable.c
    100  1.15     lukem setlocale.o:	${HACKSRC}/setlocale.c
    101  1.15     lukem strerror.o:	${HACKSRC}/strerror.c
    102  1.15     lukem strsignal.o:	${HACKSRC}/strsignal.c
    103  1.18  christos syslog.o:	${HACKSRC}/syslog.c
    104  1.40  christos sysctl.o:	${HACKSRC}/sysctl.c
    105  1.15     lukem utmp.o:		${HACKSRC}/utmp.c
    106  1.29       roy .if (${USE_YP} != "no")
    107  1.15     lukem yplib.o:	${HACKSRC}/yplib.c
    108  1.26  christos .endif
    109  1.29       roy .endif
    110