rdb
6d54aee0c7
Remove runtime dependency on interrogatedb
2024-10-30 17:46:26 +01:00
rdb
c9cddb8d92
CMake: Stop building interrogate from tree
...
Instead, either build it externally (BUILD_INTERROGATE) or accept INTERROGATE_EXECUTABLE / INTERROGATE_MODULE_EXECUTABLE settings
2024-08-10 16:54:12 +02:00
rdb
92db1840f9
net: Prepare to split these classes out into panda3d.net module
...
See #1466 - these classes are still part of panda3d.core as of 1.11, but they should really be imported from panda3d.net (they can be imported from either place in 1.11). A future release will remove them from panda3d.core entirely.
2024-03-02 13:41:23 +01:00
rdb
b221b492f7
CMake: pass full module name to interrogate_module
2024-03-02 13:41:23 +01:00
rdb
e8f3565af2
CMake: Transfer target_link_options from component libs to metalibs
2022-03-09 16:23:37 +01:00
rdb
264747d213
CMake: Drop support for CMake versions below 3.13
...
We are already using target_link_options, and while it's possible to keep supporting older versions, it doesn't sound worth it. I can revert this out if someone gives me a really good reason to.
2022-03-09 16:23:37 +01:00
rdb
f8039c0bc8
CMake: Add -DYY_NO_UNISTD_H definition to built flex sources
2021-01-03 00:21:48 +01:00
rdb
dfc5b47ec9
CMake: Improve reporting of enabled-but-not-found packages
...
Fixes #1072 (together with 3786dc2aea )
2020-12-20 18:36:41 +01:00
rdb
ac089658f3
CMake: Fix error flood if OpenSSL is not present
...
Fixes #1013
2020-11-17 22:26:14 +01:00
rdb
aa0a0d6ab4
CMake: better handling of per-config options, esp. in single-config
2020-05-01 19:53:50 +02:00
rdb
8cb213ce8a
CMake: fix broken pzip files on Windows
...
It seems piping isn't working properly for binary data
2020-04-13 15:10:28 +02:00
Philip Whitfield
11eae3f1f5
Update CompositeSources.cmake
...
this allows panda to be checked out as a subproject
2020-03-05 22:03:08 +01:00
Leandro (Cerberus1746) Benedet Garcia
5f7809469c
general: removed all WIN32, WIN32_VC and friends
2020-02-05 22:45:03 -07:00
Sam Edwards
1046b122a3
CMake: Fix Interrogate macro sometimes passing -D''
2020-01-22 02:36:41 -07:00
Sam Edwards
d0b6e2275d
CMake: Remove IS(_NOT)_MINSIZE_BUILD
2020-01-21 18:15:28 -07:00
Sam Edwards
28b85d2f58
CMake: Work around CMake issue 20206
2020-01-10 16:48:59 -07:00
Sam Edwards
3104bf3710
CMake: Fix issue with HAVE_X safety checks falsely failing
2020-01-08 20:13:34 -07:00
Sam Edwards
f92b88f35b
CMake: Omit Interrogate-generated sources from unity builds
...
This fixes an include path error when building under a
multi-configuration generator and with CMake 3.16+
2020-01-06 17:12:00 -07:00
Sam Edwards
15c7e6fbe5
CMake: Rename COMPOSITE_* to CMAKE_UNITY_BUILD* where appropriate
...
This allows us to use 3.16+ unity build support when available,
falling back to our own stuff when not.
2019-12-31 06:48:07 -07:00
Sam Edwards
b00d7b23bc
CMake: Use `CMAKE_FIND_PACKAGE_PREFER_CONFIG` to control `find_package` override
2019-12-31 06:48:06 -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
cdc16291dd
CMake: `SKIP_COMPOSITING` -> `SKIP_UNITY_BUILD_INCLUSION`
...
The latter is what CMake (3.16+) itself uses; we should start using
CMake's own unity build capabilities if available.
2019-12-24 17:20:43 -07:00
Sam Edwards
bc152f665c
CMake: Escape $<LINK_ONLY> in exported packages file
2019-12-05 10:34:47 -07:00
Sam Edwards
13a19109d4
CMake: Remove redundant -DNDEBUG
...
This reverts a42f1a49a4 , which should
have been reverted by faced9aa49 .
2019-08-31 15:07:03 -06:00
Sam Edwards
5fa4af9189
CMake: Rely on GNUInstallDirs to specify install paths
...
This makes multiarch OSes happy as they can dictate that
64-bit libraries go into 'lib64'
2019-08-31 00:48:42 -06:00
Sam Edwards
faced9aa49
CMake: Grab all CMAKE_CXX_FLAGS(_<CONFIG>) -Ddefines for Interrogate
2019-08-30 16:53:45 -06:00
Sam Edwards
a42f1a49a4
CMake: Interrogate needs -DNDEBUG when -DNDEBUG is passed as a flag
...
Some buildsystems (Gentoo's Portage, to be specific) are very
roughshod about how they use CMake, and might bypass the
"configuration types" system altogether, passing their own release
flags instead. This change detects that and ensures that Interrogate
picks up the NDEBUG flag when it's specified manually.
2019-08-29 23:09:28 -06:00
Sam Edwards
cde25670d6
CMake: Remove some uses of CFG_INTDIR
...
It's not install() friendly, so we use $<CONFIG> instead in
some cases. Unfortunately, $<CONFIG> isn't friendly with
add_custom_command's OUTPUT options while CMAKE_CFG_INTDIR
explicitly is, so we use a hybrid approach until CMake gets
its act together.
2019-08-28 17:12:01 -06:00
Sam Edwards
55cfc6c2b9
CMake: Pass _MSC_VER to Interrogate under MSVC
2019-08-24 18:07:07 -06:00
Sam Edwards
6cb62d1d18
CMake: When zlib isn't available, run_pzip() should copy at build-time
...
This prevents copying to configurations that the user isn't going
to build, and also plays nice with multi-configuration generators
where the configuration isn't known until build-time.
2019-08-22 14:58:43 -06:00
Donny Lawrence
10abe6e216
CMake: Remove usages of string(APPEND ...)
2019-06-27 17:38:18 -06:00
Donny Lawrence
89bc83c48f
CMake: Suppress $(EFFECTIVE_PLATFORM_NAME).
2019-06-27 17:38:18 -06:00
Donny Lawrence
f0b4d7637b
CMake: Separate composite files by extension.
2019-06-27 17:38:18 -06:00
Donny Lawrence
3eb1895811
CMake: Use a generator expression to mitigate make's warning spam on the Xcode generator.
2019-06-27 17:38:18 -06:00
Donny Lawrence
cb0def4eb3
CMake: Defer pzip's directory creation to build-time.
2019-06-27 17:38:18 -06:00
Sam Edwards
24ba0d0e72
CMake: Fix Interrogate macro not working on CMake 3.0.2
2019-06-25 03:34:51 -06:00
Sam Edwards
d3ef7bf12d
CMake: Avoid using continue()
...
This is, sadly, not added until CMake 3.4.
This commit avoids continue() by restructuring the loops so
that the conditions previously being used for continue() are
no longer needed. The alternative would've been to encase the
loop bodies massive ifs, but I find that to be a poor choice
for readability.
2019-06-25 03:34:51 -06:00
Sam Edwards
1a237670e3
CMake: Make Interrogate macro ensure output directories exist
...
This was causing problems on the Xcode generator under macOS,
which wasn't automatically creating the output directories
for us.
2019-06-05 02:27:48 -06:00
Sam Edwards
81f0fb78f2
CMake: Fix Interrogate macro not working on Windows
...
This was broken by 2d5bdb3515 ,
which wrote -D flags as -D'symbol' -- this choked Windows,
so this commit turns it off in that case.
It's a shame there's no generator expression to escape quotes,
otherwise this hack wouldn't even be needed.
2019-06-03 22:02:54 -06:00
Sam Edwards
2d5bdb3515
CMake: Fix Interrogate macro's -D flag generator
...
This wraps everything in 'single-quotes' so that defines that
contain spaces and/or double-quotes work properly.
2019-06-02 01:37:48 -06:00
Sam Edwards
059c78bade
CMake: Restructure multi-configuration binary directory layout
...
This changes the structure to use paths like `build/Release/lib`
instead of `build/lib/Release`, so that the `build/Release` directory
more closely mimics the structure of `build` when in single-configuration
mode.
2019-05-01 23:44:47 -06:00
Sam Edwards
49865c103a
CMake: Modify install_python_package() so it keeps the build-dir copy up-to-date too
2019-05-01 23:44:47 -06:00
Sam Edwards
f744951d25
CMake: Make Interrogate invocation friendly to multi-config generators
2019-04-27 22:45:51 -06:00
Sam Edwards
cfa4878955
CMake: Use the same host_ prefix for pzip as we do for interrogate
...
This is for better cross-compilation friendliness, so the pzip
binary used during the build doesn't have to be the same as the
pzip binary produced during the build.
2019-04-27 22:45:51 -06:00
Sam Edwards
b3f5c38ef3
CMake: Remove references to "panda3d" from Interrogate
2019-04-14 23:10:49 -06:00
Sam Edwards
6097d34ead
CMake: Neatly format everything for readability and consistency
2019-04-14 22:37:18 -06:00
Sam Edwards
fbde7c0b62
CMake: Fix invocation of flex
...
This removes the space between '-o' and the output filename,
which apparently some builds of flex (e.g. on Windows) dislike.
2019-03-18 04:18:20 -06:00
Sam Edwards
d961514892
CMake: Use string/list(APPEND foo ...) instead of set(foo ${foo} ...)
2019-01-19 17:01:36 -07:00
Sam Edwards
986377b131
CMake: Make CompositeSources skip sources with SKIP_COMPOSITING property
2019-01-12 15:00:03 -07:00
Sam Edwards
8d94790d3a
CMake: Exclude .c files from compositing
2019-01-12 15:00:03 -07:00