On 01/08 09:35, Stuart Henderson wrote:
> On 2011/01/07 17:08, Jeremy Evans wrote:
> > Three diffs included. First is llvm-gcc. Second is an updated llvm
> > diff that should reduce future PLIST churn, requested by Mikolaj
> > Kucharski. Third is a diff to enable llvm support in rubinius.
> >
> > I haven't yet checked to see if any of the llvm-gcc shared libs should
> > be bumped. Any advice in this area?
>
> Bumping these libs will need some work with the build infrastructure,
> unfortunately we don't have this under control yet (see notes in
> llvm-gcc4 Makefile).
Since this isn't under control of the build infrastructure and upstream
didn't bump them, can we just leave them alone?
Here's a revised diff for llvm-gcc4 that works on both amd64 and i386.
On i386, the fpic libraries aren't built, so handle that using PKG_ARGS
(thanks jasper@ for telling me where to look for that). This also
switches the port to SHARED_ONLY.
I've tested both llvm-gcc4 and rubinius with the llvm 2.8 patch I sent
earlier on both i386 and amd64. So looking for OKs to commit llvm and
rubinius with the diffs I sent earlier, and llvm-gcc with this diff.
Jeremy
Index: Makefile
===================================================================
RCS file: /cvs/ports/lang/llvm-gcc4/Makefile,v
retrieving revision 1.13
diff -u -p -r1.13 Makefile
--- Makefile 26 Nov 2010 17:27:38 -0000 1.13
+++ Makefile 10 Jan 2011 18:16:02 -0000
@@ -1,19 +1,18 @@
# $OpenBSD: Makefile,v 1.13 2010/11/26 17:27:38 espie Exp $
# XXX WORK IN PROGRESS.
+SHARED_ONLY = Yes
#ONLY_FOR_ARCHS = ${GCC4_ARCHS}
-ONLY_FOR_ARCHS = i386
-# amd64 has an -fPIC problem
+ONLY_FOR_ARCHS = i386 amd64
# others unknown at this time
COMMENT = gcc4 front-end for LLVM
GCC_V = 4.2.1
-LLVM_V = 2.7
+LLVM_V = 2.8
DISTNAME = llvm-gcc-4.2-${LLVM_V}.source
PKGNAME = ${DISTNAME:S/.source//:S/gcc-/gcc/}
-REVISION = 2
EXTRACT_SUFX= .tgz
SHARED_LIBS = ssp 0.0 \
@@ -70,6 +69,13 @@ CONFIGURE_ARGS += --enable-checking
MODGNU_CONFIG_GUESS_DIRS = ${WRKSRC} ${WRKSRC}/gcc
WRKSRC = ${WRKDIST}/obj
+
+# See bsd.lib.mk:162
+.if ${MACHINE_ARCH:Mi386*}
+PKG_ARGS+= -Dno_i386=0
+.else
+PKG_ARGS+= -Dno_i386=1
+.endif
post-extract:
@mkdir -p ${WRKSRC}/gcc
Index: distinfo
===================================================================
RCS file: /cvs/ports/lang/llvm-gcc4/distinfo,v
retrieving revision 1.4
diff -u -p -r1.4 distinfo
--- distinfo 29 Apr 2010 16:45:53 -0000 1.4
+++ distinfo 8 Jan 2011 00:18:14 -0000
@@ -1,5 +1,5 @@
-MD5 (llvm-gcc-4.2-2.7.source.tgz) = xQMwBc6sGYi3zckIRFCQ8A==
-RMD160 (llvm-gcc-4.2-2.7.source.tgz) = Uj7dlOzgDKqqP/I5nzwLBEtQ9DI=
-SHA1 (llvm-gcc-4.2-2.7.source.tgz) = qvRm76QelQFNUaL4pgrTt3ccGCk=
-SHA256 (llvm-gcc-4.2-2.7.source.tgz) =
HMvO9f5mEzkuJPIf0jqe0mkoJ8E/jYXCazvc0bO1BHo=
-SIZE (llvm-gcc-4.2-2.7.source.tgz) = 55699337
+MD5 (llvm-gcc-4.2-2.8.source.tgz) = 5bBWn18BgIbGIgHYfhYRVA==
+RMD160 (llvm-gcc-4.2-2.8.source.tgz) = MF9BV7FpEoMbK4l7CaVfwkBbzAw=
+SHA1 (llvm-gcc-4.2-2.8.source.tgz) = WPuj3d25xps0XIr6bGmdnZ0T9VE=
+SHA256 (llvm-gcc-4.2-2.8.source.tgz) =
BHhaADHBqh46iZJqxqBpyWJ2B06nEZWDBri/ltnUnk0=
+SIZE (llvm-gcc-4.2-2.8.source.tgz) = 55748118
Index: pkg/PFRAG.no_i386
===================================================================
RCS file: pkg/PFRAG.no_i386
diff -N pkg/PFRAG.no_i386
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ pkg/PFRAG.no_i386 10 Jan 2011 18:22:03 -0000
@@ -0,0 +1,40 @@
+...@comment $OpenBSD: PLIST,v 1.2 2009/06/24 20:10:10 sthen Exp $
+lib/llvm-gcc-${LLVM_V}/fpic/
+lib/llvm-gcc-${LLVM_V}/fpic/libesupc++.a
+lib/llvm-gcc-${LLVM_V}/fpic/libesupc++.la
+lib/llvm-gcc-${LLVM_V}/fpic/libiberty.a
+lib/llvm-gcc-${LLVM_V}/fpic/libobjc.a
+lib/llvm-gcc-${LLVM_V}/fpic/libobjc.la
+...@lib lib/llvm-gcc-${LLVM_V}/fpic/libobjc.so.${LIBobjc_VERSION}
+lib/llvm-gcc-${LLVM_V}/fpic/libssp.a
+lib/llvm-gcc-${LLVM_V}/fpic/libssp.la
+...@lib lib/llvm-gcc-${LLVM_V}/fpic/libssp.so.${LIBssp_VERSION}
+lib/llvm-gcc-${LLVM_V}/fpic/libssp_nonshared.a
+lib/llvm-gcc-${LLVM_V}/fpic/libssp_nonshared.la
+lib/llvm-gcc-${LLVM_V}/fpic/libstdc++.a
+lib/llvm-gcc-${LLVM_V}/fpic/libstdc++.la
+...@lib lib/llvm-gcc-${LLVM_V}/fpic/libstdc++.so.${LIBstdc++_VERSION}
+lib/llvm-gcc-${LLVM_V}/gcc/${CONFIG}/${GCC_V}/fpic/
+lib/llvm-gcc-${LLVM_V}/gcc/${CONFIG}/${GCC_V}/fpic/libgcc.a
+lib/llvm-gcc-${LLVM_V}/gcc/${CONFIG}/${GCC_V}/fpic/libgcov.a
+lib/llvm-gcc-${LLVM_V}/include/c++/${CONFIG}/fpic/
+lib/llvm-gcc-${LLVM_V}/include/c++/${CONFIG}/fpic/bits/
+lib/llvm-gcc-${LLVM_V}/include/c++/${CONFIG}/fpic/bits/atomic_word.h
+lib/llvm-gcc-${LLVM_V}/include/c++/${CONFIG}/fpic/bits/basic_file.h
+lib/llvm-gcc-${LLVM_V}/include/c++/${CONFIG}/fpic/bits/c++allocator.h
+lib/llvm-gcc-${LLVM_V}/include/c++/${CONFIG}/fpic/bits/c++config.h
+lib/llvm-gcc-${LLVM_V}/include/c++/${CONFIG}/fpic/bits/c++io.h
+lib/llvm-gcc-${LLVM_V}/include/c++/${CONFIG}/fpic/bits/c++locale.h
+lib/llvm-gcc-${LLVM_V}/include/c++/${CONFIG}/fpic/bits/cpu_defines.h
+lib/llvm-gcc-${LLVM_V}/include/c++/${CONFIG}/fpic/bits/ctype_base.h
+lib/llvm-gcc-${LLVM_V}/include/c++/${CONFIG}/fpic/bits/ctype_inline.h
+lib/llvm-gcc-${LLVM_V}/include/c++/${CONFIG}/fpic/bits/ctype_noninline.h
+lib/llvm-gcc-${LLVM_V}/include/c++/${CONFIG}/fpic/bits/cxxabi_tweaks.h
+lib/llvm-gcc-${LLVM_V}/include/c++/${CONFIG}/fpic/bits/gthr-default.h
+lib/llvm-gcc-${LLVM_V}/include/c++/${CONFIG}/fpic/bits/gthr-posix.h
+lib/llvm-gcc-${LLVM_V}/include/c++/${CONFIG}/fpic/bits/gthr-single.h
+lib/llvm-gcc-${LLVM_V}/include/c++/${CONFIG}/fpic/bits/gthr-tpf.h
+lib/llvm-gcc-${LLVM_V}/include/c++/${CONFIG}/fpic/bits/gthr.h
+lib/llvm-gcc-${LLVM_V}/include/c++/${CONFIG}/fpic/bits/messages_members.h
+lib/llvm-gcc-${LLVM_V}/include/c++/${CONFIG}/fpic/bits/os_defines.h
+lib/llvm-gcc-${LLVM_V}/include/c++/${CONFIG}/fpic/bits/time_members.h
Index: pkg/PFRAG.shared
===================================================================
RCS file: pkg/PFRAG.shared
diff -N pkg/PFRAG.shared
--- pkg/PFRAG.shared 24 Jun 2009 20:10:10 -0000 1.2
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,4 +0,0 @@
-...@comment $OpenBSD: PFRAG.shared,v 1.2 2009/06/24 20:10:10 sthen Exp $
-...@lib lib/llvm-gcc-${LLVM_V}/libobjc.so.${LIBobjc_VERSION}
-...@lib lib/llvm-gcc-${LLVM_V}/libssp.so.${LIBssp_VERSION}
-...@lib lib/llvm-gcc-${LLVM_V}/libstdc++.so.${LIBstdc++_VERSION}
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/lang/llvm-gcc4/pkg/PLIST,v
retrieving revision 1.2
diff -u -p -r1.2 PLIST
--- pkg/PLIST 24 Jun 2009 20:10:10 -0000 1.2
+++ pkg/PLIST 10 Jan 2011 18:21:04 -0000
@@ -1,5 +1,4 @@
@comment $OpenBSD: PLIST,v 1.2 2009/06/24 20:10:10 sthen Exp $
-%%SHARED%%
@bin bin/${CONFIG}-cpp-${GCC_V}
@bin bin/${CONFIG}-gcc-${GCC_V}
@bin bin/${CONFIG}-llvm-c++
@@ -681,12 +680,15 @@ lib/llvm-gcc-${LLVM_V}/libesupc++.la
lib/llvm-gcc-${LLVM_V}/libiberty.a
lib/llvm-gcc-${LLVM_V}/libobjc.a
lib/llvm-gcc-${LLVM_V}/libobjc.la
+...@lib lib/llvm-gcc-${LLVM_V}/libobjc.so.${LIBobjc_VERSION}
lib/llvm-gcc-${LLVM_V}/libssp.a
lib/llvm-gcc-${LLVM_V}/libssp.la
+...@lib lib/llvm-gcc-${LLVM_V}/libssp.so.${LIBssp_VERSION}
lib/llvm-gcc-${LLVM_V}/libssp_nonshared.a
lib/llvm-gcc-${LLVM_V}/libssp_nonshared.la
lib/llvm-gcc-${LLVM_V}/libstdc++.a
lib/llvm-gcc-${LLVM_V}/libstdc++.la
+...@lib lib/llvm-gcc-${LLVM_V}/libstdc++.so.${LIBstdc++_VERSION}
@man man/man1/llvm-cpp.1
@man man/man1/llvm-g++.1
@man man/man1/llvm-gcc.1