Files
harbour-core/harbour/mpkg_src.sh
Viktor Szakats 6a387e5244 2010-07-28 18:30 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + Added -instforce option which will force the target to be 
      copied to -instpath even if it was up to date. This is to
      make it in sync with GNU Make behaviour, where single 
      'make install' will copy everything regardless of being 
      up to date or not.

  * contrib/hbpost.hbm
    + Added -instforce to make it in sync with old GNU Make 
      behavior. Such case is exploited by .rpm generation, and 
      this is the reason why the contrib libs weren't 
      appearing in target lib dir.

  * config/postinst.hbs
    + Added two .so related TOFIXes.

  * mpkg_src.sh
    + Changed to always delete temp file bin/hb_flst.tmp containing
      a list of all source files. (anyone knows why was it left there?)
2010-07-28 16:31:03 +00:00

105 lines
2.3 KiB
Bash
Executable File

#!/bin/sh
#
# $Id$
#
# This script requires "TAR" utilities for compression.
if [ "$1" = "zip" ] || [ "$1" = "ZIP" ]; then
hb_archbin="zip"
hb_ext=".zip"
elif tar --version >/dev/null 2>&1; then
hb_archbin="tar"
hb_gnutar="yes"
elif gtar --version >/dev/null 2>&1; then
hb_archbin="gtar"
hb_gnutar="yes"
else
hb_archbin="tar"
hb_gnutar="no"
echo "Warning!!! Cannot find GNU TAR"
fi
hb_currdir=`pwd`
hb_archopt="-czf"
[ -n "${hb_ext}" ] || hb_ext=".tar.gz"
if [ -f package/mpkg_ver.sh ]; then
hb_rootdir="."
else
hb_rootdir=`dirname $0`
fi
. ${hb_rootdir}/package/mpkg_ver.sh
hb_ver=`get_hbver ${hb_rootdir}`
hb_filename="${hb_currdir}/harbour-${hb_ver}.src${hb_ext}"
rm -f $hb_filename
#[ -z "$TZ" ] && export TZ=PST8PDT
hb_get_entries()
{
if [ "$format" = 8 ]; then
sed -e '/^\f/,+1 !d' -e '/[a-zA-Z0-9_]/ !d' $1/entries
else
sed -e '/^[ ]*name="..*"[\r]*$/ !d' -e 's/^[ ]*name="\(.*\)".*$/\1/g' $1/entries
fi
}
hb_collect_all()
{
for d in `find . -name ".svn"`
do
for f in `hb_get_entries $d`
do
f="`dirname $d`/$f"
[ -f "$f" ] && echo "$f"
done
done
}
hb_collect_all_svn()
{
for f in `svn status -v|sed -e '/^?/ d' -e 's/.* \([^ ]*\)/\1/g'`
do
[ -f "$f" ] && echo "$f"
done
}
hb_collect_all_tree()
{
exclude="/obj/|/lib/|/bin/.*/|\.tar|\.zip|\.exe|\.log|/linux/|/win|/config/"
for f in `find -type f | grep -vE ${exclude}`
do
echo ${f:2}
done
for f in `find config -type f`
do
echo ${f}
done
}
hb_rmflst="yes"
hb_flst="bin/hb_flst.tmp"
#if [ -d "$hb_rootdir/.svn" ] || [ ! -r "$hb_rootdir/$hb_flst" ]; then
if [ -d "$hb_rootdir/.svn" ] ; then
hb_rmflst="yes"
#format=`cat $hb_rootdir/.svn/format`
if [ "$format" = 4 ] || [ "$format" = 8 ]; then
(cd "$hb_rootdir";hb_collect_all) > "$hb_rootdir/$hb_flst"
else
(cd "$hb_rootdir";hb_collect_all_svn) > "$hb_rootdir/$hb_flst"
fi
echo "$hb_flst" >> "$hb_rootdir/$hb_flst"
else
hb_rmflst="yes"
(cd "$hb_rootdir";hb_collect_all_tree) > "$hb_rootdir/$hb_flst"
fi
if [ "$hb_archbin" = "zip" ]; then
(cd "$hb_rootdir";$hb_archbin -r -q $hb_filename . "-i@$hb_flst")
else
(cd "$hb_rootdir";$hb_archbin $hb_archopt $hb_filename --files-from "$hb_flst")
fi
[ "$hb_rmflst" != "yes" ] || rm -fR "$hb_rootdir/$hb_flst"