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
Donny Lawrence
a270b0f292
Merge branch 'cmake' of https://github.com/panda3d/panda3d into cmake
2018-05-29 22:55:21 -05:00
Donny Lawrence
5619c3ed90
Make sure HAVE_OPENAL_FRAMEWORK is set correctly
2018-05-29 21:58:43 -05:00
Sam Edwards
2d5d1400be
CMake: Remove references to WxWidgets/FLTK
...
The plugin once used these; it's since been deprecated,
so we don't be needing GUI toolkits anymore.
2018-05-24 18:33:15 -06:00
Sam Edwards
9e841800ee
CMake: Migrate detection for the physics packages
2018-02-21 02:38:54 -07:00
Sam Edwards
196d780820
CMake: Remove commented-out TODOs regarding unsupported rendering backends
2018-02-20 23:38:39 -07:00
Sam Edwards
17d56279f5
CMake: Migrate FreeType package detection
2018-02-20 19:28:32 -07:00
Sam Edwards
590523ac8c
CMake: Rename FindSquish to FindLibSquish
...
CMake already has a "FindSquish" for finding the GUI testing product.
This minimizes the chances of the wrong module being run on accident.
2018-02-20 18:58:52 -07:00
Sam Edwards
2717c24ffc
CMake: Migrate detection of the audio libraries
2018-02-20 18:19:45 -07:00
Sam Edwards
3210302caf
CMake: Migrate FFmpeg package detection
2018-02-20 17:52:33 -07:00
Sam Edwards
72d668e05a
CMake: Migrate zlib package detection
2018-02-20 17:19:21 -07:00
Sam Edwards
0ed64c72ce
CMake: Migrate over VRPN detection
2018-02-20 17:02:17 -07:00
Sam Edwards
75366484b0
CMake: Migrate over Nvidia Cg package detection
2018-02-19 00:05:49 -07:00
Sam Edwards
a9717cf3ab
CMake: Migrate detection of libsquish
2018-02-18 21:41:33 -07:00
Sam Edwards
283db1fb7a
CMake: Implement detection for FFTW3
2018-02-17 23:35:43 -07:00
Sam Edwards
5c4ef25bb7
CMake: Use proper target_use_packages definitions for Eigen
2018-02-17 16:56:35 -07:00
Sam Edwards
5c1ff5fdbc
CMake: Migrate detection of libtar
2018-02-14 17:38:25 -07:00
Sam Edwards
68cb953479
CMake: Migrate JPEG/PNG/TIFF discovery to Package.cmake
2018-02-14 17:27:50 -07:00