Commit Graph

78 Commits

Author SHA1 Message Date
David G Yu
dbb75b650c Find TBB using TBB's CMake config
Updated the CMake build to locate TBB using TBB's CMake config
and deleted the local cmake/FindTBB.cmake module.

While the source code remains compatible with earlier versions of
TBB, updated the minimum TBB version from 4.4 to 2018 since that
is the earliest TBB release to include a CMake config.  This is
the version of TBB specified for the CY2019 VFX Reference Platform.

Tested on Windows, Linux, and macOS using TBB 2018 Update 6,
TBB 2020 Update 3, and oneTBB 2021.10.0
2023-09-11 13:02:25 -07:00
David G Yu
c53895310a Additional fix/cleanup for FindDocutils.cmake
Always call FindPackageHandleStandardArgs() and allow it to
set DOCUTILS_FOUND appropriately. By marking DOCUTILS_VERSION
as required we'll also get a useful error message if the version
string from RST2HTML_EXECUTABLE could not be parsed correctly.
2021-02-04 14:59:14 -08:00
Moritz Moeller
f44c3e9b4a Fixed FindDocutils.cmake for broken rst2html case. 2021-01-28 14:18:22 +01:00
David G Yu
74eb94deb5 Removed linking with unnecessary TBB libraries
We no longer search for or link with several TBB libraries
which are not used by this code base. Specifically, we no
longer link with tbbmalloc, tbbmalloc_debug, tbbmalloc_proxy
tbbmalloc_proxy_debug, tbb_preview, and tbb_preview_debug.
2020-03-09 13:39:23 -07:00
David G Yu
16a5c3993f Moved GL version check out of FindGLEW.cmake
This allows us to make use of this even when
we are not using GLEW.
2020-03-03 15:04:24 -08:00
David G Yu
cff20f0c24 Fixed a typo in cmake/FindDXSDK.cmake 2020-02-12 16:25:58 -08:00
David G Yu
a641471fca Updated cmake/Find* modules for VS2019
For Visual Studio 2019 the target architecture is specified
separately from the generator, and this updates the cmake
modules to be able to locate libraries for the correct target.

Also, make use of CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION
to be able to use the correct Windows Kit when multiple
tool sets and development kits are available.
2019-12-20 16:14:56 -08:00
Pol
b4faafb256
Merge pull request #1070 from c64kernal/dev_docutils
Allow using docutils on Windows
2019-03-04 15:12:14 -08:00
George ElKoura
7eef4c33e1 Allow using docutils on Windows
On Windows we now look for and use an explicit python interpreter to
find the version of docutils installed.  There is more information in
the commit, but it would result in a much cleaner change if we could
decide that it's okay to do this for all platforms.  For now, just do it
for Windows to get us unblocked.
2019-03-02 12:17:04 -08:00
George ElKoura
9fa434e27c Add support for newer DirectX SDKs
- Add search path for Windows 10 support for DirectX SDK

- Turn off searching the default paths for the DirectX libraries and
instead use the explicit paths provided.  On certain configurations,
this fixes the case where cmake will pick up the librariees for the wrong
architecture

- Be more explicit when a required DirectX library is not found instead
of silent failure.
2019-03-01 22:44:16 -08:00
David G Yu
3e640239f7 Added build options: NO_GLFW NO_GLFW_X11 2017-07-28 11:28:07 -07:00
Michael Harris
30cd2df37c Added Metal support 2017-04-19 16:49:53 -07:00
David G Yu
b0bdd901ff Fixed cmake GLFW X11 link dependencies
There is more we can clean up here, but this
fixes link issues while building on X11 platforms
when using cmake 3.x
2016-11-11 15:36:12 -05:00
George ElKoura
46fac4324d Merge pull request #845 from davidgyu/release_cleanup1
Removed cmake/FindIlmBase.cmake
2016-09-06 18:24:03 -07:00
David G Yu
1bf107fc3b Removed cmake/FindIlmBase.cmake
This has been unused within the OpenSubdiv project for a long time.
2016-09-06 17:11:27 -07:00
David G Yu
8babf1e12b Removed mayaPolySmooth example
Also removed the remaining Maya dependencies. These
were most useful during the early days of OpenSubdiv.
Now OpenSubdiv has been integrated directly into Maya
and these examples serve little purpose.
2016-09-06 17:08:05 -07:00
David G. Yu
50e8cee18e Added TBB support for MSVC14 / Visual Studio 2015 2016-06-23 14:04:49 -07:00
manuelk
4926fd2c3e Ptex fixes:
- fix build compiling & linking to accomodate recent code churn in Ptex
- fix FindPTex.cmake module to correctly extract version number
- fix dxPtexViewer & glPtexViewer source to compile with new Ptex namespace changes
- add alpha channel padding function to ptexMipmapLoader as a workaround to the absence of 3-channel DXGI formats
- mirror ptex memory limit function from glPtexViewer to dxPtexViewer
2016-02-19 16:58:56 -08:00
Takahito Tejima
8a8771c97d Revert "Add ISPC limit surface evaluation" 2015-07-20 17:13:51 -07:00
Sheng Fu
d3f8725e79 Add ISPC limit surface evaluation 2015-07-20 14:12:11 -07:00
David G Yu
0bcb4c8a2a Added Xinerama as a link dependency for GLFW
This is a recently introduced dependency in GLFW 3.1.x

Since Xinerama is widely supported, simply adding this as a required
dependency for now. If this turns out to be a problem then we can
make this dependency optional when using older versions of GLFW.
2015-06-04 12:51:52 -07:00
Takahito Tejima
5c54962d3b Improve OpenCL/DX interop configuration
build osd and examples with DX/CL interop only of cmake finds
cl_d3d11.h or cl_d3d11_ext.h.
2015-06-02 16:20:59 -07:00
David G. Yu
204425b20c Added TBB support for MSVC12 / Visual Studio 2013
Also fixed a couple of whitespace alignment discrepancies in the cmake script.
2015-05-19 23:52:51 -07:00
David G. Yu
b167096dd8 Fixed FindDXSDK to prefer more recent D3DCompile
The most up-to-date version of the HLSL compiler is now shipped as part
of the Windows SDK. Previously, the HLSL compiler was included with
the DirectX SDK.

There is more that we can do to improve this cmake module, but this
makes it more likely to find the correct tool.
2015-05-19 14:47:14 -07:00
Jeremy Cowles
ef97b4523d Fixing FindGLFW cmake module
Previously, FindGLFW would search for both GL/glfw.h and GLFW/glfw3.h, which
does not work when a system has both GLFW 2.0 and 3.0 installed.

The fix still probes for both files, but does so in two passes, preferring
glfw3.h.
2015-04-18 21:28:07 -07:00
jcowles
d758d572f7 Fix incorrect TBB path resolution order.
When two instances of TBB were present, the system installed version would take
precedence over an explicitly specified TBB_LOCATION path. This change puts
TBB_LOCATION into the HINTS section and leaves the system paths in the PATHS
section.
2015-03-31 15:09:14 -07:00
manuelk
fcf01afb19 Use CMake HINTS to override dependency locations
- fix cmake modules to search explicit locations ahead of default system paths

fixes #388
2015-02-10 13:13:39 -08:00
Christoph Kubisch
a4a5804c04 glfw3.1 prebuilt library directory added 2015-01-27 16:15:36 -08:00
stopiccot
28799f5135 Fixing iOS build 2014-12-08 12:12:19 +03:00
stopiccot
eeedcc155f Added search path for VS 2013 built-in DXSDK 2014-10-04 21:40:46 +03:00
manuelk
7ac73157f4 Bump gcc version requirement to 4.8 : upcoming changes run into compiler bugs with older gcc versions 2014-09-24 14:47:57 -07:00
manuelk
c399655dcc Landing 3.0.0.alpha
Sync'ing the 'dev' branch with the 'feature_3.0dev' branch at commit 68c6d11fc36761ae1a5e6cdc3457be16f2e9704a

The branch 'feature_3.0dev' is now locked and preserved for historical purposes.
2014-09-05 15:07:46 -07:00
manuelk
105919159d Fix glfw 3 Linux dependencies (add Xcursor and -lrt) 2014-08-07 10:20:03 -07:00
Sergey Sharybin
6ef232c95a Integrate CLEW into osd library and examples
If the system has CLEW installed (which is detected by recently
added FindCLEW routines) then OpenSubduv would be compiled against
this library.

It makes binaries and libraries more portable across the systems,
so it's possible to run the same binary on systems with and without
OpenCL SDK installed.

The most annoying part of the change is updating examples to load
OpenCL libraries, but ideally code around controllers and interface
creation is to be de-duplicated anyway.

Based on the pull request #303 from Martijn Berger
2014-05-22 09:10:59 +02:00
manuelk
a5e0309481 Adding a FindCLEW.cmake module in anticipation of using CLEW as a dependency 2014-05-20 10:28:27 -07:00
Nathan Litke
e91d931091 Changed FindGLFW.cmake so that setting the %GLFW_LOCATION% environment variable in Windows behaves like the CMake option, "-DGLFW_LOCATION=%GLFW_LOCATION%". 2014-04-17 19:11:19 -07:00
mkraemer
05a7db5e14 Make CMake path variables more robust
Add quotes around variables containing paths - this might require a second pass...

fixes #258
2014-04-09 16:43:38 -04:00
manuelk
6d367f7f13 Fix FindMaya.cmake
- switch PATHS to HINTS to make sure that we pick up the correct location for various files & libs
- fix the list append to dereference variables properly
- minor code style cleanup

fixes #266
2014-02-26 17:20:01 -08:00
manuelk
37f25250f1 Fix FindTBB.cmake
cmake find_path function searchs system directories first when PATHS is used.
using HINTS instead forces the search to start in the suggested locations, which
ensures that the correct headers are used.

fixes #265
2014-02-26 17:16:42 -08:00
manuelk
e072b19c2a Fix regex in FindMaya.cmake that breaks with recent versions of Maya 2013-11-26 15:53:14 -08:00
manuelk
3c4a06dba8 Fix FindGLFW.cmake for GLFW 3.03 on OSX
- add missing corevideo dependency

fixes #237
2013-11-13 13:08:29 -08:00
manuelk
3ae50d1c50 Amending Apache license language & file headers.
New text:

     Copyright 2013 Pixar

     Licensed under the Apache License, Version 2.0 (the "Apache License")
     with the following modification; you may not use this file except in
     compliance with the Apache License and the following modification to it:
     Section 6. Trademarks. is deleted and replaced with:

     6. Trademarks. This License does not grant permission to use the trade
        names, trademarks, service marks, or product names of the Licensor
        and its affiliates, except as required to comply with Section 4(c) of
        the License and to reproduce the content of the NOTICE file.

     You may obtain a copy of the Apache License at

         http://www.apache.org/licenses/LICENSE-2.0

     Unless required by applicable law or agreed to in writing, software
     distributed under the Apache License with the above modification is
     distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
     KIND, either express or implied. See the Apache License for the specific
     language governing permissions and limitations under the Apache License.
2013-09-26 12:04:57 -07:00
manuelk
b6d2a85e2c Expand search paths for FindGLFW.cmake for Debian and other Linux architectures
PS: i have no access to a Debian release atm, so confirmation that this actually works
would be nice...
2013-09-17 10:26:25 -07:00
Hiroaki ENDOH
39de687c7a Corrected typo. 2013-09-17 10:02:01 +09:00
manuelk
d57df0eae0 Enable TBB for Linux builds
- Fix FindTBB.cmake
- Add TBB logic to various CMakeLists
- Update documentation
2013-08-15 16:11:33 -07:00
Manuel Kraemer
124c944f7a Merge pull request #203 from Nazg-Gul/dev
CLA signed - thank you for your contribution !
2013-08-02 08:41:54 -07:00
Sergey Sharybin
b96b3d9734 Make FindGLEW aware of multiarch on linux systems
Multiarch distros such as Debian are keeping libraries
in /usr/lib/<platform>/ instead of /usr/lib. Added an
additional hint for GLEW library location to deal with
this.
2013-08-02 00:03:48 -07:00
manuelk
03990c3101 fix GLFW Xrandr & xf86vmode dependency paths for X11 based systems
now uses the path returned by FindX11.cmake instead of just a -l<xxx>

fixes #199
2013-07-30 10:30:55 -07:00
takahito-tejima
dd91b2de8c Fix some portability issues on OSX. (GLEW will be used if exists) 2013-07-18 19:49:00 -07:00
Takahito Tejima
51a45b598d Updating EULA 2013-07-18 14:19:50 -07:00