Commit Graph

58 Commits

Author SHA1 Message Date
Robert Osfield
f5ec89e049 From Eric Wing, "Attached are a few Find modules with updates. Among other things, they
contain better support for environmental variables to pre-empt the
autodection default search path order which is very helpful for people
who do automated builds. (I recommend that the remaining modules
consider adding the same system to make things consistent and easier
for those people that want to do the automated builds.)

The CMAKE_PREFIX_PATH has also been added to help people. I don't
recommend adding this to the other modules because it looks like CMake
agreed with my idea and will be adding the support in 2.6. So when
that ships, people will get it for free. (In the meantime, my modules
that do have it, it can be used.)

Finally, I've submitted all of these modules to official CMake plus
more so they will be in the next version of CMake. It looks like I may
need to sort some compatibility issues out with the KDE people who
seem to have conflicting modules, but this is unrelated to the updates
submitted here as OSG already has these conflicts. I figured I would
just sync OSG up with my current/best versions.

Also of note, I added the large batch of Findosg*.cmake modules to
CMake so people building against OpenSceneGraph can use these without
writing their own. I wasn't sure if I should submit them here or not
since they are for building against OSG and not for building OSG
itself. So they are not included.
"
2008-01-04 20:00:18 +00:00
Robert Osfield
c57d989fef From Jean-Sebastien Guay, added new version of feetype into search list 2007-12-21 17:56:41 +00:00
Robert Osfield
9a2bc98d3a From Paul Obermeier, "Please find enclosed the following 2 bug fixes:
File osgShadow/Version.cpp, Line 25:

const char* osgShaodowGetLibraryName()

should be:

const char* osgShadowGetLibraryName()


File CMakeModules/OsgMacroUtils.cmake, Line 224:

SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES DEBUG_POSTFIX ${CMAKE_DEBUG_POSTFIX})

should be:

SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES DEBUG_POSTFIX "${CMAKE_DEBUG_POSTFIX}")

Otherwise setting CMAKE_DEBUG_POSTFIX to an empty string instead of "d" in
the main CMakeLists.txt does not work under Linux.
"
2007-12-17 18:38:21 +00:00
Robert Osfield
5c007029ae From Jean-Sebastien Guay, "Attached you will find an expanded FindOpenVRML.cmake file, as well as a fixed CMakeLists.txt file for the VRML plugin ." 2007-09-26 14:44:22 +00:00
Robert Osfield
f6eaa58c56 From Andy Skinner, added support for ot-soversion-OpenThreads.dll dll naming under Windows 2007-09-14 11:06:12 +00:00
Robert Osfield
00e00f4e00 From Guillaume Millet, "Please find in attachment a small improvement to the pfb plugin
CmakeLists.txt and to the FindPerformer.cmake module.

Under Windows libs are: libpf.lib (we need to add the lib prefix) and
libpfdu-util.lib (libpfdu and libpfutil are compiled into one lib)
We need to add PFROOT to the search path for libs and includes (default
environment variable for Performer path)
And at last we need to put PFROOT/include and PFROOT/include/Performer
as include dir for compiling."
2007-09-07 10:15:39 +00:00
Robert Osfield
39d0788d5b From Jan Peciva, improvement to the FindInventor. 2007-09-03 13:59:25 +00:00
Robert Osfield
4328bdacc2 From Luigi Calori, introduction of versioning of dll's and placement of dll and plugins into bin directory during build. 2007-08-30 10:41:15 +00:00
Robert Osfield
502f1a3330 Fixed the install path of plugins under Windows. 2007-08-20 13:09:10 +00:00
Robert Osfield
2cf3785e51 From J.P. Delport, fix of GDAL location search 2007-08-13 10:20:14 +00:00
Robert Osfield
856ec41610 Added gdal/gdal.h to header search path, and gdal1.4.1 to the lib search path. 2007-08-13 09:13:01 +00:00
Robert Osfield
2ec9fa7ea9 Re-introduced GDAL plugin. 2007-08-07 10:33:25 +00:00
Robert Osfield
6b4e2fbdf2 From Alexandre Amalric, Fox example
From Robert Osfield, CMake build support for FOX example
2007-07-24 14:02:53 +00:00
Robert Osfield
604d1a6355 From Sherman Wilcox, added serach for freetype234 2007-06-29 16:37:11 +00:00
Robert Osfield
6321579050 Added missing cmake macros 2007-06-26 17:12:48 +00:00
Robert Osfield
37dbe8891f From Olaf Flebbe, "support current zlib and libpng library names for win32 3rdParty builds." 2007-06-10 18:17:21 +00:00
Robert Osfield
0b9feefbda From Ulrich Hertlein, "on my MacOS X/cmake setup the zlib plugin isn't built by default. This may be because zlib.h is
installed in /opt/local/include on my system (courtesy of DarwinPorts).  I've added a CMakeModule to
look for zlib.h and the library in various places.  The files are attached."
2007-06-06 15:22:31 +00:00
Robert Osfield
082ce2e8d4 Introduce OSG_BUILD_APPLICATION_BUNDLES option for OSX, defaulting to OFF. 2007-06-04 21:02:15 +00:00
Robert Osfield
ac739a2e6a Added local FindFLTK.cmake to avoid problems with FLTK no being found by standard
CMake FindFLTK.cmake.
2007-06-04 13:45:58 +00:00
Robert Osfield
2e798ae364 From Olaf Flebbe, "recently I discovered that the freetype plugin does not work, because
CMake doesn't recognize it properly on windows.

1) the header detection on a directory "freetype" fails, it seems to
need a filename: "ft2build.h" actually works.

2) the 3rdparty I am supplying for FlightGear contains freetype-2.3.4. I
added the correct library naming for this particular release.

I double-checked my directory layout with the 3rdparty supplied by other
OSG contributors."
2007-05-29 10:01:18 +00:00
Robert Osfield
32931f90a8 From Luigi Calori, build fixes for Win32 build osg WxWidgets example 2007-05-25 13:15:00 +00:00
Robert Osfield
97039e9ae3 Added automatic building of plugins as static when dynamic build is switch off. 2007-05-23 19:25:54 +00:00
Robert Osfield
e463844020 Introduced VERSION and SOVERSION'ing of libraries. 2007-05-20 17:38:11 +00:00
Robert Osfield
9497d75cc9 Added support for version of the osgPlugins directory, which now gets versioned
according to the OpenSceneGraph/CMakeLists.txt and the include/osg/Version settings.
These changes mean that the 1.9.5 release will have a libs/osgPlugins-1.9.5 directory.
2007-05-20 12:29:11 +00:00
Robert Osfield
ec1a586a5f From David Callu, "I have added the uninstall command at the end of the first file,
and the configuration file template use by the command is the second file.
 
  The command use the cmake_install.cmake file which list all file installed by the install target.
  this issue come from the CMake FAQ"
2007-05-17 11:48:30 +00:00
Robert Osfield
b8841f211d Added preliminary Performer plugin support, note, still missing are a range of Performer database libs that will be required. 2007-05-05 16:24:07 +00:00
Robert Osfield
52b5b468d5 Added OpenVRML support 2007-05-05 16:11:30 +00:00
Robert Osfield
0603483c1a Added first cut a Xine support 2007-05-04 19:17:49 +00:00
Robert Osfield
0dfd619138 Added first cut of Cmake COLLADA support 2007-05-04 14:25:02 +00:00
Robert Osfield
07322ce9a1 Added support for jp2 plugin 2007-05-04 13:20:48 +00:00
Robert Osfield
3809d0dad0 Moved the OpenThreads link locally to each lib 2007-05-03 10:06:38 +00:00
Robert Osfield
2168eac1d4 From Eric Wing,
"
Here are more changes for the CMake scripts:

- I removed CMAKE_INSTALL_PREFIX in FindOpenThreads as a follow up to
the discussion thread.

- I introduced an experimental CMAKE_PREFIX_PATH to replace it.

- I added CMAKE_PREFIX_PATH, CMAKE_INCLUDE_PATH, and
CMAKE_LIBRARY_PATH to the CMake GUI so users can enter values there
instead of in the environment.

- I added OPENSCENEGRAPH_*_VERSION variables (MAJOR, MINOR, PATCH).
These should be kept up-to-date with the real version numbers. Mac
bundles like to have version information so users can find out the
version they are running through standard About panels and also
automated system reporters for troubleshooting/bug tracking. In
theory, this information could be used for library versioning.
We should do the same for OpenThreads, but I forgot about it.

- I added some Mac Info.plist stuff (which uses the version information).

"
2007-04-27 10:29:48 +00:00
Robert Osfield
c826452923 Fixed tabbing 2007-04-27 09:49:28 +00:00
Robert Osfield
5693afa5be From Eric Wing,
"These enhancements make it much easier to control which libraries get
found by FIND_ using environmental variables. The problem with the old
script was that CMake searches what it considers system paths first.
This makes it difficult to override in the case where you might have a
stable version in /usr/local, but are trying to build a bleeding edge
release in the non-standard location /bleeding-edge.

I went to the CMake mailing list hoping to find a good solution to
this. Unfortunately, there isn't one, and I have to do something
rather bone-headed in the Find module. Basically, I have to run FIND_
twice: once with default search paths turned off and my environmental
variables listed, and again with standard search paths reenabled. At
least it works.

I also added a few more environmental variables, specifically:
OPENTHREADS_INCLUDE_DIR
OPENTHREADS_LIBRARY_DIR

These two variables address the shortcoming of OPENTHREADS_DIR in the
case where the include path and library path don't share a common
parent.

Put all this together, and you can setup an automated shell script or
Microsoft .bat file to configure and build your application in an
automated step.


You still should be able to use the key CMake variables like
CMAKE_INCLUDE_PATH and CMAKE_LIBRARY_PATH to find things, but it will
occur after the environmental paths are searched. The reason for this
is that the OPENTHREADS_INCLUDE_DIR and OPENTHREADS_LIBRARY_DIR are
more specific. This prevents the accidental ordering problem where you
might use CMAKE_INCLUDE_PATH to find some other component like GLUT,
but didn't want to accidentally include an older version of
OpenThreads located in the same area.

As the ultimate override, you can still pass -DVAR=value arguments to
cmake and it will take these above all else. However, it's safer for
people to not use these in case we modify the script and change the
variable names.

Finally, I'm wondering if we can kill the ${CMAKE_INSTALL_PREFIX}
searches in the Find module. As I've said before, this is kind of a
hack and the variable wasn't really intended to be used in this way.
And I just got bitten by it in some bad corner cases. The problem is
that if you don't explicitly set the ${CMAKE_INSTALL_PREFIX}, CMake
sets a default value for it (such as /usr/local). The problem is that
/usr/local may not be the place you want searched. If you wait to set
the ${CMAKE_INSTALL_PREFIX} in the ccmake GUI, then FIND_ is already
run once on ${CMAKE_INSTALL_PREFIX=/usr/local. If you were planning to
change the value in the GUI, it's too late if you had a stuff in
/usr/local because FIND_ already found something and won't change the
value when you reconfigure since it is already set. You will have to
manually change the value yourself. Furthermore, as another problem
example, on the Mac, /Library/Frameworks is supposed to be searched
before /usr/local, but ${CMAKE_INSTALL_PREFIX} kept causing stuff in
/usr/local to be hit first which took me a really long time to
understand how this was happenning. The work around is that I must
push the ${CMAKE_INSTALL_PREFIX} search to the very end as not to
conflict with anything else. But I think it would be much better if we
removed it entirely.

And with so many different environmental variables at our disposal, I
don't think we need this one:

(Checked by CMake automatically:)
CMAKE_INCLUDE_PATH
CMAKE_SYSTEM_INCLUDE_PATH
CMAKE_LIBRARY_PATH
CMAKE_SYSTEM_LIBRARY_PATH
PATH
LIB

(Checked by us:)
OPENTHREADS_INCLUDE_DIR
OPENTHREADS_LIBRARY_DIR
OPENTHREADS_DIR
OSG_INCLUDE_DIR
OSG_LIBRARY_DIR
OSG_DIR
"
2007-04-25 09:21:57 +00:00
Robert Osfield
7b2567b77c Fixed variable name dereference 2007-04-12 17:30:06 +00:00
Robert Osfield
071a7775ed From Eric Wing, "Adding back missing search paths in FindOpenThreads.cmake. Also fixed
a bug regarding when to set the debug version. It waited until both
include and library were set, but it shouldn't wait on include.

Also added a fix to the optional warning flags."
2007-04-12 10:06:09 +00:00
Robert Osfield
ef84805d5a Added SETUP_COMMANDLINE_APPLICATION and SETUP_COMMANDLINE_EXAMPLE macros 2007-04-12 09:59:34 +00:00
Robert Osfield
2187b061fc From Eric Wing,
"Attached is a patch allows access access to the CMake MACOSX_BUNDLE
option. Now SETUP_APPLICATION and SETUP_EXAMPLE take an additional
optional parameter that specifies if the program is a command line
application or a GUI application (think: IS_COMMANDLINE_APP). Passing
1 means true (is_commandline_app). Passing 0 or omitting the parameter
means false.

I changed the scripts for osgversion and osgunittests to support this
option because I believe they are command line apps. Are there any
others?"
2007-04-12 09:33:24 +00:00
Robert Osfield
1032bc66b2 From Eric Wing, adding message w.r.t debug OpenThreads library for when its not available. 2007-04-03 11:04:09 +00:00
Robert Osfield
0a43ff6571 From Eric Wing, added handling of CMAKE_THREAD_LIBS_INIT 2007-03-29 10:56:07 +00:00
Robert Osfield
11e3f45c58 Removed the Found OpenThreads message 2007-03-28 14:50:58 +00:00
Robert Osfield
8e49cfeaf4 From Luigi Calori, added Find3rdPartyDependencies.cmake 2007-03-28 07:34:46 +00:00
Robert Osfield
5c780aada0 From Luigi Calori, "here is a patch to use Mike 3rdParty dependencies
It should not be introusive to any other palatform apart MSVC, but in order to link to debug-specific libs
I had to change plugins CMakeLists to differentiate debug/release linkage, I have used the same macro used in core libs
Now the macro used for plugin and examples linking test for existance of TARGET_LIBRARIES_VARS
that holds the names of the variables that have to be used for linking"
2007-03-27 21:44:02 +00:00
Robert Osfield
b419fa93ef From Luigi Calori, "when we link against something that comes out from a Find... we ususally have a variable <LINK_VAR_NAME>available like OPENTHREADS_LIBRARY,
so I' ve set up a macro that uses the variable name expanded for linking, and  test if a variable ${LINK_VAR_NAME}_DEBUG
like OPENTHREADS_LIBRARY_DEBUG exists and in case uses it for linking in debug mode.
I' ve also set up FindOpenThreads to set up these variables.
I had to edit the core libraries CMakeLists to add the calls to the macros used.
I' ve tested under MSVC"
2007-03-26 13:02:38 +00:00
Robert Osfield
33817a7e5d From Philip Lowman, added support for Inventor 2007-03-20 09:50:24 +00:00
Robert Osfield
282f4ce0b9 Moved the TARGET_NAME setting into the OsgMacroUtils.cmake. 2007-03-19 17:24:19 +00:00
Robert Osfield
d9a94f7890 Moved the TARGET_NAME setting into the SETUP_APPLICATION/EXAMPLE macro 2007-03-19 17:18:59 +00:00
Robert Osfield
be3f61c49f From Luigi Calori, move to using local CMakeLists.txt files and explicit file lists.
From Robert Osfield, small ammendments of the above to seperate example and application installs, and fix the osgPlugins install directory.
2007-03-19 12:30:26 +00:00
Robert Osfield
6e57b9b646 Fixed spacing of message 2007-03-13 20:09:21 +00:00
Robert Osfield
53b9c9da06 Added lib64 to search path for OpenThreads 2007-03-13 20:06:01 +00:00