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