Commit Graph

84 Commits

Author SHA1 Message Date
rdb 0d9cb5c392 CMake: force finding Assimp in MODULE mode 2020-06-14 13:09:36 +02:00
rdb ae078046d6 CMake: Use MODULE mode in find_package() for OpenEXR
Otherwise a system OpenEXRConfig.cmake may end up getting picked up, which operates differently.
2020-05-05 11:09:00 +02:00
Sam Edwards 36e06236a9 CMake: Remove IS(_NOT)_DEBUG_BUILD 2020-01-21 17:42:17 -07:00
Sam Edwards 572019bd50 CMake: Remove reference to PhysX 2020-01-12 13:53:26 -07:00
Sam Edwards 151d51ef09 CMake: Autodetect THIRDPARTY_DIRECTORY when in source root 2020-01-12 12:02:22 -07:00
Sam Edwards a1d43f7b88 CMake: Fix WANT_PYTHON_VERSION not always being respected 2020-01-08 21:03:52 -07:00
Sam Edwards 74e9c610d3 CMake: Don't assume <PackageName>_FOUND will always be caps
This is more consistent with the new find_package() behavior,
especially when CONFIG mode is involved.
2019-12-31 06:47:34 -07:00
Sam Edwards 10760d5f7a CMake: Properly redetect Python if WANT_PYTHON_VERSION changes 2019-12-24 16:16:31 -07:00
Sam Edwards cfedd71093 CMake: Disable searching macOS frameworks when using THIRDPARTY_DIRECTORY 2019-12-05 10:34:47 -07:00
Sam Edwards f377bdfb29 CMake: Copy thirdparty/**/*.dll to bin/ directory 2019-11-13 15:30:23 -07:00
Sam Edwards ae59bd031f CMake: Fix typo 2019-11-11 20:16:00 -07:00
Sam Edwards 0b342d0f9f CMake: Don't use PythonInterp/PythonLibs when FindPython available 2019-11-11 00:48:14 -07:00
Sam Edwards 1c866dff78 CMake: Don't override Python_ROOT 2019-11-11 00:48:11 -07:00
Sam Edwards 9512b2274b CMake: Remove libtar, unneeded downloadertools progs 2019-09-06 04:07:42 -06:00
Sam Edwards 5654e64645 CMake: First batch of improvements per review
Addressing feedback per @rdb in GitHub #717
2019-09-06 01:11:50 -06:00
Sam Edwards 855d217f35 CMake: Update for upstream changes
- Miles is gone; remove all references
- pystub is gone; remove all references
- dcparser uses Interrogate extensions properly; don't depend on Python
- stringStream* moved to express from downloader
2019-08-24 18:07:22 -06:00
Sam Edwards 60c1570db8 CMake: Add support for makepanda-style thirdparty directories 2019-08-23 16:09:13 -06:00
Sam Edwards d008037244 CMake: Use Python::Module, not Python::Python, for extension linkage
CMake 3.15+ provides the former, which extension modules should link
against in order to ensure the ABI-appropriate linkage for the
platform.

For older versions of CMake, try to hack up the correct linkage for
the platform. If the platform isn't recognized, tell the user to
upgrade CMake.

This also tweaks p3pystub just a bit, since now it's actually relied
upon to resolve runtime link issues when p3dcparse pulls in direct,
as p3dcparse doesn't link against Python at all.
2019-08-15 16:47:53 -06:00
Donny Lawrence 7a3ea071a4 CMake: Don't use X11 on Apple. 2019-06-27 17:38:18 -06:00
Sam Edwards 6097d34ead CMake: Neatly format everything for readability and consistency 2019-04-14 22:37:18 -06:00
Sam Edwards 5e82d8e43e CMake: Don't find GLES on macOS; headers known broken 2019-04-14 19:06:33 -06:00
Sam Edwards b4a532f1d0 CMake: Add support for building against FCollada 2019-03-18 01:56:38 -06:00
Sam Edwards 6eb112a13a CMake: Discover FFTW3 by MODULE only, never CONFIG
This stops a CMake crash on some folks' systems.
2019-03-18 01:54:34 -06:00
Sam Edwards 0ff6787c1c CMake: Fix compatibility with CMake 3.0
`x GREATER_EQUAL y` wasn't added until 3.7, so
instead this uses `NOT x LESS y`
2019-01-13 13:00:56 -07:00
Sam Edwards 052004d06b CMake: Detect Opus 2019-01-13 12:04:48 -07:00
Sam Edwards 8a2375a5f1 CMake: Detect Ogg+Vorbis 2019-01-13 11:58:09 -07:00
Sam Edwards 654abdc5eb CMake: Detect when to set OPENCV_VER_23/OPENCV_VER_3 2019-01-06 15:37:14 -07:00
Sam Edwards 1ae736f881 CMake: Detect and build support for Assimp 2018-11-12 15:49:08 -07:00
Sam Edwards c3f9fdf778 CMake: Organize Package.cmake a bit better 2018-11-09 17:46:03 -07:00
Sam Edwards 1a80b69fb1 CMake: Clean out a few old TODOs and comments 2018-11-09 01:57:40 -07:00
Sam Edwards 2b1554a44c CMake: Rename "config_package" function to "package_status"
The latter name is more consistent with what it does:
indicates the status/purpose/options of the package to
the user.
2018-11-08 21:15:00 -07:00
Sam Edwards d43767c617 CMake: Find OpenEXR, support it in pnmimagetypes 2018-11-07 19:56:01 -07:00
Sam Edwards 9222bc6d31 CMake: Detect OpenCV/ARToolKit, build p3vision
For now, p3vision is only built if either OpenCV or
ARToolKit is available. It does contain some generic
webcam access code, so it might be worth building it
when that's available.
2018-11-03 22:51:14 -06:00
Sam Edwards 15a78c55bc CMake: Detect and use HarfBuzz when available 2018-11-02 23:37:26 -06:00
Sam Edwards 5b973ed837 CMake: Add DirectX 9 support 2018-11-01 22:33:01 -06:00
Sam Edwards 7c42b75ac8 CMake: Update FindCg to discover cgD3D9
This also means renaming "CGDX9" to "CGD3D9" for consistency
with what Nvidia calls it.
2018-11-01 16:31:57 -06:00
Sam Edwards 11a75eab99 CMake: Build OpenGL ES (1&2) display modules
Also reorganizes Package.cmake a little, getting more of the
package discovery logic under the PackageConfig.cmake system.
2018-10-22 01:58:24 -06:00
Sam Edwards 8dd46eb736 CMake: Redo ODE find module
This defines an ODE::ODE target; it also automatically selects
the correct `dIDESINGLE`/`dIDEDOUBLE` compile-time definition.
2018-10-18 19:27:47 -06:00
Sam Edwards b3f1b7d40b Merge branch 'cmake' of https://github.com/treamology/panda3d into cmake
# Conflicts:
#	.travis.yml
#	direct/src/showbase/CMakeLists.txt
#	dtool/dtool_config.h.in
#	dtool/src/prc/CMakeLists.txt
#	panda/src/cocoadisplay/CMakeLists.txt
#	panda/src/express/CMakeLists.txt
#	panda/src/osxdisplay/CMakeLists.txt
2018-10-14 02:26:56 -06:00
Sam Edwards 23a55f30eb CMake: Make sure Python version is always correctly reported 2018-10-13 15:23:10 -06:00
Sam Edwards da9bb2aaa2 CMake: Fix PYTHON_INCLUDE_DIRS variable when using CMake 3.12+'s FindPython 2018-10-13 15:07:09 -06:00
Sam Edwards 10b5c9f3e6 CMake: Use CMake 3.12 FindPython, where available 2018-10-07 00:51:26 -06:00
Sam Edwards 0997c6b19c CMake: Don't depend on Python interpreter
This allows building against the Python libraries even when the
Python interpreter/executable is missing. The correct extensions
for the binary modules will be guessed, the tests will fail,
and the bytecode for any pure-Python modules will not be
precompiled.
2018-10-07 00:51:26 -06:00
Sam Edwards 645fe32ca3 CMake: Fix capitalization of OpenSSL components 2018-09-24 14:06:26 -06:00
Sam Edwards cfb32fad84 CMake: Detect OpenGL (and SpeedTree) the proper way 2018-09-22 15:55:03 -06:00
Sam Edwards bd187643f3 CMake: Look for packages by CONFIG first
This requires a macro to override find_package,
as the default behavior in CMake is to fall back
from MODULE onto CONFIG.

Note that Bullet is given a specific override
not to look for a CONFIG, since Bullet tends to
use weird paths in its CONFIG script.
2018-09-21 19:22:59 -06:00
Sam Edwards 968ca123d4 CMake: Use packages by imported target where available
This is preferable because imported targets generally include
all of the relevant information specific to the particular
installation of each package, and without needing to hunt down
a bunch of variables to do it.

To do this, package_option() (which is starting to grow in scope
a little beyond just providing the package option, come to think
of it) is given a new IMPORTED_AS option, which tells the package
configuration system to look for one or more imported targets and
link against them instead.
2018-09-21 16:24:48 -06:00
Sam Edwards 23f46d8a84 CMake: Build p3bullet 2018-09-02 16:14:01 -06:00
Sam Edwards 76378c8990 CMake: Ask Python for preferred binary extension suffix 2018-08-19 23:10:20 -06:00
Sam Edwards d6d6df83ef CMake: Move Python detection to Package.cmake 2018-06-13 21:07:56 -06:00