Package: src:simbody Version: 3.5.3+dfsg-1 Severity: normal Tags: patch Dear Maintainer,
While trying to build the package on ppc64el, it fails with this message: /«BUILDDIR»/simbody-3.5.3+dfsg/SimTKcommon/src/ParallelExecutor.cpp:174:27: fatal error: windows.h: No such file or directory compilation terminated. SimTKcommon/sharedTarget/CMakeFiles/SimTKcommon.dir/build.make:281: recipe for target 'SimTKcommon/sharedTarget/CMakeFiles/SimTKcommon.dir/__/src/ParallelExecutor.cpp.o' failed make[3]: *** [SimTKcommon/sharedTarget/CMakeFiles/SimTKcommon.dir/__/src/ParallelExecutor.cpp.o] Error 1 make[3]: *** Waiting for unfinished jobs.... make[3]: Leaving directory '/«BUILDDIR»/simbody-3.5.3+dfsg/obj-powerpc64le-linux-gnu' CMakeFiles/Makefile2:1156: recipe for target 'SimTKcommon/sharedTarget/CMakeFiles/SimTKcommon.dir/all' failed make[2]: *** [SimTKcommon/sharedTarget/CMakeFiles/SimTKcommon.dir/all] Error 2 make[2]: Leaving directory '/«BUILDDIR»/simbody-3.5.3+dfsg/obj-powerpc64le-linux-gnu' Makefile:141: recipe for target 'all' failed make[1]: *** [all] Error 2 make[1]: Leaving directory '/«BUILDDIR»/simbody-3.5.3+dfsg/obj-powerpc64le-linux-gnu' dh_auto_build: make -j4 returned exit code 2 debian/rules:30: recipe for target 'build-arch' failed make: *** [build-arch] Error 2 This can be fixed by using the __linux__ macro instead of __linux. The attached patch, applied in Ubuntu, fixes this issue. Thanks for considering the patch. Erwan Prioul.
diff -Naur a/debian/patches/fix-cpp-macros.diff b/debian/patches/fix-cpp-macros.diff --- a/debian/patches/fix-cpp-macros.diff 1970-01-01 01:00:00.000000000 +0100 +++ b/debian/patches/fix-cpp-macros.diff 2016-12-05 14:44:55.257836328 +0100 @@ -0,0 +1,21 @@ +diff -Naur a/SimTKcommon/src/ParallelExecutor.cpp b/SimTKcommon/src/ParallelExecutor.cpp +--- a/SimTKcommon/src/ParallelExecutor.cpp 2016-12-05 14:18:01.125575391 +0100 ++++ b/SimTKcommon/src/ParallelExecutor.cpp 2016-12-05 14:28:32.259231919 +0100 +@@ -167,7 +167,7 @@ + #include <sys/sysctl.h> + #include <dlfcn.h> + #else +- #ifdef __linux ++ #ifdef __linux__ + #include <dlfcn.h> + #include <unistd.h> + #else +@@ -187,7 +187,7 @@ + return(1); + } + #else +-#ifdef __linux ++#ifdef __linux__ + long nProcessorsOnline = sysconf(_SC_NPROCESSORS_ONLN); + if( nProcessorsOnline == -1 ) { + return(1); diff -Naur a/debian/patches/series b/debian/patches/series --- a/debian/patches/series 2016-12-05 14:18:01.133575412 +0100 +++ b/debian/patches/series 2016-12-05 14:45:23.381910979 +0100 @@ -1 +1,2 @@ fix_ppc64el.patch +fix-cpp-macros.diff