Revision: 40996
          http://brlcad.svn.sourceforge.net/brlcad/?rev=40996&view=rev
Author:   starseeker
Date:     2010-10-15 01:10:05 +0000 (Fri, 15 Oct 2010)

Log Message:
-----------
Try a more generalized approach to the *_EXPORT_DLL definitions.

Modified Paths:
--------------
    brlcad/branches/cmake/misc/CMake/BRLCAD_Util.cmake
    brlcad/branches/cmake/src/libanalyze/CMakeLists.txt
    brlcad/branches/cmake/src/libdm/CMakeLists.txt
    brlcad/branches/cmake/src/libfb/CMakeLists.txt
    brlcad/branches/cmake/src/librt/CMakeLists.txt

Modified: brlcad/branches/cmake/misc/CMake/BRLCAD_Util.cmake
===================================================================
--- brlcad/branches/cmake/misc/CMake/BRLCAD_Util.cmake  2010-10-14 22:24:32 UTC 
(rev 40995)
+++ brlcad/branches/cmake/misc/CMake/BRLCAD_Util.cmake  2010-10-15 01:10:05 UTC 
(rev 40996)
@@ -12,6 +12,19 @@
        MESSAGE("${SEPARATOR_STRING}")
 ENDMACRO()
 
+# Windows builds need a DLL variable defined per-library, and BRL-CAD
+# uses a fairly standard convention - try and automate the addition of
+# the definition.
+MACRO(DLL_DEFINE libname)
+                 IF(MSVC)
+                                        STRING(REGEX REPLACE "lib" "" 
LOWERCORE "${libname}")
+                                        STRING(TOUPPER ${LOWERCORE} UPPER_CORE)
+                                        add_definitions(
+                                                               
-D${UPPER_CORE}_EXPORT_DLL
+                                                               )
+                 ENDIF(MSVC)
+ENDMACRO()
+
 # Core routines for adding executables and libraries to the build and
 # install lists of CMake
 MACRO(BRLCAD_ADDEXEC execname srcs libs)
@@ -27,6 +40,7 @@
   STRING(REGEX REPLACE " " ";" srcslist "${srcs}")
   STRING(REGEX REPLACE " " ";" libslist1 "${libs}")
   STRING(REGEX REPLACE "-framework;" "-framework " libslist "${libslist1}")
+  DLL_DEFINE(${libname})
   IF(BUILD_SHARED_LIBS)
          add_library(${libname} SHARED ${srcslist})
          if(NOT ${libs} MATCHES "NONE")

Modified: brlcad/branches/cmake/src/libanalyze/CMakeLists.txt
===================================================================
--- brlcad/branches/cmake/src/libanalyze/CMakeLists.txt 2010-10-14 22:24:32 UTC 
(rev 40995)
+++ brlcad/branches/cmake/src/libanalyze/CMakeLists.txt 2010-10-15 01:10:05 UTC 
(rev 40996)
@@ -7,11 +7,5 @@
     ${TCL_INCLUDE_PATH}
 )
 
-IF(MSVC)
-       add_definitions(
-               -DANALYZE_EXPORT_DLL
-       )
-ENDIF(MSVC)
-
 BRLCAD_ADDLIB(libanalyze "${LIBANALYZE_SOURCES}" libbu)
 SET_TARGET_PROPERTIES(libanalyze PROPERTIES VERSION 19.0.1 SOVERSION 19)

Modified: brlcad/branches/cmake/src/libdm/CMakeLists.txt
===================================================================
--- brlcad/branches/cmake/src/libdm/CMakeLists.txt      2010-10-14 22:24:32 UTC 
(rev 40995)
+++ brlcad/branches/cmake/src/libdm/CMakeLists.txt      2010-10-15 01:10:05 UTC 
(rev 40996)
@@ -19,6 +19,9 @@
        SET(DM_TKLIB ${TK_LIBRARY})
 ENDIF(BRLCAD-ENABLE_TK)
 
+IF(MSVC)
+       SET(DM_DEFINES "${DM_DEFINES} -DDM_WGL -DIF_WGL")
+ENDIF(MSVC)
 
 SET(LIBDM_SRCS
        adc.c 
@@ -65,14 +68,6 @@
        SET(DM_XLIBS "${DM_XLIBS} ${xlib}")
 ENDFOREACH(xlib ${X11_LIBRARIES})
 
-IF(MSVC)
-       add_definitions(
-               -DDM_EXPORT_DLL
-               -DDM_WGL
-               -DIF_WGL
-       )
-ENDIF(MSVC)
-
 BRLCAD_ADDLIB(libdm "${LIBDM_SRCS}" "librt libfb libged ${DM_XLIBS} 
${X11_Xi_LIB} ${DM_TKLIB} ${Carbon_LIBRARIES}")
 SET_TARGET_PROPERTIES(libdm PROPERTIES VERSION 19.0.1 SOVERSION 19)
 IF(BRLCAD_BUILD_LOCAL_TK AND BRLCAD-ENABLE_TK)

Modified: brlcad/branches/cmake/src/libfb/CMakeLists.txt
===================================================================
--- brlcad/branches/cmake/src/libfb/CMakeLists.txt      2010-10-14 22:24:32 UTC 
(rev 40995)
+++ brlcad/branches/cmake/src/libfb/CMakeLists.txt      2010-10-15 01:10:05 UTC 
(rev 40996)
@@ -14,10 +14,9 @@
 endif()
 IF(MSVC)
        add_definitions(
-               -DFB_EXPORT_DLL
                -DIF_WGL
        )
-        SET(LINKLIBS "${LINKLIBS} opengl32.lib ${TK_LIBRARY}")
+   SET(LINKLIBS "${LINKLIBS} opengl32.lib ${TK_LIBRARY}")
 ENDIF(MSVC)
 
 set(LIBFB_SOURCES

Modified: brlcad/branches/cmake/src/librt/CMakeLists.txt
===================================================================
--- brlcad/branches/cmake/src/librt/CMakeLists.txt      2010-10-14 22:24:32 UTC 
(rev 40995)
+++ brlcad/branches/cmake/src/librt/CMakeLists.txt      2010-10-15 01:10:05 UTC 
(rev 40996)
@@ -221,18 +221,9 @@
 INSTALL(FILES raydebug.tcl DESTINATION 
${${CMAKE_PROJECT_NAME}_INSTALL_DATA_DIR}/sample_applications)
 
 if(MSVC)
-    set(LIBRT_SOURCES
-       ${LIBRT_SOURCES}
-       timer-nt.c
-    )
-    add_definitions(
-       -DRT_EXPORT_DLL
-    )
+    set(LIBRT_SOURCES ${LIBRT_SOURCES} timer-nt.c)
 else(MSVC)
-    set(LIBRT_SOURCES
-       ${LIBRT_SOURCES}
-       timer42.c
-    )
+    set(LIBRT_SOURCES ${LIBRT_SOURCES} timer42.c)
 endif(MSVC)
 
 include_directories(


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

------------------------------------------------------------------------------
Download new Adobe(R) Flash(R) Builder(TM) 4
The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly 
Flex(R) Builder(TM)) enable the development of rich applications that run
across multiple browsers and platforms. Download your free trials today!
http://p.sf.net/sfu/adobe-dev2dev
_______________________________________________
BRL-CAD Source Commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-commits

Reply via email to