View | Details | Raw Unified | Return to bug 196642 | Differences between
and this patch

Collapse All | Expand All

(-)pcc/Makefile (-12 / +27 lines)
Lines 2-8 Link Here
2
# $FreeBSD: head/lang/pcc/Makefile 363374 2014-07-29 19:11:51Z adamw $
2
# $FreeBSD: head/lang/pcc/Makefile 363374 2014-07-29 19:11:51Z adamw $
3
3
4
PORTNAME=	pcc
4
PORTNAME=	pcc
5
PORTVERSION=	1.0.0
5
PORTVERSION=	1.1.0
6
CATEGORIES=	lang
6
CATEGORIES=	lang
7
MASTER_SITES=	ftp://pcc.ludd.ltu.se/pub/pcc-releases/ \
7
MASTER_SITES=	ftp://pcc.ludd.ltu.se/pub/pcc-releases/ \
8
		http://pcc.ludd.ltu.se/ftp/pub/pcc-releases/ \
8
		http://pcc.ludd.ltu.se/ftp/pub/pcc-releases/ \
Lines 11-37 Link Here
11
MAINTAINER=	joel@FreeBSD.org
11
MAINTAINER=	joel@FreeBSD.org
12
COMMENT=	Portable C Compiler
12
COMMENT=	Portable C Compiler
13
13
14
LICENSE=	BSDCOMPATIBLE BSD2CLAUSE BSD3CLAUSE
15
LICENSE_COMB=	multi
16
LICENSE_NAME_BSDCOMPATIBLE=	BSD-style compatible licenses
17
LICENSE_TEXT_BSDCOMPATIBLE=	The license: BSDCOMPATIBLE (${LICENSE_NAME_BSDCOMPATIBLE}),\
18
	please read from the web: http://pcc.ludd.ltu.se/licenses/
19
LICENSE_PERMS_BSDCOMPATIBLE=	dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
20
21
RUN_DEPENDS=	pcc-libs>=${PORTVERSION}:${PORTSDIR}/devel/pcc-libs
22
14
ONLY_FOR_ARCHS=	i386 amd64
23
ONLY_FOR_ARCHS=	i386 amd64
15
24
16
USES=		gmake tar:tgz
25
USES=		gmake tar:tgz
17
GNU_CONFIGURE=	yes
26
GNU_CONFIGURE=	yes
18
CONFIGURE_ENV=	YACC=${YACC}
27
CONFIGURE_ENV=	YACC=${YACC}
19
28
20
PLIST_FILES=	bin/pcc libexec/ccom libexec/cpp \
29
PLIST_FILES=	bin/pcc bin/pcpp \
30
		libexec/ccom libexec/cxxcom libexec/cpp \
21
		man/man1/ccom.1.gz man/man1/cpp.1.gz \
31
		man/man1/ccom.1.gz man/man1/cpp.1.gz \
22
		man/man1/pcc.1.gz
32
		man/man1/pcc.1.gz
23
33
24
# Fix -jX builds: use -C switch instead of cd'ing and add missing dependency
34
OPTIONS_DEFINE=	THREADS
35
OPTIONS_DEFAULT=	THREADS
36
THREADS_DESC=	Enable Thread-local storage (TLS)
37
THREADS_CONFIGURE_ENABLE=	tls
38
39
.include <bsd.port.pre.mk>
25
40
26
post-patch:
41
post-patch:
27
	@${FIND} ${WRKSRC} -name Makefile.in | ${XARGS} ${REINPLACE_CMD} -E \
42
	# Don't make empty directories, which created by devel/pcc-libs port
28
	's/cd (.+)(;| &&) (\$$[{(]MAKE[})][^$$]*)( \$$\(MFLAGS\))?/\3 -C \1/'
43
	@${REINPLACE_CMD} -e '/mkdir -p.*PCC.*DIR/d' \
29
	@${ECHO_CMD} 'builtins.o: pass1.h' >> ${WRKSRC}/cc/ccom/Makefile.in
44
		${WRKSRC}/cc/cc/Makefile.in
30
45
.if ${OPSYS} == FreeBSD
31
pre-configure:
46
	@${REINPLACE_CMD} -e '/targmach=amd64/s/x86_64/amd64/' \
32
	${MKDIR} ${WRKSRC}/os/freebsd
47
		${WRKSRC}/configure
33
	${CP} ${FILESDIR}/*.h ${WRKSRC}/os/freebsd
48
	@${REINPLACE_CMD} -e 's,\" MKS(TARGOSVER),${OSREL:R}\",' \
34
	${REINPLACE_CMD} -e "s,%%OSVERMAJOR%%,${OSREL:R}," \
35
		${WRKSRC}/os/freebsd/ccconfig.h
49
		${WRKSRC}/os/freebsd/ccconfig.h
50
.endif
36
51
37
.include <bsd.port.mk>
52
.include <bsd.port.post.mk>
(-)pcc/distinfo (-2 / +2 lines)
Lines 1-2 Link Here
1
SHA256 (pcc-1.0.0.tgz) = 5802dbba46d6ea3f9badaa55b9044a0416bb410020c24a5c2a8a2eaaf41156cb
1
SHA256 (pcc-1.1.0.tgz) = d9e3fed84c767dcddefb6b1f854d5da8921f3f65d8bd02997743412f41474d64
2
SIZE (pcc-1.0.0.tgz) = 652308
2
SIZE (pcc-1.1.0.tgz) = 848427
(-)pcc/files/ccconfig.h (-55 lines)
Lines 1-55 Link Here
1
/* $FreeBSD: head/lang/pcc/files/ccconfig.h 340872 2014-01-24 00:14:07Z mat $ */
2
/*	$Id: ccconfig.h,v 1.2 2004/12/02 21:32:25 ragge Exp $	*/
3
4
/*
5
 * Copyright (c) 2007 David O'Brien
6
 * Copyright (c) 2004 Anders Magnusson (ragge@ludd.luth.se).
7
 * All rights reserved.
8
 *
9
 * Redistribution and use in source and binary forms, with or without
10
 * modification, are permitted provided that the following conditions
11
 * are met:
12
 * 1. Redistributions of source code must retain the above copyright
13
 *    notice, this list of conditions and the following disclaimer.
14
 * 2. Redistributions in binary form must reproduce the above copyright
15
 *    notice, this list of conditions and the following disclaimer in the
16
 *    documentation and/or other materials provided with the distribution.
17
 * 3. The name of the author may not be used to endorse or promote products
18
 *    derived from this software without specific prior written permission
19
 *
20
 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
21
 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
22
 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
23
 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
24
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
25
 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
26
 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
27
 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
28
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
29
 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30
 */
31
32
/*
33
 * Various settings that controls how the C compiler works.
34
 */
35
36
/* common cpp predefines */
37
#define CPPADD	{ "-D__FreeBSD__=%%OSVERMAJOR%%", "-D__ELF__", "-D__unix__=1", "-D__unix=1", "-D__STDC__=1", NULL, }
38
#define DYNLINKER { "-dynamic-linker", "/libexec/ld-elf.so.1", NULL }
39
#define CRT0FILE "/usr/lib/crt1.o"
40
#define STARTFILES { "/usr/lib/crti.o", "/usr/lib/crtbegin.o", NULL }
41
#define	ENDFILES { "/usr/lib/crtend.o", "/usr/lib/crtn.o", NULL }
42
#define STARTLABEL "_start"
43
44
/*
45
 * XXX multitargets ?
46
 */
47
#if defined(mach_i386) || defined(mach_x86)
48
#define	CPPMDADD { "-D__i386__", "-D__i386", NULL, }
49
#elif defined(mach_amd64)
50
#define CPPMDADD { "-D__x86_64__", NULL, }
51
#else
52
#error defines for arch missing
53
#endif
54
55
#define	STABS
(-)pcc/files/f77config.h (-55 lines)
Lines 1-55 Link Here
1
/* $FreeBSD: head/lang/pcc/files/f77config.h 340872 2014-01-24 00:14:07Z mat $ */
2
/*	$Id: f77config.h,v 1.1 2005/04/17 20:22:18 ragge Exp $	*/
3
4
/*
5
 * Copyright (c) 2004 Anders Magnusson (ragge@ludd.luth.se).
6
 * All rights reserved.
7
 *
8
 * Redistribution and use in source and binary forms, with or without
9
 * modification, are permitted provided that the following conditions
10
 * are met:
11
 * 1. Redistributions of source code must retain the above copyright
12
 *    notice, this list of conditions and the following disclaimer.
13
 * 2. Redistributions in binary form must reproduce the above copyright
14
 *    notice, this list of conditions and the following disclaimer in the
15
 *    documentation and/or other materials provided with the distribution.
16
 * 3. The name of the author may not be used to endorse or promote products
17
 *    derived from this software without specific prior written permission
18
 *
19
 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
20
 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
21
 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
22
 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
23
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
24
 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25
 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26
 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
28
 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29
 */
30
31
/*
32
 * Various settings that controls how the f77 compiler works.
33
 */
34
35
#if 0
36
/* common cpp predefines */
37
#define CPPADD	{ "-D__FreeBSD__", "-D__ELF__", NULL, }
38
#define DYNLINKER { "-dynamic-linker", "/libexec/ld-elf.so.1", NULL }
39
#define CRT0FILE "/usr/lib/crt0.o"
40
#define STARTFILES { "/usr/lib/crti.o", "/usr/lib/crtbegin.o", NULL }
41
#define ENDFILES { "/usr/lib/crtend.o", "/usr/lib/crtn.o", NULL }
42
#endif
43
#define PASS1NAME	"/usr/lib/f77pass1"
44
#define PASS2NAME	"/lib/f1"
45
#define PASS2OPT	"/lib/c2"
46
#define NOFLPASS2	"/lib/fc1"
47
48
#define ASMNAME		"/usr/bin/as"
49
#define LDNAME		"/usr/bin/ld"
50
#define FOOTNAME	"/usr/lib/crt0.o"
51
#define PROFFOOT	"/usr/lib/mcrt0.o"
52
#define NOFLFOOT	"/usr/lib/fcrt0.o"
53
#define NOFLPROFFOOT	"/usr/lib/fmcrt0.o"
54
#define LIBLIST		{ "-lF77", "-lI77", "-lm", "-lc", "-l", NULL };
55
(-)pcc/files/patch-cc_cc_cc.c (+11 lines)
Line 0 Link Here
1
--- cc/cc/cc.c.orig	2014-12-06 09:52:55 UTC
2
+++ cc/cc/cc.c
3
@@ -206,7 +206,7 @@ char *cppmdadd[] = CPPMDADD;
4
 #define PCCLIBDIR	NULL
5
 #endif
6
 #ifndef DEFLIBDIRS	/* default library search paths */
7
-#ifdef MULTIARCH_PATH
8
+#ifndef MULTIARCH_PATH
9
 #define DEFLIBDIRS	{ "/usr/lib/", 0 }
10
 #else
11
 #define DEFLIBDIRS	{ "/usr/lib/", "/usr/lib/" MULTIARCH_PATH "/", 0 }
(-)pcc/files/patch-cccc-Makefile.in (-13 lines)
Lines 1-13 Link Here
1
Index: cc/cc/Makefile.in
2
@@ -59,8 +59,9 @@
3
 	fi
4
 	test -z "${DESTDIR}$(mandir)/man1" || mkdir -p "${DESTDIR}$(mandir)/man1"
5
 	${INSTALL} $(srcdir)/cc.1 ${DESTDIR}${mandir}/man1/${DEST}.1
6
-	test -z "${DESTDIR}$(PCCINCDIR)" || mkdir -p "${DESTDIR}$(PCCINCDIR)"
7
-	test -z "${DESTDIR}$(PCCLIBDIR)" || mkdir -p "${DESTDIR}$(PCCLIBDIR)"
8
+	# Don't make unused empty directories for no reason.
9
+	#test -z "${DESTDIR}$(PCCINCDIR)" || mkdir -p "${DESTDIR}$(PCCINCDIR)"
10
+	#test -z "${DESTDIR}$(PCCLIBDIR)" || mkdir -p "${DESTDIR}$(PCCLIBDIR)"
11
 
12
 clean:
13
 	/bin/rm -f  $(OBJS) ${DEST}
(-)pcc/files/patch-configure (-11 lines)
Lines 1-11 Link Here
1
--- configure.orig	2010-10-31 18:20:51.000000000 +0000
2
+++ configure	2010-11-07 15:22:25.000000000 +0000
3
@@ -1960,7 +1960,7 @@
4
 	esac
5
 	case "$target_cpu" in
6
 	    i386) targmach=i386 ;;
7
-	    x86_64) targmach=amd64 ;;
8
+	    amd64) targmach=amd64 ;;
9
 	esac
10
 	;;
11
 

Return to bug 196642