freebsd-ports/lang/gcc12/Makefile
Tobias C. Berner f98ae56653 lang: remove 'Created by' lines
A big Thank You to the original contributors of these ports:

  *  Aaron Dalton <aaron@FreeBSD.org>
  *  Adam Weinberger <adamw@FreeBSD.org>
  *  Akinori MUSHA aka knu <knu@idaemons.org>
  *  Alex Dupre <ale@FreeBSD.org>
  *  Alexey Dokuchaev <danfe@FreeBSD.org>
  *  Alonso Cardenas Marquez <acm@FreeBSD.org>
  *  Andreas Klemm <andreas@klemm.gtn.com>
  *  Andrew Pantyukhin <infofarmer@FreeBSD.org>
  *  Andrey Zakhvatov
  *  Anton Berezin <tobez@FreeBSD.org>
  *  Anton Berezin <tobez@tobez.org>
  *  Anton Shterenlikht
  *  Ashish SHUKLA <ashish@FreeBSD.org>
  *  Bob Eager <bob@eager.cx>
  *  Bruce M Simpson
  *  Bruce M. Simpson
  *  Christoph Mallon <christoph.mallon@gmx.de>
  *  Christopher Elkins <chrise@scardini.com>
  *  Christopher Key <cjk32@cam.ac.uk>
  *  Chuck Robey <chuckr@FreeBSD.org>
  *  Cyrille Lefevre <clefevre@citeweb.net>
  *  Dan Rench <citric@cubicone.tmetic.com>
  *  Danilo Egea Gondolfo <danilogondolfo@gmail.com>
  *  Dario Freni <saturnero@gufi.org>
  *  David Kalliecharan <dave@dal.ca>
  *  David Naylor <dbn@FreeBSD.org>
  *  David Naylor <dbn@dragon.local>
  *  David O'Brien (obrien@NUXI.com)
  *  David O'Brien (obrien@NUXI.org)
  *  David O'Brien <obrien@NUXI.org>
  *  David O'Brien <obrien@cs.ucdavis.edu>
  *  Dereckson <dereckson@gmail.com>
  *  Devon H. O'Dell <devon.odell@gmail.com>
  *  Dmitry Sivachenko <demon@FreeBSD.org>
  *  Don Croyle <croyle@gelemna.org>
  *  Douglas Anestad <yotta@dougdidit.com>
  *  Edwin Groothuis (edwin@mavetju.org)
  *  Edwin Groothuis <edwin@mavetju.org>
  *  Eugene Ossintsev
  *  Frank Fischer
  *  Frank Gruender <elwood@mc5sys.in-berlin.de>
  *  Frederic Cambus
  *  Gea-Suan Lin <gslin@gslin.org>
  *  Gerald Pfeifer <gerald@FreeBSD.org>
  *  Giuseppe Pilichi aka Jacula Modyun <jacula@gmail.com>
  *  GreenDog <fiziologus@gmail.com>
  *  Gustau Perez i Querol <gustau.perez@gmail.com>
  *  Guy Antony Halse <guy@rucus.ru.za.za>
  *  Herve Quiroz <hq@FreeBSD.org>
  *  Hye-Shik Chang
  *  Hye-Shik Chang <perky@fallin.lv>
  *  Hye-Shik Chang <perky@python.or.kr>
  *  Iblis Lin <iblis@hs.ntnu.edu.tw>
  *  James Bailie <jimmy@mammothcheese.ca>
  *  James FitzGibbon <jfitz@FreeBSD.org>
  *  Jean-Sébastien Pédron <dumbbell@FreeBSD.org>
  *  Jean-Yves Lefort <jylefort@FreeBSD.org>
  *  Jeff Brown <jabrown@caida.org>
  *  Jeremy Norris <ishmael27@home.com>
  *  Jing-Tang Keith Jang <keith@FreeBSD.org>
  *  John Hein <jhein@symmetricom.com>
  *  John Marino <marino@FreeBSD.org>
  *  John Merryweather Cooper
  *  John Merryweather Cooper <coop9211@uidaho.edu>
  *  John Merryweather Cooper et al
  *  Joseph Koshy <jkoshy@FreeBSD.org>
  *  Josh Elsasser <jre@vineyard.net>
  *  Josh Gilliam <josh@quick.net>
  *  Julian H. Stacey <jhs@FreeBSD.org>
  *  Julian Stecklina
  *  Jyun-Yan You <jyyou@cs.nctu.edu.tw>
  *  Katsuji ISHIKAWA <katsuji.ishikawa@gmail.com>
  *  Kimura Fuyuki <fuyuki@hadaly.org>
  *  Kimura Fuyuki <fuyuki@mj.0038.net>
  *  Kimura Fuyuki <fuyuki@nigredo.org>
  *  Kiriyama Kazuhiko <kiri@kiri.toba-cmt.ac.jp>
  *  Kubilay Kocak <koobs@FreeBSD.org>
  *  Lars Thegler <lth@FreeBSD.org>
  *  Lev Walkin <vlm@lionet.info>
  *  Li-Wen Hsu <lwhsu@FreeBSD.org>
  *  Mahdi Mokhtari <mokhi64@gmail.com>
  *  Marcin Cieslak <saper@SYSTEM.PL>
  *  Martin Matuska <mm@FreeBSD.org>
  *  Matthew Hunt <mph@FreeBSD.org>
  *  Michael Butschky <butsch@computi.erols.com>
  *  Michael Johnson <ahze@FreeBSD.org>
  *  Mitsuru YOSHIDA <mitsuru@riken.jp>
  *  Muhammad Moinur Rahman <5u623l20@gmail.com>
  *  Neal Nelson <ports@nicandneal.net>
  *  Nicola Vitale <nivit@FreeBSD.org>
  *  Nils M Holm <nmh@t3x.org>
  *  Oliver Braun <obraun@informatik.unibw-muenchen.de>
  *  Oliver Breuninger <ob@seicom.NET>
  *  Patrick Li <pat@databits.net>
  *  Pawel Worach <pawel.worach@gmail.com>
  *  Pedro F. Giffuni <giffunip@asme.org>
  *  Pedro Giffuni
  *  Pedro Giffuni <giffunip@asme.org>
  *  Pete French <pete@twisted.org.uk>
  *  Peter Schuller <peter.schuller@infidyne.com>
  *  Peter van Heusden <pvh@egenetics.com>
  *  Phillip Neumann <pneumann@gmail.com>
  *  Piotr Kubaj <pkubaj@anongoth.pl>
  *  Po-Chuan Hsieh <sunpoet@FreeBSD.org>
  *  Pontus Stenetorp <ninjin@kth.se>
  *  Ralf S. Engelschall <rse@engelschall.com>
  *  Rick van der Zwet <rick@wzoeterwoude.net>
  *  Rob Zinkov
  *  Roland Jesse <roland.jesse@gmx.net>
  *  Romain Tartiere <romain@blogreen.org>
  *  Ryan Steinmetz <zi@FreeBSD.org>
  *  Sahil Tandon <sahil@tandon.net>
  *  Sergei Kolobov <sergei@kolobov.com>
  *  Sergey A. Osokin <osa@FreeBSD.org>
  *  Sergey Skvortsov <skv@protey.ru>
  *  Simon Marlow <simonmar@microsoft.com>
  *  Simun Mikecin <numisemis@yahoo.com>
  *  Stanislav Sedov <ssedov@mbsd.msk.ru>
  *  Stephen Weeks <sweeks@sweeks.com>
  *  Steven G. Kargl
  *  Sunpoet Po-Chuan Hsieh <sunpoet@FreeBSD.org>
  *  Sylvio Cesar <sylvio@FreeBSD.org>
  *  Thomas Gellekum <tg@FreeBSD.org>
  *  Timothy Beyer <beyert@cs.ucr.edu>
  *  Timothy Bourke <timbob@bigpond.com>
  *  Tom Judge <tj@FreeBSD.org>
  *  Veniamin Gvozdikov <vg@FreeBSD.org>
  *  Vitaly Magerya <vmagerya@gmail.com>
  *  Wen Heping <wenheping@gmail.com>
  *  Wen Heping <wenhping@gmail.com>
  *  Wes Peters <wes@softweyr.com>
  *  Ying-Chieh Liao <ijliao@FreeBSD.org>
  *  Yukihiro Nakai <Nakai@technologist.com>
  *  Yukihiro Nakai <nakai@FreeBSD.org>
  *  Zach Garner <zach@neurosoft.org>
  *  aaron@FreeBSD.org
  *  andrewb@cs.cmu.edu
  *  arved
  *  chinsan
  *  chuckr
  *  dd
  *  erik@smluc.org
  *  gahr
  *  gahr@FreeBSD.org
  *  gpalmer
  *  hsu
  *  ijliao
  *  jasone
  *  jkh
  *  jkoshy
  *  jmacd
  *  jmacd@FreeBSD.org
  *  jmz
  *  js@jeannot.org
  *  jseger@FreeBSD.org
  *  kappa@FreeBSD.org.ua
  *  kbyanc
  *  msmith@gsoft.com.au
  *  mutoh@openedu.org
  *  netchild@FreeBSD.org
  *  patrick
  *  pst
  *  rene@FreeBSD.org
  *  ruslan@shevchenko.kiev.ua
  *  stas
  *  tobez

With hat:	portmgr
2022-07-20 16:22:15 +02:00

161 lines
4.6 KiB
Makefile

PORTNAME= gcc
PORTVERSION= 12.1.0
CATEGORIES= lang
MASTER_SITES= GCC
PKGNAMESUFFIX= ${SUFFIX}
MAINTAINER= toolchain@FreeBSD.org
COMMENT= GNU Compiler Collection 12
LICENSE= GPLv3 GPLv3RLE
LICENSE_COMB= multi
ONLY_FOR_ARCHS= aarch64 amd64 arm armv6 armv7 i386 powerpc powerpc64 powerpc64le
LIB_DEPENDS= libgmp.so:math/gmp \
libmpfr.so:math/mpfr \
libmpc.so:math/mpc
BUILD_DEPENDS+= ${LOCALBASE}/bin/as:devel/binutils
RUN_DEPENDS+= ${LOCALBASE}/bin/as:devel/binutils
.if defined(MAINTAINER_MODE)
BUILD_DEPENDS+= runtest:misc/dejagnu
.endif
USES= compiler:c++11-lang cpe gmake iconv libtool makeinfo perl5 tar:xz
USE_BINUTILS= yes
USE_PERL5= build
CONFLICTS= gcc12-devel
CPE_VENDOR= gnu
GCC_VERSION= ${PORTVERSION}
SUFFIX= ${PORTVERSION:C/([0-9]+).*/\1/}
CFLAGS:= ${CFLAGS:N-mretpoline}
CXXFLAGS:= ${CXXFLAGS:N-mretpoline}
OPTIONS_DEFINE= GRAPHITE
OPTIONS_DEFAULT_aarch64=LTO_BOOTSTRAP
OPTIONS_DEFAULT_amd64= LTO_BOOTSTRAP
OPTIONS_DEFAULT_i386= LTO_BOOTSTRAP
OPTIONS_DEFAULT_powerpc=LTO_BOOTSTRAP
OPTIONS_DEFAULT_powerpc64= LTO_BOOTSTRAP
OPTIONS_DEFAULT_powerpc64le= LTO_BOOTSTRAP
OPTIONS_RADIO= BOOTSTRAP
OPTIONS_RADIO_BOOTSTRAP= LTO_BOOTSTRAP STANDARD_BOOTSTRAP
LTO_BOOTSTRAP_DESC= Build using a full LTO bootstrap
STANDARD_BOOTSTRAP_DESC= Build using a full bootstrap without LTO
GRAPHITE_DESC= Support for Graphite loop optimizations
.if exists(/usr/lib32/libc.so)
OPTIONS_DEFINE_amd64+= MULTILIB
OPTIONS_DEFAULT_amd64+= MULTILIB
OPTIONS_DEFINE_powerpc64+= MULTILIB
#OPTIONS_DEFAULT_powerpc64+= MULTILIB # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105010
MULTILIB_DESC= Build support for 32-bit and 64-bit targets
MULTILIB_CONFIGURE_ENABLE= multilib
.else
CONFIGURE_ARGS+= --disable-multilib
.endif
.include <bsd.port.pre.mk>
.if ${ARCH} == amd64
CONFIGURE_TARGET= x86_64-portbld-${OPSYS:tl}${OSREL}
.elif defined(PPC_ABI) && ${PPC_ABI} == ELFv2
CONFIGURE_ARGS+= --with-abi=elfv2
.endif
LANGUAGES:= c,c++,objc,fortran,jit
TARGLIB= ${PREFIX}/lib/gcc${SUFFIX}
TARGLIB32= ${PREFIX}/lib32 # The version information is added later
LIBEXEC= ${PREFIX}/libexec/gcc${SUFFIX}
GNU_CONFIGURE= yes
CONFIGURE_OUTSOURCE= yes
.if empty(PORT_OPTIONS:M*BOOTSTRAP)
CONFIGURE_ARGS+=--disable-bootstrap
.elif ${PORT_OPTIONS:MLTO_BOOTSTRAP}
CONFIGURE_ARGS+=--with-build-config=bootstrap-lto-noplugin
ALL_TARGET= bootstrap-lean
.else
CONFIGURE_ARGS+=--with-build-config=bootstrap-debug
ALL_TARGET= bootstrap-lean
.endif
INSTALL_TARGET= install-strip
.if ${UID} != 0
BINMODE= 755
.endif
CONFIGURE_ARGS+=--disable-nls \
--enable-gnu-indirect-function \
--enable-host-shared \
--enable-plugin \
--libdir=${TARGLIB} \
--libexecdir=${LIBEXEC} \
--program-suffix=${SUFFIX} \
--with-as=${LOCALBASE}/bin/as \
--with-gmp=${LOCALBASE} \
--with-gxx-include-dir=${TARGLIB}/include/c++/ \
--with-ld=${LOCALBASE}/bin/ld \
${ICONV_CONFIGURE_ARG} \
--with-pkgversion="FreeBSD Ports Collection" \
--with-system-zlib \
--without-zstd
MAKE_ARGS+= MAKEINFOFLAGS="--no-split"
USE_LDCONFIG= ${TARGLIB}
PLIST_SUB+= GCC_VERSION=${GCC_VERSION} \
GNU_HOST=${CONFIGURE_TARGET} \
SUFFIX=${SUFFIX}
INFO= gcc${SUFFIX}/cpp \
gcc${SUFFIX}/cppinternals \
gcc${SUFFIX}/gcc \
gcc${SUFFIX}/gccinstall \
gcc${SUFFIX}/gccint \
gcc${SUFFIX}/gfortran \
gcc${SUFFIX}/libgccjit \
gcc${SUFFIX}/libgomp
# Release tarballs (as opposed to snapshots) always carry this.
INFO+= gcc${SUFFIX}/libquadmath \
gcc${SUFFIX}/libitm
SUB_FILES= pkg-message
SUB_LIST+= TARGLIB=${TARGLIB}
.if ${PORT_OPTIONS:MGRAPHITE}
LIB_DEPENDS+= libisl.so:devel/isl
CONFIGURE_ARGS+=--with-isl=${LOCALBASE}
.endif
CONFIGURE_ARGS+=--enable-languages=${LANGUAGES}
pre-everything::
@${ECHO_MSG} "Making GCC ${PORTVERSION} for ${CONFIGURE_TARGET} [${LANGUAGES}]"
pre-configure:
cd ${WRKSRC} ; contrib/gcc_update --touch
@${RM} ${WRKSRC}/gcc/*/*.info*
.if defined(MAINTAINER_MODE)
full-regression-test: build
cd ${TEST_WRKSRC}; ${MAKE_CMD} -sk check \
; ${WRKSRC}/contrib/test_summary
.endif
post-stage:
${RM} ${STAGEDIR}${PREFIX}/man/man7/*
${RM} -r ${STAGEDIR}${TARGLIB}/gcc/*/${GCC_VERSION}/include-fixed/
# Add target libraries and include files to packaging list.
${RM} ${WRKDIR}/PLIST.lib
.if (${ARCH} == amd64 || ${ARCH} == powerpc64) && ${PORT_OPTIONS:MMULTILIB}
${MKDIR} ${STAGEDIR}${TARGLIB32}
${MV} ${STAGEDIR}${PREFIX}/lib/lib32 ${STAGEDIR}${TARGLIB32}/gcc${SUFFIX}
.endif
.for d in ${TARGLIB:S/^${PREFIX}\///} ${TARGLIB32:S/^${PREFIX}\///} ${LIBEXEC:S/^${PREFIX}\///}
cd ${STAGEDIR}${PREFIX} ; if [ -d $d ]; then \
${FIND} $d -type f -o -type l >>${WRKDIR}/PLIST.lib ;\
fi
.endfor
cd ${WRKDIR} ; ${SED} -i -e "/PLIST.lib/ r PLIST.lib" ${TMPPLIST}
.include <bsd.port.post.mk>