Compare commits
2 Commits
OpenSceneG
...
OpenSceneG
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
27c7db56de | ||
|
|
d61306fa72 |
11
.codedocs
11
.codedocs
@@ -1,11 +0,0 @@
|
||||
# CodeDocs.xyz Configuration File
|
||||
|
||||
DOXYFILE = doc/Doxyfiles/doxyfile.cmake
|
||||
|
||||
PROJECT_NUMBER =
|
||||
PROJECT_LOGO = examples/osgAndroidExampleGLES1/res/drawable-hdpi/osg.png
|
||||
INPUT = include
|
||||
STRIP_FROM_PATH = include/
|
||||
HTML_FOOTER =
|
||||
SEARCHENGINE = YES
|
||||
|
||||
106
.gitignore
vendored
106
.gitignore
vendored
@@ -1,106 +0,0 @@
|
||||
doc/all_Doxyfile
|
||||
doc/auto_Doxyfile
|
||||
doc/core_Doxyfile
|
||||
doc/openscenegraph.doxyfile
|
||||
doc/openthreads.doxyfile
|
||||
|
||||
doc/OpenSceneGraphReferenceDocs/
|
||||
doc/OpenThreadsReferenceDocs/
|
||||
doc/*.chm
|
||||
|
||||
CMakeDoxyfile.in
|
||||
CMakeDoxygenDefaults.cmake
|
||||
|
||||
cmake_uninstall.cmake
|
||||
|
||||
include/OpenThreads/Config
|
||||
include/OpenThreads/Version
|
||||
include/osg/Config
|
||||
include/osg/GL
|
||||
include/osg/Version
|
||||
include/osgQt/Version
|
||||
src/osgQt/__
|
||||
|
||||
lib/
|
||||
bin/
|
||||
|
||||
*.pc
|
||||
*.conf
|
||||
CMakeCache.txt
|
||||
CMakeFiles
|
||||
CMakeScripts
|
||||
Makefile
|
||||
cmake_install.cmake
|
||||
install_manifest*.txt
|
||||
|
||||
|
||||
# Compiled Object files
|
||||
*.slo
|
||||
*.lo
|
||||
*.o
|
||||
*.obj
|
||||
|
||||
# Precompiled Headers
|
||||
*.gch
|
||||
*.pch
|
||||
|
||||
# Compiled Dynamic libraries
|
||||
*.so
|
||||
*.dylib
|
||||
*.dll
|
||||
|
||||
# Fortran module files
|
||||
*.mod
|
||||
|
||||
# Compiled Static libraries
|
||||
*.lai
|
||||
*.la
|
||||
*.a
|
||||
*.lib
|
||||
|
||||
# Executables
|
||||
*.exe
|
||||
*.out
|
||||
*.app
|
||||
|
||||
# Automatically generated Package files
|
||||
packaging/cmake/*
|
||||
configure/*
|
||||
|
||||
# Platform Specifics - auto generated files
|
||||
PlatformSpecifics/Windows/*.rc
|
||||
|
||||
# Visual studio - project files
|
||||
*.sln
|
||||
*.suo
|
||||
*.vcxproj
|
||||
*.vcxproj.filters
|
||||
*.vcxproj.user
|
||||
|
||||
# Visual Studio - Build Results
|
||||
[Dd]ebug/
|
||||
[Rr]elease/
|
||||
[Mm]in[Ss]ize[Rr]el/
|
||||
[Rr]el[Ww]ith[Dd]eb[Ii]nfo/
|
||||
|
||||
# Visual Studio - Browsing Database File
|
||||
*.sdf
|
||||
*.opensdf
|
||||
|
||||
# Visual Studio - Cache/Options Directory
|
||||
.vs/
|
||||
.vscode/*
|
||||
|
||||
#osx xcode
|
||||
DerivedData/
|
||||
*.DS_Store
|
||||
*.build
|
||||
*.xcodeproj
|
||||
|
||||
#CPACK related files
|
||||
CPackConfig-*.cmake
|
||||
_CPack_Packages/
|
||||
|
||||
#packages
|
||||
*.tar.gz
|
||||
*.zip
|
||||
68
.travis.yml
68
.travis.yml
@@ -1,68 +0,0 @@
|
||||
env:
|
||||
global:
|
||||
# The next declaration is the encrypted COVERITY_SCAN_TOKEN, created
|
||||
# via the "travis encrypt" command using the project repo's public key
|
||||
- secure: "0ROQiFbsZo33ce2v5VjBxNljemh/HU70ntSSPygYwaDFymubts/62SixXVkbKNIFdrs3uYD6qeA/eMmpqXxLcs+PXNq5NrH7eSWw9oDIKMhq3NQH/IZLdRfXwihHimZ1qEs/TXyWlT2aC4rpBi1py3cJeTh1aBMlz4V/nm16iRAgc596ThNTuPDHa0F9/gZnwccI/Rr9VpiYn7vEBbuY9lYr43D0G3NuuQyvvlHShroH09fh6KyFOWIY38AQtnuVGNC1fIiAUk7TUqDqSBwhIrUV5saHbP0kca6DP32REkv//h4JwM76UHv+ntVEoK/UiztJHMkrw71gXYTyvIvlDBpT+IDoeIwUW2QFNQ5zJZI7FM8k0+oeK+F7k/mkffDzr1zww/PQoxqFBF0PoxAni/L9qkA4X2o1A6mRDbe9besp2LQG6Vniwj3bHpCId2QiiMrANVg0EAqkcL2mVFEaqZsh90qCkr1UDq4WQoYbXh0Fy3UnQpbuxDvCME8u03lwuv6ds/SBxc5cgKv7oWXgezaDg7/OCR+0lIAGuLqmNRD8Xw7a0WZGmSbYCHIZmeyFja2KuUvMiVCt8+QsyZr3e523DwBwnSj1BIYFRstMaSEJgu9B8rfTRRllOOKJXCQtdFVuGu8VI6PniSAkI6c535yOWzsuS8HwIkN2ll+Wn7E="
|
||||
|
||||
language: cpp
|
||||
cache: ccache
|
||||
|
||||
matrix:
|
||||
fast_finish: true
|
||||
include:
|
||||
#Linux build
|
||||
- os: linux
|
||||
dist: trusty
|
||||
language: cpp
|
||||
env:
|
||||
# - CMAKECMD_ARGS="-DBUILD_OSG_EXAMPLES=ON -DBUILD_OSG_PLUGINS_BY_DEFAULT=ON -DBUILD_OSG_APPLICATIONS=ON"
|
||||
- CMAKECMD_ARGS="-DBUILD_OSG_EXAMPLES=OFF -DBUILD_OSG_PLUGINS_BY_DEFAULT=ON -DBUILD_OSG_APPLICATIONS=ON"
|
||||
#- LLVM_VERSION=3.8
|
||||
sudo: false
|
||||
cache:
|
||||
apt: true
|
||||
ccache: true
|
||||
compiler:
|
||||
#- clang
|
||||
- gcc
|
||||
addons:
|
||||
coverity_scan:
|
||||
project:
|
||||
name: "openscenegraph/OpenSceneGraph"
|
||||
description: "OpenSceneGraph build"
|
||||
notification_email: robert@openscenegraph.com
|
||||
build_command_prepend: "cmake -DCMAKE_BUILD_TYPE=Release -DBUILD_OSG_DEPRECATED_SERIALIZERS=OFF -DBUILD_OSG_EXAMPLES=OFF ."
|
||||
build_command: "make -j 4"
|
||||
branch_pattern: coverity_scan
|
||||
apt:
|
||||
sources:
|
||||
#- llvm-toolchain-precise-3.8
|
||||
- ubuntu-toolchain-r-test
|
||||
packages:
|
||||
#- clang-3.8
|
||||
- g++
|
||||
- cmake
|
||||
|
||||
# # OSX build
|
||||
# - os: osx
|
||||
# before_install:
|
||||
# - brew update
|
||||
# install:
|
||||
# - brew install ccache
|
||||
# - export PATH="/usr/local/opt/ccache/libexec:$PATH"
|
||||
# env:
|
||||
# - CMAKECMD_ARGS="-DBUILD_OSG_EXAMPLES=OFF -DBUILD_OSG_PLUGINS_BY_DEFAULT=ON -DBUILD_OSG_APPLICATIONS=ON"
|
||||
#
|
||||
#
|
||||
# - os: osx
|
||||
# before_install:
|
||||
# - brew update
|
||||
# install:
|
||||
# - brew install ccache
|
||||
# - export PATH="/usr/local/opt/ccache/libexec:$PATH"
|
||||
# env:
|
||||
# - CMAKECMD_ARGS="-DBUILD_OSG_EXAMPLES=ON -DBUILD_OSG_PLUGINS_BY_DEFAULT=OFF -DBUILD_OSG_APPLICATIONS=OFF -DBUILD_OSG_DEPRECATED_SERIALIZERS=OFF"
|
||||
|
||||
script:
|
||||
- if [ "${COVERITY_SCAN_BRANCH}" != 1 ]; then mkdir build && cd build && travis_wait 60 cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=../product $CMAKECMD_ARGS ../ ; fi
|
||||
- if [ -f CMakeCache.txt ]; then make -j4 ; fi
|
||||
515
AUTHORS.txt
515
AUTHORS.txt
@@ -1,576 +1,313 @@
|
||||
OpenSceneGraph Library 3.6.4
|
||||
OpenSceneGraph Library 2.4.0
|
||||
|
||||
570 Contributors:
|
||||
307 Contributors:
|
||||
|
||||
Firstname Surname
|
||||
-----------------
|
||||
Robert Osfield
|
||||
Don Burns
|
||||
Stephan Huber
|
||||
Paul Martz
|
||||
Laurens Voerman
|
||||
Farshid Lashkari
|
||||
Mathias Fr<46>hlich
|
||||
Marco Jez
|
||||
Wang Rui
|
||||
Jean-S<>bastien Guay
|
||||
Ulrich Hertlein
|
||||
Mike Weiblen
|
||||
Sukender
|
||||
Paul Martz
|
||||
Eric Wing
|
||||
Cedric Pinson
|
||||
Brede Johansen
|
||||
Bob Kuehne
|
||||
Wojciech Lewandowski
|
||||
Michael Platings
|
||||
Geoff Michel
|
||||
Eric Sokolowsky
|
||||
David Callu
|
||||
Colin McDonald
|
||||
Trajce Nikolov
|
||||
Tim Moore
|
||||
Stephan Huber
|
||||
Farshid Lashkari
|
||||
Bob Kuehne
|
||||
Ulrich Hertlein
|
||||
Martin Lavery
|
||||
Mattias Helsing
|
||||
Jannik Heller
|
||||
Jason Beverage
|
||||
Tree
|
||||
Pjotr Svetachov
|
||||
Eric Sokolowsky
|
||||
Mathias Fr<46>hlich
|
||||
Tree
|
||||
David Callu
|
||||
Luigi Calori
|
||||
Alberto Luaces
|
||||
Trajce Nikolov
|
||||
Mike Wittman
|
||||
Jan Peciva
|
||||
Chris Hanson
|
||||
Roland Smeenk
|
||||
Roger James
|
||||
Jeremy Moles
|
||||
Andy Skinner
|
||||
J.P. Delport
|
||||
Magnus Kessler
|
||||
David Fries
|
||||
Tom Jolley
|
||||
Paul Melis
|
||||
Jordi Torres
|
||||
Luc Frauciel
|
||||
Aurelien Albert
|
||||
Torben Dannhauer
|
||||
Jean-Sebastien Guay
|
||||
Pavel Moloshtan
|
||||
Brad Christiansen
|
||||
Terry Welsh
|
||||
Olaf Flebbe
|
||||
Mathieu Marache
|
||||
Lionel Lagarde
|
||||
Jason Daly
|
||||
Art Tevs
|
||||
Philip Lowman
|
||||
Per Fahlberg
|
||||
Tom Jolley
|
||||
Andy Skinner
|
||||
Roger James
|
||||
Norman Vine
|
||||
Chris Denham
|
||||
Sherman Wilcox
|
||||
Serge Lages
|
||||
Romano Jos<6F> Magacho da Silva
|
||||
Mourad Boufarguine
|
||||
Colin McDonald
|
||||
Alberto Farre
|
||||
Glenn Waldron
|
||||
Andr<EFBFBD> Garneau
|
||||
Adrian Egli
|
||||
Sebastian Messerschmidt
|
||||
Randall Hopper
|
||||
Kristofer Tingdahl
|
||||
Jan Ciger
|
||||
Ruben Lopez
|
||||
Robert Michael
|
||||
Randall Hopper
|
||||
Wojciech Lewandowski
|
||||
Olaf Flebbe
|
||||
Gideon May
|
||||
Don Tidrow
|
||||
Stephane Lamoliatte
|
||||
Romano Jos<6F> Magacho da Silva
|
||||
Michael Gronager
|
||||
Martin Naylor
|
||||
Joakim Simonsson
|
||||
David Spilling
|
||||
Daniel Sj<53>lie
|
||||
Bryan Thrall
|
||||
Andreas Ekstrand
|
||||
Rafa Gaitan
|
||||
Mike Connell
|
||||
Konstantin Matveyev
|
||||
Fabien Lavignotte
|
||||
Thomas Hogarth
|
||||
Riccardo Corsi
|
||||
Melchior Franz
|
||||
Johannes Baeuerle
|
||||
Ravi Mathur
|
||||
Neil Hughes
|
||||
Martin Beckett
|
||||
Marc Helbling
|
||||
Chris Hanson
|
||||
Per Fahlberg
|
||||
Jeremy Moles
|
||||
J.P. Delport
|
||||
David Spilling
|
||||
Art Tevs
|
||||
Sherman Wilcox
|
||||
Joran Jessurun
|
||||
Gino van den Bergen
|
||||
David Guthrie
|
||||
Csaba Halasz
|
||||
Cory Riddell
|
||||
Chuck Seberino
|
||||
Jason Beverage
|
||||
Paul Melis
|
||||
Jason Daly
|
||||
Frederic Marmond
|
||||
David Fries
|
||||
Boris Bralo
|
||||
Yefei He
|
||||
Sondra Iverson
|
||||
Simon Julier
|
||||
Serge Lages
|
||||
Rune Schmidt Jensen
|
||||
Ralf Habacker
|
||||
Rainer Oder
|
||||
Nico Kruithof
|
||||
Martin Aumueller
|
||||
Mario Valle
|
||||
Lukasz Izdebski
|
||||
Jorge Izquierdo Ciges
|
||||
Gordon Tomlinson
|
||||
Frederic Marmond
|
||||
Frederic Bouvier
|
||||
Mike Connell
|
||||
Melchior Franz
|
||||
Joakim Simonsson
|
||||
Carlo Camporesi
|
||||
Bj<EFBFBD>rn Blissing
|
||||
Alexander Sinditskiy
|
||||
Vladimir Chebaev
|
||||
Thibault Genessay
|
||||
Ben Discoe
|
||||
Andreas Ekstrand
|
||||
Adrian Egli
|
||||
Sasa Bistrovic
|
||||
Raymond de Vries
|
||||
Neil Groves
|
||||
Mikhail Izmestev
|
||||
Martin Naylor
|
||||
Martin Aumueller
|
||||
Markus Trenkwalder
|
||||
Loic Dachary
|
||||
Joseph Steel
|
||||
John Shue
|
||||
Hartwig Wiesmann
|
||||
Jan Peciva
|
||||
Jan Ciger
|
||||
Gordon Tomlinson
|
||||
Bryan Thrall
|
||||
Brad Colbert
|
||||
Ben Discoe
|
||||
Vivek Rajan
|
||||
Uwe Woessner
|
||||
Tony Horrobin
|
||||
Thom DeCarlo
|
||||
Tatsuhiro Nishioka
|
||||
Tanguy Fautr<74>
|
||||
Sean Spicer
|
||||
Ryan Kawicki
|
||||
Richard Schmidt
|
||||
Peter Hrenka
|
||||
Paul de Repentigny
|
||||
Ravi Mathur
|
||||
Nikolaus Hanekamp
|
||||
Neil Salter
|
||||
Mihai Radu
|
||||
Michael Platings
|
||||
Michael Hartman
|
||||
Martins Innus
|
||||
Maciej Krol
|
||||
Lilin Xiong
|
||||
Leandro Motta Barros
|
||||
Julien Valentin
|
||||
Johan Nouvel
|
||||
Javier Taibo
|
||||
Donn Mielcarek
|
||||
Laurens Voerman
|
||||
David Guthrie
|
||||
Corbin Holtz
|
||||
Blasius Czink
|
||||
Alexander Irion
|
||||
Wee See
|
||||
Brad Christiansen
|
||||
Toshiyuki Takahei
|
||||
Thom DeCarlo
|
||||
Terry Welsh
|
||||
Stephane Lamoliatte
|
||||
Simon Julier
|
||||
Sebastien Grignard
|
||||
Rudolf Wiedemann
|
||||
Maria Ten
|
||||
Liang Aibin
|
||||
Katharina Plugge
|
||||
John Vidar Larring
|
||||
Romano Magacho
|
||||
Philip Lowman
|
||||
Paul de Repentigny
|
||||
Luc Frauciel
|
||||
Leandro Motta Barros
|
||||
John Kelso
|
||||
John Ivar
|
||||
Gustav Haapalahti
|
||||
Erik den Dekker
|
||||
Emmanuel Roche
|
||||
Domenico Mangieri
|
||||
Glenn Waldron
|
||||
Daniel Larimer
|
||||
Colin Dunlop
|
||||
Cedric Pinson
|
||||
Bruce Clay
|
||||
Bradley Anderegg
|
||||
Andreas Goebel
|
||||
Alok Priyadarshi
|
||||
Ali Botorabi
|
||||
Alan Dickinson
|
||||
Alberto Luaces
|
||||
Alberto Barbati
|
||||
Vladimir Shabanov
|
||||
Tugkan Calapoglu
|
||||
Tim Daoust
|
||||
Sylvain Marie
|
||||
Uwe Woessner
|
||||
Tony Horrobin
|
||||
Tim Moore
|
||||
Thibault Genessay
|
||||
Sohey Yamamoto
|
||||
Sergey Leontyev
|
||||
Santosh Gaikwad
|
||||
Ryan Pavlik
|
||||
Robert Milharcic
|
||||
Rene Molenaar
|
||||
Piotr Domagalski
|
||||
Philippe Renon
|
||||
Roland Smeenk
|
||||
Richard Schmidt
|
||||
Rafa Gaitan
|
||||
Phil Atkin
|
||||
Pawel Ksiezopolski
|
||||
Patrick Neary
|
||||
Nathan Monteleone
|
||||
Miha Rav<61>elj
|
||||
Miguel Escriva
|
||||
Peter Hrenka
|
||||
Neil Hughes
|
||||
Mattias Linde
|
||||
Mark Sciabica
|
||||
Marcin Prus
|
||||
Lee Butler
|
||||
Lars Nilsson
|
||||
Konstantin Sinitsyn
|
||||
Mattias Helsing
|
||||
Mathieu Marache
|
||||
Maria Ten
|
||||
Ken Sewell
|
||||
Julian Ortiz
|
||||
Julen Garcia
|
||||
John Kaniarz
|
||||
Johannes Scholz
|
||||
Jim Vaughan
|
||||
Jeremy Bell
|
||||
Jaromir Vitek
|
||||
James French
|
||||
Jaap Glas
|
||||
Guillaume Millet
|
||||
Gary Quinn
|
||||
Garrett Potts
|
||||
Gabor Dorka
|
||||
Fabio Mierlo
|
||||
Doug McCorkle
|
||||
Donald Cipperly
|
||||
Don Leich
|
||||
Dietmar Funck
|
||||
Colin Cochran
|
||||
Christian Ruzicka
|
||||
Christian Buchner
|
||||
Chris Djali
|
||||
Donn Mielcarek
|
||||
Domenico Mangieri
|
||||
Charles Cole
|
||||
Blake Williams
|
||||
Bj<EFBFBD>rn Hein
|
||||
Aur<EFBFBD>lien Chatelain
|
||||
Antoine Hue
|
||||
Andrew Bettison
|
||||
Andreas Henne
|
||||
Anders Backman
|
||||
Alexander Wiebel
|
||||
Alessandro Terenzi
|
||||
Alberto Barbati
|
||||
Ali Botorabi
|
||||
Zach Deedler
|
||||
Yuzhong Shen
|
||||
Warren Macchi
|
||||
Vincent Bourdier
|
||||
Terrex
|
||||
Tassilo Glander
|
||||
Tugkan Calapoglu
|
||||
Tim Daoust
|
||||
Terrex
|
||||
Sylvain Marie
|
||||
Steve Lunsford
|
||||
Stephane Simon
|
||||
Stephan Eilemann
|
||||
Stanislav Blinov
|
||||
Sergey Polischuk
|
||||
Roni Zanolli
|
||||
Riccardo Corsi
|
||||
Ralf Kern
|
||||
Piotr Gwiazdowski
|
||||
Pierre Haritchabalet
|
||||
Perry Miller
|
||||
Paul Palumbo
|
||||
Paul Obermeier
|
||||
Nguyen Van Truong
|
||||
Nathan Cournia
|
||||
Morten Haukness
|
||||
Morn<EFBFBD> Pistorius
|
||||
Michael Mc Donnell
|
||||
Nathan Monteleone
|
||||
Michael Henheffer
|
||||
Michael Guerrero
|
||||
Max Bandazian
|
||||
Mathias Fiedler
|
||||
Maya Leonard
|
||||
Max Behensky
|
||||
Mathew May
|
||||
Martin von Gargern
|
||||
Martin Spott
|
||||
Martin Lambers
|
||||
Martijn Kragtwijk
|
||||
Marius Heise
|
||||
Marcin Hajder
|
||||
Marcel Pursche
|
||||
Lilith Bryant
|
||||
Kevin Moiule
|
||||
Keith Steffen
|
||||
Joseph Winston
|
||||
John Aughey
|
||||
Joachim Pouderoux
|
||||
Jean-Christophe Lombardo
|
||||
Jan Klimke
|
||||
James Turner
|
||||
James Moliere
|
||||
Johan Nouvel
|
||||
Igor Kravtchenko
|
||||
Himar Carmona
|
||||
He Sicong
|
||||
Guy Volckaert
|
||||
Gustavo Wagner
|
||||
Guillaume Taze
|
||||
Guillaume Chouvenc
|
||||
Giuseppe Donvito
|
||||
Gill Peacegood
|
||||
Giampaolo Vigan<61>
|
||||
Gino van den Bergen
|
||||
Gerrick Bivins
|
||||
George Tarantilis
|
||||
Ferdi Smit
|
||||
Eduardo Poyart
|
||||
Garret Potts
|
||||
Fabio Mierlo
|
||||
Edgar Ellis
|
||||
Dmitry Marakasov
|
||||
Dimi Christopoulos
|
||||
Diane Delall<6C>e
|
||||
David Longest
|
||||
Donald Cipperly
|
||||
David Ergo
|
||||
Daniel Trstenjak
|
||||
Craig Bosma
|
||||
Claus Scheiblauer
|
||||
Christophe Loustaunau
|
||||
Christian Kehl
|
||||
Bradley Baker Searles
|
||||
Brad Anderegg
|
||||
Aric Aumann
|
||||
Anish Thomas
|
||||
Csaba Halasz
|
||||
Andrew Sampson
|
||||
Andrew Lorino
|
||||
Alexandre Amalric
|
||||
Aitor Moreno
|
||||
Andreas Goebel
|
||||
Zbigniew Sroczynski
|
||||
Yuri Vilmanis
|
||||
Xin Li
|
||||
Warren Macchi
|
||||
Wang Lam
|
||||
Wand Rui
|
||||
Walter J. Altice
|
||||
Volker Walkiewicz
|
||||
Vladimir Vukicevic
|
||||
Vlad Danciu
|
||||
Vivien Delage
|
||||
Vincent Vivanloc
|
||||
Vincent Gadoury
|
||||
Vasily Radostev
|
||||
Valery Bickov
|
||||
Valeriy Dubov
|
||||
Vaclav Bilek
|
||||
Tyge L<EFBFBD>vset
|
||||
Tyge
|
||||
Troy Yee
|
||||
Torben Dannahauer
|
||||
Tony Vasile
|
||||
Tomas Hogarth
|
||||
Tomas Hnilica
|
||||
Todd Furlong
|
||||
Tobias Ottenweller
|
||||
Tino Schwarze
|
||||
Tim George
|
||||
Thorsten Brehm
|
||||
Thomas Weidner
|
||||
Tan Dunning
|
||||
Tamer Fahmy
|
||||
Stewart Andreason
|
||||
Steven Thomas
|
||||
Stephan Wenglorz
|
||||
Simon Hammett
|
||||
Simon Carmody
|
||||
Simon Buckley
|
||||
Thom Carlo
|
||||
Tery Welsh
|
||||
Tatsuhiro Nishioka
|
||||
Tanguy Fautr<74>
|
||||
Sid Byce
|
||||
Shuxing Xiao
|
||||
Shane Arnott
|
||||
Sergey Kurdakov
|
||||
Sebastien Kuntz
|
||||
Sandro Mani
|
||||
Ruth Lang
|
||||
Ruben The
|
||||
Ruben Smelik
|
||||
Ross Anderson
|
||||
Sebastian Messerschimdt
|
||||
Rudolf Wiedemann
|
||||
Ronny Krueger
|
||||
Ronald van Maarseveen
|
||||
Romain Ouabdelkader
|
||||
Romain Charbit
|
||||
Rocco Martino
|
||||
Robert Swain
|
||||
Rob Smith
|
||||
Rob Radtke
|
||||
Rob Bloemkool
|
||||
Rick Pingry
|
||||
Rick Appleton
|
||||
Remo Eichenberger
|
||||
Rene Molenaar
|
||||
Reinhard Sainitzer
|
||||
Rein Kadijk
|
||||
Ragnar Hammarqvist
|
||||
Qing Shen
|
||||
Piotr Rak
|
||||
Pierre Bourdin
|
||||
Philipp Svehla
|
||||
Philipp Siemoleit
|
||||
Philipp M<>chler
|
||||
Philip Lamb
|
||||
Petr Salinger
|
||||
Peter Bear
|
||||
Peter Amstutz
|
||||
Per Nordqvist
|
||||
Paul Idstein
|
||||
Paul Obermeier
|
||||
Paul Fredrikson
|
||||
Paul Fotheringham
|
||||
Paul Cheyrou-Lagreze
|
||||
Pau Garcia
|
||||
Patrick Hartling
|
||||
Parag Chaudhur
|
||||
Panagiotis Papadakos
|
||||
Panagiotis Koutsourakis
|
||||
Orhun Birsoy
|
||||
Oren Fromberg
|
||||
Oliver Neumann
|
||||
Ole-Morten Duesund
|
||||
Ognjen Kostic
|
||||
Nicolas Brodu
|
||||
Nick Thu
|
||||
Nick Black
|
||||
Mojtaba Fathi
|
||||
Nathan Cournia
|
||||
Morn<EFBFBD> Pistorius
|
||||
Mirko Viviani
|
||||
Mikkel Gj<EFBFBD>l
|
||||
Mike Krus
|
||||
Mikkel Gjøl
|
||||
Mike Garrity
|
||||
Mick Thu
|
||||
Michal Durkovic
|
||||
Michael Schanne
|
||||
Michael Polak
|
||||
Michael Morrison
|
||||
Michael Logan
|
||||
Michael Kapelko
|
||||
Michael Bach Jensen
|
||||
Maya Thu
|
||||
Maya Leonard
|
||||
Max Rhiener
|
||||
Max Behensky
|
||||
Mauricio Hofmam
|
||||
Matthew May
|
||||
Matthew Johnson-Roberson
|
||||
Matt Green
|
||||
Matt Burke
|
||||
Mathias Walker
|
||||
Mathias Goldau
|
||||
Mathia Walker
|
||||
Mason Menninger
|
||||
Martin Scheffler
|
||||
Martin Innus
|
||||
Martin Beck
|
||||
Marius Kintel
|
||||
Martin Spott
|
||||
Martin Amueller
|
||||
Mario Valle
|
||||
Mario Guimaraes
|
||||
Marcus Hein
|
||||
Marco Thu
|
||||
Marco Sciabica
|
||||
Marco Lehmann
|
||||
Lukas Diduch
|
||||
Marin Lavery
|
||||
Louis Hamilton
|
||||
Likasz Izebski
|
||||
Lewis Harmon
|
||||
Leigh Stivers
|
||||
Laurence Muller
|
||||
Laura Cerritelli
|
||||
Kyle Centers
|
||||
Kristopher Bixler
|
||||
Kim Seokhwan
|
||||
Kim Bale
|
||||
Karsten Weiss
|
||||
Karl Heijdenberg
|
||||
Jutta Sauer
|
||||
Julian Scheid
|
||||
Juergen Rensen
|
||||
Juan Manuel Alvarez
|
||||
Juan Hernando
|
||||
Josh Portway
|
||||
Jonathan Greig
|
||||
John Tan
|
||||
John Hedström
|
||||
John Grant
|
||||
John Farrier
|
||||
John Donovan
|
||||
John Davis
|
||||
John Cummings
|
||||
John Argentieri
|
||||
Joe Thompson
|
||||
Joan Abadie
|
||||
Jim Brooks
|
||||
Jeroen den Dekker
|
||||
Jeffrey Kinross
|
||||
Jean-Christophe Lombardo
|
||||
Jay Zuckerman
|
||||
Jason Howlett
|
||||
Jason Ballenger
|
||||
Jamie Robertson
|
||||
James Killian
|
||||
James Athey
|
||||
J.E. Hoffmann
|
||||
Holger Helmich
|
||||
Henrique Bucher
|
||||
He Sicong
|
||||
Hautio Jari
|
||||
Hartmut Seichter
|
||||
Gunter Huber
|
||||
Gregory Jaegy
|
||||
Guillaume Millet
|
||||
Graeme Harkness
|
||||
Gian Lorenzetto
|
||||
George Papagiannakis
|
||||
Geoff Thu
|
||||
Gary Quinn
|
||||
Galen Faidley
|
||||
Frida Schlaug
|
||||
Frederic Smith
|
||||
Frederic Morin
|
||||
Frederic Bouvier
|
||||
Frashid Lashkari
|
||||
Frank Warmerdam
|
||||
Frank Midgley
|
||||
Frank Lindeman
|
||||
Frank Lichtenheld
|
||||
Francois Tigeot
|
||||
Filip Arlet
|
||||
Ferdinand Cornelissen
|
||||
Fajran Iman
|
||||
Fabien Dachicourt
|
||||
Erik Johnson
|
||||
Eric Thu
|
||||
Eric Buehler
|
||||
Eduardo Alberto
|
||||
Emmanuel Roche
|
||||
Edmond Gheury
|
||||
Ed Ralston
|
||||
Duvan Cope
|
||||
Duncan Cavens
|
||||
Drew Whitehouse
|
||||
Douglas A. Pouk
|
||||
Dmitriy Ogalcev
|
||||
Doug McCorkle
|
||||
Dean Iverson
|
||||
David Jung
|
||||
Danny Valente
|
||||
David Gurhrie
|
||||
Daniel Stien
|
||||
Dan Minor
|
||||
C<EFBFBD>sar L. B. Silveira
|
||||
Cyril Brulebois
|
||||
Curtis Rubel
|
||||
Cory Slep
|
||||
Cl<EFBFBD>ment B<>sch
|
||||
Clay Fowler
|
||||
Claus Steuer
|
||||
Chuck Sembroski
|
||||
Christopher Blaesius
|
||||
Christopher Baker
|
||||
Christophe Herreman
|
||||
Christian Noon
|
||||
Chuck Seberion
|
||||
Christian Kaser
|
||||
Christian Ehrlicher
|
||||
Chris White
|
||||
Chris McGlone
|
||||
Carlos Garcea
|
||||
Capostrophic
|
||||
Bryce Eldridge
|
||||
Bruno Herbelin
|
||||
Brian Keener
|
||||
Brede Thu
|
||||
Brandon Hamm
|
||||
Bill Prendergast
|
||||
Bernardt Duvenhage
|
||||
Brad Anderegg
|
||||
Bora Utka
|
||||
Blasius Czink
|
||||
Benoit Laniel
|
||||
Benjamin Wasty
|
||||
Ben van Basten
|
||||
Bart Gallet
|
||||
Axel Volley
|
||||
Arjun Ramamurthy
|
||||
Anthousis Andreadis
|
||||
Anna Sokol
|
||||
Andy Preece
|
||||
Andrew Reyonolds
|
||||
Andreas Roth
|
||||
Andreas Jochens
|
||||
Andre Normann
|
||||
Alois Wismer
|
||||
Almalric Alexandre
|
||||
Allen Bierbaum
|
||||
Alexey Pavlov
|
||||
Alexandre Amalric
|
||||
Alberto Jaspe
|
||||
Alan Purvis
|
||||
Alan Ott
|
||||
Alan Harris
|
||||
Adrien Grandemange
|
||||
Adrian Clark
|
||||
Adam Richard
|
||||
Abhishek Bansal
|
||||
|
||||
1414
CMakeLists.txt
1414
CMakeLists.txt
File diff suppressed because it is too large
Load Diff
@@ -1,157 +0,0 @@
|
||||
# Check for availability of atomic operations
|
||||
# This module defines
|
||||
# OPENTHREADS_HAVE_ATOMIC_OPS
|
||||
|
||||
OPTION(OPENTHREADS_ATOMIC_USE_MUTEX "Set to ON to force OpenThreads to use a mutex for Atmoic." OFF)
|
||||
|
||||
IF (OPENTHREADS_ATOMIC_USE_MUTEX)
|
||||
|
||||
SET(_OPENTHREADS_ATOMIC_USE_GCC_BUILTINS 0)
|
||||
SET(_OPENTHREADS_ATOMIC_USE_MIPOSPRO_BUILTINS 0)
|
||||
SET(_OPENTHREADS_ATOMIC_USE_SUN 0)
|
||||
SET(_OPENTHREADS_ATOMIC_USE_WIN32_INTERLOCKED 0)
|
||||
SET(_OPENTHREADS_ATOMIC_USE_BSD_ATOMIC 0)
|
||||
|
||||
SET(_OPENTHREADS_ATOMIC_USE_MUTEX 1)
|
||||
|
||||
ELSE()
|
||||
# as the test does not work for IOS hardcode the ATOMIC implementation
|
||||
IF(OSG_BUILD_PLATFORM_IPHONE_SIMULATOR OR OSG_BUILD_PLATFORM_IPHONE)
|
||||
SET(_OPENTHREADS_ATOMIC_USE_GCC_BUILTINS 0)
|
||||
SET(_OPENTHREADS_ATOMIC_USE_MIPOSPRO_BUILTINS 0)
|
||||
SET(_OPENTHREADS_ATOMIC_USE_SUN 0)
|
||||
SET(_OPENTHREADS_ATOMIC_USE_WIN32_INTERLOCKED 0)
|
||||
SET(_OPENTHREADS_ATOMIC_USE_MUTEX 0)
|
||||
|
||||
SET(_OPENTHREADS_ATOMIC_USE_BSD_ATOMIC 1)
|
||||
|
||||
ELSE()
|
||||
INCLUDE(CheckCXXSourceRuns)
|
||||
|
||||
# Do step by step checking,
|
||||
CHECK_CXX_SOURCE_RUNS("
|
||||
#include <cstdlib>
|
||||
|
||||
int main()
|
||||
{
|
||||
unsigned value = 0;
|
||||
void* ptr = &value;
|
||||
__sync_add_and_fetch(&value, 1);
|
||||
__sync_synchronize();
|
||||
__sync_sub_and_fetch(&value, 1);
|
||||
if (!__sync_bool_compare_and_swap(&value, 0, 1))
|
||||
return EXIT_FAILURE;
|
||||
|
||||
if (!__sync_bool_compare_and_swap(&ptr, ptr, ptr))
|
||||
return EXIT_FAILURE;
|
||||
|
||||
return EXIT_SUCCESS;
|
||||
}
|
||||
" _OPENTHREADS_ATOMIC_USE_GCC_BUILTINS)
|
||||
|
||||
CHECK_CXX_SOURCE_RUNS("
|
||||
#include <stdlib.h>
|
||||
|
||||
int main(int, const char**)
|
||||
{
|
||||
unsigned value = 0;
|
||||
void* ptr = &value;
|
||||
__add_and_fetch(&value, 1);
|
||||
__synchronize(value);
|
||||
__sub_and_fetch(&value, 1);
|
||||
if (!__compare_and_swap(&value, 0, 1))
|
||||
return EXIT_FAILURE;
|
||||
|
||||
if (!__compare_and_swap((unsigned long*)&ptr, (unsigned long)ptr, (unsigned long)ptr))
|
||||
return EXIT_FAILURE;
|
||||
|
||||
return EXIT_SUCCESS;
|
||||
}
|
||||
" _OPENTHREADS_ATOMIC_USE_MIPOSPRO_BUILTINS)
|
||||
|
||||
CHECK_CXX_SOURCE_RUNS("
|
||||
#include <atomic.h>
|
||||
#include <cstdlib>
|
||||
|
||||
int main(int, const char**)
|
||||
{
|
||||
uint_t value = 0;
|
||||
void* ptr = &value;
|
||||
atomic_inc_uint_nv(&value);
|
||||
membar_consumer();
|
||||
atomic_dec_uint_nv(&value);
|
||||
if (0 != atomic_cas_uint(&value, 0, 1))
|
||||
return EXIT_FAILURE;
|
||||
|
||||
if (ptr != atomic_cas_ptr(&ptr, ptr, ptr))
|
||||
return EXIT_FAILURE;
|
||||
|
||||
return EXIT_SUCCESS;
|
||||
}
|
||||
" _OPENTHREADS_ATOMIC_USE_SUN)
|
||||
|
||||
CHECK_CXX_SOURCE_RUNS("
|
||||
#include <windows.h>
|
||||
#include <intrin.h>
|
||||
#include <cstdlib>
|
||||
|
||||
#pragma intrinsic(_InterlockedAnd)
|
||||
#pragma intrinsic(_InterlockedOr)
|
||||
#pragma intrinsic(_InterlockedXor)
|
||||
|
||||
int main(int, const char**)
|
||||
{
|
||||
volatile long value = 0;
|
||||
long data = 0;
|
||||
long* volatile ptr = &data;
|
||||
|
||||
InterlockedIncrement(&value);
|
||||
MemoryBarrier();
|
||||
InterlockedDecrement(&value);
|
||||
|
||||
if (0 != InterlockedCompareExchange(&value, 1, 0))
|
||||
return EXIT_FAILURE;
|
||||
|
||||
if (ptr != InterlockedCompareExchangePointer((PVOID volatile*)&ptr, (PVOID)ptr, (PVOID)ptr))
|
||||
return EXIT_FAILURE;
|
||||
|
||||
return EXIT_SUCCESS;
|
||||
}
|
||||
" _OPENTHREADS_ATOMIC_USE_WIN32_INTERLOCKED)
|
||||
|
||||
CHECK_CXX_SOURCE_RUNS("
|
||||
#include <libkern/OSAtomic.h>
|
||||
|
||||
int main()
|
||||
{
|
||||
volatile int32_t value = 0;
|
||||
long data = 0;
|
||||
long * volatile ptr = &data;
|
||||
|
||||
OSAtomicIncrement32(&value);
|
||||
OSMemoryBarrier();
|
||||
OSAtomicDecrement32(&value);
|
||||
OSAtomicCompareAndSwapInt(value, 1, &value);
|
||||
OSAtomicCompareAndSwapPtr(ptr, ptr, (void * volatile *)&ptr);
|
||||
}
|
||||
" _OPENTHREADS_ATOMIC_USE_BSD_ATOMIC)
|
||||
|
||||
IF(NOT _OPENTHREADS_ATOMIC_USE_GCC_BUILTINS AND
|
||||
NOT _OPENTHREADS_ATOMIC_USE_MIPOSPRO_BUILTINS AND
|
||||
NOT _OPENTHREADS_ATOMIC_USE_SUN AND
|
||||
NOT _OPENTHREADS_ATOMIC_USE_WIN32_INTERLOCKED AND
|
||||
NOT _OPENTHREADS_ATOMIC_USE_BSD_ATOMIC)
|
||||
SET(_OPENTHREADS_ATOMIC_USE_MUTEX 1)
|
||||
ENDIF()
|
||||
|
||||
|
||||
# MinGW can set both WIN32_INTERLOCKED and GCC_BUILTINS to true which results in compliation errors
|
||||
IF (_OPENTHREADS_ATOMIC_USE_GCC_BUILTINS AND _OPENTHREADS_ATOMIC_USE_WIN32_INTERLOCKED)
|
||||
# In this case we prefer the GCC_BUILTINS
|
||||
SET(_OPENTHREADS_ATOMIC_USE_GCC_BUILTINS 1)
|
||||
SET(_OPENTHREADS_ATOMIC_USE_WIN32_INTERLOCKED 0)
|
||||
ENDIF()
|
||||
|
||||
ENDIF()
|
||||
|
||||
ENDIF()
|
||||
@@ -3,42 +3,35 @@
|
||||
# all the paramenter are required, in case of lists, use "" in calling
|
||||
################################################################################################
|
||||
|
||||
MACRO(FIND_DEPENDENCY DEPNAME INCLUDEFILE LIBRARY_NAMES_BASE SEARCHPATHLIST DEBUGSUFFIX EXSUFFIX)
|
||||
|
||||
MESSAGE(STATUS "searching ${DEPNAME} -->${INCLUDEFILE}<-->${LIBRARY_NAMES_BASE}<-->${SEARCHPATHLIST}<--")
|
||||
MACRO(FIND_DEPENDENCY DEPNAME INCLUDEFILE LIBRARY_NAMES SEARCHPATHLIST DEBUGSUFFIX)
|
||||
|
||||
MESSAGE(STATUS "searching ${DEPNAME} -->${INCLUDEFILE}<-->${LIBRARY}<-->${SEARCHPATHLIST}<--")
|
||||
|
||||
SET(MY_PATH_INCLUDE )
|
||||
SET(MY_PATH_LIB )
|
||||
|
||||
|
||||
FOREACH( MYPATH ${SEARCHPATHLIST} )
|
||||
SET(MY_PATH_INCLUDE ${MY_PATH_INCLUDE} ${MYPATH}/include)
|
||||
SET(MY_PATH_LIB ${MY_PATH_LIB} ${MYPATH}/lib)
|
||||
ENDFOREACH( MYPATH ${SEARCHPATHLIST} )
|
||||
|
||||
|
||||
FIND_PATH("${DEPNAME}_INCLUDE_DIR" ${INCLUDEFILE}
|
||||
${MY_PATH_INCLUDE}
|
||||
NO_DEFAULT_PATH
|
||||
)
|
||||
MARK_AS_ADVANCED("${DEPNAME}_INCLUDE_DIR")
|
||||
#MESSAGE( " ${DEPNAME}_INCLUDE_DIR --> ${${DEPNAME}_INCLUDE_DIR}<--")
|
||||
|
||||
SET(LIBRARY_NAMES "")
|
||||
FOREACH(LIBNAME ${LIBRARY_NAMES_BASE})
|
||||
LIST(APPEND LIBRARY_NAMES "${LIBNAME}${EXSUFFIX}")
|
||||
ENDFOREACH(LIBNAME)
|
||||
FIND_LIBRARY("${DEPNAME}_LIBRARY"
|
||||
|
||||
FIND_LIBRARY("${DEPNAME}_LIBRARY"
|
||||
NAMES ${LIBRARY_NAMES}
|
||||
PATHS ${MY_PATH_LIB}
|
||||
NO_DEFAULT_PATH
|
||||
)
|
||||
SET(LIBRARY_NAMES_DEBUG "")
|
||||
FOREACH(LIBNAME ${LIBRARY_NAMES_BASE})
|
||||
LIST(APPEND LIBRARY_NAMES_DEBUG "${LIBNAME}${DEBUGSUFFIX}${EXSUFFIX}")
|
||||
FOREACH(LIBNAME ${LIBRARY_NAMES})
|
||||
LIST(APPEND LIBRARY_NAMES_DEBUG "${LIBNAME}${DEBUGSUFFIX}")
|
||||
ENDFOREACH(LIBNAME)
|
||||
FIND_LIBRARY("${DEPNAME}_LIBRARY_DEBUG"
|
||||
FIND_LIBRARY("${DEPNAME}_LIBRARY_DEBUG"
|
||||
NAMES ${LIBRARY_NAMES_DEBUG}
|
||||
PATHS ${MY_PATH_LIB}
|
||||
NO_DEFAULT_PATH
|
||||
)
|
||||
MARK_AS_ADVANCED("${DEPNAME}_LIBRARY")
|
||||
#MESSAGE( " ${DEPNAME}_LIBRARY --> ${${DEPNAME}_LIBRARY}<--")
|
||||
@@ -49,59 +42,42 @@ MACRO(FIND_DEPENDENCY DEPNAME INCLUDEFILE LIBRARY_NAMES_BASE SEARCHPATHLIST DEBU
|
||||
MESSAGE("-- Warning Debug ${DEPNAME} not found, using: ${${DEPNAME}_LIBRARY}")
|
||||
SET(${DEPNAME}_LIBRARY_DEBUG "${${DEPNAME}_LIBRARY}")
|
||||
ENDIF(NOT ${DEPNAME}_LIBRARY_DEBUG)
|
||||
|
||||
SET(${DEPNAME}_LIBRARIES debug ${${DEPNAME}_LIBRARY_DEBUG} optimized ${${DEPNAME}_LIBRARY} )
|
||||
|
||||
ENDIF(${DEPNAME}_INCLUDE_DIR AND ${DEPNAME}_LIBRARY)
|
||||
|
||||
|
||||
|
||||
ENDMACRO(FIND_DEPENDENCY DEPNAME INCLUDEFILE LIBRARY_NAMES_BASE SEARCHPATHLIST DEBUGSUFFIX)
|
||||
ENDMACRO(FIND_DEPENDENCY DEPNAME INCLUDEFILE LIBRARY_NAMES SEARCHPATHLIST DEBUGSUFFIX)
|
||||
|
||||
|
||||
################################################################################################
|
||||
# this Macro is tailored to Mike and Torbens dependencies
|
||||
# this Macro is tailored to Mike dependencies
|
||||
################################################################################################
|
||||
|
||||
MACRO(SEARCH_3RDPARTY OSG_3RDPARTY_BIN)
|
||||
FIND_DEPENDENCY(TIFF tiff.h "libtiff;tiff" ${OSG_3RDPARTY_BIN} "D" "")
|
||||
FIND_DEPENDENCY(FREETYPE ft2build.h "freetype;freetype2311MT;freetype234;freetype234MT;freetype235;freetype237;freetype238;freetype244;freetype250;freetype27;freetype271;" ${OSG_3RDPARTY_BIN} "d" "")
|
||||
FIND_DEPENDENCY(TIFF tiff.h libtiff ${OSG_3RDPARTY_BIN} "D")
|
||||
FIND_DEPENDENCY(FREETYPE ft2build.h "freetype;freetype234;freetype234MT;freetype235" ${OSG_3RDPARTY_BIN} "_D")
|
||||
IF(FREETYPE_FOUND)
|
||||
#forcing subsequent FindFreeType stuff to not search for other variables.... kind of a hack
|
||||
SET(FREETYPE_INCLUDE_DIR_ft2build ${FREETYPE_INCLUDE_DIR} CACHE PATH "" FORCE)
|
||||
SET(FREETYPE_INCLUDE_DIR_freetype2 ${FREETYPE_INCLUDE_DIR} CACHE PATH "" FORCE)
|
||||
#forcing subsequent FindFreeType stuff to not search for other variables.... kind of a hack
|
||||
SET(FREETYPE_INCLUDE_DIR_ft2build ${FREETYPE_INCLUDE_DIR} CACHE PATH "")
|
||||
SET(FREETYPE_INCLUDE_DIR_freetype2 ${FREETYPE_INCLUDE_DIR} CACHE PATH "")
|
||||
MARK_AS_ADVANCED(FREETYPE_INCLUDE_DIR_ft2build FREETYPE_INCLUDE_DIR_freetype2)
|
||||
SET(FREETYPE_INCLUDE_DIRS "${FREETYPE_INCLUDE_DIR_ft2build};${FREETYPE_INCLUDE_DIR_freetype2}")
|
||||
ENDIF(FREETYPE_FOUND)
|
||||
FIND_DEPENDENCY(CURL curl/curl.h "libcurl;curllib;libcurl_imp" ${OSG_3RDPARTY_BIN} "D" "")
|
||||
FIND_DEPENDENCY(JPEG jpeglib.h "libjpeg;jpeg" ${OSG_3RDPARTY_BIN} "D" "")
|
||||
FIND_DEPENDENCY(GDAL gdal.h "gdal;gdal16" ${OSG_3RDPARTY_BIN} "d" "_i")
|
||||
FIND_DEPENDENCY(GLUT GL/glut.h glut32 ${OSG_3RDPARTY_BIN} "D" "")
|
||||
FIND_DEPENDENCY(CURL curl/curl.h "libcurl;curllib" ${OSG_3RDPARTY_BIN} "D")
|
||||
FIND_DEPENDENCY(JPEG jpeglib.h libjpeg ${OSG_3RDPARTY_BIN} "D")
|
||||
#FIND_DEPENDENCY(GDAL gdal.h "gdal;gdal_i" ${OSG_3RDPARTY_BIN})
|
||||
FIND_DEPENDENCY(GLUT GL/glut.h glut32 ${OSG_3RDPARTY_BIN} "D")
|
||||
IF(GLUT_FOUND)
|
||||
#forcing subsequent FindGlut stuff to not search for other variables.... kind of a hack
|
||||
#forcing subsequent FindGlut stuff to not search for other variables.... kind of a hack
|
||||
SET(GLUT_glut_LIBRARY ${GLUT_LIBRARY} CACHE FILEPATH "")
|
||||
MARK_AS_ADVANCED(GLUT_glut_LIBRARY)
|
||||
ENDIF(GLUT_FOUND)
|
||||
FIND_DEPENDENCY(GIFLIB gif_lib.h "ungif;libungif;giflib" ${OSG_3RDPARTY_BIN} "D" "")
|
||||
FIND_DEPENDENCY(ZLIB zlib.h "z;zlib;zlib1" ${OSG_3RDPARTY_BIN} "D" "")
|
||||
FIND_DEPENDENCY(GIFLIB gif_lib.h "ungif;libungif" ${OSG_3RDPARTY_BIN} "D")
|
||||
FIND_DEPENDENCY(ZLIB zlib.h "z;zlib;zlib1" ${OSG_3RDPARTY_BIN} "D")
|
||||
IF(ZLIB_FOUND)
|
||||
FIND_DEPENDENCY(PNG png.h "libpng;libpng13;libpng15;libpng16" ${OSG_3RDPARTY_BIN} "D" "")
|
||||
FIND_DEPENDENCY(PNG png.h "libpng;libpng13" ${OSG_3RDPARTY_BIN} "D")
|
||||
IF(PNG_FOUND)
|
||||
#forcing subsequent FindPNG stuff to not search for other variables.... kind of a hack
|
||||
#forcing subsequent FindPNG stuff to not search for other variables.... kind of a hack
|
||||
SET(PNG_PNG_INCLUDE_DIR ${PNG_INCLUDE_DIR} CACHE FILEPATH "")
|
||||
MARK_AS_ADVANCED(PNG_PNG_INCLUDE_DIR)
|
||||
ENDIF(PNG_FOUND)
|
||||
ENDIF(ZLIB_FOUND)
|
||||
|
||||
# CMakes default module to find libxml2 will not find the in
|
||||
FIND_DEPENDENCY(LIBXML2 libxml/xpath.h "libxml2" ${OSG_3RDPARTY_BIN} "D" "")
|
||||
IF(LIBXML2_FOUND)
|
||||
# The CMAKE find libxml module uses LIBXML2_LIBRARIES -> fill it.... kind of a hack
|
||||
SET(LIBXML2_LIBRARIES ${LIBXML2_LIBRARY} CACHE FILEPATH "LibXML2 library for collada" FORCE)
|
||||
# SET(LIBXML2_XMLLINT_EXECUTABLE ${OSG_3RDPARTY_BIN}/bin/xmllint.exe CACHE FILEPATH "Path to xmllint executable" FORCE)
|
||||
ENDIF(LIBXML2_FOUND)
|
||||
#FIND_DEPENDENCY(DEPNAME INCLUDEFILE LIBRARY_NAMES_BASE SEARCHPATHLIST DEBUGSUFFIX EXSUFFIX)
|
||||
FIND_Package(NVTT)
|
||||
ENDIF(ZLIB_FOUND)
|
||||
#luigi#INCLUDE(FindOSGDepends.cmake)
|
||||
ENDMACRO(SEARCH_3RDPARTY OSG_3RDPARTY_BIN)
|
||||
|
||||
@@ -109,42 +85,14 @@ ENDMACRO(SEARCH_3RDPARTY OSG_3RDPARTY_BIN)
|
||||
|
||||
|
||||
################################################################################################
|
||||
# this is code for handling optional 3RDPARTY usage
|
||||
# this is code for handling optional 3DPARTY usage
|
||||
################################################################################################
|
||||
|
||||
OPTION(USE_3RDPARTY_BIN "Set to ON to use Mike or Torbens prebuilt dependencies situated side of OpenSceneGraph source. Use OFF for avoiding." ON)
|
||||
IF(USE_3RDPARTY_BIN)
|
||||
|
||||
# Check Architecture
|
||||
IF( CMAKE_SIZEOF_VOID_P EQUAL 4 )
|
||||
MESSAGE( STATUS "32 bit architecture detected" )
|
||||
SET(DESTINATION_ARCH "x86")
|
||||
ENDIF()
|
||||
IF( CMAKE_SIZEOF_VOID_P EQUAL 8 )
|
||||
MESSAGE( STATUS "64 bit architecture detected" )
|
||||
SET(DESTINATION_ARCH "x64")
|
||||
ENDIF()
|
||||
|
||||
OPTION(USE_3DPARTY_BIN "Set to ON to use Mike prebuilt dependencies situated side of OpenSceneGraph source. Use OFF for avoiding." ON)
|
||||
IF(USE_3DPARTY_BIN)
|
||||
GET_FILENAME_COMPONENT(PARENT_DIR ${PROJECT_SOURCE_DIR} PATH)
|
||||
SET(TEST_3RDPARTY_DIR "${PARENT_DIR}/3rdparty")
|
||||
IF(NOT EXISTS ${TEST_3RDPARTY_DIR})
|
||||
SET(3RDPARTY_DIR_BY_ENV $ENV{OSG_3RDPARTY_DIR})
|
||||
IF(3RDPARTY_DIR_BY_ENV)
|
||||
MESSAGE( STATUS "3rdParty-Package ENV variable found:${3RDPARTY_DIR_BY_ENV}/${DESTINATION_ARCH}" )
|
||||
SET(TEST_3RDPARTY_DIR "${3RDPARTY_DIR_BY_ENV}/${DESTINATION_ARCH}")
|
||||
ELSEIF(MSVC71)
|
||||
SET(TEST_3RDPARTY_DIR "${PARENT_DIR}/3rdParty_win32binaries_vs71")
|
||||
ELSEIF(MSVC80)
|
||||
SET(TEST_3RDPARTY_DIR "${PARENT_DIR}/3rdParty_win32binaries_vs80sp1")
|
||||
ELSEIF(MSVC90)
|
||||
SET(TEST_3RDPARTY_DIR "${PARENT_DIR}/3rdParty_win32binaries_vs90sp1")
|
||||
ENDIF()
|
||||
ENDIF(NOT EXISTS ${TEST_3RDPARTY_DIR})
|
||||
|
||||
SET(ACTUAL_3RDPARTY_DIR "${TEST_3RDPARTY_DIR}" CACHE PATH "Location of 3rdparty dependencies")
|
||||
SET(ACTUAL_3DPARTY_DIR "${ACTUAL_3RDPARTY_DIR}") # kept for backcompatibility
|
||||
IF(EXISTS ${ACTUAL_3RDPARTY_DIR})
|
||||
SET (3rdPartyRoot ${ACTUAL_3RDPARTY_DIR})
|
||||
SEARCH_3RDPARTY(${ACTUAL_3RDPARTY_DIR})
|
||||
ENDIF(EXISTS ${ACTUAL_3RDPARTY_DIR})
|
||||
ENDIF(USE_3RDPARTY_BIN)
|
||||
SET(ACTUAL_3DPARTY_DIR "${PARENT_DIR}/3rdparty" CACHE PATH "Location of 3rdparty dependencies")
|
||||
IF(EXISTS ${ACTUAL_3DPARTY_DIR})
|
||||
SEARCH_3RDPARTY(${ACTUAL_3DPARTY_DIR})
|
||||
ENDIF(EXISTS ${ACTUAL_3DPARTY_DIR})
|
||||
ENDIF(USE_3DPARTY_BIN)
|
||||
|
||||
@@ -1,38 +0,0 @@
|
||||
# Locate Apple AVFoundation (next-generation QTKit)
|
||||
# This module defines
|
||||
# AV_FOUNDATION_LIBRARY
|
||||
# AV_FOUNDATION_FOUND, if false, do not try to link to gdal
|
||||
#
|
||||
# $AV_FOUNDATION_DIR is an environment variable that would
|
||||
# correspond to the ./configure --prefix=$AV_FOUNDATION_DIR
|
||||
#
|
||||
# Created by Stephan Maximilian Huber
|
||||
|
||||
|
||||
IF(APPLE)
|
||||
FIND_LIBRARY(AV_FOUNDATION_LIBRARY AVFoundation)
|
||||
ENDIF()
|
||||
|
||||
SET(AV_FOUNDATION_FOUND "NO")
|
||||
IF(AV_FOUNDATION_LIBRARY)
|
||||
SET(AV_FOUNDATION_FOUND "YES")
|
||||
ENDIF()
|
||||
|
||||
IF(OSG_BUILD_PLATFORM_IPHONE OR OSG_BUILD_PLATFORM_IPHONE_SIMULATOR)
|
||||
# AVFoundation exists ON iOS, too -- good support for SDK 6.0 and greater
|
||||
IF(${IPHONE_SDKVER} LESS "6.0")
|
||||
SET(AV_FOUNDATION_FOUND "NO")
|
||||
ELSE()
|
||||
SET(AV_FOUNDATION_FOUND "YES")
|
||||
ENDIF()
|
||||
ELSE()
|
||||
IF(APPLE)
|
||||
# AVFoundation exists since 10.7, but only 10.8 has all features necessary for OSG
|
||||
# so check the SDK-setting
|
||||
|
||||
IF(OSG_OSX_VERSION VERSION_LESS 10.8)
|
||||
MESSAGE("AVFoundation disabled for SDK < 10.8")
|
||||
SET(AV_FOUNDATION_FOUND "NO")
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
@@ -1,50 +0,0 @@
|
||||
# Locate AndroidNDK
|
||||
# This module defines
|
||||
# ANDROID_NDK
|
||||
# ANDROID_FOUND, if false, do not try to use AndroidNDK
|
||||
#
|
||||
|
||||
FIND_PATH(ANDROID_NDK ndk-build
|
||||
${ANDROID_NDK}
|
||||
NO_DEFAULT_PATH
|
||||
)
|
||||
|
||||
IF(NOT ANDROID_NDK)
|
||||
FIND_PATH(ANDROID_NDK ndk-build
|
||||
$ENV{ANDROID_NDK}
|
||||
$ENV{ANDROID_ROOT}
|
||||
NO_DEFAULT_PATH
|
||||
)
|
||||
ENDIF()
|
||||
|
||||
IF(NOT ANDROID_NDK)
|
||||
FIND_PATH(ANDROID_NDK ndk-build
|
||||
# search for r5c
|
||||
~/android-ndk-r5c
|
||||
~/android_develop/android-ndk-r5c
|
||||
~/ndk-r5c
|
||||
~/android_develop/ndk-r5c
|
||||
# search for r5b
|
||||
~/android-ndk-r5b
|
||||
~/android_develop/android-ndk-r5b
|
||||
~/ndk-r5b
|
||||
~/android_develop/ndk-r5b
|
||||
# search for r5
|
||||
~/android-ndk-r5
|
||||
~/android_develop/android-ndk-r5
|
||||
~/ndk-r5
|
||||
~/android_develop/ndk-r5
|
||||
# search for r4-crystax
|
||||
~/android-ndk-r4-crystax
|
||||
~/android_develop/android-ndk-r4-crystax
|
||||
~/ndk-r4
|
||||
~/android_develop/ndk-r4
|
||||
)
|
||||
ENDIF()
|
||||
|
||||
SET(ANDROID_FOUND "NO")
|
||||
IF(ANDROID_NDK)
|
||||
SET(ANDROID_FOUND "YES")
|
||||
MESSAGE(STATUS "Android NDK found in: ${ANDROID_NDK}")
|
||||
ENDIF(ANDROID_NDK)
|
||||
|
||||
@@ -1,34 +0,0 @@
|
||||
# Locate ASIO-headers (http://think-async.com/Asio)
|
||||
# This module defines
|
||||
# ASIO_FOUND, if false, do not try to link to gdal
|
||||
# ASIO_INCLUDE_DIR, where to find the headers
|
||||
#
|
||||
# Created by Stephan Maximilian Huber
|
||||
|
||||
FIND_PATH(ASIO_INCLUDE_DIR
|
||||
NAMES
|
||||
asio.hpp
|
||||
PATHS
|
||||
/usr/include
|
||||
/usr/local/include
|
||||
)
|
||||
|
||||
SET(ASIO_FOUND "NO")
|
||||
IF(ASIO_INCLUDE_DIR)
|
||||
|
||||
set(ASIO_VERSION_H ${ASIO_INCLUDE_DIR}/asio/version.hpp)
|
||||
file(STRINGS ${ASIO_VERSION_H} AsioVersionLine REGEX "^#define ASIO_VERSION ")
|
||||
string(REGEX MATCHALL "[0-9]+" AsioHeaderVersionMatches "${AsioVersionLine}")
|
||||
list(GET AsioHeaderVersionMatches 0 AsioHeaderVersion)
|
||||
|
||||
# check version is less than 1.14.0 otherwise API changes break build
|
||||
if (${AsioHeaderVersion} LESS "101400")
|
||||
FIND_PACKAGE( Boost 1.37 )
|
||||
IF(Boost_FOUND)
|
||||
SET(ASIO_FOUND "YES")
|
||||
ENDIF()
|
||||
else()
|
||||
message("ASIO not compatible")
|
||||
endif()
|
||||
|
||||
ENDIF()
|
||||
@@ -1,333 +1,56 @@
|
||||
# Locate Collada
|
||||
# This module defines:
|
||||
# Locate gdal
|
||||
# This module defines
|
||||
# COLLADA_LIBRARY
|
||||
# COLLADA_FOUND, if false, do not try to link to gdal
|
||||
# COLLADA_INCLUDE_DIR, where to find the headers
|
||||
#
|
||||
# COLLADA_LIBRARY, COLLADA_LIBRARY_DEBUG
|
||||
# COLLADA_FOUND, if false, do not try to link to Collada dynamically
|
||||
#
|
||||
# COLLADA_LIBRARY_STATIC, COLLADA_LIBRARY_STATIC_DEBUG
|
||||
# COLLADA_STATIC_FOUND, if false, do not try to link to Collada statically
|
||||
#
|
||||
# $COLLADA_DIR is an environment variable that would
|
||||
# correspond to the ./configure --prefix=$COLLADA_DIR
|
||||
#
|
||||
# Created by Robert Osfield.
|
||||
|
||||
|
||||
# Check if COLLADA_DIR is set, otherwise use ACTUAL_3DPARTY_DIR:
|
||||
SET( COLLADA_ENV_VAR_AVAILABLE $ENV{COLLADA_DIR} )
|
||||
IF ( COLLADA_ENV_VAR_AVAILABLE )
|
||||
SET(COLLADA_DOM_ROOT "$ENV{COLLADA_DIR}/dom" CACHE PATH "Location of Collada DOM directory" FORCE)
|
||||
ELSE ()
|
||||
SET(COLLADA_DOM_ROOT "${ACTUAL_3DPARTY_DIR}/include/1.4/dom" CACHE PATH "Location of Collada DOM directory" FORCE)
|
||||
ENDIF()
|
||||
|
||||
|
||||
IF(APPLE)
|
||||
SET(COLLADA_BUILDNAME "mac")
|
||||
SET(COLLADA_BOOST_BUILDNAME ${COLLADA_BUILDNAME})
|
||||
ELSEIF(MINGW)
|
||||
SET(COLLADA_BUILDNAME "mingw")
|
||||
SET(COLLADA_BOOST_BUILDNAME ${COLLADA_BUILDNAME})
|
||||
ELSEIF((MSVC_VERSION GREATER 1910) OR (MSVC_VERSION EQUAL 1910))
|
||||
SET(COLLADA_BUILDNAME "vc14")
|
||||
SET(COLLADA_BOOST_BUILDNAME "vc141")
|
||||
ELSEIF(MSVC_VERSION EQUAL 1900)
|
||||
SET(COLLADA_BUILDNAME "vc14")
|
||||
SET(COLLADA_BOOST_BUILDNAME "vc140")
|
||||
ELSEIF(MSVC_VERSION EQUAL 1800)
|
||||
SET(COLLADA_BUILDNAME "vc12")
|
||||
SET(COLLADA_BOOST_BUILDNAME "vc120")
|
||||
ELSEIF(MSVC_VERSION EQUAL 1700)
|
||||
SET(COLLADA_BUILDNAME "vc11")
|
||||
SET(COLLADA_BOOST_BUILDNAME "vc110")
|
||||
ELSEIF(MSVC_VERSION EQUAL 1600)
|
||||
SET(COLLADA_BUILDNAME "vc10")
|
||||
SET(COLLADA_BOOST_BUILDNAME "vc100")
|
||||
ELSEIF(MSVC_VERSION EQUAL 1500)
|
||||
SET(COLLADA_BUILDNAME "vc9")
|
||||
SET(COLLADA_BOOST_BUILDNAME "vc90")
|
||||
ELSEIF(MSVC_VERSION EQUAL 1400)
|
||||
SET(COLLADA_BUILDNAME "vc8")
|
||||
SET(COLLADA_BOOST_BUILDNAME "vc80")
|
||||
ELSE()
|
||||
SET(COLLADA_BUILDNAME "linux")
|
||||
SET(COLLADA_BOOST_BUILDNAME ${COLLADA_BUILDNAME})
|
||||
ENDIF()
|
||||
|
||||
IF(${CMAKE_VS_PLATFORM_TOOLSET})
|
||||
string(REPLACE "v" "vc" COLLADA_BOOST_BUILDNAME ${CMAKE_VS_PLATFORM_TOOLSET})
|
||||
ENDIF()
|
||||
|
||||
# Created by Robert Osfield.
|
||||
|
||||
FIND_PATH(COLLADA_INCLUDE_DIR dae.h
|
||||
${COLLADA_DOM_ROOT}/include
|
||||
$ENV{COLLADA_DIR}/include
|
||||
$ENV{COLLADA_DIR}
|
||||
$ENV{OSGDIR}/include
|
||||
$ENV{OSGDIR}
|
||||
$ENV{OSG_ROOT}/include
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/opt/local/Library/Frameworks #macports
|
||||
/usr/local/include
|
||||
/usr/local/include/colladadom
|
||||
/usr/local/include/collada-dom
|
||||
/usr/local/include/collada-dom2.5
|
||||
/usr/local/include/collada-dom2.4
|
||||
/usr/local/include/collada-dom2.2
|
||||
/opt/local/include/collada-dom
|
||||
/opt/local/include/collada-dom2.5
|
||||
/opt/local/include/collada-dom2.4
|
||||
/opt/local/include/collada-dom2.2
|
||||
/usr/include/
|
||||
/usr/include/colladadom
|
||||
/usr/include/collada-dom
|
||||
/usr/include/collada-dom2.5
|
||||
/usr/include/collada-dom2.4
|
||||
/usr/include/collada-dom2.2
|
||||
/usr/include
|
||||
/sw/include # Fink
|
||||
/opt/local/include # DarwinPorts
|
||||
/opt/csw/include # Blastwave
|
||||
/opt/include
|
||||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/include
|
||||
/usr/freeware/include
|
||||
${ACTUAL_3DPARTY_DIR}/include
|
||||
)
|
||||
|
||||
FIND_LIBRARY(COLLADA_DYNAMIC_LIBRARY
|
||||
NAMES collada_dom collada14dom Collada14Dom libcollada14dom21 libcollada14dom22 collada-dom2.5-dp collada-dom2.5-dp-${COLLADA_BOOST_BUILDNAME}-mt collada-dom2.4-dp collada-dom2.4-dp-${COLLADA_BOOST_BUILDNAME}-mt
|
||||
FIND_LIBRARY(COLLADA_LIBRARY
|
||||
NAMES collada_dom
|
||||
PATHS
|
||||
${COLLADA_DOM_ROOT}/build/${COLLADA_BUILDNAME}-1.4
|
||||
${COLLADA_DOM_ROOT}
|
||||
$ENV{COLLADA_DIR}/build/${COLLADA_BUILDNAME}-1.4
|
||||
$ENV{COLLADA_DIR}/lib
|
||||
$ENV{COLLADA_DIR}/lib-dbg
|
||||
$ENV{COLLADA_DIR}
|
||||
$ENV{OSGDIR}/lib
|
||||
$ENV{OSGDIR}
|
||||
$ENV{OSG_ROOT}/lib
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/opt/local/Library/Frameworks #macports
|
||||
/usr/local/lib
|
||||
/usr/local/lib64
|
||||
/usr/lib
|
||||
/usr/lib64
|
||||
/sw/lib
|
||||
/opt/local/lib
|
||||
/opt/csw/lib
|
||||
/opt/lib
|
||||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/lib
|
||||
/usr/freeware/lib64
|
||||
${ACTUAL_3DPARTY_DIR}/lib
|
||||
)
|
||||
|
||||
FIND_LIBRARY(COLLADA_DYNAMIC_LIBRARY_DEBUG
|
||||
NAMES collada_dom-d collada14dom-d Collada14Dom-d libcollada14dom21-d libcollada14dom22-d collada-dom2.5-dp-d collada-dom2.5-dp-${COLLADA_BOOST_BUILDNAME}-mt-d collada-dom2.4-dp-d collada-dom2.4-dp-${COLLADA_BOOST_BUILDNAME}-mt-d
|
||||
PATHS
|
||||
${COLLADA_DOM_ROOT}/build/${COLLADA_BUILDNAME}-1.4-d
|
||||
${COLLADA_DOM_ROOT}
|
||||
$ENV{COLLADA_DIR}/build/${COLLADA_BUILDNAME}-1.4-d
|
||||
$ENV{COLLADA_DIR}/lib
|
||||
$ENV{COLLADA_DIR}/lib-dbg
|
||||
$ENV{COLLADA_DIR}
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/opt/local/Library/Frameworks #macports
|
||||
/usr/local/lib
|
||||
/usr/local/lib64
|
||||
/usr/lib
|
||||
/usr/lib64
|
||||
/sw/lib
|
||||
/opt/local/lib
|
||||
/opt/csw/lib
|
||||
/opt/lib
|
||||
/usr/freeware/lib64
|
||||
${ACTUAL_3DPARTY_DIR}/lib
|
||||
)
|
||||
|
||||
FIND_LIBRARY(COLLADA_STATIC_LIBRARY
|
||||
NAMES libcollada14dom21-s libcollada14dom22-s libcollada14dom.a
|
||||
PATHS
|
||||
${COLLADA_DOM_ROOT}/build/${COLLADA_BUILDNAME}-1.4
|
||||
$ENV{COLLADA_DIR}/build/${COLLADA_BUILDNAME}-1.4
|
||||
$ENV{COLLADA_DIR}/lib
|
||||
$ENV{COLLADA_DIR}/lib-dbg
|
||||
$ENV{COLLADA_DIR}
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/opt/local/Library/Frameworks #macports
|
||||
/usr/local/lib
|
||||
/usr/local/lib64
|
||||
/usr/lib
|
||||
/usr/lib64
|
||||
/sw/lib
|
||||
/opt/local/lib
|
||||
/opt/csw/lib
|
||||
/opt/lib
|
||||
/usr/freeware/lib64
|
||||
${ACTUAL_3DPARTY_DIR}/lib
|
||||
)
|
||||
|
||||
FIND_LIBRARY(COLLADA_STATIC_LIBRARY_DEBUG
|
||||
NAMES collada_dom-sd collada14dom-sd libcollada14dom21-sd libcollada14dom22-sd libcollada14dom-d.a
|
||||
PATHS
|
||||
${COLLADA_DOM_ROOT}/build/${COLLADA_BUILDNAME}-1.4-d
|
||||
$ENV{COLLADA_DIR}/build/${COLLADA_BUILDNAME}-1.4-d
|
||||
$ENV{COLLADA_DIR}/lib
|
||||
$ENV{COLLADA_DIR}/lib-dbg
|
||||
$ENV{COLLADA_DIR}
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/opt/local/Library/Frameworks #macports
|
||||
/usr/local/lib
|
||||
/usr/local/lib64
|
||||
/usr/lib
|
||||
/usr/lib64
|
||||
/sw/lib
|
||||
/opt/local/lib
|
||||
/opt/csw/lib
|
||||
/opt/lib
|
||||
/usr/freeware/lib64
|
||||
${ACTUAL_3DPARTY_DIR}/lib
|
||||
)
|
||||
|
||||
# find extra libraries that the static linking requires
|
||||
|
||||
FIND_PACKAGE(LibXml2)
|
||||
IF (LIBXML2_FOUND)
|
||||
SET(COLLADA_LIBXML_LIBRARY "${LIBXML2_LIBRARIES}" CACHE FILEPATH "" FORCE)
|
||||
ELSE(LIBXML2_FOUND)
|
||||
IF(WIN32)
|
||||
FIND_LIBRARY(COLLADA_LIBXML_LIBRARY
|
||||
NAMES libxml2
|
||||
PATHS
|
||||
${COLLADA_DOM_ROOT}/external-libs/libxml2/win32/lib
|
||||
${COLLADA_DOM_ROOT}/external-libs/libxml2/mingw/lib
|
||||
${ACTUAL_3DPARTY_DIR}/lib
|
||||
)
|
||||
ENDIF(WIN32)
|
||||
ENDIF(LIBXML2_FOUND)
|
||||
|
||||
FIND_PACKAGE(ZLIB)
|
||||
IF (ZLIB_FOUND)
|
||||
IF (ZLIB_LIBRARY_RELEASE)
|
||||
SET(COLLADA_ZLIB_LIBRARY "${ZLIB_LIBRARY_RELEASE}" CACHE FILEPATH "" FORCE)
|
||||
ELSE(ZLIB_LIBRARY_RELEASE)
|
||||
SET(COLLADA_ZLIB_LIBRARY "${ZLIB_LIBRARY}" CACHE FILEPATH "" FORCE)
|
||||
ENDIF(ZLIB_LIBRARY_RELEASE)
|
||||
IF (ZLIB_LIBRARY_DEBUG)
|
||||
SET(COLLADA_ZLIB_LIBRARY_DEBUG "${ZLIB_LIBRARY_DEBUG}" CACHE FILEPATH "" FORCE)
|
||||
ELSE(ZLIB_LIBRARY_DEBUG)
|
||||
SET(COLLADA_ZLIB_LIBRARY_DEBUG "${COLLADA_ZLIB_LIBRARY}" CACHE FILEPATH "" FORCE)
|
||||
ENDIF(ZLIB_LIBRARY_DEBUG)
|
||||
ELSE(ZLIB_FOUND)
|
||||
IF(WIN32)
|
||||
FIND_LIBRARY(COLLADA_ZLIB_LIBRARY
|
||||
NAMES zlib
|
||||
PATHS
|
||||
${COLLADA_DOM_ROOT}/external-libs/libxml2/win32/lib
|
||||
${COLLADA_DOM_ROOT}/external-libs/libxml2/mingw/lib
|
||||
${ACTUAL_3DPARTY_DIR}/lib
|
||||
)
|
||||
ENDIF(WIN32)
|
||||
ENDIF(ZLIB_FOUND)
|
||||
|
||||
FIND_LIBRARY(COLLADA_PCRECPP_LIBRARY
|
||||
NAMES pcrecpp
|
||||
PATHS
|
||||
${COLLADA_DOM_ROOT}/external-libs/pcre/lib/${COLLADA_BUILDNAME}
|
||||
${COLLADA_DOM_ROOT}/external-libs/pcre/lib/mac
|
||||
${COLLADA_DOM_ROOT}/external-libs/pcre/lib/mingw
|
||||
${ACTUAL_3DPARTY_DIR}/lib
|
||||
)
|
||||
|
||||
FIND_LIBRARY(COLLADA_PCRECPP_LIBRARY_DEBUG
|
||||
NAMES pcrecpp-d pcrecppd
|
||||
PATHS
|
||||
${COLLADA_DOM_ROOT}/external-libs/pcre/lib/${COLLADA_BUILDNAME}
|
||||
${COLLADA_DOM_ROOT}/external-libs/pcre/lib/mac
|
||||
${COLLADA_DOM_ROOT}/external-libs/pcre/lib/mingw
|
||||
${ACTUAL_3DPARTY_DIR}/lib
|
||||
)
|
||||
|
||||
FIND_LIBRARY(COLLADA_PCRE_LIBRARY
|
||||
NAMES pcre
|
||||
PATHS
|
||||
${COLLADA_DOM_ROOT}/external-libs/pcre/lib/${COLLADA_BUILDNAME}
|
||||
${COLLADA_DOM_ROOT}/external-libs/pcre/lib/mac
|
||||
${COLLADA_DOM_ROOT}/external-libs/pcre/lib/mingw
|
||||
${ACTUAL_3DPARTY_DIR}/lib
|
||||
)
|
||||
|
||||
FIND_LIBRARY(COLLADA_PCRE_LIBRARY_DEBUG
|
||||
NAMES pcre-d pcred
|
||||
PATHS
|
||||
${COLLADA_DOM_ROOT}/external-libs/pcre/lib/${COLLADA_BUILDNAME}
|
||||
${COLLADA_DOM_ROOT}/external-libs/pcre/lib/mac
|
||||
${COLLADA_DOM_ROOT}/external-libs/pcre/lib/mingw
|
||||
${ACTUAL_3DPARTY_DIR}/lib
|
||||
)
|
||||
|
||||
FIND_LIBRARY(COLLADA_MINIZIP_LIBRARY
|
||||
NAMES minizip
|
||||
PATHS
|
||||
${COLLADA_DOM_ROOT}/external-libs/minizip/win32/lib
|
||||
${COLLADA_DOM_ROOT}/external-libs/minizip/mac
|
||||
${ACTUAL_3DPARTY_DIR}/lib
|
||||
)
|
||||
|
||||
FIND_LIBRARY(COLLADA_MINIZIP_LIBRARY_DEBUG
|
||||
NAMES minizip-d minizipD
|
||||
PATHS
|
||||
${COLLADA_DOM_ROOT}/external-libs/minizip/win32/lib
|
||||
${COLLADA_DOM_ROOT}/external-libs/minizip/mac
|
||||
${ACTUAL_3DPARTY_DIR}/lib
|
||||
)
|
||||
|
||||
FIND_LIBRARY(COLLADA_BOOST_FILESYSTEM_LIBRARY
|
||||
NAMES libboost_filesystem boost_filesystem boost_filesystem-mt libboost_filesystem-${COLLADA_BOOST_BUILDNAME}-mt libboost_filesystem-${COLLADA_BOOST_BUILDNAME}-mt-1_54 libboost_filesystem-${COLLADA_BOOST_BUILDNAME}-mt-1_55 libboost_filesystem-${COLLADA_BOOST_BUILDNAME}-mt-1_58 boost_filesystem-${COLLADA_BOOST_BUILDNAME}-mt-1_62 boost_filesystem-${COLLADA_BOOST_BUILDNAME}-mt-1_63
|
||||
PATHS
|
||||
${COLLADA_DOM_ROOT}/external-libs/boost/lib/${COLLADA_BUILDNAME}
|
||||
${COLLADA_DOM_ROOT}/external-libs/boost/lib/mingw
|
||||
${ACTUAL_3DPARTY_DIR}/lib
|
||||
)
|
||||
|
||||
FIND_LIBRARY(COLLADA_BOOST_FILESYSTEM_LIBRARY_DEBUG
|
||||
NAMES libboost_filesystem-d boost_filesystem-d boost_filesystem-mt-d libboost_filesystem-${COLLADA_BOOST_BUILDNAME}-mt-gd libboost_filesystem-${COLLADA_BOOST_BUILDNAME}-mt-gd-1_54 libboost_filesystem-${COLLADA_BOOST_BUILDNAME}-mt-gd-1_55 libboost_filesystem-${COLLADA_BOOST_BUILDNAME}-mt-gd-1_58 boost_filesystem-${COLLADA_BOOST_BUILDNAME}-mt-gd-1_62 boost_filesystem-${COLLADA_BOOST_BUILDNAME}-mt-gd-1_63
|
||||
PATHS
|
||||
${COLLADA_DOM_ROOT}/external-libs/boost/lib/${COLLADA_BUILDNAME}
|
||||
${COLLADA_DOM_ROOT}/external-libs/boost/lib/mingw
|
||||
${ACTUAL_3DPARTY_DIR}/lib
|
||||
)
|
||||
|
||||
FIND_LIBRARY(COLLADA_BOOST_SYSTEM_LIBRARY
|
||||
NAMES libboost_system boost_system boost_system-mt libboost_system-${COLLADA_BOOST_BUILDNAME}-mt libboost_system-${COLLADA_BOOST_BUILDNAME}-mt-1_54 libboost_system-${COLLADA_BOOST_BUILDNAME}-mt-1_55 libboost_system-${COLLADA_BOOST_BUILDNAME}-mt-1_58 boost_system-${COLLADA_BOOST_BUILDNAME}-mt-1_62 boost_system-${COLLADA_BOOST_BUILDNAME}-mt-1_63
|
||||
PATHS
|
||||
${COLLADA_DOM_ROOT}/external-libs/boost/lib/${COLLADA_BUILDNAME}
|
||||
${COLLADA_DOM_ROOT}/external-libs/boost/lib/mingw
|
||||
${ACTUAL_3DPARTY_DIR}/lib
|
||||
)
|
||||
|
||||
FIND_LIBRARY(COLLADA_BOOST_SYSTEM_LIBRARY_DEBUG
|
||||
NAMES libboost_system-d boost_system-d boost_system-mt-d libboost_system-${COLLADA_BOOST_BUILDNAME}-mt-gd libboost_system-${COLLADA_BOOST_BUILDNAME}-mt-gd-1_54 libboost_system-${COLLADA_BOOST_BUILDNAME}-mt-gd-1_55 libboost_system-${COLLADA_BOOST_BUILDNAME}-mt-gd-1_58 boost_system-${COLLADA_BOOST_BUILDNAME}-mt-gd-1_62 boost_system-${COLLADA_BOOST_BUILDNAME}-mt-gd-1_63
|
||||
PATHS
|
||||
${COLLADA_DOM_ROOT}/external-libs/boost/lib/${COLLADA_BUILDNAME}
|
||||
${COLLADA_DOM_ROOT}/external-libs/boost/lib/mingw
|
||||
${ACTUAL_3DPARTY_DIR}/lib
|
||||
)
|
||||
|
||||
|
||||
SET(COLLADA_FOUND "NO")
|
||||
IF(COLLADA_DYNAMIC_LIBRARY OR COLLADA_STATIC_LIBRARY)
|
||||
IF (COLLADA_INCLUDE_DIR)
|
||||
|
||||
SET(COLLADA_FOUND "YES")
|
||||
|
||||
FIND_PATH(COLLADA_INCLUDE_DOMANY_DIR 1.4/dom/domAny.h
|
||||
${COLLADA_INCLUDE_DIR}
|
||||
)
|
||||
|
||||
IF (COLLADA_INCLUDE_DOMANY_DIR)
|
||||
SET(COLLADA_DOM_2_4_OR_LATER TRUE)
|
||||
ELSEIF()
|
||||
SET(COLLADA_DOM_2_4_OR_LATER FALSE)
|
||||
ENDIF()
|
||||
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
IF(COLLADA_LIBRARY AND COLLADA_INCLUDE_DIR)
|
||||
SET(COLLADA_FOUND "YES")
|
||||
ENDIF(COLLADA_LIBRARY AND COLLADA_INCLUDE_DIR)
|
||||
|
||||
|
||||
|
||||
@@ -1,23 +0,0 @@
|
||||
# Locate Apple CoreMedia
|
||||
# This module defines
|
||||
# COREMEDIA_LIBRARY
|
||||
# COREMEDIA_FOUND, if false, do not try to link to gdal
|
||||
# COREMEDIA_INCLUDE_DIR, where to find the headers
|
||||
#
|
||||
# $COREMEDIA_DIR is an environment variable that would
|
||||
# correspond to the ./configure --prefix=$COREMEDIA_DIR
|
||||
#
|
||||
# Created by Stephan Maximilian Huber.
|
||||
|
||||
|
||||
IF(APPLE)
|
||||
FIND_PATH(COREMEDIA_INCLUDE_DIR CoreMedia/CoreMedia.h)
|
||||
FIND_LIBRARY(COREMEDIA_LIBRARY CoreMedia)
|
||||
ENDIF()
|
||||
|
||||
|
||||
SET(COREMEDIA_FOUND "NO")
|
||||
IF(COREMEDIA_LIBRARY AND COREMEDIA_INCLUDE_DIR)
|
||||
SET(COREMEDIA_FOUND "YES")
|
||||
ENDIF()
|
||||
|
||||
@@ -1,25 +0,0 @@
|
||||
# Locate Apple CoreVideo (next-generation QuickTime)
|
||||
# This module defines
|
||||
# COREVIDEO_LIBRARY
|
||||
# COREVIDEO_FOUND, if false, do not try to link to gdal
|
||||
# COREVIDEO_INCLUDE_DIR, where to find the headers
|
||||
#
|
||||
# $COREVIDEO_DIR is an environment variable that would
|
||||
# correspond to the ./configure --prefix=$COREVIDEO_DIR
|
||||
#
|
||||
# Created by Eric Wing.
|
||||
|
||||
# CoreVideo on OS X looks different than CoreVideo for Windows,
|
||||
# so I am going to case the two.
|
||||
|
||||
IF(APPLE)
|
||||
FIND_PATH(COREVIDEO_INCLUDE_DIR CoreVideo/CoreVideo.h)
|
||||
FIND_LIBRARY(COREVIDEO_LIBRARY CoreVideo)
|
||||
ENDIF()
|
||||
|
||||
|
||||
SET(COREVIDEO_FOUND "NO")
|
||||
IF(COREVIDEO_LIBRARY AND COREVIDEO_INCLUDE_DIR)
|
||||
SET(COREVIDEO_FOUND "YES")
|
||||
ENDIF()
|
||||
|
||||
@@ -1,53 +0,0 @@
|
||||
# Locate directinput
|
||||
# This module defines
|
||||
# DIRECTINPUT_LIBRARIES
|
||||
# DIRECTINPUT_FOUND, if false, do not try to link to directinput
|
||||
# DIRECTINPUT_INCLUDE_DIR, where to find the headers
|
||||
#
|
||||
# $DIRECTINPUT_DIR is an environment variable that would
|
||||
# point to the this path in the plateform devkit (Samples\Multimedia\DirectShow)
|
||||
#
|
||||
# Created by Cedric Pinson.
|
||||
#
|
||||
|
||||
SET( DIRECTINPUT_FOUND FALSE )
|
||||
|
||||
IF( WIN32 )
|
||||
FIND_PATH( DIRECTINPUT_ROOT_DIR Include/D3D10.h
|
||||
PATHS
|
||||
$ENV{PATH}
|
||||
$ENV{PROGRAMFILES}
|
||||
)
|
||||
|
||||
FIND_PATH( DIRECTINPUT_INCLUDE_DIR dinput.h
|
||||
PATHS
|
||||
${DIRECTINPUT_ROOT_DIR}/Include
|
||||
)
|
||||
|
||||
FIND_LIBRARY( DIRECTINPUT_LIBRARY dinput7.lib dinput8.lib
|
||||
PATHS
|
||||
${DIRECTINPUT_ROOT_DIR}/lib/x86
|
||||
)
|
||||
|
||||
FIND_LIBRARY( DIRECTINPUT_GUID_LIBRARY dxguid.lib
|
||||
PATHS
|
||||
${DIRECTINPUT_ROOT_DIR}/lib/x86
|
||||
)
|
||||
|
||||
FIND_LIBRARY( DIRECTINPUT_ERR_LIBRARY dxerr.lib
|
||||
PATHS
|
||||
${DIRECTINPUT_ROOT_DIR}/lib/x86
|
||||
)
|
||||
|
||||
SET( DIRECTINPUT_LIBRARIES
|
||||
${DIRECTINPUT_LIBRARY}
|
||||
${DIRECTINPUT_GUID_LIBRARY}
|
||||
${DIRECTINPUT_ERR_LIBRARY}
|
||||
)
|
||||
|
||||
IF ( DIRECTINPUT_INCLUDE_DIR AND DIRECTINPUT_LIBRARIES )
|
||||
SET( DIRECTINPUT_FOUND TRUE )
|
||||
ENDIF ( DIRECTINPUT_INCLUDE_DIR AND DIRECTINPUT_LIBRARIES )
|
||||
ENDIF( WIN32 )
|
||||
|
||||
MARK_AS_ADVANCED( DIRECTINPUT_FOUND )
|
||||
@@ -1,58 +0,0 @@
|
||||
# Locate directshow
|
||||
# This module defines
|
||||
# DIRECTSHOW_LIBRARIES
|
||||
# DIRECTSHOW_FOUND, if false, do not try to link to directshow
|
||||
# DIRECTSHOW_INCLUDE_DIR, where to find the headers
|
||||
#
|
||||
# $DIRECTSHOW_DIR is an environment variable that would
|
||||
# point to the this path in the plateform devkit (Samples\Multimedia\DirectShow)
|
||||
#
|
||||
# Created by Cedric Pinson.
|
||||
#
|
||||
|
||||
|
||||
SET(DIRECTSHOW_FOUND "NO")
|
||||
SET(DIRECTSHOW_SAMPLE_ROOT "$ENV{DIRECTSHOW_DIR}" CACHE PATH "Location of DirectShow sample in devkit")
|
||||
|
||||
IF(WIN32)
|
||||
FIND_PATH(DIRECTSHOW_STRMBASE_INCLUDE_DIRS renbase.h
|
||||
PATHS
|
||||
${DIRECTSHOW_SAMPLE_ROOT}/BaseClasses/
|
||||
$ENV{DIRECTSHOW_SAMPLE_ROOT}/BaseClasses/
|
||||
DOC "Location of DirectShow Base include on the windows devkit"
|
||||
)
|
||||
|
||||
FIND_LIBRARY(DIRECTSHOW_STRMBASE_LIBRARY_RELEASE strmbase
|
||||
PATHS
|
||||
${DIRECTSHOW_SAMPLE_ROOT}/BaseClasses/Release_MBCS/ # sdk 6.1
|
||||
$ENV{DIRECTSHOW_SAMPLE_ROOT}/BaseClasses/Release_MBCS/ # sdk 6.1
|
||||
${DIRECTSHOW_SAMPLE_ROOT}/BaseClasses/Release/ # sdk 2003
|
||||
$ENV{DIRECTSHOW_SAMPLE_ROOT}/BaseClasses/Release/ # sdk 2003
|
||||
DOC "Location of DirectShow Base library on the windows devkit"
|
||||
)
|
||||
|
||||
FIND_LIBRARY(DIRECTSHOW_STRMBASE_LIBRARY_DEBUG strmbasd
|
||||
PATHS
|
||||
${DIRECTSHOW_SAMPLE_ROOT}/BaseClasses/Debug_MBCS/ # sdk 6.1
|
||||
$ENV{DIRECTSHOW_SAMPLE_ROOT}/BaseClasses/Debug_MBCS/ # sdk 6.1
|
||||
${DIRECTSHOW_SAMPLE_ROOT}/BaseClasses/Debug/ # sdk 2003
|
||||
$ENV{DIRECTSHOW_SAMPLE_ROOT}/BaseClasses/Debug/ # sdk 2003
|
||||
DOC "Location of DirectShow Base library on the windows devkit"
|
||||
)
|
||||
|
||||
IF (DIRECTSHOW_STRMBASE_INCLUDE_DIRS AND DIRECTSHOW_STRMBASE_LIBRARY_RELEASE)
|
||||
SET(WIN_LIBS winmm d3d9 d3dx9 kernel32 user32 gdi32 winspool shell32 ole32 oleaut32 uuid comdlg32 advapi32)
|
||||
SET(DIRECTSHOW_FOUND "YES")
|
||||
SET(DIRECTSHOW_LIBRARY_DEBUG
|
||||
${DIRECTSHOW_STRMBASE_LIBRARY_DEBUG}
|
||||
)
|
||||
SET(DIRECTSHOW_LIBRARY
|
||||
${DIRECTSHOW_STRMBASE_LIBRARY_RELEASE}
|
||||
)
|
||||
SET(DIRECTSHOW_INLUDE_DIRS
|
||||
${DIRECTSHOW_STRMBASE_INCLUDE_DIRS}
|
||||
)
|
||||
|
||||
ENDIF()
|
||||
|
||||
ENDIF()
|
||||
@@ -1,33 +0,0 @@
|
||||
# Finds EGL header and library
|
||||
#
|
||||
# This script defines the following:
|
||||
# EGL_FOUND // Set to TRUE if EGL is found
|
||||
# EGL_INCLUDE_DIR // Parent directory of directory EGL/egl.h header.
|
||||
#
|
||||
# EGL_DIR can be set as an environment variable or a CMake variable,
|
||||
# to the parent directory of the EGL header.
|
||||
#
|
||||
|
||||
|
||||
FIND_PATH( EGL_INCLUDE_DIR
|
||||
NAMES EGL/egl.h
|
||||
HINTS ENV EGL_DIR
|
||||
)
|
||||
|
||||
FIND_LIBRARY(EGL_LIBRARY
|
||||
NAMES EGL
|
||||
HINTS ENV EGL_DIR
|
||||
PATH_SUFFIXES lib
|
||||
)
|
||||
|
||||
# handle the QUIETLY and REQUIRED arguments and set
|
||||
# EGL_FOUND to TRUE as appropriate
|
||||
INCLUDE( FindPackageHandleStandardArgs )
|
||||
|
||||
FIND_PACKAGE_HANDLE_STANDARD_ARGS(EGL
|
||||
REQUIRED_VARS EGL_LIBRARY EGL_INCLUDE_DIR)
|
||||
|
||||
MARK_AS_ADVANCED(
|
||||
EGL_INCLUDE_DIR
|
||||
EGL_LIBRARY
|
||||
)
|
||||
@@ -1,232 +0,0 @@
|
||||
# Locate FBX
|
||||
# This module defines:
|
||||
# FBX_INCLUDE_DIR, where to find the headers
|
||||
#
|
||||
# FBX_LIBRARY, FBX_LIBRARY_DEBUG
|
||||
# FBX_FOUND
|
||||
#
|
||||
# $FBX_DIR is an environment variable that would
|
||||
# correspond to the ./configure --prefix=$FBX_DIR
|
||||
|
||||
IF(APPLE)
|
||||
if (CMAKE_CXX_COMPILER_ID MATCHES "Clang")
|
||||
# using regular Clang or AppleClang
|
||||
SET(FBX_LIBDIR "clang")
|
||||
else()
|
||||
SET(FBX_LIBDIR "gcc4/ub")
|
||||
endif()
|
||||
ELSEIF(CMAKE_COMPILER_IS_GNUCXX)
|
||||
SET(FBX_LIBDIR "gcc4")
|
||||
ELSEIF(MSVC80)
|
||||
SET(FBX_LIBDIR "vs2005")
|
||||
ELSEIF(MSVC90)
|
||||
SET(FBX_LIBDIR "vs2008")
|
||||
ELSEIF(MSVC10)
|
||||
SET(FBX_LIBDIR "vs2010")
|
||||
ELSEIF(MSVC11)
|
||||
SET(FBX_LIBDIR "vs2012")
|
||||
ELSEIF(MSVC_VERSION EQUAL 1800)
|
||||
SET(FBX_LIBDIR "vs2013")
|
||||
ELSEIF(MSVC_VERSION EQUAL 1900)
|
||||
SET(FBX_LIBDIR "vs2015")
|
||||
ELSEIF(MSVC_VERSION GREATER_EQUAL 1910 AND MSVC_VERSION LESS 1920)
|
||||
SET(FBX_LIBDIR "vs2017")
|
||||
ELSEIF(MSVC_VERSION GREATER_EQUAL 1920 AND MSVC_VERSION LESS 1930)
|
||||
# SET(FBX_LIBDIR "vs2019") # FBX doesn't have this yet as of version 2020.0.1
|
||||
SET(FBX_LIBDIR "vs2017") # Binary compatible with vs2019
|
||||
ENDIF()
|
||||
|
||||
IF(APPLE)
|
||||
# do nothing
|
||||
ELSEIF(CMAKE_CL_64)
|
||||
SET(FBX_LIBDIR ${FBX_LIBDIR}/x64)
|
||||
ELSEIF(CMAKE_SIZEOF_VOID_P EQUAL 8)
|
||||
SET(FBX_LIBDIR ${FBX_LIBDIR}/x64)
|
||||
ELSE()
|
||||
SET(FBX_LIBDIR ${FBX_LIBDIR}/x86)
|
||||
ENDIF()
|
||||
|
||||
#try to use 2015.1 or 2014.2 version
|
||||
|
||||
IF(APPLE)
|
||||
SET(FBX_LIBNAME "fbxsdk")
|
||||
ELSEIF(CMAKE_COMPILER_IS_GNUCXX)
|
||||
SET(FBX_LIBNAME "fbxsdk")
|
||||
ELSE()
|
||||
OPTION(FBX_SHARED OFF)
|
||||
IF(FBX_SHARED)
|
||||
SET(FBX_LIBNAME "libfbxsdk")
|
||||
ELSE()
|
||||
SET(FBX_LIBNAME "libfbxsdk-md")
|
||||
IF(WIN32)
|
||||
SET(FBX_XML2_LIBNAME "libxml2-md")
|
||||
SET(FBX_ZLIB_LIBNAME "zlib-md")
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
|
||||
SET(FBX_LIBNAME_DEBUG ${FBX_LIBNAME}d)
|
||||
|
||||
SET( FBX_SEARCH_PATHS
|
||||
$ENV{FBX_DIR}
|
||||
"$ENV{ProgramW6432}/Autodesk/FBX/FBX SDK/2020.0.1"
|
||||
"$ENV{PROGRAMFILES}/Autodesk/FBX/FBX SDK/2020.0.1"
|
||||
"/Applications/Autodesk/FBX SDK/2020.0.1"
|
||||
"$ENV{ProgramW6432}/Autodesk/FBX/FBX SDK/2020.0"
|
||||
"$ENV{PROGRAMFILES}/Autodesk/FBX/FBX SDK/2020.0"
|
||||
"/Applications/Autodesk/FBX SDK/2020.0"
|
||||
"$ENV{ProgramW6432}/Autodesk/FBX/FBX SDK/2019.5"
|
||||
"$ENV{PROGRAMFILES}/Autodesk/FBX/FBX SDK/2019.5"
|
||||
"/Applications/Autodesk/FBX SDK/2019.5"
|
||||
"$ENV{ProgramW6432}/Autodesk/FBX/FBX SDK/2019.2"
|
||||
"$ENV{PROGRAMFILES}/Autodesk/FBX/FBX SDK/2019.2"
|
||||
"/Applications/Autodesk/FBX SDK/2019.2"
|
||||
"$ENV{ProgramW6432}/Autodesk/FBX/FBX SDK/2019.0"
|
||||
"$ENV{PROGRAMFILES}/Autodesk/FBX/FBX SDK/2019.0"
|
||||
"/Applications/Autodesk/FBX SDK/2019.0"
|
||||
"$ENV{ProgramW6432}/Autodesk/FBX/FBX SDK/2018.1.1"
|
||||
"$ENV{PROGRAMFILES}/Autodesk/FBX/FBX SDK/2018.1.1"
|
||||
"/Applications/Autodesk/FBX SDK/2018.1.1"
|
||||
"$ENV{ProgramW6432}/Autodesk/FBX/FBX SDK/2018.0"
|
||||
"$ENV{PROGRAMFILES}/Autodesk/FBX/FBX SDK/2018.0"
|
||||
"/Applications/Autodesk/FBX SDK/2018.0"
|
||||
"$ENV{ProgramW6432}/Autodesk/FBX/FBX SDK/2017.1"
|
||||
"$ENV{PROGRAMFILES}/Autodesk/FBX/FBX SDK/2017.1"
|
||||
"/Applications/Autodesk/FBX SDK/2017.1"
|
||||
"$ENV{ProgramW6432}/Autodesk/FBX/FBX SDK/2017.0"
|
||||
"$ENV{PROGRAMFILES}/Autodesk/FBX/FBX SDK/2017.0"
|
||||
"/Applications/Autodesk/FBX SDK/2017.0"
|
||||
"$ENV{ProgramW6432}/Autodesk/FBX/FBX SDK/2016.1.2"
|
||||
"$ENV{PROGRAMFILES}/Autodesk/FBX/FBX SDK/2016.1.2"
|
||||
"/Applications/Autodesk/FBX/FBX SDK/2016.1.2"
|
||||
/Applications/Autodesk/FBXSDK201612
|
||||
"$ENV{ProgramW6432}/Autodesk/FBX/FBX SDK/2016.1.1"
|
||||
"$ENV{PROGRAMFILES}/Autodesk/FBX/FBX SDK/2016.1.1"
|
||||
"/Applications/Autodesk/FBX/FBX SDK/2016.1.1"
|
||||
/Applications/Autodesk/FBXSDK201611
|
||||
"$ENV{ProgramW6432}/Autodesk/FBX/FBX SDK/2015.1"
|
||||
"$ENV{PROGRAMFILES}/Autodesk/FBX/FBX SDK/2015.1"
|
||||
"/Applications/Autodesk/FBX/FBX SDK/2015.1"
|
||||
/Applications/Autodesk/FBXSDK20151
|
||||
"$ENV{ProgramW6432}/Autodesk/FBX/FBX SDK/2014.2"
|
||||
"$ENV{PROGRAMFILES}/Autodesk/FBX/FBX SDK/2014.2"
|
||||
"/Applications/Autodesk/FBX/FBX SDK/2014.2"
|
||||
/Applications/Autodesk/FBXSDK20142
|
||||
)
|
||||
|
||||
# search for headers & debug/release libraries
|
||||
FIND_PATH(FBX_INCLUDE_DIR "fbxsdk.h"
|
||||
PATHS ${FBX_SEARCH_PATHS}
|
||||
PATH_SUFFIXES "include")
|
||||
FIND_LIBRARY( FBX_LIBRARY ${FBX_LIBNAME}
|
||||
PATHS ${FBX_SEARCH_PATHS}
|
||||
PATH_SUFFIXES "lib/${FBX_LIBDIR}/release" "lib/${FBX_LIBDIR}")
|
||||
|
||||
#Once one of the calls succeeds the result variable will be set and stored in the cache so that no call will search again.
|
||||
|
||||
#no debug d suffix, search in debug folder only
|
||||
FIND_LIBRARY( FBX_LIBRARY_DEBUG ${FBX_LIBNAME}
|
||||
PATHS ${FBX_SEARCH_PATHS}
|
||||
PATH_SUFFIXES "lib/${FBX_LIBDIR}/debug")
|
||||
FIND_LIBRARY( FBX_LIBRARY_DEBUG ${FBX_LIBNAME_DEBUG}
|
||||
PATHS ${FBX_SEARCH_PATHS}
|
||||
PATH_SUFFIXES "lib/${FBX_LIBDIR}")
|
||||
|
||||
IF(WIN32)
|
||||
FIND_LIBRARY( FBX_XML2_LIBRARY ${FBX_XML2_LIBNAME}
|
||||
PATHS ${FBX_SEARCH_PATHS}
|
||||
PATH_SUFFIXES "lib/${FBX_LIBDIR}/release" "lib/${FBX_LIBDIR}")
|
||||
FIND_LIBRARY( FBX_ZLIB_LIBRARY ${FBX_ZLIB_LIBNAME}
|
||||
PATHS ${FBX_SEARCH_PATHS}
|
||||
PATH_SUFFIXES "lib/${FBX_LIBDIR}/release" "lib/${FBX_LIBDIR}")
|
||||
FIND_LIBRARY( FBX_XML2_LIBRARY_DEBUG ${FBX_XML2_LIBNAME}
|
||||
PATHS ${FBX_SEARCH_PATHS}
|
||||
PATH_SUFFIXES "lib/${FBX_LIBDIR}/debug")
|
||||
FIND_LIBRARY( FBX_ZLIB_LIBRARY_DEBUG ${FBX_ZLIB_LIBNAME}
|
||||
PATHS ${FBX_SEARCH_PATHS}
|
||||
PATH_SUFFIXES "lib/${FBX_LIBDIR}/debug")
|
||||
ENDIF()
|
||||
|
||||
IF(FBX_LIBRARY AND FBX_LIBRARY_DEBUG AND FBX_INCLUDE_DIR)
|
||||
SET(FBX_FOUND "YES")
|
||||
ELSE()
|
||||
SET(FBX_FOUND "NO")
|
||||
ENDIF()
|
||||
|
||||
IF(NOT FBX_FOUND)
|
||||
#try to use 2014.1 version
|
||||
IF(APPLE)
|
||||
SET(FBX_LIBNAME "fbxsdk-2014.1")
|
||||
ELSEIF(CMAKE_COMPILER_IS_GNUCXX)
|
||||
SET(FBX_LIBNAME "fbxsdk-2014.1")
|
||||
ELSE()
|
||||
SET(FBX_LIBNAME "fbxsdk-2014.1")
|
||||
ENDIF()
|
||||
|
||||
SET(FBX_LIBNAME_DEBUG ${FBX_LIBNAME}d)
|
||||
|
||||
SET( FBX_SEARCH_PATHS
|
||||
$ENV{FBX_DIR}
|
||||
"$ENV{ProgramW6432}/Autodesk/FBX/FBX SDK/2014.1"
|
||||
"$ENV{PROGRAMFILES}/Autodesk/FBX/FBX SDK/2014.1"
|
||||
"/Applications/Autodesk/FBX/FBX SDK/2014.1"
|
||||
/Applications/Autodesk/FBXSDK20141
|
||||
)
|
||||
|
||||
# search for headers & debug/release libraries
|
||||
FIND_PATH(FBX_INCLUDE_DIR "fbxsdk.h"
|
||||
PATHS ${FBX_SEARCH_PATHS}
|
||||
PATH_SUFFIXES "include")
|
||||
FIND_LIBRARY( FBX_LIBRARY ${FBX_LIBNAME}
|
||||
PATHS ${FBX_SEARCH_PATHS}
|
||||
PATH_SUFFIXES "lib/${FBX_LIBDIR}")
|
||||
|
||||
FIND_LIBRARY( FBX_LIBRARY_DEBUG ${FBX_LIBNAME_DEBUG}
|
||||
PATHS ${FBX_SEARCH_PATHS}
|
||||
PATH_SUFFIXES "lib/${FBX_LIBDIR}")
|
||||
IF(FBX_LIBRARY AND FBX_LIBRARY_DEBUG AND FBX_INCLUDE_DIR)
|
||||
SET(FBX_FOUND "YES")
|
||||
ELSE()
|
||||
SET(FBX_FOUND "NO")
|
||||
ENDIF()
|
||||
|
||||
ENDIF()
|
||||
|
||||
IF(NOT FBX_FOUND)
|
||||
#try to use 2013.3 version
|
||||
IF(APPLE)
|
||||
SET(FBX_LIBNAME "fbxsdk-2013.3-static")
|
||||
ELSEIF(CMAKE_COMPILER_IS_GNUCXX)
|
||||
SET(FBX_LIBNAME "fbxsdk-2013.3-static")
|
||||
ELSE()
|
||||
SET(FBX_LIBNAME "fbxsdk-2013.3-md")
|
||||
ENDIF()
|
||||
|
||||
SET(FBX_LIBNAME_DEBUG ${FBX_LIBNAME}d)
|
||||
|
||||
SET( FBX_SEARCH_PATHS
|
||||
$ENV{FBX_DIR}
|
||||
"$ENV{ProgramW6432}/Autodesk/FBX/FBX SDK/2013.3"
|
||||
"$ENV{PROGRAMFILES}/Autodesk/FBX/FBX SDK/2013.3"
|
||||
"/Applications/Autodesk/FBX/FBX SDK/2013.3"
|
||||
/Applications/Autodesk/FBXSDK20133
|
||||
)
|
||||
|
||||
# search for headers & debug/release libraries
|
||||
FIND_PATH(FBX_INCLUDE_DIR "fbxsdk.h"
|
||||
PATHS ${FBX_SEARCH_PATHS}
|
||||
PATH_SUFFIXES "include")
|
||||
FIND_LIBRARY( FBX_LIBRARY ${FBX_LIBNAME}
|
||||
PATHS ${FBX_SEARCH_PATHS}
|
||||
PATH_SUFFIXES "lib/${FBX_LIBDIR}")
|
||||
|
||||
FIND_LIBRARY( FBX_LIBRARY_DEBUG ${FBX_LIBNAME_DEBUG}
|
||||
PATHS ${FBX_SEARCH_PATHS}
|
||||
PATH_SUFFIXES "lib/${FBX_LIBDIR}")
|
||||
IF(FBX_LIBRARY AND FBX_LIBRARY_DEBUG AND FBX_INCLUDE_DIR)
|
||||
SET(FBX_FOUND "YES")
|
||||
ELSE()
|
||||
SET(FBX_FOUND "NO")
|
||||
ENDIF()
|
||||
|
||||
ENDIF()
|
||||
@@ -1,172 +0,0 @@
|
||||
# Locate ffmpeg
|
||||
# This module defines
|
||||
# FFMPEG_LIBRARIES
|
||||
# FFMPEG_FOUND, if false, do not try to link to ffmpeg
|
||||
# FFMPEG_INCLUDE_DIR, where to find the headers
|
||||
#
|
||||
# $FFMPEG_DIR is an environment variable that would
|
||||
# correspond to the ./configure --prefix=$FFMPEG_DIR
|
||||
#
|
||||
# Created by Robert Osfield.
|
||||
|
||||
|
||||
#In ffmpeg code, old version use "#include <header.h>" and newer use "#include <libname/header.h>"
|
||||
#In OSG ffmpeg plugin, we used "#include <header.h>" for compatibility with old version of ffmpeg
|
||||
#With the new version of FFmpeg, a file named "time.h" was added that breaks compatibility with the old version of ffmpeg.
|
||||
|
||||
#We have to search the path which contain the header.h (useful for old version)
|
||||
#and search the path which contain the libname/header.h (useful for new version)
|
||||
|
||||
#Then we need to include ${FFMPEG_libname_INCLUDE_DIRS} (in old version case, use by ffmpeg header and osg plugin code)
|
||||
# (in new version case, use by ffmpeg header)
|
||||
#and ${FFMPEG_libname_INCLUDE_DIRS/libname} (in new version case, use by osg plugin code)
|
||||
|
||||
|
||||
# Macro to find header and lib directories
|
||||
# example: FFMPEG_FIND(AVFORMAT avformat avformat.h)
|
||||
MACRO(FFMPEG_FIND varname shortname headername)
|
||||
# old version of ffmpeg put header in $prefix/include/[ffmpeg]
|
||||
# so try to find header in include directory
|
||||
|
||||
FIND_PATH(FFMPEG_${varname}_INCLUDE_DIRS lib${shortname}/${headername}
|
||||
PATHS
|
||||
${FFMPEG_ROOT}/include
|
||||
$ENV{FFMPEG_DIR}/include
|
||||
${FFMPEG_ROOT}
|
||||
$ENV{FFMPEG_DIR}
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/include
|
||||
/usr/include
|
||||
/sw/include # Fink
|
||||
/opt/local/include # DarwinPorts
|
||||
/opt/csw/include # Blastwave
|
||||
/opt/include
|
||||
/usr/freeware/include
|
||||
PATH_SUFFIXES ffmpeg
|
||||
DOC "Location of FFMPEG Headers"
|
||||
)
|
||||
|
||||
FIND_PATH(FFMPEG_${varname}_INCLUDE_DIRS ${headername}
|
||||
PATHS
|
||||
${FFMPEG_ROOT}/include
|
||||
$ENV{FFMPEG_DIR}/include
|
||||
${FFMPEG_ROOT}
|
||||
$ENV{FFMPEG_DIR}
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/include
|
||||
/usr/include
|
||||
/sw/include # Fink
|
||||
/opt/local/include # DarwinPorts
|
||||
/opt/csw/include # Blastwave
|
||||
/opt/include
|
||||
/usr/freeware/include
|
||||
PATH_SUFFIXES ffmpeg
|
||||
DOC "Location of FFMPEG Headers"
|
||||
)
|
||||
|
||||
FIND_LIBRARY(FFMPEG_${varname}_LIBRARIES
|
||||
NAMES ${shortname}
|
||||
PATHS
|
||||
${FFMPEG_ROOT}/lib
|
||||
$ENV{FFMPEG_DIR}/lib
|
||||
${FFMPEG_ROOT}/lib${shortname}
|
||||
$ENV{FFMPEG_DIR}/lib${shortname}
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/lib
|
||||
/usr/local/lib64
|
||||
/usr/lib
|
||||
/usr/lib64
|
||||
/sw/lib
|
||||
/opt/local/lib
|
||||
/opt/csw/lib
|
||||
/opt/lib
|
||||
/usr/freeware/lib64
|
||||
DOC "Location of FFMPEG Libraries"
|
||||
)
|
||||
|
||||
IF (FFMPEG_${varname}_LIBRARIES AND FFMPEG_${varname}_INCLUDE_DIRS)
|
||||
SET(FFMPEG_${varname}_FOUND 1)
|
||||
ENDIF(FFMPEG_${varname}_LIBRARIES AND FFMPEG_${varname}_INCLUDE_DIRS)
|
||||
|
||||
ENDMACRO(FFMPEG_FIND)
|
||||
|
||||
SET(FFMPEG_ROOT "$ENV{FFMPEG_DIR}" CACHE PATH "Location of FFMPEG")
|
||||
|
||||
# find stdint.h
|
||||
IF(MSVC)
|
||||
|
||||
FIND_PATH(FFMPEG_STDINT_INCLUDE_DIR stdint.h
|
||||
PATHS
|
||||
${FFMPEG_ROOT}/include
|
||||
$ENV{FFMPEG_DIR}/include
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/include
|
||||
/usr/include
|
||||
/sw/include # Fink
|
||||
/opt/local/include # DarwinPorts
|
||||
/opt/csw/include # Blastwave
|
||||
/opt/include
|
||||
/usr/freeware/include
|
||||
PATH_SUFFIXES ffmpeg
|
||||
DOC "Location of FFMPEG stdint.h Header"
|
||||
)
|
||||
|
||||
IF (FFMPEG_STDINT_INCLUDE_DIR)
|
||||
SET(STDINT_OK TRUE)
|
||||
ENDIF()
|
||||
|
||||
ELSE()
|
||||
|
||||
SET(STDINT_OK TRUE)
|
||||
|
||||
ENDIF()
|
||||
|
||||
FFMPEG_FIND(LIBAVFORMAT avformat avformat.h)
|
||||
FFMPEG_FIND(LIBAVDEVICE avdevice avdevice.h)
|
||||
FFMPEG_FIND(LIBAVCODEC avcodec avcodec.h)
|
||||
FFMPEG_FIND(LIBAVUTIL avutil avutil.h)
|
||||
FFMPEG_FIND(LIBSWRESAMPLE swresample swresample.h)
|
||||
FFMPEG_FIND(LIBAVRESAMPLE avresample avresample.h)
|
||||
FFMPEG_FIND(LIBSWSCALE swscale swscale.h) # not sure about the header to look for here.
|
||||
|
||||
SET(FFMPEG_FOUND "NO")
|
||||
# Note we don't check FFMPEG_LIBSWSCALE_FOUND here, it's optional.
|
||||
IF (FFMPEG_LIBAVFORMAT_FOUND AND FFMPEG_LIBAVDEVICE_FOUND AND FFMPEG_LIBAVCODEC_FOUND AND FFMPEG_LIBAVUTIL_FOUND AND STDINT_OK
|
||||
AND ( FFMPEG_LIBSWRESAMPLE_FOUND OR FFMPEG_LIBAVRESAMPLE_FOUND ) )
|
||||
|
||||
SET(FFMPEG_FOUND "YES")
|
||||
|
||||
SET(FFMPEG_INCLUDE_DIRS
|
||||
${FFMPEG_LIBAVFORMAT_INCLUDE_DIRS}
|
||||
${FFMPEG_LIBAVDEVICE_INCLUDE_DIRS}
|
||||
${FFMPEG_LIBAVCODEC_INCLUDE_DIRS}
|
||||
${FFMPEG_LIBAVUTIL_INCLUDE_DIRS}
|
||||
)
|
||||
|
||||
# Using the new include style for FFmpeg prevents issues with #include <time.h>
|
||||
IF (FFMPEG_STDINT_INCLUDE_DIR)
|
||||
SET(FFMPEG_INCLUDE_DIRS
|
||||
${FFMPEG_INCLUDE_DIRS}
|
||||
${FFMPEG_STDINT_INCLUDE_DIR}
|
||||
)
|
||||
ENDIF()
|
||||
|
||||
|
||||
SET(FFMPEG_LIBRARY_DIRS ${FFMPEG_LIBAVFORMAT_LIBRARY_DIRS})
|
||||
|
||||
# Note we don't add FFMPEG_LIBSWSCALE_LIBRARIES here, it will be added if found later.
|
||||
SET(FFMPEG_LIBRARIES
|
||||
${FFMPEG_LIBAVFORMAT_LIBRARIES}
|
||||
${FFMPEG_LIBAVDEVICE_LIBRARIES}
|
||||
${FFMPEG_LIBAVCODEC_LIBRARIES}
|
||||
${FFMPEG_LIBAVUTIL_LIBRARIES})
|
||||
|
||||
ELSE ()
|
||||
|
||||
# MESSAGE(STATUS "Could not find FFMPEG")
|
||||
|
||||
ENDIF()
|
||||
@@ -1,4 +1,4 @@
|
||||
# Locate FLTK
|
||||
# Locate gdal
|
||||
# This module defines
|
||||
# FLTK_LIBRARY
|
||||
# FLTK_FOUND, if false, do not try to link to gdal
|
||||
@@ -9,18 +9,12 @@
|
||||
#
|
||||
# Created by Robert Osfield.
|
||||
|
||||
# prefer FindFLTK from cmake distribution
|
||||
if(EXISTS ${CMAKE_ROOT}/Modules/FindFLTK.cmake)
|
||||
include(${CMAKE_ROOT}/Modules/FindFLTK.cmake)
|
||||
|
||||
if(FLTK_FOUND)
|
||||
return()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
FIND_PATH(FLTK_INCLUDE_DIR Fl/Fl.H Fl/Fl.h
|
||||
$ENV{FLTK_DIR}/include
|
||||
$ENV{FLTK_DIR}
|
||||
$ENV{OSGDIR}/include
|
||||
$ENV{OSGDIR}
|
||||
$ENV{OSG_ROOT}/include
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/include
|
||||
@@ -29,6 +23,7 @@ FIND_PATH(FLTK_INCLUDE_DIR Fl/Fl.H Fl/Fl.h
|
||||
/opt/local/include # DarwinPorts
|
||||
/opt/csw/include # Blastwave
|
||||
/opt/include
|
||||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/include
|
||||
/usr/freeware/include
|
||||
)
|
||||
|
||||
@@ -39,6 +34,9 @@ MACRO(FIND_FLTK_LIBRARY MYLIBRARY MYLIBRARYNAME)
|
||||
PATHS
|
||||
$ENV{FLTK_DIR}/lib
|
||||
$ENV{FLTK_DIR}
|
||||
$ENV{OSGDIR}/lib
|
||||
$ENV{OSGDIR}
|
||||
$ENV{OSG_ROOT}/lib
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/lib
|
||||
@@ -47,6 +45,7 @@ MACRO(FIND_FLTK_LIBRARY MYLIBRARY MYLIBRARYNAME)
|
||||
/opt/local/lib
|
||||
/opt/csw/lib
|
||||
/opt/lib
|
||||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/lib
|
||||
/usr/freeware/lib64
|
||||
)
|
||||
|
||||
|
||||
@@ -12,6 +12,9 @@
|
||||
FIND_PATH(FOX_INCLUDE_DIR fx.h
|
||||
$ENV{FOX_DIR}/include/fox-1.6
|
||||
$ENV{FOX_DIR}/fox-1.6
|
||||
$ENV{OSGDIR}/include/fox-1.6
|
||||
$ENV{OSGDIR}/fox-1.6
|
||||
$ENV{OSG_ROOT}/include/fox-1.6
|
||||
~/Library/Frameworks/fox-1.6
|
||||
/Library/Frameworks/fox-1.6
|
||||
/usr/local/include/fox-1.6
|
||||
@@ -20,9 +23,13 @@ FIND_PATH(FOX_INCLUDE_DIR fx.h
|
||||
/opt/local/include/fox-1.6 # DarwinPorts
|
||||
/opt/csw/include/fox-1.6 # Blastwave
|
||||
/opt/include/fox-1.6
|
||||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/include/fox-1.6
|
||||
/usr/freeware/include/fox-1.6
|
||||
$ENV{FOX_DIR}/include
|
||||
$ENV{FOX_DIR}
|
||||
$ENV{OSGDIR}/include
|
||||
$ENV{OSGDIR}
|
||||
$ENV{OSG_ROOT}/include
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/include
|
||||
@@ -31,6 +38,7 @@ FIND_PATH(FOX_INCLUDE_DIR fx.h
|
||||
/opt/local/include # DarwinPorts
|
||||
/opt/csw/include # Blastwave
|
||||
/opt/include
|
||||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/include
|
||||
/usr/freeware/include
|
||||
)
|
||||
|
||||
@@ -41,6 +49,9 @@ MACRO(FIND_FOX_LIBRARY MYLIBRARY MYLIBRARYNAME)
|
||||
PATHS
|
||||
$ENV{FOX_DIR}/lib
|
||||
$ENV{FOX_DIR}
|
||||
$ENV{OSGDIR}/lib
|
||||
$ENV{OSGDIR}
|
||||
$ENV{OSG_ROOT}/lib
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/lib
|
||||
@@ -49,6 +60,7 @@ MACRO(FIND_FOX_LIBRARY MYLIBRARY MYLIBRARYNAME)
|
||||
/opt/local/lib
|
||||
/opt/csw/lib
|
||||
/opt/lib
|
||||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/lib
|
||||
/usr/freeware/lib64
|
||||
)
|
||||
|
||||
|
||||
@@ -1,98 +0,0 @@
|
||||
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
||||
# file Copyright.txt or https://cmake.org/licensing for details.
|
||||
#[[=======================================================================.rst:
|
||||
# FindFontconfig
|
||||
# --------------
|
||||
#
|
||||
# Find Fontconfig headers and library.
|
||||
#
|
||||
# Imported Targets
|
||||
# ^^^^^^^^^^^^^^^^
|
||||
#
|
||||
# ``Fontconfig::Fontconfig``
|
||||
# The Fontconfig library, if found.
|
||||
#
|
||||
# Result Variables
|
||||
# ^^^^^^^^^^^^^^^^
|
||||
#
|
||||
# This will define the following variables in your project:
|
||||
#
|
||||
# ``FONTCONFIG_FOUND``
|
||||
# true if (the requested version of) Fontconfig is available.
|
||||
# ``FONTCONFIG_VERSION``
|
||||
# the version of Fontconfig.
|
||||
# ``FONTCONFIG_LIBRARIES``
|
||||
# the libraries to link against to use Fontconfig.
|
||||
# ``FONTCONFIG_INCLUDE_DIRS``
|
||||
# where to find the Fontconfig headers.
|
||||
# ``FONTCONFIG_COMPILE_OPTIONS``
|
||||
# this should be passed to target_compile_options(), if the
|
||||
# target is not used for linking
|
||||
#=======================================================================]]
|
||||
|
||||
# use pkg-config to get the directories and then use these values
|
||||
# in the FIND_PATH() and FIND_LIBRARY() calls
|
||||
find_package(PkgConfig QUIET)
|
||||
pkg_check_modules(PKG_FONTCONFIG QUIET fontconfig)
|
||||
set(FONTCONFIG_COMPILE_OPTIONS ${PKG_FONTCONFIG_CFLAGS_OTHER})
|
||||
set(FONTCONFIG_VERSION ${PKG_FONTCONFIG_VERSION})
|
||||
|
||||
find_path( FONTCONFIG_INCLUDE_DIR
|
||||
NAMES
|
||||
fontconfig/fontconfig.h
|
||||
HINTS
|
||||
${PKG_FONTCONFIG_INCLUDE_DIRS}
|
||||
/usr/X11/include
|
||||
)
|
||||
|
||||
find_library( FONTCONFIG_LIBRARY
|
||||
NAMES
|
||||
fontconfig
|
||||
PATHS
|
||||
${PKG_FONTCONFIG_LIBRARY_DIRS}
|
||||
)
|
||||
|
||||
if (FONTCONFIG_INCLUDE_DIR AND NOT FONTCONFIG_VERSION)
|
||||
file(STRINGS ${FONTCONFIG_INCLUDE_DIR}/fontconfig/fontconfig.h _contents REGEX "^#define[ \t]+FC_[A-Z]+[ \t]+[0-9]+$")
|
||||
unset(FONTCONFIG_VERSION)
|
||||
foreach(VPART MAJOR MINOR REVISION)
|
||||
foreach(VLINE ${_contents})
|
||||
if(VLINE MATCHES "^#define[\t ]+FC_${VPART}[\t ]+([0-9]+)$")
|
||||
set(FONTCONFIG_VERSION_PART "${CMAKE_MATCH_1}")
|
||||
if(FONTCONFIG_VERSION)
|
||||
string(APPEND FONTCONFIG_VERSION ".${FONTCONFIG_VERSION_PART}")
|
||||
else()
|
||||
set(FONTCONFIG_VERSION "${FONTCONFIG_VERSION_PART}")
|
||||
endif()
|
||||
endif()
|
||||
endforeach()
|
||||
endforeach()
|
||||
endif ()
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
find_package_handle_standard_args(Fontconfig
|
||||
FOUND_VAR
|
||||
FONTCONFIG_FOUND
|
||||
REQUIRED_VARS
|
||||
FONTCONFIG_LIBRARY
|
||||
FONTCONFIG_INCLUDE_DIR
|
||||
VERSION_VAR
|
||||
FONTCONFIG_VERSION
|
||||
)
|
||||
|
||||
|
||||
if(FONTCONFIG_FOUND AND NOT TARGET Fontconfig::Fontconfig)
|
||||
add_library(Fontconfig::Fontconfig UNKNOWN IMPORTED)
|
||||
set_target_properties(Fontconfig::Fontconfig PROPERTIES
|
||||
IMPORTED_LOCATION "${FONTCONFIG_LIBRARY}"
|
||||
INTERFACE_COMPILE_OPTIONS "${FONTCONFIG_COMPILE_OPTIONS}"
|
||||
INTERFACE_INCLUDE_DIRECTORIES "${FONTCONFIG_INCLUDE_DIR}"
|
||||
)
|
||||
endif()
|
||||
|
||||
mark_as_advanced(FONTCONFIG_LIBRARY FONTCONFIG_INCLUDE_DIR)
|
||||
|
||||
if(FONTCONFIG_FOUND)
|
||||
set(FONTCONFIG_LIBRARIES ${FONTCONFIG_LIBRARY})
|
||||
set(FONTCONFIG_INCLUDE_DIRS ${FONTCONFIG_INCLUDE_DIR})
|
||||
endif()
|
||||
117
CMakeModules/FindFreeType.cmake
Normal file
117
CMakeModules/FindFreeType.cmake
Normal file
@@ -0,0 +1,117 @@
|
||||
# - Locate FreeType library
|
||||
# This module defines
|
||||
# FREETYPE_LIBRARY, the library to link against
|
||||
# FREETYPE_FOUND, if false, do not try to link to FREETYPE
|
||||
# FREETYPE_INCLUDE_DIRS, where to find headers.
|
||||
# This is the concatenation of the paths:
|
||||
# FREETYPE_INCLUDE_DIR_ft2build
|
||||
# FREETYPE_INCLUDE_DIR_freetype2
|
||||
#
|
||||
# $FREETYPE_DIR is an environment variable that would
|
||||
# correspond to the ./configure --prefix=$FREETYPE_DIR
|
||||
# used in building FREETYPE.
|
||||
# Created by Eric Wing.
|
||||
|
||||
# Ugh, FreeType seems to use some #include trickery which
|
||||
# makes this harder than it should be. It looks like they
|
||||
# put ft2build.h in a common/easier-to-find location which
|
||||
# then contains a #include to a more specific header in a
|
||||
# more specific location (#include <freetype/config/ftheader.h>).
|
||||
# Then from there, they need to set a bunch of #define's
|
||||
# so you can do something like:
|
||||
# #include FT_FREETYPE_H
|
||||
# Unfortunately, using CMake's mechanisms like INCLUDE_DIRECTORIES()
|
||||
# wants explicit full paths and this trickery doesn't work too well.
|
||||
# I'm going to attempt to cut out the middleman and hope
|
||||
# everything still works.
|
||||
FIND_PATH(FREETYPE_INCLUDE_DIR_ft2build ft2build.h
|
||||
PATHS
|
||||
$ENV{FREETYPE_DIR}
|
||||
NO_DEFAULT_PATH
|
||||
PATH_SUFFIXES include
|
||||
)
|
||||
FIND_PATH(FREETYPE_INCLUDE_DIR_ft2build ft2build.h
|
||||
PATHS ${CMAKE_PREFIX_PATH} # Unofficial: We are proposing this.
|
||||
NO_DEFAULT_PATH
|
||||
PATH_SUFFIXES include
|
||||
)
|
||||
FIND_PATH(FREETYPE_INCLUDE_DIR_ft2build ft2build.h
|
||||
PATHS
|
||||
/usr/local
|
||||
/usr
|
||||
/usr/local/X11R6
|
||||
/usr/local/X11
|
||||
/usr/X11R6
|
||||
/usr/X11
|
||||
/sw
|
||||
/opt/local
|
||||
/opt/csw
|
||||
/opt
|
||||
/usr/freeware
|
||||
PATH_SUFFIXES include
|
||||
)
|
||||
|
||||
FIND_PATH(FREETYPE_INCLUDE_DIR_freetype2 freetype/config/ftheader.h
|
||||
$ENV{FREETYPE_DIR}/include/freetype2
|
||||
NO_DEFAULT_PATH
|
||||
)
|
||||
FIND_PATH(FREETYPE_INCLUDE_DIR_freetype2 freetype/config/ftheader.h
|
||||
PATHS ${CMAKE_PREFIX_PATH} # Unofficial: We are proposing this.
|
||||
NO_DEFAULT_PATH
|
||||
PATH_SUFFIXES include/freetype2
|
||||
)
|
||||
FIND_PATH(FREETYPE_INCLUDE_DIR_freetype2 freetype/config/ftheader.h
|
||||
/usr/local/include/freetype2
|
||||
/usr/include/freetype2
|
||||
/usr/local/X11R6/include/freetype2
|
||||
/usr/local/X11/include/freetype2
|
||||
/usr/X11R6/include/freetype2
|
||||
/usr/X11/include/freetype2
|
||||
/sw/include/freetype2
|
||||
/opt/local/include/freetype2
|
||||
/opt/csw/include/freetype2
|
||||
/opt/include/freetype2
|
||||
/usr/freeware/include/freetype2
|
||||
)
|
||||
|
||||
FIND_LIBRARY(FREETYPE_LIBRARY
|
||||
NAMES freetype libfreetype freetype219
|
||||
PATHS
|
||||
$ENV{FREETYPE_DIR}
|
||||
NO_DEFAULT_PATH
|
||||
PATH_SUFFIXES lib64 lib
|
||||
)
|
||||
FIND_LIBRARY(FREETYPE_LIBRARY
|
||||
NAMES freetype libfreetype freetype219
|
||||
PATHS ${CMAKE_PREFIX_PATH} # Unofficial: We are proposing this.
|
||||
NO_DEFAULT_PATH
|
||||
PATH_SUFFIXES lib64 lib
|
||||
)
|
||||
FIND_LIBRARY(FREETYPE_LIBRARY
|
||||
NAMES freetype libfreetype freetype219
|
||||
PATHS
|
||||
/usr/local
|
||||
/usr
|
||||
/usr/local/X11R6
|
||||
/usr/local/X11
|
||||
/usr/X11R6
|
||||
/usr/X11
|
||||
/sw
|
||||
/opt/local
|
||||
/opt/csw
|
||||
/opt
|
||||
/usr/freeware
|
||||
PATH_SUFFIXES lib64 lib
|
||||
)
|
||||
|
||||
IF(FREETYPE_INCLUDE_DIR_ft2build AND FREETYPE_INCLUDE_DIR_freetype2)
|
||||
SET(FREETYPE_INCLUDE_DIRS "${FREETYPE_INCLUDE_DIR_ft2build};${FREETYPE_INCLUDE_DIR_freetype2}")
|
||||
ENDIF(FREETYPE_INCLUDE_DIR_ft2build AND FREETYPE_INCLUDE_DIR_freetype2)
|
||||
|
||||
|
||||
SET(FREETYPE_FOUND "NO")
|
||||
IF(FREETYPE_LIBRARY AND FREETYPE_INCLUDE_DIRS)
|
||||
SET(FREETYPE_FOUND "YES")
|
||||
ENDIF(FREETYPE_LIBRARY AND FREETYPE_INCLUDE_DIRS)
|
||||
|
||||
|
||||
@@ -1,188 +0,0 @@
|
||||
#.rst:
|
||||
# FindFreetype
|
||||
# ------------
|
||||
#
|
||||
# Locate FreeType library
|
||||
#
|
||||
# This module defines
|
||||
#
|
||||
# ::
|
||||
#
|
||||
# FREETYPE_LIBRARIES, the library to link against
|
||||
# FREETYPE_FOUND, if false, do not try to link to FREETYPE
|
||||
# FREETYPE_INCLUDE_DIRS, where to find headers.
|
||||
# FREETYPE_VERSION_STRING, the version of freetype found (since CMake 2.8.8)
|
||||
# This is the concatenation of the paths:
|
||||
# FREETYPE_INCLUDE_DIR_ft2build
|
||||
# FREETYPE_INCLUDE_DIR_freetype2
|
||||
#
|
||||
#
|
||||
#
|
||||
# $FREETYPE_DIR is an environment variable that would correspond to the
|
||||
# ./configure --prefix=$FREETYPE_DIR used in building FREETYPE.
|
||||
|
||||
#=============================================================================
|
||||
# Copyright 2000-2016 Kitware, Inc.
|
||||
# Copyright 2000-2011 Insight Software Consortium
|
||||
# All rights reserved.
|
||||
#
|
||||
# Redistribution and use in source and binary forms, with or without
|
||||
# modification, are permitted provided that the following conditions
|
||||
# are met:
|
||||
#
|
||||
# * Redistributions of source code must retain the above copyright
|
||||
# notice, this list of conditions and the following disclaimer.
|
||||
#
|
||||
# * Redistributions in binary form must reproduce the above copyright
|
||||
# notice, this list of conditions and the following disclaimer in the
|
||||
# documentation and/or other materials provided with the distribution.
|
||||
#
|
||||
# * Neither the names of Kitware, Inc., the Insight Software Consortium,
|
||||
# nor the names of their contributors may be used to endorse or promote
|
||||
# products derived from this software without specific prior written
|
||||
# permission.
|
||||
#
|
||||
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
# HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
#=============================================================================
|
||||
|
||||
# Created by Eric Wing.
|
||||
# Modifications by Alexander Neundorf.
|
||||
# This file has been renamed to "FindFreetype.cmake" instead of the correct
|
||||
# "FindFreeType.cmake" in order to be compatible with the one from KDE4, Alex.
|
||||
|
||||
# Ugh, FreeType seems to use some #include trickery which
|
||||
# makes this harder than it should be. It looks like they
|
||||
# put ft2build.h in a common/easier-to-find location which
|
||||
# then contains a #include to a more specific header in a
|
||||
# more specific location (#include <freetype/config/ftheader.h>).
|
||||
# Then from there, they need to set a bunch of #define's
|
||||
# so you can do something like:
|
||||
# #include FT_FREETYPE_H
|
||||
# Unfortunately, using CMake's mechanisms like include_directories()
|
||||
# wants explicit full paths and this trickery doesn't work too well.
|
||||
# I'm going to attempt to cut out the middleman and hope
|
||||
# everything still works.
|
||||
|
||||
# Adapted for OpenSceneGraph until the updates here for finding the debug Windows library freetyped are released with CMake
|
||||
|
||||
set(FREETYPE_FIND_ARGS
|
||||
HINTS
|
||||
ENV FREETYPE_DIR
|
||||
PATHS
|
||||
/usr/X11R6
|
||||
/usr/local/X11R6
|
||||
/usr/local/X11
|
||||
/usr/freeware
|
||||
ENV GTKMM_BASEPATH
|
||||
[HKEY_CURRENT_USER\\SOFTWARE\\gtkmm\\2.4;Path]
|
||||
[HKEY_LOCAL_MACHINE\\SOFTWARE\\gtkmm\\2.4;Path]
|
||||
)
|
||||
|
||||
find_path(
|
||||
FREETYPE_INCLUDE_DIR_ft2build
|
||||
ft2build.h
|
||||
${FREETYPE_FIND_ARGS}
|
||||
PATH_SUFFIXES
|
||||
include/freetype2
|
||||
include
|
||||
freetype2
|
||||
)
|
||||
|
||||
find_path(
|
||||
FREETYPE_INCLUDE_DIR_freetype2
|
||||
NAMES
|
||||
freetype/config/ftheader.h
|
||||
config/ftheader.h
|
||||
${FREETYPE_FIND_ARGS}
|
||||
PATH_SUFFIXES
|
||||
include/freetype2
|
||||
include
|
||||
freetype2
|
||||
)
|
||||
|
||||
if(NOT FREETYPE_LIBRARY)
|
||||
find_library(FREETYPE_LIBRARY_RELEASE
|
||||
NAMES
|
||||
freetype
|
||||
libfreetype
|
||||
freetype219
|
||||
${FREETYPE_FIND_ARGS}
|
||||
PATH_SUFFIXES
|
||||
lib
|
||||
)
|
||||
find_library(FREETYPE_LIBRARY_DEBUG
|
||||
NAMES
|
||||
freetyped
|
||||
libfreetyped
|
||||
freetype219d
|
||||
${FREETYPE_FIND_ARGS}
|
||||
PATH_SUFFIXES
|
||||
lib
|
||||
)
|
||||
include(SelectLibraryConfigurations) #OSG Look in CMake Modules dir
|
||||
select_library_configurations(FREETYPE)
|
||||
endif()
|
||||
|
||||
unset(FREETYPE_FIND_ARGS)
|
||||
|
||||
# set the user variables
|
||||
if(FREETYPE_INCLUDE_DIR_ft2build AND FREETYPE_INCLUDE_DIR_freetype2)
|
||||
set(FREETYPE_INCLUDE_DIRS "${FREETYPE_INCLUDE_DIR_ft2build};${FREETYPE_INCLUDE_DIR_freetype2}")
|
||||
list(REMOVE_DUPLICATES FREETYPE_INCLUDE_DIRS)
|
||||
endif()
|
||||
set(FREETYPE_LIBRARIES "${FREETYPE_LIBRARY}")
|
||||
|
||||
if(EXISTS "${FREETYPE_INCLUDE_DIR_freetype2}/freetype/freetype.h")
|
||||
set(FREETYPE_H "${FREETYPE_INCLUDE_DIR_freetype2}/freetype/freetype.h")
|
||||
elseif(EXISTS "${FREETYPE_INCLUDE_DIR_freetype2}/freetype.h")
|
||||
set(FREETYPE_H "${FREETYPE_INCLUDE_DIR_freetype2}/freetype.h")
|
||||
endif()
|
||||
|
||||
if(FREETYPE_INCLUDE_DIR_freetype2 AND FREETYPE_H)
|
||||
file(STRINGS "${FREETYPE_H}" freetype_version_str
|
||||
REGEX "^#[\t ]*define[\t ]+FREETYPE_(MAJOR|MINOR|PATCH)[\t ]+[0-9]+$")
|
||||
|
||||
unset(FREETYPE_VERSION_STRING)
|
||||
foreach(VPART MAJOR MINOR PATCH)
|
||||
foreach(VLINE ${freetype_version_str})
|
||||
if(VLINE MATCHES "^#[\t ]*define[\t ]+FREETYPE_${VPART}[\t ]+([0-9]+)$")
|
||||
set(FREETYPE_VERSION_PART "${CMAKE_MATCH_1}")
|
||||
if(FREETYPE_VERSION_STRING)
|
||||
set(FREETYPE_VERSION_STRING "${FREETYPE_VERSION_STRING}.${FREETYPE_VERSION_PART}")
|
||||
else()
|
||||
set(FREETYPE_VERSION_STRING "${FREETYPE_VERSION_PART}")
|
||||
endif()
|
||||
unset(FREETYPE_VERSION_PART)
|
||||
endif()
|
||||
endforeach()
|
||||
endforeach()
|
||||
endif()
|
||||
|
||||
|
||||
# handle the QUIETLY and REQUIRED arguments and set FREETYPE_FOUND to TRUE if
|
||||
# all listed variables are TRUE
|
||||
include(FindPackageHandleStandardArgs) #OSG Look in CMake Modules dir
|
||||
|
||||
find_package_handle_standard_args(
|
||||
Freetype
|
||||
REQUIRED_VARS
|
||||
FREETYPE_LIBRARY
|
||||
FREETYPE_INCLUDE_DIRS
|
||||
VERSION_VAR
|
||||
FREETYPE_VERSION_STRING
|
||||
)
|
||||
|
||||
mark_as_advanced(
|
||||
FREETYPE_INCLUDE_DIR_freetype2
|
||||
FREETYPE_INCLUDE_DIR_ft2build
|
||||
)
|
||||
@@ -19,17 +19,7 @@
|
||||
# This makes the presumption that you are include gdal.h like
|
||||
# #include "gdal.h"
|
||||
|
||||
# prefer FindGDAL from cmake distribution
|
||||
if(EXISTS ${CMAKE_ROOT}/Modules/FindGDAL.cmake)
|
||||
include(${CMAKE_ROOT}/Modules/FindGDAL.cmake)
|
||||
|
||||
if(GDAL_FOUND)
|
||||
return()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
FIND_PATH(GDAL_INCLUDE_DIR gdal.h
|
||||
PATHS
|
||||
$ENV{GDAL_DIR}
|
||||
NO_DEFAULT_PATH
|
||||
PATH_SUFFIXES include
|
||||
@@ -66,20 +56,20 @@ FIND_PATH(GDAL_INCLUDE_DIR gdal.h
|
||||
)
|
||||
|
||||
FIND_LIBRARY(GDAL_LIBRARY
|
||||
NAMES gdal gdal_i gdal1.7.0 gdal1.6.0 gdal1.5.0 gdal1.4.0 gdal1.3.2 GDAL
|
||||
NAMES gdal gdal_i gdal1.5.0 gdal1.4.0 gdal1.3.2 GDAL
|
||||
PATHS
|
||||
$ENV{GDAL_DIR}
|
||||
NO_DEFAULT_PATH
|
||||
PATH_SUFFIXES lib64 lib
|
||||
)
|
||||
FIND_LIBRARY(GDAL_LIBRARY
|
||||
NAMES gdal gdal_i gdal1.7.0 gdal1.6.0 gdal1.5.0 gdal1.4.0 gdal1.3.2 GDAL
|
||||
NAMES gdal gdal_i gdal1.5.0 gdal1.4.0 gdal1.3.2 GDAL
|
||||
PATHS ${CMAKE_PREFIX_PATH} # Unofficial: We are proposing this.
|
||||
NO_DEFAULT_PATH
|
||||
PATH_SUFFIXES lib64 lib
|
||||
)
|
||||
FIND_LIBRARY(GDAL_LIBRARY
|
||||
NAMES gdal gdal_i gdal1.7.0 gdal1.6.0 gdal1.5.0 gdal1.4.0 gdal1.3.2 GDAL
|
||||
NAMES gdal gdal_i gdal1.5.0 gdal1.4.0 gdal1.3.2 GDAL
|
||||
PATHS
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
|
||||
@@ -31,6 +31,7 @@ FIND_PATH(GIFLIB_INCLUDE_DIR gif_lib.h
|
||||
/opt/local/include # DarwinPorts
|
||||
/opt/csw/include # Blastwave
|
||||
/opt/include
|
||||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/include
|
||||
/usr/freeware/include
|
||||
)
|
||||
|
||||
@@ -60,6 +61,7 @@ FIND_LIBRARY(GIFLIB_LIBRARY
|
||||
/opt/local
|
||||
/opt/csw
|
||||
/opt
|
||||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]
|
||||
/usr/freeware
|
||||
PATH_SUFFIXES lib64 lib
|
||||
)
|
||||
|
||||
@@ -1,36 +0,0 @@
|
||||
# Finds the OpenGL Core Profile (cp) header file.
|
||||
# Looks for glcorearb.h
|
||||
#
|
||||
# This script defines the following:
|
||||
# GLCORE_FOUND // Set to TRUE if glcorearb.h is found
|
||||
# GLCORE_INCLUDE_DIR // Parent directory of directory (gl, GL3, or OpenGL) containing the CP header.
|
||||
# GLCORE_GLCOREARB_HEADER // advanced
|
||||
#
|
||||
# GLCORE_ROOT can be set as an environment variable or a CMake variable,
|
||||
# to the parent directory of the gl, GL3, or OpenGL directory containing the CP header.
|
||||
#
|
||||
|
||||
|
||||
FIND_PATH( GLCORE_GLCOREARB_HEADER
|
||||
NAMES GL/glcorearb.h GL3/glcorearb.h OpenGL/glcorearb.h gl/glcorearb.h
|
||||
HINTS ${GLCORE_ROOT}
|
||||
PATHS ENV GLCORE_ROOT
|
||||
)
|
||||
|
||||
set( GLCORE_INCLUDE_DIR )
|
||||
if( GLCORE_GLCOREARB_HEADER )
|
||||
set( GLCORE_INCLUDE_DIR ${GLCORE_GLCOREARB_HEADER} )
|
||||
endif()
|
||||
|
||||
|
||||
# handle the QUIETLY and REQUIRED arguments and set
|
||||
# GLCORE_FOUND to TRUE as appropriate
|
||||
INCLUDE( FindPackageHandleStandardArgs )
|
||||
FIND_PACKAGE_HANDLE_STANDARD_ARGS( GLCORE
|
||||
"Set GLCORE_ROOT as the parent of the directory containing the OpenGL core profile header."
|
||||
GLCORE_INCLUDE_DIR )
|
||||
|
||||
MARK_AS_ADVANCED(
|
||||
GLCORE_INCLUDE_DIR
|
||||
GLCORE_GLCOREARB_HEADER
|
||||
)
|
||||
@@ -1,142 +0,0 @@
|
||||
# - Try to find Glib and its components (gio, gobject etc)
|
||||
# Once done, this will define
|
||||
#
|
||||
# GLIB_FOUND - system has Glib
|
||||
# GLIB_INCLUDE_DIRS - the Glib include directories
|
||||
# GLIB_LIBRARIES - link these to use Glib
|
||||
#
|
||||
# Optionally, the COMPONENTS keyword can be passed to find_package()
|
||||
# and Glib components can be looked for. Currently, the following
|
||||
# components can be used, and they define the following variables if
|
||||
# found:
|
||||
#
|
||||
# gio: GLIB_GIO_LIBRARIES
|
||||
# gobject: GLIB_GOBJECT_LIBRARIES
|
||||
# gmodule: GLIB_GMODULE_LIBRARIES
|
||||
# gthread: GLIB_GTHREAD_LIBRARIES
|
||||
#
|
||||
# Note that the respective _INCLUDE_DIR variables are not set, since
|
||||
# all headers are in the same directory as GLIB_INCLUDE_DIRS.
|
||||
#
|
||||
# Copyright (C) 2012 Raphael Kubo da Costa <rakuco@webkit.org>
|
||||
#
|
||||
# Redistribution and use in source and binary forms, with or without
|
||||
# modification, are permitted provided that the following conditions
|
||||
# are met:
|
||||
# 1. Redistributions of source code must retain the above copyright
|
||||
# notice, this list of conditions and the following disclaimer.
|
||||
# 2. Redistributions in binary form must reproduce the above copyright
|
||||
# notice, this list of conditions and the following disclaimer in the
|
||||
# documentation and/or other materials provided with the distribution.
|
||||
#
|
||||
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND ITS CONTRIBUTORS ``AS
|
||||
# IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
|
||||
# THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR ITS
|
||||
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
|
||||
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
||||
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
|
||||
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
||||
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
if (WIN32)
|
||||
find_library(GLIB_LIBRARIES
|
||||
NAMES glib-2.0
|
||||
PATHS C:/gstreamer/1.0/x86_64/lib
|
||||
)
|
||||
|
||||
else ()
|
||||
find_package(PkgConfig)
|
||||
pkg_check_modules(PC_GLIB QUIET glib-2.0)
|
||||
|
||||
find_library(GLIB_LIBRARIES
|
||||
NAMES glib-2.0
|
||||
HINTS ${PC_GLIB_LIBDIR}
|
||||
${PC_GLIB_LIBRARY_DIRS}
|
||||
)
|
||||
endif ()
|
||||
|
||||
# Files in glib's main include path may include glibconfig.h, which,
|
||||
# for some odd reason, is normally in $LIBDIR/glib-2.0/include.
|
||||
get_filename_component(_GLIB_LIBRARY_DIR ${GLIB_LIBRARIES} PATH)
|
||||
|
||||
find_path(GLIBCONFIG_INCLUDE_DIR
|
||||
NAMES glibconfig.h
|
||||
HINTS ${PC_LIBDIR} ${PC_LIBRARY_DIRS} ${_GLIB_LIBRARY_DIR}
|
||||
PATH_SUFFIXES glib-2.0/include
|
||||
)
|
||||
|
||||
if (WIN32)
|
||||
find_path(GLIB_INCLUDE_DIR
|
||||
NAMES glib.h
|
||||
PATHS C:/gstreamer/1.0/x86_64/include
|
||||
PATH_SUFFIXES glib-2.0
|
||||
)
|
||||
else()
|
||||
find_path(GLIB_INCLUDE_DIR
|
||||
NAMES glib.h
|
||||
HINTS ${PC_GLIB_INCLUDEDIR}
|
||||
${PC_GLIB_INCLUDE_DIRS}
|
||||
PATH_SUFFIXES glib-2.0
|
||||
)
|
||||
endif()
|
||||
|
||||
if (GLIBCONFIG_INCLUDE_DIR)
|
||||
|
||||
set(GLIB_INCLUDE_DIRS ${GLIB_INCLUDE_DIR} ${GLIBCONFIG_INCLUDE_DIR})
|
||||
|
||||
# Version detection
|
||||
file(READ "${GLIBCONFIG_INCLUDE_DIR}/glibconfig.h" GLIBCONFIG_H_CONTENTS)
|
||||
string(REGEX MATCH "#define GLIB_MAJOR_VERSION ([0-9]+)" _dummy "${GLIBCONFIG_H_CONTENTS}")
|
||||
set(GLIB_VERSION_MAJOR "${CMAKE_MATCH_1}")
|
||||
string(REGEX MATCH "#define GLIB_MINOR_VERSION ([0-9]+)" _dummy "${GLIBCONFIG_H_CONTENTS}")
|
||||
set(GLIB_VERSION_MINOR "${CMAKE_MATCH_1}")
|
||||
string(REGEX MATCH "#define GLIB_MICRO_VERSION ([0-9]+)" _dummy "${GLIBCONFIG_H_CONTENTS}")
|
||||
set(GLIB_VERSION_MICRO "${CMAKE_MATCH_1}")
|
||||
set(GLIB_VERSION "${GLIB_VERSION_MAJOR}.${GLIB_VERSION_MINOR}.${GLIB_VERSION_MICRO}")
|
||||
|
||||
# Additional Glib components. We only look for libraries, as not all of them
|
||||
# have corresponding headers and all headers are installed alongside the main
|
||||
# glib ones.
|
||||
foreach (_component ${GLIB_FIND_COMPONENTS})
|
||||
if (${_component} STREQUAL "gio")
|
||||
find_library(GLIB_GIO_LIBRARIES NAMES gio-2.0 HINTS ${_GLIB_LIBRARY_DIR})
|
||||
set(ADDITIONAL_REQUIRED_VARS ${ADDITIONAL_REQUIRED_VARS} GLIB_GIO_LIBRARIES)
|
||||
elseif (${_component} STREQUAL "gobject")
|
||||
find_library(GLIB_GOBJECT_LIBRARIES NAMES gobject-2.0 HINTS ${_GLIB_LIBRARY_DIR})
|
||||
set(ADDITIONAL_REQUIRED_VARS ${ADDITIONAL_REQUIRED_VARS} GLIB_GOBJECT_LIBRARIES)
|
||||
elseif (${_component} STREQUAL "gmodule")
|
||||
find_library(GLIB_GMODULE_LIBRARIES NAMES gmodule-2.0 HINTS ${_GLIB_LIBRARY_DIR})
|
||||
set(ADDITIONAL_REQUIRED_VARS ${ADDITIONAL_REQUIRED_VARS} GLIB_GMODULE_LIBRARIES)
|
||||
elseif (${_component} STREQUAL "gthread")
|
||||
find_library(GLIB_GTHREAD_LIBRARIES NAMES gthread-2.0 HINTS ${_GLIB_LIBRARY_DIR})
|
||||
set(ADDITIONAL_REQUIRED_VARS ${ADDITIONAL_REQUIRED_VARS} GLIB_GTHREAD_LIBRARIES)
|
||||
elseif (${_component} STREQUAL "gio-unix")
|
||||
# gio-unix is compiled as part of the gio library, but the include paths
|
||||
# are separate from the shared glib ones. Since this is currently only used
|
||||
# by WebKitGTK+ we don't go to extraordinary measures beyond pkg-config.
|
||||
pkg_check_modules(GIO_UNIX QUIET gio-unix-2.0)
|
||||
endif ()
|
||||
endforeach ()
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
FIND_PACKAGE_HANDLE_STANDARD_ARGS(GLIB REQUIRED_VARS GLIB_INCLUDE_DIRS GLIB_LIBRARIES ${ADDITIONAL_REQUIRED_VARS}
|
||||
VERSION_VAR GLIB_VERSION)
|
||||
|
||||
mark_as_advanced(
|
||||
GLIBCONFIG_INCLUDE_DIR
|
||||
GLIB_GIO_LIBRARIES
|
||||
GLIB_GIO_UNIX_LIBRARIES
|
||||
GLIB_GMODULE_LIBRARIES
|
||||
GLIB_GOBJECT_LIBRARIES
|
||||
GLIB_GTHREAD_LIBRARIES
|
||||
GLIB_INCLUDE_DIR
|
||||
GLIB_INCLUDE_DIRS
|
||||
GLIB_LIBRARIES
|
||||
)
|
||||
|
||||
else()
|
||||
|
||||
endif ()
|
||||
@@ -1,174 +0,0 @@
|
||||
# - Try to find GStreamer and its plugins
|
||||
# Once done, this will define
|
||||
#
|
||||
# GSTREAMER_FOUND - system has GStreamer
|
||||
# GSTREAMER_INCLUDE_DIRS - the GStreamer include directories
|
||||
# GSTREAMER_LIBRARIES - link these to use GStreamer
|
||||
#
|
||||
# Additionally, gstreamer-base is always looked for and required, and
|
||||
# the following related variables are defined:
|
||||
#
|
||||
# GSTREAMER_BASE_INCLUDE_DIRS - gstreamer-base's include directory
|
||||
# GSTREAMER_BASE_LIBRARIES - link to these to use gstreamer-base
|
||||
#
|
||||
# Optionally, the COMPONENTS keyword can be passed to find_package()
|
||||
# and GStreamer plugins can be looked for. Currently, the following
|
||||
# plugins can be searched, and they define the following variables if
|
||||
# found:
|
||||
#
|
||||
# gstreamer-app: GSTREAMER_APP_INCLUDE_DIRS and GSTREAMER_APP_LIBRARIES
|
||||
# gstreamer-audio: GSTREAMER_AUDIO_INCLUDE_DIRS and GSTREAMER_AUDIO_LIBRARIES
|
||||
# gstreamer-fft: GSTREAMER_FFT_INCLUDE_DIRS and GSTREAMER_FFT_LIBRARIES
|
||||
# gstreamer-pbutils: GSTREAMER_PBUTILS_INCLUDE_DIRS and GSTREAMER_PBUTILS_LIBRARIES
|
||||
# gstreamer-video: GSTREAMER_VIDEO_INCLUDE_DIRS and GSTREAMER_VIDEO_LIBRARIES
|
||||
#
|
||||
# Copyright (C) 2012 Raphael Kubo da Costa <rakuco@webkit.org>
|
||||
#
|
||||
# Redistribution and use in source and binary forms, with or without
|
||||
# modification, are permitted provided that the following conditions
|
||||
# are met:
|
||||
# 1. Redistributions of source code must retain the above copyright
|
||||
# notice, this list of conditions and the following disclaimer.
|
||||
# 2. Redistributions in binary form must reproduce the above copyright
|
||||
# notice, this list of conditions and the following disclaimer in the
|
||||
# documentation and/or other materials provided with the distribution.
|
||||
#
|
||||
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND ITS CONTRIBUTORS ``AS
|
||||
# IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
|
||||
# THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR ITS
|
||||
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
|
||||
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
||||
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
|
||||
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
||||
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
# Helper macro to find a GStreamer plugin (or GStreamer itself)
|
||||
# _component_prefix is prepended to the _INCLUDE_DIRS and _LIBRARIES variables (eg. "GSTREAMER_AUDIO")
|
||||
# _pkgconfig_name is the component's pkg-config name (eg. "gstreamer-1.0", or "gstreamer-video-1.0").
|
||||
# _header is the component's header, relative to the gstreamer-1.0 directory (eg. "gst/gst.h").
|
||||
# _library is the component's library name (eg. "gstreamer-1.0" or "gstvideo-1.0")
|
||||
#macro(FIND_GSTREAMER_COMPONENT _component_prefix _pkgconfig_name _header _library)
|
||||
# pkg_check_modules(PC_${_component_prefix} QUIET ${_pkgconfig_name})
|
||||
#
|
||||
# find_path(${_component_prefix}_INCLUDE_DIRS
|
||||
# NAMES ${_header}
|
||||
# HINTS ${PC_${_component_prefix}_INCLUDE_DIRS} ${PC_${_component_prefix}_INCLUDEDIR}
|
||||
# PATH_SUFFIXES gstreamer-1.0
|
||||
# )
|
||||
#
|
||||
# find_library(${_component_prefix}_LIBRARIES
|
||||
# NAMES ${_library}
|
||||
# HINTS ${PC_${_component_prefix}_LIBRARY_DIRS} ${PC_${_component_prefix}_LIBDIR}
|
||||
# )
|
||||
#endmacro()
|
||||
|
||||
if (MSVC)
|
||||
macro(FIND_GSTREAMER_COMPONENT _component_prefix _pkgconfig_name _header _library)
|
||||
find_path(${_component_prefix}_INCLUDE_DIRS
|
||||
NAMES ${_header}
|
||||
PATHS C:/gstreamer/1.0/x86_64/include
|
||||
PATH_SUFFIXES gstreamer-1.0
|
||||
)
|
||||
|
||||
find_library(${_component_prefix}_LIBRARIES
|
||||
NAMES ${_library}
|
||||
PATHS C:/gstreamer/1.0/x86_64/lib
|
||||
)
|
||||
endmacro()
|
||||
else ()
|
||||
|
||||
find_package(PkgConfig)
|
||||
|
||||
macro(FIND_GSTREAMER_COMPONENT _component_prefix _pkgconfig_name _header _library)
|
||||
pkg_check_modules(${_component_prefix} QUIET ${_pkgconfig_name})
|
||||
|
||||
# find_path(${_component_prefix}_INCLUDE_DIRS
|
||||
# NAMES ${_header}
|
||||
# HINTS ${PC_${_component_prefix}_INCLUDE_DIRS} ${PC_${_component_prefix}_INCLUDEDIR}
|
||||
# PATH_SUFFIXES gstreamer-1.0
|
||||
# )
|
||||
|
||||
# find_library(${_component_prefix}_LIBRARIES
|
||||
# NAMES ${_library}
|
||||
# HINTS ${PC_${_component_prefix}_LIBRARY_DIRS} ${PC_${_component_prefix}_LIBDIR}
|
||||
# )
|
||||
endmacro()
|
||||
endif ()
|
||||
|
||||
# ------------------------
|
||||
# 1. Find GStreamer itself
|
||||
# ------------------------
|
||||
|
||||
# 1.1. Find headers and libraries
|
||||
FIND_GSTREAMER_COMPONENT(GSTREAMER gstreamer-1.0 gst/gst.h gstreamer-1.0)
|
||||
FIND_GSTREAMER_COMPONENT(GSTREAMER_BASE gstreamer-base-1.0 gst/gst.h gstbase-1.0)
|
||||
|
||||
|
||||
# 1.2. Check GStreamer version
|
||||
if (GSTREAMER_INCLUDE_DIRS)
|
||||
if (EXISTS "${GSTREAMER_INCLUDE_DIRS}/gst/gstversion.h")
|
||||
file(READ "${GSTREAMER_INCLUDE_DIRS}/gst/gstversion.h" GSTREAMER_VERSION_CONTENTS)
|
||||
|
||||
string(REGEX MATCH "#define +GST_VERSION_MAJOR +\\(([0-9]+)\\)" _dummy "${GSTREAMER_VERSION_CONTENTS}")
|
||||
set(GSTREAMER_VERSION_MAJOR "${CMAKE_MATCH_1}")
|
||||
|
||||
string(REGEX MATCH "#define +GST_VERSION_MINOR +\\(([0-9]+)\\)" _dummy "${GSTREAMER_VERSION_CONTENTS}")
|
||||
set(GSTREAMER_VERSION_MINOR "${CMAKE_MATCH_1}")
|
||||
|
||||
string(REGEX MATCH "#define +GST_VERSION_MICRO +\\(([0-9]+)\\)" _dummy "${GSTREAMER_VERSION_CONTENTS}")
|
||||
set(GSTREAMER_VERSION_MICRO "${CMAKE_MATCH_1}")
|
||||
|
||||
set(GSTREAMER_VERSION "${GSTREAMER_VERSION_MAJOR}.${GSTREAMER_VERSION_MINOR}.${GSTREAMER_VERSION_MICRO}")
|
||||
endif ()
|
||||
endif ()
|
||||
|
||||
|
||||
if ("${GStreamer_FIND_VERSION}" VERSION_GREATER "${GSTREAMER_VERSION}")
|
||||
message(FATAL_ERROR "Required version (" ${GStreamer_FIND_VERSION} ") is higher than found version (" ${GSTREAMER_VERSION} ")")
|
||||
endif ()
|
||||
|
||||
# -------------------------
|
||||
# 2. Find GStreamer plugins
|
||||
# -------------------------
|
||||
|
||||
FIND_GSTREAMER_COMPONENT(GSTREAMER_APP gstreamer-app-1.0 gst/app/gstappsink.h gstapp-1.0)
|
||||
FIND_GSTREAMER_COMPONENT(GSTREAMER_AUDIO gstreamer-audio-1.0 gst/audio/audio.h gstaudio-1.0)
|
||||
FIND_GSTREAMER_COMPONENT(GSTREAMER_FFT gstreamer-fft-1.0 gst/fft/gstfft.h gstfft-1.0)
|
||||
FIND_GSTREAMER_COMPONENT(GSTREAMER_PBUTILS gstreamer-pbutils-1.0 gst/pbutils/pbutils.h gstpbutils-1.0)
|
||||
FIND_GSTREAMER_COMPONENT(GSTREAMER_VIDEO gstreamer-video-1.0 gst/video/video.h gstvideo-1.0)
|
||||
|
||||
# ------------------------------------------------
|
||||
# 3. Process the COMPONENTS passed to FIND_PACKAGE
|
||||
# ------------------------------------------------
|
||||
set(_GSTREAMER_REQUIRED_VARS GSTREAMER_INCLUDE_DIRS GSTREAMER_LIBRARIES GSTREAMER_VERSION GSTREAMER_BASE_INCLUDE_DIRS GSTREAMER_BASE_LIBRARIES)
|
||||
|
||||
foreach (_component ${GStreamer_FIND_COMPONENTS})
|
||||
set(_gst_component "GSTREAMER_${_component}")
|
||||
string(TOUPPER ${_gst_component} _UPPER_NAME)
|
||||
|
||||
list(APPEND _GSTREAMER_REQUIRED_VARS ${_UPPER_NAME}_INCLUDE_DIRS ${_UPPER_NAME}_LIBRARIES)
|
||||
endforeach ()
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
FIND_PACKAGE_HANDLE_STANDARD_ARGS(GStreamer REQUIRED_VARS ${_GSTREAMER_REQUIRED_VARS}
|
||||
VERSION_VAR GSTREAMER_VERSION)
|
||||
|
||||
mark_as_advanced(
|
||||
GSTREAMER_APP_INCLUDE_DIRS
|
||||
GSTREAMER_APP_LIBRARIES
|
||||
GSTREAMER_AUDIO_INCLUDE_DIRS
|
||||
GSTREAMER_AUDIO_LIBRARIES
|
||||
GSTREAMER_BASE_INCLUDE_DIRS
|
||||
GSTREAMER_BASE_LIBRARIES
|
||||
GSTREAMER_FFT_INCLUDE_DIRS
|
||||
GSTREAMER_FFT_LIBRARIES
|
||||
GSTREAMER_INCLUDE_DIRS
|
||||
GSTREAMER_LIBRARIES
|
||||
GSTREAMER_PBUTILS_INCLUDE_DIRS
|
||||
GSTREAMER_PBUTILS_LIBRARIES
|
||||
GSTREAMER_VIDEO_INCLUDE_DIRS
|
||||
GSTREAMER_VIDEO_LIBRARIES
|
||||
)
|
||||
@@ -1,57 +0,0 @@
|
||||
# Locate libgta
|
||||
# This module defines
|
||||
# GTA_FOUND, if false, do not try to link to libgta
|
||||
# GTA_INCLUDE_DIRS, where to find the headers
|
||||
# GTA_LIBRARIES
|
||||
#
|
||||
# $GTA_DIR is an environment variable that would
|
||||
# correspond to the ./configure --prefix=$GTA_DIR
|
||||
# used in building libgta.
|
||||
|
||||
INCLUDE(FindPkgConfig OPTIONAL)
|
||||
|
||||
IF(PKG_CONFIG_FOUND)
|
||||
|
||||
INCLUDE(FindPkgConfig)
|
||||
|
||||
PKG_CHECK_MODULES(GTA gta)
|
||||
|
||||
ENDIF(PKG_CONFIG_FOUND)
|
||||
|
||||
IF(NOT GTA_FOUND)
|
||||
FIND_PATH(GTA_INCLUDE_DIRS gta/gta.hpp
|
||||
$ENV{GTA_DIR}/include
|
||||
$ENV{GTA_DIR}
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/include
|
||||
/usr/include
|
||||
/sw/include # Fink
|
||||
/opt/local/include # DarwinPorts
|
||||
/opt/csw/include # Blastwave
|
||||
/opt/include
|
||||
/usr/freeware/include
|
||||
)
|
||||
|
||||
FIND_LIBRARY(GTA_LIBRARY
|
||||
NAMES gta libgta
|
||||
PATHS
|
||||
$ENV{GTA_DIR}/lib
|
||||
$ENV{GTA_DIR}
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/lib
|
||||
/usr/lib
|
||||
/sw/lib
|
||||
/opt/local/lib
|
||||
/opt/csw/lib
|
||||
/opt/lib
|
||||
/usr/freeware/lib64
|
||||
)
|
||||
|
||||
SET(GTA_FOUND "NO")
|
||||
IF(GTA_LIBRARY AND GTA_INCLUDE_DIRS)
|
||||
SET(GTA_FOUND "YES")
|
||||
ENDIF(GTA_LIBRARY AND GTA_INCLUDE_DIRS)
|
||||
|
||||
ENDIF(NOT GTA_FOUND)
|
||||
@@ -1,16 +0,0 @@
|
||||
#use pkg-config to find various modues
|
||||
INCLUDE(FindPkgConfig OPTIONAL)
|
||||
|
||||
IF(PKG_CONFIG_FOUND)
|
||||
|
||||
INCLUDE(FindPkgConfig)
|
||||
|
||||
PKG_CHECK_MODULES(GTK gtk+-2.0)
|
||||
|
||||
IF(WIN32)
|
||||
PKG_CHECK_MODULES(GTKGL gtkglext-win32-1.0)
|
||||
ELSE()
|
||||
PKG_CHECK_MODULES(GTKGL gtkglext-x11-1.0)
|
||||
ENDIF()
|
||||
|
||||
ENDIF()
|
||||
@@ -1,41 +1,10 @@
|
||||
#
|
||||
# Find Open Inventor
|
||||
#
|
||||
# - Locate Inventor
|
||||
# This module defines:
|
||||
# INVENTOR_FOUND, if false, do not try to link against Inventor.
|
||||
# INVENTOR_INCLUDE_DIR, where to find headers.
|
||||
# INVENTOR_LIBRARY, the library to link against.
|
||||
# INVENTOR_LIBRARY_DEBUG, the debug library to link against.
|
||||
# INVENTOR_SOWIN_LIBRARY, the SoWin library - window binding library for Inventor
|
||||
# INVENTOR_SOWIN_LIBRARY, the SoWin debug library
|
||||
# INVENTOR_SOXT_LIBRARY, the SoXt library - window binding library for Inventor
|
||||
# INVENTOR_SOXT_LIBRARY, the SoXt debug library
|
||||
#
|
||||
|
||||
|
||||
#
|
||||
# Inventor
|
||||
#
|
||||
# notes:
|
||||
# - Coin is honored over SGI Inventor
|
||||
# - Coin is detected by coin-config script, COINDIR environment variable,
|
||||
# and finally standard system locations are searched
|
||||
# - SGI Inventor is searched at standard system locations only
|
||||
#
|
||||
|
||||
# coin-config tells much of Coin instalation (if present)
|
||||
execute_process (COMMAND coin-config --prefix
|
||||
OUTPUT_VARIABLE COIN_PREFIX
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
|
||||
# try to find Inventor includes (priority paths)
|
||||
FIND_PATH(INVENTOR_INCLUDE_DIR Inventor/So.h
|
||||
${COIN_PREFIX}/include
|
||||
$ENV{COINDIR}/include
|
||||
NO_DEFAULT_PATH
|
||||
)
|
||||
|
||||
# try to find Inventor includes (regular paths)
|
||||
FIND_PATH(INVENTOR_INCLUDE_DIR Inventor/So.h
|
||||
/usr/local/include
|
||||
/usr/include
|
||||
@@ -43,164 +12,52 @@ FIND_PATH(INVENTOR_INCLUDE_DIR Inventor/So.h
|
||||
/opt/local/include
|
||||
/opt/csw/include
|
||||
/opt/include
|
||||
$ENV{COINDIR}/include
|
||||
)
|
||||
|
||||
# default Inventor lib search paths
|
||||
SET(INVENTOR_LIB_SEARCH_PATH
|
||||
FIND_LIBRARY(INVENTOR_LIBRARY
|
||||
NAMES coin2 Coin
|
||||
PATHS
|
||||
/usr/local/lib
|
||||
/usr/lib
|
||||
/sw/lib
|
||||
/opt/local/lib
|
||||
/opt/csw/lib
|
||||
/opt/lib
|
||||
$ENV{COINDIR}/lib
|
||||
)
|
||||
IF(NOT INVENTOR_LIBRARY)
|
||||
# If we can't find libCoin try libInventor
|
||||
FIND_LIBRARY(INVENTOR_LIBRARY
|
||||
NAMES Inventor
|
||||
PATHS
|
||||
/usr/local/lib
|
||||
/usr/lib
|
||||
/sw/lib
|
||||
/opt/local/lib
|
||||
/opt/csw/lib
|
||||
/opt/lib
|
||||
)
|
||||
ENDIF(NOT INVENTOR_LIBRARY)
|
||||
|
||||
# try to find Coin release lib (priority paths)
|
||||
FIND_LIBRARY(INVENTOR_LIBRARY_RELEASE
|
||||
NAMES coin5 coin4 coin3 coin2 coin1 Coin
|
||||
PATHS ${COIN_PREFIX}/lib
|
||||
$ENV{COINDIR}/lib
|
||||
NO_DEFAULT_PATH
|
||||
)
|
||||
|
||||
# try to find Coin release lib (regular paths)
|
||||
FIND_LIBRARY(INVENTOR_LIBRARY_RELEASE
|
||||
NAMES coin5 coin4 coin3 coin2 coin1 Coin
|
||||
PATHS ${INVENTOR_LIB_SEARCH_PATH}
|
||||
)
|
||||
|
||||
# try to find SGI Inventor lib
|
||||
FIND_LIBRARY(INVENTOR_LIBRARY_RELEASE
|
||||
NAMES Inventor
|
||||
PATHS ${INVENTOR_LIB_SEARCH_PATH}
|
||||
)
|
||||
|
||||
# try to find Coin debug lib (priority paths)
|
||||
FIND_LIBRARY(INVENTOR_LIBRARY_DEBUG
|
||||
NAMES coin5d coin4d coin3d coin2d coin1d
|
||||
PATHS ${COIN_PREFIX}/lib
|
||||
$ENV{COINDIR}/lib
|
||||
NO_DEFAULT_PATH
|
||||
NAMES coin2d
|
||||
PATHS
|
||||
/usr/local/lib
|
||||
/usr/lib
|
||||
/sw/lib
|
||||
/opt/local/lib
|
||||
/opt/csw/lib
|
||||
/opt/lib
|
||||
$ENV{COINDIR}/lib
|
||||
)
|
||||
IF(NOT INVENTOR_LIBRARY_DEBUG)
|
||||
IF(INVENTOR_LIBRARY)
|
||||
SET(INVENTOR_LIBRARY_DEBUG ${INVENTOR_LIBRARY})
|
||||
ENDIF(INVENTOR_LIBRARY)
|
||||
ENDIF(NOT INVENTOR_LIBRARY_DEBUG)
|
||||
|
||||
# try to find Coin debug lib (regular paths)
|
||||
FIND_LIBRARY(INVENTOR_LIBRARY_DEBUG
|
||||
NAMES coin5d coin4d coin3d coin2d coin1d
|
||||
PATHS ${INVENTOR_LIB_SEARCH_PATH}
|
||||
)
|
||||
|
||||
# set release to debug if only debug found
|
||||
IF(NOT INVENTOR_LIBRARY_RELEASE AND INVENTOR_LIBRARY_DEBUG)
|
||||
SET(INVENTOR_LIBRARY_RELEASE ${INVENTOR_LIBRARY_DEBUG})
|
||||
ENDIF(NOT INVENTOR_LIBRARY_RELEASE AND INVENTOR_LIBRARY_DEBUG)
|
||||
|
||||
# set debug to release (if only release found)
|
||||
IF(NOT INVENTOR_LIBRARY_DEBUG AND INVENTOR_LIBRARY_RELEASE)
|
||||
SET(INVENTOR_LIBRARY_DEBUG ${INVENTOR_LIBRARY_RELEASE})
|
||||
ENDIF(NOT INVENTOR_LIBRARY_DEBUG AND INVENTOR_LIBRARY_RELEASE)
|
||||
|
||||
# INVENTOR_LIBRARY
|
||||
IF (CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE)
|
||||
SET(INVENTOR_LIBRARY
|
||||
optimized ${INVENTOR_LIBRARY_RELEASE}
|
||||
debug ${INVENTOR_LIBRARY_DEBUG})
|
||||
ELSE(CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE)
|
||||
SET(INVENTOR_LIBRARY
|
||||
${INVENTOR_LIBRARY_RELEASE})
|
||||
ENDIF(CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE)
|
||||
|
||||
# set INVENTOR_FOUND appropriately
|
||||
SET(INVENTOR_FOUND "NO")
|
||||
IF(INVENTOR_INCLUDE_DIR AND INVENTOR_LIBRARY)
|
||||
SET(INVENTOR_FOUND "YES")
|
||||
ENDIF(INVENTOR_INCLUDE_DIR AND INVENTOR_LIBRARY)
|
||||
|
||||
|
||||
#
|
||||
# SoWin
|
||||
#
|
||||
# notes: SoWin is searched by COINDIR environment variable
|
||||
# (as expected to be located at Windows platform)
|
||||
|
||||
# try to find SoWin lib (priority paths)
|
||||
FIND_LIBRARY(INVENTOR_SOWIN_LIBRARY
|
||||
NAMES sowin1
|
||||
PATHS $ENV{COINDIR}/lib
|
||||
NO_DEFAULT_PATH
|
||||
)
|
||||
|
||||
# try to find SoWin lib (regular paths)
|
||||
FIND_LIBRARY(INVENTOR_SOWIN_LIBRARY
|
||||
NAMES sowin1
|
||||
PATHS ${INVENTOR_LIB_SEARCH_PATH}
|
||||
)
|
||||
|
||||
# try to find SoWin debug lib (priority paths)
|
||||
FIND_LIBRARY(INVENTOR_SOWIN_LIBRARY_DEBUG
|
||||
NAMES sowin1d
|
||||
PATHS $ENV{COINDIR}/lib
|
||||
NO_DEFAULT_PATH
|
||||
)
|
||||
|
||||
# try to find SoWin debug lib (regular paths)
|
||||
FIND_LIBRARY(INVENTOR_SOWIN_LIBRARY_DEBUG
|
||||
NAMES sowin1d
|
||||
PATHS ${INVENTOR_LIB_SEARCH_PATH}
|
||||
)
|
||||
|
||||
# SoWin debug library defaults to non-debug lib
|
||||
IF(NOT INVENTOR_SOWIN_LIBRARY_DEBUG)
|
||||
IF(INVENTOR_SOWIN_LIBRARY)
|
||||
SET(INVENTOR_SOWIN_LIBRARY_DEBUG INVENTOR_SOWIN_LIBRARY)
|
||||
ENDIF(INVENTOR_SOWIN_LIBRARY)
|
||||
ENDIF(NOT INVENTOR_SOWIN_LIBRARY_DEBUG)
|
||||
|
||||
|
||||
#
|
||||
# SoXt
|
||||
#
|
||||
# notes:
|
||||
# - SoXt is detected by soxt-config script (as expected by
|
||||
# Coin's SoXt on Linux/Unix) and on standard system locations
|
||||
# - SGI's InventorXt support is missing now
|
||||
#
|
||||
|
||||
# soxt-config tells much of SoXt instalation (if present)
|
||||
execute_process (COMMAND soxt-config --prefix
|
||||
OUTPUT_VARIABLE SOXT_PREFIX
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
|
||||
# try to find SoXt lib (priority paths)
|
||||
FIND_LIBRARY(INVENTOR_SOXT_LIBRARY
|
||||
NAMES soxt1 SoXt
|
||||
PATHS ${SOXT_PREFIX}/lib
|
||||
$ENV{COINDIR}/lib
|
||||
NO_DEFAULT_PATH
|
||||
)
|
||||
|
||||
# try to find SoXt lib (regular paths)
|
||||
FIND_LIBRARY(INVENTOR_SOXT_LIBRARY
|
||||
NAMES soxt1 SoXt
|
||||
PATHS ${INVENTOR_LIB_SEARCH_PATH}
|
||||
)
|
||||
|
||||
# try to find SoXt debug lib (priority paths)
|
||||
FIND_LIBRARY(INVENTOR_SOXT_LIBRARY_DEBUG
|
||||
NAMES soxt1d
|
||||
PATHS ${SOXT_PREFIX}/lib
|
||||
$ENV{COINDIR}/lib
|
||||
NO_DEFAULT_PATH
|
||||
)
|
||||
|
||||
# try to find SoXt debug lib (regular paths)
|
||||
FIND_LIBRARY(INVENTOR_SOXT_LIBRARY_DEBUG
|
||||
NAMES soxt1d
|
||||
PATHS ${INVENTOR_LIB_SEARCH_PATH}
|
||||
)
|
||||
|
||||
# SoXt debug library defaults to non-debug lib
|
||||
IF(NOT INVENTOR_SOXT_LIBRARY_DEBUG)
|
||||
IF(INVENTOR_SOXT_LIBRARY)
|
||||
SET(INVENTOR_SOXT_LIBRARY_DEBUG INVENTOR_SOXT_LIBRARY)
|
||||
ENDIF(INVENTOR_SOXT_LIBRARY)
|
||||
ENDIF(NOT INVENTOR_SOXT_LIBRARY_DEBUG)
|
||||
|
||||
@@ -9,19 +9,12 @@
|
||||
#
|
||||
# Created by Robert Osfield.
|
||||
|
||||
# prefer FindJasper from cmake distribution
|
||||
if(EXISTS ${CMAKE_ROOT}/Modules/FindJasper.cmake)
|
||||
include(${CMAKE_ROOT}/Modules/FindJasper.cmake)
|
||||
|
||||
if(JASPER_FOUND)
|
||||
return()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
FIND_PATH(JASPER_INCLUDE_DIR jasper/jasper.h
|
||||
$ENV{JASPER_DIR}/include
|
||||
$ENV{JASPER_DIR}/src/libjasper/include
|
||||
$ENV{JASPER_DIR}
|
||||
$ENV{OSGDIR}/include
|
||||
$ENV{OSGDIR}
|
||||
$ENV{OSG_ROOT}/include
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/include
|
||||
@@ -30,34 +23,18 @@ FIND_PATH(JASPER_INCLUDE_DIR jasper/jasper.h
|
||||
/opt/local/include # DarwinPorts
|
||||
/opt/csw/include # Blastwave
|
||||
/opt/include
|
||||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/include
|
||||
/usr/freeware/include
|
||||
)
|
||||
|
||||
FIND_LIBRARY(JASPER_LIBRARY
|
||||
NAMES jasper libjasper
|
||||
NAMES jasper
|
||||
PATHS
|
||||
$ENV{JASPER_DIR}/lib
|
||||
$ENV{JASPER_DIR}/src/libjasper/lib
|
||||
$ENV{JASPER_DIR}/src/msvc/Win32_Release
|
||||
$ENV{JASPER_DIR}
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/lib
|
||||
/usr/lib
|
||||
/sw/lib
|
||||
/opt/local/lib
|
||||
/opt/csw/lib
|
||||
/opt/lib
|
||||
/usr/freeware/lib64
|
||||
)
|
||||
|
||||
FIND_LIBRARY(JASPER_LIBRARY_DEBUG
|
||||
NAMES jasper libjasper jasperd libjasperd
|
||||
PATHS
|
||||
$ENV{JASPER_DIR}/lib
|
||||
$ENV{JASPER_DIR}/src/libjasper/lib
|
||||
$ENV{JASPER_DIR}/src/msvc/Win32_Debug
|
||||
$ENV{JASPER_DIR}
|
||||
$ENV{OSGDIR}/lib
|
||||
$ENV{OSGDIR}
|
||||
$ENV{OSG_ROOT}/lib
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/lib
|
||||
@@ -66,6 +43,7 @@ FIND_LIBRARY(JASPER_LIBRARY_DEBUG
|
||||
/opt/local/lib
|
||||
/opt/csw/lib
|
||||
/opt/lib
|
||||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/lib
|
||||
/usr/freeware/lib64
|
||||
)
|
||||
|
||||
@@ -74,3 +52,4 @@ IF(JASPER_LIBRARY AND JASPER_INCLUDE_DIR)
|
||||
SET(JASPER_FOUND "YES")
|
||||
ENDIF(JASPER_LIBRARY AND JASPER_INCLUDE_DIR)
|
||||
|
||||
|
||||
|
||||
@@ -1,108 +0,0 @@
|
||||
#---
|
||||
# File: FindLIBLAS.cmake
|
||||
#
|
||||
# Find the native LIBLAS includes and library
|
||||
#
|
||||
# LIBLAS_INCLUDE_DIRS - where to find liblas's includes.
|
||||
# LIBLAS_LIBRARIES - List of libraries when using liblas.
|
||||
# LIBLAS_FOUND - True if liblas found.
|
||||
#---
|
||||
|
||||
|
||||
# Set the include dir:
|
||||
find_path(LIBLAS_INCLUDE_DIR liblas/liblas.hpp)
|
||||
|
||||
# Macro for setting libraries:
|
||||
macro(FIND_LIBLAS_LIBRARY MYLIBRARY MYLIBRARYNAME)
|
||||
|
||||
find_library(
|
||||
"${MYLIBRARY}_DEBUG"
|
||||
NAMES "${MYLIBRARYNAME}${CMAKE_DEBUG_POSTFIX}" "lib${MYLIBRARYNAME}${CMAKE_DEBUG_POSTFIX}"
|
||||
PATHS
|
||||
${LIBLAS_DIR}/lib/Debug
|
||||
${LIBLAS_DIR}/lib64/Debug
|
||||
${LIBLAS_DIR}/lib
|
||||
${LIBLAS_DIR}/lib64
|
||||
$ENV{LIBLAS_DIR}/lib/debug
|
||||
$ENV{LIBLAS_DIR}/lib64/debug
|
||||
NO_DEFAULT_PATH
|
||||
)
|
||||
|
||||
find_library(
|
||||
"${MYLIBRARY}_DEBUG"
|
||||
NAMES "${MYLIBRARYNAME}${CMAKE_DEBUG_POSTFIX}" "lib${MYLIBRARYNAME}${CMAKE_DEBUG_POSTFIX}"
|
||||
PATHS
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/lib
|
||||
/usr/local/lib64
|
||||
/usr/lib
|
||||
/usr/lib64
|
||||
/sw/lib
|
||||
/opt/local/lib
|
||||
/opt/csw/lib
|
||||
/opt/lib
|
||||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;LIBLAS_ROOT]/lib
|
||||
/usr/freeware/lib64
|
||||
)
|
||||
|
||||
find_library(
|
||||
${MYLIBRARY}
|
||||
NAMES "${MYLIBRARYNAME}${CMAKE_RELEASE_POSTFIX}" "lib${MYLIBRARYNAME}${CMAKE_RELEASE_POSTFIX}"
|
||||
PATHS
|
||||
${LIBLAS_DIR}/lib/Release
|
||||
${LIBLAS_DIR}/lib64/Release
|
||||
${LIBLAS_DIR}/lib
|
||||
${LIBLAS_DIR}/lib64
|
||||
$ENV{LIBLAS_DIR}/lib/Release
|
||||
$ENV{LIBLAS_DIR}/lib64/Release
|
||||
$ENV{LIBLAS_DIR}/lib
|
||||
$ENV{LIBLAS_DIR}/lib64
|
||||
$ENV{LIBLAS_DIR}
|
||||
$ENV{LIBLASDIR}/lib
|
||||
$ENV{LIBLASDIR}/lib64
|
||||
$ENV{LIBLASDIR}
|
||||
$ENV{LIBLAS_ROOT}/lib
|
||||
$ENV{LIBLAS_ROOT}/lib64
|
||||
NO_DEFAULT_PATH
|
||||
)
|
||||
|
||||
find_library(
|
||||
${MYLIBRARY}
|
||||
NAMES "${MYLIBRARYNAME}${CMAKE_RELEASE_POSTFIX}" "lib${MYLIBRARYNAME}${CMAKE_RELEASE_POSTFIX}"
|
||||
PATHS
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/lib
|
||||
/usr/local/lib64
|
||||
/usr/lib
|
||||
/usr/lib64
|
||||
/sw/lib
|
||||
/opt/local/lib
|
||||
/opt/csw/lib
|
||||
/opt/lib
|
||||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;LIBLAS_ROOT]/lib
|
||||
/usr/freeware/lib64
|
||||
)
|
||||
|
||||
if( NOT ${MYLIBRARY}_DEBUG )
|
||||
if( MYLIBRARY )
|
||||
set( ${MYLIBRARY}_DEBUG ${MYLIBRARY} )
|
||||
endif(MYLIBRARY)
|
||||
endif( NOT ${MYLIBRARY}_DEBUG )
|
||||
|
||||
endmacro(FIND_LIBLAS_LIBRARY LIBRARY LIBRARYNAME)
|
||||
|
||||
FIND_LIBLAS_LIBRARY(LIBLAS_LIBRARY las)
|
||||
|
||||
set(LIBLAS_FOUND "NO")
|
||||
if(LIBLAS_LIBRARY AND LIBLAS_INCLUDE_DIR)
|
||||
FIND_PACKAGE(Boost) # used by LIBLAS
|
||||
if(Boost_FOUND)
|
||||
set(LIBLAS_LIBRARIES ${LIBLAS_LIBRARY} )
|
||||
set(LIBLAS_FOUND "YES")
|
||||
if(WIN32)
|
||||
link_directories(${Boost_LIBRARY_DIRS})
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
@@ -1,62 +0,0 @@
|
||||
# Locate libvncserver
|
||||
# This module defines
|
||||
# LIBVNCSERVER_LIBRARY
|
||||
# LIBVNCSERVER_FOUND, if false, do not try to link to libvncserver
|
||||
# LIBVNCSERVER_INCLUDE_DIR, where to find the headers
|
||||
#
|
||||
# $LIBVNCSERVER_DIR is an environment variable that would
|
||||
# correspond to the ./configure --prefix=$LIBVNCSERVER_DIR
|
||||
# used in building libvncserver.
|
||||
|
||||
FIND_PATH(LIBVNCSERVER_INCLUDE_DIR rfb/rfb.h
|
||||
$ENV{LIBVNCSERVER_DIR}/include
|
||||
$ENV{LIBVNCSERVER_DIR}
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/include
|
||||
/usr/include
|
||||
/sw/include # Fink
|
||||
/opt/local/include # DarwinPorts
|
||||
/opt/csw/include # Blastwave
|
||||
/opt/include
|
||||
/usr/freeware/include
|
||||
)
|
||||
|
||||
FIND_LIBRARY(LIBVNCCLIENT_LIBRARY
|
||||
NAMES vncclient
|
||||
PATHS
|
||||
$ENV{LIBVNCSERVER_DIR}/lib
|
||||
$ENV{LIBVNCSERVER_DIR}
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/lib
|
||||
/usr/lib
|
||||
/sw/lib
|
||||
/opt/local/lib
|
||||
/opt/csw/lib
|
||||
/opt/lib
|
||||
/usr/freeware/lib64
|
||||
)
|
||||
|
||||
FIND_LIBRARY(LIBVNCSERVER_LIBRARY
|
||||
NAMES vncserver
|
||||
PATHS
|
||||
$ENV{LIBVNCSERVER_DIR}/lib
|
||||
$ENV{LIBVNCSERVER_DIR}
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/lib
|
||||
/usr/lib
|
||||
/sw/lib
|
||||
/opt/local/lib
|
||||
/opt/csw/lib
|
||||
/opt/lib
|
||||
/usr/freeware/lib64
|
||||
)
|
||||
|
||||
SET(LIBVNCSERVER_FOUND "NO")
|
||||
IF(LIBVNCSERVER_LIBRARY AND LIBVNCSERVER_INCLUDE_DIR)
|
||||
SET(LIBVNCSERVER_FOUND "YES")
|
||||
ENDIF(LIBVNCSERVER_LIBRARY AND LIBVNCSERVER_INCLUDE_DIR)
|
||||
|
||||
|
||||
@@ -1,83 +0,0 @@
|
||||
# Locate Lua library
|
||||
# This module defines
|
||||
# LUA51_FOUND, if false, do not try to link to Lua
|
||||
# LUA_LIBRARIES
|
||||
# LUA_INCLUDE_DIR, where to find lua.h
|
||||
# LUA_VERSION_STRING, the version of Lua found (since CMake 2.8.8)
|
||||
#
|
||||
# Note that the expected include convention is
|
||||
# #include "lua.h"
|
||||
# and not
|
||||
# #include <lua/lua.h>
|
||||
# This is because, the lua location is not standardized and may exist
|
||||
# in locations other than lua/
|
||||
|
||||
#=============================================================================
|
||||
# Copyright 2007-2009 Kitware, Inc.
|
||||
#
|
||||
# Distributed under the OSI-approved BSD License (the "License");
|
||||
# see accompanying file Copyright.txt for details.
|
||||
#
|
||||
# This software is distributed WITHOUT ANY WARRANTY; without even the
|
||||
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
# See the License for more information.
|
||||
#=============================================================================
|
||||
# (To distribute this file outside of CMake, substitute the full
|
||||
# License text for the above reference.)
|
||||
|
||||
find_path(LUA_INCLUDE_DIR lua.h
|
||||
HINTS
|
||||
ENV LUA_DIR
|
||||
PATH_SUFFIXES include/lua52 include/lua5.2 include/lua include
|
||||
PATHS
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/sw # Fink
|
||||
/opt/local # DarwinPorts
|
||||
/opt/csw # Blastwave
|
||||
/opt
|
||||
)
|
||||
|
||||
find_library(LUA_LIBRARY
|
||||
NAMES lua52 lua5.2 lua-5.2 lua
|
||||
HINTS
|
||||
ENV LUA_DIR
|
||||
PATH_SUFFIXES lib
|
||||
PATHS
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/sw
|
||||
/opt/local
|
||||
/opt/csw
|
||||
/opt
|
||||
)
|
||||
|
||||
if(LUA_LIBRARY)
|
||||
# include the math library for Unix
|
||||
if(UNIX AND NOT APPLE)
|
||||
find_library(LUA_MATH_LIBRARY m)
|
||||
set( LUA_LIBRARIES "${LUA_LIBRARY};${LUA_MATH_LIBRARY}" CACHE STRING "Lua Libraries")
|
||||
# For Windows and Mac, don't need to explicitly include the math library
|
||||
else()
|
||||
set( LUA_LIBRARIES "${LUA_LIBRARY}" CACHE STRING "Lua Libraries")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(LUA_INCLUDE_DIR AND EXISTS "${LUA_INCLUDE_DIR}/lua.h")
|
||||
file(STRINGS "${LUA_INCLUDE_DIR}/lua.h" lua_version_str REGEX "^#define[ \t]+LUA_RELEASE[ \t]+\"Lua .+\"")
|
||||
|
||||
string(REGEX REPLACE "^#define[ \t]+LUA_RELEASE[ \t]+\"Lua ([^\"]+)\".*" "\\1" LUA_VERSION_STRING "${lua_version_str}")
|
||||
unset(lua_version_str)
|
||||
endif()
|
||||
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
|
||||
# handle the QUIETLY and REQUIRED arguments and set LUA_FOUND to TRUE if
|
||||
# all listed variables are TRUE
|
||||
FIND_PACKAGE_HANDLE_STANDARD_ARGS(Lua52
|
||||
REQUIRED_VARS LUA_LIBRARIES LUA_INCLUDE_DIR
|
||||
VERSION_VAR LUA_VERSION_STRING)
|
||||
|
||||
mark_as_advanced(LUA_INCLUDE_DIR LUA_LIBRARIES LUA_LIBRARY LUA_MATH_LIBRARY)
|
||||
|
||||
@@ -1,211 +0,0 @@
|
||||
# Locate nvidia-texture-tools
|
||||
# This module defines
|
||||
# NVTT_LIBRARY
|
||||
# NVTT_FOUND, if false, do not try to link to nvtt
|
||||
# NVTT_INCLUDE_DIR, where to find the headers
|
||||
#
|
||||
|
||||
|
||||
FIND_PATH(NVTT_INCLUDE_DIR nvtt/nvtt.h
|
||||
PATHS
|
||||
/usr/local
|
||||
/usr
|
||||
$ENV{NVTT_DIR}
|
||||
${3rdPartyRoot}
|
||||
PATH_SUFFIXES include
|
||||
)
|
||||
|
||||
# NVTT
|
||||
FIND_LIBRARY(NVTT_LIBRARY_RELEASE
|
||||
NAMES nvtt
|
||||
PATHS
|
||||
/usr/local
|
||||
/usr
|
||||
$ENV{NVTT_DIR}
|
||||
${3rdPartyRoot}
|
||||
PATH_SUFFIXES lib64 lib lib/shared lib/static lib64/static
|
||||
)
|
||||
|
||||
FIND_LIBRARY(NVTT_LIBRARY_DEBUG
|
||||
NAMES nvtt_d
|
||||
PATHS
|
||||
/usr/local
|
||||
/usr
|
||||
$ENV{NVTT_DIR}
|
||||
${3rdPartyRoot}
|
||||
PATH_SUFFIXES lib64 lib lib/shared lib/static lib64/static
|
||||
)
|
||||
|
||||
# NVIMAGE
|
||||
FIND_LIBRARY(NVIMAGE_LIBRARY_RELEASE
|
||||
NAMES nvimage
|
||||
PATHS
|
||||
/usr/local
|
||||
/usr
|
||||
$ENV{NVTT_DIR}
|
||||
${3rdPartyRoot}
|
||||
PATH_SUFFIXES lib64 lib lib/shared lib/static lib64/static
|
||||
)
|
||||
|
||||
FIND_LIBRARY(NVIMAGE_LIBRARY_DEBUG
|
||||
NAMES nvimage_d
|
||||
PATHS
|
||||
/usr/local
|
||||
/usr
|
||||
$ENV{NVTT_DIR}
|
||||
${3rdPartyRoot}
|
||||
PATH_SUFFIXES lib64 lib lib/shared lib/static lib64/static
|
||||
)
|
||||
|
||||
# NVMATH
|
||||
FIND_LIBRARY(NVMATH_LIBRARY_RELEASE
|
||||
NAMES nvmath
|
||||
PATHS
|
||||
/usr/local
|
||||
/usr
|
||||
$ENV{NVTT_DIR}
|
||||
${3rdPartyRoot}
|
||||
PATH_SUFFIXES lib64 lib lib/shared lib/static lib64/static
|
||||
)
|
||||
|
||||
FIND_LIBRARY(NVMATH_LIBRARY_DEBUG
|
||||
NAMES nvmath_d
|
||||
PATHS
|
||||
/usr/local
|
||||
/usr
|
||||
$ENV{NVTT_DIR}
|
||||
${3rdPartyRoot}
|
||||
PATH_SUFFIXES lib64 lib lib/shared lib/static lib64/static
|
||||
)
|
||||
|
||||
# NVCORE
|
||||
FIND_LIBRARY(NVCORE_LIBRARY_RELEASE
|
||||
NAMES nvcore
|
||||
PATHS
|
||||
/usr/local
|
||||
/usr
|
||||
$ENV{NVTT_DIR}
|
||||
${3rdPartyRoot}
|
||||
PATH_SUFFIXES lib64 lib lib/shared lib/static lib64/static
|
||||
)
|
||||
FIND_LIBRARY(NVCORE_LIBRARY_DEBUG
|
||||
NAMES nvcore_d
|
||||
PATHS
|
||||
/usr/local
|
||||
/usr
|
||||
$ENV{NVTT_DIR}
|
||||
${3rdPartyRoot}
|
||||
PATH_SUFFIXES lib64 lib lib/shared lib/static lib64/static
|
||||
)
|
||||
|
||||
# NVTHREAD
|
||||
FIND_LIBRARY(NVTHREAD_LIBRARY_RELEASE
|
||||
NAMES nvthread
|
||||
PATHS
|
||||
/usr/local
|
||||
/usr
|
||||
$ENV{NVTT_DIR}
|
||||
${3rdPartyRoot}
|
||||
PATH_SUFFIXES lib64 lib lib/shared lib/static lib64/static
|
||||
)
|
||||
FIND_LIBRARY(NVTHREAD_LIBRARY_DEBUG
|
||||
NAMES nvthread_d
|
||||
PATHS
|
||||
/usr/local
|
||||
/usr
|
||||
$ENV{NVTT_DIR}
|
||||
${3rdPartyRoot}
|
||||
PATH_SUFFIXES lib64 lib lib/shared lib/static lib64/static
|
||||
)
|
||||
|
||||
# SQUISH
|
||||
FIND_LIBRARY(NVSQUISH_LIBRARY_RELEASE
|
||||
NAMES squish
|
||||
PATHS
|
||||
/usr/local
|
||||
/usr
|
||||
$ENV{NVTT_DIR}
|
||||
${3rdPartyRoot}
|
||||
PATH_SUFFIXES lib64 lib lib/shared lib/static lib64/static
|
||||
)
|
||||
FIND_LIBRARY(NVSQUISH_LIBRARY_DEBUG
|
||||
NAMES squish_d
|
||||
PATHS
|
||||
/usr/local
|
||||
/usr
|
||||
$ENV{NVTT_DIR}
|
||||
${3rdPartyRoot}
|
||||
PATH_SUFFIXES lib64 lib lib/shared lib/static lib64/static
|
||||
)
|
||||
|
||||
# BC6H
|
||||
FIND_LIBRARY(NVBC6H_LIBRARY_RELEASE
|
||||
NAMES bc6h
|
||||
PATHS
|
||||
/usr/local
|
||||
/usr
|
||||
$ENV{NVTT_DIR}
|
||||
${3rdPartyRoot}
|
||||
PATH_SUFFIXES lib64 lib lib/shared lib/static lib64/static
|
||||
)
|
||||
FIND_LIBRARY(NVBC6H_LIBRARY_DEBUG
|
||||
NAMES bc6h_d
|
||||
PATHS
|
||||
/usr/local
|
||||
/usr
|
||||
$ENV{NVTT_DIR}
|
||||
${3rdPartyRoot}
|
||||
PATH_SUFFIXES lib64 lib lib/shared lib/static lib64/static
|
||||
)
|
||||
|
||||
# BC7
|
||||
FIND_LIBRARY(NVBC7_LIBRARY_RELEASE
|
||||
NAMES bc7
|
||||
PATHS
|
||||
/usr/local
|
||||
/usr
|
||||
$ENV{NVTT_DIR}
|
||||
${3rdPartyRoot}
|
||||
PATH_SUFFIXES lib64 lib lib/shared lib/static lib64/static
|
||||
)
|
||||
FIND_LIBRARY(NVBC7_LIBRARY_DEBUG
|
||||
NAMES bc7_d
|
||||
PATHS
|
||||
/usr/local
|
||||
/usr
|
||||
$ENV{NVTT_DIR}
|
||||
${3rdPartyRoot}
|
||||
PATH_SUFFIXES lib64 lib lib/shared lib/static lib64/static
|
||||
)
|
||||
|
||||
IF (WIN32)
|
||||
SET(LIBS_TO_SETUP "NVTT" "NVCORE" "NVMATH" "NVIMAGE" "NVTHREAD" "NVBC7" "NVBC6H" "NVSQUISH")
|
||||
ELSE()
|
||||
SET(LIBS_TO_SETUP "NVTT" "NVCORE" "NVMATH" "NVIMAGE")
|
||||
ENDIF()
|
||||
|
||||
|
||||
FOREACH(LIB ${LIBS_TO_SETUP})
|
||||
IF(${LIB}_LIBRARY_DEBUG)
|
||||
SET(${LIB}_LIBRARIES optimized ${${LIB}_LIBRARY_RELEASE} debug ${${LIB}_LIBRARY_DEBUG})
|
||||
ELSE(${LIB}_LIBRARY_DEBUG)
|
||||
SET(${LIB}_LIBRARY_DEBUG ${${LIB}_LIBRARY_RELEASE})
|
||||
SET(${LIB}_LIBRARIES optimized ${${LIB}_LIBRARY_RELEASE} debug ${${LIB}_LIBRARY_DEBUG})
|
||||
ENDIF(${LIB}_LIBRARY_DEBUG)
|
||||
ENDFOREACH(LIB ${LIBS_TO_SETUP})
|
||||
|
||||
SET(NVTT_LIBRARIES
|
||||
${NVTT_LIBRARIES}
|
||||
${NVCORE_LIBRARIES}
|
||||
${NVMATH_LIBRARIES}
|
||||
${NVIMAGE_LIBRARIES}
|
||||
${NVTHREAD_LIBRARIES}
|
||||
${NVBC7_LIBRARIES}
|
||||
${NVBC6H_LIBRARIES}
|
||||
${NVSQUISH_LIBRARIES}
|
||||
)
|
||||
|
||||
SET(NVTT_FOUND "NO")
|
||||
IF(NVTT_LIBRARY_RELEASE AND NVTT_INCLUDE_DIR)
|
||||
SET(NVTT_FOUND "YES" )
|
||||
ENDIF(NVTT_LIBRARY_RELEASE AND NVTT_INCLUDE_DIR)
|
||||
@@ -1,57 +1,46 @@
|
||||
# Locate gdal
|
||||
# This module defines
|
||||
# OSG_LIBRARY
|
||||
# OSG_FOUND, if false, do not try to link to gdal
|
||||
# OSG_FOUND, if false, do not try to link to gdal
|
||||
# OSG_INCLUDE_DIR, where to find the headers
|
||||
#
|
||||
# $OSG_DIR is an environment variable that would
|
||||
# correspond to the ./configure --prefix=$OSG_DIR
|
||||
#
|
||||
# Created by Robert Osfield.
|
||||
# Created by Robert Osfield.
|
||||
|
||||
FIND_PATH(OSG_INCLUDE_DIR osg/Node
|
||||
${OSG_DIR}/include
|
||||
$ENV{OSG_DIR}/include
|
||||
$ENV{OSG_DIR}
|
||||
$ENV{OSGDIR}/include
|
||||
$ENV{OSGDIR}
|
||||
$ENV{OSG_ROOT}/include
|
||||
NO_DEFAULT_PATH
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/include
|
||||
/usr/include
|
||||
/sw/include # Fink
|
||||
/opt/local/include # DarwinPorts
|
||||
/opt/csw/include # Blastwave
|
||||
/opt/include
|
||||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/include
|
||||
/usr/freeware/include
|
||||
)
|
||||
|
||||
FIND_PATH(OSG_INCLUDE_DIR osg/Node)
|
||||
|
||||
MACRO(FIND_OSG_LIBRARY MYLIBRARY MYLIBRARYNAME)
|
||||
|
||||
FIND_LIBRARY("${MYLIBRARY}_DEBUG"
|
||||
NAMES "${MYLIBRARYNAME}${CMAKE_DEBUG_POSTFIX}"
|
||||
FIND_LIBRARY(${MYLIBRARY}
|
||||
NAMES ${MYLIBRARYNAME}
|
||||
PATHS
|
||||
${OSG_DIR}/lib/Debug
|
||||
${OSG_DIR}/lib64/Debug
|
||||
${OSG_DIR}/lib
|
||||
${OSG_DIR}/lib64
|
||||
$ENV{OSG_DIR}/lib/debug
|
||||
$ENV{OSG_DIR}/lib64/debug
|
||||
$ENV{OSG_DIR}/lib
|
||||
$ENV{OSG_DIR}/lib64
|
||||
$ENV{OSG_DIR}
|
||||
$ENV{OSGDIR}/lib
|
||||
$ENV{OSGDIR}/lib64
|
||||
$ENV{OSGDIR}
|
||||
$ENV{OSG_ROOT}/lib
|
||||
$ENV{OSG_ROOT}/lib64
|
||||
NO_DEFAULT_PATH
|
||||
)
|
||||
|
||||
FIND_LIBRARY("${MYLIBRARY}_DEBUG"
|
||||
NAMES "${MYLIBRARYNAME}${CMAKE_DEBUG_POSTFIX}"
|
||||
PATHS
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/lib
|
||||
/usr/local/lib64
|
||||
/usr/lib
|
||||
/usr/lib64
|
||||
/sw/lib
|
||||
/opt/local/lib
|
||||
/opt/csw/lib
|
||||
@@ -60,74 +49,15 @@ MACRO(FIND_OSG_LIBRARY MYLIBRARY MYLIBRARYNAME)
|
||||
/usr/freeware/lib64
|
||||
)
|
||||
|
||||
FIND_LIBRARY(${MYLIBRARY}
|
||||
NAMES "${MYLIBRARYNAME}${CMAKE_RELEASE_POSTFIX}"
|
||||
PATHS
|
||||
${OSG_DIR}/lib/Release
|
||||
${OSG_DIR}/lib64/Release
|
||||
${OSG_DIR}/lib
|
||||
${OSG_DIR}/lib64
|
||||
$ENV{OSG_DIR}/lib/Release
|
||||
$ENV{OSG_DIR}/lib64/Release
|
||||
$ENV{OSG_DIR}/lib
|
||||
$ENV{OSG_DIR}/lib64
|
||||
$ENV{OSG_DIR}
|
||||
$ENV{OSGDIR}/lib
|
||||
$ENV{OSGDIR}/lib64
|
||||
$ENV{OSGDIR}
|
||||
$ENV{OSG_ROOT}/lib
|
||||
$ENV{OSG_ROOT}/lib64
|
||||
NO_DEFAULT_PATH
|
||||
)
|
||||
|
||||
FIND_LIBRARY(${MYLIBRARY}
|
||||
NAMES "${MYLIBRARYNAME}${CMAKE_RELEASE_POSTFIX}"
|
||||
PATHS
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/lib
|
||||
/usr/local/lib64
|
||||
/usr/lib
|
||||
/usr/lib64
|
||||
/sw/lib
|
||||
/opt/local/lib
|
||||
/opt/csw/lib
|
||||
/opt/lib
|
||||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/lib
|
||||
/usr/freeware/lib64
|
||||
)
|
||||
|
||||
IF( NOT ${MYLIBRARY}_DEBUG)
|
||||
IF(MYLIBRARY)
|
||||
SET(${MYLIBRARY}_DEBUG ${MYLIBRARY})
|
||||
ENDIF(MYLIBRARY)
|
||||
ELSE()
|
||||
IF( NOT MYLIBRARY )
|
||||
SET(${MYLIBRARY} ${${MYLIBRARY}_DEBUG} )
|
||||
ENDIF(NOT MYLIBRARY)
|
||||
|
||||
ENDIF( NOT ${MYLIBRARY}_DEBUG )
|
||||
|
||||
ENDMACRO(FIND_OSG_LIBRARY LIBRARY LIBRARYNAME)
|
||||
|
||||
FIND_OSG_LIBRARY(OSG_LIBRARY osg)
|
||||
FIND_OSG_LIBRARY(OSGGA_LIBRARY osgGA)
|
||||
FIND_OSG_LIBRARY(OSGUTIL_LIBRARY osgUtil)
|
||||
FIND_OSG_LIBRARY(OSGDB_LIBRARY osgDB)
|
||||
FIND_OSG_LIBRARY(OSGTEXT_LIBRARY osgText)
|
||||
FIND_OSG_LIBRARY(OSGWIDGET_LIBRARY osgWidget)
|
||||
FIND_OSG_LIBRARY(OSGTERRAIN_LIBRARY osgTerrain)
|
||||
FIND_OSG_LIBRARY(OSGFX_LIBRARY osgFX)
|
||||
FIND_OSG_LIBRARY(OSGVIEWER_LIBRARY osgViewer)
|
||||
FIND_OSG_LIBRARY(OSGVOLUME_LIBRARY osgVolume)
|
||||
FIND_OSG_LIBRARY(OSGMANIPULATOR_LIBRARY osgManipulator)
|
||||
FIND_OSG_LIBRARY(OSGANIMATION_LIBRARY osgAnimation)
|
||||
FIND_OSG_LIBRARY(OSGPARTICLE_LIBRARY osgParticle)
|
||||
FIND_OSG_LIBRARY(OSGSHADOW_LIBRARY osgShadow)
|
||||
FIND_OSG_LIBRARY(OSGPRESENTATION_LIBRARY osgPresentation)
|
||||
FIND_OSG_LIBRARY(OSGSIM_LIBRARY osgSim)
|
||||
FIND_OSG_LIBRARY(OPENTHREADS_LIBRARY OpenThreads)
|
||||
|
||||
|
||||
SET(OSG_FOUND "NO")
|
||||
IF(OSG_LIBRARY AND OSG_INCLUDE_DIR)
|
||||
|
||||
@@ -1,174 +0,0 @@
|
||||
# LocateOPENCASCADE
|
||||
# This module defines
|
||||
# OPENCASCADE_LIBRARY
|
||||
# OPENCASCADE_FOUND, if false, do not try to link to OPENCASCADE
|
||||
# OPENCASCADE_INCLUDE_DIR, where to find the headers
|
||||
#
|
||||
# $OPENCASCADE_DIR is an environment variable that would
|
||||
# correspond to the ./configure --prefix=$OPENCASCADE_DIR
|
||||
# used in building OPENCASCADE.
|
||||
|
||||
FIND_PATH(OPENCASCADE_INCLUDE_DIR Standard_Version.hxx
|
||||
PATHS
|
||||
${OPENCASCADE_DIR}
|
||||
$ENV{OPENCASCADE_DIR}
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local
|
||||
/usr
|
||||
/sw # Fink
|
||||
/opt/local # DarwinPorts
|
||||
/opt/csw # Blastwave
|
||||
/opt
|
||||
/usr/freeware
|
||||
PATH_SUFFIXES
|
||||
opencascade
|
||||
inc
|
||||
include
|
||||
inc/cascade
|
||||
include/cascade
|
||||
)
|
||||
|
||||
MACRO(FIND_OPENCASCADE_LIBRARY MYLIBRARY MYLIBRARYNAME)
|
||||
|
||||
FIND_LIBRARY("${MYLIBRARY}"
|
||||
NAMES "${MYLIBRARYNAME}"
|
||||
PATHS
|
||||
$ENV{OPENCASCADE_DIR}/lib}
|
||||
$ENV{OPENCASCADE_LIB}
|
||||
${OPENCASCADE_DIR}/lib
|
||||
$ENV{OPENCASCADE_DIR}/lib
|
||||
${OPENCASCADE_DIR}/lib/
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/lib
|
||||
/usr/lib
|
||||
/sw/lib
|
||||
/opt/local/lib
|
||||
/opt/csw/lib
|
||||
/opt/lib
|
||||
/usr/freeware/lib64
|
||||
)
|
||||
|
||||
ENDMACRO()
|
||||
|
||||
|
||||
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKBinL TKBinL)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKBin TKBin)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKBinTObj TKBinTObj)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKBinXCAF TKBinXCAF)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKBool TKBool)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKBO TKBO)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKBRep TKBRep)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKCAF TKCAF)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKCDF TKCDF)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKernel TKernel)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKFeat TKFeat)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKFillet TKFillet)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKG2d TKG2d)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKG3d TKG3d)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKGeomAlgo TKGeomAlgo)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKGeomBase TKGeomBase)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKHLR TKHLR)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKIGES TKIGES)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKLCAF TKLCAF)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKMath TKMath)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKMesh TKMesh)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKMeshVS TKMeshVS)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKOffset TKOffset)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKOpenGl TKOpenGl)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKPrim TKPrim)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKService TKService)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKShHealing TKShHealing)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKSTEP209 TKSTEP209)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKSTEPAttr TKSTEPAttr)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKSTEPBase TKSTEPBase)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKSTEP TKSTEP)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKSTL TKSTL)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKTObj TKTObj)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKTopAlgo TKTopAlgo)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKV3d TKV3d)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKVRML TKVRML)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKXDEIGES TKXDEIGES)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKXDESTEP TKXDESTEP)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKXMesh TKXMesh)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKXmlL TKXmlL)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKXml TKXml)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKXmlTObj TKXmlTObj)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKXmlXCAF TKXmlXCAF)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKXSBase TKXSBase)
|
||||
FIND_OPENCASCADE_LIBRARY(OPENCASCADE_TKXCAF TKXCAF)
|
||||
|
||||
set (OPENCASCADE_LIBRARY_TYPE_DESCR
|
||||
"Specifies the type of library to be used. 'Shared' libraries
|
||||
are linked dynamically and loaded at runtime. 'Static' libraries
|
||||
are archives of object files for use when linking other targets")
|
||||
|
||||
# set type of OCCT libraries
|
||||
if (NOT OPENCASCADE_LIBRARY_TYPE)
|
||||
set (OPENCASCADE_LIBRARY_TYPE "Static" CACHE STRING "${OPENCASCADE_LIBRARY_TYPE_DESCR}" FORCE)
|
||||
SET_PROPERTY(CACHE OPENCASCADE_LIBRARY_TYPE PROPERTY STRINGS Shared Static)
|
||||
endif()
|
||||
|
||||
if ("${OPENCASCADE_LIBRARY_TYPE}" STREQUAL "Shared")
|
||||
|
||||
SET(OPENCASCADE_LIBRARY ${OPENCASCADE_LIBRARY}
|
||||
${OPENCASCADE_TKernel}
|
||||
${OPENCASCADE_TKMath}
|
||||
${OPENCASCADE_TKXCAF}
|
||||
${OPENCASCADE_TKXSBase}
|
||||
${OPENCASCADE_TKSTEPAttr}
|
||||
${OPENCASCADE_TKSTEPBase}
|
||||
${OPENCASCADE_TKSTEP209}
|
||||
${OPENCASCADE_TKSTEP}
|
||||
${OPENCASCADE_TKXDESTEP}
|
||||
${OPENCASCADE_TKIGES}
|
||||
${OPENCASCADE_TKXDEIGES}
|
||||
${OPENCASCADE_TKLCAF}
|
||||
${OPENCASCADE_TKBRep}
|
||||
${OPENCASCADE_TKMesh}
|
||||
${OPENCASCADE_TKTopAlgo}
|
||||
${OPENCASCADE_TKShHealing}
|
||||
)
|
||||
else ("${OPENCASCADE_LIBRARY_TYPE}" STREQUAL "Shared")
|
||||
SET(OPENCASCADE_LIBRARY ${OPENCASCADE_LIBRARY}
|
||||
${OPENCASCADE_TKBO}
|
||||
${OPENCASCADE_TKBool}
|
||||
${OPENCASCADE_TKBRep}
|
||||
${OPENCASCADE_TKCAF}
|
||||
${OPENCASCADE_TKCDF}
|
||||
${OPENCASCADE_TKernel}
|
||||
${OPENCASCADE_TKG2d}
|
||||
${OPENCASCADE_TKG3d}
|
||||
${OPENCASCADE_TKGeomAlgo}
|
||||
${OPENCASCADE_TKGeomBase}
|
||||
${OPENCASCADE_TKHLR}
|
||||
${OPENCASCADE_TKIGES}
|
||||
${OPENCASCADE_TKLCAF}
|
||||
${OPENCASCADE_TKMath}
|
||||
${OPENCASCADE_TKMesh}
|
||||
${OPENCASCADE_TKPrim}
|
||||
${OPENCASCADE_TKService}
|
||||
${OPENCASCADE_TKShHealing}
|
||||
${OPENCASCADE_TKSTEP}
|
||||
${OPENCASCADE_TKSTEP209}
|
||||
${OPENCASCADE_TKSTEPAttr}
|
||||
${OPENCASCADE_TKSTEPBase}
|
||||
${OPENCASCADE_TKTopAlgo}
|
||||
${OPENCASCADE_TKV3d}
|
||||
${OPENCASCADE_TKXCAF}
|
||||
${OPENCASCADE_TKXDEIGES}
|
||||
${OPENCASCADE_TKXDESTEP}
|
||||
${OPENCASCADE_TKXSBase}
|
||||
)
|
||||
endif ("${OPENCASCADE_LIBRARY_TYPE}" STREQUAL "Shared")
|
||||
|
||||
SET(OPENCASCADE_FOUND "NO")
|
||||
IF(OPENCASCADE_LIBRARY AND OPENCASCADE_INCLUDE_DIR)
|
||||
SET(OPENCASCADE_FOUND "YES")
|
||||
ENDIF(OPENCASCADE_LIBRARY AND OPENCASCADE_INCLUDE_DIR)
|
||||
|
||||
IF(OPENCASCADE_INCLUDE_DIR)
|
||||
SET(OPENCASCADE_FOUND "YES")
|
||||
ENDIF(OPENCASCADE_INCLUDE_DIR)
|
||||
@@ -1,61 +0,0 @@
|
||||
# Locate OpenEXR
|
||||
# This module defines
|
||||
# OPENEXR_LIBRARY
|
||||
# OPENEXR_FOUND, if false, do not try to link to OpenEXR
|
||||
# OPENEXR_INCLUDE_DIR, where to find the headers
|
||||
#
|
||||
# $OPENEXR_DIR is an environment variable that would
|
||||
# correspond to the ./configure --prefix=$OPENEXR_DIR
|
||||
#
|
||||
# Created by Robert Osfield.
|
||||
|
||||
|
||||
FIND_PATH(OPENEXR_INCLUDE_DIR OpenEXR/ImfIO.h
|
||||
$ENV{OPENEXR_DIR}/include
|
||||
$ENV{OPENEXR_DIR}
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/include
|
||||
/usr/include
|
||||
/sw/include # Fink
|
||||
/opt/local/include # DarwinPorts
|
||||
/opt/csw/include # Blastwave
|
||||
/opt/include
|
||||
/usr/freeware/include
|
||||
)
|
||||
|
||||
# Macro to find exr libraries (deduplicating search paths)
|
||||
# example: OPENEXR_FIND_VAR(OPENEXR_IlmImf_LIBRARY IlmImf)
|
||||
MACRO(OPENEXR_FIND_VAR varname libname)
|
||||
FIND_LIBRARY( ${varname}
|
||||
NAMES ${libname} ${libname}-2_1 ${libname}-2_2
|
||||
PATHS
|
||||
$ENV{OPENEXR_DIR}/lib
|
||||
$ENV{OPENEXR_DIR}
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/lib
|
||||
/usr/lib
|
||||
/sw/lib
|
||||
/opt/local/lib
|
||||
/opt/csw/lib
|
||||
/opt/lib
|
||||
/usr/freeware/lib64
|
||||
)
|
||||
ENDMACRO(OPENEXR_FIND_VAR)
|
||||
|
||||
# Macro to find exr libraries (and debug versions)
|
||||
# example: OPENEXR_FIND(IlmImf)
|
||||
MACRO(OPENEXR_FIND libname)
|
||||
OPENEXR_FIND_VAR(OPENEXR_${libname}_LIBRARY ${libname})
|
||||
OPENEXR_FIND_VAR(OPENEXR_${libname}_LIBRARY_DEBUG ${libname}d)
|
||||
ENDMACRO(OPENEXR_FIND)
|
||||
|
||||
OPENEXR_FIND(IlmImf)
|
||||
|
||||
SET(OPENEXR_FOUND "NO")
|
||||
IF(OPENEXR_INCLUDE_DIR AND OPENEXR_IlmImf_LIBRARY)
|
||||
SET(OPENEXR_LIBRARIES ${OPENEXR_IlmImf_LIBRARY} )
|
||||
SET(OPENEXR_LIBRARIES_VARS OPENEXR_IlmImf_LIBRARY )
|
||||
SET(OPENEXR_FOUND "YES")
|
||||
ENDIF(OPENEXR_INCLUDE_DIR AND OPENEXR_IlmImf_LIBRARY)
|
||||
@@ -17,16 +17,6 @@
|
||||
#
|
||||
# Created by Eric Wing.
|
||||
|
||||
# prefer FindOpenThreads from cmake distribution
|
||||
if(EXISTS ${CMAKE_ROOT}/Modules/FindOpenThreads.cmake)
|
||||
include(${CMAKE_ROOT}/Modules/FindOpenThreads.cmake)
|
||||
|
||||
if(OPENTHREADS_FOUND)
|
||||
return()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
|
||||
# Header files are presumed to be included like
|
||||
# #include <OpenThreads/Thread>
|
||||
|
||||
|
||||
@@ -10,9 +10,12 @@
|
||||
# Created by Robert Osfield.
|
||||
# Modified for the debug library by Jean-S<>bastien Guay.
|
||||
|
||||
FIND_PATH(OPENVRML_INCLUDE_DIR openvrml/openvrml-common.h
|
||||
FIND_PATH(OPENVRML_INCLUDE_DIR openvrml/openvrml/common.h
|
||||
$ENV{OPENVRML_DIR}/include
|
||||
$ENV{OPENVRML_DIR}
|
||||
$ENV{OSGDIR}/include
|
||||
$ENV{OSGDIR}
|
||||
$ENV{OSG_ROOT}/include
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/include
|
||||
@@ -21,6 +24,7 @@ FIND_PATH(OPENVRML_INCLUDE_DIR openvrml/openvrml-common.h
|
||||
/opt/local/include # DarwinPorts
|
||||
/opt/csw/include # Blastwave
|
||||
/opt/include
|
||||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/include
|
||||
/usr/freeware/include
|
||||
)
|
||||
|
||||
@@ -29,6 +33,9 @@ FIND_LIBRARY(OPENVRML_LIBRARY
|
||||
PATHS
|
||||
$ENV{OPENVRML_DIR}/lib
|
||||
$ENV{OPENVRML_DIR}
|
||||
$ENV{OSGDIR}/lib
|
||||
$ENV{OSGDIR}
|
||||
$ENV{OSG_ROOT}/lib
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/lib
|
||||
@@ -37,6 +44,7 @@ FIND_LIBRARY(OPENVRML_LIBRARY
|
||||
/opt/local/lib
|
||||
/opt/csw/lib
|
||||
/opt/lib
|
||||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/lib
|
||||
/usr/freeware/lib64
|
||||
)
|
||||
|
||||
@@ -45,6 +53,9 @@ FIND_LIBRARY(OPENVRML_LIBRARY_DEBUG
|
||||
PATHS
|
||||
$ENV{OPENVRML_DIR}/lib
|
||||
$ENV{OPENVRML_DIR}
|
||||
$ENV{OSGDIR}/lib
|
||||
$ENV{OSGDIR}
|
||||
$ENV{OSG_ROOT}/lib
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/lib
|
||||
@@ -53,6 +64,7 @@ FIND_LIBRARY(OPENVRML_LIBRARY_DEBUG
|
||||
/opt/local/lib
|
||||
/opt/csw/lib
|
||||
/opt/lib
|
||||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/lib
|
||||
/usr/freeware/lib64
|
||||
)
|
||||
|
||||
|
||||
@@ -14,6 +14,9 @@ FIND_PATH(PERFORMER_INCLUDE_DIR Performer/pfdu.h
|
||||
$ENV{PFROOT}
|
||||
$ENV{PERFORMER_DIR}/include
|
||||
$ENV{PERFORMER_DIR}
|
||||
$ENV{OSGDIR}/include
|
||||
$ENV{OSGDIR}
|
||||
$ENV{OSG_ROOT}/include
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/include
|
||||
@@ -22,6 +25,7 @@ FIND_PATH(PERFORMER_INCLUDE_DIR Performer/pfdu.h
|
||||
/opt/local/include # DarwinPorts
|
||||
/opt/csw/include # Blastwave
|
||||
/opt/include
|
||||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/include
|
||||
/usr/freeware/include
|
||||
)
|
||||
|
||||
@@ -35,6 +39,7 @@ IF(MSVC)
|
||||
$ENV{PERFORMER_DIR}
|
||||
$ENV{OSGDIR}/lib
|
||||
$ENV{OSGDIR}
|
||||
$ENV{OSG_ROOT}/lib
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/lib
|
||||
@@ -43,6 +48,7 @@ IF(MSVC)
|
||||
/opt/local/lib
|
||||
/opt/csw/lib
|
||||
/opt/lib
|
||||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/lib
|
||||
/usr/freeware/lib64
|
||||
)
|
||||
ELSE(MSVC)
|
||||
@@ -53,6 +59,9 @@ ELSE(MSVC)
|
||||
$ENV{PFROOT}
|
||||
$ENV{PERFORMER_DIR}/lib
|
||||
$ENV{PERFORMER_DIR}
|
||||
$ENV{OSGDIR}/lib
|
||||
$ENV{OSGDIR}
|
||||
$ENV{OSG_ROOT}/lib
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/lib
|
||||
@@ -61,6 +70,7 @@ ELSE(MSVC)
|
||||
/opt/local/lib
|
||||
/opt/csw/lib
|
||||
/opt/lib
|
||||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/lib
|
||||
/usr/freeware/lib64
|
||||
)
|
||||
ENDIF(MSVC)
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
#use pkg-config to find various modues
|
||||
INCLUDE(FindPkgConfig OPTIONAL)
|
||||
|
||||
IF(PKG_CONFIG_FOUND)
|
||||
|
||||
INCLUDE(FindPkgConfig)
|
||||
|
||||
PKG_CHECK_MODULES(CAIRO cairo)
|
||||
PKG_CHECK_MODULES(POPPLER poppler-glib)
|
||||
|
||||
IF (POPPLER_FOUND)
|
||||
|
||||
INCLUDE(CheckCXXSourceRuns)
|
||||
|
||||
SET(CMAKE_REQUIRED_INCLUDES ${POPPLER_INCLUDE_DIRS})
|
||||
|
||||
# Do step by step checking,
|
||||
CHECK_CXX_SOURCE_RUNS("
|
||||
#include <cstdlib>
|
||||
#include <poppler.h>
|
||||
int main()
|
||||
{
|
||||
#ifdef POPPLER_HAS_CAIRO
|
||||
return EXIT_SUCCESS;
|
||||
#else
|
||||
return EXIT_FAILURE
|
||||
#endif
|
||||
}
|
||||
" POPPLER_HAS_CAIRO)
|
||||
|
||||
IF (NOT POPPLER_HAS_CAIRO)
|
||||
SET(POPPLER_FOUND FALSE)
|
||||
ENDIF()
|
||||
|
||||
ENDIF()
|
||||
|
||||
# IF (POPPLER_FOUND AND (NOT POPPLER_LIBRARIES OR NOT POPPLER_INCLUDE_DIRS) )
|
||||
# SET(POPPLER_FOUND FALSE)
|
||||
# ENDIF()
|
||||
|
||||
ENDIF()
|
||||
@@ -1,49 +0,0 @@
|
||||
# Locate Apple QTKit (next-generation QuickTime)
|
||||
# This module defines
|
||||
# QTKIT_LIBRARY
|
||||
# QTKIT_FOUND, if false, do not try to link to gdal
|
||||
# QTKIT_INCLUDE_DIR, where to find the headers
|
||||
#
|
||||
# $QTKIT_DIR is an environment variable that would
|
||||
# correspond to the ./configure --prefix=$QTKIT_DIR
|
||||
#
|
||||
# Created by Eric Wing.
|
||||
|
||||
# QTKit on OS X looks different than QTKit for Windows,
|
||||
# so I am going to case the two.
|
||||
|
||||
IF(APPLE)
|
||||
FIND_PATH(QTKIT_INCLUDE_DIR QTKit/QTKit.h)
|
||||
FIND_LIBRARY(QTKIT_LIBRARY QTKit)
|
||||
ENDIF()
|
||||
|
||||
|
||||
SET(QTKIT_FOUND "NO")
|
||||
IF(QTKIT_LIBRARY AND QTKIT_INCLUDE_DIR)
|
||||
SET(QTKIT_FOUND "YES")
|
||||
ENDIF()
|
||||
|
||||
IF(OSG_BUILD_PLATFORM_IPHONE OR OSG_BUILD_PLATFORM_IPHONE_SIMULATOR)
|
||||
SET(QTKIT_FOUND "NO")
|
||||
ENDIF()
|
||||
|
||||
IF(APPLE)
|
||||
# Technically QTKit is 64-bit capable, but the QTKit plug-in currently uses
|
||||
# a few 32-bit only APIs to bridge QTKit and Core Video.
|
||||
# As such, the plugin won't compile for 64-bit until Apple fixes this hole
|
||||
# in their API.
|
||||
# For simplicitly, I pretend QTKit is only 32-bit, but if/when Apple fixes
|
||||
# this, we need an OS version check.
|
||||
# Snow Leopard still lacks a 64-bit path for this.
|
||||
#First check to see if we are running with a native 64-bit compiler (10.6 default) and implicit arch
|
||||
IF(NOT CMAKE_OSX_ARCHITECTURES AND CMAKE_SIZEOF_VOID_P EQUAL 8)
|
||||
SET(QTKIT_FOUND "NO")
|
||||
ELSE()
|
||||
#Otherwise check to see if 64-bit is explicitly called for.
|
||||
LIST(FIND CMAKE_OSX_ARCHITECTURES "x86_64" has64Compile)
|
||||
IF(NOT has64Compile EQUAL -1)
|
||||
SET(QTKIT_FOUND "NO")
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
|
||||
@@ -1,23 +0,0 @@
|
||||
# Locate Apple QuartzCore
|
||||
# This module defines
|
||||
# QUARTZCORE_LIBRARY
|
||||
# QUARTZCORE_FOUND, if false, do not try to link to QUARTZCORE
|
||||
# QUARTZCORE_INCLUDE_DIR, where to find the headers
|
||||
#
|
||||
# $QUARTZCORE_DIR is an environment variable that would
|
||||
# correspond to the ./configure --prefix=$QUARTZCORE_DIR
|
||||
#
|
||||
# Created by Stephan Maximilian Huber.
|
||||
|
||||
|
||||
IF(APPLE)
|
||||
FIND_PATH(QUARTZCORE_INCLUDE_DIR QuartzCore/QuartzCore.h)
|
||||
FIND_LIBRARY(QUARTZCORE_LIBRARY QuartzCore)
|
||||
ENDIF()
|
||||
|
||||
|
||||
SET(QUARTZCORE_FOUND "NO")
|
||||
IF(QUARTZCORE_LIBRARY AND QUARTZCORE_INCLUDE_DIR)
|
||||
SET(QUARTZCORE_FOUND "YES")
|
||||
ENDIF()
|
||||
|
||||
@@ -1,14 +1,13 @@
|
||||
# Locate QuickTime
|
||||
# This module defines
|
||||
# QUICKTIME_LIBRARY
|
||||
# QUICKTIME_FOUND, if false, do not try to link to gdal
|
||||
# QUICKTIME_FOUND, if false, do not try to link to gdal
|
||||
# QUICKTIME_INCLUDE_DIR, where to find the headers
|
||||
#
|
||||
# $QUICKTIME_DIR is an environment variable that would
|
||||
# correspond to the ./configure --prefix=$QUICKTIME_DIR
|
||||
#
|
||||
# Created by Eric Wing.
|
||||
|
||||
# Created by Eric Wing.
|
||||
|
||||
# QuickTime on OS X looks different than QuickTime for Windows,
|
||||
# so I am going to case the two.
|
||||
@@ -16,7 +15,7 @@
|
||||
IF(APPLE)
|
||||
FIND_PATH(QUICKTIME_INCLUDE_DIR QuickTime/QuickTime.h)
|
||||
FIND_LIBRARY(QUICKTIME_LIBRARY QuickTime)
|
||||
ELSE()
|
||||
ELSE(APPLE)
|
||||
FIND_PATH(QUICKTIME_INCLUDE_DIR QuickTime.h
|
||||
$ENV{QUICKTIME_DIR}/include
|
||||
$ENV{QUICKTIME_DIR}
|
||||
@@ -40,35 +39,11 @@ ELSE()
|
||||
PATH_SUFFIXES lib64 lib
|
||||
)
|
||||
FIND_LIBRARY(QUICKTIME_LIBRARY QuickTime)
|
||||
ENDIF()
|
||||
|
||||
ENDIF(APPLE)
|
||||
|
||||
SET(QUICKTIME_FOUND "NO")
|
||||
IF(QUICKTIME_LIBRARY AND QUICKTIME_INCLUDE_DIR)
|
||||
SET(QUICKTIME_FOUND "YES")
|
||||
ENDIF()
|
||||
ENDIF(QUICKTIME_LIBRARY AND QUICKTIME_INCLUDE_DIR)
|
||||
|
||||
IF(OSG_BUILD_PLATFORM_IPHONE OR OSG_BUILD_PLATFORM_IPHONE_SIMULATOR)
|
||||
SET(QUICKTIME_FOUND "NO")
|
||||
ELSE()
|
||||
IF(APPLE)
|
||||
#Quicktime is not supported under 64bit OSX build so we need to detect it and disable it.
|
||||
#First check to see if we are running with a native 64-bit compiler (10.6 default) and implicit arch
|
||||
IF(NOT CMAKE_OSX_ARCHITECTURES AND CMAKE_SIZEOF_VOID_P EQUAL 8)
|
||||
MESSAGE("Disabling QuickTime on 64-bit architectures")
|
||||
SET(QUICKTIME_FOUND "NO")
|
||||
ELSEIF(OSG_OSX_VERSION VERSION_GREATER 10.6)
|
||||
# Quicktime officially deprecated starting 10.7
|
||||
MESSAGE("Disabling QuickTime because it's not supported by the selected SDK ${OSG_OSX_VERSION}")
|
||||
SET(QUICKTIME_FOUND "NO")
|
||||
ELSE()
|
||||
#Otherwise check to see if 64-bit is explicitly called for.
|
||||
LIST(FIND CMAKE_OSX_ARCHITECTURES "x86_64" has64Compile)
|
||||
IF(NOT has64Compile EQUAL -1)
|
||||
MESSAGE("Disabling QuickTime on 64-bit architectures")
|
||||
SET(QUICKTIME_FOUND "NO")
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
|
||||
@@ -1,18 +0,0 @@
|
||||
#use pkg-config to find various modues
|
||||
INCLUDE(FindPkgConfig OPTIONAL)
|
||||
|
||||
IF(PKG_CONFIG_FOUND)
|
||||
|
||||
INCLUDE(FindPkgConfig)
|
||||
|
||||
#Version 2.35 introduces the rsvg_cleanup function which is used
|
||||
PKG_CHECK_MODULES(RSVG librsvg-2.0>=2.35)
|
||||
|
||||
PKG_CHECK_MODULES(CAIRO cairo)
|
||||
|
||||
IF (RSVG_FOUND AND NOT CAIRO_FOUND)
|
||||
SET(RSVG_FOUND FALSE)
|
||||
ENDIF()
|
||||
|
||||
|
||||
ENDIF()
|
||||
@@ -1,178 +0,0 @@
|
||||
# - Locate SDL library
|
||||
# This module defines
|
||||
# SDL2_LIBRARY, the name of the library to link against
|
||||
# SDL2_FOUND, if false, do not try to link to SDL
|
||||
# SDL2_INCLUDE_DIR, where to find SDL.h
|
||||
# SDL2_VERSION_STRING, human-readable string containing the version of SDL
|
||||
#
|
||||
# This module responds to the flag:
|
||||
# SDL2_BUILDING_LIBRARY
|
||||
# If this is defined, then no SDL2_main will be linked in because
|
||||
# only applications need main().
|
||||
# Otherwise, it is assumed you are building an application and this
|
||||
# module will attempt to locate and set the proper link flags
|
||||
# as part of the returned SDL2_LIBRARY variable.
|
||||
#
|
||||
# Don't forget to include SDLmain.h and SDLmain.m your project for the
|
||||
# OS X framework based version. (Other versions link to -lSDLmain which
|
||||
# this module will try to find on your behalf.) Also for OS X, this
|
||||
# module will automatically add the -framework Cocoa on your behalf.
|
||||
#
|
||||
#
|
||||
# Additional Note: If you see an empty SDL2_LIBRARY_TEMP in your configuration
|
||||
# and no SDL2_LIBRARY, it means CMake did not find your SDL library
|
||||
# (SDL.dll, libsdl.so, SDL.framework, etc).
|
||||
# Set SDL2_LIBRARY_TEMP to point to your SDL library, and configure again.
|
||||
# Similarly, if you see an empty SDL2MAIN_LIBRARY, you should set this value
|
||||
# as appropriate. These values are used to generate the final SDL2_LIBRARY
|
||||
# variable, but when these values are unset, SDL2_LIBRARY does not get created.
|
||||
#
|
||||
#
|
||||
# $SDLDIR is an environment variable that would
|
||||
# correspond to the ./configure --prefix=$SDLDIR
|
||||
# used in building SDL.
|
||||
# l.e.galup 9-20-02
|
||||
#
|
||||
# Modified by Eric Wing.
|
||||
# Added code to assist with automated building by using environmental variables
|
||||
# and providing a more controlled/consistent search behavior.
|
||||
# Added new modifications to recognize OS X frameworks and
|
||||
# additional Unix paths (FreeBSD, etc).
|
||||
# Also corrected the header search path to follow "proper" SDL guidelines.
|
||||
# Added a search for SDLmain which is needed by some platforms.
|
||||
# Added a search for threads which is needed by some platforms.
|
||||
# Added needed compile switches for MinGW.
|
||||
#
|
||||
# On OSX, this will prefer the Framework version (if found) over others.
|
||||
# People will have to manually change the cache values of
|
||||
# SDL2_LIBRARY to override this selection or set the CMake environment
|
||||
# CMAKE_INCLUDE_PATH to modify the search paths.
|
||||
#
|
||||
# Note that the header path has changed from SDL/SDL.h to just SDL.h
|
||||
# This needed to change because "proper" SDL convention
|
||||
# is #include "SDL.h", not <SDL/SDL.h>. This is done for portability
|
||||
# reasons because not all systems place things in SDL/ (see FreeBSD).
|
||||
|
||||
#=============================================================================
|
||||
# Copyright 2003-2009 Kitware, Inc.
|
||||
# Copyright 2012 Benjamin Eikel
|
||||
#
|
||||
# Distributed under the OSI-approved BSD License (the "License");
|
||||
# see accompanying file Copyright.txt for details.
|
||||
#
|
||||
# This software is distributed WITHOUT ANY WARRANTY; without even the
|
||||
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
# See the License for more information.
|
||||
#=============================================================================
|
||||
# (To distribute this file outside of CMake, substitute the full
|
||||
# License text for the above reference.)
|
||||
|
||||
find_path(SDL2_INCLUDE_DIR SDL.h
|
||||
HINTS
|
||||
ENV SDL2DIR
|
||||
PATH_SUFFIXES include/SDL2
|
||||
)
|
||||
|
||||
# SDL-1.1 is the name used by FreeBSD ports...
|
||||
# don't confuse it for the version number.
|
||||
find_library(SDL2_LIBRARY_TEMP
|
||||
NAMES SDL2
|
||||
HINTS
|
||||
ENV SDL2DIR
|
||||
PATH_SUFFIXES lib
|
||||
)
|
||||
|
||||
if(NOT SDL2_BUILDING_LIBRARY)
|
||||
if(NOT ${SDL2_INCLUDE_DIR} MATCHES ".framework")
|
||||
# Non-OS X framework versions expect you to also dynamically link to
|
||||
# SDLmain. This is mainly for Windows and OS X. Other (Unix) platforms
|
||||
# seem to provide SDLmain for compatibility even though they don't
|
||||
# necessarily need it.
|
||||
find_library(SDL2MAIN_LIBRARY
|
||||
NAMES SDL2main
|
||||
HINTS
|
||||
ENV SDL2DIR
|
||||
PATH_SUFFIXES lib
|
||||
PATHS
|
||||
/sw
|
||||
/opt/local
|
||||
/opt/csw
|
||||
/opt
|
||||
)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# SDL may require threads on your system.
|
||||
# The Apple build may not need an explicit flag because one of the
|
||||
# frameworks may already provide it.
|
||||
# But for non-OSX systems, I will use the CMake Threads package.
|
||||
if(NOT APPLE)
|
||||
find_package(Threads)
|
||||
endif()
|
||||
|
||||
# MinGW needs an additional library, mwindows
|
||||
# It's total link flags should look like -lmingw32 -lSDLmain -lSDL -lmwindows
|
||||
# (Actually on second look, I think it only needs one of the m* libraries.)
|
||||
if(MINGW)
|
||||
set(MINGW32_LIBRARY mingw32 CACHE STRING "mwindows for MinGW")
|
||||
endif()
|
||||
|
||||
if(SDL2_LIBRARY_TEMP)
|
||||
# For SDLmain
|
||||
if(SDL2MAIN_LIBRARY AND NOT SDL2_BUILDING_LIBRARY)
|
||||
list(FIND SDL2_LIBRARY_TEMP "${SDL2MAIN_LIBRARY}" _SDL2_MAIN_INDEX)
|
||||
if(_SDL2_MAIN_INDEX EQUAL -1)
|
||||
set(SDL2_LIBRARY_TEMP "${SDL2MAIN_LIBRARY}" ${SDL2_LIBRARY_TEMP})
|
||||
endif()
|
||||
unset(_SDL2_MAIN_INDEX)
|
||||
endif()
|
||||
|
||||
# For OS X, SDL uses Cocoa as a backend so it must link to Cocoa.
|
||||
# CMake doesn't display the -framework Cocoa string in the UI even
|
||||
# though it actually is there if I modify a pre-used variable.
|
||||
# I think it has something to do with the CACHE STRING.
|
||||
# So I use a temporary variable until the end so I can set the
|
||||
# "real" variable in one-shot.
|
||||
if(APPLE)
|
||||
set(SDL2_LIBRARY_TEMP ${SDL2_LIBRARY_TEMP} "-framework Cocoa")
|
||||
endif()
|
||||
|
||||
# For threads, as mentioned Apple doesn't need this.
|
||||
# In fact, there seems to be a problem if I used the Threads package
|
||||
# and try using this line, so I'm just skipping it entirely for OS X.
|
||||
if(NOT APPLE)
|
||||
set(SDL2_LIBRARY_TEMP ${SDL2_LIBRARY_TEMP} ${CMAKE_THREAD_LIBS_INIT})
|
||||
endif()
|
||||
|
||||
# For MinGW library
|
||||
if(MINGW)
|
||||
set(SDL2_LIBRARY_TEMP ${MINGW32_LIBRARY} ${SDL2_LIBRARY_TEMP})
|
||||
endif()
|
||||
|
||||
# Set the final string here so the GUI reflects the final state.
|
||||
set(SDL2_LIBRARY ${SDL2_LIBRARY_TEMP} CACHE STRING "Where the SDL Library can be found")
|
||||
# Set the temp variable to INTERNAL so it is not seen in the CMake GUI
|
||||
set(SDL2_LIBRARY_TEMP "${SDL2_LIBRARY_TEMP}" CACHE INTERNAL "")
|
||||
endif()
|
||||
|
||||
if(SDL2_INCLUDE_DIR AND EXISTS "${SDL2_INCLUDE_DIR}/SDL2_version.h")
|
||||
file(STRINGS "${SDL2_INCLUDE_DIR}/SDL2_version.h" SDL2_VERSION_MAJOR_LINE REGEX "^#define[ \t]+SDL2_MAJOR_VERSION[ \t]+[0-9]+$")
|
||||
file(STRINGS "${SDL2_INCLUDE_DIR}/SDL2_version.h" SDL2_VERSION_MINOR_LINE REGEX "^#define[ \t]+SDL2_MINOR_VERSION[ \t]+[0-9]+$")
|
||||
file(STRINGS "${SDL2_INCLUDE_DIR}/SDL2_version.h" SDL2_VERSION_PATCH_LINE REGEX "^#define[ \t]+SDL2_PATCHLEVEL[ \t]+[0-9]+$")
|
||||
string(REGEX REPLACE "^#define[ \t]+SDL2_MAJOR_VERSION[ \t]+([0-9]+)$" "\\1" SDL2_VERSION_MAJOR "${SDL2_VERSION_MAJOR_LINE}")
|
||||
string(REGEX REPLACE "^#define[ \t]+SDL2_MINOR_VERSION[ \t]+([0-9]+)$" "\\1" SDL2_VERSION_MINOR "${SDL2_VERSION_MINOR_LINE}")
|
||||
string(REGEX REPLACE "^#define[ \t]+SDL2_PATCHLEVEL[ \t]+([0-9]+)$" "\\1" SDL2_VERSION_PATCH "${SDL2_VERSION_PATCH_LINE}")
|
||||
set(SDL2_VERSION_STRING ${SDL2_VERSION_MAJOR}.${SDL2_VERSION_MINOR}.${SDL2_VERSION_PATCH})
|
||||
unset(SDL2_VERSION_MAJOR_LINE)
|
||||
unset(SDL2_VERSION_MINOR_LINE)
|
||||
unset(SDL2_VERSION_PATCH_LINE)
|
||||
unset(SDL2_VERSION_MAJOR)
|
||||
unset(SDL2_VERSION_MINOR)
|
||||
unset(SDL2_VERSION_PATCH)
|
||||
endif()
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
|
||||
FIND_PACKAGE_HANDLE_STANDARD_ARGS(SDL2
|
||||
REQUIRED_VARS SDL2_LIBRARY SDL2_INCLUDE_DIR
|
||||
VERSION_VAR SDL2_VERSION_STRING)
|
||||
@@ -1,45 +0,0 @@
|
||||
# Locate V8
|
||||
# This module defines
|
||||
# V8_LIBRARY
|
||||
# V8_FOUND, if false, do not try to link to gdal
|
||||
# V8_INCLUDE_DIR, where to find the headers
|
||||
#
|
||||
# $V8_DIR is an environment variable that would
|
||||
# correspond to the ./configure --prefix=$V8_DIR
|
||||
#
|
||||
# Created by Robert Osfield (based on FindFLTK.cmake)
|
||||
|
||||
FIND_PATH(V8_INCLUDE_DIR v8.h
|
||||
$ENV{V8_DIR}/include
|
||||
$ENV{V8_DIR}
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/include
|
||||
/usr/include
|
||||
/sw/include # Fink
|
||||
/opt/local/include # DarwinPorts
|
||||
/opt/csw/include # Blastwave
|
||||
/opt/include
|
||||
/usr/freeware/include
|
||||
)
|
||||
|
||||
FIND_LIBRARY(V8_LIBRARY
|
||||
NAMES v8 libv8
|
||||
PATHS
|
||||
$ENV{V8_DIR}/lib
|
||||
$ENV{V8_DIR}
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/lib
|
||||
/usr/lib
|
||||
/sw/lib
|
||||
/opt/local/lib
|
||||
/opt/csw/lib
|
||||
/opt/lib
|
||||
/usr/freeware/lib64
|
||||
)
|
||||
|
||||
SET(V8_FOUND "NO")
|
||||
IF(V8_LIBRARY AND V8_INCLUDE_DIR)
|
||||
SET(V8_FOUND "YES")
|
||||
ENDIF()
|
||||
@@ -12,6 +12,9 @@
|
||||
FIND_PATH(XINE_INCLUDE_DIR xine.h
|
||||
$ENV{XINE_DIR}/include
|
||||
$ENV{XINE_DIR}
|
||||
$ENV{OSGDIR}/include
|
||||
$ENV{OSGDIR}
|
||||
$ENV{OSG_ROOT}/include
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/include
|
||||
@@ -20,6 +23,7 @@ FIND_PATH(XINE_INCLUDE_DIR xine.h
|
||||
/opt/local/include # DarwinPorts
|
||||
/opt/csw/include # Blastwave
|
||||
/opt/include
|
||||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/include
|
||||
/usr/freeware/include
|
||||
)
|
||||
|
||||
@@ -28,6 +32,9 @@ FIND_LIBRARY(XINE_LIBRARY
|
||||
PATHS
|
||||
$ENV{XINE_DIR}/lib
|
||||
$ENV{XINE_DIR}
|
||||
$ENV{OSGDIR}/lib
|
||||
$ENV{OSGDIR}
|
||||
$ENV{OSG_ROOT}/lib
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/lib
|
||||
@@ -36,6 +43,7 @@ FIND_LIBRARY(XINE_LIBRARY
|
||||
/opt/local/lib
|
||||
/opt/csw/lib
|
||||
/opt/lib
|
||||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/lib
|
||||
/usr/freeware/lib64
|
||||
)
|
||||
|
||||
|
||||
56
CMakeModules/FindZLIB.cmake
Normal file
56
CMakeModules/FindZLIB.cmake
Normal file
@@ -0,0 +1,56 @@
|
||||
# Locate gdal
|
||||
# This module defines
|
||||
# ZLIB_LIBRARY
|
||||
# ZLIB_FOUND, if false, do not try to link to gdal
|
||||
# ZLIB_INCLUDE_DIR, where to find the headers
|
||||
#
|
||||
# $ZLIB_DIR is an environment variable that would
|
||||
# correspond to the ./configure --prefix=$ZLIB_DIR
|
||||
# used in building gdal.
|
||||
#
|
||||
# Created by Ulrich Hertlein.
|
||||
|
||||
FIND_PATH(ZLIB_INCLUDE_DIR zlib.h
|
||||
$ENV{ZLIB_DIR}/include
|
||||
$ENV{ZLIB_DIR}
|
||||
$ENV{OSGDIR}/include
|
||||
$ENV{OSGDIR}
|
||||
$ENV{OSG_ROOT}/include
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/include
|
||||
/usr/include
|
||||
/sw/include # Fink
|
||||
/opt/local/include # DarwinPorts
|
||||
/opt/csw/include # Blastwave
|
||||
/opt/include
|
||||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/include
|
||||
/usr/freeware/include
|
||||
)
|
||||
|
||||
FIND_LIBRARY(ZLIB_LIBRARY
|
||||
NAMES z libz
|
||||
PATHS
|
||||
$ENV{ZLIB_DIR}/lib
|
||||
$ENV{ZLIB_DIR}
|
||||
$ENV{OSGDIR}/lib
|
||||
$ENV{OSGDIR}
|
||||
$ENV{OSG_ROOT}/lib
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/lib
|
||||
/usr/lib
|
||||
/sw/lib
|
||||
/opt/local/lib
|
||||
/opt/csw/lib
|
||||
/opt/lib
|
||||
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/lib
|
||||
/usr/freeware/lib64
|
||||
)
|
||||
|
||||
SET(ZLIB_FOUND "NO")
|
||||
IF(ZLIB_LIBRARY AND ZLIB_INCLUDE_DIR)
|
||||
SET(ZLIB_FOUND "YES")
|
||||
ENDIF(ZLIB_LIBRARY AND ZLIB_INCLUDE_DIR)
|
||||
|
||||
|
||||
@@ -1,47 +0,0 @@
|
||||
# Locate ZeroConf / Bonjour
|
||||
# This module defines
|
||||
# ZEROCONF_LIBRARY
|
||||
# ZEROCONF_FOUND, if false, do not try to link to gdal
|
||||
# ZEROCONF_INCLUDE_DIR, where to find the headers
|
||||
#
|
||||
# $ZEROCONF_DIR is an environment variable that would
|
||||
# correspond to the ./configure --prefix=$ZEROCONF_DIR
|
||||
|
||||
# Created by Stephan Maximilian Huber
|
||||
|
||||
SET(ZEROCONF_FOUND "NO")
|
||||
|
||||
IF(APPLE)
|
||||
# bonjour is part of the system on os x / ios
|
||||
SET(ZEROCONF_FOUND "YES")
|
||||
ELSE()
|
||||
IF(WIN32)
|
||||
# find the Bonjour SDK
|
||||
FIND_PATH(ZEROCONF_INCLUDE_DIR dnssd.h
|
||||
$ENV{ZEROCONF_DIR}/include
|
||||
$ENV{ZEROCONF_DIR}
|
||||
NO_DEFAULT_PATH
|
||||
)
|
||||
FIND_PATH(ZEROCONF_INCLUDE_DIR dnssd.h
|
||||
PATHS ${CMAKE_PREFIX_PATH} # Unofficial: We are proposing this.
|
||||
NO_DEFAULT_PATH
|
||||
PATH_SUFFIXES include
|
||||
)
|
||||
FIND_PATH(ZEROCONF_INCLUDE_DIR dnssd.h)
|
||||
|
||||
FIND_LIBRARY(ZEROCONF_LIBRARY dnssd
|
||||
PATHS ${CMAKE_PREFIX_PATH} # Unofficial: We are proposing this.
|
||||
NO_DEFAULT_PATH
|
||||
PATH_SUFFIXES lib64 lib
|
||||
)
|
||||
FIND_LIBRARY(ZEROCONF_LIBRARY dnssd)
|
||||
|
||||
SET(ZEROCONF_FOUND "NO")
|
||||
IF(ZEROCONF_LIBRARY AND ZEROCONF_INCLUDE_DIR)
|
||||
SET(ZEROCONF_FOUND "YES")
|
||||
ENDIF()
|
||||
|
||||
ELSE()
|
||||
# TODO find AVAHI on linux
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
@@ -1,63 +0,0 @@
|
||||
# Locate ILMBASE
|
||||
# This module defines
|
||||
# ILMBASE_LIBRARY
|
||||
# ILMBASE_FOUND, if false, do not try to link to ILMBASE
|
||||
# ILMBASE_INCLUDE_DIR, where to find the headers
|
||||
#
|
||||
# $ILMBASE_DIR is an environment variable that would
|
||||
# correspond to the ./configure --prefix=$ILMBASE_DIR
|
||||
#
|
||||
# Created by Robert Osfield.
|
||||
|
||||
|
||||
FIND_PATH(ILMBASE_INCLUDE_DIR OpenEXR/ImathVec.h
|
||||
$ENV{ILMBASE_DIR}/include
|
||||
$ENV{ILMBASE_DIR}
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/include
|
||||
/usr/include
|
||||
/sw/include # Fink
|
||||
/opt/local/include # DarwinPorts
|
||||
/opt/csw/include # Blastwave
|
||||
/opt/include
|
||||
/usr/freeware/include
|
||||
)
|
||||
|
||||
# Macro to find ilmbase libraries
|
||||
# example: ILMBASE_FIND_VAR(OPENEXR_IlmThread_LIBRARY IlmThread)
|
||||
MACRO(ILMBASE_FIND_VAR varname libname)
|
||||
FIND_LIBRARY( ${varname}
|
||||
NAMES ${libname} ${libname}-2_1 ${libname}-2_2
|
||||
PATHS
|
||||
$ENV{ILMBASE_DIR}/lib
|
||||
$ENV{ILMBASE_DIR}
|
||||
~/Library/Frameworks
|
||||
/Library/Frameworks
|
||||
/usr/local/lib
|
||||
/usr/lib
|
||||
/sw/lib
|
||||
/opt/local/lib
|
||||
/opt/csw/lib
|
||||
/opt/lib
|
||||
/usr/freeware/lib64
|
||||
)
|
||||
ENDMACRO(ILMBASE_FIND_VAR)
|
||||
|
||||
# Macro to find exr libraries (and debug versions)
|
||||
# example: ILMBASE_FIND(OPENEXR_IlmThread_LIBRARY IlmThread)
|
||||
MACRO(ILMBASE_FIND libname)
|
||||
ILMBASE_FIND_VAR(ILMBASE_${libname}_LIBRARY ${libname})
|
||||
ILMBASE_FIND_VAR(ILMBASE_${libname}_LIBRARY_DEBUG ${libname}d)
|
||||
ENDMACRO(ILMBASE_FIND)
|
||||
|
||||
ILMBASE_FIND(IlmThread)
|
||||
ILMBASE_FIND(Iex)
|
||||
ILMBASE_FIND(Half)
|
||||
|
||||
SET(ILMBASE_FOUND "NO")
|
||||
IF(ILMBASE_INCLUDE_DIR AND ILMBASE_IlmThread_LIBRARY AND ILMBASE_Iex_LIBRARY AND ILMBASE_Half_LIBRARY)
|
||||
SET(ILMBASE_LIBRARIES ${ILMBASE_IlmThread_LIBRARY} ${ILMBASE_Half_LIBRARY} ${ILMBASE_Iex_LIBRARY} )
|
||||
SET(ILMBASE_LIBRARIES_VARS ILMBASE_IlmThread_LIBRARY ILMBASE_Half_LIBRARY ILMBASE_Iex_LIBRARY )
|
||||
SET(ILMBASE_FOUND "YES")
|
||||
ENDIF(ILMBASE_INCLUDE_DIR AND ILMBASE_IlmThread_LIBRARY AND ILMBASE_Iex_LIBRARY AND ILMBASE_Half_LIBRARY)
|
||||
@@ -2,67 +2,37 @@
|
||||
|
||||
# Required Vars:
|
||||
# ${LIB_NAME}
|
||||
# ${TARGET_H}
|
||||
# ${LIB_PUBLIC_HEADERS}
|
||||
|
||||
SET(INSTALL_INCDIR include)
|
||||
SET(INSTALL_BINDIR bin)
|
||||
IF(WIN32)
|
||||
SET(INSTALL_LIBDIR bin)
|
||||
SET(INSTALL_ARCHIVEDIR lib)
|
||||
ELSE()
|
||||
ELSE(WIN32)
|
||||
SET(INSTALL_LIBDIR lib${LIB_POSTFIX})
|
||||
SET(INSTALL_ARCHIVEDIR lib${LIB_POSTFIX})
|
||||
ENDIF()
|
||||
ENDIF(WIN32)
|
||||
|
||||
SET(HEADERS_GROUP "Header Files")
|
||||
|
||||
SOURCE_GROUP(
|
||||
${HEADERS_GROUP}
|
||||
FILES ${TARGET_H}
|
||||
FILES ${LIB_PUBLIC_HEADERS}
|
||||
)
|
||||
|
||||
IF(MSVC AND OSG_MSVC_VERSIONED_DLL)
|
||||
HANDLE_MSVC_DLL()
|
||||
ENDIF()
|
||||
HANDLE_MSVC_DLL()
|
||||
ENDIF(MSVC AND OSG_MSVC_VERSIONED_DLL)
|
||||
|
||||
INSTALL(
|
||||
TARGETS ${LIB_NAME}
|
||||
RUNTIME DESTINATION ${INSTALL_BINDIR} COMPONENT libopenscenegraph
|
||||
LIBRARY DESTINATION ${INSTALL_LIBDIR} COMPONENT libopenscenegraph
|
||||
ARCHIVE DESTINATION ${INSTALL_ARCHIVEDIR} COMPONENT libopenscenegraph-dev
|
||||
RUNTIME DESTINATION ${INSTALL_BINDIR}
|
||||
LIBRARY DESTINATION ${INSTALL_LIBDIR}
|
||||
ARCHIVE DESTINATION ${INSTALL_ARCHIVEDIR}
|
||||
)
|
||||
# FIXME: Do not run for OS X framework
|
||||
INSTALL(
|
||||
FILES ${LIB_PUBLIC_HEADERS}
|
||||
DESTINATION ${INSTALL_INCDIR}/${LIB_NAME}
|
||||
)
|
||||
|
||||
IF(MSVC AND DYNAMIC_OPENSCENEGRAPH)
|
||||
GET_TARGET_PROPERTY(PREFIX ${LIB_NAME} PREFIX)
|
||||
IF("${PREFIX}" STREQUAL PREFIX-NOTFOUND) # Fix for PREFIX-NOTFOUND left in file names
|
||||
SET(PREFIX "")
|
||||
ENDIF()
|
||||
IF ( ${CMAKE_GENERATOR} STREQUAL "Ninja" )
|
||||
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PREFIX}${LIB_NAME}${CMAKE_RELEASE_POSTFIX}.pdb DESTINATION ${INSTALL_BINDIR} COMPONENT libopenscenegraph CONFIGURATIONS Release)
|
||||
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PREFIX}${LIB_NAME}${CMAKE_RELWITHDEBINFO_POSTFIX}.pdb DESTINATION ${INSTALL_BINDIR} COMPONENT libopenscenegraph CONFIGURATIONS RelWithDebInfo)
|
||||
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PREFIX}${LIB_NAME}${CMAKE_DEBUG_POSTFIX}.pdb DESTINATION ${INSTALL_BINDIR} COMPONENT libopenscenegraph CONFIGURATIONS Debug)
|
||||
ELSE ( ${CMAKE_GENERATOR} STREQUAL "Ninja" )
|
||||
INSTALL(FILES ${OUTPUT_BINDIR}/${PREFIX}${LIB_NAME}${CMAKE_RELWITHDEBINFO_POSTFIX}.pdb DESTINATION ${INSTALL_BINDIR} COMPONENT libopenscenegraph CONFIGURATIONS RelWithDebInfo)
|
||||
INSTALL(FILES ${OUTPUT_BINDIR}/${PREFIX}${LIB_NAME}${CMAKE_DEBUG_POSTFIX}.pdb DESTINATION ${INSTALL_BINDIR} COMPONENT libopenscenegraph CONFIGURATIONS Debug)
|
||||
ENDIF ( ${CMAKE_GENERATOR} STREQUAL "Ninja" )
|
||||
ENDIF(MSVC AND DYNAMIC_OPENSCENEGRAPH)
|
||||
|
||||
IF(NOT OSG_COMPILE_FRAMEWORKS)
|
||||
INSTALL (
|
||||
FILES ${TARGET_H}
|
||||
DESTINATION ${INSTALL_INCDIR}/${LIB_NAME}
|
||||
COMPONENT libopenscenegraph-dev
|
||||
)
|
||||
ELSE()
|
||||
SET(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE)
|
||||
SET(CMAKE_INSTALL_RPATH "${OSG_COMPILE_FRAMEWORKS_INSTALL_NAME_DIR}")
|
||||
|
||||
SET_TARGET_PROPERTIES(${LIB_NAME} PROPERTIES
|
||||
FRAMEWORK TRUE
|
||||
FRAMEWORK_VERSION ${OPENSCENEGRAPH_SOVERSION}
|
||||
PUBLIC_HEADER "${TARGET_H}"
|
||||
INSTALL_NAME_DIR "${OSG_COMPILE_FRAMEWORKS_INSTALL_NAME_DIR}"
|
||||
)
|
||||
# MESSAGE("${OSG_COMPILE_FRAMEWORKS_INSTALL_NAME_DIR}")
|
||||
ENDIF()
|
||||
|
||||
|
||||
@@ -1,188 +0,0 @@
|
||||
MACRO(SETUP_ANDROID_LIBRARY LIB_NAME)
|
||||
|
||||
#foreach(arg ${TARGET_LIBRARIES})
|
||||
# set(MODULE_LIBS "${MODULE_LIBS} -l${arg}")
|
||||
#endforeach(arg ${TARGET_LIBRARIES})
|
||||
|
||||
foreach(arg ${TARGET_SRC})
|
||||
string(REPLACE "${CMAKE_CURRENT_SOURCE_DIR}/" "" n_f ${arg})
|
||||
IF ("${arg}" MATCHES ".*\\.c$" OR "${arg}" MATCHES ".*\\.cpp$")
|
||||
#We only include source files, not header files, this removes anoying warnings
|
||||
set(MODULE_SOURCES "${MODULE_SOURCES} ${n_f}")
|
||||
ENDIF()
|
||||
endforeach(arg ${TARGET_SRC})
|
||||
|
||||
#SET(MODULE_INCLUDES "${CMAKE_SOURCE_DIR}/include include")
|
||||
GET_DIRECTORY_PROPERTY(loc_includes INCLUDE_DIRECTORIES)
|
||||
foreach(arg ${loc_includes})
|
||||
IF(NOT "${arg}" MATCHES "/usr/include" AND NOT "${arg}" MATCHES "/usr/local/include")
|
||||
set(MODULE_INCLUDES "${MODULE_INCLUDES} ${arg}")
|
||||
ENDIF()
|
||||
endforeach(arg ${loc_includes})
|
||||
|
||||
GET_DIRECTORY_PROPERTY(loc_definitions COMPILE_DEFINITIONS)
|
||||
foreach(arg ${loc_definitions})
|
||||
set(DEFINITIONS "${DEFINITIONS} -D${arg}")
|
||||
endforeach(arg ${loc_definitions})
|
||||
|
||||
message(STATUS "##############Creating Android Makefile#################")
|
||||
message(STATUS "name: ${LIB_NAME}")
|
||||
|
||||
set(MODULE_NAME ${LIB_NAME})
|
||||
set(MODULE_DIR ${CMAKE_CURRENT_SOURCE_DIR})
|
||||
set(MODULE_FLAGS_C ${DEFINITIONS})
|
||||
set(MODULE_FLAGS_CPP ${DEFINITIONS})
|
||||
#TODO: determine if GLES2 or GLES
|
||||
IF(OSG_GLES1_AVAILABLE)
|
||||
SET(OPENGLES_LIBRARY -lGLESv1_CM)
|
||||
ELSEIF(OSG_GLES2_AVAILABLE)
|
||||
SET(OPENGLES_LIBRARY -lGLESv2)
|
||||
ENDIF()
|
||||
#${MODULE_LIBS}
|
||||
set(MODULE_LIBS_FLAGS "${OPENGLES_LIBRARY} -ldl")
|
||||
if(NOT CPP_EXTENSION)
|
||||
set(CPP_EXTENSION "cpp")
|
||||
endif()
|
||||
IF(NOT MODULE_USER_STATIC_OR_DYNAMIC)
|
||||
MESSAGE(FATAL_ERROR "Not defined MODULE_USER_STATIC_OR_DYNAMIC")
|
||||
ENDIF()
|
||||
IF("MODULE_USER_STATIC_OR_DYNAMIC" MATCHES "STATIC")
|
||||
SET(MODULE_BUILD_TYPE "\$\(BUILD_STATIC_LIBRARY\)")
|
||||
SET(MODULE_LIBS_SHARED " ")
|
||||
SET(MODULE_LIBS_STATIC ${TARGET_LIBRARIES})
|
||||
ELSE()
|
||||
SET(MODULE_BUILD_TYPE "\$\(BUILD_SHARED_LIBRARY\)")
|
||||
SET(MODULE_LIBS_SHARED ${TARGET_LIBRARIES})
|
||||
SET(MODULE_LIBS_STATIC " ")
|
||||
ENDIF()
|
||||
set(ENV{AND_OSG_LIB_NAMES} "$ENV{AND_OSG_LIB_NAMES} ${LIB_NAME}")
|
||||
set(ENV{AND_OSG_LIB_PATHS} "$ENV{AND_OSG_LIB_PATHS}include ${CMAKE_CURRENT_BINARY_DIR}/Android.mk \n")
|
||||
|
||||
configure_file("${OSG_ANDROID_TEMPLATES}/Android.mk.modules.in" "${CMAKE_CURRENT_BINARY_DIR}/Android.mk")
|
||||
|
||||
ENDMACRO()
|
||||
|
||||
MACRO(ANDROID_3RD_PARTY)
|
||||
################################################
|
||||
#JPEG
|
||||
################################################
|
||||
FIND_PATH(JPEG_INCLUDE_DIR Android.mk
|
||||
${CMAKE_SOURCE_DIR}/3rdparty/libjpeg NO_CMAKE_FIND_ROOT_PATH
|
||||
)
|
||||
#set(ENV{AND_OSG_LIB_NAMES} "$ENV{AND_OSG_LIB_NAMES} libjpeg")
|
||||
#set(ENV{AND_OSG_LIB_PATHS} "$ENV{AND_OSG_LIB_PATHS}include ${JPEG_INCLUDE_DIR}/Android.mk \n")
|
||||
if(JPEG_INCLUDE_DIR)
|
||||
message(STATUS "Jpeg found ${JPEG_INCLUDE_DIR}" )
|
||||
set(JPEG_FOUND "Yes")
|
||||
install(DIRECTORY 3rdparty/build/libjpeg/ DESTINATION ./ )
|
||||
else(JPEG_INCLUDE_DIR)
|
||||
message(STATUS "Jpeg missing" )
|
||||
endif()
|
||||
################################################
|
||||
#PNG
|
||||
################################################
|
||||
FIND_PATH(PNG_INCLUDE_DIR Android.mk
|
||||
${CMAKE_SOURCE_DIR}/3rdparty/libpng NO_CMAKE_FIND_ROOT_PATH
|
||||
)
|
||||
#set(ENV{AND_OSG_LIB_NAMES} "$ENV{AND_OSG_LIB_NAMES} libpng")
|
||||
#set(ENV{AND_OSG_LIB_PATHS} "$ENV{AND_OSG_LIB_PATHS}include ${PNG_INCLUDE_DIR}/Android.mk \n")
|
||||
if(PNG_INCLUDE_DIR)
|
||||
message(STATUS "PNG found ${PNG_INCLUDE_DIR}" )
|
||||
set(PNG_FOUND "Yes")
|
||||
install(DIRECTORY 3rdparty/build/libpng/ DESTINATION ./ )
|
||||
else(PNG_INCLUDE_DIR)
|
||||
message(STATUS "PNG missing" )
|
||||
endif()
|
||||
################################################
|
||||
#GIF
|
||||
################################################
|
||||
FIND_PATH(GIFLIB_INCLUDE_DIR Android.mk
|
||||
${CMAKE_SOURCE_DIR}/3rdparty/giflib NO_CMAKE_FIND_ROOT_PATH
|
||||
)
|
||||
#set(ENV{AND_OSG_LIB_NAMES} "$ENV{AND_OSG_LIB_NAMES} libgif")
|
||||
#set(ENV{AND_OSG_LIB_PATHS} "$ENV{AND_OSG_LIB_PATHS}include ${GIFLIB_INCLUDE_DIR}/Android.mk \n")
|
||||
if(GIFLIB_INCLUDE_DIR)
|
||||
message(STATUS "GIF found ${GIFLIB_INCLUDE_DIR}" )
|
||||
set(GIFLIB_FOUND "Yes")
|
||||
install(DIRECTORY 3rdparty/build/giflib/ DESTINATION ./ )
|
||||
else(GIFLIB_INCLUDE_DIR)
|
||||
message(STATUS "GIF missing" )
|
||||
endif()
|
||||
################################################
|
||||
#TIF
|
||||
################################################
|
||||
FIND_PATH(TIFF_INCLUDE_DIR Android.mk
|
||||
${CMAKE_SOURCE_DIR}/3rdparty/libtiff NO_CMAKE_FIND_ROOT_PATH
|
||||
)
|
||||
#set(ENV{AND_OSG_LIB_NAMES} "$ENV{AND_OSG_LIB_NAMES} libtiff")
|
||||
#set(ENV{AND_OSG_LIB_PATHS} "$ENV{AND_OSG_LIB_PATHS}include ${TIFF_INCLUDE_DIR}/Android.mk \n")
|
||||
if(TIFF_INCLUDE_DIR)
|
||||
message(STATUS "TIF found ${TIFF_INCLUDE_DIR}" )
|
||||
set(TIFF_FOUND "Yes")
|
||||
install(DIRECTORY 3rdparty/build/libtiff/ DESTINATION ./ )
|
||||
else(TIFF_INCLUDE_DIR)
|
||||
message(STATUS "TIF missing" )
|
||||
endif()
|
||||
################################################
|
||||
#ZLIB
|
||||
################################################
|
||||
#FIND_PATH(ZLIB_INCLUDE_DIR Android.mk
|
||||
# ${CMAKE_SOURCE_DIR}/3rdparty/zlib
|
||||
#)
|
||||
#set(ENV{AND_OSG_LIB_NAMES} "$ENV{AND_OSG_LIB_NAMES} zlib")
|
||||
#set(ENV{AND_OSG_LIB_PATHS} "$ENV{AND_OSG_LIB_PATHS}include ${ZLIB_INCLUDE_DIR}/Android.mk \n")
|
||||
#if(ZLIB_INCLUDE_DIR)
|
||||
# message(STATUS "ZLIB found ${ZLIB_INCLUDE_DIR}" )
|
||||
# set(ZLIB_FOUND "Yes")
|
||||
# install(DIRECTORY 3rdparty/build/libjpeg/ DESTINATION ./ )
|
||||
#else(ZLIB_INCLUDE_DIR)
|
||||
# message(STATUS "ZLIB missing" )
|
||||
#endif()
|
||||
################################################
|
||||
#CURL
|
||||
################################################
|
||||
FIND_PATH(CURL_DIR Android.mk
|
||||
${CMAKE_SOURCE_DIR}/3rdparty/curl NO_CMAKE_FIND_ROOT_PATH
|
||||
)
|
||||
#set(ENV{AND_OSG_LIB_NAMES} "$ENV{AND_OSG_LIB_NAMES} libcurl")
|
||||
#set(ENV{AND_OSG_LIB_PATHS} "$ENV{AND_OSG_LIB_PATHS}include ${CURL_DIR}/Android.mk \n")
|
||||
set(CURL_INCLUDE_DIR ${CURL_DIR}/include)
|
||||
set(CURL_INCLUDE_DIRS ${CURL_DIR}/include) #Both are defined in FindCurl
|
||||
if(CURL_DIR)
|
||||
message(STATUS "Curl found ${CURL_DIR}" )
|
||||
set(CURL_FOUND "Yes")
|
||||
install(DIRECTORY 3rdparty/build/curl/ DESTINATION ./ )
|
||||
else(CURL_DIR)
|
||||
message(STATUS "Curl missing" )
|
||||
endif()
|
||||
################################################
|
||||
#FREETYPE
|
||||
################################################
|
||||
FIND_PATH(FREETYPE_DIR Android.mk
|
||||
${CMAKE_SOURCE_DIR}/3rdparty/freetype NO_CMAKE_FIND_ROOT_PATH
|
||||
)
|
||||
#set(ENV{AND_OSG_LIB_NAMES} "$ENV{AND_OSG_LIB_NAMES} libft2")
|
||||
#set(ENV{AND_OSG_LIB_PATHS} "$ENV{AND_OSG_LIB_PATHS}include ${FREETYPE_DIR}/Android.mk \n")
|
||||
set(FREETYPE_INCLUDE_DIRS ${FREETYPE_DIR}/include ${FREETYPE_DIR}/include/freetype/config)
|
||||
if(FREETYPE_DIR)
|
||||
message(STATUS "FREETYPE found ${FREETYPE_DIR}" )
|
||||
set(FREETYPE_FOUND "Yes")
|
||||
install(DIRECTORY 3rdparty/build/freetype/ DESTINATION ./ )
|
||||
else(FREETYPE_DIR)
|
||||
message(STATUS "FREETYPE missing" )
|
||||
endif()
|
||||
################################################
|
||||
#GDAL
|
||||
################################################
|
||||
FIND_PATH(GDAL_DIR gdal.h
|
||||
${CMAKE_SOURCE_DIR}/3rdparty/gdal/include NO_CMAKE_FIND_ROOT_PATH
|
||||
)
|
||||
set(GDAL_INCLUDE_DIR "${GDAL_DIR}")
|
||||
if(GDAL_DIR)
|
||||
message(STATUS "GDAL found ${GDAL_DIR}" )
|
||||
set(GDAL_FOUND "Yes")
|
||||
install(DIRECTORY 3rdparty/build/gdal/ DESTINATION ./ )
|
||||
else(GDAL_DIR)
|
||||
message(STATUS "GDAL missing" )
|
||||
endif()
|
||||
ENDMACRO()
|
||||
@@ -1,222 +0,0 @@
|
||||
# This script sets up packaging targets for each "COMPONENT" as specified in INSTALL commands
|
||||
#
|
||||
# for each component a CPackConfig-<component>.cmake is generated in the build tree
|
||||
# and a target is added to call cpack for it (e.g. package_openscenegaph
|
||||
# A target for generating a package with everything that gets INSTALLED is generated (package_openscenegraph-all)
|
||||
# A target for making all of the abaove packages is generated (package_ALL)
|
||||
#
|
||||
# package filenames are created on the form <package>-<platform>-<arch>[-<compiler>]-<build_type>[-static].tar.gz
|
||||
# ...where compiler optionally set using a cmake gui (OSG_CPACK_COMPILER). This script tries to guess compiler version for msvc generators
|
||||
# ...build_type matches CMAKE_BUILD_TYPE for all generators but the msvc ones
|
||||
|
||||
# resolve architecture. The reason i "change" i686 to i386 is that debian packages
|
||||
# require i386 so this is for the future
|
||||
IF("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "i686")
|
||||
SET(SYSTEM_ARCH "i386")
|
||||
ELSE()
|
||||
SET(SYSTEM_ARCH ${CMAKE_SYSTEM_PROCESSOR})
|
||||
ENDIF()
|
||||
|
||||
# set a default system name - use CMake setting (Linux|Windows|...)
|
||||
SET(SYSTEM_NAME ${CMAKE_SYSTEM_NAME})
|
||||
#message(STATUS "CMAKE_SYSTEM_NAME ${CMAKE_SYSTEM_NAME}")
|
||||
#message(STATUS "CMAKE_SYSTEM_PROCESSOR ${CMAKE_SYSTEM_PROCESSOR}")
|
||||
|
||||
# for msvc the SYSTEM_NAME is set win32/64 instead of "Windows"
|
||||
IF(MSVC)
|
||||
IF(CMAKE_CL_64)
|
||||
SET(SYSTEM_NAME "win64")
|
||||
ELSE()
|
||||
SET(SYSTEM_NAME "win32")
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
# Guess the compiler (is this desired for other platforms than windows?)
|
||||
IF(NOT DEFINED OSG_CPACK_COMPILER)
|
||||
INCLUDE(OsgDetermineCompiler)
|
||||
ENDIF()
|
||||
|
||||
# expose the compiler setting to the user
|
||||
SET(OSG_CPACK_COMPILER "${OSG_COMPILER}" CACHE STRING "This ia short string (vc90, vc80sp1, gcc-4.3, ...) describing your compiler. The string is used for creating package filenames")
|
||||
|
||||
IF(OSG_CPACK_COMPILER)
|
||||
SET(OSG_CPACK_SYSTEM_SPEC_STRING ${SYSTEM_NAME}-${SYSTEM_ARCH}-${OSG_CPACK_COMPILER})
|
||||
ELSE()
|
||||
SET(OSG_CPACK_SYSTEM_SPEC_STRING ${SYSTEM_NAME}-${SYSTEM_ARCH})
|
||||
ENDIF()
|
||||
|
||||
|
||||
## variables that apply to all packages
|
||||
SET(CPACK_PACKAGE_FILE_NAME "${CMAKE_PROJECT_NAME}-${OPENSCENEGRAPH_VERSION}")
|
||||
|
||||
# these goes for all platforms. Setting these stops the CPack.cmake script from generating options about other package compression formats (.z .tz, etc.)
|
||||
IF(WIN32)
|
||||
SET(CPACK_GENERATOR "ZIP" CACHE STRING "CPack package generator type (i.e ZIP,NSIS,TGZ,DEB,RPM, -- see CPack for valid stypes")
|
||||
ELSE()
|
||||
SET(CPACK_GENERATOR "TGZ" CACHE STRING "CPack package generator type (i.e ZIP,NSIS,TGZ,DEB,RPM, -- see CPack for valid stypes")
|
||||
ENDIF()
|
||||
SET(CPACK_SOURCE_GENERATOR "TGZ")
|
||||
|
||||
|
||||
# for ms visual studio we use it's internally defined variable to get the configuration (debug,release, ...)
|
||||
IF(MSVC_IDE)
|
||||
SET(OSG_CPACK_CONFIGURATION "$(OutDir)")
|
||||
SET(PACKAGE_TARGET_PREFIX "Package ")
|
||||
ELSE()
|
||||
# on un*x an empty CMAKE_BUILD_TYPE means release
|
||||
IF(CMAKE_BUILD_TYPE)
|
||||
SET(OSG_CPACK_CONFIGURATION ${CMAKE_BUILD_TYPE})
|
||||
ELSE()
|
||||
SET(OSG_CPACK_CONFIGURATION "Release")
|
||||
ENDIF()
|
||||
SET(PACKAGE_TARGET_PREFIX "package_")
|
||||
ENDIF()
|
||||
|
||||
# Get all defined components
|
||||
GET_CMAKE_PROPERTY(CPACK_COMPONENTS_ALL COMPONENTS)
|
||||
IF(NOT CPACK_COMPONENTS_ALL)
|
||||
# cmake 2.6.0 don't supply the COMPONENTS property.
|
||||
# I set it manually to be the packages that can always be packaged
|
||||
MESSAGE("When building packages please consider using cmake version 2.6.1 or above")
|
||||
SET(CPACK_COMPONENTS_ALL libopenscenegraph libopenthreads openscenegraph libopenscenegraph-dev libopenthreads-dev)
|
||||
ENDIF()
|
||||
|
||||
# Create a target that will be used to generate all packages defined below
|
||||
SET(PACKAGE_ALL_TARGETNAME "${PACKAGE_TARGET_PREFIX}ALL")
|
||||
ADD_CUSTOM_TARGET(${PACKAGE_ALL_TARGETNAME})
|
||||
|
||||
# cpack configuration for debian packages
|
||||
IF(${CPACK_GENERATOR} STREQUAL "DEB")
|
||||
SET(OPENSCENEGRAPH_PACKAGE_MAINTAINER
|
||||
""
|
||||
CACHE STRING
|
||||
"Name and email address of the package maintainer, e.g., 'Jon Doe <jon.doe@superawesomemail.com>'"
|
||||
)
|
||||
SET(CPACK_LIBOPENSCENEGRAPH_DEPENDENCIES
|
||||
"libopenthreads"
|
||||
CACHE STRING
|
||||
"Dependend packages for the openscenegraph library package (uses deb dependecy format), e.g., 'libc6, libcurl3-gnutls, libgif4, libjpeg8, libpng12-0'"
|
||||
)
|
||||
SET(CPACK_LIBOPENSCENEGRAPH-DEV_DEPENDENCIES
|
||||
"libopenscenegraph"
|
||||
CACHE STRING
|
||||
"Dependend packages for the openscenegraph development package (uses deb dependecy format), e.g., 'libc6, libcurl3-gnutls, libgif4, libjpeg8, libpng12-0'"
|
||||
)
|
||||
SET(CPACK_LIBOPENTHREADS_DEPENDENCIES
|
||||
""
|
||||
CACHE STRING
|
||||
"Dependend packages for the openthreads library package (uses deb dependecy format), e.g., 'libc6, libcurl3-gnutls, libgif4, libjpeg8, libpng12-0'"
|
||||
)
|
||||
SET(CPACK_LIBOPENTHREADS-DEV_DEPENDENCIES
|
||||
"libopenthreads"
|
||||
CACHE STRING
|
||||
"Dependend packages for the openthreads development package (uses deb dependecy format), e.g., 'libc6, libcurl3-gnutls, libgif4, libjpeg8, libpng12-0'"
|
||||
)
|
||||
SET(CPACK_OPENSCENEGRAPH_DEPENDENCIES
|
||||
"libopenscenegraph"
|
||||
CACHE STRING
|
||||
"Dependend packages for the openscenegraph main package (uses deb dependecy format), e.g., 'libc6, libcurl3-gnutls, libgif4, libjpeg8, libpng12-0'"
|
||||
)
|
||||
SET(CPACK_OPENSCENEGRAPH-ALL_DEPENDENCIES
|
||||
""
|
||||
CACHE STRING
|
||||
"Dependend packages for the openscenegraph package with all components (uses deb dependecy format), e.g., 'libc6, libcurl3-gnutls, libgif4, libjpeg8, libpng12-0'"
|
||||
)
|
||||
|
||||
SET(CPACK_LIBOPENSCENEGRAPH_CONFLICTS
|
||||
""
|
||||
CACHE STRING
|
||||
"Conflicting packages for the openscenegraph library package (uses deb dependecy format), e.g., 'libc6, libcurl3-gnutls, libgif4, libjpeg8, libpng12-0'"
|
||||
)
|
||||
SET(CPACK_LIBOPENSCENEGRAPH-DEV_CONFLICTS
|
||||
""
|
||||
CACHE STRING
|
||||
"Conflicting packages for the openscenegraph development package (uses deb dependecy format), e.g., 'libc6, libcurl3-gnutls, libgif4, libjpeg8, libpng12-0'"
|
||||
)
|
||||
SET(CPACK_LIBOPENTHREADS_CONFLICTS
|
||||
""
|
||||
CACHE STRING
|
||||
"Conflicting packages for the openthreads library package (uses deb dependecy format), e.g., 'libc6, libcurl3-gnutls, libgif4, libjpeg8, libpng12-0'"
|
||||
)
|
||||
SET(CPACK_LIBOPENTHREADS-DEV_CONFLICTS
|
||||
""
|
||||
CACHE STRING
|
||||
"Conflicting packages for the openthreads development package (uses deb dependecy format), e.g., 'libc6, libcurl3-gnutls, libgif4, libjpeg8, libpng12-0'"
|
||||
)
|
||||
SET(CPACK_OPENSCENEGRAPH_CONFLICTS
|
||||
""
|
||||
CACHE STRING
|
||||
"Conflicting packages for the openscenegraph main package (uses deb dependecy format), e.g., 'libc6, libcurl3-gnutls, libgif4, libjpeg8, libpng12-0'"
|
||||
)
|
||||
SET(CPACK_OPENSCENEGRAPH-ALL_CONFLICTS
|
||||
""
|
||||
CACHE STRING
|
||||
"Conflicting packages for the openscenegraph package with all components (uses deb dependecy format), e.g., 'libc6, libcurl3-gnutls, libgif4, libjpeg8, libpng12-0'"
|
||||
)
|
||||
ENDIF()
|
||||
|
||||
MACRO(GENERATE_PACKAGING_TARGET package_name)
|
||||
SET(CPACK_PACKAGE_NAME ${package_name})
|
||||
|
||||
# set debian dependencies AND conflicts
|
||||
IF(${CPACK_GENERATOR} STREQUAL "DEB")
|
||||
STRING(TOUPPER CPACK_${package_name}_DEPENDENCIES DEPENDENCIES_VAR)
|
||||
STRING(TOUPPER CPACK_${package_name}_CONFLICTS CONFLICTS_VAR)
|
||||
SET(OSG_PACKAGE_DEPENDS "${${DEPENDENCIES_VAR}}")
|
||||
SET(OSG_PACKAGE_CONFLICTS "${${CONFLICTS_VAR}}")
|
||||
ENDIF()
|
||||
|
||||
# the doc packages don't need a system-arch specification
|
||||
IF(${package} MATCHES -doc)
|
||||
SET(OSG_PACKAGE_FILE_NAME ${package_name}-${OPENSCENEGRAPH_VERSION})
|
||||
ELSE()
|
||||
SET(OSG_PACKAGE_FILE_NAME ${package_name}-${OPENSCENEGRAPH_VERSION}-${OSG_CPACK_SYSTEM_SPEC_STRING}-${OSG_CPACK_CONFIGURATION})
|
||||
IF(NOT DYNAMIC_OPENSCENEGRAPH)
|
||||
SET(OSG_PACKAGE_FILE_NAME ${OSG_PACKAGE_FILE_NAME}-static)
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
|
||||
CONFIGURE_FILE("${OpenSceneGraph_SOURCE_DIR}/CMakeModules/OsgCPackConfig.cmake.in" "${OpenSceneGraph_BINARY_DIR}/CPackConfig-${package_name}.cmake" IMMEDIATE)
|
||||
|
||||
SET(PACKAGE_TARGETNAME "${PACKAGE_TARGET_PREFIX}${package_name}")
|
||||
|
||||
# This is naive and will probably need fixing eventually
|
||||
IF(MSVC)
|
||||
SET(MOVE_COMMAND "move")
|
||||
ELSE()
|
||||
SET(MOVE_COMMAND "mv")
|
||||
ENDIF()
|
||||
|
||||
# Set in and out archive filenames. Windows = zip, others = tar.gz
|
||||
IF(WIN32)
|
||||
SET(ARCHIVE_EXT "zip")
|
||||
ELSE()
|
||||
SET(ARCHIVE_EXT "tar.gz")
|
||||
ENDIF()
|
||||
|
||||
# Create a target that creates the current package
|
||||
# and rename the package to give it proper filename
|
||||
ADD_CUSTOM_TARGET(${PACKAGE_TARGETNAME})
|
||||
SET_TARGET_PROPERTIES(${PACKAGE_TARGETNAME} PROPERTIES FOLDER "Packaging")
|
||||
|
||||
ADD_CUSTOM_COMMAND(TARGET ${PACKAGE_TARGETNAME}
|
||||
COMMAND ${CMAKE_CPACK_COMMAND} -C ${OSG_CPACK_CONFIGURATION} --config ${OpenSceneGraph_BINARY_DIR}/CPackConfig-${package_name}.cmake
|
||||
COMMENT "Run CPack packaging for ${package_name}..."
|
||||
)
|
||||
# Add the exact same custom command to the all package generating target.
|
||||
# I can't use add_dependencies to do this because it would allow parallel building of packages so am going brute here
|
||||
ADD_CUSTOM_COMMAND(TARGET ${PACKAGE_ALL_TARGETNAME}
|
||||
COMMAND ${CMAKE_CPACK_COMMAND} -C ${OSG_CPACK_CONFIGURATION} --config ${OpenSceneGraph_BINARY_DIR}/CPackConfig-${package_name}.cmake
|
||||
)
|
||||
SET_TARGET_PROPERTIES(${PACKAGE_ALL_TARGETNAME} PROPERTIES FOLDER "Packaging")
|
||||
|
||||
ENDMACRO(GENERATE_PACKAGING_TARGET)
|
||||
|
||||
# Create configs and targets for a package including all components
|
||||
SET(OSG_CPACK_COMPONENT ALL)
|
||||
GENERATE_PACKAGING_TARGET(openscenegraph-all)
|
||||
|
||||
# Create configs and targets for each component
|
||||
FOREACH(package ${CPACK_COMPONENTS_ALL})
|
||||
SET(OSG_CPACK_COMPONENT ${package})
|
||||
GENERATE_PACKAGING_TARGET(${package})
|
||||
ENDFOREACH()
|
||||
@@ -1,81 +0,0 @@
|
||||
# This file will be configured to contain variables for CPack. These variables
|
||||
# should be set in the CMake list file of the project before CPack module is
|
||||
# included. Example variables are:
|
||||
# CPACK_GENERATOR - Generator used to create package
|
||||
# CPACK_INSTALL_CMAKE_PROJECTS - For each project (path, name, component)
|
||||
# CPACK_CMAKE_GENERATOR - CMake Generator used for the projects
|
||||
# CPACK_INSTALL_COMMANDS - Extra commands to install components
|
||||
# CPACK_INSTALL_DIRECTORIES - Extra directories to install
|
||||
# CPACK_PACKAGE_DESCRIPTION_FILE - Description file for the package
|
||||
# CPACK_PACKAGE_DESCRIPTION_SUMMARY - Summary of the package
|
||||
# CPACK_PACKAGE_EXECUTABLES - List of pairs of executables and labels
|
||||
# CPACK_PACKAGE_FILE_NAME - Name of the package generated
|
||||
# CPACK_PACKAGE_ICON - Icon used for the package
|
||||
# CPACK_PACKAGE_INSTALL_DIRECTORY - Name of directory for the installer
|
||||
# CPACK_PACKAGE_NAME - Package project name
|
||||
# CPACK_PACKAGE_VENDOR - Package project vendor
|
||||
# CPACK_PACKAGE_VERSION - Package project version
|
||||
# CPACK_PACKAGE_VERSION_MAJOR - Package project version (major)
|
||||
# CPACK_PACKAGE_VERSION_MINOR - Package project version (minor)
|
||||
# CPACK_PACKAGE_VERSION_PATCH - Package project version (patch)
|
||||
|
||||
# There are certain generator specific ones
|
||||
|
||||
# NSIS Generator:
|
||||
# CPACK_PACKAGE_INSTALL_REGISTRY_KEY - Name of the registry key for the installer
|
||||
# CPACK_NSIS_EXTRA_UNINSTALL_COMMANDS - Extra commands used during uninstall
|
||||
# CPACK_NSIS_EXTRA_INSTALL_COMMANDS - Extra commands used during install
|
||||
|
||||
|
||||
SET(CPACK_BINARY_BUNDLE "${CPACK_BINARY_BUNDLE}")
|
||||
SET(CPACK_BINARY_CYGWIN "${CPACK_BINARY_CYGWIN}")
|
||||
SET(CPACK_BINARY_DEB "${CPACK_BINARY_DEB}")
|
||||
SET(CPACK_BINARY_NSIS "${CPACK_BINARY_NSIS}")
|
||||
SET(CPACK_BINARY_OSXX11 "${CPACK_BINARY_OSXX11}")
|
||||
SET(CPACK_BINARY_PACKAGEMAKER "${CPACK_BINARY_PACKAGEMAKER}")
|
||||
SET(CPACK_BINARY_RPM "${CPACK_BINARY_RPM}")
|
||||
SET(CPACK_BINARY_STGZ "${CPACK_BINARY_STGZ}")
|
||||
SET(CPACK_BINARY_TBZ2 "${CPACK_BINARY_TBZ2}")
|
||||
SET(CPACK_BINARY_TGZ "${CPACK_BINARY_TGZ}")
|
||||
SET(CPACK_BINARY_TZ "${CPACK_BINARY_TZ}")
|
||||
SET(CPACK_BINARY_ZIP "${CPACK_BINARY_ZIP}")
|
||||
SET(CPACK_CMAKE_GENERATOR "${CMAKE_GENERATOR}")
|
||||
SET(CPACK_COMPONENTS_ALL "${CPACK_COMPONENTS_ALL}")
|
||||
SET(CPACK_COMPONENT_UNSPECIFIED_HIDDEN "TRUE")
|
||||
SET(CPACK_COMPONENT_UNSPECIFIED_REQUIRED "TRUE")
|
||||
SET(CPACK_GENERATOR "${CPACK_GENERATOR}")
|
||||
SET(CPACK_INSTALL_CMAKE_PROJECTS "${OpenSceneGraph_BINARY_DIR};OpenSceneGraph;${OSG_CPACK_COMPONENT};/")
|
||||
SET(CPACK_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
|
||||
SET(CPACK_PACKAGING_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
|
||||
SET(CPACK_MODULE_PATH "${OpenSceneGraph_SOURCE_DIR}/CMakeModules;")
|
||||
SET(CPACK_NSIS_DISPLAY_NAME "${CMAKE_PROJECT_NAME} ${OPENSCENEGRAPH_VERSION}")
|
||||
SET(CPACK_NSIS_INSTALLER_ICON_CODE "")
|
||||
SET(CPACK_NSIS_INSTALLER_MUI_ICON_CODE "")
|
||||
SET(CPACK_OUTPUT_CONFIG_FILE "${PROJECT_BINARY_DIR}/CPackConfig-${OSG_CPACK_COMPONENT}.cmake")
|
||||
SET(CPACK_PACKAGE_DEFAULT_LOCATION "/")
|
||||
SET(CPACK_PACKAGE_DESCRIPTION_FILE "${OpenSceneGraph_SOURCE_DIR}/README.md")
|
||||
SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "The OpenSceneGraph is an open source high performance 3d graphics toolkit")
|
||||
SET(CPACK_PACKAGE_FILE_NAME "${OSG_PACKAGE_FILE_NAME}")
|
||||
SET(CPACK_PACKAGE_INSTALL_DIRECTORY "${CPACK_PACKAGE_INSTALL_DIRECTORY}")
|
||||
SET(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "${CMAKE_PROJECT_NAME}-${OPENSCENEGRAPH_VERSION}")
|
||||
SET(CPACK_PACKAGE_NAME "${CPACK_PACKAGE_NAME}")
|
||||
SET(CPACK_PACKAGE_RELOCATABLE "true")
|
||||
SET(CPACK_PACKAGE_VENDOR "The OpenSceneGraph developers and contributors lead by Robert Osfield")
|
||||
SET(CPACK_PACKAGE_VERSION "${OPENSCENEGRAPH_VERSION}")
|
||||
SET(CPACK_PACKAGE_VERSION_MAJOR "${OPENSCENEGRAPH_MAJOR_VERSION}")
|
||||
SET(CPACK_PACKAGE_VERSION_MINOR "${OPENSCENEGRAPH_MINOR_VERSION}")
|
||||
SET(CPACK_PACKAGE_VERSION_PATCH "${OPENSCENEGRAPH_PATCH_VERSION}")
|
||||
SET(CPACK_RESOURCE_FILE_LICENSE "${OpenSceneGraph_SOURCE_DIR}/LICENSE.txt")
|
||||
SET(CPACK_RESOURCE_FILE_README "${OpenSceneGraph_SOURCE_DIR}/README.md")
|
||||
SET(CPACK_RESOURCE_FILE_WELCOME "${OpenSceneGraph_SOURCE_DIR}/NEWS.txt")
|
||||
SET(CPACK_STRIP_FILES "ON")
|
||||
|
||||
# DEBIAN OPTIONS
|
||||
IF(${CPACK_GENERATOR} STREQUAL "DEB")
|
||||
SET(CPACK_DEBIAN_PACKAGE_MAINTAINER "${OPENSCENEGRAPH_PACKAGE_MAINTAINER}")
|
||||
SET(CPACK_DEBIAN_PACKAGE_HOMEPAGE "http://www.openscenegraph.org")
|
||||
SET(CPACK_DEBIAN_PACKAGE_SECTION "Development")
|
||||
SET(CPACK_DEBIAN_PACKAGE_DEPENDS "${OSG_PACKAGE_DEPENDS}")
|
||||
SET(CPACK_DEBIAN_PACKAGE_CONFLICTS "${OSG_PACKAGE_CONFLICTS}")
|
||||
SET(CPACK_DEBIAN_PACKAGE_CONTROL_EXTRA "${OpenSceneGraph_SOURCE_DIR}/debian_scripts/postinst;")
|
||||
ENDIF()
|
||||
@@ -1,74 +0,0 @@
|
||||
# - If Visual Studio is being used, this script sets the variable OSG_COMPILER
|
||||
# The principal reason for this is due to MSVC 8.0 SP0 vs SP1 builds.
|
||||
#
|
||||
# Variable:
|
||||
# OSG_COMPILER
|
||||
#
|
||||
|
||||
# Not currently used...
|
||||
#IF(CMAKE_COMPILER_IS_GNUCXX)
|
||||
# EXEC_PROGRAM(
|
||||
# ${CMAKE_CXX_COMPILER}
|
||||
# ARGS ${CMAKE_CXX_COMPILER_ARG1} -dumpversion
|
||||
# OUTPUT_VARIABLE gcc_compiler_version
|
||||
# )
|
||||
# #MESSAGE("GCC Version: ${gcc_compiler_version}")
|
||||
|
||||
IF(MSVC60)
|
||||
SET(OSG_COMPILER "vc60")
|
||||
ELSEIF(MSVC70)
|
||||
SET(OSG_COMPILER "vc70")
|
||||
ELSEIF(MSVC71)
|
||||
SET(OSG_COMPILER "vc71")
|
||||
ELSEIF(MSVC80)
|
||||
SET(OSG_COMPILER "vc80")
|
||||
ELSEIF(MSVC90)
|
||||
SET(OSG_COMPILER "vc90")
|
||||
ENDIF()
|
||||
|
||||
|
||||
IF(MSVC80)
|
||||
MESSAGE(STATUS "Checking if compiler has service pack 1 installed...")
|
||||
FILE(WRITE "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/src.cxx" "int main() {return 0;}\n")
|
||||
|
||||
TRY_COMPILE(_TRY_RESULT
|
||||
${CMAKE_BINARY_DIR}
|
||||
${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/src.cxx
|
||||
CMAKE_FLAGS -D CMAKE_VERBOSE_MAKEFILE=ON
|
||||
OUTPUT_VARIABLE OUTPUT
|
||||
)
|
||||
|
||||
IF(_TRY_RESULT)
|
||||
# parse for exact compiler version
|
||||
STRING(REGEX MATCH "Compiler Version [0-9]+.[0-9]+.[0-9]+.[0-9]+" vc_compiler_version "${OUTPUT}")
|
||||
IF(vc_compiler_version)
|
||||
#MESSAGE("${vc_compiler_version}")
|
||||
STRING(REGEX MATCHALL "[0-9]+" CL_VERSION_LIST "${vc_compiler_version}")
|
||||
LIST(GET CL_VERSION_LIST 0 CL_MAJOR_VERSION)
|
||||
LIST(GET CL_VERSION_LIST 1 CL_MINOR_VERSION)
|
||||
LIST(GET CL_VERSION_LIST 2 CL_PATCH_VERSION)
|
||||
LIST(GET CL_VERSION_LIST 3 CL_EXTRA_VERSION)
|
||||
ENDIF(vc_compiler_version)
|
||||
|
||||
# Standard vc80 is 14.00.50727.42, sp1 14.00.50727.762, sp2?
|
||||
# Standard vc90 is 9.0.30729.1, sp1 ?
|
||||
IF(CL_EXTRA_VERSION EQUAL 762)
|
||||
SET(OSG_COMPILER "vc80sp1")
|
||||
ELSE(CL_EXTRA_VERSION EQUAL 762)
|
||||
SET(OSG_COMPILER "vc80")
|
||||
ENDIF(CL_EXTRA_VERSION EQUAL 762)
|
||||
|
||||
# parse for exact visual studio version
|
||||
#IF(MSVC_IDE)
|
||||
# string(REGEX MATCH "Visual Studio Version [0-9]+.[0-9]+.[0-9]+.[0-9]+" vs_version "${OUTPUT}")
|
||||
# IF(vs_version)
|
||||
# MESSAGE("${vs_version}")
|
||||
# string(REGEX MATCHALL "[0-9]+" VS_VERSION_LIST "${vs_version}")
|
||||
# list(GET VS_VERSION_LIST 0 VS_MAJOR_VERSION)
|
||||
# list(GET VS_VERSION_LIST 1 VS_MINOR_VERSION)
|
||||
# list(GET VS_VERSION_LIST 2 VS_PATCH_VERSION)
|
||||
# list(GET VS_VERSION_LIST 3 VS_EXTRA_VERSION)
|
||||
# ENDIF(vs_version)
|
||||
#ENDIF(MSVC_IDE)
|
||||
ENDIF(_TRY_RESULT)
|
||||
ENDIF(MSVC80)
|
||||
@@ -1,22 +0,0 @@
|
||||
# - If Windows is used, this script sets the variable WIN32_WINNT to the corresponding windows version
|
||||
|
||||
if (WIN32)
|
||||
message(STATUS "Checking windows version...")
|
||||
macro(get_WIN32_WINNT version)
|
||||
if (CMAKE_SYSTEM_VERSION)
|
||||
set(ver ${CMAKE_SYSTEM_VERSION})
|
||||
string(REGEX MATCH "^([0-9]+).([0-9])" ver ${ver})
|
||||
string(REGEX MATCH "^([0-9]+)" verMajor ${ver})
|
||||
# Check for Windows 10, b/c we'll need to convert to hex 'A'.
|
||||
if ("${verMajor}" MATCHES "10")
|
||||
set(verMajor "A")
|
||||
string(REGEX REPLACE "^([0-9]+)" ${verMajor} ver ${ver})
|
||||
endif ("${verMajor}" MATCHES "10")
|
||||
# Remove all remaining '.' characters.
|
||||
string(REPLACE "." "" ver ${ver})
|
||||
# Prepend each digit with a zero.
|
||||
string(REGEX REPLACE "([0-9A-Z])" "0\\1" ver ${ver})
|
||||
set(${version} "0x${ver}")
|
||||
endif(CMAKE_SYSTEM_VERSION)
|
||||
endmacro(get_WIN32_WINNT)
|
||||
endif(WIN32)
|
||||
@@ -4,68 +4,39 @@
|
||||
# full path of the library name. in order to differentiate release and debug, this macro get the
|
||||
# NAME of the variables, so the macro gets as arguments the target name and the following list of parameters
|
||||
# is intended as a list of variable names each one containing the path of the libraries to link to
|
||||
# The existence of a variable name with _DEBUG appended is tested and, in case it' s value is used
|
||||
# for linking to when in debug mode
|
||||
# The existance of a varibale name with _DEBUG appended is tested and, in case it' s value is used
|
||||
# for linking to when in debug mode
|
||||
# the content of this library for linking when in debugging
|
||||
#######################################################################################################
|
||||
|
||||
# VALID_BUILDER_VERSION: used for replacing CMAKE_VERSION (available in v2.6.3 RC9) and VERSION_GREATER/VERSION_LESS (available in 2.6.2 RC4).
|
||||
# This can be replaced by "IF(${CMAKE_VERSION} VERSION_LESS "x.y.z")" from 2.6.4.
|
||||
SET(VALID_BUILDER_VERSION OFF)
|
||||
MACRO(BUILDER_VERSION_GREATER MAJOR_VER MINOR_VER PATCH_VER)
|
||||
SET(VALID_BUILDER_VERSION OFF)
|
||||
IF(CMAKE_MAJOR_VERSION GREATER ${MAJOR_VER})
|
||||
SET(VALID_BUILDER_VERSION ON)
|
||||
ELSEIF(CMAKE_MAJOR_VERSION EQUAL ${MAJOR_VER})
|
||||
IF(CMAKE_MINOR_VERSION GREATER ${MINOR_VER})
|
||||
SET(VALID_BUILDER_VERSION ON)
|
||||
ELSEIF(CMAKE_MINOR_VERSION EQUAL ${MINOR_VER})
|
||||
IF(CMAKE_PATCH_VERSION GREATER ${PATCH_VER})
|
||||
SET(VALID_BUILDER_VERSION ON)
|
||||
ENDIF(CMAKE_PATCH_VERSION GREATER ${PATCH_VER})
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
ENDMACRO(BUILDER_VERSION_GREATER MAJOR_VER MINOR_VER PATCH_VER)
|
||||
|
||||
|
||||
# CMAKE_VERSION_TEST: Define whether "IF(${CMAKE_VERSION} VERSION_LESS "x.y.z")" can be used or not.
|
||||
BUILDER_VERSION_GREATER(2 8 0)
|
||||
SET(CMAKE_VERSION_TEST ${VALID_BUILDER_VERSION}) # >= 2.8.0
|
||||
|
||||
SET(VALID_BUILDER_VERSION OFF)
|
||||
|
||||
|
||||
MACRO(LINK_WITH_VARIABLES TRGTNAME)
|
||||
FOREACH(varname ${ARGN})
|
||||
IF(${varname}_DEBUG)
|
||||
IF(${varname}_RELEASE)
|
||||
TARGET_LINK_LIBRARIES(${TRGTNAME} optimized "${${varname}_RELEASE}" debug "${${varname}_DEBUG}")
|
||||
ELSE(${varname}_RELEASE)
|
||||
TARGET_LINK_LIBRARIES(${TRGTNAME} optimized "${${varname}}" debug "${${varname}_DEBUG}")
|
||||
ENDIF(${varname}_RELEASE)
|
||||
TARGET_LINK_LIBRARIES(${TRGTNAME} optimized "${${varname}}" debug "${${varname}_DEBUG}")
|
||||
ELSE(${varname}_DEBUG)
|
||||
TARGET_LINK_LIBRARIES(${TRGTNAME} ${${varname}} )
|
||||
TARGET_LINK_LIBRARIES(${TRGTNAME} "${${varname}}" )
|
||||
ENDIF(${varname}_DEBUG)
|
||||
ENDFOREACH(varname)
|
||||
ENDMACRO(LINK_WITH_VARIABLES TRGTNAME)
|
||||
|
||||
MACRO(LINK_INTERNAL TRGTNAME)
|
||||
IF(NOT CMAKE24)
|
||||
TARGET_LINK_LIBRARIES(${TRGTNAME} ${ARGN})
|
||||
ELSE(NOT CMAKE24)
|
||||
FOREACH(LINKLIB ${ARGN})
|
||||
IF(MSVC AND OSG_MSVC_VERSIONED_DLL)
|
||||
#when using versioned names, the .dll name differ from .lib name, there is a problem with that:
|
||||
#CMake 2.4.7, at least seem to use PREFIX instead of IMPORT_PREFIX for computing linkage info to use into projects,
|
||||
# so we full path name to specify linkage, this prevent automatic inferencing of dependencies, so we add explicit depemdencies
|
||||
#to library targets used
|
||||
TARGET_LINK_LIBRARIES(${TRGTNAME} optimized "${OUTPUT_LIBDIR}/${LINKLIB}${CMAKE_RELEASE_POSTFIX}.lib" debug "${OUTPUT_LIBDIR}/${LINKLIB}${CMAKE_DEBUG_POSTFIX}.lib")
|
||||
ADD_DEPENDENCIES(${TRGTNAME} ${LINKLIB})
|
||||
ELSE(MSVC AND OSG_MSVC_VERSIONED_DLL)
|
||||
TARGET_LINK_LIBRARIES(${TRGTNAME} optimized "${LINKLIB}${CMAKE_RELEASE_POSTFIX}" debug "${LINKLIB}${CMAKE_DEBUG_POSTFIX}")
|
||||
ENDIF(MSVC AND OSG_MSVC_VERSIONED_DLL)
|
||||
ENDFOREACH(LINKLIB)
|
||||
ENDIF(NOT CMAKE24)
|
||||
FOREACH(LINKLIB ${ARGN})
|
||||
IF(MSVC AND OSG_MSVC_VERSIONED_DLL)
|
||||
#when using versioned names, the .dll name differ from .lib name, there is a problem with that:
|
||||
#CMake 2.4.7, at least seem to use PREFIX instead of IMPORT_PREFIX for computing linkage info to use into projects,
|
||||
# so we full path name to specify linkage, this prevent automatic inferencing of dependencies, so we add explicit depemdencies
|
||||
#to library targets used
|
||||
IF(NOT MSVC_IDE)
|
||||
TARGET_LINK_LIBRARIES(${TRGTNAME} optimized "${OUTPUT_LIBDIR}/${LINKLIB}.lib" debug "${OUTPUT_LIBDIR}/${LINKLIB}${CMAKE_DEBUG_POSTFIX}.lib")
|
||||
ELSE(NOT MSVC_IDE)
|
||||
TARGET_LINK_LIBRARIES(${TRGTNAME} optimized "${OUTPUT_LIBDIR}/${LINKLIB}" debug "${OUTPUT_LIBDIR}/${LINKLIB}${CMAKE_DEBUG_POSTFIX}")
|
||||
ENDIF(NOT MSVC_IDE)
|
||||
ADD_DEPENDENCIES(${TRGTNAME} ${LINKLIB})
|
||||
ELSE(MSVC AND OSG_MSVC_VERSIONED_DLL)
|
||||
TARGET_LINK_LIBRARIES(${TRGTNAME} optimized "${LINKLIB}" debug "${LINKLIB}${CMAKE_DEBUG_POSTFIX}")
|
||||
ENDIF(MSVC AND OSG_MSVC_VERSIONED_DLL)
|
||||
ENDFOREACH(LINKLIB)
|
||||
ENDMACRO(LINK_INTERNAL TRGTNAME)
|
||||
|
||||
MACRO(LINK_EXTERNAL TRGTNAME)
|
||||
@@ -80,18 +51,11 @@ ENDMACRO(LINK_EXTERNAL TRGTNAME)
|
||||
#######################################################################################################
|
||||
|
||||
MACRO(LINK_CORELIB_DEFAULT CORELIB_NAME)
|
||||
#SET(ALL_GL_LIBRARIES ${OPENGL_LIBRARIES})
|
||||
SET(ALL_GL_LIBRARIES ${OPENGL_gl_LIBRARY})
|
||||
IF (OSG_GLES1_AVAILABLE OR OSG_GLES2_AVAILABLE OR OSG_GLES3_AVAILABLE)
|
||||
SET(ALL_GL_LIBRARIES ${ALL_GL_LIBRARIES} ${EGL_LIBRARY})
|
||||
ENDIF()
|
||||
|
||||
LINK_EXTERNAL(${CORELIB_NAME} ${ALL_GL_LIBRARIES})
|
||||
LINK_EXTERNAL(${CORELIB_NAME} ${OPENGL_LIBRARIES})
|
||||
LINK_WITH_VARIABLES(${CORELIB_NAME} OPENTHREADS_LIBRARY)
|
||||
IF(OPENSCENEGRAPH_SONAMES)
|
||||
SET_TARGET_PROPERTIES(${CORELIB_NAME} PROPERTIES VERSION ${OPENSCENEGRAPH_VERSION} SOVERSION ${OPENSCENEGRAPH_SOVERSION})
|
||||
ENDIF(OPENSCENEGRAPH_SONAMES)
|
||||
|
||||
ENDMACRO(LINK_CORELIB_DEFAULT CORELIB_NAME)
|
||||
|
||||
|
||||
@@ -110,47 +74,40 @@ ENDMACRO(LINK_CORELIB_DEFAULT CORELIB_NAME)
|
||||
MACRO(SETUP_LINK_LIBRARIES)
|
||||
######################################################################
|
||||
#
|
||||
# This set up the libraries to link to, it assumes there are two variable: one common for a group of examples or plugins
|
||||
# kept in the variable TARGET_COMMON_LIBRARIES and an example or plugin specific kept in TARGET_ADDED_LIBRARIES
|
||||
# they are combined in a single list checked for unicity
|
||||
# This set up the libraries to link to, it assumes there are two variable: one common for a group of examples or plagins
|
||||
# kept in the variable TARGET_COMMON_LIBRARIES and an example or plugin specific kept in TARGET_ADDED_LIBRARIES
|
||||
# they are combined in a single list checked for unicity
|
||||
# the suffix ${CMAKE_DEBUG_POSTFIX} is used for differentiating optimized and debug
|
||||
#
|
||||
# a second variable TARGET_EXTERNAL_LIBRARIES hold the list of libraries not differentiated between debug and optimized
|
||||
# a second variable TARGET_EXTERNAL_LIBRARIES hold the list of libraries not differentiated between debug and optimized
|
||||
##################################################################################
|
||||
SET(TARGET_LIBRARIES ${TARGET_COMMON_LIBRARIES})
|
||||
|
||||
FOREACH(LINKLIB ${TARGET_ADDED_LIBRARIES})
|
||||
SET(TO_INSERT TRUE)
|
||||
FOREACH (value ${TARGET_COMMON_LIBRARIES})
|
||||
IF ("${value}" STREQUAL "${LINKLIB}")
|
||||
IF (${value} STREQUAL ${LINKLIB})
|
||||
SET(TO_INSERT FALSE)
|
||||
ENDIF ("${value}" STREQUAL "${LINKLIB}")
|
||||
ENDIF (${value} STREQUAL ${LINKLIB})
|
||||
ENDFOREACH (value ${TARGET_COMMON_LIBRARIES})
|
||||
IF(TO_INSERT)
|
||||
LIST(APPEND TARGET_LIBRARIES ${LINKLIB})
|
||||
ENDIF(TO_INSERT)
|
||||
ENDFOREACH(LINKLIB)
|
||||
|
||||
#SET(ALL_GL_LIBRARIES ${OPENGL_LIBRARIES})
|
||||
SET(ALL_GL_LIBRARIES ${OPENGL_gl_LIBRARY})
|
||||
IF (OSG_GLES1_AVAILABLE OR OSG_GLES2_AVAILABLE OR OSG_GLES3_AVAILABLE)
|
||||
SET(ALL_GL_LIBRARIES ${ALL_GL_LIBRARIES} ${EGL_LIBRARY})
|
||||
ENDIF()
|
||||
|
||||
# FOREACH(LINKLIB ${TARGET_LIBRARIES})
|
||||
# TARGET_LINK_LIBRARIES(${TARGET_TARGETNAME} optimized ${LINKLIB} debug "${LINKLIB}${CMAKE_DEBUG_POSTFIX}")
|
||||
# ENDFOREACH(LINKLIB)
|
||||
LINK_INTERNAL(${TARGET_TARGETNAME} ${TARGET_LIBRARIES})
|
||||
# FOREACH(LINKLIB ${TARGET_EXTERNAL_LIBRARIES})
|
||||
# TARGET_LINK_LIBRARIES(${TARGET_TARGETNAME} ${LINKLIB})
|
||||
# ENDFOREACH(LINKLIB)
|
||||
TARGET_LINK_LIBRARIES(${TARGET_TARGETNAME} ${TARGET_EXTERNAL_LIBRARIES})
|
||||
FOREACH(LINKLIB ${TARGET_EXTERNAL_LIBRARIES})
|
||||
TARGET_LINK_LIBRARIES(${TARGET_TARGETNAME} ${LINKLIB})
|
||||
ENDFOREACH(LINKLIB)
|
||||
IF(TARGET_LIBRARIES_VARS)
|
||||
LINK_WITH_VARIABLES(${TARGET_TARGETNAME} ${TARGET_LIBRARIES_VARS})
|
||||
ENDIF(TARGET_LIBRARIES_VARS)
|
||||
IF(MSVC AND OSG_MSVC_VERSIONED_DLL)
|
||||
#when using full path name to specify linkage, it seems that already linked libs must be specified
|
||||
LINK_EXTERNAL(${TARGET_TARGETNAME} ${ALL_GL_LIBRARIES})
|
||||
LINK_EXTERNAL(${TARGET_TARGETNAME} ${OPENGL_LIBRARIES})
|
||||
ENDIF(MSVC AND OSG_MSVC_VERSIONED_DLL)
|
||||
|
||||
ENDMACRO(SETUP_LINK_LIBRARIES)
|
||||
@@ -159,101 +116,9 @@ ENDMACRO(SETUP_LINK_LIBRARIES)
|
||||
# this is the common set of command for all the plugins
|
||||
#
|
||||
|
||||
# Sets the output directory property for CMake >= 2.6.0, giving an output path RELATIVE to default one
|
||||
MACRO(SET_OUTPUT_DIR_PROPERTY_260 TARGET_TARGETNAME RELATIVE_OUTDIR)
|
||||
BUILDER_VERSION_GREATER(2 8 0)
|
||||
IF(NOT VALID_BUILDER_VERSION)
|
||||
# If CMake <= 2.8.0 (Testing CMAKE_VERSION is possible in >= 2.6.4)
|
||||
IF(MSVC_IDE)
|
||||
# Using the "prefix" hack
|
||||
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES PREFIX "../${RELATIVE_OUTDIR}/")
|
||||
ELSE(MSVC_IDE)
|
||||
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES PREFIX "${RELATIVE_OUTDIR}/")
|
||||
ENDIF(MSVC_IDE)
|
||||
ELSE(NOT VALID_BUILDER_VERSION)
|
||||
# Using the output directory properties
|
||||
|
||||
# Global properties (All generators but VS & Xcode)
|
||||
FILE(TO_CMAKE_PATH TMPVAR "CMAKE_ARCHIVE_OUTPUT_DIRECTORY/${RELATIVE_OUTDIR}")
|
||||
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES ARCHIVE_OUTPUT_DIRECTORY "${TMPVAR}")
|
||||
FILE(TO_CMAKE_PATH TMPVAR "CMAKE_RUNTIME_OUTPUT_DIRECTORY/${RELATIVE_OUTDIR}")
|
||||
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${TMPVAR}")
|
||||
FILE(TO_CMAKE_PATH TMPVAR "CMAKE_LIBRARY_OUTPUT_DIRECTORY/${RELATIVE_OUTDIR}")
|
||||
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES LIBRARY_OUTPUT_DIRECTORY "${TMPVAR}")
|
||||
|
||||
# Per-configuration property (VS, Xcode)
|
||||
FOREACH(CONF ${CMAKE_CONFIGURATION_TYPES}) # For each configuration (Debug, Release, MinSizeRel... and/or anything the user chooses)
|
||||
STRING(TOUPPER "${CONF}" CONF) # Go uppercase (DEBUG, RELEASE...)
|
||||
|
||||
# We use "FILE(TO_CMAKE_PATH", to create nice looking paths
|
||||
FILE(TO_CMAKE_PATH "${CMAKE_ARCHIVE_OUTPUT_DIRECTORY_${CONF}}/${RELATIVE_OUTDIR}" TMPVAR)
|
||||
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES "ARCHIVE_OUTPUT_DIRECTORY_${CONF}" "${TMPVAR}")
|
||||
FILE(TO_CMAKE_PATH "${CMAKE_RUNTIME_OUTPUT_DIRECTORY_${CONF}}/${RELATIVE_OUTDIR}" TMPVAR)
|
||||
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES "RUNTIME_OUTPUT_DIRECTORY_${CONF}" "${TMPVAR}")
|
||||
FILE(TO_CMAKE_PATH "${CMAKE_LIBRARY_OUTPUT_DIRECTORY_${CONF}}/${RELATIVE_OUTDIR}" TMPVAR)
|
||||
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES "LIBRARY_OUTPUT_DIRECTORY_${CONF}" "${TMPVAR}")
|
||||
ENDFOREACH(CONF ${CMAKE_CONFIGURATION_TYPES})
|
||||
ENDIF(NOT VALID_BUILDER_VERSION)
|
||||
ENDMACRO(SET_OUTPUT_DIR_PROPERTY_260 TARGET_TARGETNAME RELATIVE_OUTDIR)
|
||||
|
||||
|
||||
|
||||
#######################################################################################################
|
||||
# macro for common setup of libraries it expect some variables to be set:
|
||||
# either within the local CMakeLists or higher in hierarchy
|
||||
# LIB_NAME is the name of the target library
|
||||
# TARGET_SRC are the sources of the target
|
||||
# TARGET_H are the eventual headers of the target
|
||||
# TARGET_H_NO_MODULE_INSTALL are headers that belong to target but shouldn't get installed by the ModuleInstall script
|
||||
# TARGET_LIBRARIES are the libraries to link to that are internal to the project and have d suffix for debug
|
||||
# TARGET_EXTERNAL_LIBRARIES are external libraries and are not differentiated with d suffix
|
||||
# TARGET_LABEL is the label IDE should show up for targets
|
||||
##########################################################################################################
|
||||
|
||||
MACRO(SETUP_LIBRARY LIB_NAME)
|
||||
IF(GLCORE_FOUND)
|
||||
INCLUDE_DIRECTORIES( ${GLCORE_INCLUDE_DIR} )
|
||||
ENDIF()
|
||||
|
||||
SET(TARGET_NAME ${LIB_NAME} )
|
||||
SET(TARGET_TARGETNAME ${LIB_NAME} )
|
||||
ADD_LIBRARY(${LIB_NAME}
|
||||
${OPENSCENEGRAPH_USER_DEFINED_DYNAMIC_OR_STATIC}
|
||||
${TARGET_H}
|
||||
${TARGET_H_NO_MODULE_INSTALL}
|
||||
${TARGET_SRC}
|
||||
)
|
||||
SET_TARGET_PROPERTIES(${LIB_NAME} PROPERTIES FOLDER "OSG Core")
|
||||
IF(APPLE)
|
||||
IF(OSG_BUILD_PLATFORM_IPHONE)
|
||||
SET_TARGET_PROPERTIES(${LIB_NAME} PROPERTIES XCODE_ATTRIBUTE_ENABLE_BITCODE ${IPHONE_ENABLE_BITCODE})
|
||||
ENDIF()
|
||||
SET_TARGET_PROPERTIES(${LIB_NAME} PROPERTIES XCODE_ATTRIBUTE_WARNING_CFLAGS "")
|
||||
ENDIF()
|
||||
IF(TARGET_LABEL)
|
||||
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES PROJECT_LABEL "${TARGET_LABEL}")
|
||||
ENDIF(TARGET_LABEL)
|
||||
|
||||
IF(TARGET_LIBRARIES)
|
||||
LINK_INTERNAL(${LIB_NAME} ${TARGET_LIBRARIES})
|
||||
ENDIF()
|
||||
IF(TARGET_EXTERNAL_LIBRARIES)
|
||||
LINK_EXTERNAL(${LIB_NAME} ${TARGET_EXTERNAL_LIBRARIES})
|
||||
ENDIF()
|
||||
IF(TARGET_LIBRARIES_VARS)
|
||||
LINK_WITH_VARIABLES(${LIB_NAME} ${TARGET_LIBRARIES_VARS})
|
||||
ENDIF(TARGET_LIBRARIES_VARS)
|
||||
LINK_CORELIB_DEFAULT(${LIB_NAME})
|
||||
|
||||
INCLUDE(ModuleInstall OPTIONAL)
|
||||
ENDMACRO(SETUP_LIBRARY LIB_NAME)
|
||||
|
||||
MACRO(SETUP_PLUGIN PLUGIN_NAME)
|
||||
IF(GLCORE_FOUND)
|
||||
INCLUDE_DIRECTORIES( ${GLCORE_INCLUDE_DIR} )
|
||||
ENDIF()
|
||||
|
||||
SET(TARGET_NAME ${PLUGIN_NAME} )
|
||||
SET(TARGET_NAME ${PLUGIN_NAME} )
|
||||
|
||||
#MESSAGE("in -->SETUP_PLUGIN<-- ${TARGET_NAME}-->${TARGET_SRC} <--> ${TARGET_H}<--")
|
||||
|
||||
@@ -265,103 +130,51 @@ MACRO(SETUP_PLUGIN PLUGIN_NAME)
|
||||
IF(NOT TARGET_LABEL)
|
||||
SET(TARGET_LABEL "${TARGET_DEFAULT_LABEL_PREFIX} ${TARGET_NAME}")
|
||||
ENDIF(NOT TARGET_LABEL)
|
||||
|
||||
## plugins gets put in libopenscenegraph by default
|
||||
IF(${ARGC} GREATER 1)
|
||||
SET(PACKAGE_COMPONENT libopenscenegraph-${ARGV1})
|
||||
|
||||
# add cpack config variables for plugin with own package
|
||||
IF(BUILD_OSG_PACKAGES)
|
||||
IF("${CPACK_GENERATOR}" STREQUAL "DEB")
|
||||
STRING(TOUPPER ${PACKAGE_COMPONENT} UPPER_PACKAGE_COMPONENT)
|
||||
SET(CPACK_${UPPER_PACKAGE_COMPONENT}_DEPENDENCIES
|
||||
"libopenscenegraph"
|
||||
CACHE STRING
|
||||
"Dependend packages for the ${PACKAGE_COMPONENT} package with all components (uses deb dependecy format), e.g., 'libc6, libcurl3-gnutls, libgif4, libjpeg8, libpng12-0'"
|
||||
)
|
||||
SET(CPACK_${UPPER_PACKAGE_COMPONENT}_CONFLICTS
|
||||
""
|
||||
CACHE STRING
|
||||
"Conflicting packages for the ${PACKAGE_COMPONENT} package (uses deb dependecy format), e.g., 'libc6, libcurl3-gnutls, libgif4, libjpeg8, libpng12-0'"
|
||||
)
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
ELSE(${ARGC} GREATER 1)
|
||||
SET(PACKAGE_COMPONENT libopenscenegraph)
|
||||
ENDIF(${ARGC} GREATER 1)
|
||||
|
||||
# Add the VisualStudio versioning info
|
||||
SET(TARGET_SRC ${TARGET_SRC} ${OPENSCENEGRAPH_VERSIONINFO_RC})
|
||||
|
||||
# here we use the command to generate the library
|
||||
|
||||
# here we use the command to generate the library
|
||||
|
||||
IF (DYNAMIC_OPENSCENEGRAPH)
|
||||
ADD_LIBRARY(${TARGET_TARGETNAME} MODULE ${TARGET_SRC} ${TARGET_H})
|
||||
ELSE (DYNAMIC_OPENSCENEGRAPH)
|
||||
ADD_LIBRARY(${TARGET_TARGETNAME} STATIC ${TARGET_SRC} ${TARGET_H})
|
||||
ENDIF(DYNAMIC_OPENSCENEGRAPH)
|
||||
|
||||
IF(MSVC)
|
||||
IF(NOT CMAKE24)
|
||||
SET_OUTPUT_DIR_PROPERTY_260(${TARGET_TARGETNAME} "${OSG_PLUGINS}") # Sets the ouput to be /osgPlugin-X.X.X ; also ensures the /Debug /Release are removed
|
||||
ELSE(NOT CMAKE24)
|
||||
|
||||
IF(OSG_MSVC_VERSIONED_DLL)
|
||||
|
||||
|
||||
#not sure if needed, but for plugins only Msvc need the d suffix
|
||||
IF(NOT MSVC)
|
||||
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES DEBUG_POSTFIX "")
|
||||
ELSE(NOT MSVC)
|
||||
IF(OSG_MSVC_VERSIONED_DLL)
|
||||
|
||||
#this is a hack... the build place is set to lib/<debug or release> by LIBARARY_OUTPUT_PATH equal to OUTPUT_LIBDIR
|
||||
#the .lib will be crated in ../ so going straight in lib by the IMPORT_PREFIX property
|
||||
#because we want dll placed in OUTPUT_BINDIR ie the bin folder sibling of lib, we can use ../../bin to go there,
|
||||
#it is hardcoded, we should compute OUTPUT_BINDIR position relative to OUTPUT_LIBDIR ... to be implemented
|
||||
#changing bin to something else breaks this hack
|
||||
#the dll are placed in bin/${OSG_PLUGINS}
|
||||
|
||||
#the dll are placed in bin/${OSG_PLUGINS}
|
||||
|
||||
IF(NOT MSVC_IDE)
|
||||
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES PREFIX "../bin/${OSG_PLUGINS}/")
|
||||
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES PREFIX "../bin/${OSG_PLUGINS}/")
|
||||
ELSE(NOT MSVC_IDE)
|
||||
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES PREFIX "../../bin/${OSG_PLUGINS}/" IMPORT_PREFIX "../")
|
||||
ENDIF(NOT MSVC_IDE)
|
||||
|
||||
ELSE(OSG_MSVC_VERSIONED_DLL)
|
||||
|
||||
#in standard mode (unversioned) the .lib and .dll are placed in lib/<debug or release>/${OSG_PLUGINS}.
|
||||
#here the PREFIX property has been used, the same result would be accomplidhe by prepending ${OSG_PLUGINS}/ to OUTPUT_NAME target property
|
||||
|
||||
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES PREFIX "${OSG_PLUGINS}/")
|
||||
ENDIF(OSG_MSVC_VERSIONED_DLL)
|
||||
|
||||
ENDIF(NOT CMAKE24)
|
||||
ENDIF(MSVC)
|
||||
|
||||
ELSE(OSG_MSVC_VERSIONED_DLL)
|
||||
|
||||
#in standard mode (unversioned) the .lib and .dll are placed in lib/<debug or release>/${OSG_PLUGINS}.
|
||||
#here the PREFIX property has been used, the same result would be accomplidhe by prepending ${OSG_PLUGINS}/ to OUTPUT_NAME target property
|
||||
|
||||
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES PREFIX "${OSG_PLUGINS}/")
|
||||
ENDIF(OSG_MSVC_VERSIONED_DLL)
|
||||
ENDIF(NOT MSVC)
|
||||
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES PROJECT_LABEL "${TARGET_LABEL}")
|
||||
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES FOLDER "Plugins")
|
||||
IF(APPLE)
|
||||
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES XCODE_ATTRIBUTE_WARNING_CFLAGS "")
|
||||
IF(OSG_BUILD_PLATFORM_IPHONE)
|
||||
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES XCODE_ATTRIBUTE_ENABLE_BITCODE ${IPHONE_ENABLE_BITCODE})
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
|
||||
SETUP_LINK_LIBRARIES()
|
||||
|
||||
#the installation path are differentiated for win32 that install in bin versus other architecture that install in lib${LIB_POSTFIX}/${OSG_PLUGINS}
|
||||
#the installation path are differentiated for win32 that install in bib versus other architecture that install in lib${LIB_POSTFIX}/${OSG_PLUGINS}
|
||||
IF(WIN32)
|
||||
INSTALL(TARGETS ${TARGET_TARGETNAME}
|
||||
RUNTIME DESTINATION bin COMPONENT ${PACKAGE_COMPONENT}
|
||||
ARCHIVE DESTINATION lib/${OSG_PLUGINS} COMPONENT libopenscenegraph-dev
|
||||
LIBRARY DESTINATION bin/${OSG_PLUGINS} COMPONENT ${PACKAGE_COMPONENT})
|
||||
IF(MSVC AND DYNAMIC_OPENSCENEGRAPH)
|
||||
IF( ${CMAKE_GENERATOR} STREQUAL "Ninja" )
|
||||
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${TARGET_TARGETNAME}${CMAKE_RELWITHDEBINFO_POSTFIX}.pdb DESTINATION bin/${OSG_PLUGINS} COMPONENT ${PACKAGE_COMPONENT} CONFIGURATIONS RelWithDebInfo)
|
||||
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${TARGET_TARGETNAME}${CMAKE_DEBUG_POSTFIX}.pdb DESTINATION bin/${OSG_PLUGINS} COMPONENT ${PACKAGE_COMPONENT} CONFIGURATIONS Debug)
|
||||
ELSE( ${CMAKE_GENERATOR} STREQUAL "Ninja" )
|
||||
INSTALL(FILES ${OUTPUT_BINDIR}/${OSG_PLUGINS}/${TARGET_TARGETNAME}${CMAKE_RELWITHDEBINFO_POSTFIX}.pdb DESTINATION bin/${OSG_PLUGINS} COMPONENT ${PACKAGE_COMPONENT} CONFIGURATIONS RelWithDebInfo)
|
||||
INSTALL(FILES ${OUTPUT_BINDIR}/${OSG_PLUGINS}/${TARGET_TARGETNAME}${CMAKE_DEBUG_POSTFIX}.pdb DESTINATION bin/${OSG_PLUGINS} COMPONENT ${PACKAGE_COMPONENT} CONFIGURATIONS Debug)
|
||||
ENDIF( ${CMAKE_GENERATOR} STREQUAL "Ninja" )
|
||||
ENDIF(MSVC AND DYNAMIC_OPENSCENEGRAPH)
|
||||
INSTALL(TARGETS ${TARGET_TARGETNAME} RUNTIME DESTINATION bin ARCHIVE DESTINATION lib/${OSG_PLUGINS} LIBRARY DESTINATION bin/${OSG_PLUGINS} )
|
||||
ELSE(WIN32)
|
||||
INSTALL(TARGETS ${TARGET_TARGETNAME}
|
||||
RUNTIME DESTINATION bin COMPONENT ${PACKAGE_COMPONENT}
|
||||
ARCHIVE DESTINATION lib${LIB_POSTFIX}/${OSG_PLUGINS} COMPONENT libopenscenegraph-dev
|
||||
LIBRARY DESTINATION lib${LIB_POSTFIX}/${OSG_PLUGINS} COMPONENT ${PACKAGE_COMPONENT})
|
||||
INSTALL(TARGETS ${TARGET_TARGETNAME} RUNTIME DESTINATION bin ARCHIVE DESTINATION lib${LIB_POSTFIX}/${OSG_PLUGINS} LIBRARY DESTINATION lib${LIB_POSTFIX}/${OSG_PLUGINS} )
|
||||
ENDIF(WIN32)
|
||||
ENDMACRO(SETUP_PLUGIN)
|
||||
|
||||
@@ -372,10 +185,6 @@ ENDMACRO(SETUP_PLUGIN)
|
||||
|
||||
MACRO(SETUP_EXE IS_COMMANDLINE_APP)
|
||||
#MESSAGE("in -->SETUP_EXE<-- ${TARGET_NAME}-->${TARGET_SRC} <--> ${TARGET_H}<--")
|
||||
IF(GLCORE_FOUND)
|
||||
INCLUDE_DIRECTORIES( ${GLCORE_INCLUDE_DIR} )
|
||||
ENDIF()
|
||||
|
||||
IF(NOT TARGET_TARGETNAME)
|
||||
SET(TARGET_TARGETNAME "${TARGET_DEFAULT_PREFIX}${TARGET_NAME}")
|
||||
ENDIF(NOT TARGET_TARGETNAME)
|
||||
@@ -384,11 +193,11 @@ MACRO(SETUP_EXE IS_COMMANDLINE_APP)
|
||||
ENDIF(NOT TARGET_LABEL)
|
||||
|
||||
IF(${IS_COMMANDLINE_APP})
|
||||
|
||||
|
||||
ADD_EXECUTABLE(${TARGET_TARGETNAME} ${TARGET_SRC} ${TARGET_H})
|
||||
|
||||
|
||||
ELSE(${IS_COMMANDLINE_APP})
|
||||
|
||||
|
||||
IF(APPLE)
|
||||
# SET(MACOSX_BUNDLE_LONG_VERSION_STRING "${OPENSCENEGRAPH_MAJOR_VERSION}.${OPENSCENEGRAPH_MINOR_VERSION}.${OPENSCENEGRAPH_PATCH_VERSION}")
|
||||
# Short Version is the "marketing version". It is the version
|
||||
@@ -397,8 +206,6 @@ MACRO(SETUP_EXE IS_COMMANDLINE_APP)
|
||||
# Bundle version is the version the OS looks at.
|
||||
SET(MACOSX_BUNDLE_BUNDLE_VERSION "${OPENSCENEGRAPH_MAJOR_VERSION}.${OPENSCENEGRAPH_MINOR_VERSION}.${OPENSCENEGRAPH_PATCH_VERSION}")
|
||||
SET(MACOSX_BUNDLE_GUI_IDENTIFIER "org.openscenegraph.${TARGET_TARGETNAME}" )
|
||||
# replace underscore by hyphen
|
||||
STRING(REGEX REPLACE "_" "-" MACOSX_BUNDLE_GUI_IDENTIFIER ${MACOSX_BUNDLE_GUI_IDENTIFIER})
|
||||
SET(MACOSX_BUNDLE_BUNDLE_NAME "${TARGET_NAME}" )
|
||||
# SET(MACOSX_BUNDLE_ICON_FILE "myicon.icns")
|
||||
# SET(MACOSX_BUNDLE_COPYRIGHT "")
|
||||
@@ -418,28 +225,15 @@ MACRO(SETUP_EXE IS_COMMANDLINE_APP)
|
||||
ENDIF(APPLE)
|
||||
|
||||
ADD_EXECUTABLE(${TARGET_TARGETNAME} ${PLATFORM_SPECIFIC_CONTROL} ${TARGET_SRC} ${TARGET_H})
|
||||
|
||||
|
||||
ENDIF(${IS_COMMANDLINE_APP})
|
||||
|
||||
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES PROJECT_LABEL "${TARGET_LABEL}")
|
||||
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES DEBUG_POSTFIX "${CMAKE_DEBUG_POSTFIX}")
|
||||
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES OUTPUT_NAME ${TARGET_NAME})
|
||||
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES DEBUG_OUTPUT_NAME "${TARGET_NAME}${CMAKE_DEBUG_POSTFIX}")
|
||||
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES RELEASE_OUTPUT_NAME "${TARGET_NAME}${CMAKE_RELEASE_POSTFIX}")
|
||||
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES RELWITHDEBINFO_OUTPUT_NAME "${TARGET_NAME}${CMAKE_RELWITHDEBINFO_POSTFIX}")
|
||||
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES MINSIZEREL_OUTPUT_NAME "${TARGET_NAME}${CMAKE_MINSIZEREL_POSTFIX}")
|
||||
|
||||
IF(MSVC_IDE AND OSG_MSVC_VERSIONED_DLL)
|
||||
SET_OUTPUT_DIR_PROPERTY_260(${TARGET_TARGETNAME} "") # Ensure the /Debug /Release are removed
|
||||
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES PREFIX "../")
|
||||
ENDIF(MSVC_IDE AND OSG_MSVC_VERSIONED_DLL)
|
||||
|
||||
IF(APPLE)
|
||||
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES XCODE_ATTRIBUTE_WARNING_CFLAGS "")
|
||||
IF(OSG_BUILD_PLATFORM_IPHONE)
|
||||
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES XCODE_ATTRIBUTE_ENABLE_BITCODE ${IPHONE_ENABLE_BITCODE})
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
|
||||
SETUP_LINK_LIBRARIES()
|
||||
SETUP_LINK_LIBRARIES()
|
||||
|
||||
ENDMACRO(SETUP_EXE)
|
||||
|
||||
@@ -453,20 +247,10 @@ MACRO(SETUP_APPLICATION APPLICATION_NAME)
|
||||
ELSE(${ARGC} GREATER 1)
|
||||
SET(IS_COMMANDLINE_APP 0)
|
||||
ENDIF(${ARGC} GREATER 1)
|
||||
|
||||
|
||||
SETUP_EXE(${IS_COMMANDLINE_APP})
|
||||
|
||||
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES FOLDER "Applications")
|
||||
|
||||
IF(APPLE)
|
||||
INSTALL(TARGETS ${TARGET_TARGETNAME} RUNTIME DESTINATION bin BUNDLE DESTINATION bin)
|
||||
ELSE(APPLE)
|
||||
INSTALL(TARGETS ${TARGET_TARGETNAME} RUNTIME DESTINATION bin COMPONENT openscenegraph )
|
||||
IF(MSVC)
|
||||
INSTALL(FILES ${OUTPUT_BINDIR}/${TARGET_NAME}${CMAKE_RELWITHDEBINFO_POSTFIX}.pdb DESTINATION bin COMPONENT openscenegraph CONFIGURATIONS RelWithDebInfo)
|
||||
INSTALL(FILES ${OUTPUT_BINDIR}/${TARGET_NAME}${CMAKE_DEBUG_POSTFIX}.pdb DESTINATION bin COMPONENT openscenegraph CONFIGURATIONS Debug)
|
||||
ENDIF(MSVC)
|
||||
ENDIF(APPLE)
|
||||
|
||||
INSTALL(TARGETS ${TARGET_TARGETNAME} RUNTIME DESTINATION bin )
|
||||
|
||||
ENDMACRO(SETUP_APPLICATION)
|
||||
|
||||
@@ -486,20 +270,10 @@ MACRO(SETUP_EXAMPLE EXAMPLE_NAME)
|
||||
ELSE(${ARGC} GREATER 1)
|
||||
SET(IS_COMMANDLINE_APP 0)
|
||||
ENDIF(${ARGC} GREATER 1)
|
||||
|
||||
|
||||
SETUP_EXE(${IS_COMMANDLINE_APP})
|
||||
|
||||
SET_TARGET_PROPERTIES(${TARGET_TARGETNAME} PROPERTIES FOLDER "Examples")
|
||||
|
||||
IF(APPLE)
|
||||
INSTALL(TARGETS ${TARGET_TARGETNAME} RUNTIME DESTINATION share/OpenSceneGraph/bin BUNDLE DESTINATION share/OpenSceneGraph/bin )
|
||||
ELSE(APPLE)
|
||||
INSTALL(TARGETS ${TARGET_TARGETNAME} RUNTIME DESTINATION share/OpenSceneGraph/bin COMPONENT openscenegraph-examples )
|
||||
IF(MSVC)
|
||||
INSTALL(FILES ${OUTPUT_BINDIR}/${TARGET_NAME}${CMAKE_RELWITHDEBINFO_POSTFIX}.pdb DESTINATION share/OpenSceneGraph/bin COMPONENT openscenegraph-examples CONFIGURATIONS RelWithDebInfo)
|
||||
INSTALL(FILES ${OUTPUT_BINDIR}/${TARGET_NAME}${CMAKE_DEBUG_POSTFIX}.pdb DESTINATION share/OpenSceneGraph/bin COMPONENT openscenegraph-examples CONFIGURATIONS Debug)
|
||||
ENDIF(MSVC)
|
||||
ENDIF(APPLE)
|
||||
|
||||
INSTALL(TARGETS ${TARGET_TARGETNAME} RUNTIME DESTINATION share/OpenSceneGraph/bin )
|
||||
|
||||
ENDMACRO(SETUP_EXAMPLE)
|
||||
|
||||
@@ -512,12 +286,12 @@ ENDMACRO(SETUP_COMMANDLINE_EXAMPLE)
|
||||
|
||||
# Takes two optional arguments -- osg prefix and osg version
|
||||
MACRO(HANDLE_MSVC_DLL)
|
||||
#this is a hack... the build place is set to lib/<debug or release> by LIBARARY_OUTPUT_PATH equal to OUTPUT_LIBDIR
|
||||
#the .lib will be crated in ../ so going straight in lib by the IMPORT_PREFIX property
|
||||
#because we want dll placed in OUTPUT_BINDIR ie the bin folder sibling of lib, we can use ../../bin to go there,
|
||||
#it is hardcoded, we should compute OUTPUT_BINDIR position relative to OUTPUT_LIBDIR ... to be implemented
|
||||
#changing bin to something else breaks this hack
|
||||
#the dll are versioned by prefixing the name with osg${OPENSCENEGRAPH_SOVERSION}-
|
||||
#this is a hack... the build place is set to lib/<debug or release> by LIBARARY_OUTPUT_PATH equal to OUTPUT_LIBDIR
|
||||
#the .lib will be crated in ../ so going straight in lib by the IMPORT_PREFIX property
|
||||
#because we want dll placed in OUTPUT_BINDIR ie the bin folder sibling of lib, we can use ../../bin to go there,
|
||||
#it is hardcoded, we should compute OUTPUT_BINDIR position relative to OUTPUT_LIBDIR ... to be implemented
|
||||
#changing bin to something else breaks this hack
|
||||
#the dll are versioned by prefixing the name with osg${OPENSCENEGRAPH_SOVERSION}-
|
||||
|
||||
# LIB_PREFIX: use "osg" by default, else whatever we've been given.
|
||||
IF(${ARGC} GREATER 0)
|
||||
@@ -532,47 +306,22 @@ MACRO(HANDLE_MSVC_DLL)
|
||||
ELSE(${ARGC} GREATER 1)
|
||||
SET(LIB_SOVERSION ${OPENSCENEGRAPH_SOVERSION})
|
||||
ENDIF(${ARGC} GREATER 1)
|
||||
|
||||
SET_OUTPUT_DIR_PROPERTY_260(${LIB_NAME} "") # Ensure the /Debug /Release are removed
|
||||
IF(NOT MSVC_IDE)
|
||||
IF (NOT CMAKE24)
|
||||
BUILDER_VERSION_GREATER(2 8 0)
|
||||
IF(NOT VALID_BUILDER_VERSION)
|
||||
# If CMake < 2.8.1
|
||||
SET_TARGET_PROPERTIES(${LIB_NAME} PROPERTIES PREFIX "../bin/${LIB_PREFIX}${LIB_SOVERSION}-" IMPORT_PREFIX "../")
|
||||
ELSE(NOT VALID_BUILDER_VERSION)
|
||||
SET_TARGET_PROPERTIES(${LIB_NAME} PROPERTIES PREFIX "${LIB_PREFIX}${LIB_SOVERSION}-")
|
||||
ENDIF(NOT VALID_BUILDER_VERSION)
|
||||
ELSE (NOT CMAKE24)
|
||||
SET_TARGET_PROPERTIES(${LIB_NAME} PROPERTIES PREFIX "../bin/${LIB_PREFIX}${LIB_SOVERSION}-" IMPORT_PREFIX "../")
|
||||
SET(NEW_LIB_NAME "${OUTPUT_BINDIR}/${LIB_PREFIX}${LIB_SOVERSION}-${LIB_NAME}")
|
||||
ADD_CUSTOM_COMMAND(
|
||||
TARGET ${LIB_NAME}
|
||||
POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -E copy "${NEW_LIB_NAME}.lib" "${OUTPUT_LIBDIR}/${LIB_NAME}.lib"
|
||||
COMMAND ${CMAKE_COMMAND} -E copy "${NEW_LIB_NAME}.exp" "${OUTPUT_LIBDIR}/${LIB_NAME}.exp"
|
||||
COMMAND ${CMAKE_COMMAND} -E remove "${NEW_LIB_NAME}.lib"
|
||||
COMMAND ${CMAKE_COMMAND} -E remove "${NEW_LIB_NAME}.exp"
|
||||
)
|
||||
ENDIF (NOT CMAKE24)
|
||||
|
||||
IF(NOT MSVC_IDE)
|
||||
SET_TARGET_PROPERTIES(${LIB_NAME} PROPERTIES PREFIX "../bin/${LIB_PREFIX}${LIB_SOVERSION}-")
|
||||
SET(NEW_LIB_NAME "${OUTPUT_BINDIR}/${LIB_PREFIX}${LIB_SOVERSION}-${LIB_NAME}")
|
||||
ADD_CUSTOM_COMMAND(
|
||||
TARGET ${LIB_NAME}
|
||||
POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -E copy "${NEW_LIB_NAME}.lib" "${OUTPUT_LIBDIR}/${LIB_NAME}.lib"
|
||||
COMMAND ${CMAKE_COMMAND} -E copy "${NEW_LIB_NAME}.exp" "${OUTPUT_LIBDIR}/${LIB_NAME}.exp"
|
||||
COMMAND ${CMAKE_COMMAND} -E remove "${NEW_LIB_NAME}.lib"
|
||||
COMMAND ${CMAKE_COMMAND} -E remove "${NEW_LIB_NAME}.exp"
|
||||
)
|
||||
ELSE(NOT MSVC_IDE)
|
||||
IF (NOT CMAKE24)
|
||||
BUILDER_VERSION_GREATER(2 8 0)
|
||||
IF(NOT VALID_BUILDER_VERSION)
|
||||
# If CMake < 2.8.1
|
||||
SET_TARGET_PROPERTIES(${LIB_NAME} PROPERTIES PREFIX "../../bin/${LIB_PREFIX}${LIB_SOVERSION}-" IMPORT_PREFIX "../")
|
||||
ELSE(NOT VALID_BUILDER_VERSION)
|
||||
SET_TARGET_PROPERTIES(${LIB_NAME} PROPERTIES PREFIX "${LIB_PREFIX}${LIB_SOVERSION}-")
|
||||
ENDIF(NOT VALID_BUILDER_VERSION)
|
||||
ELSE (NOT CMAKE24)
|
||||
SET_TARGET_PROPERTIES(${LIB_NAME} PROPERTIES PREFIX "../../bin/${LIB_PREFIX}${LIB_SOVERSION}-" IMPORT_PREFIX "../")
|
||||
ENDIF (NOT CMAKE24)
|
||||
SET_TARGET_PROPERTIES(${LIB_NAME} PROPERTIES PREFIX "../../bin/${LIB_PREFIX}${LIB_SOVERSION}-" IMPORT_PREFIX "../")
|
||||
ENDIF(NOT MSVC_IDE)
|
||||
|
||||
# SET_TARGET_PROPERTIES(${LIB_NAME} PROPERTIES PREFIX "../../bin/osg${OPENSCENEGRAPH_SOVERSION}-")
|
||||
# SET_TARGET_PROPERTIES(${LIB_NAME} PROPERTIES IMPORT_PREFIX "../")
|
||||
ENDMACRO(HANDLE_MSVC_DLL)
|
||||
|
||||
MACRO(REMOVE_CXX_FLAG flag)
|
||||
STRING(REPLACE "${flag}" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
|
||||
ENDMACRO()
|
||||
|
||||
@@ -1,220 +1,180 @@
|
||||
|
||||
INCLUDE(ListHandle)
|
||||
|
||||
#---------------------------------------------------
|
||||
# Macro: FILTER_OUT FILTERS INPUTS OUTPUT
|
||||
#
|
||||
# Mimicks Gnu Make's $(filter-out) which removes elements
|
||||
# from a list that match the pattern.
|
||||
# Arguments:
|
||||
# FILTERS - list of patterns that need to be removed
|
||||
# INPUTS - list of inputs that will be worked on
|
||||
# OUTPUT - the filtered list to be returned
|
||||
#
|
||||
# Example:
|
||||
# SET(MYLIST this that and the other)
|
||||
# SET(FILTS this that)
|
||||
#
|
||||
# FILTER_OUT("${FILTS}" "${MYLIST}" OUT)
|
||||
# MESSAGE("OUTPUT = ${OUT}")
|
||||
#
|
||||
# The output -
|
||||
# OUTPUT = and;the;other
|
||||
#
|
||||
#---------------------------------------------------
|
||||
MACRO(FILTER_OUT FILTERS INPUTS OUTPUT)
|
||||
SET(FOUT "")
|
||||
FOREACH(INP ${INPUTS})
|
||||
SET(FILTERED 0)
|
||||
|
||||
FOREACH(FILT ${FILTERS})
|
||||
IF(${FILTERED} EQUAL 0)
|
||||
IF("${FILT}" STREQUAL "${INP}")
|
||||
SET(FILTERED 1)
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
ENDFOREACH()
|
||||
MACRO(FILTER_OUT FILTERS INPUTS OUTPUT)
|
||||
# Mimicks Gnu Make's $(filter-out) which removes elements
|
||||
# from a list that match the pattern.
|
||||
# Arguments:
|
||||
# FILTERS - list of patterns that need to be removed
|
||||
# INPUTS - list of inputs that will be worked on
|
||||
# OUTPUT - the filtered list to be returned
|
||||
#
|
||||
# Example:
|
||||
# SET(MYLIST this that and the other)
|
||||
# SET(FILTS this that)
|
||||
#
|
||||
# FILTER_OUT("${FILTS}" "${MYLIST}" OUT)
|
||||
# MESSAGE("OUTPUT = ${OUT}")
|
||||
#
|
||||
# The output -
|
||||
# OUTPUT = and;the;other
|
||||
#
|
||||
SET(FOUT "")
|
||||
FOREACH(INP ${INPUTS})
|
||||
SET(FILTERED 0)
|
||||
FOREACH(FILT ${FILTERS})
|
||||
IF(${FILTERED} EQUAL 0)
|
||||
IF("${FILT}" STREQUAL "${INP}")
|
||||
SET(FILTERED 1)
|
||||
ENDIF("${FILT}" STREQUAL "${INP}")
|
||||
ENDIF(${FILTERED} EQUAL 0)
|
||||
ENDFOREACH(FILT ${FILTERS})
|
||||
IF(${FILTERED} EQUAL 0)
|
||||
SET(FOUT ${FOUT} ${INP})
|
||||
ENDIF(${FILTERED} EQUAL 0)
|
||||
ENDFOREACH(INP ${INPUTS})
|
||||
SET(${OUTPUT} ${FOUT})
|
||||
ENDMACRO(FILTER_OUT FILTERS INPUTS OUTPUT)
|
||||
|
||||
IF(${FILTERED} EQUAL 0)
|
||||
SET(FOUT ${FOUT} ${INP})
|
||||
ENDIF()
|
||||
|
||||
ENDFOREACH(INP ${INPUTS})
|
||||
SET(${OUTPUT} ${FOUT})
|
||||
ENDMACRO()
|
||||
|
||||
#---------------------------------------------------
|
||||
# Macro: GET_HEADERS_EXTENSIONLESS DIR GLOB_PATTERN OUTPUT
|
||||
#
|
||||
#---------------------------------------------------
|
||||
MACRO(GET_HEADERS_EXTENSIONLESS DIR GLOB_PATTERN OUTPUT)
|
||||
FILE(GLOB TMP "${DIR}/${GLOB_PATTERN}" )
|
||||
#FOREACH(F ${TMP})
|
||||
# MESSAGE(STATUS "header-->${F}<--")
|
||||
#ENDFOREACH(F ${TMP})
|
||||
FILTER_OUT("${DIR}/CVS" "${TMP}" TMP)
|
||||
FILTER_OUT("${DIR}/cvs" "${TMP}" ${OUTPUT})
|
||||
FILTER_OUT("${DIR}/.svn" "${TMP}" ${OUTPUT})
|
||||
ENDMACRO()
|
||||
|
||||
#---------------------------------------------------
|
||||
# Macro: ADD_DIRS_TO_ENV_VAR _VARNAME
|
||||
#
|
||||
#---------------------------------------------------
|
||||
MACRO(GET_HEADERS_EXTENSIONLESS DIR GLOB_PATTERN OUTPUT)
|
||||
FILE(GLOB TMP "${DIR}/${GLOB_PATTERN}" )
|
||||
#FOREACH(F ${TMP})
|
||||
# MESSAGE(STATUS "header-->${F}<--")
|
||||
#ENDFOREACH(F ${TMP})
|
||||
FILTER_OUT("${DIR}/CVS" "${TMP}" TMP)
|
||||
FILTER_OUT("${DIR}/cvs" "${TMP}" ${OUTPUT})
|
||||
FILTER_OUT("${DIR}/.svn" "${TMP}" ${OUTPUT})
|
||||
ENDMACRO(GET_HEADERS_EXTENSIONLESS DIR GLOB_PATTERN OUTPUT)
|
||||
|
||||
MACRO(ADD_DIRS_TO_ENV_VAR _VARNAME )
|
||||
FOREACH(_ADD_PATH ${ARGN})
|
||||
FILE(TO_NATIVE_PATH ${_ADD_PATH} _ADD_NATIVE)
|
||||
#SET(_CURR_ENV_PATH $ENV{PATH})
|
||||
#LIST(SET _CURR_ENV_PATH ${_ADD_PATH})
|
||||
#SET(ENV{PATH} ${_CURR_ENV_PATH})${_FILE}
|
||||
IF(WIN32)
|
||||
SET(ENV{${_VARNAME}} "$ENV{${_VARNAME}};${_ADD_NATIVE}")
|
||||
ELSE()
|
||||
SET(ENV{${_VARNAME}} "$ENV{${_VARNAME}}:${_ADD_NATIVE}")
|
||||
ENDIF()
|
||||
#MESSAGE(" env ${_VARNAME} --->$ENV{${_VARNAME}}<---")
|
||||
ENDFOREACH()
|
||||
ENDMACRO()
|
||||
FOREACH(_ADD_PATH ${ARGN})
|
||||
FILE(TO_NATIVE_PATH ${_ADD_PATH} _ADD_NATIVE)
|
||||
#SET(_CURR_ENV_PATH $ENV{PATH})
|
||||
#LIST(SET _CURR_ENV_PATH ${_ADD_PATH})
|
||||
#SET(ENV{PATH} ${_CURR_ENV_PATH})${_FILE}
|
||||
IF(WIN32)
|
||||
SET(ENV{${_VARNAME}} "$ENV{${_VARNAME}};${_ADD_NATIVE}")
|
||||
ELSE(WIN32)
|
||||
SET(ENV{${_VARNAME}} "$ENV{${_VARNAME}}:${_ADD_NATIVE}")
|
||||
ENDIF(WIN32)
|
||||
#MESSAGE(" env ${_VARNAME} --->$ENV{${_VARNAME}}<---")
|
||||
ENDFOREACH(_ADD_PATH)
|
||||
ENDMACRO(ADD_DIRS_TO_ENV_VAR _VARNAME )
|
||||
|
||||
#---------------------------------------------------
|
||||
# Macro: CORRECT_PATH VAR PATH
|
||||
#
|
||||
# Corrects slashes in PATH to be cmake conformous ( / )
|
||||
# MACRO CORRECT_PATH VAR PATH
|
||||
# corrects slashes in PATH to be cmake conformous ( / )
|
||||
# and puts result in VAR
|
||||
#---------------------------------------------------
|
||||
|
||||
MACRO(CORRECT_PATH VAR PATH)
|
||||
SET(${VAR} ${PATH})
|
||||
IF(WIN32)
|
||||
STRING(REGEX REPLACE "/" "\\\\" ${VAR} "${PATH}")
|
||||
ENDIF()
|
||||
ENDMACRO()
|
||||
|
||||
#---------------------------------------------------
|
||||
# Macro: TARGET_LOCATIONS_SET_FILE FILE
|
||||
# TODO: Ok, this seems a bit ridiculuous.
|
||||
#---------------------------------------------------
|
||||
IF(WIN32)
|
||||
STRING(REGEX REPLACE "/" "\\\\" ${VAR} "${PATH}")
|
||||
ENDIF(WIN32)
|
||||
ENDMACRO(CORRECT_PATH)
|
||||
|
||||
MACRO(TARGET_LOCATIONS_SET_FILE FILE)
|
||||
SET(ACCUM_FILE_TARGETS ${FILE})
|
||||
FILE(WRITE ${ACCUM_FILE_TARGETS} "")
|
||||
ENDMACRO()
|
||||
|
||||
#---------------------------------------------------
|
||||
# Macro: TARGET_LOCATIONS_ACCUM TARGET_NAME
|
||||
#
|
||||
#---------------------------------------------------
|
||||
SET(ACCUM_FILE_TARGETS ${FILE})
|
||||
FILE(WRITE ${ACCUM_FILE_TARGETS} "")
|
||||
ENDMACRO(TARGET_LOCATIONS_SET_FILE FILE)
|
||||
|
||||
MACRO(TARGET_LOCATIONS_ACCUM TARGET_NAME)
|
||||
IF(ACCUM_FILE_TARGETS)
|
||||
IF(EXISTS ${ACCUM_FILE_TARGETS})
|
||||
GET_TARGET_PROPERTY(_FILE_LOCATION ${TARGET_NAME} LOCATION)
|
||||
FILE(APPEND ${ACCUM_FILE_TARGETS} "${_FILE_LOCATION};")
|
||||
#SET(_TARGETS_LIST ${_TARGETS_LIST} "${_FILE_LOCATION}" CACHE INTERNAL "lista dll")
|
||||
#MESSAGE("adding target -->${TARGET_NAME}<-- file -->${_FILE_LOCATION}<-- to list -->${_TARGETS_LIST}<--")
|
||||
#SET(ACCUM_FILE_TARGETS ${ACCUM_FILE_TARGETS} ${_FILE_LOCATION})
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
ENDMACRO()
|
||||
|
||||
#---------------------------------------------------
|
||||
# Macro: TARGET_LOCATIONS_GET_LIST _VAR
|
||||
#
|
||||
#---------------------------------------------------
|
||||
IF(ACCUM_FILE_TARGETS)
|
||||
IF(EXISTS ${ACCUM_FILE_TARGETS})
|
||||
GET_TARGET_PROPERTY(_FILE_LOCATION ${TARGET_NAME} LOCATION)
|
||||
FILE(APPEND ${ACCUM_FILE_TARGETS} "${_FILE_LOCATION};")
|
||||
#SET(_TARGETS_LIST ${_TARGETS_LIST} "${_FILE_LOCATION}" CACHE INTERNAL "lista dll")
|
||||
#MESSAGE("adding target -->${TARGET_NAME}<-- file -->${_FILE_LOCATION}<-- to list -->${_TARGETS_LIST}<--")
|
||||
#SET(ACCUM_FILE_TARGETS ${ACCUM_FILE_TARGETS} ${_FILE_LOCATION})
|
||||
ENDIF(EXISTS ${ACCUM_FILE_TARGETS})
|
||||
ENDIF(ACCUM_FILE_TARGETS)
|
||||
ENDMACRO(TARGET_LOCATIONS_ACCUM TARGET_NAME)
|
||||
|
||||
MACRO(TARGET_LOCATIONS_GET_LIST _VAR)
|
||||
IF(ACCUM_FILE_TARGETS)
|
||||
IF(EXISTS ${ACCUM_FILE_TARGETS})
|
||||
FILE(READ ${ACCUM_FILE_TARGETS} ${_VAR})
|
||||
ENDIF(EXISTS ${ACCUM_FILE_TARGETS})
|
||||
ENDIF()
|
||||
ENDMACRO()
|
||||
IF(ACCUM_FILE_TARGETS)
|
||||
IF(EXISTS ${ACCUM_FILE_TARGETS})
|
||||
FILE(READ ${ACCUM_FILE_TARGETS} ${_VAR})
|
||||
ENDIF(EXISTS ${ACCUM_FILE_TARGETS})
|
||||
ENDIF(ACCUM_FILE_TARGETS)
|
||||
ENDMACRO(TARGET_LOCATIONS_GET_LIST _VAR)
|
||||
|
||||
#---------------------------------------------------
|
||||
# Macro: FIND_DEPENDENCY DEPNAME INCLUDEFILE LIBRARY SEARCHPATHLIST
|
||||
#
|
||||
#---------------------------------------------------
|
||||
|
||||
MACRO(FIND_DEPENDENCY DEPNAME INCLUDEFILE LIBRARY SEARCHPATHLIST)
|
||||
MESSAGE(STATUS "searching ${DEPNAME} -->${INCLUDEFILE}<-->${LIBRARY}<-->${SEARCHPATHLIST}<--")
|
||||
|
||||
SET(MY_PATH_INCLUDE )
|
||||
SET(MY_PATH_LIB )
|
||||
SET(MY_PATH_BIN )
|
||||
MESSAGE(STATUS "searching ${DEPNAME} -->${INCLUDEFILE}<-->${LIBRARY}<-->${SEARCHPATHLIST}<--")
|
||||
|
||||
FOREACH( MYPATH ${SEARCHPATHLIST} )
|
||||
SET(MY_PATH_INCLUDE ${MY_PATH_INCLUDE} ${MYPATH}/include)
|
||||
SET(MY_PATH_LIB ${MY_PATH_LIB} ${MYPATH}/lib)
|
||||
SET(MY_PATH_BIN ${MY_PATH_BIN} ${MYPATH}/bin)
|
||||
ENDFOREACH()
|
||||
SET(MY_PATH_INCLUDE )
|
||||
SET(MY_PATH_LIB )
|
||||
SET(MY_PATH_BIN )
|
||||
|
||||
SET(MYLIBRARY "${LIBRARY}")
|
||||
SEPARATE_ARGUMENTS(MYLIBRARY)
|
||||
FOREACH( MYPATH ${SEARCHPATHLIST} )
|
||||
SET(MY_PATH_INCLUDE ${MY_PATH_INCLUDE} ${MYPATH}/include)
|
||||
SET(MY_PATH_LIB ${MY_PATH_LIB} ${MYPATH}/lib)
|
||||
SET(MY_PATH_BIN ${MY_PATH_BIN} ${MYPATH}/bin)
|
||||
ENDFOREACH( MYPATH ${SEARCHPATHLIST} )
|
||||
|
||||
#MESSAGE( " include paths: -->${MY_PATH_INCLUDE}<--")
|
||||
SET(MYLIBRARY "${LIBRARY}")
|
||||
SEPARATE_ARGUMENTS(MYLIBRARY)
|
||||
|
||||
#MESSAGE( " ${DEPNAME}_INCLUDE_DIR --> ${${DEPNAME}_INCLUDE_DIR}<--")
|
||||
#MESSAGE( " include paths: -->${MY_PATH_INCLUDE}<--")
|
||||
|
||||
FIND_PATH("${DEPNAME}_INCLUDE_DIR" ${INCLUDEFILE}
|
||||
${MY_PATH_INCLUDE}
|
||||
)
|
||||
MARK_AS_ADVANCED("${DEPNAME}_INCLUDE_DIR")
|
||||
#MESSAGE( " ${DEPNAME}_INCLUDE_DIR --> ${${DEPNAME}_INCLUDE_DIR}<--")
|
||||
#MESSAGE( " ${DEPNAME}_INCLUDE_DIR --> ${${DEPNAME}_INCLUDE_DIR}<--")
|
||||
|
||||
FIND_PATH("${DEPNAME}_INCLUDE_DIR" ${INCLUDEFILE}
|
||||
${MY_PATH_INCLUDE}
|
||||
)
|
||||
MARK_AS_ADVANCED("${DEPNAME}_INCLUDE_DIR")
|
||||
#MESSAGE( " ${DEPNAME}_INCLUDE_DIR --> ${${DEPNAME}_INCLUDE_DIR}<--")
|
||||
|
||||
FIND_LIBRARY("${DEPNAME}_LIBRARY"
|
||||
NAMES ${MYLIBRARY}
|
||||
PATHS ${MY_PATH_LIB}
|
||||
)
|
||||
IF(${DEPNAME}_LIBRARY)
|
||||
GET_FILENAME_COMPONENT(MYLIBNAME ${${DEPNAME}_LIBRARY} NAME_WE)
|
||||
GET_FILENAME_COMPONENT(MYBINPATH ${${DEPNAME}_LIBRARY} PATH)
|
||||
GET_FILENAME_COMPONENT(MYBINPATH ${MYBINPATH} PATH)
|
||||
SET(MYBINPATH "${MYBINPATH}/bin")
|
||||
IF(EXISTS ${MYBINPATH})
|
||||
SET(MYFOUND 0)
|
||||
FOREACH(MYPATH ${MY_ACCUM_BINARY_DEP})
|
||||
IF(MYPATH MATCHES ${MYBINPATH})
|
||||
SET(MYFOUND 1)
|
||||
#MESSAGE("found -->${MYPATH}<-->${MYBINPATH}<--")
|
||||
ENDIF()
|
||||
ENDFOREACH()
|
||||
IF(MYFOUND EQUAL 0)
|
||||
SET(MY_ACCUM_BINARY_DEP ${MY_ACCUM_BINARY_DEP} ${MYBINPATH})
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
#MESSAGE("${DEPNAME}_BINDEP searching -->${MYLIBNAME}${CMAKE_SHARED_MODULE_SUFFIX}<--in-->${MY_PATH_BIN}<--")
|
||||
# FIND_FILE("${DEPNAME}_BINDEP"
|
||||
# ${MYLIBNAME}${CMAKE_SHARED_MODULE_SUFFIX}
|
||||
# PATHS ${MY_PATH_BIN}
|
||||
# )
|
||||
# FIND_LIBRARY("${DEPNAME}_BINDEP"
|
||||
# NAMES ${MYLIBRARY}
|
||||
# PATHS ${MY_PATH_BIN}
|
||||
# )
|
||||
ENDIF()
|
||||
|
||||
MARK_AS_ADVANCED("${DEPNAME}_LIBRARY")
|
||||
#MESSAGE( " ${DEPNAME}_LIBRARY --> ${${DEPNAME}_LIBRARY}<--")
|
||||
IF(${DEPNAME}_INCLUDE_DIR)
|
||||
IF(${DEPNAME}_LIBRARY)
|
||||
SET( ${DEPNAME}_FOUND "YES" )
|
||||
SET( ${DEPNAME}_LIBRARIES ${${DEPNAME}_LIBRARY} )
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
ENDMACRO()
|
||||
|
||||
#---------------------------------------------------
|
||||
# Macro: MACRO_MESSAGE MYTEXT
|
||||
#
|
||||
#---------------------------------------------------
|
||||
FIND_LIBRARY("${DEPNAME}_LIBRARY"
|
||||
NAMES ${MYLIBRARY}
|
||||
PATHS ${MY_PATH_LIB}
|
||||
)
|
||||
IF(${DEPNAME}_LIBRARY)
|
||||
GET_FILENAME_COMPONENT(MYLIBNAME ${${DEPNAME}_LIBRARY} NAME_WE)
|
||||
GET_FILENAME_COMPONENT(MYBINPATH ${${DEPNAME}_LIBRARY} PATH)
|
||||
GET_FILENAME_COMPONENT(MYBINPATH ${MYBINPATH} PATH)
|
||||
SET(MYBINPATH "${MYBINPATH}/bin")
|
||||
IF(EXISTS ${MYBINPATH})
|
||||
SET(MYFOUND 0)
|
||||
FOREACH(MYPATH ${MY_ACCUM_BINARY_DEP})
|
||||
IF(MYPATH MATCHES ${MYBINPATH})
|
||||
SET(MYFOUND 1)
|
||||
#MESSAGE("found -->${MYPATH}<-->${MYBINPATH}<--")
|
||||
ENDIF(MYPATH MATCHES ${MYBINPATH})
|
||||
ENDFOREACH(MYPATH )
|
||||
IF(MYFOUND EQUAL 0)
|
||||
SET(MY_ACCUM_BINARY_DEP ${MY_ACCUM_BINARY_DEP} ${MYBINPATH})
|
||||
ENDIF(MYFOUND EQUAL 0)
|
||||
ENDIF(EXISTS ${MYBINPATH})
|
||||
#MESSAGE("${DEPNAME}_BINDEP searching -->${MYLIBNAME}${CMAKE_SHARED_MODULE_SUFFIX}<--in-->${MY_PATH_BIN}<--")
|
||||
# FIND_FILE("${DEPNAME}_BINDEP"
|
||||
# ${MYLIBNAME}${CMAKE_SHARED_MODULE_SUFFIX}
|
||||
# PATHS ${MY_PATH_BIN}
|
||||
# )
|
||||
# FIND_LIBRARY("${DEPNAME}_BINDEP"
|
||||
# NAMES ${MYLIBRARY}
|
||||
# PATHS ${MY_PATH_BIN}
|
||||
# )
|
||||
ENDIF(${DEPNAME}_LIBRARY)
|
||||
MARK_AS_ADVANCED("${DEPNAME}_LIBRARY")
|
||||
#MESSAGE( " ${DEPNAME}_LIBRARY --> ${${DEPNAME}_LIBRARY}<--")
|
||||
IF(${DEPNAME}_INCLUDE_DIR)
|
||||
IF(${DEPNAME}_LIBRARY)
|
||||
SET( ${DEPNAME}_FOUND "YES" )
|
||||
SET( ${DEPNAME}_LIBRARIES ${${DEPNAME}_LIBRARY} )
|
||||
ENDIF(${DEPNAME}_LIBRARY)
|
||||
ENDIF(${DEPNAME}_INCLUDE_DIR)
|
||||
ENDMACRO(FIND_DEPENDENCY DEPNAME INCLUDEFILE LIBRARY SEARCHPATHLIST)
|
||||
|
||||
#SET(MACRO_MESSAGE_DEBUG TRUE)
|
||||
MACRO(MACRO_MESSAGE MYTEXT)
|
||||
IF(MACRO_MESSAGE_DEBUG)
|
||||
MESSAGE("in file -->${CMAKE_CURRENT_LIST_FILE}<-- line -->${CMAKE_CURRENT_LIST_LINE}<-- message ${MYTEXT}")
|
||||
ELSE()
|
||||
ELSE(MACRO_MESSAGE_DEBUG)
|
||||
MESSAGE(STATUS "in file -->${CMAKE_CURRENT_LIST_FILE}<-- line -->${CMAKE_CURRENT_LIST_LINE}<-- message ${MYTEXT}")
|
||||
ENDIF()
|
||||
ENDMACRO()
|
||||
|
||||
ENDIF(MACRO_MESSAGE_DEBUG)
|
||||
ENDMACRO(MACRO_MESSAGE MYTEXT)
|
||||
|
||||
@@ -1,31 +1,22 @@
|
||||
IF(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt")
|
||||
MESSAGE(FATAL_ERROR "Cannot find install manifest: \"@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt\"")
|
||||
ENDIF()
|
||||
MESSAGE(FATAL_ERROR "Cannot find install manifest: \"@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt\"")
|
||||
ENDIF(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt")
|
||||
|
||||
FILE(READ "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt" files)
|
||||
STRING(REGEX REPLACE "\n" ";" files "${files}")
|
||||
|
||||
FOREACH(file ${files})
|
||||
MESSAGE(STATUS "Uninstalling \"${file}\"")
|
||||
IF(EXISTS "${file}")
|
||||
EXEC_PROGRAM(
|
||||
"@CMAKE_COMMAND@" ARGS "-E remove \"${file}\""
|
||||
OUTPUT_VARIABLE rm_out
|
||||
RETURN_VALUE rm_retval
|
||||
)
|
||||
IF(NOT "${rm_retval}" STREQUAL 0)
|
||||
MESSAGE(FATAL_ERROR "Problem when removing \"${file}\"")
|
||||
ENDIF()
|
||||
ELSEIF(IS_SYMLINK "${file}")
|
||||
EXEC_PROGRAM(
|
||||
"@CMAKE_COMMAND@" ARGS "-E remove \"${file}\""
|
||||
OUTPUT_VARIABLE rm_out
|
||||
RETURN_VALUE rm_retval
|
||||
)
|
||||
IF(NOT "${rm_retval}" STREQUAL 0)
|
||||
MESSAGE(FATAL_ERROR "Problem when removing \"${file}\"")
|
||||
ENDIF()
|
||||
ELSE()
|
||||
MESSAGE(STATUS "File \"${file}\" does not exist.")
|
||||
ENDIF()
|
||||
ENDFOREACH()
|
||||
MESSAGE(STATUS "Uninstalling \"${file}\"")
|
||||
IF(EXISTS "${file}")
|
||||
EXEC_PROGRAM(
|
||||
"@CMAKE_COMMAND@" ARGS "-E remove \"${file}\""
|
||||
OUTPUT_VARIABLE rm_out
|
||||
RETURN_VALUE rm_retval
|
||||
)
|
||||
IF("${rm_retval}" STREQUAL 0)
|
||||
ELSE("${rm_retval}" STREQUAL 0)
|
||||
MESSAGE(FATAL_ERROR "Problem when removing \"${file}\"")
|
||||
ENDIF("${rm_retval}" STREQUAL 0)
|
||||
ELSE(EXISTS "${file}")
|
||||
MESSAGE(STATUS "File \"${file}\" does not exist.")
|
||||
ENDIF(EXISTS "${file}")
|
||||
ENDFOREACH(file)
|
||||
@@ -1,13 +0,0 @@
|
||||
## This file should be placed in the root directory of your project.
|
||||
## Then modify the CMakeLists.txt file in the root directory of your
|
||||
## project to incorporate the testing dashboard.
|
||||
## # The following are required to uses Dart and the Cdash dashboard
|
||||
## ENABLE_TESTING()
|
||||
## INCLUDE(Dart)
|
||||
set(CTEST_PROJECT_NAME "OpenSceneGraph")
|
||||
set(CTEST_NIGHTLY_START_TIME "00:00:00 CET")
|
||||
|
||||
set(CTEST_DROP_METHOD "http")
|
||||
set(CTEST_DROP_SITE "cdash.openscenegraph.org")
|
||||
set(CTEST_DROP_LOCATION "/submit.php?project=OpenSceneGraph")
|
||||
set(CTEST_DROP_SITE_CDASH TRUE)
|
||||
72
LICENSE.txt
72
LICENSE.txt
@@ -1,8 +1,8 @@
|
||||
OpenSceneGraph Public License, Version 1.0
|
||||
OpenSceneGraph Public License, Version 0.0
|
||||
==========================================
|
||||
|
||||
Copyright (C) 2018 Robert Osfield.
|
||||
|
||||
|
||||
Copyright (C) 2002 Robert Osfield.
|
||||
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this licence document, but changing it is not allowed.
|
||||
|
||||
@@ -12,19 +12,17 @@
|
||||
This library is free software; you can redistribute it and/or modify it
|
||||
under the terms of the OpenSceneGraph Public License (OSGPL) version 0.0
|
||||
or later.
|
||||
|
||||
Notes: the OSGPL is based on the LGPL-2.1-only WITH WxWindows-exception-3.1,
|
||||
with the 4 exceptions laid out in the wxWindows section below. The LGPL is
|
||||
contained in the final section of this license.
|
||||
|
||||
Notes: the OSGPL is based on the LGPL, with the 4 exceptions laid in the wxWindows
|
||||
section below. The LGPL in the final section of this license.
|
||||
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
wxWindows Library Licence, Version 3
|
||||
====================================
|
||||
|
||||
wxWindows Library Licence, Version 3.1
|
||||
======================================
|
||||
|
||||
Copyright (c) 1998-2005 Julian Smart, Robert Roebling et al
|
||||
Copyright (C) 1998 Julian Smart, Robert Roebling [, ...]
|
||||
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this licence document, but changing it is not allowed.
|
||||
@@ -44,20 +42,20 @@
|
||||
|
||||
You should have received a copy of the GNU Library General Public Licence
|
||||
along with this software, usually in a file named COPYING.LIB. If not,
|
||||
write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
Boston, MA 02110-1301 USA.
|
||||
write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||||
Boston, MA 02111-1307 USA.
|
||||
|
||||
EXCEPTION NOTICE
|
||||
|
||||
1. As a special exception, the copyright holders of this library give
|
||||
permission for additional uses of the text contained in this release of
|
||||
the library as licenced under the wxWindows Library Licence, applying
|
||||
either version 3.1 of the Licence, or (at your option) any later version of
|
||||
the Licence as published by the copyright holders of version
|
||||
3.1 of the Licence document.
|
||||
either version 3 of the Licence, or (at your option) any later version of
|
||||
the Licence as published by the copyright holders of version 3 of the
|
||||
Licence document.
|
||||
|
||||
2. The exception is that you may use, copy, link, modify and distribute
|
||||
under your own terms, binary object code versions of works based
|
||||
under the user's own terms, binary object code versions of works based
|
||||
on the Library.
|
||||
|
||||
3. If you copy code from files distributed under the terms of the GNU
|
||||
@@ -72,13 +70,11 @@
|
||||
choice whether to permit this exception to apply to your modifications.
|
||||
If you do not wish that, you must delete the exception notice from such
|
||||
code and/or adjust the licensing conditions notice accordingly.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
GNU LESSER GENERAL PUBLIC LICENSE
|
||||
Version 2.1, February 1999
|
||||
GNU LESSER GENERAL PUBLIC LICENSE
|
||||
Version 2.1, February 1999
|
||||
|
||||
Copyright (C) 1991, 1999 Free Software Foundation, Inc.
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
@@ -89,7 +85,7 @@
|
||||
as the successor of the GNU Library Public License, version 2, hence
|
||||
the version number 2.1.]
|
||||
|
||||
Preamble
|
||||
Preamble
|
||||
|
||||
The licenses for most software are designed to take away your
|
||||
freedom to share and change it. By contrast, the GNU General Public
|
||||
@@ -134,7 +130,7 @@ modified by someone else and passed on, the recipients should know
|
||||
that what they have is not the original version, so that the original
|
||||
author's reputation will not be affected by problems that might be
|
||||
introduced by others.
|
||||
|
||||
|
||||
Finally, software patents pose a constant threat to the existence of
|
||||
any free program. We wish to make sure that a company cannot
|
||||
effectively restrict the users of a free program by obtaining a
|
||||
@@ -190,8 +186,8 @@ modification follow. Pay close attention to the difference between a
|
||||
"work based on the library" and a "work that uses the library". The
|
||||
former contains code derived from the library, whereas the latter must
|
||||
be combined with the library in order to run.
|
||||
|
||||
GNU LESSER GENERAL PUBLIC LICENSE
|
||||
|
||||
GNU LESSER GENERAL PUBLIC LICENSE
|
||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
|
||||
0. This License Agreement applies to any software library or other
|
||||
@@ -225,7 +221,7 @@ such a program is covered only if its contents constitute a work based
|
||||
on the Library (independent of the use of the Library in a tool for
|
||||
writing it). Whether that is true depends on what the Library does
|
||||
and what the program that uses the Library does.
|
||||
|
||||
|
||||
1. You may copy and distribute verbatim copies of the Library's
|
||||
complete source code as you receive it, in any medium, provided that
|
||||
you conspicuously and appropriately publish on each copy an
|
||||
@@ -237,7 +233,7 @@ Library.
|
||||
You may charge a fee for the physical act of transferring a copy,
|
||||
and you may at your option offer warranty protection in exchange for a
|
||||
fee.
|
||||
|
||||
|
||||
2. You may modify your copy or copies of the Library or any portion
|
||||
of it, thus forming a work based on the Library, and copy and
|
||||
distribute such modifications or work under the terms of Section 1
|
||||
@@ -295,7 +291,7 @@ instead of to this License. (If a newer version than version 2 of the
|
||||
ordinary GNU General Public License has appeared, then you can specify
|
||||
that version instead if you wish.) Do not make any other change in
|
||||
these notices.
|
||||
|
||||
|
||||
Once this change is made in a given copy, it is irreversible for
|
||||
that copy, so the ordinary GNU General Public License applies to all
|
||||
subsequent copies and derivative works made from that copy.
|
||||
@@ -346,7 +342,7 @@ Library will still fall under Section 6.)
|
||||
distribute the object code for the work under the terms of Section 6.
|
||||
Any executables containing that work also fall under Section 6,
|
||||
whether or not they are linked directly with the Library itself.
|
||||
|
||||
|
||||
6. As an exception to the Sections above, you may also combine or
|
||||
link a "work that uses the Library" with the Library to produce a
|
||||
work containing portions of the Library, and distribute that work
|
||||
@@ -408,7 +404,7 @@ restrictions of other proprietary libraries that do not normally
|
||||
accompany the operating system. Such a contradiction means you cannot
|
||||
use both them and the Library together in an executable that you
|
||||
distribute.
|
||||
|
||||
|
||||
7. You may place library facilities that are a work based on the
|
||||
Library side-by-side in a single library together with other library
|
||||
facilities not covered by this License, and distribute such a combined
|
||||
@@ -449,7 +445,7 @@ subject to these terms and conditions. You may not impose any further
|
||||
restrictions on the recipients' exercise of the rights granted herein.
|
||||
You are not responsible for enforcing compliance by third parties with
|
||||
this License.
|
||||
|
||||
|
||||
11. If, as a consequence of a court judgment or allegation of patent
|
||||
infringement or for any other reason (not limited to patent issues),
|
||||
conditions are imposed on you (whether by court order, agreement or
|
||||
@@ -501,7 +497,7 @@ conditions either of that version or of any later version published by
|
||||
the Free Software Foundation. If the Library does not specify a
|
||||
license version number, you may choose any version ever published by
|
||||
the Free Software Foundation.
|
||||
|
||||
|
||||
14. If you wish to incorporate parts of the Library into other free
|
||||
programs whose distribution conditions are incompatible with these,
|
||||
write to the author to ask for permission. For software which is
|
||||
@@ -511,7 +507,7 @@ decision will be guided by the two goals of preserving the free status
|
||||
of all derivatives of our free software and of promoting the sharing
|
||||
and reuse of software generally.
|
||||
|
||||
NO WARRANTY
|
||||
NO WARRANTY
|
||||
|
||||
15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
|
||||
WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
|
||||
@@ -534,8 +530,8 @@ FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
|
||||
SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
|
||||
DAMAGES.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Libraries
|
||||
|
||||
If you develop a new library, and you want it to be of the greatest
|
||||
|
||||
@@ -1,7 +0,0 @@
|
||||
#ANDROID ROOT MAKEFILE
|
||||
OSG_ROOT := $(call my-dir)
|
||||
LOCAL_PATH := $(call my-dir)
|
||||
OSG_ROOT := $(LOCAL_PATH)
|
||||
OSGInclude := $(OSG_ROOT)/include/OpenThreads \
|
||||
$(OSG_ROOT)/include/osg
|
||||
include src/Android.mk
|
||||
@@ -1,36 +0,0 @@
|
||||
#ANDROID makefile ${MODULE_NAME}
|
||||
|
||||
LOCAL_PATH := ${MODULE_DIR}
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
|
||||
ifeq (${ANDROID_OPTIM_NEON},true)
|
||||
ifeq ($(TARGET_ARCH_ABI),armeabi-v7a)
|
||||
LOCAL_ARM_NEON := true
|
||||
endif
|
||||
endif
|
||||
|
||||
ifeq (${ANDROID_OPTIM_ARM32},true)
|
||||
LOCAL_ARM_MODE := arm
|
||||
endif
|
||||
|
||||
|
||||
LOCAL_CPP_EXTENSION := ${CPP_EXTENSION}
|
||||
|
||||
LOCAL_LDLIBS := ${MODULE_LIBS_FLAGS}
|
||||
|
||||
LOCAL_MODULE := ${MODULE_NAME}
|
||||
|
||||
LOCAL_SRC_FILES := ${MODULE_SOURCES}
|
||||
|
||||
LOCAL_C_INCLUDES := ${MODULE_INCLUDES}
|
||||
|
||||
LOCAL_CFLAGS := ${MODULE_FLAGS_C}
|
||||
|
||||
LOCAL_CPPFLAGS := ${MODULE_FLAGS_CPP}
|
||||
|
||||
LOCAL_SHARED_LIBRARIES := ${MODULE_LIBS_SHARED}
|
||||
LOCAL_STATIC_LIBRARIES := ${MODULE_LIBS_STATIC}
|
||||
|
||||
include ${MODULE_BUILD_TYPE}
|
||||
|
||||
@@ -1,17 +0,0 @@
|
||||
#ANDROID makefile in src
|
||||
|
||||
SERIALIZER_ROOT := $(call my-dir)
|
||||
LOCAL_PATH := $(call my-dir)
|
||||
SERIALIZER_ROOT := $(LOCAL_PATH)
|
||||
|
||||
#include $(call all-subdir-makefiles)
|
||||
include $(SERIALIZER_ROOT)/osg/Android.mk
|
||||
include $(SERIALIZER_ROOT)/osgAnimation/Android.mk
|
||||
include $(SERIALIZER_ROOT)/osgFX/Android.mk
|
||||
include $(SERIALIZER_ROOT)/osgManipulator/Android.mk
|
||||
include $(SERIALIZER_ROOT)/osgParticle/Android.mk
|
||||
include $(SERIALIZER_ROOT)/osgShadow/Android.mk
|
||||
include $(SERIALIZER_ROOT)/osgSim/Android.mk
|
||||
include $(SERIALIZER_ROOT)/osgTerrain/Android.mk
|
||||
include $(SERIALIZER_ROOT)/osgText/Android.mk
|
||||
include $(SERIALIZER_ROOT)/osgVolume/Android.mk
|
||||
@@ -1,8 +0,0 @@
|
||||
#ANDROID makefile in src
|
||||
|
||||
SRC_ROOT := $(call my-dir)
|
||||
LOCAL_PATH := $(call my-dir)
|
||||
SRC_ROOT := $(LOCAL_PATH)
|
||||
|
||||
$ENV{AND_OSG_LIB_PATHS}
|
||||
|
||||
@@ -1,7 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="com.openscenegraph"
|
||||
android:versionCode="1"
|
||||
android:versionName="1.0">
|
||||
<uses-sdk android:minSdkVersion="8" />
|
||||
</manifest>
|
||||
@@ -1,15 +0,0 @@
|
||||
#ANDROID APPLICATION MAKEFILE
|
||||
APP_BUILD_SCRIPT := $(call my-dir)/Android.mk
|
||||
APP_PROJECT_PATH := $(call my-dir)
|
||||
|
||||
APP_OPTIM := ${ANDROID_RELEASE_OPTIM}
|
||||
|
||||
APP_PLATFORM := android-${ANDROID_PLATFORM}
|
||||
APP_STL := ${ANDROID_STL}
|
||||
APP_CPPFLAGS := -fexceptions -frtti
|
||||
#APP_CPPFLAGS := -Os -mthumb-interwork -fno-short-enums
|
||||
#APP_CPPFLAGS := -Wl,--no-undefined
|
||||
|
||||
APP_ABI := ${ANDROID_ABI}
|
||||
|
||||
APP_MODULES := $ENV{AND_OSG_LIB_NAMES}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,31 +0,0 @@
|
||||
1 VERSIONINFO
|
||||
FILEVERSION ${OPENSCENEGRAPH_MAJOR_VERSION}, ${OPENSCENEGRAPH_MINOR_VERSION}, ${OPENSCENEGRAPH_PATCH_VERSION}, ${OPENSCENEGRAPH_SOVERSION}
|
||||
PRODUCTVERSION ${OPENSCENEGRAPH_MAJOR_VERSION}, ${OPENSCENEGRAPH_MINOR_VERSION}, ${OPENSCENEGRAPH_PATCH_VERSION}, ${OPENSCENEGRAPH_SOVERSION}
|
||||
FILEFLAGSMASK 0x17L
|
||||
#ifdef _DEBUG
|
||||
FILEFLAGS 0x1L
|
||||
#else
|
||||
FILEFLAGS 0x0L
|
||||
#endif
|
||||
FILEOS 0x4L
|
||||
FILETYPE 0x0L
|
||||
FILESUBTYPE 0x0L
|
||||
BEGIN
|
||||
BLOCK "StringFileInfo"
|
||||
BEGIN
|
||||
BLOCK "040904b0"
|
||||
BEGIN
|
||||
VALUE "FileDescription", "OpenSceneGraph Binary"
|
||||
VALUE "FileVersion", "${OPENSCENEGRAPH_MAJOR_VERSION}, ${OPENSCENEGRAPH_MINOR_VERSION}, ${OPENSCENEGRAPH_PATCH_VERSION}, ${OPENSCENEGRAPH_SOVERSION}"
|
||||
VALUE "InternalName", "OSG"
|
||||
VALUE "LegalCopyright", "Copyright (C) 2009"
|
||||
VALUE "OriginalFilename", ""
|
||||
VALUE "ProductName", "OpenSceneGraph"
|
||||
VALUE "ProductVersion", "${OPENSCENEGRAPH_MAJOR_VERSION}, ${OPENSCENEGRAPH_MINOR_VERSION}, ${OPENSCENEGRAPH_PATCH_VERSION}, ${OPENSCENEGRAPH_SOVERSION}"
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
BEGIN
|
||||
VALUE "Translation", 0x409, 1200
|
||||
END
|
||||
END
|
||||
@@ -1,31 +0,0 @@
|
||||
1 VERSIONINFO
|
||||
FILEVERSION ${OPENTHREADS_MAJOR_VERSION}, ${OPENTHREADS_MINOR_VERSION}, ${OPENTHREADS_PATCH_VERSION}, ${OPENTHREADS_SOVERSION}
|
||||
PRODUCTVERSION ${OPENTHREADS_MAJOR_VERSION}, ${OPENTHREADS_MINOR_VERSION}, ${OPENTHREADS_PATCH_VERSION}, ${OPENTHREADS_SOVERSION}
|
||||
FILEFLAGSMASK 0x17L
|
||||
#ifdef _DEBUG
|
||||
FILEFLAGS 0x1L
|
||||
#else
|
||||
FILEFLAGS 0x0L
|
||||
#endif
|
||||
FILEOS 0x4L
|
||||
FILETYPE 0x0L
|
||||
FILESUBTYPE 0x0L
|
||||
BEGIN
|
||||
BLOCK "StringFileInfo"
|
||||
BEGIN
|
||||
BLOCK "040904b0"
|
||||
BEGIN
|
||||
VALUE "FileDescription", "OPENTHREADS Binary"
|
||||
VALUE "FileVersion", "${OPENTHREADS_MAJOR_VERSION}, ${OPENTHREADS_MINOR_VERSION}, ${OPENTHREADS_PATCH_VERSION}, ${OPENTHREADS_SOVERSION}"
|
||||
VALUE "InternalName", "OSG"
|
||||
VALUE "LegalCopyright", "Copyright (C) 2009"
|
||||
VALUE "OriginalFilename", ""
|
||||
VALUE "ProductName", "OPENTHREADS"
|
||||
VALUE "ProductVersion", "${OPENTHREADS_MAJOR_VERSION}, ${OPENTHREADS_MINOR_VERSION}, ${OPENTHREADS_PATCH_VERSION}, ${OPENTHREADS_SOVERSION}"
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
BEGIN
|
||||
VALUE "Translation", 0x409, 1200
|
||||
END
|
||||
END
|
||||
@@ -1,21 +1,21 @@
|
||||
Mapping extensionless header files to C++ in Visual Studio
|
||||
=============================================================================
|
||||
|
||||
Previous versions of the OSG included registry files which enabled syntax
|
||||
highlighting for OSG's extensionless headers in Visual Studio. These are not
|
||||
needed anymore, because starting with Visual Studio 2002 (7.0), there is a
|
||||
setting that will map extensionless files to a certain language in the
|
||||
options. This also works for the Express Editions.
|
||||
|
||||
1. Go to Tools-Options.
|
||||
2. Open the Text Editor section, and click on File Extension.
|
||||
3. At the bottom of the window, check the Map Extensionless Files To
|
||||
checkbox, and select Microsoft Visual C++ in the list to the right.
|
||||
|
||||
Note that if you use this feature for other languages, you will have to
|
||||
change it when needed. If that is too cumbersome you may want to generate
|
||||
the registry files and do it that way instead. Please see the
|
||||
.reg files in previous versions of OSG in the VisualStudio directory for
|
||||
a guide on how to do that (hint: check the location of the registry key
|
||||
to make sure the added values end up in the right place for your version
|
||||
of Visual Studio).
|
||||
Mapping extensionless header files to C++ in Visual Studio
|
||||
=============================================================================
|
||||
|
||||
Previous versions of the OSG included registry files which enabled syntax
|
||||
highlighting for OSG's extensionless headers in Visual Studio. These are not
|
||||
needed anymore, because starting with Visual Studio 2002 (7.0), there is a
|
||||
setting that will map extensionless files to a certain language in the
|
||||
options. This also works for the Express Editions.
|
||||
|
||||
1. Go to Tools-Options.
|
||||
2. Open the Text Editor section, and click on File Extension.
|
||||
3. At the bottom of the window, check the Map Extensionless Files To
|
||||
checkbox, and select Microsoft Visual C++ in the list to the right.
|
||||
|
||||
Note that if you use this feature for other languages, you will have to
|
||||
change it when needed. If that is too cumbersome you may want to generate
|
||||
the registry files and do it that way instead. Please see the
|
||||
.reg files in previous versions of OSG in the VisualStudio directory for
|
||||
a guide on how to do that (hint: check the location of the registry key
|
||||
to make sure the added values end up in the right place for your version
|
||||
of Visual Studio).
|
||||
|
||||
@@ -5,8 +5,8 @@ REM trees.
|
||||
REM mew 2004-07-16
|
||||
|
||||
cd ..\..
|
||||
set PATH=%CD%\OpenThreads\bin\win32;%CD%\bin;%CD%\3rdParty\bin;%PATH%
|
||||
set OSG_FILE_PATH=%CD%\OpenSceneGraph-Data;%OSG_FILE_PATH%
|
||||
set PATH=%CD%\OpenThreads\bin\win32;%CD%\OpenSceneGraph\bin\win32;%CD%\3rdParty\bin;%PATH%
|
||||
set OSG_FILE_PATH=%CD%\OpenSceneGraph-Data;%CD%\OpenSceneGraph-Data\Images;%CD%\OpenSceneGraph-Data\fonts;%OSG_FILE_PATH%
|
||||
|
||||
REM uncomment one of these for your desired notify level...
|
||||
rem set OSG_NOTIFY_LEVEL=ALWAYS
|
||||
|
||||
125
README.md
125
README.md
@@ -1,125 +0,0 @@
|
||||
[](https://travis-ci.org/openscenegraph/OpenSceneGraph)
|
||||
[](https://scan.coverity.com/projects/openscenegraph-openscenegraph)
|
||||
[](https://codedocs.xyz/openscenegraph/OpenSceneGraph/)
|
||||
[ABI Tracker](https://abi-laboratory.pro/tracker/timeline/openscenegraph/ "ABI Tracker")
|
||||
|
||||
# Introduction
|
||||
|
||||
Welcome to the OpenSceneGraph (OSG).
|
||||
|
||||
For information on the project, in-depth details on how to compile and run libraries and examples, see the documentation on the OpenSceneGraph website:
|
||||
|
||||
http://www.openscenegraph.org/index.php/documentation
|
||||
|
||||
For support please use the github OpenSceneGraph Discussions forum:
|
||||
|
||||
https://github.com/openscenegraph/OpenSceneGraph/discussions
|
||||
|
||||
For the impatient, we've included quick build instructions below, these are are broken down is three parts:
|
||||
|
||||
1) General notes on building the OpenSceneGraph
|
||||
2) macOS release notes
|
||||
3) iOS release notes
|
||||
|
||||
If details below are not sufficient then head over to the openscenegraph.org to the Documentation/GettingStarted and Documentation/PlatformSpecifics sections for more indepth instructions.
|
||||
|
||||
Robert Osfield.
|
||||
Project Lead.
|
||||
31th January 2020.
|
||||
|
||||
---
|
||||
|
||||
## Section 1. How to build OpenSceneGraph
|
||||
|
||||
If you are using the [vcpkg](https://github.com/Microsoft/vcpkg/) dependency manager you can download and install OpenSceneGraph from source with CMake integration using a single command:
|
||||
```
|
||||
vcpkg install osg
|
||||
```
|
||||
|
||||
The OpenSceneGraph uses the CMake build system to generate a platform-specific build environment. CMake reads the `CMakeLists.txt` files that you'll find throughout the OpenSceneGraph directories, checks for installed dependencies and then generates files for the selected build system.
|
||||
|
||||
If you don't already have CMake installed on your system you can grab it from http://www.cmake.org, use version 2.8.0 or later. Details on the OpenSceneGraph's CMake build can be found at:
|
||||
|
||||
http://www.openscenegraph.org/projects/osg/wiki/Build/CMake
|
||||
|
||||
Under Unix-like systems (i.e. Linux, IRIX, Solaris, Free-BSD, HP-UX, AIX, macOS) use the `cmake` or `ccmake` command-line utils. Note that `cmake .` defaults to building Release to ensure that you get the best performance from your final libraries/applications.
|
||||
|
||||
cd OpenSceneGraph
|
||||
cmake .
|
||||
make
|
||||
sudo make install
|
||||
|
||||
Alternatively, you can create an out-of-source build directory and run cmake or ccmake from there. The advantage to this approach is that the temporary files created by CMake won't clutter the OpenSceneGraph source directory, and also makes it possible to have multiple independent build targets by creating multiple build directories. In a directory alongside the OpenSceneGraph use:
|
||||
|
||||
mkdir build
|
||||
cd build
|
||||
cmake ../OpenSceneGraph
|
||||
make
|
||||
sudo make install
|
||||
|
||||
Under Windows use the GUI tool CMakeSetup to build your VisualStudio files. The following page on our wiki dedicated to the CMake build system should help guide you through the process:
|
||||
|
||||
http://www.openscenegraph.org/index.php/documentation/platform-specifics/windows
|
||||
|
||||
Under macOS you can either use the CMake build system above, or use the Xcode projects that you will find in the OpenSceneGraph/Xcode directory. See release notes on macOS CMake build below.
|
||||
|
||||
For further details on compilation, installation and platform-specific information read "Getting Started" guide:
|
||||
|
||||
http://www.openscenegraph.org/index.php/documentation/10-getting-started
|
||||
|
||||
|
||||
## Section 2. Release notes on macOS build, by Eric Sokolowski et al.
|
||||
|
||||
There are two ways to compile OpenSceneGraph under macOS. The recommended way is to use CMake to generate Xcode project files and then use Xcode to build the library. The default project will be able to build Debug or Release libraries, examples, and sample applications.
|
||||
|
||||
The alternative is to build OpenSceneGraph from the command line using `make` or `ninja` using the instructions for Unix-like systems above.
|
||||
|
||||
Here are some key settings to consider when using CMake:
|
||||
|
||||
- BUILD_OSG_EXAMPLES - By default this is turned off. Turn this setting on to compile many great example programs.
|
||||
- CMAKE_OSX_ARCHITECTURES - Xcode can create applications, executables, libraries, and frameworks that can be run on more than one architecture. Use this setting to indicate the architectures on which to build OSG. x86_64 is the only supported value for OS versions > 10.7.
|
||||
- OSG_BUILD_APPLICATION_BUNDLES - Normally only executable binaries are created for the examples and sample applications. Turn this option on if you want to create real macOS .app bundles. There are caveats to creating `.app` bundles, see below.
|
||||
- OSG_DEFAULT_IMAGE_PLUGIN_FOR_OSX - By default macOS uses the `imageio` plugin instead of the plugins for the individual file types (e.g. `jpg`, `gif`, etc.) to load image file types. The `imageio` plugin can handle all popular file formats through the ImageIO framework.
|
||||
- OSG_WINDOWING_SYSTEM - You have the choice to use Cocoa, Carbon, or X11 when building applications on macOS. Cocoa is the default for OS versions >= 10.5. Carbon and X11 are no longer actively supported, either by Apple or the OSG community.
|
||||
|
||||
|
||||
### APPLICATION BUNDLES (.app bundles)
|
||||
|
||||
The example programs when built as application bundles only contain the executable file. They do not contain the dependent libraries as would a normal bundle, so they are not generally portable to other machines.
|
||||
They also do not know where to find plugins. An environmental variable OSG_LIBRARY_PATH may be set to point to the location where the plugin .so files are located. OSG_FILE_PATH may be set to point to the location where data files are located. Setting OSG_FILE_PATH to the OpenSceneGraph-Data directory is very useful when testing OSG by running the example programs.
|
||||
|
||||
Many of the example programs use command-line arguments. When double-clicking on an application (or using the equivalent "open" command on the command line) only those examples and applications that do not require command-line arguments will successfully run. The executable file within the .app bundle can be run from the command-line if command-line arguments are needed.
|
||||
|
||||
|
||||
## Section 3. Release notes on iOS build, by Thomas Hogarth
|
||||
|
||||
With CMake 3.11, XCode 9.4 and the iOS sdk 11.4 installed you can generate an iOS XCode project using the following command line:
|
||||
|
||||
export THIRDPARTY_PATH=/path/to/3rdParty
|
||||
cmake ./ -G Xcode -DOSG_BUILD_PLATFORM_IPHONE:BOOL=ON \
|
||||
-DIPHONE_SDKVER="11.4" \
|
||||
-DIPHONE_VERSION_MIN="10.0" \
|
||||
-DOPENGL_PROFILE:STRING=GLES3 \
|
||||
-DOSG_CPP_EXCEPTIONS_AVAILABLE:BOOL=ON \
|
||||
-DBUILD_OSG_APPLICATIONS:BOOL=OFF \
|
||||
-DBUILD_OSG_EXAMPLES:BOOL=ON \
|
||||
-DOSG_WINDOWING_SYSTEM:STRING=IOS \
|
||||
-DOSG_DEFAULT_IMAGE_PLUGIN_FOR_OSX="imageio" \
|
||||
-DDYNAMIC_OPENSCENEGRAPH:BOOL=OFF \
|
||||
-DDYNAMIC_OPENTHREADS:BOOL=OFF \
|
||||
-DCURL_INCLUDE_DIR:PATH="$THIRDPARTY_PATH/curl-ios-device/include" \
|
||||
-DCURL_LIBRARY:PATH="$THIRDPARTY_PATH/curl-ios-device/lib/libcurl.a" \
|
||||
-DFREETYPE_INCLUDE_DIR_freetype2:PATH="$THIRDPARTY_PATH/freetype-ios-universal/include/freetype" \
|
||||
-DFREETYPE_INCLUDE_DIR_ft2build:PATH="$THIRDPARTY_PATH/freetype-ios-universal/include" \
|
||||
-DFREETYPE_LIBRARY:PATH="$THIRDPARTY_PATH/freetype-ios-universal/lib/libFreetype2.a" \
|
||||
-DTIFF_INCLUDE_DIR:PATH="$THIRDPARTY_PATH/tiff-ios-device/include" \
|
||||
-DTIFF_LIBRARY:PATH="$THIRDPARTY_PATH/tiff-ios-device/lib/libtiff.a" \
|
||||
-DGDAL_INCLUDE_DIR:PATH="$THIRDPARTY_PATH/gdal-ios-device/include" \
|
||||
-DGDAL_LIBRARY:PATH="$THIRDPARTY_PATH/gdal-ios-device/lib/libgdal.a"
|
||||
|
||||
|
||||
Be sure to set the THIRDPARTY_PATH to the path containing your thirdparty dependencies. Set IPHONE_SDKVER to the version of the iOS sdk you have installed, in this instance 11.4. IPHONE_VERSION_MIN controls the deployment sdk used by xcode, and lastly set OPENGL_PROFILE to the version of GLES you want to use.
|
||||
|
||||
Once this completes an XCode project will have been generated in the osg root folder. Open the generated Xcode project, select the example_osgViewerIPhone target. In 'General' tab set a development team.
|
||||
|
||||
Once this is done you should be able to build and deploy the `example_osgViewerIPhone` target on your device.
|
||||
74
README.txt
Normal file
74
README.txt
Normal file
@@ -0,0 +1,74 @@
|
||||
Welcome to the OpenSceneGraph (OSG).
|
||||
|
||||
For up-to-date information on the project, in-depth details on how to
|
||||
compile and run libraries and examples, see the documentation on the
|
||||
OpenSceneGraph website:
|
||||
|
||||
http://www.openscenegraph.org
|
||||
|
||||
For the impatient, read the simplified build notes below. For support
|
||||
subscribe to our public mailing list:
|
||||
|
||||
http://www.openscenegraph.org/projects/osg/wiki/MailingLists
|
||||
|
||||
|
||||
|
||||
Robert Osfield.
|
||||
Project Lead.
|
||||
25th April 2008.
|
||||
|
||||
--
|
||||
|
||||
How to build the OpenSceneGraph
|
||||
===============================
|
||||
|
||||
The OpenSceneGraph uses the CMake build system to generate a
|
||||
platform-specific build environment. CMake reads the CMakeLists.txt
|
||||
files that you'll find throughout the OpenSceneGraph directories,
|
||||
checks for installed dependenciesand then generates the appropriate
|
||||
build system.
|
||||
|
||||
If you don't already have CMake installed on your system you can grab
|
||||
it from http://www.cmake.org, use version 2.4.6 or later. Details on the
|
||||
OpenSceneGraph's CMake build can be found at:
|
||||
|
||||
http://www.openscenegraph.org/projects/osg/wiki/Build/CMake
|
||||
|
||||
Under unices (i.e. Linux, IRIX, Solaris, Free-BSD, HP-Ux, AIX, OSX)
|
||||
use the cmake or ccmake command-line utils, or use the included tiny
|
||||
configure script that'll run cmake for you. The configure script
|
||||
simply runs 'cmake . -DCMAKE_BUILD_TYPE=Release' to ensure that you
|
||||
get the best performance from your final libraries/applications.
|
||||
|
||||
cd OpenSceneGraph
|
||||
./configure
|
||||
make
|
||||
sudo make install
|
||||
|
||||
Alternatively, you can create an out-of-source build directory and run
|
||||
cmake or ccmake from there. The advantage to this approach is that the
|
||||
temporary files created by CMake won't clutter the OpenSceneGraph
|
||||
source directory, and also makes it possible to have multiple
|
||||
independent build targets by creating multiple build directories. In a
|
||||
directory alongside the OpenSceneGraph use:
|
||||
|
||||
mkdir build
|
||||
cd build
|
||||
cmake ../OpenSceneGraph -DCMAKE_BUILD_TYPE=Release
|
||||
make
|
||||
sudo make install
|
||||
|
||||
Under Windows use the GUI tool CMakeSetup to build your VisualStudio
|
||||
files. The following page on our wiki dedicated to the CMake build
|
||||
system should help guide you through the process:
|
||||
|
||||
http://www.openscenegraph.org/projects/osg/wiki/Support/PlatformSpecifics/VisualStudio
|
||||
|
||||
Under OSX you can either use the CMake build system above, or use the
|
||||
Xcode projects that you will find in the OpenSceneGraph/Xcode
|
||||
directory.
|
||||
|
||||
For further details on compilation, installation and platform-specific
|
||||
information read "Getting Started" guide:
|
||||
|
||||
http://www.openscenegraph.org/projects/osg/wiki/Support/GettingStarted
|
||||
159
Xcode/Misc/ArrangeDMG.sh
Normal file
159
Xcode/Misc/ArrangeDMG.sh
Normal file
@@ -0,0 +1,159 @@
|
||||
#!/bin/bash
|
||||
#!/bin/sh
|
||||
|
||||
#####################################################################
|
||||
# Author: Eric Wing
|
||||
#
|
||||
# This is a stripped down version of my original Build_OSG_OSX.sh
|
||||
# script. This just copies all the already built binaries
|
||||
# into a structure that is near-ready for distribution.
|
||||
#
|
||||
# Usage: You should run this from the directory above the OSG-projects
|
||||
# ("AnyDirectory" in the picture below)
|
||||
# bash OpenSceneGraph/Xcode/Misc/ArrangeDMG.sh
|
||||
#
|
||||
# The Xcode projects were designed so all three projects could be
|
||||
# built without any configuration or installation on the users end
|
||||
# if the directory structure followed this simple layout:
|
||||
#
|
||||
# AnyDirectory/
|
||||
# OpenThreads/
|
||||
# Xcode/
|
||||
# OpenThreads/
|
||||
# OpenThreads.xcode
|
||||
# OpenSceneGraph/
|
||||
# Xcode/
|
||||
# OpenSceneGraph/
|
||||
# OpenSceneGraph.xcode
|
||||
#
|
||||
# Simply put, the root directories for the 3 projects must be at the
|
||||
# same level. If you placed my Xcode tarball for each of 3 projects in
|
||||
# each of the project's respective root directories, my projects should
|
||||
# extract themselves in the correct layout when you double click the
|
||||
# tarballs.
|
||||
#
|
||||
# You may place this script and run it from the same directory level
|
||||
# that OpenThreads and OpenSceneGraph exist in.
|
||||
#
|
||||
#####################################################################
|
||||
|
||||
# CpMac is deprecated now that cp works properly in Tiger
|
||||
#COPY="/Developer/Tools/CpMac -r"
|
||||
COPY="/bin/cp -R"
|
||||
SVN="svn"
|
||||
#COPY="mv -f"
|
||||
|
||||
#BUILDACTION="clean build"
|
||||
#CONFIGURATION="Development"
|
||||
CONFIGURATION="Deployment"
|
||||
|
||||
#GDAL_LOCATION="/Library/Frameworks"
|
||||
|
||||
# Clean up from previous builds?
|
||||
echo "Deleteing PackageDir to begin anew"
|
||||
rm -rf PackageDir
|
||||
#rm -f OpenSceneGraph.dmg
|
||||
|
||||
# Make a directory that will hold all the things to be distributed.
|
||||
mkdir -p PackageDir
|
||||
# Make a subdirectory in PackageDir that will hold all the Frameworks
|
||||
mkdir -p PackageDir/Frameworks
|
||||
# Make a subdirectory in PackageDir that will hold all the osgPlugins
|
||||
mkdir -p PackageDir/PlugIns
|
||||
|
||||
mkdir -p PackageDir/Examples
|
||||
|
||||
mkdir -p PackageDir/XcodeTemplates
|
||||
|
||||
mkdir -p PackageDir/Resources
|
||||
|
||||
mkdir -p PackageDir/.background
|
||||
|
||||
|
||||
# Everything should be built now. Move all the things to be distrubuted
|
||||
# to the PackageDir with the appropriate layout.
|
||||
|
||||
echo "Copying Frameworks..."
|
||||
|
||||
#$COPY OpenThreads/Xcode/OpenThreads/build/$CONFIGURATION/OpenThreads.framework PackageDir/Frameworks
|
||||
#$COPY OpenSceneGraph/Xcode/OpenSceneGraph/build/$CONFIGURATION/osg*.framework PackageDir/Frameworks/
|
||||
$COPY OpenSceneGraph/Xcode/OpenSceneGraph/build/$CONFIGURATION/*.framework PackageDir/Frameworks/
|
||||
|
||||
# Copy the gdal framework
|
||||
#$COPY $GDAL_LOCATION/gdal.framework PackageDir/Frameworks
|
||||
|
||||
echo "Copying PlugIns..."
|
||||
$COPY OpenSceneGraph/Xcode/OpenSceneGraph/build/$CONFIGURATION/*.so PackageDir/PlugIns/
|
||||
|
||||
echo "Copying Examples..."
|
||||
$COPY OpenSceneGraph/Xcode/OpenSceneGraph/build/$CONFIGURATION/*.app PackageDir/Examples/
|
||||
|
||||
echo "Copying Xcode templates..."
|
||||
$COPY OpenSceneGraph/Xcode/XcodeTemplates PackageDir
|
||||
# If we are in CVS, all the CVS junk got copied in so we need to remove it
|
||||
#find -d PackageDir/XcodeTemplates -name CVS -exec rm -rf {} \;
|
||||
find -d PackageDir/XcodeTemplates -name .svn -exec rm -rf {} \;
|
||||
|
||||
|
||||
echo "Copying License and ReadMe files..."
|
||||
#$COPY OpenThreads/COPYING.txt PackageDir/LICENSE_OpenThreads.txt
|
||||
$COPY OpenSceneGraph/LICENSE.txt PackageDir/LICENSE_OSG.txt
|
||||
$COPY OpenSceneGraph/Xcode/OSX_OSG_README.rtf PackageDir
|
||||
|
||||
# Copy the background image and .DS_Store for 'fancy' DMG
|
||||
$COPY OpenSceneGraph/Xcode/Packaging/Resources/instlogo.pdf PackageDir/.background
|
||||
$COPY OpenSceneGraph/Xcode/Misc/DSStoreForDMG PackageDir/.DS_Store
|
||||
|
||||
|
||||
# Sorry, I think this is bourne only
|
||||
echo "Setting up symbolic links for the .app's..."
|
||||
(cd PackageDir/Examples
|
||||
for file in *.app; do
|
||||
# echo ${file}
|
||||
(cd "$file/Contents"; \
|
||||
ln -s ../../../Frameworks/ Frameworks; \
|
||||
ln -s ../../../PlugIns/ PlugIns; \
|
||||
ln -s ../../../Resources/ Resources;
|
||||
)
|
||||
done
|
||||
)
|
||||
|
||||
echo "Testing for OpenSceneGraph-Data..."
|
||||
|
||||
|
||||
# If OpenSceneGraph-Data/ resides next to OpenSceneGraph/, then use it
|
||||
if [ -d OpenSceneGraph-Data ]; then
|
||||
echo "Found OpenSceneGraph-Data and will copy into PackageDir/Resources."
|
||||
# Determine if it is a subversion copy or not; we don't want the repo info
|
||||
if [ -d OpenSceneGraph-Data/.svn ]; then
|
||||
$SVN export --force OpenSceneGraph-Data PackageDir/Resources
|
||||
else
|
||||
$COPY OpenSceneGraph-Data PackageDir/Resources
|
||||
fi
|
||||
|
||||
echo "Creating DMG using:"
|
||||
echo "hdiutil create -ov -fs HFS+ -volname OpenSceneGraph -srcfolder PackageDir OpenSceneGraph.dmg"
|
||||
/usr/bin/hdiutil create -ov -fs HFS+ -volname OpenSceneGraph -srcfolder PackageDir OpenSceneGraph.dmg
|
||||
|
||||
else
|
||||
# Not sure how to find the OSG data, so it has to be done manually
|
||||
# Would Spotlight help?
|
||||
#echo "Next, you must (manually) copy all the OSG-data to PackageDir/Resources and the LICENCE_GDAL.rtf to PackageDir."
|
||||
echo "Did not find OpenSceneGraph-Data/ aside OpenSceneGraph/."
|
||||
echo "Next, you must (manually) copy all the OSG-data to PackageDir/Resources."
|
||||
|
||||
echo "Looking up possible location for OpenSceneGraph-Data"
|
||||
#/usr/bin/perl OpenSceneGraph/Xcode/Misc/FindOSGData.pl
|
||||
/usr/bin/perl OpenSceneGraph/Xcode/Misc/FindOSGData.pl --single
|
||||
#echo "Looking up location for LICENSE_GDAL.rtf"
|
||||
#/usr/bin/perl OpenSceneGraph/Xcode/Misc/FindOSGData.pl --single LICENSE_GDAL.rtf
|
||||
|
||||
echo "After you copy the remaining resources, you will want to package up the DMG. You can use the following line as the basis:"
|
||||
echo "hdiutil create -ov -fs HFS+ -volname OpenSceneGraph -srcfolder PackageDir OpenSceneGraph.dmg"
|
||||
fi
|
||||
|
||||
|
||||
# Now we want to package up everything into a .dmg
|
||||
#hdiutil create -ov -fs HFS+ -volname OpenSceneGraph -srcfolder PackageDir OpenSceneGraph.dmg
|
||||
|
||||
|
||||
138
Xcode/Misc/Build_OSG_OSX.sh
Normal file
138
Xcode/Misc/Build_OSG_OSX.sh
Normal file
@@ -0,0 +1,138 @@
|
||||
#!/bin/sh
|
||||
|
||||
#####################################################################
|
||||
# Author: Eric Wing
|
||||
#
|
||||
# This script will build OpenThreads and OpenSceneGraph
|
||||
# (using the Xcode projects I created for each) and package up
|
||||
# the Frameworks and PlugIns into a disk image (.dmg) for
|
||||
# easy distribution. This script may be used towards automation
|
||||
# of nightly builds.
|
||||
#
|
||||
# The Xcode projects were designed so all three projects could be
|
||||
# built without any configuration or installation on the users end
|
||||
# if the directory structure followed this simple layout:
|
||||
#
|
||||
# AnyDirectory/
|
||||
# OpenThreads/
|
||||
# Xcode/
|
||||
# OpenThreads/
|
||||
# OpenThreads.xcode
|
||||
# OpenSceneGraph/
|
||||
# Xcode/
|
||||
# OpenSceneGraph/
|
||||
# OpenSceneGraph.xcode
|
||||
#
|
||||
# Simply put, the root directories for the 3 projects must be at the
|
||||
# same level. If you placed my Xcode tarball for each of 3 projects in
|
||||
# each of the project's respective root directories, my projects should
|
||||
# extract themselves in the correct layout when you double click the
|
||||
# tarballs.
|
||||
#
|
||||
# You may place this script and run it from the same directory level
|
||||
# that OpenThreads and OpenSceneGraph exist in.
|
||||
#
|
||||
# The script will build each of the projects, and then move the built
|
||||
# files to a temporary subdirectory called PackageDir. A disk image (.dmg)
|
||||
# will then be created containing everything in PackageDir. The
|
||||
# disk image is designed to be easily redistrutable over the internet.
|
||||
#
|
||||
# The end user simply needs to download the disk image, mount it, and
|
||||
# then go to the Frameworks folder and drag and drop all the frameworks to
|
||||
# a standard location. These might be:
|
||||
# ~/Library/Frameworks
|
||||
# /Library/Frameworks
|
||||
# Or you may place them inside your application bundle e.g.
|
||||
# YourApp.app/Frameworks
|
||||
#
|
||||
# Plugins are somewhat problematic. Though they build correctly,
|
||||
# the code to locate the plugins from the "stardard" locations is
|
||||
# incomplete. Currently, optionally installed Plugins like Demeter
|
||||
# are not built.
|
||||
#
|
||||
# To build everything, you must have the Apple Developer Tools installed
|
||||
# and you must also install Apple's X11 development package (if not
|
||||
# already installed). It can be found with the Developer Tools on the
|
||||
# last CD of the Operating System CDs.
|
||||
#
|
||||
# Also, since the code is C++, ABI issues apply. Since Panther is
|
||||
# gcc 3.3 based, the expectation is that the binaries produced
|
||||
# will require 3.3 compatibility.
|
||||
#
|
||||
#####################################################################
|
||||
|
||||
COPY="/Developer/Tools/CpMac -r"
|
||||
#COPY="mv -f"
|
||||
|
||||
BUILDACTION="build"
|
||||
#BUILDACTION="clean build"
|
||||
CONFIGURATION="Deployment"
|
||||
|
||||
# Clean up from previous builds?
|
||||
rm -rf PackageDir
|
||||
rm OpenSceneGraph.dmg
|
||||
|
||||
# Make a directory that will hold all the things to be distributed.
|
||||
mkdir -p PackageDir
|
||||
# Make a subdirectory in PackageDir that will hold all the Frameworks
|
||||
mkdir -p PackageDir/Frameworks
|
||||
# Make a subdirectory in PackageDir that will hold all the osgPlugins
|
||||
mkdir -p PackageDir/PlugIns
|
||||
|
||||
mkdir -p PackageDir/Examples
|
||||
|
||||
# First build OpenThreads
|
||||
# xcodebuild -project OpenThreads.xcode \
|
||||
# -buildstyle Deployment \
|
||||
# xcodebuild is the commandline tool that can build Xcode projects.
|
||||
# Specifying "clean build" will clean everything and then rebuild it.
|
||||
# Just specifying "build" will only rebuild things that need it.
|
||||
(cd OpenThreads/Xcode/OpenThreads; \
|
||||
xcodebuild -project OpenThreads.xcodeproj \
|
||||
-target OpenThreads \
|
||||
-configuration $CONFIGURATION \
|
||||
$BUILDACTION \
|
||||
;
|
||||
)
|
||||
|
||||
# Now build OpenSceneGraph with everything
|
||||
# xcodebuild is the commandline tool that can build Xcode projects.
|
||||
# Specifying "clean build" will clean everything and then rebuild it.
|
||||
# Just specifying "build" will only rebuild things that need it.
|
||||
# xcodebuild -project OpenSceneGraph.xcode \
|
||||
# -buildstyle Deployment \
|
||||
(cd OpenSceneGraph/Xcode/OpenSceneGraph; \
|
||||
xcodebuild -project OpenSceneGraph.xcodeproj \
|
||||
-target AllStandardTargets \
|
||||
-configuration $CONFIGURATION \
|
||||
$BUILDACTION \
|
||||
;
|
||||
)
|
||||
|
||||
(cd OpenSceneGraph/Xcode/OpenSceneGraph; \
|
||||
xcodebuild -project OpenSceneGraph.xcodeproj \
|
||||
-target GDALdependentStuff \
|
||||
-configuration $CONFIGURATION \
|
||||
$BUILDACTION \
|
||||
;
|
||||
)
|
||||
|
||||
# Everything should be built now. Move all the things to be distrubuted
|
||||
# to the PackageDir with the appropriate layout.
|
||||
#$COPY OpenThreads/Xcode/OpenThreads/build/OpenThreads.framework PackageDir/Frameworks
|
||||
#$COPY OpenSceneGraph/Xcode/OpenSceneGraph/build/osg*.framework PackageDir/Frameworks/
|
||||
|
||||
#$COPY OpenSceneGraph/Xcode/OpenSceneGraph/build/*.so PackageDir/PlugIns/
|
||||
#$COPY OpenSceneGraph/Xcode/OpenSceneGraph/build/*.app PackageDir/Examples/
|
||||
|
||||
$COPY OpenThreads/Xcode/OpenThreads/build/$CONFIGURATION/OpenThreads.framework PackageDir/Frameworks
|
||||
$COPY OpenSceneGraph/Xcode/OpenSceneGraph/build/$CONFIGURATION/osg*.framework PackageDir/Frameworks/
|
||||
|
||||
$COPY OpenSceneGraph/Xcode/OpenSceneGraph/build/$CONFIGURATION/*.so PackageDir/PlugIns/
|
||||
$COPY OpenSceneGraph/Xcode/OpenSceneGraph/build/$CONFIGURATION/*.app PackageDir/Examples/
|
||||
|
||||
|
||||
# Now we want to package up everything into a .dmg
|
||||
hdiutil create -ov -fs HFS+ -volname OpenSceneGraph -srcfolder PackageDir OpenSceneGraph.dmg
|
||||
|
||||
|
||||
BIN
Xcode/Misc/DSStoreForDMG
Normal file
BIN
Xcode/Misc/DSStoreForDMG
Normal file
Binary file not shown.
119
Xcode/Misc/FindOSGData.pl
Normal file
119
Xcode/Misc/FindOSGData.pl
Normal file
@@ -0,0 +1,119 @@
|
||||
#!/usr/bin/perl -w
|
||||
|
||||
# Author: Eric Wing
|
||||
#
|
||||
# This calls mdfind to find Folders on your system called
|
||||
# "OpenSceneGraph-Data*" on your system. If successful,
|
||||
# the program will sort entries by most recently changed
|
||||
# and suggest a copy command for you to cut-and-paste if
|
||||
# correct.
|
||||
# Usage: perl FindOSGData.pl
|
||||
# To suppress list of all possible matches use:
|
||||
# perl FindOSGData.pl --single
|
||||
# Special: To find LICENCE_GDAL.rtf use:
|
||||
# perl FindOSGData.pl [--single] LICENSE_GDAL.rtf
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
my $SHOULD_ONLY_PRINT_SUGGESTION = 0;
|
||||
my $MDFIND_SEARCH_CRITERIA = "kMDItemDisplayName == 'OpenSceneGraph-Data'w && kMDItemKind=Folder";
|
||||
my $SUGGESTED_COPY_TO_PATH = "PackageDir/Resources";
|
||||
my $AM_COPYING_DIR = 1;
|
||||
|
||||
# Quick and dirty extract file options
|
||||
if(scalar(@ARGV))
|
||||
{
|
||||
foreach my $item(@ARGV)
|
||||
{
|
||||
if($item eq "--single")
|
||||
{
|
||||
$SHOULD_ONLY_PRINT_SUGGESTION = 1;
|
||||
}
|
||||
elsif($item eq "LICENSE_GDAL.rtf")
|
||||
{
|
||||
$MDFIND_SEARCH_CRITERIA = "kMDItemDisplayName == 'LICENSE_GDAL.rtf' && kMDItemKind='Rich Text Format (RTF) document'";
|
||||
$SUGGESTED_COPY_TO_PATH = "PackageDir";
|
||||
$AM_COPYING_DIR = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
print("Unknown argument: $item\n");
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
sub main()
|
||||
{
|
||||
# Call mdfind and return the list of files to an array
|
||||
print("Calling mdfind (Spotlight)...\n");
|
||||
|
||||
my @filelist = `/usr/bin/mdfind "$MDFIND_SEARCH_CRITERIA"` or die "Couldn't find anything that matched criteria on your system using Spotlight\n";
|
||||
my %folder_lastused_map;
|
||||
|
||||
#print(@filelist);
|
||||
|
||||
foreach my $file(@filelist)
|
||||
{
|
||||
my $escaped_string = $file;
|
||||
# Need to escape all the spaces in the file name
|
||||
# (and kill trailing newline if there)
|
||||
$escaped_string =~ s/ /\\ /g;
|
||||
chomp($escaped_string);
|
||||
|
||||
# Call mdls on each file to get the last changed date
|
||||
my $ret_string = `/usr/bin/mdls -name kMDItemFSContentChangeDate $escaped_string`;
|
||||
if( $ret_string =~ m/^.*?\nkMDItem.*?=\s+(.*)/ )
|
||||
{
|
||||
# extract the date string (and kill trailing newline if there)
|
||||
my $date_string = $1;
|
||||
chomp($date_string);
|
||||
|
||||
#print("Date string: $date_string\n");
|
||||
# copy the date string to the map
|
||||
$folder_lastused_map{$escaped_string} = $date_string;
|
||||
}
|
||||
else
|
||||
{
|
||||
print "Ooops, no match...mdls format may have changed";
|
||||
}
|
||||
}
|
||||
|
||||
my @sorted_by_most_recently_changed = sort {$folder_lastused_map{$b} cmp $folder_lastused_map{$a}} keys(%folder_lastused_map);
|
||||
|
||||
if(0 == scalar(@sorted_by_most_recently_changed))
|
||||
{
|
||||
print("No matches for OpenSceneGraph-Data were found.");
|
||||
exit;
|
||||
}
|
||||
|
||||
if(not $SHOULD_ONLY_PRINT_SUGGESTION)
|
||||
{
|
||||
print("This is the list of possible matches sorted by most recently changed:\n");
|
||||
foreach my $file(@sorted_by_most_recently_changed)
|
||||
{
|
||||
print("$file\n");
|
||||
}
|
||||
}
|
||||
|
||||
print("\nIf the following file is correct, you may want to copy and paste this line:\n");
|
||||
|
||||
my $item = $sorted_by_most_recently_changed[0];
|
||||
# need to escape string
|
||||
$item =~ s/ /\\ /g;
|
||||
|
||||
if($AM_COPYING_DIR == 1)
|
||||
{
|
||||
print("/Developer/Tools/CpMac -r $item/* $SUGGESTED_COPY_TO_PATH\n");
|
||||
}
|
||||
else
|
||||
{
|
||||
print("/Developer/Tools/CpMac -r $item $SUGGESTED_COPY_TO_PATH\n");
|
||||
}
|
||||
}
|
||||
|
||||
main()
|
||||
|
||||
|
||||
12
Xcode/Misc/Symbolic_Link_App.sh
Normal file
12
Xcode/Misc/Symbolic_Link_App.sh
Normal file
@@ -0,0 +1,12 @@
|
||||
#!/bin/bash
|
||||
|
||||
for file in *.app; do
|
||||
echo ${file}
|
||||
(cd "$file/Contents"; \
|
||||
ln -s ../../../Frameworks/ Frameworks; \
|
||||
ln -s ../../../PlugIns/ PlugIns; \
|
||||
ln -s ../../../Resources/ Resources;
|
||||
)
|
||||
done
|
||||
|
||||
|
||||
30
Xcode/Misc/Tar_Xcode.sh
Normal file
30
Xcode/Misc/Tar_Xcode.sh
Normal file
@@ -0,0 +1,30 @@
|
||||
#!/bin/sh
|
||||
|
||||
# Must be run from the directory above OpenThreads and OpenSceneGraph
|
||||
|
||||
|
||||
(cd OpenThreads; \
|
||||
rm -f XcodeOpenThreads.tar.gz; \
|
||||
tar -zcvf XcodeOpenThreads.tar.gz --exclude='*.pbxuser' --exclude='*.mode1' --exclude='*.perspective' --exclude='build' --exclude='.DS_Store' --exclude='CVS' Xcode/;
|
||||
)
|
||||
|
||||
(cd OpenSceneGraph; \
|
||||
rm -f XcodeOpenSceneGraph.tar.gz
|
||||
tar -zcvf XcodeOpenSceneGraph.tar.gz --exclude='*.pbxuser' --exclude='*.mode1' --exclude='*.perspective' --exclude='build' --exclude='.DS_Store' --exclude='CVS' Xcode/
|
||||
)
|
||||
|
||||
rm -f md5list.txt
|
||||
md5 OpenThreads/XcodeOpenThreads.tar.gz >> md5list.txt
|
||||
md5 OpenSceneGraph/XcodeOpenSceneGraph.tar.gz >> md5list.txt
|
||||
|
||||
mkdir -p XcodePackageDir/Xcode
|
||||
|
||||
rm -f XcodePackageDir/Xcode/XcodeOpenThreads.tar.gz
|
||||
rm -f XcodePackageDir/Xcode/XcodeOpenSceneGraph.tar.gz
|
||||
rm -f XcodePackageDir/Xcode/md5list.txt
|
||||
|
||||
mv md5list.txt XcodePackageDir/Xcode/
|
||||
cp OpenThreads/XcodeOpenThreads.tar.gz XcodePackageDir/Xcode/
|
||||
cp OpenSceneGraph/XcodeOpenSceneGraph.tar.gz XcodePackageDir/Xcode/
|
||||
|
||||
|
||||
51
Xcode/Misc/osegs.pl
Normal file
51
Xcode/Misc/osegs.pl
Normal file
@@ -0,0 +1,51 @@
|
||||
#!/usr/bin/perl
|
||||
|
||||
die "Usage: $0 file\n" unless @ARGV;
|
||||
open(OTOOL, "otool -l $ARGV[0]|") || die "Can't run otool\n";
|
||||
|
||||
$cmd = 0;
|
||||
$name = "";
|
||||
$segstart = 0;
|
||||
$segend = 0;
|
||||
$ostart = 0xffffffff;
|
||||
$oend = 0;
|
||||
|
||||
while(<OTOOL>) {
|
||||
chop;
|
||||
if(/^Load *command /) {
|
||||
$cmd = 1;
|
||||
next;
|
||||
}
|
||||
next unless $cmd != 0;
|
||||
if(/^ *cmd *(.*)/ && $cmd == 1) {
|
||||
if($1 eq "LC_SEGMENT") {
|
||||
$cmd = 2;
|
||||
} else {
|
||||
$cmd = 0;
|
||||
}
|
||||
next;
|
||||
}
|
||||
if(/^ *segname *(.*)/ && $cmd == 2) {
|
||||
$name = $1;
|
||||
next;
|
||||
}
|
||||
if(/^ *vmaddr *(.*)/ && $cmd == 2) {
|
||||
$segstart = hex $1;
|
||||
next;
|
||||
}
|
||||
if(/^ *vmsize *(.*)/ && $cmd == 2) {
|
||||
$len = hex $1;
|
||||
$segend = $segstart + $len;
|
||||
printf("Segment $name, %x - %x\n", $segstart, $segend);
|
||||
$ostart = $segstart if $segstart < $ostart;
|
||||
$oend = $segend if $segend > $oend;
|
||||
$cmd = 0;
|
||||
}
|
||||
}
|
||||
|
||||
close OTOOL;
|
||||
$len = $oend - $ostart;
|
||||
printf("Image from %x to %x (length %x)\n", $ostart, $oend, $len);
|
||||
|
||||
exit 0
|
||||
|
||||
539
Xcode/OSX_OSG_README.rtf
Normal file
539
Xcode/OSX_OSG_README.rtf
Normal file
@@ -0,0 +1,539 @@
|
||||
{\rtf1\ansi\ansicpg1252\cocoartf949
|
||||
{\fonttbl\f0\fswiss\fcharset0 Helvetica;\f1\fmodern\fcharset0 Courier;\f2\fnil\fcharset0 Monaco;
|
||||
}
|
||||
{\colortbl;\red255\green255\blue255;}
|
||||
{\*\listtable{\list\listtemplateid1\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid0\'02\'05.;}{\levelnumbers\'01;}}{\listname ;}\listid1}
|
||||
{\list\listtemplateid2\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid0\'02\'05.;}{\levelnumbers\'01;}}{\listname ;}\listid2}
|
||||
{\list\listtemplateid3\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid0\'02\'05.;}{\levelnumbers\'01;}}{\listname ;}\listid3}}
|
||||
{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}{\listoverride\listid2\listoverridecount0\ls2}{\listoverride\listid3\listoverridecount0\ls3}}
|
||||
\margl1440\margr1440\vieww11520\viewh13720\viewkind0
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
|
||||
\f0\b\fs24 \cf0 OpenSceneGraph on Mac OS X
|
||||
\b0 \
|
||||
\
|
||||
This is the readme for the entire OpenThreads/OpenSceneGraph distribution for the OS X frameworks and Xcode projects. This readme was originally written for the binary distribution, but there is a lot of useful information in here so it has also been included with the source code in the Xcode section. This was sync'd with the OSG 2.2 release.\
|
||||
\
|
||||
The source code is available at {\field{\*\fldinst{HYPERLINK "http://www.openscenegraph.org/"}}{\fldrslt http://www.openscenegraph.org/}}\
|
||||
\
|
||||
|
||||
\b \
|
||||
Quick Start:
|
||||
\b0 \
|
||||
Screencasts of how to install and get going with OSG for Mac OS X can be found here:\
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
{\field{\*\fldinst{HYPERLINK "http://www.openscenegraph.org/projects/osg/wiki/Support/Tutorials/MacOSXTips"}}{\fldrslt \cf0 http://www.openscenegraph.org/projects/osg/wiki/Support/Tutorials/MacOSXTips}}\
|
||||
\pard\pardeftab720\ql\qnatural
|
||||
\cf0 \
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
\cf0 \
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
|
||||
\b \cf0 Special Notes for Leopard:\
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
|
||||
\b0 \cf0 (See {\field{\*\fldinst{HYPERLINK "http://www.openscenegraph.org/projects/osg/wiki/Support/PlatformSpecifics/MacOSX10.5"}}{\fldrslt http://www.openscenegraph.org/projects/osg/wiki/Support/PlatformSpecifics/MacOSX10.5}} for up-to-date information.)\
|
||||
\
|
||||
|
||||
\b Broken Binary Compatibility:
|
||||
\b0 \
|
||||
Apple has broken binary compatibility in a limited way between 10.4 and 10.5 when using OpenGL and C++. Under 32-bit, the GLenum type was changed from long (in 10.4 and before) to int (in 10.5).\
|
||||
\
|
||||
Under 32-bit, sizeof(long) == sizeof(int) == 4-bytes.\
|
||||
(In 64-bit, sizeof(long) == 8-bytes, sizeof(int) == 4-bytes)\
|
||||
So in C 32-bit, binary compatibility is preserved.\
|
||||
\
|
||||
But under C++, even though both types are 4-bytes under 32-bits, C++ name mangling rules treat int and long as fundamentally different types. Thus binary compatibility is broken if you try linking two pieces of code that use different types for GLenum.\
|
||||
\
|
||||
\
|
||||
This means:\
|
||||
1) If you have a 10.4 SDK (or before) built OSG framework, you cannot build an application using the 10.5 SDK or you will get strange undefined symbol errors if GLenum is used. This means don't develop against the 10.5 SDK on Leopard.\
|
||||
\
|
||||
2) You cannot use a 10.5 SDK built OSG framework to build an application using the 10.4 SDK, otherwise this will also give you undefined symbol errors. This means don't develop with 10.5 built OSG frameworks when using the 10.4u SDK on Leopard or developing on 10.4 itself.\
|
||||
\
|
||||
3) If you have a 10.4 SDK built OSG framework and a 10.4 SDK built application that uses it, this does *not* present a binary compatibility problem and you may be able to run on 10.5 (ignoring any different compatibility issues).\
|
||||
\
|
||||
4) Similarly to #3, if you have a 10.5 SDK built framework and a 10.5 SDK built application that uses it, this does *not* present a binary compatibility problem and you may be able to run on 10.4 presuming there are no specific 10.5 dependencies. (But it is safer to build against the 10.4 SDK if you plan on deploying to 10.4 and use no 10.5 specific features.)\
|
||||
\
|
||||
Basically, this means you can't intermix 10.4 and 10.5 frameworks.\
|
||||
\
|
||||
You can slip around this problem if you manage to avoid the use of any code that uses GLenum. And pure C is not affected.\
|
||||
\
|
||||
|
||||
\b \
|
||||
OSG 10.4 and 10.5 SDKs:\
|
||||
|
||||
\b0 Xcode 3.0 introduces formal support for SDKs created by 3rd parties (like us). Since we now have binary incompatible frameworks, developing binaries for both 10.4 and 10.5 on the same system is a pain. Having a separate OSG 10.4 and 10.5 SDK may help minimize that pain.\
|
||||
\
|
||||
Stay tuned for the SDKs and instructions.\
|
||||
\
|
||||
\
|
||||
\
|
||||
|
||||
\b X11 Link problems:\
|
||||
|
||||
\b0 Another common problem developers might experience is:\
|
||||
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural
|
||||
\cf0 ld: cycle in dylib re-exports with /usr/X11R6/lib/libGL.dylib\
|
||||
collect2: ld returned 1 exit status\
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
\cf0 \
|
||||
Apple has a posted a Technical Q&A (QA1567) on this entitled "Compiling X11 / OpenGL applications on Mac OS X v.10.5 Leopard"\
|
||||
{\field{\*\fldinst{HYPERLINK "http://developer.apple.com/qa/qa2007/qa1567.html"}}{\fldrslt http://developer.apple.com/qa/qa2007/qa1567.html\
|
||||
}}\
|
||||
Some people have reported a problem similar to this and/or used the solution posted in this Q&A to resolve a problem building the osgdb_freetype plugin. However, I believe this is the wrong solution to this specific problem. In the osgdb_freetype case, the problem was one of two things:\
|
||||
1) The wrong libfreetype.dylib was being used (wrong SDK)\
|
||||
2) The libfreetype.dylib was not found (wrong path)\
|
||||
\
|
||||
For #1, the Xcode project was linking to /usr/X11R6/lib, but we should have been linking to $(SDKROOT)/usr/X11R6/lib. You would normally experience this problem when compiling against the 10.4u SDK on 10.5.\
|
||||
\
|
||||
For #2, the problem was usually experienced by people building against the 10.5 SDK (on 10.5). The problem here is that Leopard has moved from XFree86.org to X.org and the path is now /usr/X11/lib instead of X11R6. Within the SDK, there is no X11R6 path, so the library was not found.\
|
||||
\
|
||||
The solution is quite simple and change the link path line to:\
|
||||
-L$(SDKROOT)/usr/X11/lib -L$(SDKROOT)/usr/X11R6/lib in the Other Linker Flags for the osgdb_freetype plugin.\
|
||||
\
|
||||
This is now fixed in the Xcode project in Subversion.\
|
||||
\
|
||||
\
|
||||
\
|
||||
|
||||
\b CMake:\
|
||||
|
||||
\b0 The CMake/OSG build system is still not quite ready for prime time. CMake has some general Leopard issues and the OS X/CMake community is trying to work through SDK support issues as the SDKs have become a more prominent part of building on OS X correctly. Framework support is still lacking in the CMake/OSG build system, though CMake CVS is gradually adding/fixing this feature to its code base. \
|
||||
\
|
||||
\
|
||||
|
||||
\b 64-bit:\
|
||||
|
||||
\b0 OSG for OS X 64-bit is not ready. There are two major obstacles:\
|
||||
1) osgViewer\
|
||||
2) osgdb_qt\
|
||||
\
|
||||
The osgViewer backend is written in Carbon and as far as I know, uses some deprecated APIs that are not available in 64-bit. I do not know if this can be easily cleaned up or not. However, I still believe the better long term solution is for a Cocoa based osgViewer backend to be written. However, nothing yet has been written for this as far as I know.\
|
||||
\
|
||||
The example, osgviewerCocoa is close to if not already 64-bit clean. However, because the example uses osgViewer::GraphicsWindowEmbedded which needlessly pulls in all the osgViewer Carbon backend dependencies, you will be unable to actually build osgviewerCocoa as 64-bit. But if you are in a hurry to get 64-bit on OS X, this might be where you want to start. Either strip away the Carbon dependencies from osgViewer, or take osgviewerCocoa and transform it into a Cocoa backend for osgViewer.\
|
||||
\
|
||||
\
|
||||
osgdb_qt is a QuickTime based plugin that handles all image handling and movie handling on OS X. However, it is based on the old QuickTime API which has been marked deprecated and will not survive the 64-bit transition. Thus this plugin needs to be replaced.\
|
||||
\
|
||||
I have already submitted a new plugin called osgdb_ImageIO to osgSubmissions which attempts to assume all the image handling duties. This plugin is based on Apple's ImageIO framework which is the new low-level entry point to deal with all image types handled by the platform. Thus this plugin should handle a lot more image formats than the old QuickTime plugin (e.g. JPEG2000, RAW, etc) and will get more as Apple adds support their system. It also adds support for C++ stream support which was missing from the QuickTime plugin. ImageIO is available on 10.4 and 10.5.\
|
||||
\
|
||||
However, the osgdb_ImageIO plugin does not handle movies unlike the old QuickTime plugin. The current plan is to introduce a second plugin (osgdb_QTKit), which is based on the new QuickTime Kit framework (10.4 and 10.5). This plugin will replace the movie handling capabilities of the old QuickTime plugin. \
|
||||
\
|
||||
Once both new plugins are in place and osgViewer is sorted out, we should be able to build a 32-bit/64-bit Universal Binary of OSG for OS X.\
|
||||
\
|
||||
Mac OS X 10.3 and earlier users and QuickTime for Windows users will still need to use the old QuickTime plugin.\
|
||||
\
|
||||
|
||||
\b Xcode Project Templates:\
|
||||
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural
|
||||
|
||||
\b0 \cf0 Xcode 3.0 has moved things around. The old location was:\
|
||||
/Library/Application Support/Apple/Developer Tools/Project Templates/Application\
|
||||
\
|
||||
The new scheme is:\
|
||||
/Library/Application Support/Developer/\{3.0,Shared\}/Xcode/Project Templates/Application\
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
\cf0 \
|
||||
\pard\pardeftab720\ql\qnatural
|
||||
\cf0 Specifying 3.0 will restrict them to only be available in Xcode 3.0, specifying Shared will make them available to 2.5, 3.0 and beyond.\
|
||||
\
|
||||
I believe our templates will work in both, so Shared is a good location:\
|
||||
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural
|
||||
\cf0 /Library/Application Support/Developer/Shared/Xcode/Project Templates/Application\
|
||||
\
|
||||
Also note you may place it in per-user locations, e.g.\
|
||||
~/Library/Application Support/Developer/Shared/Xcode/Project Templates/Application\
|
||||
\
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
\cf0 \
|
||||
\
|
||||
\
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
|
||||
\b \cf0 What's New in this release (2.2):
|
||||
\b0 \
|
||||
\pard\tx220\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\li720\fi-720\ql\qnatural\pardirnatural
|
||||
\ls1\ilvl0\cf0 (Sorry, no OS X specific notes.)\
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
\cf0 \
|
||||
\
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
|
||||
\b \cf0 Notes for 2.0 release:\
|
||||
\pard\tx220\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\li720\fi-720\ql\qnatural\pardirnatural
|
||||
\ls2\ilvl0
|
||||
\b0 \cf0 {\listtext \'95 }OpenThreads now uses Subversion 'externals' to make it look like part of the OSG source distribution.\
|
||||
{\listtext \'95 }Producer has been removed from the distribution. osgViewer is supposed to replace it. The Mac OS X backend is currently Carbon based.\
|
||||
{\listtext \'95 }GDAL has been removed as it is no longer a dependency.\
|
||||
{\listtext \'95 }osgviewerCocoa (previously osgsimpleviewerCocoa in CVS) is an example program demonstrating tight integration between OpenSceneGraph and Cocoa. It demonstrates many of the things you should consider in building a first-class OS X application that uses OSG.\
|
||||
{\listtext \'95 }Dwarf debugging format\
|
||||
{\listtext \'95 }osgsimpleviewerSDL\
|
||||
\
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
\cf0 OSG has changed its versioning number scheme. 2.0 is the stable release following 1.2.\
|
||||
\
|
||||
Producer has been removed from the distribution with osgViewer as its intended replacement.\
|
||||
\
|
||||
GDAL has also been removed from the distribution as it is no longer a dependency.\
|
||||
\
|
||||
OSG is in the process to moving to a new CMake based build system. Once the remaining Mac OS X support needed is implemented in CMake, the Xcode projects will be removed in favor of the new unified CMake system.\
|
||||
\
|
||||
With Leopard on the horizon, the need to deal with 64-bit readiness and deprecated APIs is becoming more critical. In a nutshell, we need a Cocoa based version of osgViewer, and the QuickTime plugin needs to be replaced. Currently, there is a new ImageIO based plugin to assume the image reading/writing duties of the old qt plugin. We are in need of a QTKit based plugin to assume the movie responsibilities of the old plugin. And we are in need of volunteers to write the Cocoa osgViewer backend. Currently, the example osgviewerCocoa demonstrates a lot of similar functionality and could be used as a reference. However, the example needs to be turned 'inside-out'. The example is an NSView class that contains OSG classes; the osgViewer needs to be the opposite where the OSG class needs to contain the NSView class.\
|
||||
\
|
||||
\
|
||||
\
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
|
||||
\b \cf0 Notes for 1.2 release:\
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
|
||||
\b0 \cf0 1.2 was originally intended as a bug fix release for 1.1 (going for 1.1.1), but OSG broke ABI again so the number was bumped to 1.2. There are no significant changes to the Xcode projects or significant OS X specific changes.\
|
||||
\
|
||||
Since the 1.1 release, we have learned of serious problems (freezing of the window manager) on the (Intel) MacBook Pros using osgText. We believe the problem is with a serious driver bug for ATI in OS X 10.4.7. We believe the bug affects the ATI Radeon X1600. (You can get this string by calling glGetString(GL_RENDERER) when you have a valid OpenGL Context. The string returned to us on affected MacBook Pros is "ATI Radeon X1600 OpenGL Engine".)\
|
||||
\
|
||||
Robert Osfield says:\
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\li720\ri0\ql\qnatural\pardirnatural
|
||||
|
||||
\i \cf0 osgText subloads small glyphs one by one rather than the whole image, so I'd suspect it is this that is broken. There is a path way in osgText::Font for uploading the whole image at once, which original was specifically implement as a work around for an Octane driver bug, but for 1.1 I enabled this pathway to be selectable via an env var to see if OSX users could work around the OSX driver bug.
|
||||
\i0 \
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ri0\ql\qnatural\pardirnatural
|
||||
\cf0 \
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
\cf0 To set the environmental variable through the shell:\
|
||||
\
|
||||
bash:\
|
||||
export OSG_TEXT_INCREMENTAL_SUBLOADING=OFF\
|
||||
\
|
||||
csh:\
|
||||
setenv OSG_TEXT_INCREMENTAL_SUBLOADING OFF\
|
||||
\
|
||||
If you launch through Xcode, you may also set environment variables. In the Groups & Files panel, go to the section called "Executables" and expand the disclosure triangle. Find your application in the list and bring up the Info inspector. Click on the tab called "Arguments" and there are two tables in the display. The lower table will let you enter environmental variables. \
|
||||
\
|
||||
\
|
||||
James Hopper suggests another solution that doesn't require you to launch through a shell:\
|
||||
\
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx9360\li720\ri0\ql\qnatural\pardirnatural
|
||||
|
||||
\i \cf0 you can set environement variables that work with applications by creating a file ~/.MacOSX/.environment.plist and put them in there. easiest way is to use the preference pane called RCEnvironment at\
|
||||
\
|
||||
{\field{\*\fldinst{HYPERLINK "http://www.rubicode.com/Software/RCEnvironment/"}}{\fldrslt http://www.rubicode.com/Software/RCEnvironment/}}
|
||||
\i0 \
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
\cf0 \
|
||||
\
|
||||
For deployed application's, environmental variables are tricker. James Hopper's suggestion will work, but you obviously need to figure out how to install the .plist to user accounts. So another solution is to set things directly in your code. You can set environmental variables in C using putenv or setenv. (Use the man pages for more information.)\
|
||||
\
|
||||
To detect the OS X version number, the only API I know of that can do this Gestalt() which is a Carbon API. (If there are others, please let me know.) The code will look something like this (untested):\
|
||||
\
|
||||
#ifdef __APPLE__\
|
||||
#include <Carbon/Carbon.h>\
|
||||
SInt32 MacVersion;\
|
||||
\
|
||||
if (Gestalt(gestaltSystemVersion, &MacVersion) == noErr)\
|
||||
\{\
|
||||
// For 10.4.7\
|
||||
if (MacVersion == 0x1047)\
|
||||
\{\
|
||||
// Test for the specific video cards giving problems and set the proper environment variables if needed.\
|
||||
// I believe you need an initialized GL context to call glGetString (or any GL command) or will crash.\
|
||||
// If a bad video driver, then call putenv("OSG_TEXT_INCREMENTAL_SUBLOADING=OFF")\
|
||||
\}\
|
||||
// For 10.4.8\
|
||||
else if (MacVersion <= 0x1048)\
|
||||
\{\
|
||||
// Do we assume the problem is still broken or do we assume it's fixed?\
|
||||
\}\
|
||||
// By the way, did things work okay in 10.4.6?\
|
||||
\
|
||||
\}\
|
||||
#endif\
|
||||
\
|
||||
Don't forget to link against Carbon (-framework Carbon) if you use Gestalt.\
|
||||
\
|
||||
\
|
||||
If you are affected by this, please file a bug report at {\field{\*\fldinst{HYPERLINK "https://bugreport.apple.com"}}{\fldrslt https://bugreport.apple.com}}. Apple lives and dies by the bug report system. If anything is to get done, it must be in the bug reporter. And they keep count of how many people file the same bug, so duplicates are good.\
|
||||
\
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
|
||||
\i \cf0 (Note: We believe this has been fixed in 10.4.8)
|
||||
\i0 \
|
||||
\
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
|
||||
\b \cf0 Notes for 1.1 release:\
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
|
||||
\b0 \cf0 We are now distributing Universal Binaries. These binaries were built using Xcode 2.3 and gcc 4.0.1.\
|
||||
The Xcode projects are also set to build as Universal Binaries for both Development and Deployment\
|
||||
targets. If you do not need this and want to save build time, you should change the architecture option\
|
||||
to your desired setting (most likely to $(NATIVE_ARCH)). It is overridden in the top-level "OpenSceneGraph" project in the Group & Files panel. Don't forget to change OpenThreads \
|
||||
as well. (Quick tip: You can delete the modified (boldfaced) option by clicking on the - button.)\
|
||||
\
|
||||
Apple documented the behavior of -Os in the Xcode 2.3 release, so we have changed the compiler optimizations (back) from -O3 to -Os. The hope was to shrink the binary size, but it didn't seem to have a large effect. Benchmarking still has not been done. (Volunteers?)\
|
||||
\
|
||||
There are two new convenience scripts (ArrangeDMG.sh and FindOSGData.pl) in the Misc section\
|
||||
of the Xcode section of the source code. These are mainly to help binary distribution. However, if\
|
||||
you're interested in seeing some command-line Spotlight (mdfind) in action, you can look at the \
|
||||
FindOSGData.pl script.\
|
||||
\
|
||||
New to Xcode 2.3 is the Dwarf debugging format. It is off by default to retain compatibility with Xcode\
|
||||
2.1/2.2. However, for your own development you may see drastic improvements in many things if you \
|
||||
enable it. File size alone shrunk from about 500MB for the frameworks to under 100MB. And for the \
|
||||
PlugIns, the file size shrunk from about 1GB to about 100MB.\
|
||||
\
|
||||
We have stopped maintaining the Xcode 1.5/2.0 projects.\
|
||||
\
|
||||
\
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
|
||||
\b \cf0 Notes for 1.0 release:
|
||||
\b0 \
|
||||
These projects were primarily developed with gcc 4.0.1 under Tiger 10.4.3 using Xcode 2.2. Starting with gcc 4.0, Apple no longer statically links in the C++ runtime. Apple has made available the g++ 4.0 dynamic runtime for Panther under the 10.3.9 release. To run under Panther, your system must have this update (or you must recompile the binaries for your system).\
|
||||
\
|
||||
With gcc 4.0, serious bugs have been fixed from gcc 3.3 and new features are available to us so we have experimented with more aggressive optimizations. For these binaries we have enabled -O3 optimization and -mtune=G5. We have also enabled autovectorization. We also enabled -fvisibility-inlines-hidden which is expected to shrink the binary sizes, but noticed very little difference. (There may be something wrong.) We have not done the proper benchmarking with these options, so feedback is welcome.\
|
||||
\
|
||||
Because of the changes to OSG from the last version and our different optimization options, we needed to redo the prebinding addresses. (See below) The new addresses will hopefully have enough wiggle room so future OSG releases might still be able to use the same addresses if you use compile options that make smaller binaries. \
|
||||
\
|
||||
With Apple's announcement of the Intel transition, Xcode 2.1 was released to help developers prepare for the migration. Unfortunately, Xcode 2.1 projects are incompatible with previous Xcode versions. So we have included both Xcode 2.0 (should work with 1.5) and Xcode 2.1/2.2 project files. This will likely be our last release of Xcode 2.0 projects as we move forward. It is also likely our next release will be built as a Universal Binary (this version is not). Prebinding will be dropped in future when this happens (because Tiger doesn't really need prebinding any more and Xcode ignores the option when compiling as Universal).\
|
||||
\
|
||||
\
|
||||
\
|
||||
|
||||
\b Acknowledgments:
|
||||
\b0 \
|
||||
\
|
||||
Many thanks should be given to the people that have helped make these projects possible and for their contributions to make OSG run well on OS X through the multiyear run-up to 1.0. I unfortunately don't have a comprehensive list as many contributions have been submitted directly to OpenSceneGraph, but I wanted to give mention to these specific people I've had the pleasure of working with in trying to make this corner of the universe work.\
|
||||
\
|
||||
James Hopper (work on Xcode templates, GDAL frameworks)\
|
||||
David Guthrie (various patches, testing, Xcode project compiler options refinement)\
|
||||
Jeremy Bell (original comprehensive discussion on OS X frameworks, patches)\
|
||||
Stephen Travis Pope (provider of the OSG on OS X website)\
|
||||
Markus St\'f6be (web site design, documentation reviewer and formatter)\
|
||||
(And for the curious) Eric Wing (Xcode projects and frameworks, patches, documentation)\
|
||||
\
|
||||
\
|
||||
\
|
||||
|
||||
\b Installation:
|
||||
\b0 \
|
||||
\
|
||||
To "Install" the Frameworks, copy the Frameworks inside the \
|
||||
frameworks folder to a standard location.\
|
||||
\
|
||||
~/Library/Frameworks (for a single user)\
|
||||
/Library/Frameworks (for system wide installation)\
|
||||
/Network/Library/Frameworks (for those who understand when this should be used)\
|
||||
Or you may place them inside your application bundle e.g.\
|
||||
YourApp.app/Contents/Frameworks (best for distributing your app)\
|
||||
\
|
||||
Simply drag and drop the frameworks to the desired location.\
|
||||
\
|
||||
To "Install" the osgPlugins, copy the Plugins to one of the following\
|
||||
locations.\
|
||||
\
|
||||
~/Library/Application Support/OpenSceneGraph/PlugIns\
|
||||
/Library/Application Support/OpenSceneGraph/PlugIns\
|
||||
/Network/Library/Application Support/OpenSceneGraph/PlugIns\
|
||||
YourApp.app/Contents/PlugIns (best for distributing your app)\
|
||||
\
|
||||
Note that the search order is:\
|
||||
1) Application Bundle\
|
||||
2) ~/Library\
|
||||
3) /Library\
|
||||
4) /Network/Library\
|
||||
\
|
||||
\
|
||||
That's it! Just remember to link using -framework instead of -l, e.g. \
|
||||
-framework osg -framework osgUtil -framework OpenThreads\
|
||||
instead of \
|
||||
-losg -losgUtil -lOpenThreads\
|
||||
\
|
||||
Also be aware that if using the 10.4 Universal SDK, you may have to explicitly set the Framework search paths (its an option/field in the build settings for your Target) due to the way Apple modifies the standard search paths when using an SDK. (Please see the Universal Binaries section.)\
|
||||
\
|
||||
\
|
||||
|
||||
\b Running the examples:
|
||||
\b0 \
|
||||
\
|
||||
Now that osgViewer supports a native Window manager, we have attempted to provide double clickable .app bundles. We cheat a little to keep the download size smaller by symbolically linking the Frameworks, PlugIns, and Resources directories for each .app bundle instead of giving each its own copy. This allows the apps to find their resources when trying to run directly from the .dmg without having to copy anything to your computer. \
|
||||
\
|
||||
If you copy these examples out of .dmg, be aware that these symbolic links may or may not be able to find all the dependencies depending on factors such as retaining the directory structure of the .dmg, copying everything over, or what you installed to system locations.\
|
||||
\
|
||||
If you want to build stand-alone, completely self-contained OSG apps that require no user installation, follow the standard Apple guidelines for Application Bundles. It might look something like this:\
|
||||
\
|
||||
YourProgram.app/\
|
||||
Contents/\
|
||||
Frameworks/ (all the frameworks you depend on go in here)\
|
||||
osg.framework\
|
||||
osgDB.framework\
|
||||
osgViewer.framework\
|
||||
...\
|
||||
PlugIns/ (the plugins you need go in here)\
|
||||
osgdb_freetype.so\
|
||||
...\
|
||||
Resources/ (the data files you need go in here)\
|
||||
logo.jpg\
|
||||
arial.ttf\
|
||||
model.md2\
|
||||
...\
|
||||
\
|
||||
Some of these examples will run if you double click them, but others will not because they were written expecting command line arguments. To run these you must run from the command line. However, you may now use Terminal.app instead of X11.app if you choose. You would run like:\
|
||||
\
|
||||
./osgreflect.app/Contents/MacOS/osgreflect <arguments here>\
|
||||
\
|
||||
Also remember that OSG will still respond to standard OSG environmental variables.\
|
||||
\
|
||||
\
|
||||
|
||||
\b Prebinding Addresses:\
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
|
||||
\b0 \cf0 \
|
||||
These are now obsolete. Prebinding is now disabled. The old addresses were:\
|
||||
\
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
|
||||
\f1 \cf0 OpenThreads -seg1addr 0x1FF00000\
|
||||
osg -seg1addr 0x1FF10000\
|
||||
osgUtil -seg1addr 0x20230000\
|
||||
osgDB -seg1addr 0x20380000\
|
||||
osgText -seg1addr 0x2040a000\
|
||||
osgParticle -seg1addr 0x20443000\
|
||||
osgGA -seg1addr 0x2049a000\
|
||||
osgIntrospection -seg1addr 0x204fd000\
|
||||
osgSim -seg1addr 0x205f4000\
|
||||
osgFX -seg1addr 0x20690000\
|
||||
osgViweer -seg1addr 0x20700000\
|
||||
gdal -seg1addr 0x207d0000\
|
||||
osgTerrain -seg1addr 0x20c40000
|
||||
\f0 \
|
||||
\
|
||||
\
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
|
||||
\b \cf0 Xcode Projects:
|
||||
\b0 \
|
||||
\
|
||||
The Xcode Projects are now included as part of the official OpenSceneGraph distribution.\
|
||||
\
|
||||
Xcode 2.1+ projects have the extension .xcodeproj.\
|
||||
Xcode 2.0 and below have the extension .xcode (no longer maintained)\
|
||||
\
|
||||
\
|
||||
|
||||
\b Xcode Templates:\
|
||||
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural
|
||||
|
||||
\b0 \cf0 \
|
||||
We have included a "New Project" template for OpenSceneGraph projects. We recommend you place the "OSG Application" folder into either:\
|
||||
\
|
||||
Xcode 2.4 and before:\
|
||||
/Library/Application Support/Apple/Developer Tools/Project Templates/Appllcation (for system-wide)
|
||||
\b \
|
||||
|
||||
\b0 ~/Library/Application Support/Apple/Developer Tools/Project Templates/Appllcation (for per-user)
|
||||
\b \
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
|
||||
\b0 \cf0 \
|
||||
Xcode 2.5/3.0:\
|
||||
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural
|
||||
\cf0 System-wide:\
|
||||
/Library/Application Support/Developer/Shared/Xcode/Project Templates/Application (both 2.5 and 3.0)\
|
||||
/Library/Application Support/Developer/3.0/Xcode/Project Templates/Application (3.0 only)\
|
||||
/Library/Application Support/Developer/2.5/Xcode/Project Templates/Application (2.5 only)\
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
\cf0 \
|
||||
Per-user\
|
||||
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural
|
||||
\cf0 ~/Library/Application Support/Developer/Shared/Xcode/Project Templates/Application (both 2.5 and 3.0)\
|
||||
~/Library/Application Support/Developer/3.0/Xcode/Project Templates/Application (3.0 only)\
|
||||
~/Library/Application Support/Developer/2.5/Xcode/Project Templates/Application (2.5 only)\
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
\cf0 \
|
||||
\
|
||||
\
|
||||
After doing this, when doing a File->New Project, you will see "OSG Application" under the Application category. Selecting this will create a simple OSG project with some sample source code already in place which currently renders 2 colored tetrahedrons.\
|
||||
\
|
||||
All the OSG related frameworks are listed already, though gdal and osgTerrain are not checked by default. To link against them, you must check their checkboxes to enable them. Feel free to uncheck or remove frameworks you don't need.\
|
||||
\
|
||||
The OSGTemplate target defines __USE_OSX_AGL_IMPLEMENTATION__ as a Preprocessor macro already for you.\
|
||||
\
|
||||
A prefix header file has been included which lists all the OSG headers. This will take some additional time to compile your first time. If you don't need all the headers, you may remove them as you see fit.\
|
||||
\
|
||||
You are encouraged to setup a "Copy Files Build Phase" for your project to automatically bundle the OSG frameworks and PlugIns. (And of course, use the "Bundle Resources" to include your Resources. We did not set this up automatically for you because if you use the development frameworks, they can be several hundred megabytes.\
|
||||
\
|
||||
To learn more about Framework bundling, a good demonstration video and sample project exists here:\
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
{\field{\*\fldinst{HYPERLINK "http://rentzsch.com/cocoa/embeddedFrameworks"}}{\fldrslt \cf0 http://rentzsch.com/cocoa/embeddedFrameworks}}\
|
||||
\
|
||||
\
|
||||
Finally, there may still be issues with Zerolink. If you have problems seeing the sample code render an image, try rerunning the program or try disabling zerolink.\
|
||||
\
|
||||
\
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
|
||||
\b \cf0 Compatibility:
|
||||
\b0 \
|
||||
\
|
||||
The binaries are built using gcc 4.0.1 under Tiger 10.4.7. These binaries also will run under Panther 10.3.9 (which has the needed C++ runtime library). \
|
||||
\
|
||||
Remember that the C++ ABI breaks with every new version of gcc. This generally means you shouldn't mix and match C++ code built under different versions of gcc unless you know what you're doing. The promise of gcc 4.0 is that the ABI will finally be stable and this problem will go away in the future. It is highly recommended that you use gcc 4.0 if possible. (There are also many additional reasons to use gcc 4.0 separate from this issue.) If you are running under Panther and must write new code that links to OpenSceneGraph, you might have problems (unverified) since Panther's default compiler is gcc 3.3 and not 4.0. It is highly recommended that you do your development work and building in Tiger under gcc 4.0 and then simply test and reuse the same binaries from Tiger which will avoid the ABI issues with gcc 3.3. If this is not possible for you to do, or must support older gcc versions, you will need to recompile all the osg frameworks with your targeted gcc version.\
|
||||
\
|
||||
Also keep in mind that the prebinding addresses are finicky. Changing the compiler version or the build options can change the binary sizes enough to invalidate our addresses. It is recommended you compile with Xcode 2.1+ and gcc 4.0. If you need to work on other versions, you may need to redo the addresses yourself. Remember that versions prior to gcc 3.3 statically link in the C++ runtime which increases the sizes of the binaries.\
|
||||
\
|
||||
If you are compiling under Xcode 1.5 and are using our Xcode 1.5/2.0 projects, there have been reports of problems I have been unable to reproduce. If you do encounter these problems, please try the following. \
|
||||
\pard\tx220\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\li720\fi-720\ql\qnatural\pardirnatural
|
||||
\ls3\ilvl0\cf0 {\listtext \'95 }I have more rigorously tested the Deployment build style than the Development build style so use the Deployment build style. Make sure you are compiling using -Os or -O0 optimization. -O3 is known to have problems under gcc 3.3. \
|
||||
{\listtext \'95 }The -mtune=G4 is has been tested more under Xcode 1.5 than -mtune=G5. \
|
||||
{\listtext \'95 }I noticed that for some reason, Xcode has problems compiling the Carbon header with the OpenThreads framework when autovectorization and precompiled headers were enabled. You might try disabling precompiled headers if it is not already. If the problem persists, you may also need to delete the entry that enables autovectorization. In the Groups and Files panel (left side panel), open the Info inspector for the project (top item) and click on the Build tab. Scroll down to the bottom, and remove the autovectorization option. \
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
\cf0 \
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
|
||||
\b \cf0 Universal Binaries:
|
||||
\b0 \
|
||||
\
|
||||
Be aware, when building you're own Universal Binaries and you use the 10.4 SDK, you must explicitly\
|
||||
list the search path to the frameworks in the project options. It seems that using any SDK will cause\
|
||||
the standard places like /Library/Frameworks to not be searched.\
|
||||
\
|
||||
|
||||
\b Known Issues:
|
||||
\b0 \
|
||||
\
|
||||
There is one known serious bug that appears sometimes. With Xcode 2.0 and 2.1, in some cases when you build OpenThreads/OSG from scratch, when you run the examples, they will crash on load. The workaround seems to be to delete just the OpenThreads framework after everything is built. Then rebuild just the OpenThreads framework. Bug reports have been filed with Apple, but the root cause remains to be a mystery. (We have some guesses, but nothing substantial.) I have not yet seen this issue emerge with Xcode 2.2, so maybe the problem is fixed.\
|
||||
\
|
||||
The osgdb_geo plugin is not big endian safe. The Makefile system does not build it for OS X. We have added it for the Xcode projects, but you probably shouldn't use it unless you're on Intel.\
|
||||
\
|
||||
Do not use the
|
||||
\f2\fs22 -fvisibility=hidden
|
||||
\f0\fs24 flag unless you know what you're doing. In some cases, Xcode 2.2 seems to enable this by default in the project settings. You should verify your project settings and make sure this is disabled. Among other things, this flag will hide RTTI information causing dynamic_cast<> operations to fail. Since parts of OSG are dependent on RTTI, this option should remain off. The flag
|
||||
\f2\fs22 -fvisibility-inlines-hidden
|
||||
\f0\fs24 may be safe to use. (This is actually enabled in our Xcode projects. If there are problems, please let us know.)\
|
||||
\
|
||||
Finally, there may still be issues with Zerolink. In the Project Template, we defer to the default for this option and in current Xcode versions, the default is on. The OSG Xcode projects themselves have explicitly disabled Zerolink. In the worst cases, scenes will not render correctly or the application may crash. The worst thing about this is that the problems are so strange, you may not realize Zerolink is the problem. To see this for yourself (we tried in Xcode 2.2), you might try comparing the osgdelaunay example with and without Zerolink, toggling through all values of 'n'. With Zerolink certain objects do not even appear and it crashes. So you are probably should disable this to be safe. However, for the daring, Zerolink does seem to work for some projects though we do not fully understand the criteria for this. Furthermore, Apple constantly works on improving this feature so maybe one day it will all just work right.\
|
||||
\
|
||||
|
||||
\b Misc:
|
||||
\b0 \
|
||||
\
|
||||
Included with the OSG Xcode projects are some of the little scripts I used to help put everything together. The build script might be of interest to those who wish to produce their own automated nightly builds.\
|
||||
\
|
||||
We're still looking for volunteers to help us write a new CMake based build system. Please contact me\
|
||||
or the list if you are interested in helping implement the thing.\
|
||||
\
|
||||
If you are developing with Leopard under the Apple software seed program, some areas of OpenSceneGraph are not 64-bit ready/clean. If you can help, please contact me. \
|
||||
\
|
||||
On a similar note, a Cocoa back end would be very nice (and would avoid most of the 64-bit issues). Nothing on this end is being done currently, but if you have an interest in implementing such a thing, please contact me.\
|
||||
\
|
||||
On the topic of feature requests, another potentially useful thing to have is a osgtext plugin that can load glyphs rendered by Apple instead of Freetype.\
|
||||
\
|
||||
\
|
||||
\
|
||||
-Eric Wing\
|
||||
ewing . public - at - gmail (in the commercial domain)\
|
||||
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
|
||||
{\field{\*\fldinst{HYPERLINK "http://www.create.ucsb.edu/OSG/"}}{\fldrslt \cf0 http://www.create.ucsb.edu/OSG/}}\
|
||||
}
|
||||
BIN
Xcode/OpenSceneGraph/English.lproj/InfoPlist.strings
Normal file
BIN
Xcode/OpenSceneGraph/English.lproj/InfoPlist.strings
Normal file
Binary file not shown.
24
Xcode/OpenSceneGraph/Info.plist
Normal file
24
Xcode/OpenSceneGraph/Info.plist
Normal file
@@ -0,0 +1,24 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>English</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>OpenSceneGraph</string>
|
||||
<key>CFBundleIconFile</key>
|
||||
<string></string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.apple.carbonframeworktemplate</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>FMWK</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1.0</string>
|
||||
<key>CSResourcesFileMapped</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
||||
37986
Xcode/OpenSceneGraph/OpenSceneGraph.xcodeproj/project.pbxproj
Normal file
37986
Xcode/OpenSceneGraph/OpenSceneGraph.xcodeproj/project.pbxproj
Normal file
File diff suppressed because it is too large
Load Diff
5
Xcode/OpenSceneGraph/OpenSceneGraph_Prefix.pch
Normal file
5
Xcode/OpenSceneGraph/OpenSceneGraph_Prefix.pch
Normal file
@@ -0,0 +1,5 @@
|
||||
//
|
||||
// Prefix header for all source files of the 'OpenSceneGraph' target in the 'OpenSceneGraph' project.
|
||||
//
|
||||
|
||||
#include <Carbon/Carbon.h>
|
||||
24
Xcode/OpenSceneGraph/OpenThreads-Info.plist
Normal file
24
Xcode/OpenSceneGraph/OpenThreads-Info.plist
Normal file
@@ -0,0 +1,24 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>English</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>OpenThreads</string>
|
||||
<key>CFBundleIconFile</key>
|
||||
<string></string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>org.OpenThreads.OpenThreads</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>FMWK</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1.4.4</string>
|
||||
<key>CSResourcesFileMapped</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
||||
21
Xcode/OpenSceneGraph/install.sh
Normal file
21
Xcode/OpenSceneGraph/install.sh
Normal file
@@ -0,0 +1,21 @@
|
||||
#This Script Installs the files from the Xcode build into the correct location.
|
||||
|
||||
#echo Copy Examples
|
||||
#cp -r ../OpenSceneGraph/build/Development/*.app Binary/Examples/
|
||||
|
||||
echo Install Applications
|
||||
sudo cp build/Development/osgviewer.app/Contents/MacOS/osgviewer /usr/local/bin/
|
||||
sudo cp build/Development/osgarchive.app/Contents/MacOS/osgarchive /usr/local/bin/
|
||||
sudo cp build/Development/osgversion.app/Contents/MacOS/osgversion /usr/local/bin/
|
||||
sudo cp build/Development/osgconv.app/Contents/MacOS/osgconv /usr/local/bin/
|
||||
sudo cp build/Development/osgmovie.app/Contents/MacOS/osgmovie /usr/local/bin/
|
||||
|
||||
echo Install Frameworks
|
||||
cp -r build/Development/*.framework ~/Library/Frameworks/
|
||||
|
||||
echo Install Plugins
|
||||
cp build/Development/*.so ~/Library/Application\ Support/OpenSceneGraph/PlugIns/
|
||||
cp build/Development/osgtext ~/Library/Application\ Support/OpenSceneGraph/PlugIns/
|
||||
cp build/Development/osgpick ~/Library/Application\ Support/OpenSceneGraph/PlugIns/
|
||||
|
||||
echo Install Complete
|
||||
12
Xcode/OpenSceneGraph/os-Info.plist
Normal file
12
Xcode/OpenSceneGraph/os-Info.plist
Normal file
@@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>os</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>org.OpenSceneGraph.os</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>2.2.0</string>
|
||||
</dict>
|
||||
</plist>
|
||||
24
Xcode/OpenSceneGraph/osg-Info.plist
Normal file
24
Xcode/OpenSceneGraph/osg-Info.plist
Normal file
@@ -0,0 +1,24 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>English</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>osg</string>
|
||||
<key>CFBundleGetInfoString</key>
|
||||
<string></string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>org.OpenSceneGraph.osg</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>FMWK</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string></string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>2.2.0</string>
|
||||
</dict>
|
||||
</plist>
|
||||
24
Xcode/OpenSceneGraph/osgDB-Info.plist
Normal file
24
Xcode/OpenSceneGraph/osgDB-Info.plist
Normal file
@@ -0,0 +1,24 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>English</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>osgDB</string>
|
||||
<key>CFBundleGetInfoString</key>
|
||||
<string></string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>org.OpenSceneGraph.osgDB</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>FMWK</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string></string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>2.2.0</string>
|
||||
</dict>
|
||||
</plist>
|
||||
24
Xcode/OpenSceneGraph/osgFX-Info.plist
Normal file
24
Xcode/OpenSceneGraph/osgFX-Info.plist
Normal file
@@ -0,0 +1,24 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>English</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>osgFX</string>
|
||||
<key>CFBundleGetInfoString</key>
|
||||
<string></string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>org.OpenSceneGraph.osgFX</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>FMWK</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string></string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>2.2.0</string>
|
||||
</dict>
|
||||
</plist>
|
||||
24
Xcode/OpenSceneGraph/osgGA-Info.plist
Normal file
24
Xcode/OpenSceneGraph/osgGA-Info.plist
Normal file
@@ -0,0 +1,24 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>English</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>osgGA</string>
|
||||
<key>CFBundleGetInfoString</key>
|
||||
<string></string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>org.OpenSceneGraph.osgGA</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>FMWK</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string></string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>2.2.0</string>
|
||||
</dict>
|
||||
</plist>
|
||||
24
Xcode/OpenSceneGraph/osgGL2-Info.plist
Normal file
24
Xcode/OpenSceneGraph/osgGL2-Info.plist
Normal file
@@ -0,0 +1,24 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>English</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>osgGL2</string>
|
||||
<key>CFBundleGetInfoString</key>
|
||||
<string></string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.MySoftwareCompany.osgGL2</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>FMWK</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string></string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>2.2.0d1</string>
|
||||
</dict>
|
||||
</plist>
|
||||
12
Xcode/OpenSceneGraph/osgGLUTkeyboardmouse-Info.plist
Normal file
12
Xcode/OpenSceneGraph/osgGLUTkeyboardmouse-Info.plist
Normal file
@@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>osgGLUTkeyboardmouse</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>org.OpenSceneGraph.osgGLUTkeyboardmouse</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>2.2.0</string>
|
||||
</dict>
|
||||
</plist>
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user