diff options
| author | Charlie Sharpsteen | 2012-11-13 19:10:58 -0800 |
|---|---|---|
| committer | Charlie Sharpsteen | 2012-11-13 20:54:34 -0800 |
| commit | fcf337f86241f607808bdfe93955ae0086e8f9ca (patch) | |
| tree | 9aad1324e317d85059af392b0b9d737c6d85b2ad /Library/Formula | |
| parent | 0794c8e8fd3ad2b55b0567b6358c0720980616ee (diff) | |
| download | homebrew-fcf337f86241f607808bdfe93955ae0086e8f9ca.tar.bz2 | |
r: Fix Objective-C++ detection on 10.8.x
The tests used by R's configure scripts are broken starting with 10.8. Add a
patch to hotfix this until it gets sorted upstream.
Upstream bug:
https://bugs.r-project.org/bugzilla3/show_bug.cgi?id=15107
Fixes #15739.
Diffstat (limited to 'Library/Formula')
| -rw-r--r-- | Library/Formula/r.rb | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/Library/Formula/r.rb b/Library/Formula/r.rb index 35a864521..b25a4d4f9 100644 --- a/Library/Formula/r.rb +++ b/Library/Formula/r.rb @@ -23,6 +23,12 @@ class R < Formula depends_on 'valgrind' if build.include? 'with-valgrind' + def patches + # Fix detection of Objective-C++ in configure. Reported upstream: + # https://bugs.r-project.org/bugzilla3/show_bug.cgi?id=15107 + DATA + end if MacOS.version >= :mountain_lion + def install ENV.Og if build.include? 'with-valgrind' ENV.fortran @@ -71,3 +77,52 @@ class R < Formula EOS end end + +__END__ + +Patch configure so that Objective-C++ tests pass on OS X 10.8.x. The problem is +that every test uses the header file `objc/Object.h` to define Objective-C +objects and this header is a no-op include on 10.8 unless the `__OBJC2__` +preprocessor variable is undefined. + +Upstream bug: + + https://bugs.r-project.org/bugzilla3/show_bug.cgi?id=15107 + +diff --git a/configure b/configure +index 5bae281..baf4f47 100755 +--- a/configure ++++ b/configure +@@ -8328,6 +8328,7 @@ $as_echo_n "checking whether ${OBJCXX} can compile ObjC++... " >&6; } + ## we don't use AC_LANG_xx because ObjC++ is not defined as a language (yet) + ## (the test program is from the gcc test suite) + cat << \EOF > conftest.mm ++#undef __OBJC2__ + #include <objc/Object.h> + #include <iostream> + +@@ -8368,6 +8369,7 @@ $as_echo_n "checking whether ${CXX} can compile ObjC++... " >&6; } + ## we don't use AC_LANG_xx because ObjC++ is not defined as a language (yet) + ## (the test program is from the gcc test suite) + cat << \EOF > conftest.mm ++#undef __OBJC2__ + #include <objc/Object.h> + #include <iostream> + +@@ -8403,6 +8405,7 @@ $as_echo_n "checking whether ${OBJC} can compile ObjC++... " >&6; } + ## we don't use AC_LANG_xx because ObjC++ is not defined as a language (yet) + ## (the test program is from the gcc test suite) + cat << \EOF > conftest.mm ++#undef __OBJC2__ + #include <objc/Object.h> + #include <iostream> + +@@ -24389,7 +24392,7 @@ else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext + /* end confdefs.h. */ + +- ++#undef __OBJC2__ + #include <objc/Object.h> + + #ifdef F77_DUMMY_MAIN |
