diff options
author | Petteri Aimonen <jpa@git.mail.kapsi.fi> | 2013-12-03 20:35:29 +0200 |
---|---|---|
committer | Petteri Aimonen <jpa@git.mail.kapsi.fi> | 2013-12-29 20:26:58 +0200 |
commit | 2b334015afd0bfd1888dc4b08f02778d96b2da8c (patch) | |
tree | 7b966a067bac254c27c2dd94d88ec4a3fc598575 /tools | |
parent | 435ccbfdf7e48cfd809c41049d9edf4d6c267566 (diff) |
Add packaging script for Mac, add platform name to packages.
Diffstat (limited to 'tools')
-rwxr-xr-x | tools/make_linux_package.sh | 2 | ||||
-rwxr-xr-x | tools/make_mac_package.sh | 49 | ||||
-rwxr-xr-x[-rw-r--r--] | tools/make_windows_package.sh | 2 |
3 files changed, 51 insertions, 2 deletions
diff --git a/tools/make_linux_package.sh b/tools/make_linux_package.sh index fef0254b..342029aa 100755 --- a/tools/make_linux_package.sh +++ b/tools/make_linux_package.sh @@ -42,5 +42,5 @@ EOF chmod +x $DEST/generator-bin/protoc # Tar it all up -( cd dist; tar -czf $VERSION.tar.gz $VERSION ) +( cd dist; tar -czf $VERSION-linux.tar.gz $VERSION ) diff --git a/tools/make_mac_package.sh b/tools/make_mac_package.sh new file mode 100755 index 00000000..45ce71a0 --- /dev/null +++ b/tools/make_mac_package.sh @@ -0,0 +1,49 @@ +#!/bin/bash + +# Run this script in the top nanopb directory to create a binary package +# for Mac OS X users. + +# Requires: protobuf, python-protobuf, pyinstaller + +set -e +set -x + +VERSION=`git describe --always` +DEST=dist/$VERSION + +rm -rf $DEST +mkdir -p $DEST + +# Export the files from newest commit +git archive HEAD | tar x -C $DEST + +# Rebuild the Python .proto files +make -BC $DEST/generator/proto + +# Package the Python libraries +( cd $DEST/generator; pyinstaller nanopb_generator.py ) +mv $DEST/generator/dist/nanopb_generator $DEST/generator-bin + +# Remove temp files +rm -rf $DEST/generator/dist $DEST/generator/build $DEST/generator/nanopb_generator.spec + +# Make the nanopb generator available as a protoc plugin +cp $DEST/generator-bin/nanopb_generator $DEST/generator-bin/protoc-gen-nanopb + +# Package the protoc compiler +cp `which protoc` $DEST/generator-bin/protoc.bin +LIBPROTOC=$(otool -L `which protoc` | grep -o '/.*libprotoc[^ ]*') +LIBPROTOBUF=$(otool -L `which protoc` | grep -o '/.*libprotobuf[^ ]*') +cp $LIBPROTOC $LIBPROTOBUF $DEST/generator-bin/ +cat > $DEST/generator-bin/protoc << EOF +#!/bin/bash +SCRIPTDIR=\$(cd \$(dirname \$0); pwd) +export DYLD_LIBRARY_PATH=\$SCRIPTDIR +export PATH=\$SCRIPTDIR:\$PATH +exec \$SCRIPTDIR/protoc.bin "\$@" +EOF +chmod +x $DEST/generator-bin/protoc + +# Tar it all up +( cd dist; tar -czf $VERSION-mac.tgz $VERSION ) + diff --git a/tools/make_windows_package.sh b/tools/make_windows_package.sh index fe83bc44..1a339a2b 100644..100755 --- a/tools/make_windows_package.sh +++ b/tools/make_windows_package.sh @@ -52,4 +52,4 @@ find $DEST -name '*.c' -o -name '*.h' -o -name '*.txt' \ -exec unix2dos '{}' \; # Zip it all up -( cd dist; zip -r $VERSION.zip $VERSION ) +( cd dist; zip -r $VERSION-windows.zip $VERSION ) |