[brlcad-commits] SF.net SVN: brlcad:[52402] brlcad/trunk
Open Source Solid Modeling CAD
Brought to you by:
brlcad
From: <sta...@us...> - 2012-09-08 13:58:54
|
Revision: 52402 http://brlcad.svn.sourceforge.net/brlcad/?rev=52402&view=rev Author: starseeker Date: 2012-09-08 13:58:46 +0000 (Sat, 08 Sep 2012) Log Message: ----------- The libged per-command build logic was premature - until we have a real need for per-command handling, it's just a useless distraction. Modified Paths: -------------- brlcad/trunk/CMakeLists.txt brlcad/trunk/misc/CMake/FindADAPTAGRAMS.cmake brlcad/trunk/src/libged/CMakeLists.txt brlcad/trunk/src/mged/setup.c brlcad/trunk/src/other/CMakeLists.txt Modified: brlcad/trunk/CMakeLists.txt =================================================================== --- brlcad/trunk/CMakeLists.txt 2012-09-08 05:29:57 UTC (rev 52401) +++ brlcad/trunk/CMakeLists.txt 2012-09-08 13:58:46 UTC (rev 52402) @@ -1498,19 +1498,6 @@ # Solaris lexer library BRLCAD_CHECK_LIBRARY(SOLARIS_LEXER l yyless) -# Bullet physics library -FIND_PACKAGE(Bullet) -if(BULLET_FOUND) - CONFIG_H_APPEND(BRLCAD "#define HAVE_BULLET 1\n") -endif(BULLET_FOUND) -mark_as_advanced(BULLET_INCLUDE_DIR) - -# Adaptagrams library -FIND_PACKAGE(ADAPTAGRAMS) -if(ADAPTAGRAMS_FOUND) - CONFIG_H_APPEND(BRLCAD "#define HAVE_ADAPTAGRAMS 1\n") -endif(ADAPTAGRAMS_FOUND) - # ******************************************************************* # *** Check for Headers - Stage 5 of 9 *** # ******************************************************************* Modified: brlcad/trunk/misc/CMake/FindADAPTAGRAMS.cmake =================================================================== --- brlcad/trunk/misc/CMake/FindADAPTAGRAMS.cmake 2012-09-08 05:29:57 UTC (rev 52401) +++ brlcad/trunk/misc/CMake/FindADAPTAGRAMS.cmake 2012-09-08 13:58:46 UTC (rev 52402) @@ -45,18 +45,16 @@ # ADAPTAGRAMS_LIBRARIES - List of libraries when using Adaptagrams. # ADAPTAGRAMS_FOUND - True if libavoid is found. -find_path(AVOID_INCLUDE_DIR libavoid.h /usr/local/include/libavoid /usr/include/libavoid) -find_library(AVOID_LIBRARY NAMES avoid /usr/local/lib /usr/lib) +find_path(AVOID_INCLUDE_DIR libavoid.h PATH_SUFFIXES libavoid) +find_library(AVOID_LIBRARY NAMES avoid) +set(ADAPTAGRAMS_INCLUDE_DIRS ${AVOID_INCLUDE_DIR} CACHE STRING "Adaptagrams headers") +set(ADAPTAGRAMS_LIBRARIES ${AVOID_LIBRARY} CACHE STRING "Adaptagrams libs") + include(FindPackageHandleStandardArgs) FIND_PACKAGE_HANDLE_STANDARD_ARGS(ADAPTAGRAMS DEFAULT_MSG AVOID_LIBRARY AVOID_INCLUDE_DIR) -if (ADAPTAGRAMS_FOUND) - set(ADAPTAGRAMS_INCLUDE_DIRS ${AVOID_INCLUDE_DIR}) - set(ADAPTAGRAMS_LIBRARIES ${AVOID_LIBRARY}) -endif() - -MARK_AS_ADVANCED(AVOID_LIBRARY AVOID_INCLUDE_DIR) +MARK_AS_ADVANCED(ADAPTAGRAMS_LIBRARIES ADAPAGRAMS_INCLUDE_DIRS AVOID_LIBRARY AVOID_INCLUDE_DIR) # Local Variables: # tab-width: 8 # mode: cmake Modified: brlcad/trunk/src/libged/CMakeLists.txt =================================================================== --- brlcad/trunk/src/libged/CMakeLists.txt 2012-09-08 05:29:57 UTC (rev 52401) +++ brlcad/trunk/src/libged/CMakeLists.txt 2012-09-08 13:58:46 UTC (rev 52402) @@ -1,46 +1,21 @@ -# Macro for adding commands to libged. Use in the command subdirectory as follows: -# -# GED_ADD_CMD(CMD_SRCS CMD_INCLUDES CMD_LIBS) -# -# with the last two arguments being optional. -MACRO(GED_ADD_CMD sources) - get_filename_component(currentdir ${CMAKE_CURRENT_SOURCE_DIR} NAME) - foreach(srcfile ${${sources}}) - LIST(APPEND cmd_srcs "${currentdir}/${srcfile}") - endforeach(srcfile ${${sources}}) - set(LIBGED_CMD_SRCS ${LIBGED_CMD_SRCS} ${cmd_srcs} CACHE INTERNAL "libged cmd srcs" FORCE) - if(${ARGV1}) - set(LIBGED_CMD_INCLUDE_DIRS ${LIBGED_CMD_INCLUDE_DIRS} ${${ARGV1}}) - LIST(REMOVE_DUPLICATES LIBGED_CMD_INCLUDE_DIRS) - set(LIBGED_CMD_INCLUDE_DIRS ${LIBGED_CMD_INCLUDE_DIRS} CACHE INTERNAL "libged cmd includes" FORCE) - endif(${ARGV1}) - if(${ARGV2}) - set(LIBGED_CMD_LIBS_LIST ${LIBGED_CMD_LIBS_LIST} ${${ARGV2}}) - LIST(REMOVE_DUPLICATES LIBGED_CMD_LIBS_LIST) - set(LIBGED_CMD_LIBS_LIST ${LIBGED_CMD_LIBS_LIST} CACHE INTERNAL "libged cmd libs" FORCE) - endif(${ARGV2}) -ENDMACRO(GED_ADD_CMD) - -# if this subdir stuff is pushed into the actual subdirs, the autoconf vs cmake -# verification (sh/cmakecheck.sh) will fail on dist-hook. +# if GED command stuff is pushed into the actual subdirs, the autoconf vs cmake +# verification (sh/cmakecheck.sh) will fail on dist-hook. For now, just +# handle it as part of libged if(BULLET_FOUND) - GED_ADD_CMD(LIBGED_SIM_SOURCES BULLET_INCLUDE_DIR BULLET_LIBRARIES) - set(SIM_SRCS - simulate/simphysics.cpp - simulate/simulate.c - simulate/simcollisionalgo.cpp - simulate/simutils.c - simulate/simrt.c - ) - CMAKEFILES(simulate/simrt.h simulate/simutils.h) -else(BULLET_FOUND) - set(SIM_SRCS "") - set(ged_ignore_files simulate/simphysics.cpp simulate/simulate.c simulate/simcollisionalgo.cpp simulate/simcollisionalgo.h simulate/simutils.c simulate/simrt.c simulate/simrt.h simulate/simutils.h) + set(LIBGED_CMD_LIBS_LIST ${LIBGED_CMD_LIBS_LIST} ${BULLET_LIBRARIES}) + set(LIBGED_CMD_INCLUDE_DIRS ${LIBGED_CMD_INCLUDE_DIRS} ${CMAKE_CURRENT_SOURCE_DIR}/simulate ${BULLET_INCLUDE_DIR}) + # The Bullet headers introduce a lot of shadow warnings - don't stop the + # build because of them + set(NOSTRICTCXX_SETTING "NOSTRICTCXX") endif(BULLET_FOUND) -set(AVOID_SRCS dag.cpp) +if(ADAPTAGRAMS_FOUND) + set(LIBGED_CMD_LIBS_LIST ${LIBGED_CMD_LIBS_LIST} ${ADAPAGRAMS_LIBRARIES}) + set(LIBGED_CMD_INCLUDE_DIRS ${LIBGED_CMD_INCLUDE_DIRS} ${AVOID_INCLUDE_DIR}) +endif(ADAPTAGRAMS_FOUND) + set(LIBGED_SOURCES 3ptarb.c adc.c @@ -89,6 +64,7 @@ copyeval.c copymat.c cpi.c + dag.cpp dbip.c debugbu.c debugdir.c @@ -262,6 +238,11 @@ shader.c shells.c showmats.c + simulate/simphysics.cpp + simulate/simulate.c + simulate/simcollisionalgo.cpp + simulate/simutils.c + simulate/simrt.c size.c slew.c solids_on_ray.c @@ -313,32 +294,9 @@ ypr.c zap.c zoom/zoom.c - ${SIM_SRCS} - ${AVOID_SRCS} + ${LIBGED_CMD_SRCS} ) -# Core logic for adding commands to the libged source/lib/include lists. -file(GLOB GED_DIR_CONTENTS ${CMAKE_CURRENT_SOURCE_DIR} *) -foreach(item ${GED_DIR_CONTENTS}) - get_filename_component(item_name ${item} NAME) - if(IS_DIRECTORY ${item} AND NOT ${item_name} STREQUAL "libged" AND NOT ${item_name} STREQUAL ".svn") - LIST(APPEND ged_subdirs ${item_name}) - endif(IS_DIRECTORY ${item} AND NOT ${item_name} STREQUAL "libged" AND NOT ${item_name} STREQUAL ".svn") -endforeach(item ${GED_DIR_CONTENTS}) -foreach(item ${ged_subdirs}) - if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${item}/CMakeLists.txt) - add_subdirectory(${item}) - endif(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${item}/CMakeLists.txt) -endforeach(item ${ged_subdirs}) -set(LIBGED_SOURCES ${LIBGED_SOURCES} ${LIBGED_CMD_SRCS}) -if(LIBGED_CMD_LIBS_LIST) - LIST(REMOVE_DUPLICATES LIBGED_CMD_LIBS_LIST) -endif(LIBGED_CMD_LIBS_LIST) -if(LIBGED_CMD_INCLUDE_DIRS) - LIST(REMOVE_DUPLICATES LIBGED_CMD_INCLUDE_DIRS) -endif(LIBGED_CMD_INCLUDE_DIRS) - - # Include directories needed by libged users set(GED_INCLUDE_DIRS ${BRLCAD_BINARY_DIR}/include @@ -354,13 +312,9 @@ # includes from plugins set(GED_LOCAL_INCLUDE_DIRS ${PNG_INCLUDE_DIR} - ${LIBGED_CMD_INCLUDE_DIRS} ${REGEX_INCLUDE_DIR} - ) -# local includes -set(GED_LOCAL_INCLUDE_DIRS - ${GED_LOCAL_INCLUDE_DIRS} ${CLIPPER_INCLUDE_DIR} + ${LIBGED_CMD_INCLUDE_DIRS} ) BRLCAD_LIB_INCLUDE_DIRS(ged GED_INCLUDE_DIRS GED_LOCAL_INCLUDE_DIRS) @@ -369,31 +323,17 @@ add_definitions(-DCLIPPER_DLL_IMPORTS) endif(CPP_DLL_DEFINES) -if(BULLET_FOUND) - if(ADAPTAGRAMS_FOUND) - BRLCAD_ADDLIB(libged "${LIBGED_SOURCES}" "libwdb;librt;libfb;libbu;libicv;libanalyze;${AVOID_LIBRARY};${LIBGED_CMD_LIBS_LIST};${REGEX_LIBRARY};${WINSOCK_LIB};${CLIPPER_LIBRARY};${M_LIBRARY}") - else(ADAPTAGRAMS_FOUND) - BRLCAD_ADDLIB(libged "${LIBGED_SOURCES}" "libwdb;librt;libfb;libbu;libicv;libanalyze;${LIBGED_CMD_LIBS_LIST};${REGEX_LIBRARY};${WINSOCK_LIB};${CLIPPER_LIBRARY};${M_LIBRARY}") - endif(ADAPTAGRAMS_FOUND) -else(BULLET_FOUND) - if(ADAPTAGRAMS_FOUND) - BRLCAD_ADDLIB(libged "${LIBGED_SOURCES}" "libwdb;librt;libfb;libbu;libicv;libanalyze;${AVOID_LIBRARY};${LIBGED_CMD_LIBS_LIST};${REGEX_LIBRARY};${WINSOCK_LIB};${CLIPPER_LIBRARY};${M_LIBRARY}") - else(ADAPTAGRAMS_FOUND) - BRLCAD_ADDLIB(libged "${LIBGED_SOURCES}" "libwdb;librt;libfb;libbu;libicv;libanalyze;${LIBGED_CMD_LIBS_LIST};${REGEX_LIBRARY};${WINSOCK_LIB};${CLIPPER_LIBRARY};${M_LIBRARY}") - endif(ADAPTAGRAMS_FOUND) -endif(BULLET_FOUND) +BRLCAD_ADDLIB(libged "${LIBGED_SOURCES}" "libwdb;librt;libfb;libbu;libicv;libanalyze;${LIBGED_CMD_LIBS_LIST};${REGEX_LIBRARY};${WINSOCK_LIB};${CLIPPER_LIBRARY};${M_LIBRARY}" ${NOSTRICTCXX_SETTING}) SET_TARGET_PROPERTIES(libged PROPERTIES VERSION 20.0.1 SOVERSION 20) set(ged_ignore_files - ${ged_ignore_files} ged_private.h joint.h qray.h - simulate/simulate.h - simulate/simcollisionalgo.h - simulate/simutils.h - simulate/simrt.h wdb_qray.h + simulate/simcollisionalgo.h + simulate/simrt.h + simulate/simutils.h ) CMAKEFILES(${ged_ignore_files}) CMAKEFILES(Makefile.am) Modified: brlcad/trunk/src/mged/setup.c =================================================================== --- brlcad/trunk/src/mged/setup.c 2012-09-08 05:29:57 UTC (rev 52401) +++ brlcad/trunk/src/mged/setup.c 2012-09-08 13:58:46 UTC (rev 52402) @@ -326,9 +326,7 @@ {"showmats", cmd_ged_plain_wrapper, ged_showmats}, {"sill", f_be_s_illuminate, GED_FUNC_PTR_NULL}, {"size", cmd_size, GED_FUNC_PTR_NULL}, -#ifdef HAVE_BULLET {"simulate", cmd_ged_simulate_wrapper, ged_simulate}, -#endif {"solid_report", cmd_ged_plain_wrapper, ged_report}, {"solids", cmd_ged_plain_wrapper, ged_tables}, {"solids_on_ray", cmd_ged_plain_wrapper, ged_solids_on_ray}, Modified: brlcad/trunk/src/other/CMakeLists.txt =================================================================== --- brlcad/trunk/src/other/CMakeLists.txt 2012-09-08 05:29:57 UTC (rev 52401) +++ brlcad/trunk/src/other/CMakeLists.txt 2012-09-08 13:58:46 UTC (rev 52402) @@ -773,6 +773,40 @@ CMAKEFILES(clipper) endif(BRLCAD_LEVEL2) + +# Bullet is not yet integrated as a src/other subbuild, but there is code +# that will make use of it if it is available. If that code becomes +# sufficiently useful, Bullet will be integrated. In the meantime, locate +# the find logic for that package here. + +# Bullet physics library +if(BRLCAD_LEVEL2) + find_package(Bullet) + if(BULLET_FOUND) + CONFIG_H_APPEND(BRLCAD "#define HAVE_BULLET 1\n") + endif(BULLET_FOUND) + # Let the rest of the package know the results + set(BULLET_LIBRARIES "${BULLET_LIBRARIES}" CACHE STRING "Bullet libs" FORCE) + set(BULLET_FOUND "${BULLET_FOUND}" CACHE BOOL "Bullet status" FORCE) + mark_as_advanced(BULLET_INCLUDE_DIR) +endif(BRLCAD_LEVEL2) + +# Adaptagrams is not yet integrated as a src/other subbuild, but there is code +# that will make use of it if it is available. If that code becomes +# sufficiently useful, Adaptagrams will be integrated. In the meantime, locate +# the find logic for that package here. + +# Adaptagrams library +if(BRLCAD_LEVEL2) + find_package(ADAPTAGRAMS) + if(ADAPTAGRAMS_FOUND) + CONFIG_H_APPEND(BRLCAD "#define HAVE_ADAPTAGRAMS 1\n") + endif(ADAPTAGRAMS_FOUND) + set(ADAPTAGRAMS_LIBRARIES "${ADAPTAGRAMS_LIBRARIES}" CACHE STRING "Adaptagrams libs" FORCE) + set(ADAPTAGRAMS_FOUND "${ADAPTAGRAMS_FOUND}" CACHE BOOL "Adaptagrams status" FORCE) +endif(BRLCAD_LEVEL2) + + # The jama/tnt headers are installed by default - BRL-CAD requires the altered headers # to build (I think?) add_subdirectory(tnt) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |