aboutsummaryrefslogtreecommitdiff
path: root/graphics/brlcad
diff options
context:
space:
mode:
Diffstat (limited to 'graphics/brlcad')
-rw-r--r--graphics/brlcad/brlcad.SlackBuild4
-rw-r--r--graphics/brlcad/brlcad.patch43
2 files changed, 46 insertions, 1 deletions
diff --git a/graphics/brlcad/brlcad.SlackBuild b/graphics/brlcad/brlcad.SlackBuild
index ee9d644e1bd68..5ac7fdf835446 100644
--- a/graphics/brlcad/brlcad.SlackBuild
+++ b/graphics/brlcad/brlcad.SlackBuild
@@ -60,10 +60,12 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+patch -p0 < $CWD/brlcad.patch
mkdir -p build
cd build
# There is a "known issue" according to the guys on #brlcad and we need
# the cmake define "-DBRLCAD_ENABLE_STRICT=OFF" for now
+LDFLAGS="-lpng16" \
cmake \
-DBRLCAD_FLAGS_OPTIMIZATION=ON \
-DBRLCAD_ENABLE_STRICT=OFF \
@@ -85,7 +87,7 @@ cmake \
-DBRLCAD_LIBVDS=BUNDLED \
-DBRLCAD_OPENNURBS=BUNDLED \
-DBRLCAD_PERPLEX=BUNDLED \
- -DBRLCAD_PNG=BUNDLED \
+ -DBRLCAD_PNG=OFF \
-DBRLCAD_RE2C=BUNDLED \
-DBRLCAD_SCL=BUNDLED \
-DBRLCAD_TKHTML=BUNDLED \
diff --git a/graphics/brlcad/brlcad.patch b/graphics/brlcad/brlcad.patch
new file mode 100644
index 0000000000000..0624f3a34a2fa
--- /dev/null
+++ b/graphics/brlcad/brlcad.patch
@@ -0,0 +1,43 @@
+--- CMakeLists.txt
++++ CMakeLists.txt
+@@ -2079,16 +2079,10 @@ if(NOT BRLCAD_IS_SUBBUILD)
+ list(REMOVE_DUPLICATES CMAKE_EXTERNAL_TARGET_LIST)
+ endif(CMAKE_EXTERNAL_TARGET_LIST)
+ foreach(libtarget ${CMAKE_LIBRARY_TARGET_LIST})
+- #TODO - can this locate test be replaced with if(TARGET ${libtarget}) ?
+- if(NOT CMAKE_BUILD_TYPE)
+- get_target_property(target_location ${libtarget} LOCATION)
+- else(NOT CMAKE_BUILD_TYPE)
+- get_target_property(target_location ${libtarget} LOCATION_${CMAKE_BUILD_TYPE})
+- endif(NOT CMAKE_BUILD_TYPE)
+- if(target_location)
++ if(TARGET ${libtarget})
+ add_dependencies(${libtarget} timestamp)
+ add_dependencies(buildtimedelta ${libtarget})
+- endif(target_location)
++ endif(TARGET ${libtarget})
+ endforeach(libtarget ${CMAKE_LIBRARY_TARGET_LIST})
+ foreach(exectarget ${CMAKE_EXEC_TARGET_LIST})
+ if(NOT CMAKE_BUILD_TYPE)
+--- misc/CMake/BRLCAD_CMakeFiles.cmake
++++ misc/CMake/BRLCAD_CMakeFiles.cmake
+@@ -65,7 +65,7 @@ macro(CMAKEFILES)
+ # make sure the file is there. Normally attempting to ignore
+ # a non-existent file is a fatal error, but these keywords
+ # don't necessarily refer to files.
+- set(TARGET_FLAGS SHARED STATIC OBJECT WIN32 UNKNOWN IMPORTED)
++ set(TARGET_FLAGS SHARED STATIC OBJECT WIN32 UNKNOWN IMPORTED MODULE INTERFACE)
+ foreach(TARGET_FLAG ${TARGET_FLAGS})
+ if("${TARGET_FLAG}" STREQUAL "${ITEM}")
+ if(NOT EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${ITEM})
+--- src/libpc/CMakeLists.txt
++++ src/libpc/CMakeLists.txt
+@@ -58,6 +58,7 @@ set(LIBPC_SOURCES
+
+ add_definitions(
+ -DOBJ_BREP=1
++ -DBOOST_DETAIL_NO_CONTAINER_FWD
+ )
+
+ BRLCAD_ADDLIB(libpc "${LIBPC_SOURCES}" "libbu;${OPENNURBS_LIBRARY};${STDCXX_LIBRARIES}" NO_STRICT_CXX)
+