Compare commits

...

4 Commits

Author SHA1 Message Date
Jonathan Schleifer 00c54d3236
Merge ad0dce421b into ff372a8d82 2024-04-21 21:21:39 +02:00
Wolfgang Thaller ff372a8d82
Merge pull request #241 from pando-fredrik/fix-include-poisoning-sonoma
Fixes include poisoning on sonoma
2024-04-16 15:31:23 -05:00
Fredrik Andersson d55d90a9e5 Fixes include poisoning on sonoma 2024-04-16 20:12:00 +02:00
Jonathan Schleifer ad0dce421b
Build cc1obj
This does not build libobjc, as it is broken in several ways. However,
it doesn't matter, since libobjc is basically not used by anyone anyway
and everybody uses a different runtime such as the ObjFW runtime.
2022-11-24 23:36:04 +01:00
5 changed files with 20 additions and 44 deletions

View File

@ -237,7 +237,7 @@ if [ $SKIP_THIRDPARTY != true ]; then
cd gcc-build cd gcc-build
export target_configargs="--disable-nls --enable-libstdcxx-dual-abi=no --disable-libstdcxx-verbose" export target_configargs="--disable-nls --enable-libstdcxx-dual-abi=no --disable-libstdcxx-verbose"
$SRC/gcc/configure --target=m68k-apple-macos --prefix=$PREFIX \ $SRC/gcc/configure --target=m68k-apple-macos --prefix=$PREFIX \
--enable-languages=c,c++ --with-arch=m68k --with-cpu=m68000 \ --enable-languages=c,c++,objc,obj-c++ --with-arch=m68k --with-cpu=m68000 \
--disable-libssp MAKEINFO=missing --disable-libssp MAKEINFO=missing
# There seems to be a build failure in parallel builds; ignore any errors and try again without -j8. # There seems to be a build failure in parallel builds; ignore any errors and try again without -j8.
make -j8 || make make -j8 || make
@ -280,7 +280,7 @@ if [ $SKIP_THIRDPARTY != true ]; then
cd gcc-build-ppc cd gcc-build-ppc
export target_configargs="--disable-nls --enable-libstdcxx-dual-abi=no --disable-libstdcxx-verbose" export target_configargs="--disable-nls --enable-libstdcxx-dual-abi=no --disable-libstdcxx-verbose"
$SRC/gcc/configure --target=powerpc-apple-macos --prefix=$PREFIX \ $SRC/gcc/configure --target=powerpc-apple-macos --prefix=$PREFIX \
--enable-languages=c,c++ --disable-libssp --disable-lto MAKEINFO=missing --enable-languages=c,c++,objc,obj-c++ --disable-libssp --disable-lto MAKEINFO=missing
make -j8 make -j8
make install make install
unset target_configargs unset target_configargs

View File

@ -1126,7 +1126,6 @@ configure-target: \
maybe-configure-target-libbacktrace \ maybe-configure-target-libbacktrace \
maybe-configure-target-libquadmath \ maybe-configure-target-libquadmath \
maybe-configure-target-libgfortran \ maybe-configure-target-libgfortran \
maybe-configure-target-libobjc \
maybe-configure-target-libgo \ maybe-configure-target-libgo \
maybe-configure-target-libphobos \ maybe-configure-target-libphobos \
maybe-configure-target-libtermcap \ maybe-configure-target-libtermcap \
@ -1316,7 +1315,6 @@ all-target: maybe-all-target-libbacktrace
@endif target-libbacktrace-no-bootstrap @endif target-libbacktrace-no-bootstrap
all-target: maybe-all-target-libquadmath all-target: maybe-all-target-libquadmath
all-target: maybe-all-target-libgfortran all-target: maybe-all-target-libgfortran
all-target: maybe-all-target-libobjc
all-target: maybe-all-target-libgo all-target: maybe-all-target-libgo
@if target-libphobos-no-bootstrap @if target-libphobos-no-bootstrap
all-target: maybe-all-target-libphobos all-target: maybe-all-target-libphobos
@ -1419,7 +1417,6 @@ info-target: maybe-info-target-libgcc
info-target: maybe-info-target-libbacktrace info-target: maybe-info-target-libbacktrace
info-target: maybe-info-target-libquadmath info-target: maybe-info-target-libquadmath
info-target: maybe-info-target-libgfortran info-target: maybe-info-target-libgfortran
info-target: maybe-info-target-libobjc
info-target: maybe-info-target-libgo info-target: maybe-info-target-libgo
info-target: maybe-info-target-libphobos info-target: maybe-info-target-libphobos
info-target: maybe-info-target-libtermcap info-target: maybe-info-target-libtermcap
@ -1509,7 +1506,6 @@ dvi-target: maybe-dvi-target-libgcc
dvi-target: maybe-dvi-target-libbacktrace dvi-target: maybe-dvi-target-libbacktrace
dvi-target: maybe-dvi-target-libquadmath dvi-target: maybe-dvi-target-libquadmath
dvi-target: maybe-dvi-target-libgfortran dvi-target: maybe-dvi-target-libgfortran
dvi-target: maybe-dvi-target-libobjc
dvi-target: maybe-dvi-target-libgo dvi-target: maybe-dvi-target-libgo
dvi-target: maybe-dvi-target-libphobos dvi-target: maybe-dvi-target-libphobos
dvi-target: maybe-dvi-target-libtermcap dvi-target: maybe-dvi-target-libtermcap
@ -1599,7 +1595,6 @@ pdf-target: maybe-pdf-target-libgcc
pdf-target: maybe-pdf-target-libbacktrace pdf-target: maybe-pdf-target-libbacktrace
pdf-target: maybe-pdf-target-libquadmath pdf-target: maybe-pdf-target-libquadmath
pdf-target: maybe-pdf-target-libgfortran pdf-target: maybe-pdf-target-libgfortran
pdf-target: maybe-pdf-target-libobjc
pdf-target: maybe-pdf-target-libgo pdf-target: maybe-pdf-target-libgo
pdf-target: maybe-pdf-target-libphobos pdf-target: maybe-pdf-target-libphobos
pdf-target: maybe-pdf-target-libtermcap pdf-target: maybe-pdf-target-libtermcap
@ -1689,7 +1684,6 @@ html-target: maybe-html-target-libgcc
html-target: maybe-html-target-libbacktrace html-target: maybe-html-target-libbacktrace
html-target: maybe-html-target-libquadmath html-target: maybe-html-target-libquadmath
html-target: maybe-html-target-libgfortran html-target: maybe-html-target-libgfortran
html-target: maybe-html-target-libobjc
html-target: maybe-html-target-libgo html-target: maybe-html-target-libgo
html-target: maybe-html-target-libphobos html-target: maybe-html-target-libphobos
html-target: maybe-html-target-libtermcap html-target: maybe-html-target-libtermcap
@ -1779,7 +1773,6 @@ TAGS-target: maybe-TAGS-target-libgcc
TAGS-target: maybe-TAGS-target-libbacktrace TAGS-target: maybe-TAGS-target-libbacktrace
TAGS-target: maybe-TAGS-target-libquadmath TAGS-target: maybe-TAGS-target-libquadmath
TAGS-target: maybe-TAGS-target-libgfortran TAGS-target: maybe-TAGS-target-libgfortran
TAGS-target: maybe-TAGS-target-libobjc
TAGS-target: maybe-TAGS-target-libgo TAGS-target: maybe-TAGS-target-libgo
TAGS-target: maybe-TAGS-target-libphobos TAGS-target: maybe-TAGS-target-libphobos
TAGS-target: maybe-TAGS-target-libtermcap TAGS-target: maybe-TAGS-target-libtermcap
@ -1869,7 +1862,6 @@ install-info-target: maybe-install-info-target-libgcc
install-info-target: maybe-install-info-target-libbacktrace install-info-target: maybe-install-info-target-libbacktrace
install-info-target: maybe-install-info-target-libquadmath install-info-target: maybe-install-info-target-libquadmath
install-info-target: maybe-install-info-target-libgfortran install-info-target: maybe-install-info-target-libgfortran
install-info-target: maybe-install-info-target-libobjc
install-info-target: maybe-install-info-target-libgo install-info-target: maybe-install-info-target-libgo
install-info-target: maybe-install-info-target-libphobos install-info-target: maybe-install-info-target-libphobos
install-info-target: maybe-install-info-target-libtermcap install-info-target: maybe-install-info-target-libtermcap
@ -2049,7 +2041,6 @@ install-pdf-target: maybe-install-pdf-target-libgcc
install-pdf-target: maybe-install-pdf-target-libbacktrace install-pdf-target: maybe-install-pdf-target-libbacktrace
install-pdf-target: maybe-install-pdf-target-libquadmath install-pdf-target: maybe-install-pdf-target-libquadmath
install-pdf-target: maybe-install-pdf-target-libgfortran install-pdf-target: maybe-install-pdf-target-libgfortran
install-pdf-target: maybe-install-pdf-target-libobjc
install-pdf-target: maybe-install-pdf-target-libgo install-pdf-target: maybe-install-pdf-target-libgo
install-pdf-target: maybe-install-pdf-target-libphobos install-pdf-target: maybe-install-pdf-target-libphobos
install-pdf-target: maybe-install-pdf-target-libtermcap install-pdf-target: maybe-install-pdf-target-libtermcap
@ -2139,7 +2130,6 @@ install-html-target: maybe-install-html-target-libgcc
install-html-target: maybe-install-html-target-libbacktrace install-html-target: maybe-install-html-target-libbacktrace
install-html-target: maybe-install-html-target-libquadmath install-html-target: maybe-install-html-target-libquadmath
install-html-target: maybe-install-html-target-libgfortran install-html-target: maybe-install-html-target-libgfortran
install-html-target: maybe-install-html-target-libobjc
install-html-target: maybe-install-html-target-libgo install-html-target: maybe-install-html-target-libgo
install-html-target: maybe-install-html-target-libphobos install-html-target: maybe-install-html-target-libphobos
install-html-target: maybe-install-html-target-libtermcap install-html-target: maybe-install-html-target-libtermcap
@ -2229,7 +2219,6 @@ installcheck-target: maybe-installcheck-target-libgcc
installcheck-target: maybe-installcheck-target-libbacktrace installcheck-target: maybe-installcheck-target-libbacktrace
installcheck-target: maybe-installcheck-target-libquadmath installcheck-target: maybe-installcheck-target-libquadmath
installcheck-target: maybe-installcheck-target-libgfortran installcheck-target: maybe-installcheck-target-libgfortran
installcheck-target: maybe-installcheck-target-libobjc
installcheck-target: maybe-installcheck-target-libgo installcheck-target: maybe-installcheck-target-libgo
installcheck-target: maybe-installcheck-target-libphobos installcheck-target: maybe-installcheck-target-libphobos
installcheck-target: maybe-installcheck-target-libtermcap installcheck-target: maybe-installcheck-target-libtermcap
@ -2319,7 +2308,6 @@ mostlyclean-target: maybe-mostlyclean-target-libgcc
mostlyclean-target: maybe-mostlyclean-target-libbacktrace mostlyclean-target: maybe-mostlyclean-target-libbacktrace
mostlyclean-target: maybe-mostlyclean-target-libquadmath mostlyclean-target: maybe-mostlyclean-target-libquadmath
mostlyclean-target: maybe-mostlyclean-target-libgfortran mostlyclean-target: maybe-mostlyclean-target-libgfortran
mostlyclean-target: maybe-mostlyclean-target-libobjc
mostlyclean-target: maybe-mostlyclean-target-libgo mostlyclean-target: maybe-mostlyclean-target-libgo
mostlyclean-target: maybe-mostlyclean-target-libphobos mostlyclean-target: maybe-mostlyclean-target-libphobos
mostlyclean-target: maybe-mostlyclean-target-libtermcap mostlyclean-target: maybe-mostlyclean-target-libtermcap
@ -2409,7 +2397,6 @@ clean-target: maybe-clean-target-libgcc
clean-target: maybe-clean-target-libbacktrace clean-target: maybe-clean-target-libbacktrace
clean-target: maybe-clean-target-libquadmath clean-target: maybe-clean-target-libquadmath
clean-target: maybe-clean-target-libgfortran clean-target: maybe-clean-target-libgfortran
clean-target: maybe-clean-target-libobjc
clean-target: maybe-clean-target-libgo clean-target: maybe-clean-target-libgo
clean-target: maybe-clean-target-libphobos clean-target: maybe-clean-target-libphobos
clean-target: maybe-clean-target-libtermcap clean-target: maybe-clean-target-libtermcap
@ -2499,7 +2486,6 @@ distclean-target: maybe-distclean-target-libgcc
distclean-target: maybe-distclean-target-libbacktrace distclean-target: maybe-distclean-target-libbacktrace
distclean-target: maybe-distclean-target-libquadmath distclean-target: maybe-distclean-target-libquadmath
distclean-target: maybe-distclean-target-libgfortran distclean-target: maybe-distclean-target-libgfortran
distclean-target: maybe-distclean-target-libobjc
distclean-target: maybe-distclean-target-libgo distclean-target: maybe-distclean-target-libgo
distclean-target: maybe-distclean-target-libphobos distclean-target: maybe-distclean-target-libphobos
distclean-target: maybe-distclean-target-libtermcap distclean-target: maybe-distclean-target-libtermcap
@ -2589,7 +2575,6 @@ maintainer-clean-target: maybe-maintainer-clean-target-libgcc
maintainer-clean-target: maybe-maintainer-clean-target-libbacktrace maintainer-clean-target: maybe-maintainer-clean-target-libbacktrace
maintainer-clean-target: maybe-maintainer-clean-target-libquadmath maintainer-clean-target: maybe-maintainer-clean-target-libquadmath
maintainer-clean-target: maybe-maintainer-clean-target-libgfortran maintainer-clean-target: maybe-maintainer-clean-target-libgfortran
maintainer-clean-target: maybe-maintainer-clean-target-libobjc
maintainer-clean-target: maybe-maintainer-clean-target-libgo maintainer-clean-target: maybe-maintainer-clean-target-libgo
maintainer-clean-target: maybe-maintainer-clean-target-libphobos maintainer-clean-target: maybe-maintainer-clean-target-libphobos
maintainer-clean-target: maybe-maintainer-clean-target-libtermcap maintainer-clean-target: maybe-maintainer-clean-target-libtermcap
@ -2737,7 +2722,6 @@ check-target: \
maybe-check-target-libbacktrace \ maybe-check-target-libbacktrace \
maybe-check-target-libquadmath \ maybe-check-target-libquadmath \
maybe-check-target-libgfortran \ maybe-check-target-libgfortran \
maybe-check-target-libobjc \
maybe-check-target-libgo \ maybe-check-target-libgo \
maybe-check-target-libphobos \ maybe-check-target-libphobos \
maybe-check-target-libtermcap \ maybe-check-target-libtermcap \
@ -2929,7 +2913,6 @@ install-target: \
maybe-install-target-libbacktrace \ maybe-install-target-libbacktrace \
maybe-install-target-libquadmath \ maybe-install-target-libquadmath \
maybe-install-target-libgfortran \ maybe-install-target-libgfortran \
maybe-install-target-libobjc \
maybe-install-target-libgo \ maybe-install-target-libgo \
maybe-install-target-libphobos \ maybe-install-target-libphobos \
maybe-install-target-libtermcap \ maybe-install-target-libtermcap \
@ -3039,7 +3022,6 @@ install-strip-target: \
maybe-install-strip-target-libbacktrace \ maybe-install-strip-target-libbacktrace \
maybe-install-strip-target-libquadmath \ maybe-install-strip-target-libquadmath \
maybe-install-strip-target-libgfortran \ maybe-install-strip-target-libgfortran \
maybe-install-strip-target-libobjc \
maybe-install-strip-target-libgo \ maybe-install-strip-target-libgo \
maybe-install-strip-target-libphobos \ maybe-install-strip-target-libphobos \
maybe-install-strip-target-libtermcap \ maybe-install-strip-target-libtermcap \

View File

@ -194,28 +194,6 @@ extern int fprintf_unlocked (FILE *, const char *, ...);
#undef fread_unlocked #undef fread_unlocked
#undef fwrite_unlocked #undef fwrite_unlocked
/* Include <string> before "safe-ctype.h" to avoid GCC poisoning
the ctype macros through safe-ctype.h */
#ifdef __cplusplus
#ifdef INCLUDE_STRING
# include <string>
#endif
#endif
/* There are an extraordinary number of issues with <ctype.h>.
The last straw is that it varies with the locale. Use libiberty's
replacement instead. */
#include "safe-ctype.h"
#include <sys/types.h>
#include <errno.h>
#if !defined (errno) && defined (HAVE_DECL_ERRNO) && !HAVE_DECL_ERRNO
extern int errno;
#endif
#ifdef __cplusplus #ifdef __cplusplus
#if defined (INCLUDE_ALGORITHM) || !defined (HAVE_SWAP_IN_UTILITY) #if defined (INCLUDE_ALGORITHM) || !defined (HAVE_SWAP_IN_UTILITY)
# include <algorithm> # include <algorithm>
@ -229,6 +207,11 @@ extern int errno;
#ifdef INCLUDE_SET #ifdef INCLUDE_SET
# include <set> # include <set>
#endif #endif
/* Include <string> before "safe-ctype.h" to avoid GCC poisoning
the ctype macros through safe-ctype.h */
#ifdef INCLUDE_STRING
# include <string>
#endif
#ifdef INCLUDE_VECTOR #ifdef INCLUDE_VECTOR
# include <vector> # include <vector>
#endif #endif
@ -245,6 +228,17 @@ extern int errno;
# include <type_traits> # include <type_traits>
#endif #endif
/* There are an extraordinary number of issues with <ctype.h>.
The last straw is that it varies with the locale. Use libiberty's
replacement instead. */
#include "safe-ctype.h"
#include <sys/types.h>
#include <errno.h>
#if !defined (errno) && defined (HAVE_DECL_ERRNO) && !HAVE_DECL_ERRNO
extern int errno;
#endif
/* Some of glibc's string inlines cause warnings. Plus we'd rather /* Some of glibc's string inlines cause warnings. Plus we'd rather
rely on (and therefore test) GCC's string builtins. */ rely on (and therefore test) GCC's string builtins. */
#define __NO_STRING_INLINES #define __NO_STRING_INLINES

View File

@ -31,6 +31,7 @@
#undef PACKAGE_TARNAME #undef PACKAGE_TARNAME
#undef PACKAGE_VERSION #undef PACKAGE_VERSION
#define INCLUDE_VECTOR
#define INCLUDE_MEMORY #define INCLUDE_MEMORY
#include "gcc-plugin.h" #include "gcc-plugin.h"
#include "system.h" #include "system.h"
@ -69,7 +70,6 @@
#include "gcc-c-interface.h" #include "gcc-c-interface.h"
#include "context.hh" #include "context.hh"
#include <vector>
using namespace cc1_plugin; using namespace cc1_plugin;

View File

@ -33,6 +33,7 @@
#undef PACKAGE_VERSION #undef PACKAGE_VERSION
#define INCLUDE_MEMORY #define INCLUDE_MEMORY
#define INCLUDE_VECTOR
#include "gcc-plugin.h" #include "gcc-plugin.h"
#include "system.h" #include "system.h"
#include "coretypes.h" #include "coretypes.h"
@ -71,7 +72,6 @@
#include "rpc.hh" #include "rpc.hh"
#include "context.hh" #include "context.hh"
#include <vector>
using namespace cc1_plugin; using namespace cc1_plugin;