Revision: 75317
          http://sourceforge.net/p/brlcad/code/75317
Author:   starseeker
Date:     2020-04-09 15:27:40 +0000 (Thu, 09 Apr 2020)
Log Message:
-----------
With the deliberate exceptions of Tcl/Tk and openNURBS, don't install the 
headers of the src/other libs.  Our bundled versions aren't really intended to 
(and can't always successfully) substitute for 3rd party libs in other codes as 
well as our own, and putting our versions of those headers where they can be 
found invites trouble.  openNURBS we modify for our uses (a system version, 
which doesn't usually exist anyway, won't work).

Modified Paths:
--------------
    brlcad/trunk/src/other/CMakeLists.txt

Modified: brlcad/trunk/src/other/CMakeLists.txt
===================================================================
--- brlcad/trunk/src/other/CMakeLists.txt       2020-04-09 15:19:06 UTC (rev 
75316)
+++ brlcad/trunk/src/other/CMakeLists.txt       2020-04-09 15:27:40 UTC (rev 
75317)
@@ -87,6 +87,13 @@
   CMAKEFILES(${dlist})
 endforeach(ITEM ${dlists})
 
+# If the option is available (and in a number of cases we make sure it is)
+# don't install the headers as part of the BRL-CAD package.  We compile
+# against these, but we may have adjusted them compared to system versions
+# and we don't want them mixing with the system version for an external
+# code via it including our version of the header
+set(SKIP_INSTALL_HEADERS TRUE CACHE  BOOL "Don't install src/other headers" 
FORCE)
+
 # libregex library -  often needed by tools, so do this one first.
 set(regex_DESCRIPTION "
 Option for enabling and disabling compilation of the Regular
@@ -100,12 +107,10 @@
 BRLCAD_INCLUDE_FILE(regex.h HAVE_REGEX_H)
 SetTargetFolder(regex "Third Party Libraries")
 SetTargetFolder(regex-static "Third Party Libraries")
-if(BRLCAD_REGEX_BUILD)
-  BRLCAD_MANAGE_FILES(${CMAKE_CURRENT_BINARY_DIR}/libregex/regex.h 
${INCLUDE_DIR})
-else(BRLCAD_REGEX_BUILD)
+if (NOT BRLCAD_REGEX_BUILD)
   set(REGEX_LIBRARIES ${REGEX_LIBRARY} CACHE STRING "REGEX_LIBRARIES" FORCE)
   set(REGEX_INCLUDE_DIRS "${REGEX_INCLUDE_DIR}" CACHE STRING "REGEX include 
directory" FORCE)
-endif(BRLCAD_REGEX_BUILD)
+endif (NOT BRLCAD_REGEX_BUILD)
 
 # Same deal for zlib Library - common requirement, deal with it up front
 set(zlib_DESCRIPTION "
@@ -125,8 +130,6 @@
   add_definitions(-DZ_PREFIX)
   add_definitions(-DZ_PREFIX_STR=${Z_PREFIX_STR})
   set(Z_PREFIX_STR "${Z_PREFIX_STR}" CACHE STRING "prefix for zlib functions" 
FORCE)
-  BRLCAD_MANAGE_FILES(${CMAKE_CURRENT_BINARY_DIR}/libz/zlib.h ${INCLUDE_DIR})
-  BRLCAD_MANAGE_FILES(${CMAKE_CURRENT_BINARY_DIR}/libz/zconf.h ${INCLUDE_DIR})
 else(BRLCAD_ZLIB_BUILD)
   set(Z_PREFIX_STR "" CACHE STRING "clear prefix for zlib functions" FORCE)
   set(Z_PREFIX_STR)
@@ -196,25 +199,6 @@
   SetTargetFolder(png "Third Party Libraries")
   SetTargetFolder(png_static "Third Party Libraries")
   SetTargetFolder(genfiles "Third Party Libraries")
-
-  # The actual install directory has these in both libpng16 and the toplevel
-  # include directory.  Just put them in the top level include directory - we
-  # don't guarantee libpng16, so an include directory with that version may or
-  # may not be there anyway.
-  BRLCAD_MANAGE_FILES(libpng/png.h ${INCLUDE_DIR} FOLDER libpng)
-  BRLCAD_MANAGE_FILES(libpng/pngconf.h ${INCLUDE_DIR} FOLDER libpng)
-  add_custom_command(
-    OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/pnglibconf.sentinel"
-    COMMAND "${CMAKE_COMMAND}" -E copy_if_different 
${CMAKE_CURRENT_BINARY_DIR}/libpng/pnglibconf.h 
${CMAKE_BINARY_DIR}/${INCLUDE_DIR}/pnglibconf.h
-    COMMAND ${CMAKE_COMMAND} -E touch 
"${CMAKE_CURRENT_BINARY_DIR}/pnglibconf.sentinel"
-    DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/libpng/pnglibconf.h
-    )
-  add_custom_target(pnglibconf_cp ALL DEPENDS 
"${CMAKE_CURRENT_BINARY_DIR}/pnglibconf.sentinel")
-  BRLCAD_ADD_DIR_LIST_ENTRY(DATA_TARGETS "${CMAKE_CURRENT_BINARY_DIR}" 
pnglibconf_cp)
-  set_target_properties(pnglibconf_cp PROPERTIES FOLDER "BRL-CAD File 
Setup/libpng")
-  add_dependencies(pnglibconf_cp genfiles)
-  add_dependencies(png pnglibconf_cp)
-  DISTCLEAN("${CMAKE_BINARY_DIR}/${INCLUDE_DIR}/pnglibconf.h")
 else(BRLCAD_PNG_BUILD)
   set(PNG_LIBRARIES ${PNG_LIBRARY_RELEASE} CACHE STRING "PNG_LIBRARIES" FORCE)
   set(PNG_INCLUDE_DIRS "${PNG_PNG_INCLUDE_DIR}" CACHE STRING "PNG include 
directory" FORCE)
@@ -259,9 +243,6 @@
   mark_as_advanced(LZ4_LIBRARIES)
   SetTargetFolder(lz4 "Third Party Libraries")
   SetTargetFolder(lz4-static "Third Party Libraries")
-  BRLCAD_MANAGE_FILES(lz4/lz4.h ${INCLUDE_DIR})
-  BRLCAD_MANAGE_FILES(lz4/lz4frame.h ${INCLUDE_DIR})
-  BRLCAD_MANAGE_FILES(lz4/lz4hc.h ${INCLUDE_DIR})
 endif(BRLCAD_LZ4_BUILD)
 
 
@@ -377,15 +358,6 @@
   set(BRLCAD_UTAHRLE_INCLUDE_DIR "${UTAHRLE_INCLUDE_DIR}" CACHE STRING 
"directory with rle.h header" FORCE)
   mark_as_advanced(UTAHRLE_INCLUDE_DIR)
   mark_as_advanced(BRLCAD_UTAHRLE_INCLUDE_DIR)
-
-  # manage installed headers
-  get_directory_property(libutahrle_headers_orig DIRECTORY libutahrle 
DEFINITION LIBUTAHRLE_PUBLIC_HDRS)
-  set(libutahrle_headers)
-  foreach(utahh ${libutahrle_headers_orig})
-    get_filename_component(utahhf ${utahh} NAME)
-    set(libutahrle_headers ${libutahrle_headers} libutahrle/include/${utahhf})
-  endforeach(utahh ${libutahrle_headers_orig})
-  BRLCAD_MANAGE_FILES(libutahrle_headers ${INCLUDE_DIR})
 endif(BRLCAD_UTAHRLE_BUILD)
 
 ####################################################################
@@ -758,25 +730,6 @@
 set(BIN_INSTALL_DIR ${BIN_DIR})
 set(LIB_INSTALL_DIR ${LIB_DIR})
 
-function(SC_MANAGE_HDRS src_dir src_var target_dir)
-  get_directory_property(sc_headers_orig DIRECTORY ${src_dir} DEFINITION 
${src_var})
-  set(sc_headers)
-  foreach(scfile ${sc_headers_orig})
-    get_filename_component(scf ${scfile} NAME)
-    set(sc_headers ${sc_headers} ${src_dir}/${scf})
-  endforeach(scfile ${sc_headers_orig})
-  BRLCAD_MANAGE_FILES("${sc_headers}" "${target_dir}" FOLDER stepcode)
-endfunction(SC_MANAGE_HDRS)
-
-function(SC_MANAGE_HDRS2 src_dir src_var target_dir)
-  get_directory_property(sc_headers_orig DIRECTORY ${src_dir} DEFINITION 
${src_var})
-  set(sc_headers)
-  foreach(scfile ${sc_headers_orig})
-    set(sc_headers ${sc_headers} ${src_dir}/${scfile})
-  endforeach(scfile ${sc_headers_orig})
-  BRLCAD_MANAGE_FILES("${sc_headers}" "${target_dir}" FOLDER stepcode)
-endfunction(SC_MANAGE_HDRS2)
-
 set(sc_ALIASES ENABLE_SCL ENABLE_STEP ENABLE_STEP_CLASS_LIBRARIES)
 set(sc_DESCRIPTION "
 Option for enabling and disabling compilation of the NIST Step Class
@@ -800,34 +753,6 @@
   DISTCLEAN("${CMAKE_CURRENT_BINARY_DIR}/stepcode/include/sc_cf.h.in")
   DISTCLEAN("${CMAKE_CURRENT_BINARY_DIR}/stepcode/include/sc_version_string.h")
   
DISTCLEAN("${CMAKE_CURRENT_BINARY_DIR}/stepcode/src/express/ExpParser_expparse/expparse.y")
-
-  # stepcode has a lot of installed headers...
-  SC_MANAGE_HDRS(stepcode/src/base SC_BASE_HDRS ${INCLUDE_DIR}/stepcode/base)
-  SC_MANAGE_HDRS(stepcode/src/cldai SC_CLDAI_HDRS 
${INCLUDE_DIR}/stepcode/cldai)
-  SC_MANAGE_HDRS(stepcode/src/cleditor SC_CLEDITOR_HDRS 
${INCLUDE_DIR}/stepcode/cleditor)
-  SC_MANAGE_HDRS(stepcode/src/clstepcore SC_CLSTEPCORE_HDRS 
${INCLUDE_DIR}/stepcode/clstepcore)
-  SC_MANAGE_HDRS(stepcode/src/clutils SC_CLUTILS_HDRS 
${INCLUDE_DIR}/stepcode/clutils)
-  SC_MANAGE_HDRS2(stepcode/include express_HDRS 
${INCLUDE_DIR}/stepcode/express)
-  SC_MANAGE_HDRS2(stepcode/include exppp_HDRS ${INCLUDE_DIR}/stepcode/exppp)
-  BRLCAD_MANAGE_FILES(stepcode/include/ordered_attrs.h ${INCLUDE_DIR}/stepcode)
-  BRLCAD_MANAGE_FILES(stepcode/include/sc_export.h ${INCLUDE_DIR}/stepcode)
-  BRLCAD_MANAGE_FILES(stepcode/include/sc_stdbool.h ${INCLUDE_DIR}/stepcode)
-  get_directory_property(scbdir DIRECTORY stepcode/include DEFINITION 
SC_BINARY_DIR)
-  get_directory_property(sciidir DIRECTORY stepcode/include DEFINITION 
INCLUDE_INSTALL_DIR)
-  add_custom_command(
-    OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/sc_gen_hdrs.sentinel"
-    COMMAND "${CMAKE_COMMAND}" -E copy_if_different 
${scbdir}/${sciidir}/sc_cf.h ${CMAKE_BINARY_DIR}/${INCLUDE_DIR}/stepcode/sc_cf.h
-    COMMAND "${CMAKE_COMMAND}" -E copy_if_different 
${scbdir}/${sciidir}/sc_version_string.h 
${CMAKE_BINARY_DIR}/${INCLUDE_DIR}/stepcode/sc_version_string.h
-    COMMAND ${CMAKE_COMMAND} -E touch 
"${CMAKE_CURRENT_BINARY_DIR}/sc_gen_hdrs.sentinel"
-    DEPENDS ${scbdir}/${sciidir}/sc_cf.h
-    )
-  add_custom_target(sc_gen_hdrs_cp ALL DEPENDS 
"${CMAKE_CURRENT_BINARY_DIR}/sc_gen_hdrs.sentinel")
-  BRLCAD_ADD_DIR_LIST_ENTRY(DATA_TARGETS "${CMAKE_CURRENT_BINARY_DIR}" 
sc_gen_hdrs_cp)
-  set_target_properties(sc_gen_hdrs_cp PROPERTIES FOLDER "BRL-CAD File 
Setup/stepcode")
-  add_dependencies(express sc_gen_hdrs_cp)
-  DISTCLEAN("${CMAKE_BINARY_DIR}/${INCLUDE_DIR}/stepcode/sc_cf.h")
-  DISTCLEAN("${CMAKE_BINARY_DIR}/${INCLUDE_DIR}/stepcode/sc_version_string.h")
-
 endif(BRLCAD_SC_BUILD)
 set(IS_SUBBUILD ${IS_SUBBUILD_STASH})
 mark_as_advanced(SC_BUILD_TYPE)
@@ -981,11 +906,6 @@
 DISTCLEAN("${CMAKE_CURRENT_SOURCE_DIR}/poly2tri/Makefile")
 set(P2T_LIBRARY "poly2tri" CACHE STRING "Poly2Tri library" FORCE)
 set(P2T_INCLUDE_DIR "${BRLCAD_SOURCE_DIR}/src/other/poly2tri" CACHE STRING 
"Directory containing poly2tri header" FORCE)
-get_directory_property(poly2tri_headers DIRECTORY poly2tri DEFINITION 
LIBP2T_PUBLIC_HDRS)
-foreach(phfile ${poly2tri_headers})
-  get_filename_component(phfile_dir ${phfile} DIRECTORY)
-  BRLCAD_MANAGE_FILES(poly2tri/${phfile} ${INCLUDE_DIR}/${phfile_dir})
-endforeach(phfile ${poly2tri_headers})
 SetTargetFolder(poly2tri "Third Party Libraries")
 SetTargetFolder(poly2tri-static "Third Party Libraries")
 mark_as_advanced(P2T_LIBRARY)

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.



_______________________________________________
BRL-CAD Source Commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-commits

Reply via email to