Overview
| Comment: | Updated build procedure to use a common handler |
|---|---|
| Downloads: | Tarball | ZIP archive | SQL archive |
| Timelines: | family | ancestors | descendants | both | trunk |
| Files: | files | file ages | folders |
| SHA1: |
6305420046e3d70154c2eb97811bb28e |
| User & Date: | rkeene on 2011-07-06 02:03:56 |
| Other Links: | manifest | tags |
Context
|
2011-07-06
| ||
| 02:15 | Fixed issue with dbus-tcl putting files in weird places Updated to clean-up "out" directories up run check-in: 32e6a2e492 user: rkeene tags: trunk | |
| 02:03 | Updated build procedure to use a common handler check-in: 6305420046 user: rkeene tags: trunk | |
|
2011-06-30
| ||
| 00:29 | Corrected typo check-in: 0fb44ad541 user: rkeene tags: trunk | |
Changes
Modified server/buildpkgs/Tclx/build.sh from [d5a82463ec] to [8402b3d3d2].
1 2 | #! /bin/bash | < < | < < < < < < < < < | | > > > > | > > < < < < < < < < | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
#! /bin/bash
# Define parameters
VERS=8.4
SRC="src/tclx${VERS}.tar.bz2"
SRCURL="http://sourceforge.net/projects/tclx/files/TclX/${VERS}.0/tclx${VERS}.tar.bz2/download"
BUILDDIR="tclx${VERS}"
export VERS SRC SRCURL BUILDDIR
# Load common functions
source ../common.sh
# Do not build if the "tcl" platform has been requested
not_platforms 'tcl'
# Download source
download_src
(
rm -rf build
mkdir build
cd build/ || exit 1
bzip2 -dc "../${SRC}" | tar -xf -
cd "${BUILDDIR}" || exit 1
cat << \__EOF__ | patch -p1
--- tclx8.4/configure.relid 2006-02-03 16:13:25.000000000 -0500
|
| ︙ | ︙ |
Modified server/buildpkgs/build_all.sh from [4d38f54be3] to [9154479c58].
| ︙ | ︙ | |||
26 27 28 29 30 31 32 |
rm -rf tcl/build tcl/inst
rm -f platform.magic.*
if [ "${DISTCLEAN}" = "1" ]; then
rm -rf tcl
fi
if [ "${CLEANONLY}" = "0" ]; then
| > > | > > | < | | | | | | | | | | | | | | | | | | | > | > > | | | | | | | | | | | | | | > > | | > | > > | | | | | | | | | < | < | < < < < < < < < < < < < < | < | | | | | | | | | | | | | > > > > > > > > | | 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 |
rm -rf tcl/build tcl/inst
rm -f platform.magic.*
if [ "${DISTCLEAN}" = "1" ]; then
rm -rf tcl
fi
if [ "${CLEANONLY}" = "0" ]; then
PROJROOTDIR="$(pwd)"
export PROJROOTDIR
for TCLVERS in 8.5.9 8.4.19; do
TCLSHORTVERS="$(echo "${TCLVERS}" | cut -f 1-2 -d '.')"
TCLPRIVATE="$(pwd)/tcl/build/tcl${TCLVERS}"
TCLINSTDIR="$(pwd)/tcl/inst-${TCLSHORTVERS}"
export TCLVERS TCLPRIVATE TCLINSTDIR
mkdir tcl tcl/build >/dev/null 2>/dev/null
if [ ! -f "tcl/src/tcl${TCLVERS}.tar.gz" ]; then
mkdir tcl/src >/dev/null 2>/dev/null
wget -o /dev/null -O "tcl/src/tcl${TCLVERS}.tar.gz" "http://prdownloads.sourceforge.net/tcl/tcl${TCLVERS}-src.tar.gz"
fi
echo "Building Tcl ${TCLVERS}"
(
mkdir tcl/build >/dev/null 2>/dev/null
cd tcl/build || exit 1
gzip -dc "../src/tcl${TCLVERS}.tar.gz" | tar -xf -
# DDE and Reg can fail to compile, but we don't care
echo '' > "${TCLPRIVATE}/win/tclWinDde.c"
echo '' > "${TCLPRIVATE}/win/tclWinReg.c"
for dir in unix win macosx; do
cd "${TCLPRIVATE}/${dir}" || exit 1
echo " Executing: ./configure --enable-threads ${CONFIGUREEXTRA} --prefix=\"${TCLINSTDIR}\""
./configure --enable-threads ${CONFIGUREEXTRA} --prefix="${TCLINSTDIR}"
echo " Executing: ${MAKE:-make}"
${MAKE:-make} || continue
echo " Executing: ${MAKE:-make} install"
${MAKE:-make} install || break
LD_LIBRARY_PATH=".:${LD_LIBRARY_PATH}"
LD_RUN_PATH=".:${LD_RUN_PATH}"
export LD_LIBRARY_PATH LD_RUN_PATH
file tclsh tclsh*.exe 2>/dev/null | grep -iv 'No such file' > "${PROJROOTDIR}/platform.magic.file"
if [ -f tclsh*.exe ]; then
echo 'puts "$::tcl_platform(os)"' | ./tclsh*.exe > "${PROJROOTDIR}/platform.magic.os" 2>/dev/null
else
echo 'puts "$::tcl_platform(os)"' | ./tclsh > "${PROJROOTDIR}/platform.magic.os" 2>/dev/null
fi
echo "${dir}" > "${PROJROOTDIR}/platform.magic.platform"
pwd > "${PROJROOTDIR}/platform.magic.dir"
break
done
exit 0
) > "tcl/build/build-${TCLVERS}.log" 2>&1 || (
echo "Failed to build Tcl. See \"./tcl/build/build-${TCLVERS}.log\"" >&2
echo 'Aborting.' >&2
exit 1
) || exit 1
(
TCLBUILDDIR="$(cat "${PROJROOTDIR}/platform.magic.dir")"
export TCLBUILDDIR
if [ -d "${TCLINSTDIR}" -a -f "${TCLINSTDIR}/lib/tclConfig.sh" ]; then
TCLCONFIGDIR="${TCLINSTDIR}/lib"
elif [ -d "${TCLBUILDDIR}" -a -f "${TCLBUILDDIR}/tclConfig.sh" ]; then
TCLCONFIGDIR="${TCLBUILDDIR}"
else
echo 'Unable to find appropriate tclConfig.sh, aborting' >&2
exit 1
fi
ADDFLAGS=""
if [ -n "${TCLPRIVATE}" ]; then
ADDFLAGS="${ADDFLAGS} -I${TCLPRIVATE} -I${TCLPRIVATE}/generic"
fi
if [ -n "${TCLBUILDDIR}" ]; then
ADDFLAGS="${ADDFLAGS} -I${TCLBUILDDIR}"
fi
CFLAGS="${ADDFLAGS} ${CFLAGS}"
CPPFLAGS="${ADDFLAGS} ${CPPFLAGS}"
unset TCLVERS
unset ADDFLAGS
export TCLBUILDDIR TCLCONFIGDIR TCLPRIVATE CFLAGS CPPFLAGS
rm -f "${PROJROOTDIR}/platform.magic.env-${TCLSHORTVERS}"
set > "${PROJROOTDIR}/platform.magic.env-${TCLSHORTVERS}"
export >> "${PROJROOTDIR}/platform.magic.env-${TCLSHORTVERS}"
)
done
rm -f "${PROJROOTDIR}/platform.magic.dir"
fi
# Determine platform
if [ -z "${FORCE_PLATFORM}" ]; then
PLATFORM="$(./platform)"
else
PLATFORM="${FORCE_PLATFORM}"
fi
export PLATFORM
# Build all appropriate directories
faileddirs=""
if [ -z "${DIRS}" ]; then
DIRS="`echo */`"
PKGHASHCODE=''
else
PKGHASHCODE="$((echo "${DIRS}" | tr ' ' "\n" | sort | tr "\n" ' '; echo ) | sed 's@[/ ]@@g' | openssl sha1 | awk '{ print $1 }')"
fi
for dir in ${DIRS}; do
export dir
if [ ! -f "${dir}/build.sh" ]; then
continue
fi
|
| ︙ | ︙ | |||
175 176 177 178 179 180 181 182 183 184 185 186 187 188 |
cp "${dir}/out/${PLATFORM}/build.log" "${dir}/failed-${PLATFORM}-`hostname`.log"
rm -rf "${dir}/out"
faileddirs="${faileddirs} ${dir}"
echo "Failed to build ${dir}"
fi
done
# Cleanup is done at this point
if [ "${CLEANONLY}" = "1" ]; then
exit 0
fi
# Let the user know what failed to build
| > > > | 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 |
cp "${dir}/out/${PLATFORM}/build.log" "${dir}/failed-${PLATFORM}-`hostname`.log"
rm -rf "${dir}/out"
faileddirs="${faileddirs} ${dir}"
echo "Failed to build ${dir}"
fi
done
# Clean magic-related files
rm -f platform.magic.*
# Cleanup is done at this point
if [ "${CLEANONLY}" = "1" ]; then
exit 0
fi
# Let the user know what failed to build
|
| ︙ | ︙ |
Added server/buildpkgs/common.sh version [0a6dc891a3].
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 |
#! /bin/bash
function setup_tcl85 () {
source "${PROJROOTDIR}/platform.magic.env-8.5" 2>/dev/null
}
function setup_tcl84 () {
source "${PROJROOTDIR}/platform.magic.env-8.4" 2>/dev/null
}
function not_platforms () {
local platform
for platform in "$@"; do
if [ "${PLATFORM}" = "${platform}" ]; then
rm -rf out
exit 0
fi
done
}
function only_platforms () {
local platform
for platform in "$@"; do
if [ "${PLATFORM}" = "${platform}" ]; then
return 0
fi
done
rm -rf out
exit 0
}
function download () {
local url file
file="$1"
url="$2"
if [ -s "${file}" ]; then
return 0
fi
rm -f "${file}.tmp" "${file}"
wget -O "${file}.tmp" "${url}" || return 1
mv "${file}.tmp" "${file}"
}
function download_src () {
if [ ! -f "${SRC}" -a -n "${SRC}" -a -n "${SRCURL}" ]; then
mkdir -p "$(dirname "${SRC}")" >/dev/null 2>/dev/null
download "${SRC}" "${SRCURL}" || exit 1
fi
}
WORKDIR="${TMPDIR:-/tmp}/tcl-buildpkgs-$$${RANDOM}${RANDOM}${RANDOM}"
PLATDIR="$(pwd)/out/${PLATFORM}"
export WORKDIR PLATDIR
setup_tcl84
|
Modified server/buildpkgs/dbus-tcl/build.sh from [c0964a4cb2] to [1141247fa7].
1 2 | #! /bin/bash | < < | < < < < < < < < < < < < | > > | > > | > > < < > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
#! /bin/bash
# Define parameters
VERS=1.0
SRC="src/dbus-tcl-${VERS}.tar.gz"
SRCURL="http://sourceforge.net/projects/dbus-tcl/files/dbus-tcl/${VERS}/dbus-tcl${VERS}.tar.gz/download"
BUILDDIR="dbus-tcl${VERS}"
export VERS SRC SRCURL BUILDDIR
# Load common functions
source ../common.sh
# Do not build if the "tcl" platform has been requested
not_platforms 'tcl'
# Require Tcl 8.5 to build
setup_tcl85
# Download source
download_src
# Build package
(
rm -rf build
mkdir -p "${PLATDIR}" >/dev/null 2>/dev/null
mkdir build
cd build/ || exit 1
gzip -dc "../${SRC}" | tar -xf -
cd "${BUILDDIR}" || exit 1
bash ./configure --enable-shared --with-tcl="${TCLCONFIGDIR}" --prefix="${PLATDIR}" --libdir="${PLATDIR}" --bindir="${PLATDIR}" ${CONFIGUREEXTRA}
${MAKE:-make} || exit 1
${MAKE:-make} install-binaries PKG_DIR='' || exit 1
rm -f "${PLATDIR}"/*.a
) || exit 1
# Create metadata
../create_teapot "${PLATDIR}/teapot.txt" "dbus-tcl" "${VERS}" "${SRCURL}" "${PLATFORM}" "Tcl 8.5" "The DBus-Tcl project provides a Tcl interface to the dbus message bus system. It contains packages that allow Tcl programs to send and receive dbus signals, as well as invoke and respond to dbus method calls. http://dbus-tcl.sourceforge.net/"
exit 0
|
Modified server/buildpkgs/dict/build.sh from [ee8fedb377] to [11168404cf].
1 2 | #! /bin/bash | < < | < < < < < < < < < < < < < < < < < < < < < | > > | > > | > > < < > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
#! /bin/bash
# Define parameters
VERS=8.5.2
SRC="src/tclDict-${VERS}.tar.gz"
SRCURL="http://pascal.scheffers.net/software/tclDict-${VERS}.tar.gz"
BUILDDIR="tclDict-${VERS}"
export VERS SRC SRCURL BUILDDIR
# Load common functions
source ../common.sh
# Do not build if the "tcl" platform has been requested
not_platforms 'tcl'
# Require Tcl 8.4 to build
setup_tcl84
# Download source
download_src
(
rm -rf build
mkdir -p "${PLATDIR}" >/dev/null 2>/dev/null
mkdir build
cd build/ || exit 1
|
| ︙ | ︙ |
Modified server/buildpkgs/platform from [f9b9ccb779] to [55d33286bc].
| ︙ | ︙ | |||
58 59 60 61 62 63 64 |
Linux)
GLIBCVERS=$(strings /lib/libc.so.6 | grep '^GLIBC_[0-9][0-9]*\.[0-9]*' | cut -f 2- -d _ | cut -f 1-2 -d . | sed 's@\.@ @g' | sort -n +0 +1 | tail -1 | sed 's@ @\.@g')
case "${CPUPLAT}" in
i?86)
CPUPLAT="ix86"
;;
| | > > < < < < < < < | > > > > > | | 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 |
Linux)
GLIBCVERS=$(strings /lib/libc.so.6 | grep '^GLIBC_[0-9][0-9]*\.[0-9]*' | cut -f 2- -d _ | cut -f 1-2 -d . | sed 's@\.@ @g' | sort -n +0 +1 | tail -1 | sed 's@ @\.@g')
case "${CPUPLAT}" in
i?86)
CPUPLAT="ix86"
;;
sun4m)
CPUPLAT="sparc"
;;
esac
echo "linux-glibc${GLIBCVERS}-${CPUPLAT}"
;;
SunOS)
SUNMAJVER=$(uname -r | cut -f 1 -d .)
SUNMINVER=$(uname -r | cut -f 2 -d .)
SOLVER="$[${SUNMAJVER} - 3].${SUNMINVER}"
if [ -z "${CPUPLAT}" ]; then
echo 'Unable to determine platform' >&2
exit 1
fi
echo "solaris${SOLVER}-${CPUPLAT}"
;;
HP-UX)
echo "hpux-${CPUPLAT}"
;;
*)
if [ -z "${CPUPLAT}" ]; then
CPUPLAT="`uname -m | dd conv=lcase 2>/dev/null`"
fi
echo "`uname -s | dd conv=lcase 2>/dev/null`-${CPUPLAT}"
;;
esac
|
Modified server/buildpkgs/sqlite3/build.sh from [09724f9222] to [2e77c6d186].
1 2 | #! /bin/bash | < < | < < < < < < < < < < < < | > > | > | | < > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
#! /bin/bash
# Define parameters
VERS=3.7.2
VERSUNDER="$(echo "${VERS}" | sed 's@\.@_@g')"
SRC="src/sqlite-${VERSUNDER}.tar.gz"
SRCURL="http://www.sqlite.org/sqlite-${VERSUNDER}-tea.tar.gz"
BUILDDIR="sqlite${VERS}"
export VERS SRC SRCURL BUILDDIR
# Load common functions
source ../common.sh
# Do not build if the "tcl" platform has been requested
not_platforms 'tcl'
# Download source
download_src
(
rm -rf build
mkdir -p "${PLATDIR}" >/dev/null 2>/dev/null
mkdir build
cd build/ || exit 1
|
| ︙ | ︙ |
Modified server/buildpkgs/tcllib/build.sh from [9be2fc0b9c] to [55c7ca7ba6].
1 2 | #! /bin/bash | < < < < < < < < < < < < < < < | > > | < > > < < > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
#! /bin/bash
VERS=1.13
SRC="src/tcllib-${VERS}.tar.gz"
SRCURL="http://sourceforge.net/projects/tcllib/files/tcllib/${VERS}/tcllib-${VERS}.tar.gz/download"
BUILDDIR="tcllib-${VERS}"
export VERS SRC SRCURL BUILDDIR
# Load common functions
source ../common.sh
# Do not build if the "tcl" platform has NOT been requested
only_platforms 'tcl'
# Download source
download_src
rm -rf "${WORKDIR}" >/dev/null 2>/dev/null
mkdir -p "${WORKDIR}" || exit 1
retval=0
(
rm -rf build
|
| ︙ | ︙ |
Modified server/buildpkgs/tclpkcs11/build.sh from [273f6727b7] to [7eb1b5631b].
1 2 | #! /bin/bash | < < | < < < < < < < < < < < < | > > | < > > < < > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
#! /bin/bash
# Define parameters
VERS=0.9.9
SRC="src/tclpkcs11-${VERS}.tar.gz"
SRCURL="http://www.rkeene.org/devel/tclpkcs11-${VERS}.tar.gz"
BUILDDIR="tclpkcs11-${VERS}"
export VERS SRC SRCURL BUILDDIR
# Load common functions
source ../common.sh
# Do not build if the "tcl" platform has been requested
not_platforms 'tcl'
# Download source
download_src
(
rm -rf build
mkdir -p "${PLATDIR}" >/dev/null 2>/dev/null
mkdir build
cd build/ || exit 1
|
| ︙ | ︙ |
Modified server/buildpkgs/tls/build.sh from [ce188ee01b] to [6e15606227].
1 2 | #! /bin/bash | < < | < < < < < < < < < < < < | > > | > | | < > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
#! /bin/bash
# Define parameters
VERS=1.6
SRC="src/tls${VERS}-src.tar.gz"
SRCURL="http://sourceforge.net/projects/tls/files/tls/${VERS}/tls${VERS}-src.tar.gz/download"
BUILDDIR="tls${VERS}"
PATCHDIR="$(pwd)/patches"
export VERS SRC SRCURL BUILDDIR PATCHDIR
# Load common functions
source ../common.sh
# Do not build if the "tcl" platform has been requested
not_platforms 'tcl'
# Download source
download_src
(
rm -rf build
mkdir build
cd build/ || exit 1
gzip -dc "../${SRC}" | tar -xf -
|
| ︙ | ︙ |