[Gambas-user] [Gambas Bug Tracker] Bug #898: gambas3 does things wrong when prefix= (nothing)

bugtracker at ...3416... bugtracker at ...3416...
Wed Mar 2 00:14:34 CET 2016


http://gambaswiki.org/bugtracker/edit?object=BUG.898&from=L21haW4-

Comment #2 by sab OTAGE:

./configure -C --prefix= --disable-nls \
  --disable-bzlib2 \
  --disable-mysql \
  --disable-odbc \
  --disable-postgresql \
  --disable-sqlite2 \
  --disable-sqlite3 \
  --disable-curl \
  --disable-mime \
  --disable-pcre \
  --disable-sdl \
  --disable-sdlsound \
  --disable-sdl2 \
  --disable-libxml \
  --disable-xml \
  --disable-v4l \
  --disable-crypt \
  --disable-qt4 \
  --disable-qt5 \
  --enable-gtk \
  --disable-opengl \
  --enable-x11 \
  --disable-keyring \
  --disable-pdf \
  --disable-cairo \
  --disable-imageio \
  --disable-imageimlib \
  --disable-dbus \
  --disable-gsl \
  --disable-gmp \
  --enable-ncurses \
  --disable-media \
  --disable-jit \
  --disable-httpd \
  --disable-openssl \
  --disable-openal \
  --disable-silent-rules
make && make DESTDIR=/opt/gambas3 install


then later butch-relocate script links /opt/gambas3 into /  :
so for example /bin/gbi3 is a symlink to ../opt/gambas3/bin/gbi3
#!/bin/sh
#set -x
[ -z "$butch_do_overwrite_on_copy" ] && butch_do_overwrite_on_copy=false

relocate() {
        local dir=$1
        local backlinks=$2
        local do_copy=$3
        mkdir -p "$butch_root"/$dir
        [ -d "$butch_root""$butch_install_dir/$dir" ] || return 0
        cd "$butch_root""$butch_install_dir/$dir" || return 1
        [ -n "$V" ] && echo "relocating $butch_root$butch_install_dir/$dir"
        for i in * ; do
                if [ ! -L "$i" ] && [ -d "$i" ] ; then
                        local save="$PWD"
                        relocate "$dir/$i" "$backlinks/.." $do_copy
                        cd "$save"
                elif [ -f "$i" ] || [ -L "$i" ] ; then
                        target="$butch_root/$dir/$i"
                        if $do_copy ; then
                                if $butch_do_overwrite_on_copy || [ ! -e "$target" ] ; then
                                        echo cp -a "$butch_root$butch_install_dir/$dir/$i" "$target"
                                        cp -a "$butch_root$butch_install_dir/$dir/$i" "$target"
                                fi
                        else
                                echo "ln -sf "$backlinks""$butch_install_dir"/"$dir"/"$i" $target"
                                ln -sf "$backlinks""$butch_install_dir"/"$dir"/"$i" "$target"
                        fi
                else
                        [ -n "$V" ] && echo "UNKNOWN object $i"
                fi
        done
        [ -n "$V" ] && echo "relocation done"
}

if [ -z "$1" ] ; then
        echo "tool to manually symlink a built package"
        echo "(i.e. the ones in /opt/packagename)"
        echo "into /"

        echo "error: need to pass package name to relocate" >&2
        exit 1
fi

ec=0

for pkg ; do
        [ "$R" = "/" ] && R=
        butch_root=$R
        butch_install_dir=/opt/"$pkg"
        if [ -d "$R""$butch_install_dir" ] ; then
                for loc in bin sbin include lib libexec share ; do
                        relocate $loc .. false
                done
                for loc in etc var ; do
                        relocate $loc .. true
                done
        else
                echo "warning: package $pkg does not seem to be installed" >&2
                ec=1
        fi
done

exit $ec






More information about the User mailing list