rdb
c17cb11dfa
makepanda: enable more warnings by default
2018-05-30 11:12:15 +02:00
Sam Edwards
527e4840ff
makepanda: Fix table alignment
2018-05-27 14:11:55 -06:00
Sam Edwards
a251c6dd8f
general: Change HAVE_LOCKF to PHAVE_LOCKF
...
HAVE_LOCKF is already defined by pyconfig.h in
(at least) Python 3.6 - changing the macro name
here avoids warnings
2018-05-27 14:06:14 -06:00
rdb
239f66cf11
makepanda: fix macOS compile error in CheckPandaVersion
...
See #327
2018-05-27 15:39:02 +02:00
Sam Edwards
35ab16d38f
makepanda: Update checkPandaVersion.h
...
This makes it possible to include it multiple times in a single
translation unit, and/or multiple times in a single dynamic
library (and without excess code bloat, too).
2018-05-26 18:39:24 -06:00
rdb
49dfcb09b9
makepanda: refuse building with MSVC versions older than 2015
...
Panda3D no longer compiles with any version older than Visual Studio 2015 (14.0).
Closes #288
2018-05-23 23:43:36 +02:00
rdb
9fad3dba60
general: remove macros for compatibility with non-C++11 compilers
...
Now that we require MSVC 2015, we no longer need all this nonsense, so we can write cleaner code.
2018-05-23 23:33:05 +02:00
Sam Edwards
47f7d3f297
general: Add headers explaining the renamed config_*.h
2018-05-14 02:36:42 -06:00
Sam Edwards
c81229c1a8
pfmprogs: Rename config_pfm to config_pfmprogs
2018-05-14 02:36:42 -06:00
Mitchell Stokes
ebe2588a50
Merge branch 'master' into deploy-ng
2018-05-06 11:21:13 -07:00
rdb
f979c4d312
makepanda: don't use pkg-config for assimp
...
It seems that they removed the -I option, which we need to build with. This commit is intended to fix the Ubuntu Bionic build.
2018-04-11 17:41:16 +02:00
rdb
e1675f1a53
makepanda: fix compile error on Windows with some versions of flex
2018-04-10 15:31:48 +02:00
rdb
742c143a01
deploy-ng: support logging via log_filename (and log_append) setting
2018-04-08 17:57:48 +02:00
rdb
b0cece7faf
Merge branch 'master' into deploy-ng
2018-04-08 15:44:32 +02:00
rdb
2bde4d839a
makepanda: set MSVC 2015 as default, deprecate MSVC 2010 support
...
See #288 for discussion; make your voice heard there if you object to this change!
[skip ci]
2018-03-29 14:36:41 +02:00
Sam Edwards
ad5b45811d
dtoolutil: Change export macros to EXP*_DTOOL_DTOOLUTIL
...
This is for consistency with `panda`, which follows this format.
2018-03-25 13:17:52 -06:00
Sam Edwards
a4c1b44371
dtoolbase: Remove EXPORT_TEMPLATES define
...
As of f69354d9fa , this is just always
expected on all platforms. If it's not defined,
TemplateClass<X>::_type_handle won't link correctly with some compilers
(e.g. Clang) and the lack of 'extern template class' will result in
duplicated code in any case. In short, turning it off causes problems.
makepanda also always turns this on, so it doesn't represent any
optional feature or autodetected platform-specific behavior anyway.
2018-03-20 14:36:19 -04:00
rdb
aebdefcf60
Merge branch 'master' into deploy-ng
2018-03-11 23:01:10 +01:00
rdb
94ceace5af
android: add activity for running Python programs
...
It can be launched from the termux shell using the provided run_python.sh script, which can communicate with the Panda activity using a socket (which is the only way we can reliably get command-line output back to the program.)
The Python script needs to be readable by the Panda activity (which implies it needs to be in /sdcard).
The standard library is packed into the .apk, and loaded using zipimport. Extension modules are included using a special naming convention and import hook in order to comply with Android's strict demands on how libraries must be named to be included in an .apk.
[skip ci]
2018-03-11 22:53:08 +01:00
rdb
f535a641e4
Merge branch 'master' into deploy-ng
2018-02-27 20:53:28 +01:00
rdb
361d36380d
makepanda: don't put pview metadata in rpm when building without pview
...
Fixes : #260
2018-02-27 20:36:53 +01:00
Sam Edwards
ad7669e12a
mathutil: Update FFTCompressor for FFTW3
...
This has been due for a while. The last FFTW 2.x release was in 1999.
Note that this does change some of the loops; this has two benefits:
1) The halfcomplex storage order is now explained with a comment.
2) It fixed the special case "don't break a run of bytes for a zero" which
was never triggering due to the value not being *exactly* 0.0.
I have tested these changes against older FFT-compressed animation .bams
and no noticeable decompression changes are present, so a .bam version
bump is not necessary.
2018-02-17 22:32:38 -07:00
rdb
95eee0cab2
android: load prc files from assets. Move assets to /android_asset
2018-02-17 20:09:24 +01:00
rdb
6bd1976892
android: support writing png/jpg/webp via android.graphics.Bitmap
2018-02-17 18:40:08 +01:00
rdb
c41b694eb3
makepanda: detect public system libraries when building on Android
2018-02-11 00:56:25 +01:00
rdb
730279531a
makepanda: build on Intel Android machines
2018-02-10 12:13:05 +01:00
rdb
bdb74b1e30
makepanda: add code to build an Android package with --installer
2018-02-10 12:01:34 +01:00
rdb
2dba9357bb
makepanda: update Android cross-compile for clang and NDK r16
...
Tested on Windows.
2018-02-06 19:24:50 +01:00
rdb
09bd662919
Merge branch 'master' of github.com:panda3d/panda3d into input-overhaul
2018-02-04 11:37:09 +01:00
rdb
e04cb17a30
makepanda: change Android build model
...
We no longer copy libs to a separate libs dir to entertain Ant (which is no longer the build system of choice on Android). Also, rather than copying the Java sources to built/src, we now compile them and put the classes in built/classes.
Furthermore, executables are really compiled as executables now (rather than as libraries) to allow building and running Panda in termux.
2018-01-29 20:01:30 +01:00
rdb
7c1dd4050b
android: change assets mount dir, point binary path to .apk
...
The binary path we get from /proc/self/exe isn't very useful; the path to the .apk is barely more useful but it still doesn't make a whole lot of sense. It might make more sense to set it to the path of the native .so that is being loaded by NativeActivity.
2018-01-29 19:44:39 +01:00
rdb
94385e865f
Merge remote-tracking branch 'origin/master' into input-overhaul
2018-01-28 14:31:45 +01:00
rdb
d35e6c5113
android: include android_native_app_glue in repository
...
These files are from the NDK, but don't seem to be included in termux. Since they are two small files that change very rarely, it's easier to just include them in the Panda repo.
[skip ci]
2018-01-28 14:27:35 +01:00
rdb
60a572f88a
android: some changes for building on Android:
...
- allow setting API target with --target=android-21
- always link to libpython on Android, seems to be necessary
- support aarch64 (arm64-v8 ABI) architecture
- enable building on an Android machine (tested in termux)
[skip ci]
2018-01-28 14:24:51 +01:00
tobspr
5831a31509
Add RenderPipeline C++ lighting modules to Panda3D codebase
2018-01-07 23:43:22 +01:00
rdb
962e6e31e4
Merge branch 'master' into input-overhaul
2018-01-03 14:46:13 +01:00
rdb
d3249356b3
Merge remote-tracking branch 'origin/release/1.9.x'
2018-01-03 14:07:42 +01:00
rdb
ad58d5161f
installpanda: set proper permissions on includes/man pages
...
Fixes : #159
2018-01-03 13:48:08 +01:00
rdb
ef9803b25e
Changes to support compiling input-overhaul branch on macOS
2017-12-22 14:59:52 +01:00
rdb
2c35d7a8e9
deploy-ng: changes to make macOS app bundles work correctly
2017-12-21 15:49:16 +01:00
rdb
c911ba8059
Merge branch 'master' of github.com:panda3d/panda3d into deploy-ng
2017-12-21 15:10:53 +01:00
rdb
6faaabe034
makepanda: fix build error with maya2008 on macOS
2017-12-19 23:37:36 +01:00
rdb
8e6cf2a60b
Merge branch 'master' into input-overhaul
2017-12-17 13:04:15 +01:00
rdb
2e20a0f16e
Implement awaitable thread-safe future for async operations
...
This introduces AsyncFuture as a new base class of AsyncTask. It's modelled after asyncio's Future class, except that it is thread-safe and you can use result() to block the current thread waiting for the future to finish (of course this is not necessary for use with coroutines).
AsyncFuture should be used for any operation that finishes in the future, to get the benefit of awaitability within coroutines as well as a standard interface for querying status and results of the operation as well as cancelling it. As such, it's been implemented in various places, including texture.prepare() and win.trigger_copy().
Note that AsyncFuture is intended to be used *once*; it cannot be used more than once. As an example of how this works, tex.prepare() will return the same future as long as the prepare isn't complete, but when it is done, subsequent calls to tex.prepare() will return a new future.
2017-12-04 22:25:28 +01:00
Mitchell Stokes
d90e59ca2d
Merge branch 'master' into deploy-ng
2017-12-02 18:36:47 -08:00
rdb
567463eab3
makepanda: look for vorbis library without _static suffix
...
Fixes : #202
2017-11-26 23:42:46 +01:00
Mitchell Stokes
fcb1d9308b
Merge branch 'master' into deploy-ng
2017-11-25 14:58:25 -08:00
Mitchell Stokes
aba26bd862
Merge branch 'master' into deploy-ng
2017-11-25 14:55:47 -08:00
rdb
d755de849c
deploy-ng: new extensible blob format with PRC configurability
2017-11-24 21:48:18 +01:00
rdb
e03c249cc5
makepanda: write target platform to file, rebuild if platform changes
2017-11-24 17:47:51 +01:00
Younguk Kim
82d66c1928
makepanda: add support for compiling with VS 2017
...
This is a squashed merge of PR #153 by bluekyu with fixes by rdb.
Closes : #153
2017-11-16 17:33:46 +01:00
kamgha
f6c12ced34
Update makepanda.py
2017-11-04 18:28:46 +01:00
rdb
c043755f94
Add --tests argument to makepanda, instructions to README.md
2017-11-03 20:06:49 +01:00
rdb
b865b31390
makepanda: add __version__ attribute to panda3d module
2017-11-03 20:06:07 +01:00
rdb
e0a3788636
Move metadata to setup.cfg; also use this for pytest configuration
...
This makes it possible to run pytest in the root directory. It also lets us store metadata such as the current version number, preventing us from having this in several different places, and allowing us to phase out parsing dtool/PandaVersion.pp.
2017-11-03 20:04:37 +01:00
rdb
0c0f9adab9
Support coroutines and async/await in the task manager and loader
2017-10-31 18:56:41 +01:00
rdb
fba41dafae
Merge remote-tracking branch 'origin/master' into deploy-ng
2017-10-26 21:23:49 +02:00
rdb
5ac3ccb6f6
Remove pointless direct/metalibs directory
2017-10-06 14:54:36 +02:00
rdb
f16cd29971
Merge branch 'master' into deploy-ng
2017-09-04 21:31:32 +02:00
rdb
32eb9b9e9f
makepanda: fix missing Python link for PhysX
2017-07-05 14:24:09 +02:00
rdb
2b537d2263
Use XDG basedir spec for model-cache-dir (now $XDG_CACHE_HOME/panda3d which is usually $HOME/.cache/panda3d)
...
User appdata directory on posix is now $XDG_DATA_HOME (usually $HOME/.local/share).
Common appdata dir is /usr/share (or /usr/local/share on FreeBSD)
2017-07-03 22:27:37 +02:00
rdb
69eab74b77
makepanda: changes to support static building better
...
Fixes LP 1081784
2017-07-03 13:56:50 +02:00
Mitchell Stokes
e13ad8e146
Merge branch 'master' into deploy-ng
2017-06-30 21:38:34 -07:00
rdb
751299d65a
makepanda: don't build with OpenCV if we have ffmpeg enabled
...
(except on macOS, where we use OpenCV to provide webcam support)
2017-06-20 15:52:57 +02:00
rdb
7873b4df37
Merge branch 'master' into deploy-ng
2017-06-13 00:21:40 +02:00
rdb
a66b497f2b
We no longer support GCC 4.6. Version 4.8+ is recommended.
...
Ubuntu Precise users can install GCC 4.8 from the ppa:ubuntu-toolchain-r/test repository.
CentOS 5/6 users can install devtoolset-2 or later.
2017-06-12 19:47:54 +02:00
rdb
ed5b74ab54
makepanda: allow using deploy-ng with build run from built dir
2017-05-31 01:35:33 +02:00
rdb
ee2530ea5f
makepanda: changes for FreeBSD. Add instructions, and:
...
- change package name from Panda3D to panda3d
- change default compiler to clang on FreeBSD
- fix ldconfig to point to panda3d lib dir
[skip ci]
2017-05-29 19:09:45 +02:00
Mitchell Stokes
c155e840b3
Merge remote-tracking branch 'origin/master' into deploy-ng
2017-05-27 15:36:49 -07:00
rdb
828f1c10ca
Support loading Opus audio files via libopusfile.
2017-05-24 22:21:54 +02:00
rdb
904209b277
Split out interrogate jobs for dtool directories from express
2017-05-24 13:44:52 +02:00
rdb
3a2435b2d9
Merge branch 'master' into deploy-ng
2017-05-14 10:51:10 +02:00
deflected
560fd4eb3d
panda: Get rid of few warnings
...
- Correct missing override
- Correct deprecated XKeycodeToKeysym
- Correct deprecated @exec for FreeBSD pkg plist
Signed-off-by: deflected <deflected@users.noreply.github.com>
Closes #144
2017-05-14 00:02:33 +02:00
Mitchell Stokes
0ee6a46a62
Merge branch 'master' into deploy-ng
2017-04-26 18:22:36 -07:00
rdb
a3bef3e285
makepanda: allow building without harfbuzz
2017-04-25 12:46:46 +02:00
rdb
160f652d58
text: use HarfBuzz for text shaping; support right-to-left text
2017-04-25 12:25:31 +02:00
Mitchell Stokes
2302f251b1
Merge branch 'master' into deploy-ng
2017-04-04 21:27:09 -07:00
rdb
f7af155e93
Compile with VS 2015 Express, build assimp on Windows
2017-04-03 13:57:40 +02:00
rdb
ac0e6b5c5c
Merge branch 'release/1.9.x'
2017-04-02 14:29:38 +02:00
rdb
8ec4da2824
Compile fixes for compilers that don't support all C++11 features
2017-02-21 02:45:30 +01:00
rdb
edb83fe89a
Various optimizations to reduce performance overhead of rendering
2017-02-21 02:20:06 +01:00
Mitchell Stokes
3cb24fba91
Merge branch 'master' into deploy-ng
2017-02-20 13:46:39 -08:00
rdb
8c914a2855
Work towards ABI stability wrt allocation. Let MemoryHook take advantage of dlmalloc's internal bookkeeping.
2017-02-17 13:02:01 +01:00
rdb
9b07578d62
deploy-ng: Linux: fix symbol error with static linking, fix omission of libCg
2017-02-03 12:25:58 +01:00
rdb
3282656f0e
makepanda: linking deploy-stub on Linux requires -lrt and -lutil
2017-01-25 13:34:06 +01:00
rdb
8352f27a23
makepanda: deploy-stub needs to link to libpython
2017-01-10 23:15:30 +01:00
rdb
49905bad16
Merge branch 'master' into deploy-ng
2017-01-10 22:06:59 +01:00
rdb
92dab31d80
makepanda: improve Python location code on Linux and macOS, support Python 3.x builds on macOS, drop use of pythonX-config
2017-01-10 21:00:43 +01:00
rdb
e1a54f52a8
makepanda: add --no-egg/--use-egg flags to enable/disable egg features.
2017-01-09 23:58:41 +01:00
rdb
f8580d753a
Merge branch 'master' into deploy-ng
2017-01-09 23:53:56 +01:00
rdb
43a5f2a9f2
Fixes for Python 3.5:
...
- Disable conversion to Windows newlines, which is causing double Windows newlines for Config.prc
- We need to copy vcruntime140.dll to the bin directory for Python 3.5+ build using MSVC 2010 to work
2017-01-09 22:27:30 +01:00
rdb
58c1581c0c
Fix .whl version when no explicit --version is specified
2017-01-08 17:20:17 -05:00
Mitchell Stokes
c746296e57
makepanda: Give WHLVERSION a better default than None
2017-01-05 19:28:21 -08:00
Mitchell Stokes
d6aba43492
Merge branch 'master' into deploy-ng
2017-01-05 18:12:43 -08:00
rdb
31136124c7
deploy-ng: fix issues with Python 3 / Windows / Unicode, add deploy-stubw
2017-01-06 01:42:00 +01:00
rdb
53752bd376
Remove packpanda and eggcacher, don't require libpython on Linux
2017-01-05 17:22:11 +01:00
rdb
127cbc3b38
Windows installer improvements and fixes:
...
- copy .ico file
- write installer log to install.log
- restore python DLL to bin directory
2017-01-05 17:19:40 +01:00
rdb
40e981e485
makepanda: enable C++11 support by default
2017-01-04 22:47:58 +01:00
rdb
fa851ae5ac
Allow custom version to be passed on to makewheel when building with --wheel
2017-01-04 22:42:05 +01:00
rdb
8434914ab6
Merge branch 'master' into input-overhaul
2016-12-28 17:26:58 +01:00
rdb
c839dc60d6
Merge remote-tracking branch 'origin/master' into deploy-ng
2016-12-28 12:11:37 +01:00
rdb
8c6a2a57cb
Handle symlinks correctly when correcting Mac library deps
2016-12-26 07:09:21 -05:00
rdb
741ff454ed
We need to link tools that use interrogatedb with pystub again
2016-12-25 22:53:43 +01:00
rdb
ab5b5e7e74
Merge branch 'release/1.9.x'
2016-12-25 22:47:22 +01:00
rdb
28bb737597
Load X11 extensions dynamically; don't expect them to be there at compile time
...
Add x-cursor-size variable for overriding XCursor size.
2016-12-24 22:21:53 +01:00
rdb
601b6b8678
Tweaks for building with static thirdparty libs on Linux
...
Sneak in a function used by makewheel
2016-12-22 21:30:30 +01:00
rdb
c1d6e93166
Don't link extension modules with libpython; changes to help w/ building whls
...
This fixes compatibility issues with homebrew Python on Mac OS X.
This introduces a --no-directscripts flag to disable building packpanda and eggcacher, which require linking with libpython (which is not available on manylinux). When building a wheel, the packpanda and eggcacher modules can instead be added to console_scripts in the entry_points definition.
2016-12-21 17:57:13 +01:00
rdb
b2ccf6c0d2
Add ability to produce .whl file
...
Based on original version by pennomi
Closes : #83
2016-12-19 23:35:05 +01:00
Mitchell Stokes
3ab9bde73d
deploy-ng: Only build deploy-stub if Python is available
2016-12-18 10:53:40 -08:00
rdb
bae19a203b
deploy-ng: changes to make it work on Windows
2016-12-08 13:21:10 +01:00
rdb
70386795f4
Merge branch 'master' into deploy-ng
2016-12-05 18:10:49 -05:00
rdb
6344c05b18
Clean up dynamic loading of Win32 funcs, remove makepanda touchinput setting, remove checks for pre-WinXP
2016-12-05 17:21:09 -05:00
rdb
c410d812ff
Remove some settings from dtool_config.h to prevent rebuilds:
...
- HAVE_OPENCV
- OPENCV_VER_23
- HAVE_FFMPEG
- HAVE_SWSCALE
- HAVE_SWRESAMPLE
2016-12-05 16:32:13 -05:00
rdb
83507e413f
Fix Mac OS X Snow Leopard build
2016-12-05 16:30:44 -05:00
rdb
46c8990f40
Switch to clang by default on Mac; drop burden of supporting GCC 4.2
...
Also get rid of that annoying message about -pthread in clang.
2016-12-05 16:14:24 -05:00
rdb
6259feb934
Fix issue building against copy of Python that was compiled with MSVC 2010
2016-11-30 00:12:26 +01:00
rdb
335debee54
Fix error building debian package
2016-11-29 23:53:57 +01:00
rdb
80af51477a
Backport ability to create a pdb zipfile to 1.9
2016-11-29 22:59:51 +01:00
rdb
948ff8562d
Support targeting Windows XP with MSVC 2015
2016-11-29 22:41:46 +01:00
rdb
1e2961f7ef
Improve windows installer: .prc file assoc, use DOS newlines for prc, error if installing 64-bit version on 32-bit Windows
2016-11-29 21:54:51 +01:00
rdb
d0e9f136c0
Merge branch 'master' into input-overhaul
2016-11-22 12:15:21 +01:00
Mitchell Stokes
f61fbd356d
Set rpath on deploy-stub to $ORIGIN for Linux builds
...
This allows game runtimes to search their directory for shared
libraries instead of needing to use LD_LIBRARY_PATH.
2016-11-13 11:55:46 -08:00
Mitchell Stokes
aa6e722941
Create experimental yapdt (Yet Another Panda3D Deployment Tool)
...
This uses FreezeTool and a new deploy-stub binary to create frozen
applications without needing a compiler when running the tool. This tool
is for experimenting with deployment options and is currently inflexible
and hacky.
2016-11-08 19:40:30 -08:00
rdb
e1ea1e8fb0
Fix link error on Windows with WANT_NATIVE_NET
2016-10-24 22:51:28 +02:00
rdb
1049088f11
Clean up some of the dtool_config.h variables
2016-10-24 22:10:46 +02:00
rdb
4fb5d19df9
Windows: add right-click file associations for .pz/.mf/.egg/.bam files, produce .zip files containing the .pdb files
2016-09-16 00:37:29 +02:00
rdb
6962f56915
Add back pandac.extension_native_helpers for compatibility
2016-09-14 22:45:19 +02:00
rdb
29ea65bb3f
Merge branch 'release/1.9.x'
2016-08-09 01:44:21 +02:00
rdb
645d179227
Add back missing libp3pystub.a to Mac OS X SDK
2016-08-09 01:29:24 +02:00
rdb
800d3cd9c9
Fix Python compile issues on Mac; don't use framework
2016-07-20 18:46:30 -04:00
rdb
47388b0dbc
Separate out CPython calls from core libs; eliminate need for pystub
2016-07-20 14:30:41 +02:00
rdb
b98d3c06ee
Merge branch 'master' into input-overhaul
2016-06-24 10:51:41 +02:00
rdb
9963fe2c3c
Fix a couple of compile warnings, reduce unnecessary includes
2016-06-23 22:59:50 +02:00
rdb
5675e0de56
Merge branch 'release/1.9.x'
2016-06-07 22:08:00 +02:00
rdb
3951a191a3
Fix compile issues with ffmpeg on FreeBSD and Mac OS X
2016-06-07 14:06:53 +02:00
rdb
0d770deeaa
Add --rtdist-version option to makepanda
2016-06-03 02:40:14 +02:00
rdb
18874fa151
Replace PN_int/uint types with stdint.h types, since all compilers we support have them.
...
Plus, we already had code that relied on them being available anyway.
2016-05-11 00:27:58 +02:00
rdb
38fdb80276
Various thirdparty build fixes
2016-05-03 18:49:28 +02:00
David Rose
0b224a320a
Merge branch 'master' of https://github.com/panda3d/panda3d
2016-05-02 15:05:25 -07:00
David Rose
403dd39934
add support for OpenEXR floating-point image files
2016-05-02 14:44:53 -07:00
rdb
288452a861
Changes to help with static build, allow linking OpenAL statically
2016-04-29 19:54:24 +02:00
rdb
369df86096
Fix a compile issue or two
2016-04-29 19:17:47 +02:00
rdb
6b83261ea4
Implement stb_image, support loading HDR, PSD, GIF images
2016-04-28 17:10:44 +02:00
rdb
879b8a5ccb
Remove win-extras (smartroom/BeyondQuestion, serial, JOD, phidgets) from the Windows SDK
...
Let me know if you still need any of these and we'll find a better spot for them.
2016-04-22 17:38:15 +02:00
rdb
2c1cb4c313
Compile fixes for latest VRPN and TIFF
2016-04-22 17:18:27 +02:00
rdb
32bc7cd819
Changes to allow compiling Panda with MSVC 2015
2016-04-19 15:43:02 +02:00
rdb
5a2a9a3020
Merge branch 'release/1.9.x'
2016-04-12 20:46:32 +02:00
rdb
449d4c8a89
Build fix on Mac when building without libRocket
2016-04-12 18:19:55 +02:00
rdb
33ed30b178
Support defining bam factory functions in Python
2016-04-09 19:28:33 +02:00
rdb
a3a42874f3
Merge remote-tracking branch 'origin/master' into input-overhaul
2016-03-29 12:28:53 +02:00