1
0
mirror of https://github.com/openbsd/src.git synced 2026-04-21 12:44:33 +00:00

Prepare for gcc 3 leaving the building, COMPILER_VERSION can no longer get

set to "gcc3".
This commit is contained in:
miod
2025-10-23 19:06:09 +00:00
parent 7e7bebd08c
commit 27664962f0
16 changed files with 35 additions and 113 deletions

View File

@@ -1,4 +1,4 @@
# $OpenBSD: Makefile.cross,v 1.111 2021/05/03 00:04:31 drahn Exp $
# $OpenBSD: Makefile.cross,v 1.112 2025/10/23 19:06:09 miod Exp $
cross-tools: cross-includes cross-binutils cross-gcc cross-lib
cross-distrib: cross-tools cross-bin cross-share cross-sys cross-etc-root-var
@@ -80,12 +80,7 @@ CROSSGCC= ${CROSSDIR}/.gcc_done
.include <bsd.own.mk>
.for _arch in ${TARGET_ARCH}
.if !empty(GCC3_ARCH:M${_arch})
COMPILER_VERSION=gcc3
BUILD_CLANG=no
CC=gcc
CXX=g++
.elif !empty(GCC4_ARCH:M${_arch})
.if !empty(GCC4_ARCH:M${_arch})
COMPILER_VERSION=gcc4
BUILD_CLANG=no
CC=gcc
@@ -268,31 +263,7 @@ ${CROSSGCC}: ${CROSSBINUTILS}
chmod +x ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-cc;
echo "#!/bin/sh\n${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-clang --driver-mode=g++ --sysroot ${CROSSDIR} \"$$""@\"" > ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-c++; \
chmod +x ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-c++;
.elif ${COMPILER_VERSION:L} == "gcc3"
(cd ${.CURDIR}/gnu/usr.bin/gcc; \
MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
TARGET_ARCH=${TARGET_ARCH} TARGET_CPU=${TARGET_CPU} \
CROSSDIR=${CROSSDIR} \
CC=${CC} CXX=${CXX} \
${MAKE} -f Makefile.bsd-wrapper all && \
env CROSSDIR=${CROSSDIR} DESTDIR=${CROSSDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
PATH=${CROSSPATH} ${MAKE} -f Makefile.bsd-wrapper install)
cp -f ${CROSSDIR}/usr/bin/${TARGET_CANON}-g++ ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-c++
cp -f ${CROSSDIR}/usr/bin/gcc ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-cc
cp -f ${CROSSDIR}/usr/libexec/cpp ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-libexeccpp
rm -f ${CROSSDIR}/usr/bin/gcc ${CROSSDIR}/usr/bin/cc ${CROSSDIR}/usr/libexec/cpp
ln -sf ${TARGET_CANON}-cc ${CROSSDIR}/usr/${TARGET_CANON}/bin/cc
ln -sf ${TARGET_CANON}-c++ ${CROSSDIR}/usr/${TARGET_CANON}/bin/c++
rm -f ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-cpp
sed -e 's#/usr/libexec/cpp#${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-libexeccpp#' \
-e 's/@GNUC@/-D__GNUC__/' \
-e 's#/usr/include#${CROSSDIR}/usr/include#' \
-e 's/@dollaropt@//' \
${.CURDIR}/usr.bin/cpp/cpp.sh > ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-cpp
chmod ${BINMODE} ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-cpp
chown ${BINOWN}:${BINGRP} ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-cpp
ln -sf ${TARGET_CANON}-cpp ${CROSSDIR}/usr/${TARGET_CANON}/bin/cpp
.else
.elif ${COMPILER_VERSION:L} == "gcc4"
(cd ${.CURDIR}/gnu/usr.bin/cc; \
env CROSSDIR=${CROSSDIR} \
COMPILER_VERSION=${COMPILER_VERSION} \

View File

@@ -1,17 +1,13 @@
# $OpenBSD: Makefile,v 1.26 2021/09/28 08:35:06 fcambus Exp $
# $OpenBSD: Makefile,v 1.27 2025/10/23 19:06:09 miod Exp $
.include <bsd.own.mk>
SUBDIR+=libclang_rt libcompiler_rt libexecinfo libiberty libreadline
SUBDIR+=libcxxabi libcxx
.if make(obj)
SUBDIR+=libstdc++ libstdc++-v3 libsupc++-v3
SUBDIR+=libstdc++-v3 libsupc++-v3
.else
. if ${BUILD_GCC3:L} == "yes"
SUBDIR+=libstdc++
. endif
. if ${BUILD_GCC4:L} == "yes"
# XXX make sure we build libstdc++-v3 from gcc4
SUBDIR+=libstdc++-v3 libsupc++-v3
. endif
.endif

View File

@@ -1,14 +1,11 @@
# $OpenBSD: Makefile,v 1.64 2022/10/28 15:50:55 miod Exp $
# $OpenBSD: Makefile,v 1.65 2025/10/23 19:06:10 miod Exp $
# $NetBSD: Makefile,v 1.35 1996/04/03 21:20:52 chuck Exp $
.include <bsd.own.mk>
.if make(obj)
SUBDIR+= cc clang gcc
SUBDIR+= cc clang
.else
. if ${BUILD_GCC3:L} == "yes"
SUBDIR+= gcc
. endif
. if ${BUILD_GCC4:L} == "yes"
SUBDIR+= cc
. endif

View File

@@ -1,4 +1,4 @@
# $OpenBSD: Makefile,v 1.232 2024/08/12 20:56:55 guenther Exp $
# $OpenBSD: Makefile,v 1.233 2025/10/23 19:06:10 miod Exp $
# $NetBSD: Makefile,v 1.59 1996/05/15 21:36:43 jtc Exp $
# @(#)Makefile 5.45.1.1 (Berkeley) 5/6/91
@@ -52,10 +52,6 @@ RDIRS= ../lib/libagentx ../lib/libcbor ../lib/libcurses ../lib/libedit \
../usr.bin/lex ../gnu/lib/libexecinfo ../gnu/lib/libreadline \
../sys/arch/${MACHINE}
.if ${BUILD_GCC3:L} == "yes"
RDIRS+= ../gnu/usr.bin/gcc
PRDIRS+= ../gnu/lib/libstdc++
.endif
.if ${BUILD_GCC4:L} == "yes"
PRDIRS+= ../gnu/lib/libstdc++-v3 ../gnu/usr.bin/cc/include
.endif

View File

@@ -1,4 +1,4 @@
# $OpenBSD: Makefile.inc,v 1.31 2023/10/29 23:32:52 cheloha Exp $
# $OpenBSD: Makefile.inc,v 1.32 2025/10/23 19:06:10 miod Exp $
#
# This file contains make rules used to build libc
#
@@ -9,12 +9,9 @@ all:
.endif
CFLAGS+=-I${LIBCSRCDIR}/include -I${LIBCSRCDIR}/hidden -D__LIBC__ \
-Werror=deprecated-declarations \
-Werror-implicit-function-declaration -include namespace.h
.if ${COMPILER_VERSION:L} != "gcc3"
CFLAGS+=-Werror=deprecated-declarations
.endif
# Include link-time warnings about unsafe API uses (ie. strcpy)
CFLAGS+=-DAPIWARN

View File

@@ -1,4 +1,4 @@
/* $OpenBSD: namespace.h,v 1.16 2023/10/29 14:26:13 millert Exp $ */
/* $OpenBSD: namespace.h,v 1.17 2025/10/23 19:06:10 miod Exp $ */
#ifndef _LIBC_NAMESPACE_H_
#define _LIBC_NAMESPACE_H_
@@ -57,13 +57,13 @@
#define DEF_WRAP(x) __weak_alias(x, WRAP(x))
#define DEF_SYS(x) __strong_alias(_thread_sys_##x, HIDDEN(x))
#if !defined(__clang__) && __GNUC__ != 3
#if !defined(__clang__)
/* our gcc 4.2 handles redirecting builtins via PROTO_NORMAL()'s asm() label */
#define DEF_BUILTIN(x) DEF_STRONG(x)
#define BUILTIN
#else
/*
* clang and gcc can't redirect builtins via asm() labels, so mark
* clang can't redirect builtins via asm() labels, so mark
* them protected instead.
*/
#define DEF_BUILTIN(x) __asm("")
@@ -86,7 +86,7 @@ BUILTIN void *memmove(void *, const void *, __size_t);
BUILTIN void *memcpy(void *__restrict, const void *__restrict, __size_t);
BUILTIN void *memset(void *, int, __size_t);
BUILTIN void __stack_smash_handler(const char [], int __unused);
#if !defined(__clang__) && __GNUC__ != 3
#if !defined(__clang__)
PROTO_NORMAL(memmove);
PROTO_NORMAL(memcpy);
PROTO_NORMAL(memset);

View File

@@ -1,15 +1,10 @@
# $OpenBSD: Makefile,v 1.16 2021/05/26 19:14:32 bluhm Exp $
# $OpenBSD: Makefile,v 1.17 2025/10/23 19:06:10 miod Exp $
.PATH: ${.CURDIR}/lib
.include <bsd.own.mk> # to check ${COMPILER_VERSION}
LIB= expat
SRCS= xmlparse.c xmltok.c xmlrole.c
CFLAGS+=-I${.CURDIR}
.if ${COMPILER_VERSION:L} != "gcc3"
CFLAGS+=-fvisibility=hidden -DXML_ENABLE_VISIBILITY=1
.endif
CFLAGS+=-I${.CURDIR} -fvisibility=hidden -DXML_ENABLE_VISIBILITY=1
PC_FILES=expat.pc
CLEANFILES+=${PC_FILES}

View File

@@ -1,4 +1,4 @@
# $OpenBSD: Makefile,v 1.18 2019/07/25 14:17:11 bluhm Exp $
# $OpenBSD: Makefile,v 1.19 2025/10/23 19:06:10 miod Exp $
C_MODULES?= strlcpy strlcat getcwd memcpy fread memcpy declare \
sscanf vararray md builtins
@@ -59,13 +59,11 @@ NOOBJ= Yes
REGRESS_EXPECTED_FAILURES= c-getcwd-1
.endif
.if ${BUILD_GCC3:L} == "yes"
EXP= .exp.gcc3
.elif ${BUILD_GCC4:L} == "yes"
.if ${BUILD_GCC4:L} == "yes"
EXP= .exp.gcc4
.else
regress:
@echo neither gcc3 nor gcc4 exists on ${MACHINE_ARCH}
@echo gcc4 does not exist on ${MACHINE_ARCH}
@echo SKIPPED
.endif

View File

@@ -1,4 +1,4 @@
# $OpenBSD: Makefile,v 1.6 2019/07/26 09:12:38 bluhm Exp $
# $OpenBSD: Makefile,v 1.7 2025/10/23 19:06:10 miod Exp $
GCC_BUILTINS= sprintf-1 sprintf-2 sprintf-3 stpcpy-1 stpcpy-2 strcat-1 \
strcat-2 strcpy-1 strcpy-2 strncat-1 vsprintf-1 vsprintf-2 \
@@ -30,13 +30,11 @@ NOOBJ= Yes
REGRESS_EXPECTED_FAILURES= ${REGRESS_TARGETS:N*strncat*}
.endif
.if ${BUILD_GCC3:L} == "yes"
EXP= .exp.gcc3
.elif ${BUILD_GCC4:L} == "yes"
.if ${BUILD_GCC4:L} == "yes"
EXP= .exp.gcc4
.else
regress:
@echo neither gcc3 nor gcc4 exists on ${MACHINE_ARCH}
@echo gcc4 does not exist on ${MACHINE_ARCH}
@echo SKIPPED
.endif

View File

@@ -1,4 +1,4 @@
/* $OpenBSD: init_priority_test.cc,v 1.4 2013/08/01 21:26:30 kettenis Exp $ */
/* $OpenBSD: init_priority_test.cc,v 1.5 2025/10/23 19:06:10 miod Exp $ */
#include <cassert>
#include <cstdio>
@@ -20,11 +20,7 @@ Test::Test(int x)
counter++;
}
#if __GNUC__ < 4
#define TEST(n) Test test_##n (n) __attribute__((init_priority (n)))
#else
#define TEST(n) Test test_##n __attribute__((init_priority (n))) (n)
#endif
TEST(12597);
TEST(20840);
TEST(31319);

View File

@@ -1,4 +1,4 @@
# $OpenBSD: Makefile,v 1.3 2023/01/15 23:35:10 djm Exp $
# $OpenBSD: Makefile,v 1.4 2025/10/23 19:06:10 miod Exp $
.include <bsd.own.mk>
.include <bsd.obj.mk>
@@ -36,6 +36,7 @@ CDIAGFLAGS+= -Wimplicit
CDIAGFLAGS+= -Winline
CDIAGFLAGS+= -Wmissing-declarations
CDIAGFLAGS+= -Wmissing-prototypes
CDIAGFLAGS+= -Wold-style-definition
CDIAGFLAGS+= -Wparentheses
CDIAGFLAGS+= -Wpointer-arith
CDIAGFLAGS+= -Wreturn-type
@@ -48,9 +49,6 @@ CDIAGFLAGS+= -Wtrigraphs
CDIAGFLAGS+= -Wuninitialized
CDIAGFLAGS+= -Wunused
CDIAGFLAGS+= -Wno-unused-parameter
.if ${COMPILER_VERSION:L} != "gcc3"
CDIAGFLAGS+= -Wold-style-definition
.endif
CFLAGS+=-I${.CURDIR}/${SSHREL}

View File

@@ -1,4 +1,4 @@
# $OpenBSD: Makefile,v 1.2 2025/05/06 06:05:48 djm Exp $
# $OpenBSD: Makefile,v 1.3 2025/10/23 19:06:10 miod Exp $
.include <bsd.own.mk>
.include <bsd.obj.mk>
@@ -46,6 +46,7 @@ CDIAGFLAGS+= -Wimplicit
CDIAGFLAGS+= -Winline
CDIAGFLAGS+= -Wmissing-declarations
CDIAGFLAGS+= -Wmissing-prototypes
CDIAGFLAGS+= -Wold-style-definition
CDIAGFLAGS+= -Wparentheses
CDIAGFLAGS+= -Wpointer-arith
CDIAGFLAGS+= -Wreturn-type
@@ -58,9 +59,6 @@ CDIAGFLAGS+= -Wtrigraphs
CDIAGFLAGS+= -Wuninitialized
CDIAGFLAGS+= -Wunused
CDIAGFLAGS+= -Wno-unused-parameter
.if ${COMPILER_VERSION:L} != "gcc3"
CDIAGFLAGS+= -Wold-style-definition
.endif
CFLAGS+=-I${.CURDIR}/${SSHREL}

View File

@@ -1,4 +1,4 @@
# $OpenBSD: Makefile.inc,v 1.18 2025/05/06 06:05:48 djm Exp $
# $OpenBSD: Makefile.inc,v 1.19 2025/10/23 19:06:10 miod Exp $
.include <bsd.own.mk>
.include <bsd.obj.mk>
@@ -38,6 +38,7 @@ CDIAGFLAGS+= -Wimplicit
CDIAGFLAGS+= -Winline
CDIAGFLAGS+= -Wmissing-declarations
CDIAGFLAGS+= -Wmissing-prototypes
CDIAGFLAGS+= -Wold-style-definition
CDIAGFLAGS+= -Wparentheses
CDIAGFLAGS+= -Wpointer-arith
CDIAGFLAGS+= -Wreturn-type
@@ -50,9 +51,6 @@ CDIAGFLAGS+= -Wtrigraphs
CDIAGFLAGS+= -Wuninitialized
CDIAGFLAGS+= -Wunused
CDIAGFLAGS+= -Wno-unused-parameter
.if ${COMPILER_VERSION:L} != "gcc3"
CDIAGFLAGS+= -Wold-style-definition
.endif
SSHREL=../../../../../usr.bin/ssh

View File

@@ -1,4 +1,4 @@
# $OpenBSD: bsd.own.mk,v 1.214 2025/10/23 18:46:53 miod Exp $
# $OpenBSD: bsd.own.mk,v 1.215 2025/10/23 19:06:10 miod Exp $
# $NetBSD: bsd.own.mk,v 1.24 1996/04/13 02:08:09 thorpej Exp $
# Host-specific overrides
@@ -17,7 +17,6 @@ YP?= yes
CLANG_ARCH=aarch64 amd64 arm i386 mips64 mips64el powerpc powerpc64 riscv64 sparc64
GCC4_ARCH=alpha hppa m88k sh sparc64
GCC3_ARCH=
LLD_ARCH=aarch64 amd64 arm i386 powerpc powerpc64 riscv64
LLDB_ARCH=aarch64 amd64
@@ -26,19 +25,12 @@ PIE_ARCH=aarch64 alpha amd64 arm hppa i386 mips64 mips64el powerpc powerpc64 ris
STATICPIE_ARCH=aarch64 alpha amd64 arm hppa i386 mips64 mips64el powerpc powerpc64 riscv64 sh sparc64
.for _arch in ${MACHINE_ARCH}
.if !empty(GCC3_ARCH:M${_arch})
COMPILER_VERSION?=gcc3
.elif !empty(GCC4_ARCH:M${_arch})
.if !empty(GCC4_ARCH:M${_arch})
COMPILER_VERSION?=gcc4
.elif !empty(CLANG_ARCH:M${_arch})
COMPILER_VERSION?=clang
.endif
.if !empty(GCC3_ARCH:M${_arch})
BUILD_GCC3?=yes
.else
BUILD_GCC3?=no
.endif
.if !empty(GCC4_ARCH:M${_arch})
BUILD_GCC4?=yes
.else

View File

@@ -1,6 +1,4 @@
# $OpenBSD: Makefile,v 1.12 2013/12/09 02:35:09 guenther Exp $
.include <bsd.own.mk>
# $OpenBSD: Makefile,v 1.13 2025/10/23 19:06:10 miod Exp $
NOMAN=
@@ -9,10 +7,6 @@ SRCS=
INSTALL_STRIP=
cpp: cpp.sh
.if ${COMPILER_VERSION:L} == "gcc3"
sed -e 's/@GNUC@/-D__GNUC__/' ${.CURDIR}/cpp.sh >$@
.else
sed -e 's/@GNUC@//' ${.CURDIR}/cpp.sh >$@
.endif
.include <bsd.prog.mk>

View File

@@ -1,4 +1,4 @@
# $OpenBSD: Makefile.inc,v 1.101 2025/08/29 03:50:38 djm Exp $
# $OpenBSD: Makefile.inc,v 1.102 2025/10/23 19:06:10 miod Exp $
.include <bsd.own.mk>
@@ -15,19 +15,17 @@ CDIAGFLAGS+= -Wextra
CDIAGFLAGS+= -Wformat-security
CDIAGFLAGS+= -Wmissing-declarations
CDIAGFLAGS+= -Wmissing-prototypes
CDIAGFLAGS+= -Wold-style-definition
CDIAGFLAGS+= -Wpointer-arith
CDIAGFLAGS+= -Wshadow
CDIAGFLAGS+= -Wstrict-aliasing=2
CDIAGFLAGS+= -Wstrict-prototypes
CDIAGFLAGS+= -Wunused
CDIAGFLAGS+= -Wno-unused-parameter # Lots of these in protocol handlers.
.if ${COMPILER_VERSION:L} == "clang"
CDIAGFLAGS+= -Widiomatic-parentheses -Wparentheses
.endif
.if ${COMPILER_VERSION:L} != "gcc3"
CDIAGFLAGS+= -Wstrict-aliasing=2
CDIAGFLAGS+= -Wold-style-definition
CDIAGFLAGS+= -Werror
.endif
#DEBUG=-g
#INSTALL_STRIP=