d/gcc-mingw32: l/mingw32-libs: Splitted the old d/mingw32 package.slackware-14.2
parent
31ef134d97
commit
48285bd876
9 changed files with 439 additions and 0 deletions
@ -0,0 +1 @@ |
||||
7e930435c47991c4070b1c74b010350e4669011f binutils-2.19.1-src.tar.gz |
@ -0,0 +1,115 @@ |
||||
#!/bin/bash |
||||
# Build script for Slackware |
||||
# Copyright (C) 2009 Damien Goutte-Gattat |
||||
# |
||||
# Redistribution and use of this script, with or without modifications, |
||||
# is permitted provided that the following conditions are met: |
||||
# |
||||
# 1. Redistributions of this script must retain the above copyright |
||||
# notice, this list of conditions and the following disclaimer. |
||||
# |
||||
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AS IS'' AND ANY EXPRESS OR |
||||
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
||||
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
||||
# DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, |
||||
# INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES |
||||
# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR |
||||
# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) |
||||
# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, |
||||
# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING |
||||
# IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
||||
# POSSIBILITY OF SUCH DAMAGE. |
||||
# |
||||
# Contact: Damien Goutte-Gattat <damien.goutte-gattat@e.ujf-grenoble.fr> |
||||
# |
||||
# Latest binutils-mingw32 sourcecode is available at: <http://www.mingw.org/>. |
||||
|
||||
# Source package infos |
||||
NAMESRC=${NAMESRC:-binutils} |
||||
VERSION=${VERSION:-2.19.1} |
||||
ARCHIVE=${ARCHIVE:-$NAMESRC-$VERSION-src.tar.gz} |
||||
WGET=${WGET:-http://ovh.dl.sourceforge.net/mingw/$ARCHIVE} |
||||
|
||||
# Built package infos |
||||
NAMETGZ=${NAMETGZ:-binutils-mingw32} |
||||
BUILD=${BUILD:-1GGD} |
||||
ARCH=${ARCH:-i486} |
||||
TARGET=${TARGET:-i686-pc-mingw32} |
||||
|
||||
# Directories |
||||
TMP=${TMP:-/tmp} |
||||
OUT=${OUT:-$TMP/build} |
||||
PKG=${PKG:-$OUT/$NAMETGZ} |
||||
CWD=$(pwd) |
||||
|
||||
set -e # Quit if a command returns non-zero |
||||
|
||||
# Sanity checks |
||||
if [ $UID -eq 0 ]; then |
||||
echo "You should NOT run this script as ROOT!" |
||||
exit 1 |
||||
fi |
||||
if [ ! -d $TMP ]; then |
||||
echo "$TMP does not exist or is not a directory!" |
||||
exit 1 |
||||
fi |
||||
|
||||
# Compilation flags |
||||
case "$ARCH" in |
||||
i?86) |
||||
CPUOPT="-O2 -march=$ARCH -mtune=i686" |
||||
;; |
||||
*) |
||||
CPUOPT="-O2" |
||||
;; |
||||
esac |
||||
|
||||
# Get and verify the source archive |
||||
if [ ! -r $ARCHIVE ]; then |
||||
wget "$WGET" |
||||
fi |
||||
sha1sum -c $ARCHIVE.sha1 |
||||
NAME=$(tar ft $ARCHIVE | head -n 1 | cut -d / -f 1) |
||||
|
||||
# Compile |
||||
cd $TMP |
||||
echo "Building $ARCHIVE..." |
||||
tar xf $CWD/$ARCHIVE |
||||
cd $NAME |
||||
CFLAGS=$CPUOPT \ |
||||
./configure \ |
||||
--prefix=/opt/mingw32 \ |
||||
--target=$TARGET \ |
||||
--with-gcc \ |
||||
--with-gnu-as \ |
||||
--with-gnu-ld \ |
||||
--disable-nls \ |
||||
--disable-debug |
||||
make -j 3 |
||||
make install DESTDIR=$PKG |
||||
|
||||
# Strip binaries |
||||
find $PKG | xargs file | grep "ELF 32-bit LSB" | cut -d : -f 1 | \ |
||||
xargs strip --strip-unneeded 2> /dev/null |
||||
|
||||
# Delete man and info pages, since we already have those of |
||||
# the native binutils in /usr. |
||||
rm -rf $PKG/opt/mingw32/{info,man} |
||||
|
||||
# Copy slack-desc file |
||||
install -D -m 644 $CWD/slack-desc $PKG/install/slack-desc |
||||
|
||||
# Package the tree |
||||
cd $PKG |
||||
mkdir -p $OUT |
||||
PACKAGING=" |
||||
chown root:root . -R |
||||
/sbin/makepkg -l y -c n $OUT/$NAMETGZ-$VERSION-$ARCH-$BUILD.tgz |
||||
rm -rf $PKG |
||||
rm -rf $TMP/$NAME |
||||
" |
||||
if type -p fakeroot ; then |
||||
echo "$PACKAGING" | fakeroot |
||||
else |
||||
su -c "$PACKAGING" |
||||
fi |
@ -0,0 +1,12 @@ |
||||
|-----handy-ruler------------------------------------------------------| |
||||
binutils-mingw32: binutils-mingw32 (GNU binary development tools for Win32) |
||||
binutils-mingw32: |
||||
binutils-mingw32: Binutils is a collection of binary utilities. It includes |
||||
binutils-mingw32: "as" (the portable GNU assembler), "ld" (the GNU linker), |
||||
binutils-mingw32: and other utilities for creating and working with binary |
||||
binutils-mingw32: programs. |
||||
binutils-mingw32: |
||||
binutils-mingw32: This package installs a cross-compiled version of the |
||||
binutils-mingw32: binutils to target the Win32 platform. |
||||
binutils-mingw32: |
||||
binutils-mingw32: |
@ -0,0 +1,2 @@ |
||||
75d59049f26dc62f3732d11abbf056efc7bc8e95 gcc-core-3.4.5-20060117-2-src.tar.gz |
||||
edafa412d86085cf39f0db1c19a6ea2890d05946 gcc-g++-3.4.5-20060117-2-src.tar.gz |
@ -0,0 +1,128 @@ |
||||
#!/bin/bash |
||||
# Build script for Slackware |
||||
# Copyright (C) 2009 Damien Goutte-Gattat |
||||
# |
||||
# Redistribution and use of this script, with or without modifications, |
||||
# is permitted provided that the following conditions are met: |
||||
# |
||||
# 1. Redistributions of this script must retain the above copyright |
||||
# notice, this list of conditions and the following disclaimer. |
||||
# |
||||
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AS IS'' AND ANY EXPRESS OR |
||||
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
||||
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
||||
# DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, |
||||
# INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES |
||||
# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR |
||||
# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) |
||||
# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, |
||||
# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING |
||||
# IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
||||
# POSSIBILITY OF SUCH DAMAGE. |
||||
# |
||||
# Contact: Damien Goutte-Gattat <damien.goutte-gattat@e.ujf-grenoble.fr> |
||||
# |
||||
# Latest gcc-mingw32 sourcecode is available at: <http://www.mingw.org/>. |
||||
# |
||||
# Depends: l/mingw32-libs |
||||
|
||||
# Source package infos |
||||
VERSION=${VERSION:-3.4.5} |
||||
BASEURL=${BASEURL:-http://ovh.dl.sourceforge.net/mingw} |
||||
|
||||
# Built package infos |
||||
NAMETGZ=${NAMETGZ:-gcc-mingw32} |
||||
BUILD=${BUILD:-1GGD} |
||||
ARCH=${ARCH:-i486} |
||||
TARGET=${TARGET:-i686-pc-mingw32} |
||||
|
||||
# Directories |
||||
TMP=${TMP:-/tmp} |
||||
OUT=${OUT:-$TMP/build} |
||||
PKG=${PKG:-$OUT/$NAMETGZ} |
||||
CWD=$(pwd) |
||||
|
||||
set -e # Quit if a command returns non-zero |
||||
|
||||
# Sanity checks |
||||
if [ $UID -eq 0 ]; then |
||||
echo "You should NOT run this script as ROOT!" |
||||
exit 1 |
||||
fi |
||||
if [ ! -d $TMP ]; then |
||||
echo "$TMP does not exist or is not a directory!" |
||||
exit 1 |
||||
fi |
||||
|
||||
# Compilation flags |
||||
case "$ARCH" in |
||||
i?86) |
||||
CPUOPT="-O2 -march=$ARCH -mtune=i686" |
||||
;; |
||||
*) |
||||
CPUOPT="-O2" |
||||
;; |
||||
esac |
||||
|
||||
# Get and verify the source archive |
||||
for archive in $(cut -d' ' -f3 checksums); do |
||||
if [ ! -r $archive ]; then |
||||
wget "$BASEURL/$archive" |
||||
fi |
||||
done |
||||
sha1sum -c checksums |
||||
|
||||
# Extract everything |
||||
mkdir -p $TMP/mingw32/stage2 |
||||
cd $TMP/mingw32 |
||||
for archive in $(cut -d' ' -f3 $CWD/checksums); do |
||||
tar xf $CWD/$archive |
||||
done |
||||
|
||||
# Compile stage 2 GCC |
||||
cd stage2 |
||||
CFLAGS="$CPUOPT -fomit-frame-pointer" \ |
||||
$TMP/mingw32/gcc-*/configure \ |
||||
--prefix=/opt/mingw32 \ |
||||
--target=$TARGET \ |
||||
--enable-languages=c,c++ \ |
||||
--disable-debug \ |
||||
--disable-nls \ |
||||
--with-gcc \ |
||||
--with-gnu-as \ |
||||
--with-gnu-ld \ |
||||
--enable-sjlj-exceptions \ |
||||
--enable-threads=win32 \ |
||||
--disable-win32-registry \ |
||||
--with-sysroot=/opt/mingw32 |
||||
make -j 3 |
||||
make install DESTDIR=$PKG |
||||
|
||||
# Strip binaries |
||||
find $PKG | xargs file | grep "ELF 32-bit LSB" | cut -d : -f 1 | \ |
||||
xargs strip --strip-unneeded 2> /dev/null |
||||
|
||||
# libiberty is already installed by binutils-mingw32 |
||||
rm $PKG/opt/mingw32/lib/libiberty.a |
||||
|
||||
# Remove man and info pages (we already have those of the |
||||
# native GCC in /usr) |
||||
rm -rf $PKG/opt/mingw32/{info,man} |
||||
|
||||
# Copy slack-desc file |
||||
install -D -m 644 $CWD/slack-desc $PKG/install/slack-desc |
||||
|
||||
# Package the tree |
||||
cd $PKG |
||||
mkdir -p $OUT |
||||
PACKAGING=" |
||||
chown root:root . -R |
||||
/sbin/makepkg -l y -c n $OUT/$NAMETGZ-$VERSION-$ARCH-$BUILD.tgz |
||||
rm -rf $PKG |
||||
rm -rf $TMP/mingw32 |
||||
" |
||||
if type -p fakeroot ; then |
||||
echo "$PACKAGING" | fakeroot |
||||
else |
||||
su -c "$PACKAGING" |
||||
fi |
@ -0,0 +1,12 @@ |
||||
|-----handy-ruler------------------------------------------------------| |
||||
gcc-mingw32: gcc-mingw32 (Win32 cross-compiler) |
||||
gcc-mingw32: |
||||
gcc-mingw32: This package installs a GNU/Linux-based cross-compiler that |
||||
gcc-mingw32: targets the Win32 platform. |
||||
gcc-mingw32: |
||||
gcc-mingw32: The compiler supports the C and C++ languages. |
||||
gcc-mingw32: |
||||
gcc-mingw32: |
||||
gcc-mingw32: |
||||
gcc-mingw32: |
||||
gcc-mingw32: |
@ -0,0 +1,3 @@ |
||||
75d59049f26dc62f3732d11abbf056efc7bc8e95 gcc-core-3.4.5-20060117-2-src.tar.gz |
||||
c75afe81bffb2cb7b924dcae3b5c76921d32f297 w32api-3.13-mingw32-src.tar.gz |
||||
6e7079968a3a7a819a7dd482950eddd6483c0ef6 mingwrt-3.15.2-mingw32-src.tar.gz |
@ -0,0 +1,154 @@ |
||||
#!/bin/bash |
||||
# Build script for Slackware |
||||
# Copyright (C) 2009 Damien Goutte-Gattat |
||||
# |
||||
# Redistribution and use of this script, with or without modifications, |
||||
# is permitted provided that the following conditions are met: |
||||
# |
||||
# 1. Redistributions of this script must retain the above copyright |
||||
# notice, this list of conditions and the following disclaimer. |
||||
# |
||||
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AS IS'' AND ANY EXPRESS OR |
||||
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
||||
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
||||
# DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, |
||||
# INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES |
||||
# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR |
||||
# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) |
||||
# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, |
||||
# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING |
||||
# IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
||||
# POSSIBILITY OF SUCH DAMAGE. |
||||
# |
||||
# Contact: Damien Goutte-Gattat <damien.goutte-gattat@e.ujf-grenoble.fr> |
||||
# |
||||
# Latest mingw32-libs sourcecode is available at: <http://www.mingw.org/>. |
||||
# |
||||
# Depends: d/mingw32-binutils |
||||
|
||||
# Source package infos |
||||
VERSION=${VERSION:-3.15.2} # MinGW runtime's version |
||||
BASEURL=${BASEURL:-http://ovh.dl.sourceforge.net/mingw} |
||||
|
||||
# Built package infos |
||||
NAMETGZ=${NAMETGZ:-mingw32-libs} |
||||
BUILD=${BUILD:-1GGD} |
||||
ARCH=${ARCH:-i486} |
||||
TARGET=${TARGET:-i686-pc-mingw32} |
||||
|
||||
# Directories |
||||
TMP=${TMP:-/tmp} |
||||
OUT=${OUT:-$TMP/build} |
||||
PKG=${PKG:-$OUT/$NAMETGZ} |
||||
CWD=$(pwd) |
||||
|
||||
set -e # Quit if a command returns non-zero |
||||
|
||||
# Sanity checks |
||||
if [ $UID -eq 0 ]; then |
||||
echo "You should NOT run this script as ROOT!" |
||||
exit 1 |
||||
fi |
||||
if [ ! -d $TMP ]; then |
||||
echo "$TMP does not exist or is not a directory!" |
||||
exit 1 |
||||
fi |
||||
|
||||
# Compilation flags |
||||
case "$ARCH" in |
||||
i?86) |
||||
CPUOPT="-O2 -march=$ARCH -mtune=i686" |
||||
;; |
||||
*) |
||||
CPUOPT="-O2" |
||||
;; |
||||
esac |
||||
|
||||
# Get and verify the source archive |
||||
for archive in $(cut -d' ' -f3 checksums); do |
||||
if [ ! -r $archive ]; then |
||||
wget "$BASEURL/$archive" |
||||
fi |
||||
done |
||||
sha1sum -c checksums |
||||
|
||||
# Extract everything |
||||
mkdir -p $TMP/mingw32 |
||||
cd $TMP/mingw32 |
||||
tar xf $CWD/gcc-core-*.tar.gz |
||||
tar xf $CWD/w32api-*.tar.gz |
||||
tar xf $CWD/mingwrt-*.tar.gz |
||||
|
||||
# Compile 1st stage GCC |
||||
mkdir stage1 stage1-build |
||||
cp -a w32api-*/include stage1/ |
||||
cp -a mingwrt-*/include stage1/ |
||||
ln -s . stage1/usr |
||||
ln -s . stage1/local |
||||
cd stage1-build |
||||
CFLAGS="$CPUOPT -fomit-frame-pointer" \ |
||||
$TMP/mingw32/gcc-*/configure \ |
||||
--prefix=$TMP/mingw32/stage1 \ |
||||
--target=$TARGET \ |
||||
--enable-languages=c \ |
||||
--disable-debug \ |
||||
--disable-nls \ |
||||
--with-gcc \ |
||||
--with-as=/opt/mingw32/bin/i686-pc-mingw32-as \ |
||||
--with-ld=/opt/mingw32/bin/i686-pc-mingw32-ld \ |
||||
--enable-sjlj-exceptions \ |
||||
--enable-threads=win32 \ |
||||
--disable-win32-registry \ |
||||
--with-sysroot=$TMP/mingw32/stage1 |
||||
make -j 3 |
||||
make install |
||||
export PATH=$PATH:$TMP/mingw32/stage1/bin |
||||
|
||||
# Compile Win32 API libraries |
||||
cd $TMP/mingw32/w32api-* |
||||
mkdir build && cd build |
||||
CFLAGS="$CPUOPT" \ |
||||
../configure \ |
||||
--prefix=/opt/mingw32 \ |
||||
--host=$TARGET \ |
||||
--build=$ARCH-pc-linux-gnu |
||||
make -j 3 |
||||
make install prefix=$PKG/opt/mingw32 |
||||
|
||||
# Compile MinGW runtime |
||||
cd $TMP/mingw32/mingwrt-* |
||||
mkdir build && cd build |
||||
CFLAGS="-I$PKG/opt/mingw32/include $CPUOPT" \ |
||||
../configure \ |
||||
--prefix=/opt/mingw32 \ |
||||
--host=$TARGET \ |
||||
--build=$ARCH-pc-linux-gnu |
||||
sed -i "s:-Lmingwex:-L$PKG/opt/mingw32/lib -Lmingwex:" Makefile |
||||
make -j 3 |
||||
make install prefix=$PKG/opt/mingw32 |
||||
|
||||
# Simulate a standard tree under /opt/mingw32 |
||||
# (where GCC will search for headers and libraries) |
||||
ln -s . $PKG/opt/mingw32/usr |
||||
ln -s . $PKG/opt/mingw32/local |
||||
|
||||
# Remove man pages and docs |
||||
rm -rf $PKG/opt/mingw32/{share,doc} |
||||
|
||||
# Copy slack-desc file |
||||
install -D -m 644 $CWD/slack-desc $PKG/install/slack-desc |
||||
|
||||
# Package the tree |
||||
cd $PKG |
||||
mkdir -p $OUT |
||||
PACKAGING=" |
||||
chown root:root . -R |
||||
/sbin/makepkg -l y -c n $OUT/$NAMETGZ-$VERSION-$ARCH-$BUILD.tgz |
||||
rm -rf $PKG |
||||
rm -rf $TMP/mingw32 |
||||
" |
||||
if type -p fakeroot ; then |
||||
echo "$PACKAGING" | fakeroot |
||||
else |
||||
su -c "$PACKAGING" |
||||
fi |
@ -0,0 +1,12 @@ |
||||
|-----handy-ruler------------------------------------------------------| |
||||
mingw32-libs: mingw32-libs (Headers and libraries for MinGW32) |
||||
mingw32-libs: |
||||
mingw32-libs: This package installs the headers and libraries needed to |
||||
mingw32-libs: cross-compile programs targeting the Win32 platform. |
||||
mingw32-libs: |
||||
mingw32-libs: |
||||
mingw32-libs: |
||||
mingw32-libs: |
||||
mingw32-libs: |
||||
mingw32-libs: |
||||
mingw32-libs: |
Loading…
Reference in new issue