"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "contrib/release/build.sh" between
FreeBASIC-1.07.0-source.tar.gz and FreeBASIC-1.07.1-source.tar.gz

About: FreeBasic is a set of cross-platform development tools consisting of a compiler, GNU-based assembler, linker and archiver, and supporting runtime libraries, including a software-based graphics library.

build.sh  (FreeBASIC-1.07.0-source):build.sh  (FreeBASIC-1.07.1-source)
skipping to change at line 56 skipping to change at line 56
# #
# --repo url # --repo url
# specify an additional repo url to fetch in to the local repo other than the # specify an additional repo url to fetch in to the local repo other than the
# official https://github.com/freebasic/fbc.git repo. # official https://github.com/freebasic/fbc.git repo.
# #
# --remote name # --remote name
# specifies the remote name to add and use when referring to the other repo ur l. # specifies the remote name to add and use when referring to the other repo ur l.
# remote name will default to 'other' if the --repo option was given. # remote name will default to 'other' if the --repo option was given.
# remote name will default to 'origin' if the --repo option was not given. # remote name will default to 'origin' if the --repo option was not given.
# #
# --recipe name
# specify which build recipe to use. Not all recipes are supported on all tar
gets.
# -gcc-5.2.0
# -gcc-7.1.0
# -gcc-7.1.0r0
# -gcc-7.1.0r2
# -gcc-7.3.0
# -gcc-8.1.0
#
# Requirements: # Requirements:
# - MSYS environment on Windows with: bash, wget/curl, zip, unzip, patch, make , findutils # - MSYS environment on Windows with: bash, wget/curl, zip, unzip, patch, make , findutils
# (win32/win64 builds need to be able to run ./configure scripts, to build l ibffi) # (win32/win64 builds need to be able to run ./configure scripts, to build l ibffi)
# - 7z (7-zip) in the PATH (win32/win64) # - 7z (7-zip) in the PATH (win32/win64)
# - makensis (NSIS) in the PATH (FB-win32 installer) # - makensis (NSIS) in the PATH (FB-win32 installer)
# - git in the PATH # - git in the PATH
# - internet access for downloading input packages and fbc via git # - internet access for downloading input packages and fbc via git
# #
# Some of the ideas behind this script: # Some of the ideas behind this script:
# - Automating the build process for FB releases => less room for mistakes # - Automating the build process for FB releases => less room for mistakes
skipping to change at line 77 skipping to change at line 86
# - Specifying the exact DJGPP/MinGW packages to use => reproducible builds # - Specifying the exact DJGPP/MinGW packages to use => reproducible builds
# - Only work locally, e.g. don't touch existing DJGPP/MinGW setups on the hos t # - Only work locally, e.g. don't touch existing DJGPP/MinGW setups on the hos t
# #
# TODO: # TODO:
# - win32: fbdoc CHM # - win32: fbdoc CHM
# - package libffi # - package libffi
# #
set -e set -e
usage() { usage() {
echo "usage: ./build.sh dos|linux-x86|linux-x86_64|win32|win32-mingworg|w in64 <fbc commit id> [--offline] [--repo url] [--remote name]" echo "usage: ./build.sh dos|linux-x86|linux-x86_64|win32|win32-mingworg|w in64 <fbc commit id> [--offline] [--repo url] [--remote name] [--recipe name]"
exit 1 exit 1
} }
# parse command line arguments # parse command line arguments
while [[ $# -gt 0 ]] while [[ $# -gt 0 ]]
do do
arg="$1" arg="$1"
case $arg in case $arg in
--offline) --offline)
offline=Y offline=Y
shift shift
;; ;;
--repo) --repo)
repo_url="$2" repo_url="$2"
shift; shift shift; shift
;; ;;
--remote) --remote)
remote_name="$2" remote_name="$2"
shift; shift shift; shift
;; ;;
--recipe)
recipe_name="$2"
shift; shift
;;
dos|linux-x86|linux-x86_64|win32|win64) dos|linux-x86|linux-x86_64|win32|win64)
target="$1" target="$1"
fbtarget=$target fbtarget=$target
shift shift
;; ;;
win32-mingworg) win32-mingworg)
target="$1" target="$1"
fbtarget=win32 fbtarget=win32
shift shift
;; ;;
skipping to change at line 131 skipping to change at line 144
offline=${offline:-N} offline=${offline:-N}
# if we have an alternate repo url, then set a default value for the remote name # if we have an alternate repo url, then set a default value for the remote name
# otherwise we are only using the official repo, so set the remote name to origi n # otherwise we are only using the official repo, so set the remote name to origi n
if [ ! -z "$repo_url" ]; then if [ ! -z "$repo_url" ]; then
remote_name=${remote_name:-other} remote_name=${remote_name:-other}
else else
remote_name=${remote_name:-origin} remote_name=${remote_name:-origin}
fi fi
# check recipe name
# TODO: error on invalid combination of target and recipe
if [ ! -z "$recipe_name" ]; then
recipe=$recipe_name
else
recipe=""
fi
echo "building FB-$target (uname = `uname`, uname -m = `uname -m`)" echo "building FB-$target (uname = `uname`, uname -m = `uname -m`)"
echo "from repository: https://github.com/freebasic/fbc.git" echo "from repository: https://github.com/freebasic/fbc.git"
if [ ! -z "$repo_url" ]; then if [ ! -z "$repo_url" ]; then
echo "from repository: $repo_url" echo "from repository: $repo_url"
fi fi
mkdir -p input mkdir -p input
mkdir -p output mkdir -p output
rm -rf build rm -rf build
mkdir build mkdir build
skipping to change at line 173 skipping to change at line 194
git fetch "$remote_name" git fetch "$remote_name"
git fetch --tags "$remote_name" git fetch --tags "$remote_name"
git remote prune "$remote_name" git remote prune "$remote_name"
git reset --hard "$fbccommit" git reset --hard "$fbccommit"
fi fi
cd ../.. cd ../..
cd build cd build
buildinfo=../output/buildinfo-$target.txt buildinfo=../output/buildinfo-$target$recipe.txt
echo "fbc $fbccommit $target, build based on:" > $buildinfo echo "fbc $fbccommit $target, build based on:" > $buildinfo
echo >> $buildinfo echo >> $buildinfo
copyfile() { copyfile() {
srcfile="$1" srcfile="$1"
dstfile="$2" dstfile="$2"
if [ -f "$dstfile" ]; then if [ -f "$dstfile" ]; then
echo "cached $dstfile" echo "cached $dstfile"
else else
skipping to change at line 227 skipping to change at line 248
} }
download_mingw() { download_mingw() {
download "MinGW.org/$1" "http://downloads.sourceforge.net/mingw/${1}?down load" download "MinGW.org/$1" "http://downloads.sourceforge.net/mingw/${1}?down load"
} }
get_mingww64_toolchain() { get_mingww64_toolchain() {
bits="$1" bits="$1"
arch="$2" arch="$2"
gccversion=5.2.0 case "$recipe" in
mingwbuildsrev=rev0 -gcc-8.1.0)
gccversion=8.1.0
mingwbuildsrev=rev0
mingwruntime=v6
;;
-gcc-7.3.0)
gccversion=7.3.0
mingwbuildsrev=rev0
mingwruntime=v5
;;
-gcc-7.1.0r2)
gccversion=7.1.0
mingwbuildsrev=rev2
mingwruntime=v5
;;
-gcc-7.1.0|-gcc-7.1.0r0)
gccversion=7.1.0
mingwbuildsrev=rev0
mingwruntime=v5
;;
-gcc-5.2.0)
gccversion=5.2.0
mingwbuildsrev=rev0
mingwruntime=v4
;;
*)
gccversion=5.2.0
mingwbuildsrev=rev0
mingwruntime=v4
;;
esac
dir=Toolchains%20targetting%20Win$bits/Personal%20Builds/mingw-builds/$gc cversion/threads-win32/sjlj/ dir=Toolchains%20targetting%20Win$bits/Personal%20Builds/mingw-builds/$gc cversion/threads-win32/sjlj/
file=$arch-$gccversion-release-win32-sjlj-rt_v4-$mingwbuildsrev.7z file=$arch-$gccversion-release-win32-sjlj-rt_$mingwruntime-$mingwbuildsre v.7z
mkdir -p ../input/MinGW-w64 mkdir -p ../input/MinGW-w64
download "MinGW-w64/$file" "http://sourceforge.net/projects/mingw-w64/fil es/$dir$file/download" download "MinGW-w64/$file" "http://sourceforge.net/projects/mingw-w64/fil es/$dir$file/download"
srcfile=src-$gccversion-release-rt_v4-$mingwbuildsrev.tar.7z srcfile=src-$gccversion-release-rt_$mingwruntime-$mingwbuildsrev.tar.7z
download "MinGW-w64/$srcfile" "http://sourceforge.net/projects/mingw-w64/ files/Toolchain%20sources/Personal%20Builds/mingw-builds/$gccversion/$srcfile/do wnload" download "MinGW-w64/$srcfile" "http://sourceforge.net/projects/mingw-w64/ files/Toolchain%20sources/Personal%20Builds/mingw-builds/$gccversion/$srcfile/do wnload"
7z x "../input/MinGW-w64/$file" > /dev/null 7z x "../input/MinGW-w64/$file" > /dev/null
} }
case "$target" in case "$target" in
dos) dos)
DJGPP_MIRROR="ftp://ftp.fu-berlin.de/pc/languages/djgpp/" DJGPP_MIRROR="ftp://ftp.fu-berlin.de/pc/languages/djgpp/"
download_djgpp() { download_djgpp() {
skipping to change at line 351 skipping to change at line 403
# Work around http://sourceforge.net/p/mingw/bugs/2039/ # Work around http://sourceforge.net/p/mingw/bugs/2039/
patch -p0 < ../mingworg-fix-wcharh.patch patch -p0 < ../mingworg-fix-wcharh.patch
;; ;;
win64) win64)
get_mingww64_toolchain 64 x86_64 get_mingww64_toolchain 64 x86_64
mv mingw64/* . && rmdir mingw64 mv mingw64/* . && rmdir mingw64
;; ;;
esac esac
bootfb_title=FreeBASIC-1.05.0-$fbtarget bootfb_title=FreeBASIC-1.06.0-$fbtarget
case $fbtarget in case $fbtarget in
linux*) linux*)
# Special case: linux builds use the host gcc toolchain # Special case: linux builds use the host gcc toolchain
echo "$(lsb_release -d -s), $(uname -m), $(gcc --version | head -1)" >> $ buildinfo echo "$(lsb_release -d -s), $(uname -m), $(gcc --version | head -1)" >> $ buildinfo
# Download & extract FB for bootstrapping # Download & extract FB for bootstrapping
bootfb_package=$bootfb_title.tar.xz bootfb_package=$bootfb_title.tar.xz
download $bootfb_package "https://downloads.sourceforge.net/fbc/${bootfb_ package}?download" download $bootfb_package "https://downloads.sourceforge.net/fbc/${bootfb_ package}?download"
tar xf ../input/$bootfb_package tar xf ../input/$bootfb_package
skipping to change at line 390 skipping to change at line 442
# On 64bit, we have to override the FB makefile's uname check, because MS YS uname reports 32bit still # On 64bit, we have to override the FB makefile's uname check, because MS YS uname reports 32bit still
if [ $fbtarget = win64 ]; then if [ $fbtarget = win64 ]; then
echo "TARGET_ARCH := x86_64" >> fbc/config.mk echo "TARGET_ARCH := x86_64" >> fbc/config.mk
fi fi
;; ;;
esac esac
case $fbtarget in case $fbtarget in
win32|win64) win32|win64)
# libffi sources # libffi sources
# TODO : new libffi package? at https://github.com/libffi/libffi/releases /download/v3.3-rc0/libffi-3.3-rc0.tar.gz
libffi_title=libffi-3.2.1 libffi_title=libffi-3.2.1
libffi_package="${libffi_title}.tar.gz" libffi_package="${libffi_title}.tar.gz"
download "$libffi_package" "ftp://sourceware.org/pub/libffi/$libffi_packa ge" download "$libffi_package" "ftp://sourceware.org/pub/libffi/$libffi_packa ge"
echo "extracting $libffi_package" echo "extracting $libffi_package"
tar xf "../input/$libffi_package" tar xf "../input/$libffi_package"
;; ;;
esac esac
dosbuild() { dosbuild() {
dospath=`pwd -W` dospath=`pwd -W`
skipping to change at line 418 skipping to change at line 471
make FBC=../$bootfb_title/fbc.exe make FBC=../$bootfb_title/fbc.exe
if ERRORLEVEL 1 exit /b if ERRORLEVEL 1 exit /b
make install make install
if ERRORLEVEL 1 exit /b if ERRORLEVEL 1 exit /b
cd .. cd ..
echo rebuilding normal fbc: echo rebuilding normal fbc:
cd fbc cd fbc
make clean-compiler make clean-compiler
if ERRORLEVEL 1 exit /b if ERRORLEVEL 1 exit /b
make make FBSHA1=1
if ERRORLEVEL 1 exit /b if ERRORLEVEL 1 exit /b
make install make install
if ERRORLEVEL 1 exit /b if ERRORLEVEL 1 exit /b
cd .. cd ..
EOF EOF
cat <<EOF > buildsa.bat cat <<EOF > buildsa.bat
@echo off @echo off
set DJGPP=$dospath/djgpp.env set DJGPP=$dospath/djgpp.env
set PATH=$dospath/bin set PATH=$dospath/bin
cd fbc cd fbc
make ENABLE_STANDALONE=1 make ENABLE_STANDALONE=1 FBSHA1=1
if ERRORLEVEL 1 exit /b if ERRORLEVEL 1 exit /b
cd .. cd ..
EOF EOF
cmd /c build.bat cmd /c build.bat
echo "building standalone fbc:" echo "building standalone fbc:"
rm fbc/src/compiler/obj/$fbtarget/fbc.o rm fbc/src/compiler/obj/$fbtarget/fbc.o
cmd /c buildsa.bat cmd /c buildsa.bat
skipping to change at line 453 skipping to change at line 506
cp bin/ar.exe bin/as.exe bin/gdb.exe bin/gprof.exe bin/ld.exe fbc/bin/dos / cp bin/ar.exe bin/as.exe bin/gdb.exe bin/gprof.exe bin/ld.exe fbc/bin/dos /
cp bin/dxe3gen.exe fbc/bin/dos/ cp bin/dxe3gen.exe fbc/bin/dos/
cp lib/crt0.o lib/gcrt0.o lib/libdbg.a lib/libemu.a lib/libm.a fbc/lib/do s/ cp lib/crt0.o lib/gcrt0.o lib/libdbg.a lib/libemu.a lib/libm.a fbc/lib/do s/
cp lib/libstdcxx.a fbc/lib/dos/libstdcx.a cp lib/libstdcxx.a fbc/lib/dos/libstdcx.a
cp lib/libsupcxx.a fbc/lib/dos/libsupcx.a cp lib/libsupcxx.a fbc/lib/dos/libsupcx.a
cp lib/libsocket.a fbc/lib/dos/libsocket.a cp lib/libsocket.a fbc/lib/dos/libsocket.a
cp lib/libpthread.a fbc/lib/dos/libpthread.a cp lib/libpthread.a fbc/lib/dos/libpthread.a
cp lib/gcc/djgpp/$djgppgccversiondir/libgcc.a fbc/lib/dos/ cp lib/gcc/djgpp/$djgppgccversiondir/libgcc.a fbc/lib/dos/
cd fbc cd fbc
make bindist TARGET_OS=dos DISABLE_DOCS=1 make bindist TARGET_OS=dos DISABLE_DOCS=1 FBSHA1=1
make bindist TARGET_OS=dos ENABLE_STANDALONE=1 make bindist TARGET_OS=dos ENABLE_STANDALONE=1 FBSHA1=1
cd .. cd ..
cp fbc/*.zip ../output cp fbc/*.zip ../output
cp fbc/contrib/manifest/fbc-dos.lst ../output cp fbc/contrib/manifest/fbc-dos.lst ../output
cp fbc/contrib/manifest/FreeBASIC-dos.lst ../output cp fbc/contrib/manifest/FreeBASIC-dos.lst ../output
} }
linuxbuild() { linuxbuild() {
cd fbc cd fbc
echo echo
skipping to change at line 476 skipping to change at line 529
echo echo
make FBC=../$bootfb_title/bin/fbc make FBC=../$bootfb_title/bin/fbc
make install prefix=../tempinstall make install prefix=../tempinstall
echo echo
echo "rebuilding normal fbc" echo "rebuilding normal fbc"
echo echo
make clean-compiler make clean-compiler
make FBC=../tempinstall/bin/fbc make FBC=../tempinstall/bin/fbc
cd .. cd ..
cd fbc && make bindist && cd .. cd fbc && make bindist FBSHA1=1 && cd ..
cp fbc/*.tar.* ../output cp fbc/*.tar.* ../output
cp fbc/contrib/manifest/FreeBASIC-$fbtarget.lst ../output cp fbc/contrib/manifest/FreeBASIC-$fbtarget.lst ../output
} }
libffibuild() { libffibuild() {
# do we already have the files we need? # do we already have the files we need?
if [ -f "../input/$libffi_title/$target/ffi.h" ]; then if [ -f "../input/$libffi_title/$target$recipe/ffi.h" ]; then
if [ -f "../input/$libffi_title/$target/ffitarget.h" ]; then if [ -f "../input/$libffi_title/$target$recipe/ffitarget.h" ]; then
if [ -f "../input/$libffi_title/$target/libffi.a" ]; then if [ -f "../input/$libffi_title/$target$recipe/libffi.a" ]; then
echo echo
echo "using cached libffi: $libffi_title/$target" echo "using cached libffi: $libffi_title/$target$recipe"
echo echo
return return
fi fi
fi fi
fi fi
# just grab the files we need from the package?
# TODO : maybe once libffi 3.3 is released, we can go back
# to building libffi ourselves.
# copy files from opt/lib/libffi-3.2.1
case "$recipe" in
-gcc-7.1.0|-gcc-7.1.0r0|-gcc-7.1.0r2|-gcc-7.3.0|-gcc-8.1.0)
mkdir -p ../input/$libffi_title/$target$recipe
cp opt/lib/libffi-3.2.1/include/ffi.h ../input/$libffi_titl
e/$target$recipe
cp opt/lib/libffi-3.2.1/include/ffitarget.h ../input/$libffi_titl
e/$target$recipe
cp opt/lib/libffi.a ../input/$libffi_titl
e/$target$recipe
return
;;
esac
echo echo
echo "building libffi" echo "building libffi"
echo echo
libffi_build="${libffi_title}-build" libffi_build="${libffi_title}-build"
mkdir "$libffi_build" mkdir "$libffi_build"
cd "$libffi_build" cd "$libffi_build"
if [ "$target" = win64 ]; then if [ "$target" = win64 ]; then
CFLAGS=-O2 ../$libffi_title/configure --disable-shared --enable-s tatic --build=x86_64-w64-mingw32 --host=x86_64-w64-mingw32 CFLAGS=-O2 ../$libffi_title/configure --disable-shared --enable-s tatic --build=x86_64-w64-mingw32 --host=x86_64-w64-mingw32
elif [ "$target" = win32 ]; then elif [ "$target" = win32 ]; then
# force host even for 32-bit, we might be cross compiling from x8 6_64 to x86 # force host even for 32-bit, we might be cross compiling from x8 6_64 to x86
CFLAGS=-O2 ../$libffi_title/configure --disable-shared --enable-s tatic --host=i686-w64-mingw32 CFLAGS=-O2 ../$libffi_title/configure --disable-shared --enable-s tatic --host=i686-w64-mingw32
else else
CFLAGS=-O2 ../$libffi_title/configure --disable-shared --enable-s tatic CFLAGS=-O2 ../$libffi_title/configure --disable-shared --enable-s tatic
fi fi
make make
# stash some files in the input folder to make rebuilding faster # stash some files in the input folder to make rebuilding faster
mkdir -p ../../input/$libffi_title/$target mkdir -p ../../input/$libffi_title/$target$recipe
cp include/ffi.h include/ffitarget.h ../../input/$libffi_title/$target cp include/ffi.h include/ffitarget.h ../../input/$libffi_title/$target$re
cp .libs/libffi.a ../../input/$libffi_title/$target cipe
cp .libs/libffi.a ../../input/$libffi_title/$target$recipe
cd .. cd ..
} }
windowsbuild() { windowsbuild() {
# Add our toolchain's bin/ to the PATH, so hopefully we'll only use # Add our toolchain's bin/ to the PATH, so hopefully we'll only use
# its gcc and not one from the host # its gcc and not one from the host
origPATH="$PATH" origPATH="$PATH"
export PATH="$PWD/bin:$PATH" export PATH="$PWD/bin:$PATH"
libffibuild libffibuild
case "$target" in # copy our stored files to the build
win32) cp ../input/$libffi_title/$target/ffi.h ../input/ case "$target" in
$libffi_title/$target/ffitarget.h ./i686-w64-mingw32/include;; win32) cp ../input/$libffi_title/$target$recipe/ffi.h ../input/$
win32-mingworg) cp ../input/$libffi_title/$target/ffi.h ../input/$libffi_ libffi_title/$target$recipe/ffitarget.h ./i686-w64-mingw32/include;;
title/$target/ffitarget.h ./include;; win32-mingworg) cp ../input/$libffi_title/$target$recipe/ffi.h ../input/$
win64) cp ../input/$libffi_title/$target/ffi.h ../input/ libffi_title/$target$recipe/ffitarget.h ./include;;
$libffi_title/$target/ffitarget.h ./x86_64-w64-mingw32/include;; win64) cp ../input/$libffi_title/$target$recipe/ffi.h ../input/$
libffi_title/$target$recipe/ffitarget.h ./x86_64-w64-mingw32/include;;
esac esac
cd fbc cd fbc
echo echo
echo "bootstrapping normal fbc" echo "bootstrapping normal fbc"
echo echo
make FBC=../$bootfb_title/fbc.exe make FBC=../$bootfb_title/fbc.exe
make install make install
echo echo
echo "rebuilding normal fbc" echo "rebuilding normal fbc"
echo echo
make clean-compiler make clean-compiler
make make FBSHA1=1
cd .. cd ..
cd fbc cd fbc
echo echo
echo "building standalone fbc" echo "building standalone fbc"
echo echo
rm src/compiler/obj/$fbtarget/fbc.o rm src/compiler/obj/$fbtarget/fbc.o
make ENABLE_STANDALONE=1 make ENABLE_STANDALONE=1 FBSHA1=1
cd .. cd ..
mkdir -p fbc/bin/$fbtarget mkdir -p fbc/bin/$fbtarget
cp bin/ar.exe fbc/bin/$fbtarget cp bin/ar.exe fbc/bin/$fbtarget
cp bin/as.exe fbc/bin/$fbtarget cp bin/as.exe fbc/bin/$fbtarget
cp bin/dlltool.exe fbc/bin/$fbtarget cp bin/dlltool.exe fbc/bin/$fbtarget
cp bin/gprof.exe fbc/bin/$fbtarget cp bin/gprof.exe fbc/bin/$fbtarget
cp bin/ld.exe fbc/bin/$fbtarget cp bin/ld.exe fbc/bin/$fbtarget
cd fbc && make mingw-libs ENABLE_STANDALONE=1 && cd .. cd fbc && make mingw-libs ENABLE_STANDALONE=1 && cd ..
skipping to change at line 584 skipping to change at line 653
cp bin/gdb.exe fbc/bin/win32 cp bin/gdb.exe fbc/bin/win32
cp bin/libgcc_s_dw2-1.dll fbc/bin/win32 cp bin/libgcc_s_dw2-1.dll fbc/bin/win32
cp bin/zlib1.dll fbc/bin/win32 cp bin/zlib1.dll fbc/bin/win32
;; ;;
win64) win64)
cp bin/gcc.exe fbc/bin/win64 cp bin/gcc.exe fbc/bin/win64
cp --parents libexec/gcc/x86_64-w64-mingw32/$gccversion/cc1.exe f bc/bin cp --parents libexec/gcc/x86_64-w64-mingw32/$gccversion/cc1.exe f bc/bin
;; ;;
esac esac
cp ../input/$libffi_title/$target/libffi.a fbc/lib/$fbtarget cp ../input/$libffi_title/$target$recipe/libffi.a fbc/lib/$fbtarget
# Reduce .exe sizes by dropping debug info # Reduce .exe sizes by dropping debug info
# (this was at least needed for MinGW.org's gdb, and probably nothing els e, # (this was at least needed for MinGW.org's gdb, and probably nothing els e,
# but it shouldn't hurt either) # but it shouldn't hurt either)
strip -g fbc/bin/$fbtarget/* strip -g fbc/bin/$fbtarget/*
# get GoRC.exe from author site # get GoRC.exe from author site
download "Gorc.zip" "http://www.godevtool.com/Gorc.zip" download "Gorc.zip" "http://www.godevtool.com/Gorc.zip"
unzip ../input/Gorc.zip GoRC.exe -d fbc/bin/$fbtarget unzip ../input/Gorc.zip GoRC.exe -d fbc/bin/$fbtarget
cd fbc cd fbc
case "$target" in case "$target" in
win32|win64) win32|win64)
make bindist DISABLE_DOCS=1 make bindist DISABLE_DOCS=1 FBPACKSUFFIX=$recipe FBSHA1=1
make bindist ENABLE_STANDALONE=1 make bindist ENABLE_STANDALONE=1 FBPACKSUFFIX=$recipe FBSHA1=1
;; ;;
win32-mingworg) win32-mingworg)
make bindist DISABLE_DOCS=1 FBPACKSUFFIX=-mingworg make bindist DISABLE_DOCS=1 FBPACKSUFFIX=-mingworg FBSHA1=1
make bindist ENABLE_STANDALONE=1 FBPACKSUFFIX=-mingworg make bindist ENABLE_STANDALONE=1 FBPACKSUFFIX=-mingworg FBSHA1=1
;; ;;
esac esac
cd .. cd ..
# Only build the installer, if we are also
# building the default package
if [ -z "$recipe" ]; then
if [ "$target" = win32 ]; then if [ "$target" = win32 ]; then
cd fbc/contrib/nsis-installer cd fbc/contrib/nsis-installer
cp ../../FreeBASIC-*-win32.zip . cp ../../FreeBASIC-*-win32.zip .
make make
cd ../../.. cd ../../..
cp fbc/contrib/nsis-installer/FreeBASIC-*-win32.exe ../output cp fbc/contrib/nsis-installer/FreeBASIC-*-win32.exe ../output
fi fi
fi
cp fbc/*.zip fbc/*.7z ../output cp fbc/*.zip fbc/*.7z ../output
cp fbc/contrib/manifest/fbc-$target.lst ../output cp fbc/contrib/manifest/fbc-$target$recipe.lst ../output
cp fbc/contrib/manifest/FreeBASIC-$target.lst ../output cp fbc/contrib/manifest/FreeBASIC-$target$recipe.lst ../output
export PATH="$origPATH" export PATH="$origPATH"
cd .. cd ..
} }
case $fbtarget in case $fbtarget in
dos) dosbuild;; dos) dosbuild;;
linux*) linuxbuild | tee log.txt 2>&1;; linux*) linuxbuild | tee log.txt 2>&1;;
win32|win64) windowsbuild | tee log.txt 2>&1;; win32|win64) windowsbuild | tee log.txt 2>&1;;
esac esac
 End of changes. 27 change blocks. 
36 lines changed or deleted 114 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)