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
rdb
567463eab3
makepanda: look for vorbis library without _static suffix
...
Fixes : #202
2017-11-26 23:42:46 +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
5ac3ccb6f6
Remove pointless direct/metalibs directory
2017-10-06 14:54:36 +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
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
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
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
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
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
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
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
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
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
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
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
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
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
e1ea1e8fb0
Fix link error on Windows with WANT_NATIVE_NET
2016-10-24 22:51:28 +02:00