osxcross/wrapper/programs
Alexey Brodkin 1900351515 Fix building on CentOS 7.x
With C++14 the following error happens on CentOS 7.x:
==================================
$ clang++ -std=c++1y -Wall -Wextra -pedantic -Wno-missing-field-initializers \
          -I. -O2 -DOSXCROSS_VERSION="\"1.2\"" -DOSXCROSS_TARGET="\"darwin14\"" \
          -DOSXCROSS_OSX_VERSION_MIN="\"10.6\"" -DOSXCROSS_LINKER_VERSION="\"530\"" \
          -DOSXCROSS_LIBLTO_PATH="\"/usr/lib64/llvm\"" \
          -DOSXCROSS_BUILD_DIR="\"/osxcross/build\""  -isystem quirks/include \
          -c -o target.o target.cpp
In file included from target.cpp:24:
In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.8.5/../../../../include/c++/4.8.5/iostream:39:
In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.8.5/../../../../include/c++/4.8.5/ostream:38:
In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.8.5/../../../../include/c++/4.8.5/ios:42:
In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.8.5/../../../../include/c++/4.8.5/bits/ios_base.h:41:
In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.8.5/../../../../include/c++/4.8.5/bits/locale_classes.h:40:
In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.8.5/../../../../include/c++/4.8.5/string:52:
In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.8.5/../../../../include/c++/4.8.5/bits/basic_string.h:2815:
In file included from /usr/bin/../lib/gcc/x86_64-redhat-linux/4.8.5/../../../../include/c++/4.8.5/ext/string_conversions.h:43:
/usr/bin/../lib/gcc/x86_64-redhat-linux/4.8.5/../../../../include/c++/4.8.5/cstdio:120:11: error: no member named 'gets' in the global namespace
  using ::gets;
        ~~^
1 error generated.
==================================

That's a known issue with older C++ headers, see https://bugs.llvm.org/show_bug.cgi?id=30277

With C++11 we then get another problem:
==================================
$ clang++ -std=c++0x -Wall -Wextra -pedantic -Wno-missing-field-initializers \
          -I. -O2 -DOSXCROSS_VERSION="\"1.2\"" -DOSXCROSS_TARGET="\"darwin14\"" \
          -DOSXCROSS_OSX_VERSION_MIN="\"10.6\"" -DOSXCROSS_LINKER_VERSION="\"530\"" \
          -DOSXCROSS_LIBLTO_PATH="\"/usr/lib64/llvm\"" \
          -DOSXCROSS_BUILD_DIR="\"/osxcross/build\""  -isystem quirks/include \
          -c -o programs/osxcross-conf.o programs/osxcross-conf.cpp

programs/osxcross-conf.cpp:50:49: error: 'auto' not allowed in lambda parameter
  static auto print = [](const char *var, const auto &val) {
                                                ^~~~
programs/osxcross-conf.cpp:50:55: warning: unused parameter 'val' [-Wunused-parameter]
  static auto print = [](const char *var, const auto &val) {
                                                      ^
programs/osxcross-conf.cpp:54:3: error: no matching function for call to object of type '<lambda at programs/osxcross-conf.cpp:50:23>'
  print("VERSION", getOSXCrossVersion());
==================================

That last issue requires a move from a lambda to more ugly
template solution. But in the end we get all built!
2020-07-12 16:36:52 +03:00
..
dsymutil.cpp New: 2019-06-01 19:57:44 +02:00
osxcross-cmp.cpp Clang 3.8 adjustments 2016-02-27 09:40:10 +01:00
osxcross-conf.cpp Fix building on CentOS 7.x 2020-07-12 16:36:52 +03:00
osxcross-env.cpp Clang 3.8 adjustments 2016-02-27 09:40:10 +01:00
osxcross-man.cpp Clang 3.8 adjustments 2016-02-27 09:40:10 +01:00
osxcross-version.cpp Clang 3.8 adjustments 2016-02-27 09:40:10 +01:00
pkg-config.cpp Misc pkg-config adjustments (closes #69) 2016-03-29 20:16:54 +02:00
proginc.h Cleanup: Remove the native Windows bits. 2015-10-04 18:02:07 +02:00
sw_vers.cpp * Add xcodebuild stub tool. Only '-version' is supported. 2020-03-10 16:49:39 +01:00
xcodebuild.cpp Add back patch levevl to 'xcodebuild -version' 2020-03-25 19:34:09 +01:00
xcrun.cpp xcrun: Update tool list 2020-03-25 19:34:55 +01:00