98 lines
3.2 KiB
Makefile
98 lines
3.2 KiB
Makefile
# $NetBSD: Makefile,v 1.2 2019/12/19 22:10:35 joerg Exp $
|
|
|
|
# using configure options and sources from
|
|
# https://github.com/earlephilhower/esp-quick-toolchain
|
|
|
|
DISTNAME= gcc-xtensa-4.8.2
|
|
PKGNAME= ${DISTNAME:C/gcc-xtensa/xtensa-lx106-elf-gcc/}
|
|
CATEGORIES= cross
|
|
MASTER_SITES= ${MASTER_SITE_GITHUB:=jcmvbkbc/}
|
|
GITHUB_PROJECT= gcc-xtensa
|
|
GITHUB_TAG= a0936f8b396491bc7894c8bc5e80971cc9138e94
|
|
|
|
DIST_SUBDIR= ${PKGNAME}
|
|
|
|
# Custom xtensa newlib
|
|
DISTFILES= ${DEFAULT_DISTFILES}
|
|
DISTFILES+= newlib-${NEWLIBVER}.tar.gz
|
|
NEWLIBVER= xtensa-2_2_0-lock-arduino_20190913
|
|
SITES.newlib-${NEWLIBVER}.tar.gz= -https://github.com/earlephilhower/newlib-xtensa/archive/b350aadd0c7f44d5ec867494a795a0eed972ee9a.tar.gz
|
|
|
|
# extra patches
|
|
.for _p in \
|
|
gcc-ctype-inline-pgmread.patch \
|
|
gcc-docs.patch \
|
|
gcc-enable-mforcel32-eh.patch \
|
|
gcc-exception-emergency.patch \
|
|
gcc-exception-what-to-pmem.patch \
|
|
gcc-file-shortname.patch \
|
|
gcc-fix-defaults-h-gcc7.patch \
|
|
gcc-fix-elfos-h-gcc7.patch \
|
|
gcc-gmpn_invert_limb.patch \
|
|
gcc-libc_name_p-fix.patch \
|
|
gcc-mforce-l32-jcmvbkbc.patch \
|
|
gcc-osx-malloc.patch \
|
|
gcc-stdcsupp-safe.patch \
|
|
gcc-unwind-safe.patch
|
|
PATCHFILES+= ${_p}
|
|
.endfor
|
|
PATCH_SITES+= https://raw.githubusercontent.com/earlephilhower/esp-quick-toolchain/master/patches/gcc4.8/
|
|
|
|
PATCHFILES+= gcc-001-jump-tables-in-text-section-earlephilhower.patch
|
|
PATCH_SITES+= https://github.com/earlephilhower/esp-quick-toolchain/raw/master/patches/
|
|
PATCH_DIST_STRIP= -p1
|
|
|
|
MAINTAINER= bouyer@NetBSD.org
|
|
HOMEPAGE= https://github.com/espressif/gcc
|
|
COMMENT= Cross GCC for Espressif ESP8266 bare metal environment
|
|
LICENSE= gnu-gpl-v2 AND gnu-gpl-v3 AND gnu-lgpl-v2 AND gnu-lgpl-v3
|
|
|
|
DEPENDS+= xtensa-lx106-elf-binutils-[0-9]*:../../cross/xtensa-lx106-elf-binutils
|
|
|
|
FILESDIR= ${.CURDIR}/../../cross/xtensa-lx106-elf-binutils/files
|
|
|
|
GNU_CONFIGURE= yes
|
|
INFO_FILES= yes
|
|
USE_LANGUAGES+= c c++03
|
|
USE_TOOLS+= bash gmake makeinfo perl
|
|
|
|
# for http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33549
|
|
# use makeinfo from pkgsrc/devel/gtexinfo.
|
|
TOOL_DEPENDS+= gtexinfo>=5.1:../../devel/gtexinfo
|
|
_TOOLS_USE_PKGSRC.makeinfo= yes
|
|
|
|
OBJDIR= ../build
|
|
CONFIGURE_DIRS= ${OBJDIR}
|
|
CONFIGURE_SCRIPT= ${WRKSRC}/configure
|
|
CONFIG_SHELL= ${TOOLS_PATH.bash}
|
|
WRAPPER_SHELL= ${TOOLS_PATH.bash}
|
|
GNU_CONFIGURE_PREFIX= ${PREFIX}/xtensa-lx106-elf
|
|
|
|
CONFIGURE_ARGS+= --enable-languages=c,c++
|
|
CONFIGURE_ARGS+= --target=xtensa-lx106-elf
|
|
CONFIGURE_ARGS+= --disable-shared
|
|
CONFIGURE_ARGS+= --with-newlib
|
|
CONFIGURE_ARGS+= --enable-threads=no
|
|
CONFIGURE_ARGS+= --disable-__cxa_atexit
|
|
CONFIGURE_ARGS+= --disable-libgomp
|
|
CONFIGURE_ARGS+= --disable-libmudflap
|
|
CONFIGURE_ARGS+= --disable-nls
|
|
CONFIGURE_ARGS+= --disable-multilib
|
|
CONFIGURE_ARGS+= --disable-bootstrap
|
|
CONFIGURE_ARGS+= --enable-languages=c,c++
|
|
CONFIGURE_ARGS+= --enable-lto
|
|
CONFIGURE_ARGS+= --enable-static=yes
|
|
CONFIGURE_ARGS+= --disable-libstdcxx-verbose
|
|
|
|
post-extract:
|
|
${LN} -s ${WRKDIR}/newlib-*/newlib ${WRKSRC}/newlib
|
|
${LN} -s ${WRKDIR}/newlib-*/libgloss ${WRKSRC}/libgloss
|
|
|
|
pre-configure:
|
|
${MKDIR} ${WRKSRC}/${OBJDIR}
|
|
${CP} ${FILESDIR}/xtensa-config.h ${WRKSRC}/include/xtensa-config.h
|
|
|
|
.include "../../devel/gmp/buildlink3.mk"
|
|
.include "../../math/mpfr/buildlink3.mk"
|
|
.include "../../math/mpcomplex/buildlink3.mk"
|
|
.include "../../mk/bsd.pkg.mk"
|