Annotation of ports/Makefile, Revision 1.1.1.2
1.1.1.2 ! pascal 1: # $OpenBSD: Makefile,v 1.66 2011/10/04 07:08:54 espie Exp $
1.1.1.1 form 2:
1.1.1.2 ! pascal 3: ONLY_FOR_ARCHS = alpha i386 m68k sparc sparc64 powerpc vax amd64
! 4: #BROKEN=adjust for types changes
1.1.1.1 form 5:
1.1.1.2 ! pascal 6: V = 4.6.2
! 7: FULL_VERSION = $V
! 8: FULL_PKGVERSION = $V
! 9: BOOTSTRAP_GEN = 3
! 10: # XXX this needs libc.so.61.0 to build on i386
! 11: ADASTRAP = adastrap-i386-$V-${BOOTSTRAP_GEN}.tar.xz
! 12:
! 13: PKGNAME-main = gcc-${FULL_PKGVERSION}
! 14: PKGNAME-c++ = g++-${FULL_PKGVERSION}
! 15: PKGNAME-estdc = libstdc++-${FULL_PKGVERSION}
! 16: PKGNAME-f95 = g95-${FULL_PKGVERSION}
! 17: PKGNAME-java = gcj-${FULL_PKGVERSION}
! 18: PKGNAME-objc = gobjc-${FULL_PKGVERSION}
! 19: PKGNAME-ada = gnat-${FULL_PKGVERSION}
! 20: #PKGNAME-go = gccgo-${FULL_PKGVERSION}
! 21:
! 22: SHARED_LIBS = estdc++ 11.0 \
! 23: gfortran 2.0 \
! 24: gcj 0.0 \
! 25: gcj-tools 0.0 \
! 26: gij 0.0 \
! 27: objc 2.0 \
! 28: ssp 0.0 \
! 29: lto_plugin 0.0
! 30:
! 31:
! 32: PSEUDO_FLAVORS = no_c++ no_f95 no_objc no_java no_ada
! 33: FLAVOR ?=
! 34:
! 35: ONLY_FOR_ARCHS-ada = i386
! 36: ONLY_FOR_ARCHS-java = amd64 sparc64 i386
! 37: #ONLY_FOR_ARCHS-go = amd64 i386 # XXX
! 38:
! 39: MULTI_PACKAGES = -main -f95 -objc -java -c++ -estdc -ada
! 40:
! 41: .include <bsd.port.arch.mk>
! 42:
! 43: # kill both C++ subpackages
! 44: .if !${BUILD_PACKAGES:M-c++}
! 45: BUILD_PACKAGES := ${BUILD_PACKAGES:N-estdc}
! 46: .endif
! 47:
! 48: DISTFILES = ${DISTNAME}.tar.bz2
! 49: SUPDISTFILES = ${ADASTRAP}:0
! 50:
! 51: USE_LIBTOOL = Yes
! 52:
! 53: BUILD_DEPENDS += devel/bison
! 54:
! 55:
! 56: REGRESS_DEPENDS = devel/dejagnu \
! 57: devel/autogen
! 58:
! 59: DISTNAME = gcc-${FULL_VERSION}
! 60:
! 61:
! 62: MASTER_SITES = ${MASTER_SITE_GCC:=releases/gcc-$(FULL_VERSION)/}
! 63: MASTER_SITES0 = ftp://quatramaran.ens.fr/pub/espie/
! 64:
! 65: CONFIGURE_STYLE = gnu
! 66: MODGNU_CONFIG_GUESS_DIRS = ${WRKSRC} ${WRKSRC}/gcc
! 67:
! 68: LANGS = c
! 69: .if ${BUILD_PACKAGES:M-c++}
! 70: LANGS := ${LANGS},c++
! 71: REGRESS_DEPENDS += libstdc++->=4.6,<4.7:${BUILD_PKGPATH},-estdc
! 72: .endif
! 73: .if ${BUILD_PACKAGES:M-f95}
! 74: LANGS := ${LANGS},fortran
! 75: CONFIGURE_ARGS += --with-gmp=${LOCALBASE}
! 76: .endif
! 77: .if ${BUILD_PACKAGES:M-objc}
! 78: LANGS := ${LANGS},objc
! 79: .endif
! 80: .if ${BUILD_PACKAGES:M-java}
! 81: LANGS := ${LANGS},java
! 82: BUILD_DEPENDS += archivers/zip>=2.3p0
! 83: CONFIGURE_ARGS += --enable-libgcj
! 84: .endif
! 85: .if ${BUILD_PACKAGES:M-ada}
! 86: LANGS := ${LANGS},ada
! 87: DISTFILES += ${ADASTRAP}:0
! 88: CONFIGURE_ENV = ADAC=${WRKDIR}/bin/egcc GNATBIND=${WRKDIR}/bin/gnatbind
! 89: MAKE_ENV = ADAC=${WRKDIR}/bin/egcc GNATBIND=${WRKDIR}/bin/gnatbind
! 90: CC = ${WRKDIR}/bin/egcc
! 91: REGRESS_DEPENDS += ${BUILD_PKGPATH},-ada
! 92: .endif
! 93: #.if ${BUILD_PACKAGES:M-go}
! 94: #LANGS := ${LANGS},go
! 95: #.endif
! 96:
! 97: post-extract:
! 98: .for f in egcc gnatbind gnatmake gnatlink
! 99: echo "#! /bin/sh" >${WRKDIR}/bin/$f
! 100: echo 'GNAT_ROOT=${WRKDIR}/bootstrap GCC_ROOT=${WRKDIR}/bootstrap exec ${WRKDIR}/bootstrap/bin/$f "$$@"' >>${WRKDIR}/bin/$f
! 101: chmod a+x ${WRKDIR}/bin/$f
! 102: .endfor
! 103: ln -s /usr/bin/nm ${WRKDIR}/bin/enm
! 104: echo "# This file automatically generated" >> ${WRKSRC}/libversions
! 105: .for l v in ${SHARED_LIBS}
! 106: echo "LIB$l_LTVERSION = -version-info ${v:S/./:/}" >> ${WRKSRC}/libversions
! 107: .endfor
! 108:
! 109: post-install:
! 110: .if ${BUILD_PACKAGES:M-ada}
! 111: chown -R ${SHAREOWN}:${SHAREGRP} ${PREFIX}/lib/gcc/*/$V/adainclude
! 112: chown -R ${SHAREOWN}:${SHAREGRP} ${PREFIX}/lib/gcc/*/$V/adalib
! 113: .endif
! 114: chown -R ${SHAREOWN}:${SHAREGRP} ${PREFIX}/lib/gcc/*/$V/include
! 115: chown -R ${SHAREOWN}:${SHAREGRP} ${PREFIX}/lib/gcc/*/$V/include-fixed
! 116: CONFIGURE_ENV += am_cv_func_iconv=no
! 117: CONFIGURE_ENV += ac_cv_prog_CONFIGURED_M4=/usr/bin/m4
! 118:
! 119: # Note: the configure target passes CFLAGS to the configure script anyways.
! 120:
! 121: CFLAGS = -O2 -g
! 122:
! 123:
! 124: CONFIGURE_ARGS += \
! 125: --verbose \
! 126: --program-transform-name=s,^,e, \
! 127: --disable-nls \
! 128: --disable-checking \
! 129: --with-system-zlib \
! 130: --disable-libmudflap \
! 131: --disable-libgomp \
! 132: --disable-tls \
! 133: --with-as=/usr/bin/as \
! 134: --with-ld=/usr/bin/ld \
! 135: --with-gnu-ld \
! 136: --with-gnu-as \
! 137: --enable-threads=posix \
! 138: --enable-wchar_t \
! 139: --enable-languages=${LANGS}
! 140:
! 141: # This is needed, as internal cpp is no longer compatible with the
! 142: # visible beast
! 143: CONFIGURE_ARGS += --enable-cpp
! 144:
! 145: CONFIGURE_ARGS += ${CONFIGURE_SHARED}
! 146:
! 147: SEPARATE_BUILD = flavored
! 148:
! 149: USE_GMAKE = yes
! 150:
! 151: # you shouldn't skip bootstrap unless you know what you're doing
! 152: # use bootstrap-lean if you're pressed for space
! 153: ALL_TARGET = bootstrap
! 154:
! 155: MAKE_FLAGS = libstdc___la_LDFLAGS='-version-info 31:0:0 -lm'
! 156:
! 157:
! 158: .if ${MACHINE_ARCH} == "m68k" || ${MACHINE_ARCH} == "sparc" || ${MACHINE_ARCH} == "amd64"
! 159: PKG_ARGS += -DPIC=1
! 160: .else
! 161: PKG_ARGS += -DPIC=0
! 162: .endif
! 163:
! 164: .if ${MACHINE_ARCH} == "powerpc"
! 165: PKG_ARGS += -DPPC=1
! 166: .else
! 167: PKG_ARGS += -DPPC=0
! 168: .endif
! 169:
! 170: .if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "amd64"
! 171: PKG_ARGS += -DI386=1
! 172: .else
! 173: PKG_ARGS += -DI386=0
! 174: .endif
! 175:
! 176: RUN_DEPENDS = gcc-${FULL_PKGVERSION}:${BUILD_PKGPATH}
! 177: WANTLIB = c
! 178:
! 179: RUN_DEPENDS-main =
! 180: RUN_DEPENDS-estdc =
! 181: RUN_DEPENDS-java =
! 182:
! 183: RUN_DEPENDS-c++ = ${RUN_DEPENDS} libstdc++->=4.6,<4.7:${BUILD_PKGPATH},-estdc
! 184: WANTLIB-main = ${WANTLIB} gmp mpc mpfr z
! 185: WANTLIB-c++ = ${WANTLIB} gmp mpc mpfr z
! 186: WANTLIB-estdc = m
! 187: WANTLIB-f95 = ${WANTLIB} gmp m mpc mpfr z
! 188: WANTLIB-java = ${WANTLIB} gmp m mpc mpfr pthread z
! 189: WANTLIB-objc = ${WANTLIB} gmp mpc mpfr z
! 190:
! 191: LIB_DEPENDS += devel/gmp>=4.2 \
! 192: devel/mpfr \
! 193: devel/libmpc
! 194: LIB_DEPENDS-estdc =
! 195:
! 196: .if ${MACHINE_ARCH:Mamd64}
! 197: CONFIG=x86_64-unknown-openbsd${OSREV}
! 198: .endif
1.1.1.1 form 199:
200: .include <bsd.port.mk>
1.1.1.2 ! pascal 201:
! 202: ADA_PACKAGE = ${PACKAGE_REPOSITORY}/i386/all/${PKGNAME-ada}${PKG_SUFX}
! 203: GCC_PACKAGE = ${PACKAGE_REPOSITORY}/i386/all/${PKGNAME-main}${PKG_SUFX}
! 204:
! 205: adastrap: ${ADA_PACKAGE} ${GCC_PACKAGE}
! 206: mkdir -p ${WRKDIR}/prepare/bootstrap
! 207: cd ${WRKDIR}/prepare/bootstrap && tar zxf ${ADA_PACKAGE}
! 208: cd ${WRKDIR}/prepare/bootstrap && tar zxf ${GCC_PACKAGE}
! 209: rm -rf ${WRKDIR}/prepare/bootstrap/{+*,info,man}
! 210: cd ${WRKDIR}/prepare && tar cf - bootstrap | xz > ${FULLDISTDIR}/${ADASTRAP}
! 211: