Revision: 77374
          http://sourceforge.net/p/brlcad/code/77374
Author:   starseeker
Date:     2020-10-09 01:02:03 +0000 (Fri, 09 Oct 2020)
Log Message:
-----------
Get png building.

Modified Paths:
--------------
    
brlcad/branches/thirdparty_rework/src/superbuild/CMake/ExternalProject_Target.cmake
    brlcad/branches/thirdparty_rework/src/superbuild/CMakeLists.txt
    brlcad/branches/thirdparty_rework/src/superbuild/png.cmake

Modified: 
brlcad/branches/thirdparty_rework/src/superbuild/CMake/ExternalProject_Target.cmake
===================================================================
--- 
brlcad/branches/thirdparty_rework/src/superbuild/CMake/ExternalProject_Target.cmake
 2020-10-09 01:00:35 UTC (rev 77373)
+++ 
brlcad/branches/thirdparty_rework/src/superbuild/CMake/ExternalProject_Target.cmake
 2020-10-09 01:02:03 UTC (rev 77374)
@@ -295,12 +295,12 @@
       set(LINK_TARGET_DEBUG "${E_SHARED}")
     endif (E_LINK_TARGET_DEBUG)
   endif (NOT MSVC)
-  if (E_STATIC_LINK_TARGET_DEBUG AND NOT MSVC)
-    set(LINK_TARGET "${E_STATIC_LINK_TARGET}")
-  endif (E_STATIC_LINK_TARGET_DEBUG AND NOT MSVC)
-  if (E_STATIC_LINK_TARGET_DEBUG AND NOT MSVC)
+  if (E_STATIC_LINK_TARGET AND NOT MSVC AND BUILD_STATIC_LIBS)
+    set(STATIC_LINK_TARGET "${E_STATIC_LINK_TARGET}")
+  endif (E_STATIC_LINK_TARGET AND NOT MSVC AND BUILD_STATIC_LIBS)
+  if (E_STATIC_LINK_TARGET_DEBUG AND NOT MSVC AND BUILD_STATIC_LIBS)
     set(STATIC_LINK_TARGET_DEBUG "${E_STATIC_LINK_TARGET_DEBUG}")
-  endif (E_STATIC_LINK_TARGET_DEBUG AND NOT MSVC)
+  endif (E_STATIC_LINK_TARGET_DEBUG AND NOT MSVC AND BUILD_STATIC_LIBS)
 
   # Create imported target - need to both make the target itself
   # and set the necessary properties.  See also
@@ -375,7 +375,13 @@
   if(E_SYMLINKS AND NOT MSVC)
     foreach(slink ${E_SYMLINKS})
       string(REPLACE "${LIB_DIR}/" ""  ENAME ${slink})
-      fcfgcpy(TOUT ${extproj} ${extroot} ${LIB_DIR} ${slink} ${ENAME})
+      if (NOT BUILD_STATIC_LIBS)
+       if (NOT "${slink}" MATCHES ".*${CMAKE_STATIC_LIBRARY_SUFFIX}")
+         fcfgcpy(TOUT ${extproj} ${extroot} ${LIB_DIR} ${slink} ${ENAME})
+       endif (NOT "${slink}" MATCHES ".*${CMAKE_STATIC_LIBRARY_SUFFIX}")
+      else (NOT BUILD_STATIC_LIBS)
+       fcfgcpy(TOUT ${extproj} ${extroot} ${LIB_DIR} ${slink} ${ENAME})
+      endif (NOT BUILD_STATIC_LIBS)
       install(FILES "${CMAKE_BINARY_DIR}/$<CONFIG>/${LIB_DIR}/${ENAME}" 
DESTINATION ${LIB_DIR})
     endforeach(slink ${E_SYMLINKS})
   endif(E_SYMLINKS AND NOT MSVC)
@@ -386,12 +392,12 @@
     add_custom_target(${etarg}_stage ALL DEPENDS ${TOUT})
   endif (TOUT)
 
-  if (TARGET ${etarg}) 
+  if (TARGET ${etarg})
     add_dependencies(${etarg} ${etarg}_stage ${extproj})
-  endif (TARGET ${etarg}) 
-  if (TARGET ${etarg}-static) 
+  endif (TARGET ${etarg})
+  if (TARGET ${etarg}-static AND BUILD_STATIC_LIBS)
     add_dependencies(${etarg}-static ${etarg}_stage ${extproj})
-  endif (TARGET ${etarg}-static) 
+  endif (TARGET ${etarg}-static AND BUILD_STATIC_LIBS)
 
 endfunction(ExternalProject_Target)
 

Modified: brlcad/branches/thirdparty_rework/src/superbuild/CMakeLists.txt
===================================================================
--- brlcad/branches/thirdparty_rework/src/superbuild/CMakeLists.txt     
2020-10-09 01:00:35 UTC (rev 77373)
+++ brlcad/branches/thirdparty_rework/src/superbuild/CMakeLists.txt     
2020-10-09 01:02:03 UTC (rev 77374)
@@ -176,11 +176,6 @@
 set(BRLCAD_LEVEL3 ON)
 
 
-# We need to track projects that must be built before starting the main
-# BRL-CAD build, since that set changes with build options and can't be
-# hardcoded.
-set(BRLCAD_DEPS)
-
 ###############################################################################
 # BRL-CAD and some of its dependencies require the lemon, re2c and perplex
 # tools for compilation.  They are not installed, but must be available.  We
@@ -206,10 +201,10 @@
 
 # netpbm library - support for pnm,ppm,pbm, etc. image files
 include(${CMAKE_CURRENT_SOURCE_DIR}/netpbm.cmake)
-#
-## libpng - Portable Network Graphics image file support
-#include(${CMAKE_CURRENT_SOURCE_DIR}/png.cmake)
-#
+
+# libpng - Portable Network Graphics image file support
+include(${CMAKE_CURRENT_SOURCE_DIR}/png.cmake)
+
 ## STEPcode - support for reading and writing STEP files
 #include(${CMAKE_CURRENT_SOURCE_DIR}/stepcode.cmake)
 #

Modified: brlcad/branches/thirdparty_rework/src/superbuild/png.cmake
===================================================================
--- brlcad/branches/thirdparty_rework/src/superbuild/png.cmake  2020-10-09 
01:00:35 UTC (rev 77373)
+++ brlcad/branches/thirdparty_rework/src/superbuild/png.cmake  2020-10-09 
01:02:03 UTC (rev 77374)
@@ -34,29 +34,30 @@
     set(ZLIB_TARGET ZLIB_BLD)
   endif (TARGET ZLIB_BLD)
 
+  set(PNG_INSTDIR ${CMAKE_BINARY_DIR}/png)
+
   ExternalProject_Add(PNG_BLD
     SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/png"
     BUILD_ALWAYS ${EXTERNAL_BUILD_UPDATE} ${LOG_OPTS}
-    CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX} 
-DCMAKE_INSTALL_LIBDIR=${LIB_DIR}
-               -DCMAKE_PREFIX_PATH=${CMAKE_INSTALL_PREFIX}/${LIB_DIR} 
-DCMAKE_INSTALL_RPATH=${CMAKE_BUILD_RPATH}
+    CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${PNG_INSTDIR} 
-DCMAKE_INSTALL_LIBDIR=${LIB_DIR}
+               -DCMAKE_INSTALL_RPATH=${CMAKE_BUILD_RPATH} 
-DSKIP_INSTALL_EXPORT=ON
               -DPNG_STATIC=${BUILD_STATIC_LIBS} -DSKIP_INSTALL_EXECUTABLES=ON 
-DSKIP_INSTALL_FILES=ON
                -DSKIP_INSTALL_EXPORT=ON -DPNG_TESTS=OFF -Dld-version-script=OFF
-              -DZLIB_ROOT=$<$<BOOL:${ZLIB_TARGET}>:${CMAKE_INSTALL_PREFIX}> 
-DZLIB_LIBRARY=$<$<BOOL:${ZLIB_TARGET}>:${CMAKE_INSTALL_PREFIX}/${LIB_DIR}/${ZLIB_BASENAME}${CMAKE_SHARED_LIBRARY_SUFFIX}>
+              
-DZLIB_ROOT=$<$<BOOL:${ZLIB_TARGET}>:${CMAKE_BINARY_DIR}/$<CONFIG>> 
-DZLIB_LIBRARY=$<$<BOOL:${ZLIB_TARGET}>:${CMAKE_BINARY_DIR}/$<CONFIG>/${LIB_DIR}/${ZLIB_BASENAME}${CMAKE_SHARED_LIBRARY_SUFFIX}>
                -DPNG_LIB_NAME=${PNG_LIB_NAME} -DPNG_PREFIX=brl_
     DEPENDS ${ZLIB_TARGET}
     )
 
   # Tell the parent build about files and libraries
-  file(APPEND "${SUPERBUILD_OUT}" "
-  ExternalProject_Target(png PNG_BLD
-    OUTPUT_FILE ${PNG_BASENAME}${PNG_SUFFIX}
-    STATIC_OUTPUT_FILE ${PNG_BASENAME}${CMAKE_STATIC_LIBRARY_SUFFIX}
-    SYMLINKS 
\"${PNG_BASENAME}${CMAKE_SHARED_LIBRARY_SUFFIX};${PNG_BASENAME}${CMAKE_SHARED_LIBRARY_SUFFIX}.${PNG_VERSION_MAJOR};${PNG_BASENAME}${CMAKE_STATIC_LIBRARY_SUFFIX}\"
-    LINK_TARGET \"${PNG_BASENAME}${CMAKE_SHARED_LIBRARY_SUFFIX}\"
-    STATIC_LINK_TARGET \"${PNG_BASENAME}${CMAKE_STATIC_LIBRARY_SUFFIX}\"
+  ExternalProject_Target(png PNG_BLD ${PNG_INSTDIR}
+    SHARED ${LIB_DIR}/${PNG_BASENAME}${PNG_SUFFIX}
+    STATIC ${LIB_DIR}/${PNG_BASENAME}${CMAKE_STATIC_LIBRARY_SUFFIX}
+    SYMLINKS 
${LIB_DIR}/${PNG_BASENAME}${CMAKE_SHARED_LIBRARY_SUFFIX};${LIB_DIR}/${PNG_BASENAME}${CMAKE_SHARED_LIBRARY_SUFFIX}.${PNG_VERSION_MAJOR};${LIB_DIR}/${PNG_BASENAME}${CMAKE_STATIC_LIBRARY_SUFFIX}
+    LINK_TARGET ${PNG_BASENAME}${CMAKE_SHARED_LIBRARY_SUFFIX}
+    STATIC_LINK_TARGET ${PNG_BASENAME}${CMAKE_STATIC_LIBRARY_SUFFIX}
     RPATH
     )
-  ExternalProject_ByProducts(PNG_BLD ${INCLUDE_DIR}
+  ExternalProject_ByProducts(png PNG_BLD ${PNG_INSTDIR} ${INCLUDE_DIR} 
${INCLUDE_DIR}
     png.h
     pngconf.h
     pnglibconf.h
@@ -64,10 +65,7 @@
     libpng${PNG_VERSION_MAJOR}/pngconf.h
     libpng${PNG_VERSION_MAJOR}/pnglibconf.h
     )
-    \n")
 
-  list(APPEND BRLCAD_DEPS PNG_BLD)
-
   set(PNG_LIBRARIES png CACHE STRING "Building bundled libpng" FORCE)
   set(PNG_INCLUDE_DIRS "${CMAKE_INSTALL_PREFIX}/${INCLUDE_DIR}" CACHE STRING 
"Directory containing libpng headers." FORCE)
 

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