aboutsummaryrefslogtreecommitdiffstats
path: root/lang
diff options
context:
space:
mode:
authorpi <pi@FreeBSD.org>2015-07-24 12:28:40 +0800
committerpi <pi@FreeBSD.org>2015-07-24 12:28:40 +0800
commit076858a1a4114e13e8c9f91ba8b724e24de6d0ad (patch)
tree1401abddde919e141a791bb707de1ac7a0ebbee5 /lang
parent75fac50469b0fdcf12b93e133ea38015036ff53f (diff)
downloadfreebsd-ports-gnome-076858a1a4114e13e8c9f91ba8b724e24de6d0ad.tar.gz
freebsd-ports-gnome-076858a1a4114e13e8c9f91ba8b724e24de6d0ad.tar.zst
freebsd-ports-gnome-076858a1a4114e13e8c9f91ba8b724e24de6d0ad.zip
lang/tcc: add amd64 support
- Add amd64 support - Fix shebang in texi2pod.pl - Fix pkg-plist - Bump PORTVERSION PR: 201749 Submitted by: Carlos Jacobo Puga Medina <cpm@fbsd.es> (maintainer)
Diffstat (limited to 'lang')
-rw-r--r--lang/tcc/Makefile22
-rw-r--r--lang/tcc/files/patch-lib_Makefile11
-rw-r--r--lang/tcc/files/patch-texi2pod.pl8
-rw-r--r--lang/tcc/pkg-plist4
4 files changed, 42 insertions, 3 deletions
diff --git a/lang/tcc/Makefile b/lang/tcc/Makefile
index 1055697d18bb..72b016e43c21 100644
--- a/lang/tcc/Makefile
+++ b/lang/tcc/Makefile
@@ -2,7 +2,7 @@
PORTNAME= tcc
PORTVERSION= 0.9.26
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= lang
MASTER_SITES= SAVANNAH/tinycc
@@ -11,7 +11,7 @@ COMMENT= Tiny C Compiler
LICENSE= LGPL21
-ONLY_FOR_ARCHS= i386
+ONLY_FOR_ARCHS= amd64 i386
CONFLICTS= TenDRA-[0-9]*
@@ -28,7 +28,21 @@ PORTDOCS= COPYING Changelog README TODO VERSION
.include <bsd.port.options.mk>
+.if ${ARCH} == "amd64"
+CONFIGURE_ARGS+= --cpu=x86-64 --extra-cflags="-DTCC_TARGET_X86_64 -DONE_SOURCE"
+MAKE_ARGS+= ARCH=x86-64
+CPUTYPE= x86_64
+FILES= bcheck.o alloca86_64.o libtcc1.o
+
+PLIST_SUB+= AMD64=""
+.else
+PLIST_SUB+= AMD64="@comment "
+.endif
+
.if ${ARCH} == "i386"
+CPUTYPE= i386
+FILES= bcheck.o alloca86.o alloca86-bt.o
+
PLIST_SUB+= I386=""
.else
PLIST_SUB+= I386="@comment "
@@ -42,7 +56,9 @@ post-install:
${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/tcc
${INSTALL_MAN} ${WRKSRC}/tcc.1 ${STAGEDIR}${MAN1PREFIX}/man/man1
${RM} -r ${STAGEDIR}${PREFIX}/share/man
- ${INSTALL_DATA} ${WRKSRC}/lib/i386/bcheck.o ${STAGEDIR}${PREFIX}/lib/tcc
+.for f in ${FILES}
+ ${INSTALL_DATA} ${WRKSRC}/lib/${CPUTYPE}/*.o ${STAGEDIR}${PREFIX}/lib/tcc
+.endfor
.if ${PORT_OPTIONS:MDOCS}
${MKDIR} ${STAGEDIR}${DOCSDIR}
diff --git a/lang/tcc/files/patch-lib_Makefile b/lang/tcc/files/patch-lib_Makefile
new file mode 100644
index 000000000000..3ad891d58461
--- /dev/null
+++ b/lang/tcc/files/patch-lib_Makefile
@@ -0,0 +1,11 @@
+--- lib/Makefile.orig 2015-07-21 22:05:25 UTC
++++ lib/Makefile
+@@ -40,7 +40,7 @@ native : TCC = $(TOP)/tcc$(EXESUF)
+ cross : TCC = $(TOP)/$(TARGET)-tcc$(EXESUF)
+
+ I386_O = libtcc1.o alloca86.o alloca86-bt.o $(BCHECK_O)
+-X86_64_O = libtcc1.o alloca86_64.o
++X86_64_O = libtcc1.o alloca86_64.o $(BCHECK_O)
+ WIN32_O = $(I386_O) crt1.o wincrt1.o dllcrt1.o dllmain.o chkstk.o
+ WIN64_O = $(X86_64_O) crt1.o wincrt1.o dllcrt1.o dllmain.o chkstk.o
+
diff --git a/lang/tcc/files/patch-texi2pod.pl b/lang/tcc/files/patch-texi2pod.pl
new file mode 100644
index 000000000000..924850901d56
--- /dev/null
+++ b/lang/tcc/files/patch-texi2pod.pl
@@ -0,0 +1,8 @@
+--- texi2pod.pl.orig 2013-02-15 14:24:00 UTC
++++ texi2pod.pl
+@@ -1,4 +1,4 @@
+-#! /usr/bin/perl -w
++#! /usr/local/bin/perl -w
+
+ # Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc.
+
diff --git a/lang/tcc/pkg-plist b/lang/tcc/pkg-plist
index 34f5b4b36db0..72e6f16d73ad 100644
--- a/lang/tcc/pkg-plist
+++ b/lang/tcc/pkg-plist
@@ -8,6 +8,10 @@ lib/tcc/include/stddef.h
lib/tcc/include/tcclib.h
lib/tcc/include/varargs.h
lib/tcc/bcheck.o
+%%I386%%lib/tcc/alloca86.o
+%%I386%%lib/tcc/alloca86-bt.o
+%%AMD64%%lib/tcc/alloca86_64.o
+lib/tcc/libtcc1.o
lib/tcc/libtcc1.a
man/man1/tcc.1.gz
%%PORTDOCS%%%%DOCSDIR%%/tcc-doc.html