Revision: 77381
          http://sourceforge.net/p/brlcad/code/77381
Author:   starseeker
Date:     2020-10-09 14:13:29 +0000 (Fri, 09 Oct 2020)
Log Message:
-----------
Get Tcl building, at least with a basic setup.

Modified Paths:
--------------
    brlcad/branches/thirdparty_rework/src/superbuild/CMakeLists.txt
    brlcad/branches/thirdparty_rework/src/superbuild/stepcode.cmake
    brlcad/branches/thirdparty_rework/src/superbuild/tcl.cmake

Modified: brlcad/branches/thirdparty_rework/src/superbuild/CMakeLists.txt
===================================================================
--- brlcad/branches/thirdparty_rework/src/superbuild/CMakeLists.txt     
2020-10-09 14:01:53 UTC (rev 77380)
+++ brlcad/branches/thirdparty_rework/src/superbuild/CMakeLists.txt     
2020-10-09 14:13:29 UTC (rev 77381)
@@ -114,6 +114,10 @@
   set(EXTPROJ_VERBOSE 0)
 endif(NOT DEFINED EXTPROJ_VERBOSE)
 
+# Tool for replacing rpath values in build files
+configure_file(${BDEPS_CMAKE_DIR}/rpath_replace.cxx.in 
${CMAKE_CURRENT_BINARY_DIR}/rpath_replace.cxx)
+add_executable(rpath_replace ${CMAKE_CURRENT_BINARY_DIR}/rpath_replace.cxx)
+
 # Superbuilds use ExternalProject_Add, and BRL-CAD defines some additional
 # targets for managing them.
 include(ExternalProject)
@@ -174,6 +178,7 @@
 # For now, turn everything on:
 set(BRLCAD_LEVEL2 ON)
 set(BRLCAD_LEVEL3 ON)
+set(BRLCAD_ENABLE_STEP ON)
 set(BRLCAD_ENABLE_GDAL ON)
 
 ###############################################################################
@@ -218,7 +223,7 @@
 include(${CMAKE_CURRENT_SOURCE_DIR}/gdal.cmake)
 
 ## TCL - scripting language
-#include(${CMAKE_CURRENT_SOURCE_DIR}/tcl.cmake)
+include(${CMAKE_CURRENT_SOURCE_DIR}/tcl.cmake)
 #include(${CMAKE_CURRENT_SOURCE_DIR}/tk.cmake)
 #include(${CMAKE_CURRENT_SOURCE_DIR}/itcl.cmake)
 #include(${CMAKE_CURRENT_SOURCE_DIR}/itk.cmake)

Modified: brlcad/branches/thirdparty_rework/src/superbuild/stepcode.cmake
===================================================================
--- brlcad/branches/thirdparty_rework/src/superbuild/stepcode.cmake     
2020-10-09 14:01:53 UTC (rev 77380)
+++ brlcad/branches/thirdparty_rework/src/superbuild/stepcode.cmake     
2020-10-09 14:13:29 UTC (rev 77381)
@@ -6,7 +6,7 @@
 ")
 
 THIRD_PARTY(stepcode SC stepcode sc_DESCRIPTION
-  REQUIRED_VARS BRLCAD_LEVEL3
+  REQUIRED_VARS BRLCAD_LEVEL3 BRLCAD_ENABLE_STEP
   ALIASES ${sc_ALIASES}
   RESET_VARS EXP2CXX_EXEC EXP2CXX_EXECUTABLE_TARGET
   FLAGS NOSYS)

Modified: brlcad/branches/thirdparty_rework/src/superbuild/tcl.cmake
===================================================================
--- brlcad/branches/thirdparty_rework/src/superbuild/tcl.cmake  2020-10-09 
14:01:53 UTC (rev 77380)
+++ brlcad/branches/thirdparty_rework/src/superbuild/tcl.cmake  2020-10-09 
14:13:29 UTC (rev 77381)
@@ -31,6 +31,8 @@
   configure_file(${BDEPS_CMAKE_DIR}/tcl_replace.cxx.in 
${CMAKE_CURRENT_BINARY_DIR}/tcl_replace.cxx)
   add_executable(tcl_replace ${CMAKE_CURRENT_BINARY_DIR}/tcl_replace.cxx)
 
+  set(TCL_INSTDIR ${CMAKE_BINARY_DIR}/tcl$<CONFIG>)
+
   if (NOT MSVC)
 
     set(TCL_BASENAME libtcl${TCL_MAJOR_VERSION}.${TCL_MINOR_VERSION})
@@ -44,7 +46,7 @@
       BUILD_ALWAYS ${EXTERNAL_BUILD_UPDATE} ${LOG_OPTS}
       PATCH_COMMAND rpath_replace "${CMAKE_BUILD_RPATH}" ${TCL_PATCH_FILES}
       COMMAND tcl_replace ${TCL_REWORK_FILES}
-      CONFIGURE_COMMAND CPPFLAGS=-I${CMAKE_INSTALL_PREFIX}/${INCLUDE_DIR} 
LDFLAGS=-L${CMAKE_INSTALL_PREFIX}/${LIB_DIR} ${TCL_SRC_DIR}/unix/configure 
--prefix=${CMAKE_INSTALL_PREFIX}
+      CONFIGURE_COMMAND 
CPPFLAGS=-I${CMAKE_BINARY_DIR}/$<CONFIG>/${INCLUDE_DIR} 
LDFLAGS=-L${CMAKE_BINARY_DIR}/$<CONFIG>/${LIB_DIR} 
${TCL_SRC_DIR}/unix/configure --prefix=${TCL_INSTDIR}
       BUILD_COMMAND make -j${pcnt}
       INSTALL_COMMAND make install
       DEPENDS ${ZLIB_TARGET} tcl_replace
@@ -59,29 +61,29 @@
       BUILD_ALWAYS ${EXTERNAL_BUILD_UPDATE} ${LOG_OPTS}
       CONFIGURE_COMMAND ""
       BINARY_DIR ${TCL_SRC_DIR}/win
-      BUILD_COMMAND ${VCVARS_BAT} && nmake -f makefile.vc 
INSTALLDIR=${CMAKE_INSTALL_PREFIX}
-      INSTALL_COMMAND ${VCVARS_BAT} && nmake -f makefile.vc install 
INSTALLDIR=${CMAKE_INSTALL_PREFIX}
+      BUILD_COMMAND ${VCVARS_BAT} && nmake -f makefile.vc 
INSTALLDIR=${TCL_INSTDIR}
+      INSTALL_COMMAND ${VCVARS_BAT} && nmake -f makefile.vc install 
INSTALLDIR=${TCL_INSTDIR}
       )
 
   endif (NOT MSVC)
 
   # Tell the parent build about files and libraries
-  file(APPEND "${SUPERBUILD_OUT}" "
-  ExternalProject_Target(tcl TCL_BLD
-    OUTPUT_FILE ${TCL_BASENAME}${CMAKE_SHARED_LIBRARY_SUFFIX}
-    STATIC_OUTPUT_FILE ${TCL_STUBNAME}${CMAKE_STATIC_LIBRARY_SUFFIX}
+  ExternalProject_Target(tcl TCL_BLD ${TCL_INSTDIR}
+    SHARED ${LIB_DIR}/${TCL_BASENAME}${CMAKE_SHARED_LIBRARY_SUFFIX}
+    STATIC ${LIB_DIR}/${TCL_STUBNAME}${CMAKE_STATIC_LIBRARY_SUFFIX}
     RPATH
     )
 
-  ExternalProject_Target(tclsh TCL_BLD
-    OUTPUT_FILE 
tclsh${TCL_MAJOR_VERSION}.${TCL_MINOR_VERSION}${CMAKE_EXECUTABLE_SUFFIX}
-    RPATH EXEC
+  ExternalProject_Target(tclsh TCL_BLD ${TCL_INSTDIR}
+    EXEC 
${BIN_DIR}/tclsh${TCL_MAJOR_VERSION}.${TCL_MINOR_VERSION}${CMAKE_EXECUTABLE_SUFFIX}
+    RPATH
     )
-  ExternalProject_ByProducts(TCL_BLD ${LIB_DIR} FIXPATH
+  ExternalProject_ByProducts(tcl TCL_BLD ${TCL_INSTDIR} ${LIB_DIR} ${LIB_DIR}
     tclConfig.sh
     tclooConfig.sh
+    FIXPATH
     )
-  ExternalProject_ByProducts(TCL_BLD ${LIB_DIR}/tcl8.${TCL_MINOR_VERSION}
+  ExternalProject_ByProducts(tcl  TCL_BLD ${TCL_INSTDIR} 
${LIB_DIR}/tcl8.${TCL_MINOR_VERSION} ${LIB_DIR}/tcl8.${TCL_MINOR_VERSION}
     auto.tcl
     clock.tcl
     encoding/ascii.enc
@@ -303,7 +305,7 @@
     tm.tcl
     word.tcl
     )
-  ExternalProject_ByProducts(TCL_BLD ${INCLUDE_DIR}
+  ExternalProject_ByProducts(tcl TCL_BLD ${TCL_INSTDIR} ${INCLUDE_DIR} 
${INCLUDE_DIR}
     tclDecls.h
     tcl.h
     tclOODecls.h
@@ -312,12 +314,9 @@
     tclTomMathDecls.h
     tclTomMath.h
     )
-  \n")
 
-  list(APPEND BRLCAD_DEPS TCL_BLD)
-
   set(TCL_LIBRARIES tcl CACHE STRING "Building bundled tcl" FORCE)
-  set(TCL_INCLUDE_DIRS "${CMAKE_INSTALL_PREFIX}/${INCLUDE_DIR}" CACHE STRING 
"Directory containing tcl headers." FORCE)
+  set(TCL_INCLUDE_DIRS "${CMAKE_BINARY_DIR}/$<CONFIG>/${INCLUDE_DIR}" CACHE 
STRING "Directory containing tcl headers." FORCE)
 
   SetTargetFolder(TCL_BLD "Third Party Libraries")
   SetTargetFolder(tcl "Third Party Libraries")

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