Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

executable file 84 lines (75 sloc) 2.264 kb
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 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84
#!/bin/bash
#
# Copyright (c) 2012, Joyent Inc., All rights reserved.
#

for dir in seabios vgabios kvm/test; do
[[ ! -f roms/${dir}/config.mak.tmpl ]] || \
cp roms/${dir}/config.mak.tmpl roms/${dir}/config.mak
done

PNGDIR="${PWD}/libpng-1.5.4"
PNGINC="${PNGDIR}/proto/usr/local/include"
PNGLIB="${PNGDIR}/proto/usr/local/lib"

if [[ ! -d ${PNGDIR} ]]; then
    (curl -k https://download.joyent.com/pub/kvm-cmd/libpng-1.5.4.tar.gz | \
        gtar -zxf -)
    if [[ $? != "0" || ! -d ${PNGDIR} ]]; then
        echo "Failed to get libpng."
        rm -rf ${PNGDIR}
        exit 1
    fi
fi

if [[ ! -e ${PNGLIB}/libpng.a ]]; then
    (cd ${PNGDIR} && \
CC="${CC:-${DESTDIR}/usr/bin/gcc}" \
LDFLAGS="-m64 -L${DESTDIR}/usr/lib/amd64 -L${DESTDIR}/lib/amd64" \
CPPFLAGS="-isystem ${DESTDIR}/usr/include" \
CFLAGS="-m64" ./configure --disable-shared && \
        make && \
        mkdir -p ${PNGDIR}/proto && \
        make DESTDIR=${PNGDIR}/proto install)
fi

echo "==> Running configure"
KVM_DIR="${KVM_DIR:-$(cd `pwd`/../kvm; pwd)}"
CC="${CC:-${DESTDIR}/usr/bin/gcc}"
XCFLAGS="-fno-builtin -I${PNGINC} -isystem ${DESTDIR}/usr/include -msave-args"
XLDFLAGS="-nodefaultlibs -L${PNGLIB} -L${DESTDIR}/usr/lib -L${DESTDIR}/lib"
XLDFLAGS="${XLDFLAGS} -Wl,-zfatal-warnings -Wl,-zassert-deflib"
XLDFLAGS="${XLDFLAGS} -lz -lm -lc"
./configure \
    --cc=$CC \
    --extra-cflags="${XCFLAGS}" \
    --extra-ldflags="${XLDFLAGS}" \
    --prefix=/smartdc \
    --audio-card-list= \
    --audio-drv-list= \
    --disable-bluez \
    --disable-brlapi \
    --disable-curl \
    --enable-debug \
    --enable-kvm \
    --enable-kvm-pit \
    --enable-vnc-png \
    --disable-kvm-device-assignment \
    --disable-sdl \
    --disable-vnc-jpeg \
    --disable-vnc-sasl \
    --disable-vnc-tls \
    --enable-trace-backend=dtrace \
    --kerneldir="$KVM_DIR" \
    --cpu=x86_64

if [[ $? != 0 ]]; then
echo "Failed to configure, bailing"
exit 1
fi


#
# Make sure ctf utilities are in our path
#
KERNEL_SOURCE="${KERNEL_SOURCE:-$(pwd)/../../illumos}"
CTFBINDIR="$KERNEL_SOURCE"/usr/src/tools/proto/root_i386-nd/opt/onbld/bin/i386
export PATH="$PATH:$CTFBINDIR"

if [[ -z "$CONFIGURE_ONLY" ]]; then
echo "==> Make"
V=1 gmake
else
echo "Not running make per-request"
fi
Something went wrong with that request. Please try again.