diff options
4 files changed, 78 insertions, 0 deletions
diff --git a/meta-multimedia/classes/juce.bbclass b/meta-multimedia/classes/juce.bbclass new file mode 100644 index 0000000000..ac97ca348c --- /dev/null +++ b/meta-multimedia/classes/juce.bbclass | |||
| @@ -0,0 +1,37 @@ | |||
| 1 | inherit pkgconfig | ||
| 2 | |||
| 3 | JUCE_X11_DEPS = "libx11 libxext libxinerama libxinerama libxrandr libxcursor freetype" | ||
| 4 | JUCE_DEPS = " \ | ||
| 5 | ${@bb.utils.contains('DISTRO_FEATURES', 'x11', '${JUCE_X11_DEPS}', '', d)} \ | ||
| 6 | alsa-lib \ | ||
| 7 | curl \ | ||
| 8 | " | ||
| 9 | DEPENDS_prepend = "projucer-native ${JUCE_DEPS} " | ||
| 10 | |||
| 11 | export OE_JUCE_PROJUCER = "${STAGING_BINDIR_NATIVE}/Projucer" | ||
| 12 | |||
| 13 | juce_do_configure() { | ||
| 14 | if [ -z "${JUCE_JUCERS}" ]; then | ||
| 15 | JUCERS=`find . -type f -iname "*.jucer"` && IFS=$'\n' | ||
| 16 | else | ||
| 17 | JUCERS="${JUCE_JUCERS}" | ||
| 18 | fi | ||
| 19 | |||
| 20 | if [ -z "$JUCERS" ]; then | ||
| 21 | die "JUCE_JUCERS not set and no profiles found in $PWD" | ||
| 22 | fi | ||
| 23 | |||
| 24 | # XXX: Hack for Projucer, since it requires a X Display even when running in | ||
| 25 | # console mode. This will be fixed in future. Most cases DISPLAY=:0 will just work, | ||
| 26 | # the only case why we have JUCE_DISPLAY variable, is in case of a build system, | ||
| 27 | # such as jenkins, that can have multiple virtual X server running for each build. | ||
| 28 | test -z "${JUCE_DISPLAY}" && export DISPLAY=:0 || export DISPLAY=${JUCE_DISPLAY} | ||
| 29 | |||
| 30 | for i in $JUCERS; do | ||
| 31 | ${OE_JUCE_PROJUCER} --resave $i | ||
| 32 | done | ||
| 33 | } | ||
| 34 | |||
| 35 | EXPORT_FUNCTIONS do_configure | ||
| 36 | |||
| 37 | addtask configure after do_unpack do_patch before do_compile | ||
diff --git a/meta-multimedia/recipes-multimedia/juce/nativesdk-projucer_git.bb b/meta-multimedia/recipes-multimedia/juce/nativesdk-projucer_git.bb new file mode 100644 index 0000000000..93b23b1b5a --- /dev/null +++ b/meta-multimedia/recipes-multimedia/juce/nativesdk-projucer_git.bb | |||
| @@ -0,0 +1,2 @@ | |||
| 1 | inherit nativesdk | ||
| 2 | include projucer.inc | ||
diff --git a/meta-multimedia/recipes-multimedia/juce/projucer-native_git.bb b/meta-multimedia/recipes-multimedia/juce/projucer-native_git.bb new file mode 100644 index 0000000000..b919a7dcb3 --- /dev/null +++ b/meta-multimedia/recipes-multimedia/juce/projucer-native_git.bb | |||
| @@ -0,0 +1,2 @@ | |||
| 1 | inherit native | ||
| 2 | include projucer.inc | ||
diff --git a/meta-multimedia/recipes-multimedia/juce/projucer.inc b/meta-multimedia/recipes-multimedia/juce/projucer.inc new file mode 100644 index 0000000000..6f696e26f9 --- /dev/null +++ b/meta-multimedia/recipes-multimedia/juce/projucer.inc | |||
| @@ -0,0 +1,37 @@ | |||
| 1 | SUMMARY = "JUCE's Projucer" | ||
| 2 | DESCRIPTION = "Projucer is used to build and generate support files and build infrastructure for all \ | ||
| 3 | JUCE supported platforms, including Linux and Embedded Linux." | ||
| 4 | SECTION = "utils" | ||
| 5 | HOMEPAGE = "http://juce.com/" | ||
| 6 | LICENSE = "GPLv2" | ||
| 7 | LIC_FILES_CHKSUM = "file://README.txt;md5=9ab765ccda8890efc753f287911a1958" | ||
| 8 | |||
| 9 | inherit pkgconfig | ||
| 10 | |||
| 11 | DEPENDS = "libx11 libxext libxinerama libxrandr libxcursor freetype alsa-lib curl" | ||
| 12 | |||
| 13 | SRCREV = "a8a7fa28e2e9cb19db6a27fcccb567a8ccfe6109" | ||
| 14 | BRANCH = "develop" | ||
| 15 | SRC_URI = "git://github.com/julianstorer/JUCE.git;protocol=https;branch=${BRANCH}" | ||
| 16 | |||
| 17 | S = "${WORKDIR}/git" | ||
| 18 | PV = "4.2.3+git${SRCPV}" | ||
| 19 | |||
| 20 | JUCE_PROJUCER_BUILD_PATH = "${B}/extras/Projucer/Builds" | ||
| 21 | JUCE_PROJUCER_MAKEFILE_PATH = "${JUCE_PROJUCER_BUILD_PATH}/LinuxMakefile" | ||
| 22 | JUCE_PROJUCER = "${JUCE_PROJUCER_MAKEFILE_PATH}/build/Projucer" | ||
| 23 | |||
| 24 | do_configure() { | ||
| 25 | cd ${JUCE_PROJUCER_MAKEFILE_PATH} | ||
| 26 | CONFIG=Release oe_runmake clean | ||
| 27 | } | ||
| 28 | |||
| 29 | do_compile() { | ||
| 30 | cd ${JUCE_PROJUCER_MAKEFILE_PATH} | ||
| 31 | CONFIG=Release oe_runmake | ||
| 32 | } | ||
| 33 | |||
| 34 | do_install() { | ||
| 35 | install -d ${D}${bindir} | ||
| 36 | install -m 0755 ${JUCE_PROJUCER} ${D}${bindir} | ||
| 37 | } | ||
