bin/build-binary-dist.sh: fixes for the Java and Python bindings.

* Just skip the Java binding if there were errors compiling it.

* Install the Python binding in the expected place on Mac OS X when creating
  an OS X installer package. (i.e. under /Library/Python/2.7/site-packages)

Also updated the 3.8 download page and release notes to reflect the above.
This commit is contained in:
hallgren
2016-06-20 14:11:45 +00:00
parent 83d340dbef
commit ab138e5a8c
3 changed files with 27 additions and 11 deletions

View File

@@ -36,6 +36,13 @@ if which >/dev/null python; then
pushd src/runtime/python pushd src/runtime/python
EXTRA_INCLUDE_DIRS="$extrainclude" EXTRA_LIB_DIRS="$extralib" python setup.py build EXTRA_INCLUDE_DIRS="$extrainclude" EXTRA_LIB_DIRS="$extralib" python setup.py build
python setup.py install --prefix="$destdir$prefix" python setup.py install --prefix="$destdir$prefix"
if [ "$fmt" == pkg ] ; then
# A hack for Python on OS X to find the PGF modules
pyver=$(ls "$destdir$prefix/lib" | sed -n 's/^python//p')
pydest="$destdir/Library/Python/$pyver/site-packages"
mkdir -p "$pydest"
ln "$destdir$prefix/lib/python$pyver/site-packages"/pgf* "$pydest"
fi
popd popd
else else
echo "Python is not installed, so the Python binding will not be included" echo "Python is not installed, so the Python binding will not be included"
@@ -45,8 +52,12 @@ fi
if which >/dev/null javac && which >/dev/null jar ; then if which >/dev/null javac && which >/dev/null jar ; then
pushd src/runtime/java pushd src/runtime/java
rm -f libjpgf.la # In case it contains the wrong INSTALL_PATH rm -f libjpgf.la # In case it contains the wrong INSTALL_PATH
make CFLAGS="-I$extrainclude -L$extralib" INSTALL_PATH="$prefix/lib" if make CFLAGS="-I$extrainclude -L$extralib" INSTALL_PATH="$prefix/lib"
make INSTALL_PATH="$destdir$prefix/lib" install then
make INSTALL_PATH="$destdir$prefix/lib" install
else
echo "*** Skipping the Java binding because of errors"
fi
popd popd
else else
echo "Java SDK is not installed, so the Java binding will not be included" echo "Java SDK is not installed, so the Java binding will not be included"
@@ -68,7 +79,7 @@ case $fmt in
;; ;;
pkg) pkg)
pkg=$name.pkg pkg=$name.pkg
pkgbuild --identifier org.grammaticalframework.gf.pkg --version "$ver" --root "$destdir$prefix" --install-location "$prefix" dist/$pkg pkgbuild --identifier org.grammaticalframework.gf.pkg --version "$ver" --root "$destdir" --install-location / dist/$pkg
echo "Created $pkg" echo "Created $pkg"
esac esac

View File

@@ -15,11 +15,11 @@ What's new? See the [Release notes release-3.8.html].
== Binary packages == == Binary packages ==
|| Platform | Download | Features | How to install || Platform | Download | Features | How to install
| Mac OS X | [gf-3.8.pkg gf-3.8.pkg] | //GF+S+C// | Double-click on the package icon (*) | Mac OS X | [gf-3.8.pkg gf-3.8.pkg] | //GF+S+C+P// | Double-click on the package icon (*)
| Mac OS X | [gf-3.8-bin-intel-mac.tar.gz gf-3.8-bin-intel-mac.tar.gz] | //GF+S+C+B// | ``sudo tar -C /usr/local -zxf gf-3.8-bin-intel-mac.tar.gz`` | Mac OS X | [gf-3.8-bin-intel-mac.tar.gz gf-3.8-bin-intel-mac.tar.gz] | //GF+S+C+P// | ``sudo tar -C /usr/local -zxf gf-3.8-bin-intel-mac.tar.gz``
%| Fedora (32-bit) | [Fedora RPMs /~hallgren/tmp/Fedora/] | //GF+S+C+B// | ``sudo rpm -i ...`` %| Fedora (32-bit) | [Fedora RPMs /~hallgren/tmp/Fedora/] | //GF+S+C+J+P// | ``sudo rpm -i ...``
| Ubuntu (32-bit) | [gf_3.8-1_i386.deb gf_3.8-1_i386.deb] | //GF+S+C+B// | ``sudo dpkg -i gf_3.8-1_i386.deb`` | Ubuntu (32-bit) | [gf_3.8-1_i386.deb gf_3.8-1_i386.deb] | //GF+S+C+J+P// | ``sudo dpkg -i gf_3.8-1_i386.deb``
| Ubuntu (64-bit) | [gf_3.8-1_amd64.deb gf_3.8-1_amd64.deb] | //GF+S+C+B// | ``sudo dpkg -i gf_3.8-1_amd64.deb`` | Ubuntu (64-bit) | [gf_3.8-1_amd64.deb gf_3.8-1_amd64.deb] | //GF+S+C+J+P// | ``sudo dpkg -i gf_3.8-1_amd64.deb``
| Windows | [gf-3.8-bin-windows.zip gf-3.8-bin-windows.zip] | //GF+S// | ``unzip gf-3.8-bin-windows.zip`` | Windows | [gf-3.8-bin-windows.zip gf-3.8-bin-windows.zip] | //GF+S// | ``unzip gf-3.8-bin-windows.zip``
%| MINGW | [gf-3.8-bin-i686-MINGW32_NT-6.1.tar.gz gf-3.8-bin-i686-MINGW32_NT-6.1.tar.gz] | //GF+S+C// | ``tar -C / gf-3.8-bin-i686-MINGW32_NT-6.1.tar.gz`` %| MINGW | [gf-3.8-bin-i686-MINGW32_NT-6.1.tar.gz gf-3.8-bin-i686-MINGW32_NT-6.1.tar.gz] | //GF+S+C// | ``tar -C / gf-3.8-bin-i686-MINGW32_NT-6.1.tar.gz``
%| ... | ... | ... | ... %| ... | ... | ... | ...
@@ -27,7 +27,7 @@ What's new? See the [Release notes release-3.8.html].
Features: GF = GF shell and grammar compiler and the Resource Grammar Library, Features: GF = GF shell and grammar compiler and the Resource Grammar Library,
S = ``gf -server`` mode, S = ``gf -server`` mode,
C = C run-time system, C = C run-time system,
B = Python and Java bindings to the C run-time system P/J = Python/Java binding to the C run-time system
%More binary packages might be added later. %More binary packages might be added later.
@@ -44,7 +44,8 @@ variables, see Inari's notes on
%(which is started with ``C:\MinGW\msys\1.0\msys.bat``). %(which is started with ``C:\MinGW\msys\1.0\msys.bat``).
%It should work out of the box without any additional settings. %It should work out of the box without any additional settings.
The ``.deb`` packages work on Ubuntu 12.04, 14.04 and 16.04. The ``.deb`` packages should work on Ubuntu 12.04, 14.04 and 16.04 and similar
Linux distributions.
The packages for Mac OS X should work on at least 10.9, 10.10 and 10.11 (Mavericks, Yosemite and El Capitan). The packages for Mac OS X should work on at least 10.9, 10.10 and 10.11 (Mavericks, Yosemite and El Capitan).

View File

@@ -12,7 +12,7 @@ See the [download page http://www.grammaticalframework.org/download/index.html].
==What's new== ==What's new==
Over 380 changes have been pushed to the source repository since Over 395 changes have been pushed to the source repository since
[the release of GF 3.7.1 release-3.7.1.html] in October 2015. [the release of GF 3.7.1 release-3.7.1.html] in October 2015.
@@ -35,6 +35,10 @@ Over 380 changes have been pushed to the source repository since
The problem was introduced before the release of GF 3.7.1 and prevented The problem was introduced before the release of GF 3.7.1 and prevented
commands like ``cc "last"`` and ``cc "last"++"year"`` from working, commands like ``cc "last"`` and ``cc "last"++"year"`` from working,
but they should work again now. but they should work again now.
- Python binding: with the OS X installer package (``gf-3.8.pkg``)
the Python binding should now work directly out of the package.
(The installer puts the modules under ``/Library/Python/2.7/site-packages``,
where the Python interpreter can find them.)
- Various improvements and bug fixes in the C run-time system and its bindings - Various improvements and bug fixes in the C run-time system and its bindings
to other languages. to other languages.