# Created by: Ben Haga # $FreeBSD$ PORTNAME= tigcc PORTVERSION= 0.96.b8 PORTREVISION= 5 CATEGORIES= devel MASTER_SITES= GCC/snapshots/4.1-20060728:gcc \ GNU/binutils:gas \ http://tigcc.ticalc.org/linux/:tigcc DISTFILES= gcc-core-4.1-20060728.tar.bz2:gcc \ binutils-2.16.1.tar.bz2:gas \ tigcc_src.tar.bz2:tigcc MAINTAINER= cyberbotx@cyberbotx.com COMMENT= C compiler for the TI89, 92, and 92+ calculators BROKEN_mips= fails to compile: main_opt.inc: nested functions are disabled, use -fnested-functions to re-enable BROKEN_mips64= fails to compile: main_opt.inc: nested functions are disabled, use -fnested-functions to re-enable BROKEN_powerpc64= fails to compile: main_opt.inc: nested functions are disabled, use -fnested-functions to re-enable BROKEN_sparc64= fails to compile: main_opt.inc: nested functions are disabled, use -fnested-functions to re-enable USE_CSTD= gnu89 USES= bison compiler:nestedfct gmake tar:bzip2 NO_WRKSUBDIR= yes SUB_FILES= pkg-message OPTIONS_DEFINE= DOCS EXAMPLES do-extract: @${MKDIR} ${WRKSRC} @${MKDIR} ${WRKSRC}/tigcc @${TAR} xjf ${DISTDIR}/tigcc_src.tar.bz2 -C ${WRKSRC}/tigcc/ @${MKDIR} ${WRKSRC}/gnu @${TAR} xjf ${DISTDIR}/gcc-core-4.1-20060728.tar.bz2 -C ${WRKSRC}/gnu/ @${TAR} xjf ${DISTDIR}/binutils-2.16.1.tar.bz2 -C ${WRKSRC}/gnu/ post-patch: @cd ${WRKSRC}/gnu/binutils-2.16.1; ${PATCH} -s -p1 < ${WRKSRC}/tigcc/sources/gcc/gas-2.16-tigcc-patch.diff @cd ${WRKSRC}/gnu/gcc-4.1-20060728; ${PATCH} -s -p1 < ${WRKSRC}/tigcc/sources/gcc/gcc-4.1-tigcc-patch.diff @cd ${WRKSRC}/gnu/gcc-4.1-20060728/gcc; ${ECHO} "echo all:" > mklibgcc.in @${REINPLACE_CMD} -e 's/^CC[[:space:]]*=/CC ?=/' -e 's/^CFLAGS[[:space:]]*=/CFLAGS ?=/' \ ${WRKSRC}/tigcc/sources/a68k/Makefile ${WRKSRC}/tigcc/sources/ld-tigcc/Makefile \ ${WRKSRC}/tigcc/sources/patcher/src/Makefile ${WRKSRC}/tigcc/sources/tigcc/src/Makefile \ ${WRKSRC}/tigcc/sources/tprbuilder/src/Makefile do-build: @${ECHO} Building GNU AS @${MKDIR} ${WRKSRC}/gnu/binutils_build @cd ${WRKSRC}/gnu/binutils_build; \ ${SETENV} CC="${CC}" CPP="${CPP}" CXX="${CXX}" \ CFLAGS="${CFLAGS}" CPPFLAGS="${CPPFLAGS}" CXXFLAGS="${CXXFLAGS}" \ LDFLAGS="${LDFLAGS}" LIBS="${LIBS}" \ ${CONFIGURE_ENV} \ ${WRKSRC}/gnu/binutils-2.16.1/configure --disable-serial-configure --target=m68k-coff --disable-shared \ --enable-static --disable-multilib --disable-nls --disable-win32-registry @cd ${WRKSRC}/gnu/binutils_build; ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_FLAGS} ${MAKEFILE} ${_MAKE_JOBS} @${ECHO} Building the GNU C COMPILER @${MKDIR} ${WRKSRC}/gnu/gcc_build @cd ${WRKSRC}/gnu/gcc_build; \ ${SETENV} CC="${CC}" CPP="${CPP}" CXX="${CXX}" \ CFLAGS="${CFLAGS}" CPPFLAGS="${CPPFLAGS}" CXXFLAGS="${CXXFLAGS}" \ LDFLAGS="${LDFLAGS}" LIBS="${LIBS}" \ ${CONFIGURE_ENV} \ ${WRKSRC}/gnu/gcc-4.1-20060728/configure --target=m68k-coff --with-gnu-as --disable-nls --disable-multilib \ --disable-shared --enable-static --disable-threads --disable-win32-registry --disable-checking --disable-werror \ --disable-pch --disable-mudflap --disable-libssp @cd ${WRKSRC}/gnu/gcc_build; ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_FLAGS} ${MAKEFILE} ${_MAKE_JOBS} @${ECHO} Building A68K @cd ${WRKSRC}/tigcc/sources/a68k; ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_FLAGS} ${MAKEFILE} ${_MAKE_JOBS} @${ECHO} Building LD-TIGCC @cd ${WRKSRC}/tigcc/sources/ld-tigcc; ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_FLAGS} ${MAKEFILE} ${_MAKE_JOBS} @${ECHO} Building PATCHER @cd ${WRKSRC}/tigcc/sources/patcher/src; ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_FLAGS} ${MAKEFILE} ${_MAKE_JOBS} @${ECHO} Building the ExePack support from the TIGCC Tools Suite @cd ${WRKSRC}/tigcc/sources/ttpack; ${CC} ${CFLAGS} -o ttpack ttpack.c @cd ${WRKSRC}/tigcc/sources/ttpack; ${CC} ${CFLAGS} -o ttbin2oth ttbin2oth.c @${ECHO} Building TIGCC @cd ${WRKSRC}/tigcc/sources/tigcc/src; ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_FLAGS} ${MAKEFILE} ${_MAKE_JOBS} @${ECHO} Building TPRBUILDER @cd ${WRKSRC}/tigcc/sources/tprbuilder/src; ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_FLAGS} ${MAKEFILE} ${_MAKE_JOBS} do-install: @${MKDIR} ${STAGEDIR}${PREFIX}/tigcc @${MKDIR} ${STAGEDIR}${PREFIX}/tigcc/bin @${ECHO} Installing GNU AS ${INSTALL_PROGRAM} ${WRKSRC}/gnu/binutils_build/gas/as-new ${STAGEDIR}${PREFIX}/tigcc/bin/as @${ECHO} Installing the GNU C Compiler ${INSTALL_PROGRAM} ${WRKSRC}/gnu/gcc_build/gcc/cc1 ${STAGEDIR}${PREFIX}/tigcc/bin/cc1 ${INSTALL_PROGRAM} ${WRKSRC}/gnu/gcc_build/gcc/xgcc ${STAGEDIR}${PREFIX}/tigcc/bin/gcc @${ECHO} Installing A68K ${INSTALL_PROGRAM} ${WRKSRC}/tigcc/sources/a68k/A68k ${STAGEDIR}${PREFIX}/tigcc/bin/a68k @${ECHO} Installing LD-TIGCC ${INSTALL_PROGRAM} ${WRKSRC}/tigcc/sources/ld-tigcc/ld-tigcc ${STAGEDIR}${PREFIX}/tigcc/bin/ld-tigcc ${INSTALL_PROGRAM} ${WRKSRC}/tigcc/sources/ld-tigcc/ar-tigcc ${STAGEDIR}${PREFIX}/tigcc/bin/ar-tigcc @${ECHO} Installing PATCHER ${INSTALL_PROGRAM} ${WRKSRC}/tigcc/sources/patcher/src/patcher ${STAGEDIR}${PREFIX}/tigcc/bin/patcher @${ECHO} Installing the ExePack support from the TIGCC Tools Suite ${INSTALL_PROGRAM} ${WRKSRC}/tigcc/sources/ttpack/ttpack ${STAGEDIR}${PREFIX}/tigcc/bin/ttpack ${INSTALL_PROGRAM} ${WRKSRC}/tigcc/sources/ttpack/ttbin2oth ${STAGEDIR}${PREFIX}/tigcc/bin/ttbin2oth @${ECHO} Installing TIGCC ${INSTALL_PROGRAM} ${WRKSRC}/tigcc/sources/tigcc/src/tigcc ${STAGEDIR}${PREFIX}/tigcc/bin/tigcc @${ECHO} Installing TPRBUILDER ${INSTALL_PROGRAM} ${WRKSRC}/tigcc/sources/tprbuilder/src/tprbuilder ${STAGEDIR}${PREFIX}/tigcc/bin/tprbuilder @${ECHO} Installing TIGCCLIB @${CP} -R ${WRKSRC}/tigcc/tigcclib/include ${STAGEDIR}${PREFIX}/tigcc/ @${LN} -s ./os.h ${STAGEDIR}${PREFIX}/tigcc/include/asm/OS.h @${CP} -R ${WRKSRC}/tigcc/tigcclib/lib ${STAGEDIR}${PREFIX}/tigcc/ do-install-DOCS-on: @${ECHO} Installing the TIGCC documentation @${MKDIR} ${STAGEDIR}${DOCSDIR} @cd ${WRKSRC}/tigcc; ${CP} AUTHORS BUGS CHANGELOG COPYING DIRECTORIES HOWTO INSTALL README README.linux README.osX ${STAGEDIR}${DOCSDIR}/ @${MKDIR} ${STAGEDIR}${DOCSDIR}/a68k @cd ${WRKSRC}/tigcc/sources/a68k; ${CP} Bugs.txt Doc.txt History.txt ToDo.txt ${STAGEDIR}${DOCSDIR}/a68k/ @${MKDIR} ${STAGEDIR}${DOCSDIR}/tigcc @cd ${WRKSRC}/tigcc; ${CP} AUTHORS COPYING CHANGELOG README ${STAGEDIR}${DOCSDIR}/tigcc/ @${MKDIR} ${STAGEDIR}${DOCSDIR}/tprbuilder @cd ${WRKSRC}/tigcc/sources/tprbuilder; ${CP} AUTHORS COPYING ChangeLog README ${STAGEDIR}${DOCSDIR}/tprbuilder/ @${MKDIR} ${STAGEDIR}${DOCSDIR}/patcher @cd ${WRKSRC}/tigcc/sources/patcher; ${CP} AUTHORS COPYING ChangeLog README ${STAGEDIR}${DOCSDIR}/patcher/ @${CP} -R ${WRKSRC}/tigcc/tigcclib/doc/html ${STAGEDIR}${DOCSDIR}/ @${LN} -s ./html ${STAGEDIR}${DOCSDIR}/tigcclib @${CP} ${WRKSRC}/tigcc/tigcclib/doc/converter/tigccdoc ${STAGEDIR}${PREFIX}/tigcc/bin/ do-install-EXAMPLES-on: @${MKDIR} ${STAGEDIR}${EXAMPLESDIR} @${CP} ${WRKSRC}/tigcc/tigcclib/examples/* ${STAGEDIR}${EXAMPLESDIR}/ .include