Revision: 41735
          http://brlcad.svn.sourceforge.net/brlcad/?rev=41735&view=rev
Author:   starseeker
Date:     2010-12-21 14:25:37 +0000 (Tue, 21 Dec 2010)

Log Message:
-----------
Generalize the output directory settings along the lines hinted at by 
http://forum.openscenegraph.org/viewtopic.php?t=6926

Modified Paths:
--------------
    brlcad/branches/cmake/CMakeLists.txt

Modified: brlcad/branches/cmake/CMakeLists.txt
===================================================================
--- brlcad/branches/cmake/CMakeLists.txt        2010-12-21 01:39:10 UTC (rev 
41734)
+++ brlcad/branches/cmake/CMakeLists.txt        2010-12-21 14:25:37 UTC (rev 
41735)
@@ -279,21 +279,36 @@
 # Output directories - this is where built library and executable 
 # files will be placed after building but prior to install.
 IF(NOT CMAKE_LIBRARY_OUTPUT_DIRECTORY)
-       SET(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${BRLCAD_BINARY_DIR}/lib CACHE 
INTERNAL "Single output directory for building all libraries.")
-       SET(CMAKE_LIBRARY_OUTPUT_DIRECTORY_DEBUG ${BRLCAD_BINARY_DIR}/lib CACHE 
INTERNAL "Single output directory for building all libraries.")
-       SET(CMAKE_LIBRARY_OUTPUT_DIRECTORY_RELEASE ${BRLCAD_BINARY_DIR}/lib 
CACHE INTERNAL "Single output directory for building all libraries.")
+       IF(WIN32)
+               SET(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${BRLCAD_BINARY_DIR}/bin 
CACHE INTERNAL "Single output directory for building all libraries.")
+       ELSE(WIN32)
+               SET(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${BRLCAD_BINARY_DIR}/lib 
CACHE INTERNAL "Single output directory for building all libraries.")
+       ENDIF(WIN32)
 ENDIF(NOT CMAKE_LIBRARY_OUTPUT_DIRECTORY)
 IF(NOT CMAKE_ARCHIVE_OUTPUT_DIRECTORY)
        SET(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${BRLCAD_BINARY_DIR}/lib CACHE 
INTERNAL "Single output directory for building all archives.")
-       SET(CMAKE_ARCHIVE_OUTPUT_DIRECTORY_DEBUG ${BRLCAD_BINARY_DIR}/lib CACHE 
INTERNAL "Single output directory for building all archives.")
-       SET(CMAKE_ARCHIVE_OUTPUT_DIRECTORY_RELEASE ${BRLCAD_BINARY_DIR}/lib 
CACHE INTERNAL "Single output directory for building all archives.")
 ENDIF(NOT CMAKE_ARCHIVE_OUTPUT_DIRECTORY)
 IF(NOT CMAKE_RUNTIME_OUTPUT_DIRECTORY)
        SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${BRLCAD_BINARY_DIR}/bin CACHE 
INTERNAL "Single output directory for building all executables.")
-       SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG ${BRLCAD_BINARY_DIR}/bin CACHE 
INTERNAL "Single output directory for building all executables.")
-       SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE ${BRLCAD_BINARY_DIR}/bin 
CACHE INTERNAL "Single output directory for building all executables.")
 ENDIF(NOT CMAKE_RUNTIME_OUTPUT_DIRECTORY)
 
+FOREACH(CFG_TYPE ${CMAKE_CFG_TYPEIGURATION_TYPES})
+       STRING(TOUPPER "${CFG_TYPE}" CFG_TYPE)
+       IF(NOT "CMAKE_LIBRARY_OUTPUT_DIRECTORY_${CFG_TYPE}")
+               IF(WIN32)
+                       SET("CMAKE_LIBRARY_OUTPUT_DIRECTORY_${CFG_TYPE}" 
${BRLCAD_BINARY_DIR}/bin CACHE INTERNAL "Single output directory for building 
all libraries.")
+               ELSE(WIN32)
+                       SET("CMAKE_LIBRARY_OUTPUT_DIRECTORY_${CFG_TYPE}" 
${BRLCAD_BINARY_DIR}/lib CACHE INTERNAL "Single output directory for building 
all libraries.")
+               ENDIF(WIN32)
+       ENDIF(NOT "CMAKE_LIBRARY_OUTPUT_DIRECTORY_${CFG_TYPE}")
+       IF(NOT "CMAKE_ARCHIVE_OUTPUT_DIRECTORY_${CFG_TYPE}")
+               SET("CMAKE_ARCHIVE_OUTPUT_DIRECTORY_${CFG_TYPE}" 
${BRLCAD_BINARY_DIR}/lib CACHE INTERNAL "Single output directory for building 
all archives.")
+       ENDIF(NOT "CMAKE_ARCHIVE_OUTPUT_DIRECTORY_${CFG_TYPE}")
+       IF(NOT "CMAKE_RUNTIME_OUTPUT_DIRECTORY_${CFG_TYPE}")
+               SET("CMAKE_RUNTIME_OUTPUT_DIRECTORY_${CFG_TYPE}" 
${BRLCAD_BINARY_DIR}/bin CACHE INTERNAL "Single output directory for building 
all executables.")
+       ENDIF(NOT "CMAKE_RUNTIME_OUTPUT_DIRECTORY_${CFG_TYPE}")
+ENDFOREACH()
+
 #---------------------------------------------------------------------
 # Configure install locations.  It may be that this should be made
 # into its own .cmake file and included in each library, to allow


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

------------------------------------------------------------------------------
Lotusphere 2011
Register now for Lotusphere 2011 and learn how
to connect the dots, take your collaborative environment
to the next level, and enter the era of Social Business.
http://p.sf.net/sfu/lotusphere-d2d
_______________________________________________
BRL-CAD Source Commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-commits

Reply via email to