diff --git a/bootstrap.sh b/bootstrap.sh index 2d4fd59..8cc677b 100755 --- a/bootstrap.sh +++ b/bootstrap.sh @@ -42,6 +42,29 @@ mkdir -p ${PAWPAW_TMPDIR} download pkg-config "${PKG_CONFIG_VERSION}" "https://pkg-config.freedesktop.org/releases" build_host_autoconf pkg-config "${PKG_CONFIG_VERSION}" "--enable-indirect-deps --with-internal-glib --with-pc-path=${TARGET_PKG_CONFIG_PATH}" +# --------------------------------------------------------------------------------------------------------------------- +# file/magic (posix only) + +# if [ "${WIN32}" -eq 0 ]; then +# download file "${FILE_VERSION}" "ftp://ftp.astron.com/pub/file" +# build_autoconf file "${FILE_VERSION}" +# fi + +# --------------------------------------------------------------------------------------------------------------------- +# glib + +if [ -n "${GLIB_VERSION}" ]; then + GLIB_EXTRAFLAGS="" + + if [ "${WIN32}" -eq 0 ]; then + GLIB_EXTRAFLAGS+=" --with-threads=win32" + fi + + download glib ${GLIB_VERSION} "http://caesar.ftp.acc.umu.se/pub/GNOME/sources/glib/${GLIB_MVERSION}" "${GLIB_TAR_EXT}" +# remove_file glib ${GLIB_VERSION} "m4macros/glib-gettext.m4" + build_autoconfgen glib ${GLIB_VERSION} "${GLIB_EXTRAFLAGS}" +fi + # --------------------------------------------------------------------------------------------------------------------- # liblo @@ -55,14 +78,6 @@ download libogg "${LIBOGG_VERSION}" "https://ftp.osuosl.org/pub/xiph/releases/og patch_file libogg "${LIBOGG_VERSION}" "include/ogg/os_types.h" 's/__MACH__/__MACH_SKIP__/' build_autoconf libogg "${LIBOGG_VERSION}" -# --------------------------------------------------------------------------------------------------------------------- -# file/magic (posix only) - -# if [ "${WIN32}" -eq 0 ]; then -# download file "${FILE_VERSION}" "ftp://ftp.astron.com/pub/file" -# build_autoconf file "${FILE_VERSION}" -# fi - # --------------------------------------------------------------------------------------------------------------------- # libvorbis @@ -81,25 +96,6 @@ fi download flac "${FLAC_VERSION}" "https://ftp.osuosl.org/pub/xiph/releases/flac" "tar.xz" build_autoconf flac "${FLAC_VERSION}" "${FLAC_EXTRAFLAGS}" -# --------------------------------------------------------------------------------------------------------------------- -# libsamplerate - -download libsamplerate "${LIBSAMPLERATE_VERSION}" "http://www.mega-nerd.com/SRC" -build_autoconf libsamplerate "${LIBSAMPLERATE_VERSION}" "--disable-fftw --disable-sndfile" - -# --------------------------------------------------------------------------------------------------------------------- -# libsndfile - -download libsndfile "${LIBSNDFILE_VERSION}" "http://www.mega-nerd.com/libsndfile/files" -patch_file libsndfile "${LIBSNDFILE_VERSION}" "configure" 's/ -Wvla//' -build_autoconf libsndfile "${LIBSNDFILE_VERSION}" "--disable-full-suite --disable-alsa --disable-sqlite" - -# --------------------------------------------------------------------------------------------------------------------- -# lv2 - -download lv2 "${LV2_VERSION}" "http://lv2plug.in/spec" "tar.bz2" -build_waf lv2 "${LV2_VERSION}" "--lv2dir=${PAWPAW_PREFIX}/lib/lv2 --no-coverage --no-plugins" - # --------------------------------------------------------------------------------------------------------------------- # fftw @@ -132,12 +128,69 @@ fi build_autoconf fftwf "${FFTW_VERSION}" "${FFTWF_EXTRAFLAGS}" +# --------------------------------------------------------------------------------------------------------------------- +# libsamplerate + +download libsamplerate "${LIBSAMPLERATE_VERSION}" "http://www.mega-nerd.com/SRC" +build_autoconf libsamplerate "${LIBSAMPLERATE_VERSION}" "--disable-fftw --disable-sndfile" + +# --------------------------------------------------------------------------------------------------------------------- +# libsndfile + +download libsndfile "${LIBSNDFILE_VERSION}" "http://www.mega-nerd.com/libsndfile/files" +patch_file libsndfile "${LIBSNDFILE_VERSION}" "configure" 's/ -Wvla//' +build_autoconf libsndfile "${LIBSNDFILE_VERSION}" "--disable-full-suite --disable-alsa --disable-sqlite" + +# --------------------------------------------------------------------------------------------------------------------- +# lv2 + +download lv2 "${LV2_VERSION}" "http://lv2plug.in/spec" "tar.bz2" +build_waf lv2 "${LV2_VERSION}" "--lv2dir=${PAWPAW_PREFIX}/lib/lv2 --no-coverage --no-plugins" + +# --------------------------------------------------------------------------------------------------------------------- +# fluidsynth + +FLUIDSYNTH_EXTRAFLAGS="-Denable-floats=ON" +FLUIDSYNTH_EXTRAFLAGS+=" -Denable-alsa=OFF" +FLUIDSYNTH_EXTRAFLAGS+=" -Denable-aufile=OFF" +FLUIDSYNTH_EXTRAFLAGS+=" -Denable-coreaudio=OFF" +FLUIDSYNTH_EXTRAFLAGS+=" -Denable-coremidi=OFF" +FLUIDSYNTH_EXTRAFLAGS+=" -Denable-dbus=OFF" +FLUIDSYNTH_EXTRAFLAGS+=" -Denable-debug=OFF" +FLUIDSYNTH_EXTRAFLAGS+=" -Denable-fpe-check=OFF" +FLUIDSYNTH_EXTRAFLAGS+=" -Denable-framework=OFF" +FLUIDSYNTH_EXTRAFLAGS+=" -Denable-ipv6=OFF" +FLUIDSYNTH_EXTRAFLAGS+=" -Denable-jack=OFF" +FLUIDSYNTH_EXTRAFLAGS+=" -Denable-ladcca=OFF" +FLUIDSYNTH_EXTRAFLAGS+=" -Denable-ladspa=OFF" +FLUIDSYNTH_EXTRAFLAGS+=" -Denable-lash=OFF" +FLUIDSYNTH_EXTRAFLAGS+=" -Denable-midishare=OFF" +FLUIDSYNTH_EXTRAFLAGS+=" -Denable-oss=OFF" +FLUIDSYNTH_EXTRAFLAGS+=" -Denable-portaudio=OFF" +FLUIDSYNTH_EXTRAFLAGS+=" -Denable-profiling=OFF" +FLUIDSYNTH_EXTRAFLAGS+=" -Denable-pulseaudio=OFF" +FLUIDSYNTH_EXTRAFLAGS+=" -Denable-readline=OFF" +FLUIDSYNTH_EXTRAFLAGS+=" -Denable-trap-on-fpe=OFF" + +download fluidsynth ${FLUIDSYNTH_VERSION} "https://github.com/FluidSynth/fluidsynth/archive" +patch_file fluidsynth ${FLUIDSYNTH_VERSION} "CMakeLists.txt" 's/_init_lib_suffix "64"/_init_lib_suffix ""/' +build_cmake fluidsynth ${FLUIDSYNTH_VERSION} "${FLUIDSYNTH_EXTRAFLAGS}" +# touch src/fluidsynth + +# sed -i -e "s|-lfluidsynth|-lfluidsynth -lglib-2.0 -lgthread-2.0 -lsndfile -lFLAC -lvorbisenc -lvorbis -logg -lpthread -lm -liconv|" ${PREFIX}/lib/pkgconfig/fluidsynth.pc + +# --------------------------------------------------------------------------------------------------------------------- +# mxml + +download mxml ${MXML_VERSION} "https://github.com/michaelrsweet/mxml/archive" +build_autoconf mxml ${MXML_VERSION} "--disable-shared --prefix=${PAWPAW_PREFIX}" + # --------------------------------------------------------------------------------------------------------------------- # zlib if [ "${MACOS}" -eq 0 ]; then - download zlib "${ZLIB_VERSION}" "https://github.com/madler/zlib/archive" - build_conf zlib "${ZLIB_VERSION}" "--static --prefix=${PAWPAW_PREFIX}" + download zlib ${ZLIB_VERSION} "https://github.com/madler/zlib/archive" + build_conf zlib ${ZLIB_VERSION} "--static --prefix=${PAWPAW_PREFIX}" fi # --------------------------------------------------------------------------------------------------------------------- diff --git a/setup/functions.sh b/setup/functions.sh index 84f69d6..e42a39b 100644 --- a/setup/functions.sh +++ b/setup/functions.sh @@ -140,7 +140,7 @@ function build_autoconf() { if [ ! -f "${pkgdir}/.stamp_configured" ]; then pushd "${pkgdir}" - ./configure --enable-static --disable-shared --disable-debug --disable-doc --disable-maintainer-mode --prefix="${PAWPAW_PREFIX}" ${extraconfrules} + ./configure --enable-static --disable-shared --disable-debug --disable-doc --disable-docs --disable-maintainer-mode --prefix="${PAWPAW_PREFIX}" ${extraconfrules} touch .stamp_configured popd fi @@ -162,6 +162,29 @@ function build_autoconf() { _postbuild } +function build_autoconfgen() { + local name="${1}" + local version="${2}" + local extraconfrules="${3}" + + local pkgdir="${PAWPAW_BUILDDIR}/${name}-${version}" + + _prebuild "${name}" "${pkgdir}" + + if [ ! -f "${pkgdir}/.stamp_preconfigured" ]; then + pushd "${pkgdir}" +# autoreconf --force --install --verbose +# ./autogen.sh + autoconf + touch .stamp_preconfigured + popd + fi + + _postbuild + + build_autoconf "${name}" "${version}" "${extraconfrules}" +} + function build_conf() { local name="${1}" local version="${2}" @@ -211,7 +234,7 @@ function build_cmake() { if [ ! -f "${pkgdir}/.stamp_configured" ]; then pushd "${pkgdir}/build" - cmake -DCMAKE_INSTALL_LIBDIR=lib -DCMAKE_INSTALL_PREFIX="${PAWPAW_PREFIX}" ${extraconfrules} .. + cmake -DBUILD_SHARED_LIBS=OFF -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_LIBDIR=lib -DCMAKE_INSTALL_PREFIX="${PAWPAW_PREFIX}" ${extraconfrules} .. touch ../.stamp_configured popd fi diff --git a/setup/versions.sh b/setup/versions.sh index fc6c3ab..ea8fa3a 100644 --- a/setup/versions.sh +++ b/setup/versions.sh @@ -1,16 +1,29 @@ #!/bin/bash PKG_CONFIG_VERSION=0.28 -LIBLO_VERSION=0.30 -ZLIB_VERSION=1.2.11 + FILE_VERSION=5.34 -LIBOGG_VERSION=1.3.4 -LIBVORBIS_VERSION=1.3.6 FLAC_VERSION=1.3.2 +FLUIDSYNTH_VERSION=1.1.11 +FFTW_VERSION=3.3.8 +LIBLO_VERSION=0.30 +LIBOGG_VERSION=1.3.4 LIBSAMPLERATE_VERSION=0.1.9 LIBSNDFILE_VERSION=1.0.28 +LIBVORBIS_VERSION=1.3.6 LV2_VERSION=1.18.0 -FFTW_VERSION=3.3.8 +MXML_VERSION=3.1 +ZLIB_VERSION=1.2.11 + +if [ "${MACOS}" -eq 1 ]; then + GLIB_VERSION=2.44.1 + GLIB_MVERSION=2.44 + GLIB_TAR_EXT="tar.xz" +elif [ "${WIN32}" -eq 1 ]; then + GLIB_VERSION=2.22.5 + GLIB_MVERSION=2.22 + GLIB_TAR_EXT="tar.gz" +fi # qt stuff QT5_VERSION=5.9.8 @@ -24,10 +37,6 @@ PORTAUDIO_VERSION=19.6.0 RTAUDIO_VERSION=e03448bd15c1c34e842459939d755f5f89e880ed TRE_VERSION=0.8.0 -# GLIB_VERSION=2.44.1 -# GLIB_MVERSION=2.44 -# FLUIDSYNTH_VERSION=1.1.11 -# MXML_VERSION=2.12 # PYTHON_VERSION=3.7.4 # PYLIBLO_VERSION=0.9.2 # CXFREEZE_VERSION=6.1