1# $OpenBSD: Makefile.bsd-wrapper,v 1.83 2015/06/01 17:36:19 miod Exp $ 2 3.include <bsd.own.mk> 4 5CFLAGS+= ${PIE_DEFAULT} 6# This allows moving the whole binutils installation around for 7# testing purposes 8PREFIX=/usr 9.if ${PREFIX} != "/usr" 10MANDIR=${PREFIX}/share/man/man 11.endif 12 13SUBDIRS= opcodes bfd gdb 14CONF_SUBDIRS= ${SUBDIRS} 15INST_SUBDIRS= gdb 16MAN= gdb/gdb.1 17 18# Used by the GNU Makefile 19ALL_MODULES=${SUBDIRS:S/^/all-/g} 20CONFIGURE_MODULES=${CONF_SUBDIRS:S/^/configure-/g} 21CONFIGURE_HOST_MODULES=${CONF_SUBDIRS:S/^/configure-/g} 22ALL_HOST_MODULES=${SUBDIRS:S/^/all-/g} 23INSTALL_MODULES=${INST_SUBDIRS:S/^/install-/g} 24INFO_HOST_MODULES=${SUBDIRS:S/^/info-/g} 25INSTALL_INFO_HOST_MODULES=${INST_SUBDIRS:S/^/install-info-/g} 26 27# cross-compilation 28.if defined(TARGET_ARCH) 29CONFIGTARGET=--target=${TARGET_ARCH}-unknown-openbsd${OSREV} 30.else 31CONFIGTARGET= 32.endif 33 34all: config.status 35 SUBDIRS='${SUBDIRS}' \ 36 CONFIGURE_HOST_MODULES='${CONFIGURE_HOST_MODULES}' \ 37 ${MAKE} CC="${CC}" \ 38 CFLAGS="${CFLAGS} ${COPTS}" LDFLAGS=${LDSTATIC} \ 39 scriptdir=${PREFIX}/libdata \ 40 tooldir=${PREFIX} \ 41 MAKEINFO='makeinfo --no-split' \ 42 MAKEINFOFLAGS='' \ 43 BSDSRCDIR=${BSDSRCDIR} \ 44 ALL_MODULES="${ALL_MODULES}" \ 45 ALL_HOST_MODULES='${ALL_HOST_MODULES}' \ 46 INFO_HOST_MODULES='${INFO_HOST_MODULES}' all info 47 48.include <bsd.own.mk> 49 50.ifdef GLOBAL_AUTOCONF_CACHE 51CF= --cache-file=${GLOBAL_AUTOCONF_CACHE} 52.else 53CF= 54.endif 55 56do-config: .USE 57 PATH="/bin:/usr/bin:/sbin:/usr/sbin" \ 58 MAKEINFO='makeinfo --no-split' \ 59 sh ${.CURDIR}/configure --prefix=${PREFIX} \ 60 --infodir='$${prefix}/share/info' \ 61 --disable-nls --disable-gdbtk --disable-install-libbfd ${CF} \ 62 ${CONFIGTARGET} 63 cd ${.OBJDIR} && \ 64 sed -e 's,SUBDIRS *=,SUBDIRS ?=,' <Makefile >Makefile.tmp && \ 65 mv -f Makefile.tmp Makefile 66 cd ${.OBJDIR} && \ 67 ${MAKE} ${CONFIGURE_MODULES} 68 69config: do-config 70.ifndef GLOBAL_AUTOCONF_CACHE 71 -rm -f config.cache 72.endif 73 74config.status: do-config 75 76# Need to pass SUBDIRS because of install-info 77install: maninstall 78 SUBDIRS='${INST_SUBDIRS}' ${MAKE} DESTDIR='${DESTDIR}' \ 79 INSTALL_MAN= \ 80 scriptdir=${PREFIX}/libdata \ 81 tooldir=${PREFIX} \ 82 BSDSRCDIR=${BSDSRCDIR} \ 83 INSTALL_MODULES='${INSTALL_MODULES}' \ 84 INSTALL_PROGRAM='install -c -S' \ 85 INSTALL_INFO_HOST_MODULES='${INSTALL_INFO_HOST_MODULES}' \ 86 install install-info 87 88clean cleandir: 89 -@if [ -e Makefile ]; then ${MAKE} distclean; fi 90 91c++filt.1: binutils/cxxfilt.man 92 sed -e 's,@PROGRAM@,c++filt,' <${.CURDIR}/binutils/cxxfilt.man >$@ 93 94depend: 95 # Nothing here so far... 96 97lint: 98 # Nothing here so far... 99 100tags: 101 # Nothing here so far... 102 103BEFOREMAN=config.status 104 105.PHONY: config 106 107.include <bsd.obj.mk> 108.include <bsd.subdir.mk> 109 110.ifdef NOMAN 111maninstall: 112 @echo NOMAN is set 113.else 114.include <bsd.man.mk> 115.endif 116