Commit f9a11c3d0fb0acb0b424d1a684580c0481e76d0f
1 parent
4314a78b
Resolve Python test problem on El Capitan (#1563).
Showing
8 changed files
with
52 additions
and
12 deletions
ChangeLog
| 1 | -2015-11-06 Juergen Knoedlseder <jurgen.knodlseder@irap.omp.eu> | |
| 1 | +2015-11-19 Juergen Knoedlseder <jurgen.knodlseder@irap.omp.eu> | |
| 2 | 2 | |
| 3 | 3 | * Version 1.0.0 released |
| 4 | 4 | ======================== |
| 5 | 5 | |
| 6 | - Implement handling of stacked data in csspec (#1566). | |
| 6 | + Implement handling of stacked data in csspec (#1566) | |
| 7 | + Resolve Python test problem on El Capitan (#1563) | |
| 7 | 8 | |
| 8 | 9 | |
| 9 | 10 | 2015-10-31 Juergen Knoedlseder <jurgen.knodlseder@irap.omp.eu> | ... | ... |
NEWS
| ... | ... | @@ -2,7 +2,7 @@ New Features and Important Changes in ctools 1.0.0 |
| 2 | 2 | |
| 3 | 3 | Author(s) : Juergen Knoedlseder |
| 4 | 4 | |
| 5 | -6 November 2015 | |
| 5 | +19 November 2015 | |
| 6 | 6 | |
| 7 | 7 | |
| 8 | 8 | 1. Introduction |
| ... | ... | @@ -14,7 +14,10 @@ version 1.0.0 or above. |
| 14 | 14 | |
| 15 | 15 | 2. Configuration |
| 16 | 16 | ----------------- |
| 17 | -None | |
| 17 | +A special post processing of the Python module libraries has been added for | |
| 18 | +Mac OS X 10.11 and higher (El Capitan). This post processing is a replacement for | |
| 19 | +setting DYLD_LIBRARY_PATH during unit testing since the environment variable is | |
| 20 | +ignored in certain circumstances by El Capitan. | |
| 18 | 21 | |
| 19 | 22 | |
| 20 | 23 | 3. Python interface | ... | ... |
configure.ac
| ... | ... | @@ -29,7 +29,7 @@ |
| 29 | 29 | ############################################################################# |
| 30 | 30 | # Initialisation # |
| 31 | 31 | ############################################################################# |
| 32 | -AC_INIT([ctools], [0.10.0], [jurgen.knodlseder@irap.omp.eu], [ctools]) | |
| 32 | +AC_INIT([ctools], [1.0.0], [jurgen.knodlseder@irap.omp.eu], [ctools]) | |
| 33 | 33 | AC_CONFIG_SRCDIR([src/ctselect/ctselect.cpp]) |
| 34 | 34 | AC_CONFIG_MACRO_DIR([m4]) |
| 35 | 35 | #AM_INIT_AUTOMAKE([gnu no-dependencies]) |
| ... | ... | @@ -71,19 +71,42 @@ AC_CANONICAL_HOST |
| 71 | 71 | # # |
| 72 | 72 | # A special kluge was added for Mac OS X >=10.7. As Apple switched to clang # |
| 73 | 73 | # we search from this version on for the clang compiler. # |
| 74 | +# # | |
| 75 | +# We also signal whether Mac OS X >=10.11 (El Capitan). # | |
| 74 | 76 | ############################################################################# |
| 77 | +# Set default Mac OS X version flags | |
| 78 | +osx_lion=no | |
| 79 | +osx_el_capitan=no | |
| 75 | 80 | |
| 76 | 81 | # Set default compiler lists |
| 77 | 82 | cxx_list="g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC clang++" |
| 78 | 83 | cc_list="gcc cc cl.exe clang" |
| 79 | 84 | |
| 80 | -# Check if we have Mac OS X >= 10.7 | |
| 85 | +# Check if we have Mac OS X >= 10.7 and >= 10.11 | |
| 81 | 86 | if test `uname -s` = "Darwin"; then |
| 82 | - if test `sw_vers -productVersion | sed 's/\(10\.[[0-9]]*\).*/\1/'` '>' 10.6; then | |
| 87 | + version=`sw_vers -productVersion | sed 's/\(10\.[[0-9]]*\).*/\1/' | sed -e 's/\.//g'` | |
| 88 | + if [ test $version -ge 107 ]; then | |
| 83 | 89 | cxx_list="clang++ g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC" |
| 84 | 90 | cc_list="clang gcc cc cl.exe" |
| 91 | + osx_lion=yes | |
| 92 | + fi | |
| 93 | + if [ test $version -ge 1011 ]; then | |
| 94 | + osx_el_capitan=yes | |
| 85 | 95 | fi |
| 86 | 96 | fi |
| 97 | +AC_MSG_CHECKING([for Mac OS X >= 10.7]) | |
| 98 | +if [test "x$osx_lion" = "xyes"]; then | |
| 99 | + AC_MSG_RESULT(yes) | |
| 100 | +else | |
| 101 | + AC_MSG_RESULT(no) | |
| 102 | +fi | |
| 103 | +AC_MSG_CHECKING([for Mac OS X >= 10.11]) | |
| 104 | +if [test "x$osx_el_capitan" = "xyes"]; then | |
| 105 | + AC_MSG_RESULT(yes) | |
| 106 | +else | |
| 107 | + AC_MSG_RESULT(no) | |
| 108 | +fi | |
| 109 | +AM_CONDITIONAL(IS_ELCAPITAN, test "x$osx_el_capitan" = "xyes") | |
| 87 | 110 | |
| 88 | 111 | # Our language is C++ |
| 89 | 112 | AC_LANG(C++) | ... | ... |
ctools.pc.in
| ... | ... | @@ -6,9 +6,9 @@ includedir=${prefix}/include |
| 6 | 6 | Name: ctools |
| 7 | 7 | Description: CTA science analysis tools |
| 8 | 8 | URL: http://cta.irap.omp.eu/ctools |
| 9 | -Version: 0.10.0 | |
| 9 | +Version: 1.0.0 | |
| 10 | 10 | Requires: |
| 11 | -Requires.private: gammalib >= 0.11.0 | |
| 11 | +Requires.private: gammalib >= 1.0.0 | |
| 12 | 12 | Conflicts: |
| 13 | 13 | Cflags: -I${includedir}/ctools @OPENMP_CXXFLAGS@ |
| 14 | 14 | Libs: -L${libdir} -lctools | ... | ... |
doc/Doxyfile
| ... | ... | @@ -32,7 +32,7 @@ PROJECT_NAME = ctools |
| 32 | 32 | # This could be handy for archiving the generated documentation or |
| 33 | 33 | # if some version control system is used. |
| 34 | 34 | |
| 35 | -PROJECT_NUMBER = 0.10.0 | |
| 35 | +PROJECT_NUMBER = 1.0.0 | |
| 36 | 36 | |
| 37 | 37 | # Using the PROJECT_BRIEF tag one can provide an optional one line description |
| 38 | 38 | # for a project that appears at the top of each page and should give viewer | ... | ... |
doc/source/conf.py
| ... | ... | @@ -66,10 +66,10 @@ copyright = u'2014-2015, ctools developers' |
| 66 | 66 | # built documents. |
| 67 | 67 | # |
| 68 | 68 | # The short X.Y version. |
| 69 | -version = '0.10' | |
| 69 | +version = '1.0' | |
| 70 | 70 | |
| 71 | 71 | # The full version, including alpha/beta/rc tags. |
| 72 | -release = '0.10.0' | |
| 72 | +release = '1.0.0' | |
| 73 | 73 | |
| 74 | 74 | # The language for content autogenerated by Sphinx. Refer to documentation |
| 75 | 75 | # for a list of supported languages. | ... | ... |
pyext/Makefile.am
| ... | ... | @@ -94,6 +94,15 @@ all-local: build |
| 94 | 94 | # this. |
| 95 | 95 | build: ctools/tools_wrap.cpp ctools/tools.py |
| 96 | 96 | $(PYTHON) setup.py build |
| 97 | +if IS_ELCAPITAN | |
| 98 | + for f in build/ctools/ctools/_*.so; do \ | |
| 99 | + echo "Post process module "$$f; \ | |
| 100 | + install_name_tool -change $(libdir)/libctools.0.dylib @rpath/libctools.0.dylib $$f; \ | |
| 101 | + install_name_tool -change $(libdir)/libgamma.0.dylib @rpath/libgamma.0.dylib $$f; \ | |
| 102 | + install_name_tool -add_rpath $(libdir) $$f; \ | |
| 103 | + install_name_tool -add_rpath $(abs_top_srcdir)/src/.libs $$f; \ | |
| 104 | + done | |
| 105 | +endif | |
| 97 | 106 | |
| 98 | 107 | install-exec-local: |
| 99 | 108 | $(PYTHON) setup.py install --prefix=$(prefix) | ... | ... |
pyext/setup.py.in
| ... | ... | @@ -114,6 +114,10 @@ else: |
| 114 | 114 | extra_compile_args = [] |
| 115 | 115 | extra_link_args = [] |
| 116 | 116 | |
| 117 | +# Optionally add link flag for El Capitan post-processing of modules | |
| 118 | +if '@IS_ELCAPITAN_TRUE@' != '#': | |
| 119 | + extra_link_args.append('-headerpad_max_install_names') | |
| 120 | + | |
| 117 | 121 | # Setup |
| 118 | 122 | setup(name='@PACKAGE_NAME@', |
| 119 | 123 | version='@PACKAGE_VERSION@', | ... | ... |