You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
56 lines
1.5 KiB
56 lines
1.5 KiB
--- |
|
name: "protobuf-win32" |
|
suites: |
|
- "precise" |
|
architectures: |
|
- "amd64" |
|
packages: |
|
- "mingw-w64" |
|
- "g++-mingw-w64" |
|
- "zip" |
|
- "faketime" |
|
reference_datetime: "2013-04-15 00:00:00" |
|
remotes: [] |
|
files: |
|
- "protobuf-2.5.0.tar.bz2" |
|
script: | |
|
# |
|
export TZ=UTC |
|
INDIR=$HOME/build |
|
OPTFLAGS="-O2" |
|
# Integrity Check |
|
echo "13bfc5ae543cf3aa180ac2485c0bc89495e3ae711fc6fab4f8ffe90dfb4bb677 protobuf-2.5.0.tar.bz2" | sha256sum -c |
|
|
|
for BITS in 32 64; do # for architectures |
|
# |
|
INSTALLPREFIX=$HOME/staging${BITS} |
|
BUILDDIR=$HOME/build${BITS} |
|
if [ "$BITS" == "32" ]; then |
|
HOST=i686-w64-mingw32 |
|
else |
|
HOST=x86_64-w64-mingw32 |
|
fi |
|
# |
|
mkdir -p $INSTALLPREFIX $BUILDDIR |
|
cd $BUILDDIR |
|
# |
|
tar xjf $INDIR/protobuf-2.5.0.tar.bz2 |
|
cd protobuf-2.5.0 |
|
# First: build a native (linux) protoc |
|
./configure --enable-shared=no --disable-dependency-tracking |
|
make |
|
mkdir -p $INSTALLPREFIX/host/bin |
|
cp src/protoc $INSTALLPREFIX/host/bin |
|
# Now recompile with the mingw cross-compiler: |
|
make distclean |
|
./configure --prefix=$INSTALLPREFIX --enable-shared=no --disable-dependency-tracking --with-protoc=$INSTALLPREFIX/host/bin/protoc --host=$HOST CXXFLAGS="-frandom-seed=11 ${OPTFLAGS}" |
|
export LD_PRELOAD=/usr/lib/faketime/libfaketime.so.1 |
|
export FAKETIME=$REFERENCE_DATETIME |
|
make |
|
make install |
|
# |
|
cd $INSTALLPREFIX |
|
find include lib host | sort | zip -@ $OUTDIR/protobuf-win$BITS-2.5.0-gitian-r4.zip |
|
unset LD_PRELOAD |
|
unset FAKETIME |
|
done # for BITS in
|
|
|