With the below patch I've been able to build ports gcc 4.9 on: OpenBSD 6.4-beta (GENERIC) #219: Sat Sep 8 14:02:06 MDT 2018 dera...@alpha.openbsd.org:/usr/src/sys/arch/alpha/compile/GENERIC AlphaServer DS10 617 MHz
The patch reduces the optimization level from -O2 to -O1 during the build to make things work. With this, I was able to build numpy and run the numpy regression tests succesfully. ok to commit? (Note: to test you'd also need to add alpha to GCC49_ARCHS in infrastructure/mk/arch-defines.mk but that can be committed after the below goes in) Index: Makefile =================================================================== RCS file: /cvs/ports/lang/gcc/4.9/Makefile,v retrieving revision 1.57 diff -u -p -u -r1.57 Makefile --- Makefile 11 Aug 2018 14:11:01 -0000 1.57 +++ Makefile 25 Sep 2018 02:44:34 -0000 @@ -4,7 +4,7 @@ ONLY_FOR_ARCHS = ${GCC49_ARCHS} DPB_PROPERTIES = parallel V = 4.9.4 -REVISION = 11 +REVISION = 12 FULL_VERSION = $V FULL_PKGVERSION = $V @@ -128,7 +128,11 @@ MAKE_ENV += ${EXTRA_ENV} # Note: the configure target passes CFLAGS to the configure script anyways. +.if ${MACHINE_ARCH} == "alpha" +CFLAGS = -O1 -g +.else CFLAGS = -O2 -g +.endif CONFIGURE_ARGS += \ --verbose \ @@ -244,6 +248,11 @@ post-extract: .if ${BUILD_PACKAGES:M-ada} perl -pi -e 's,^#define (_GCOMPILER_LIBCXX_HAVE_GETS) .*,/* #undef $$1 */,' \ ${WRKDIR}/bootstrap/include/c++/*/*/bits/c++config.h +.endif + +post-configure: +.if ${MACHINE_ARCH} == "alpha" + sed -i -e 's,-O2,-O1,g' ${WRKDIR}/build-alpha/Makefile .endif post-install: Index: pkg/PFRAG.alpha-main =================================================================== RCS file: pkg/PFRAG.alpha-main diff -N pkg/PFRAG.alpha-main --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ pkg/PFRAG.alpha-main 25 Sep 2018 02:44:34 -0000 @@ -0,0 +1,13 @@ +@comment $OpenBSD$ +lib/gcc/${CONFIG}/${V}/include/tgmath.h +lib/gcc/${CONFIG}/${V}/include/unwind.h +lib/gcc/${CONFIG}/${V}/plugin/include/config/alpha/ +lib/gcc/${CONFIG}/${V}/plugin/include/config/alpha/alpha-protos.h +lib/gcc/${CONFIG}/${V}/plugin/include/config/alpha/alpha.h +lib/gcc/${CONFIG}/${V}/plugin/include/config/alpha/elf.h +lib/gcc/${CONFIG}/${V}/plugin/include/config/alpha/openbsd.h +lib/gcc/${CONFIG}/${V}/plugin/include/config/elfos.h +lib/gcc/${CONFIG}/${V}/plugin/include/config/initfini-array.h +lib/gcc/${CONFIG}/${V}/plugin/include/config/openbsd-libpthread.h +lib/gcc/${CONFIG}/${V}/plugin/include/config/openbsd-stdint.h +lib/gcc/${CONFIG}/${V}/plugin/include/config/openbsd.h Index: pkg/PLIST-main =================================================================== RCS file: /cvs/ports/lang/gcc/4.9/pkg/PLIST-main,v retrieving revision 1.12 diff -u -p -u -r1.12 PLIST-main --- pkg/PLIST-main 23 Jul 2018 10:05:35 -0000 1.12 +++ pkg/PLIST-main 25 Sep 2018 02:44:34 -0000 @@ -234,7 +234,7 @@ lib/gcc/${CONFIG}/${V}/plugin/include/va lib/gcc/${CONFIG}/${V}/plugin/include/vec.h lib/gcc/${CONFIG}/${V}/plugin/include/version.h lib/libatomic.a -@comment %%alpha%% +%%alpha%% %%amd64%% %%arm%% %%hppa%%