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]
This commit is contained in:
rdb 2017-05-29 19:07:49 +02:00
parent 4bcf225baf
commit ee2530ea5f
3 changed files with 30 additions and 8 deletions

View File

@ -134,6 +134,28 @@ If the build was successful, makepanda will have generated a .dmg file in
the source directory containing the installer. Simply open it and run the
package file in order to install the SDK onto your system.
FreeBSD
-------
Building on FreeBSD is very similar to building on Linux. You will need to
install the requisite packages using the system package manager. To install
the recommended set of dependencies, you can use this command:
```bash
pkg install pkgconf png jpeg-turbo tiff freetype2 eigen squish openal opusfile libvorbis libX11 libGL ode bullet assimp openexr
```
You will also need to choose which version of Python you want to use.
Install the appropriate package for it (such as `python2` or `python36`) and
run the makepanda script with your chosen Python version:
```bash
python3.6 makepanda/makepanda.py --everything --installer --no-egl --no-gles --no-gles2
```
If successful, this will produce a .pkg file in the root of the source
directory which you can install using `pkg install`.
Reporting Issues
================

View File

@ -6879,7 +6879,7 @@ Panda3D's intended game-development language is Python. The engine itself is wri
This package contains the SDK for development with Panda3D, install panda3d-runtime for the runtime files.
WWW: http://www.panda3d.org/
WWW: https://www.panda3d.org/
"""
# FreeBSD pkg-descr
@ -6888,7 +6888,7 @@ Runtime binary and browser plugin for the Panda3D Game Engine
This package contains the runtime distribution and browser plugin of the Panda3D engine. It allows you view webpages that contain Panda3D content and to run games created with Panda3D that are packaged as .p3d file.
WWW: http://www.panda3d.org/
WWW: https://www.panda3d.org/
"""
# FreeBSD PKG Manifest template file
@ -6897,8 +6897,8 @@ name: NAME
version: VERSION
arch: ARCH
origin: ORIGIN
comment: "Panda 3D Engine"
www: http://www.panda3d.org
comment: "Panda3D free 3D engine SDK"
www: https://www.panda3d.org
maintainer: rdb <me@rdb.name>
prefix: /usr/local
flatsize: INSTSIZEMB
@ -7290,7 +7290,7 @@ def MakeInstallerFreeBSD():
plist_txt += os.path.join(root, f)[21:] + "\n"
if not RUNTIME:
plist_txt += "@postexec /sbin/ldconfig -m /usr/local/lib\n"
plist_txt += "@postexec /sbin/ldconfig -m /usr/local/lib/panda3d\n"
plist_txt += "@postunexec /sbin/ldconfig -R\n"
for remdir in ("lib/panda3d", "share/panda3d", "include/panda3d"):
@ -7312,7 +7312,7 @@ def MakeInstallerFreeBSD():
if python_pkg:
dependencies += python_pkg
manifest_txt = INSTALLER_PKG_MANIFEST_FILE[1:].replace("NAME", 'Panda3D' if not RUNTIME else 'Panda3D-Runtime')
manifest_txt = INSTALLER_PKG_MANIFEST_FILE[1:].replace("NAME", 'panda3d' if not RUNTIME else 'panda3d-runtime')
manifest_txt = manifest_txt.replace("VERSION", VERSION)
manifest_txt = manifest_txt.replace("ARCH", pkg_arch)
manifest_txt = manifest_txt.replace("ORIGIN", 'devel/panda3d' if not RUNTIME else 'graphics/panda3d-runtime')

View File

@ -397,13 +397,13 @@ def CrossCompiling():
return GetTarget() != GetHost()
def GetCC():
if TARGET == 'darwin':
if TARGET == 'darwin' or TARGET == 'freebsd':
return os.environ.get('CC', TOOLCHAIN_PREFIX + 'clang')
else:
return os.environ.get('CC', TOOLCHAIN_PREFIX + 'gcc')
def GetCXX():
if TARGET == 'darwin':
if TARGET == 'darwin' or TARGET == 'freebsd':
return os.environ.get('CXX', TOOLCHAIN_PREFIX + 'clang++')
else:
return os.environ.get('CXX', TOOLCHAIN_PREFIX + 'g++')