| #!/bin/bash |
| |
| # |
| # |
| # Licensed to the Apache Software Foundation (ASF) under one |
| # or more contributor license agreements. See the NOTICE file |
| # distributed with this work for additional information |
| # regarding copyright ownership. The ASF licenses this file |
| # to you under the Apache License, Version 2.0 (the |
| # "License"); you may not use this file except in compliance |
| # with the License. You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, |
| # software distributed under the License is distributed on an |
| # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| # KIND, either express or implied. See the License for the |
| # specific language governing permissions and limitations |
| # under the License. |
| # |
| |
| |
| # |
| # Temporary hack for producing a binary dev distribution. |
| # Includes regular stuff from 'make install' + examples and headers. |
| # |
| # TODO: Also include debug libraries. |
| # |
| |
| Usage() { |
| echo "usage: $0 [release-version] |
| release-version e.g. 1.0M1 (defaults to the svn revision)" >&2 |
| exit 2 |
| } |
| |
| if [[ $# -eq 1 ]]; then |
| [[ $1 == "-?" ]] && Usage |
| version=$1 |
| elif [[ $# -ne 0 ]]; then |
| Usage |
| else |
| # Default the version to the svn revision |
| if which svn >/dev/null 2>&1; then |
| svnRevision=$(svn info | grep ^Revision: | awk '{print $2}') |
| version=r${svnRevision} |
| else |
| echo "You need to have svn in your PATH or specify a release-version" |
| exit 2 |
| fi |
| fi |
| |
| releaseName=qpid-cpp-dev-${version}-$(uname -s)-$(uname -p) |
| releaseDir=release/$releaseName |
| |
| if [[ -d $releaseDir ]]; then |
| echo "$releaseDir already exists" |
| exit 2 |
| fi |
| |
| # Copy bin. |
| mkdir -p $releaseDir/bin |
| cp -r src/.libs/* ${releaseDir}/bin |
| |
| # Copy libs. |
| mkdir -p $releaseDir/lib |
| cp lib/broker/.libs/lib* lib/common/.libs/lib* lib/client/.libs/lib* \ |
| $releaseDir/lib |
| |
| # Copy gen include files. |
| find gen -name \*.h | while read file; do |
| destFile=${releaseDir}/include/$file |
| baseDir=$(dirname $destFile) |
| mkdir -p $baseDir |
| cp $file $destFile |
| done |
| |
| # Copy in lib include files. |
| ( |
| cd lib; find . -name \*.h | while read file; do |
| destFile=../${releaseDir}/include/$file |
| baseDir=$(dirname $destFile) |
| mkdir -p $baseDir |
| cp $file $destFile |
| done |
| ) |
| |
| # Copy non-cppunit tests as examples. |
| mkdir -p $releaseDir/examples |
| for file in tests/*.cpp; do |
| if grep CppUnit $file >/dev/null; then |
| echo Skipping cppunit file $file |
| else |
| cp $file $releaseDir/examples |
| fi |
| done |
| |
| # Copy Makefile and README for examples. |
| cp tests/examples.Makefile $releaseDir/examples/Makefile |
| cp tests/examples.README $releaseDir/examples/README |
| |
| cd release |
| tar=$releaseName.tar |
| tar cvf $tar $releaseName |
| bzip2 $tar |