From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id hMMbAOqu22BG0gAAgWs5BA (envelope-from ) for ; Wed, 30 Jun 2021 01:38:18 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1 with LMTPS id wMzcNumu22DMGQAAbx9fmQ (envelope-from ) for ; Tue, 29 Jun 2021 23:38:17 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 0DBFBAB12 for ; Wed, 30 Jun 2021 01:38:17 +0200 (CEST) Received: from localhost ([::1]:56578 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lyNJ1-00006e-Pl for larch@yhetil.org; Tue, 29 Jun 2021 19:38:16 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:56632) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lyNIo-00006W-IA for guix-patches@gnu.org; Tue, 29 Jun 2021 19:38:02 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:44400) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1lyNIo-0006lh-A5 for guix-patches@gnu.org; Tue, 29 Jun 2021 19:38:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1lyNIo-0008Bx-08 for guix-patches@gnu.org; Tue, 29 Jun 2021 19:38:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#49137] [PATCH] gnu: extempore: Update to 0.8.9. Resent-From: paul Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Tue, 29 Jun 2021 23:38:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 49137 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Ludovic =?UTF-8?Q?Court=C3=A8s?= Cc: 49137@debbugs.gnu.org Received: via spool by 49137-submit@debbugs.gnu.org id=B49137.162500983431379 (code B ref 49137); Tue, 29 Jun 2021 23:38:01 +0000 Received: (at 49137) by debbugs.gnu.org; 29 Jun 2021 23:37:14 +0000 Received: from localhost ([127.0.0.1]:55946 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lyNI1-0008A0-3o for submit@debbugs.gnu.org; Tue, 29 Jun 2021 19:37:14 -0400 Received: from latitanza.investici.org ([82.94.249.234]:23521) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lyNHx-00089k-QN for 49137@debbugs.gnu.org; Tue, 29 Jun 2021 19:37:11 -0400 Received: from mx3.investici.org (unknown [127.0.0.1]) by latitanza.investici.org (Postfix) with ESMTP id 4GF1901V2nzGp5M; Tue, 29 Jun 2021 23:37:08 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=autistici.org; s=stigmate; t=1625009828; bh=vgrTjuq4Wrz8MtZ4QMjl7nAc9ikOEdsGVkbeOc32GF8=; h=To:Cc:References:From:Subject:Date:In-Reply-To:From; b=toi8geA4s9trU1le3tDN12VZ1ENviAZA+mvSRuMlcUACU4bC54w39AQzi7m9pcOfw /D5XMIgZbZye9c/X9/anU7HFXobIv39qeAWjx6oK0b1ao7lv8+YhbyqHz+E7TyHq4/ YIjNMn5k3WlrkNS6zwj09Wi6GuVzSwfuO8Lwtg28= Received: from [82.94.249.234] (mx3.investici.org [82.94.249.234]) (Authenticated sender: goodoldpaul@autistici.org) by localhost (Postfix) with ESMTPSA id 4GF19005yKzGp56; Tue, 29 Jun 2021 23:37:07 +0000 (UTC) References: <20210620150909.28105-1-goodoldpaul@autistici.org> <871r8luhyb.fsf@gnu.org> From: paul Message-ID: <9eceda87-23fa-fdaa-1994-706a4ac18a58@autistici.org> Date: Wed, 30 Jun 2021 01:37:07 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Icedove/78.11.0 MIME-Version: 1.0 In-Reply-To: <871r8luhyb.fsf@gnu.org> Content-Type: multipart/mixed; boundary="------------396EBF744DEACA52E0903EB0" Content-Language: en-US X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: "Guix-patches" X-Migadu-Flow: FLOW_IN ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1625009897; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:resent-cc:resent-from:resent-sender: resent-message-id:in-reply-to:in-reply-to:references:references: list-id:list-help:list-unsubscribe:list-subscribe:list-post: dkim-signature; bh=vgrTjuq4Wrz8MtZ4QMjl7nAc9ikOEdsGVkbeOc32GF8=; b=WZ3tI0lvJ5mOcxpc5UYNqkaaaLyLw3S49bkx9gQ6phf4mCrmb1cgF7gOiQA/loYQa+1WFX sChVEDBE+zpLEy6Ox3nMq50dpmRhsIvfPat4oT5uzjwYtn7PpnI5OdRn2bcsMJbEG3Pfhm lySknMgLUqqtcX92avxowMepVimnPB9XADr7OCKFW13s2dLYlfQVfK3kmBrrGLgnTZ8ebd Oz7aKoUg/fK3Lhn82XdsoNYIguAHpDwY8OZuvzEleQ+LUdV6WPDEpgRhw2j7Wb6KeC7ufU JeeTRXQNcgrtRH1fgeEhfQzANGRJ/iyYZ19oaBpu+yxmHlt7eCcuw+wkEn2OUw== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1625009897; a=rsa-sha256; cv=none; b=BNucMgCO/Gv67FZMcMRhVrB+O/KDKeoikDuXCK9HSE2WmB/YqxsVZNEOn7ON7Antx7gSnk LRK0w4yDtVjlZnjELWi4G8phgnWZK0LT2KaJs828Wa6IpG0yNyGX4a8hG8bwu/9obyDnZS GGvfu1zAhxs7utnqhNyFjkOk2Xy/CrX0dPbTFfIOdkYR3xVUeGcVLy/MR2pmohuhceKnZT 3nPsEWpdSWVd8tmrykUUVV5mGEIAzY5KYu+Fvg2Lt/dGgzKmRz1Ljlcx9MTMnqYwhXs/b3 5V/FjEWcc3ttY6Y/rm0tRXFoowoI7kbRKtSrwKbUJtLipOvCbQVhPn1n84ezdA== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=autistici.org header.s=stigmate header.b=toi8geA4; dmarc=none; spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Migadu-Spam-Score: -1.42 Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=autistici.org header.s=stigmate header.b=toi8geA4; dmarc=none; spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Migadu-Queue-Id: 0DBFBAB12 X-Spam-Score: -1.42 X-Migadu-Scanner: scn0.migadu.com X-TUID: ZJwlj9QLJLNl This is a multi-part message in MIME format. --------------396EBF744DEACA52E0903EB0 Content-Type: multipart/alternative; boundary="------------58B797CB25CD364CA8794F43" --------------58B797CB25CD364CA8794F43 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable Dear Ludovic, On 6/29/21 11:40 AM, Ludovic Court=C3=A8s wrote: > It seems that the patch, specifically the > =E2=80=98extempore-unbundle-external-dependencies.patch=E2=80=99 bit, d= oes not apply on > current master. It works on my machine :D . Jokes apart, I rebased on master (without=20 any conflicts) and this is the behavior I get on my local repo: orang3@frastanato ~/code/guix$ git describe v1.3.0-3510-g8269d82868 orang3@frastanato ~/code/guix$ git checkout extempore Switched to branch 'extempore' orang3@frastanato ~/code/guix$ git log master..extempore commit 54fbc4c477f246e9c01c2c9ed231c903c5275428 (HEAD -> extempore) Author: Giacomo Leidi Date: Sun Jun 20 16:57:46 2021 +0200 gnu: extempore: Update to 0.8.9. * gnu/packages/music.scm (extempore): Update to 0.8.6. [snippets]: Portaudio is no more in-tree. [configure-flags]: We now load external libraries through patched CMakeLists.txt. [phases]: Symlink assets. * gnu/packages/patches/extempore-unbundle-external-dependencies.patc= h: Update accordingly. orang3@frastanato ~/code/guix$ ./pre-inst-env guix build extempore ;;; note: source file /home/orang3/code/guix/gnu/packages/music.scm ;;; newer than compiled /home/orang3/code/guix/gnu/packages/music.g= o /gnu/store/i2bcxffd0i3jq5i5dmwkb1lchcvph6m0-extempore-0.8.9 orang3@frastanato ~/code/guix$ Is there something else that I'm not doing? In any case I'm attaching=20 the rebased patch. Thank you for your time, Giacomo --------------58B797CB25CD364CA8794F43 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: 8bit

Dear Ludovic,

On 6/29/21 11:40 AM, Ludovic Courtès wrote:
It seems that the patch, specifically the
‘extempore-unbundle-external-dependencies.patch’ bit, does not apply on
current master.

It works on my machine :D . Jokes apart, I rebased on master (without any conflicts) and this is the behavior I get on my local repo:

orang3@frastanato ~/code/guix$ git describe
v1.3.0-3510-g8269d82868
orang3@frastanato ~/code/guix$  git checkout extempore
Switched to branch 'extempore'
orang3@frastanato ~/code/guix$ git log master..extempore
commit 54fbc4c477f246e9c01c2c9ed231c903c5275428 (HEAD -> extempore)
Author: Giacomo Leidi 
Date:   Sun Jun 20 16:57:46 2021 +0200

    gnu: extempore: Update to 0.8.9.

    * gnu/packages/music.scm (extempore): Update to 0.8.6.
    [snippets]: Portaudio is no more in-tree.
    [configure-flags]: We now load external libraries through patched
    CMakeLists.txt.
    [phases]: Symlink assets.
    * gnu/packages/patches/extempore-unbundle-external-dependencies.patch:
    Update accordingly.
orang3@frastanato ~/code/guix$ ./pre-inst-env guix build extempore
;;; note: source file /home/orang3/code/guix/gnu/packages/music.scm
;;;       newer than compiled /home/orang3/code/guix/gnu/packages/music.go
/gnu/store/i2bcxffd0i3jq5i5dmwkb1lchcvph6m0-extempore-0.8.9
orang3@frastanato ~/code/guix$

Is there something else that I'm not doing? In any case I'm attaching the rebased patch.

Thank you for your time,

Giacomo

--------------58B797CB25CD364CA8794F43-- --------------396EBF744DEACA52E0903EB0 Content-Type: text/x-patch; charset=UTF-8; name="0001-gnu-extempore-Update-to-0.8.9.patch" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="0001-gnu-extempore-Update-to-0.8.9.patch" =46rom 54fbc4c477f246e9c01c2c9ed231c903c5275428 Mon Sep 17 00:00:00 2001 From: Giacomo Leidi Date: Sun, 20 Jun 2021 16:57:46 +0200 Subject: [PATCH] gnu: extempore: Update to 0.8.9. * gnu/packages/music.scm (extempore): Update to 0.8.6. [snippets]: Portaudio is no more in-tree. [configure-flags]: We now load external libraries through patched CMakeLists.txt. [phases]: Symlink assets. * gnu/packages/patches/extempore-unbundle-external-dependencies.patch: Update accordingly. --- gnu/packages/music.scm | 30 +- ...mpore-unbundle-external-dependencies.patch | 316 +++++++++++++----- 2 files changed, 251 insertions(+), 95 deletions(-) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 454d66f759..a1e14eb53d 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -847,7 +847,7 @@ MusePack, Monkey's Audio, and WavPack files.") (define-public extempore (package (name "extempore") - (version "0.8.6") + (version "0.8.9") (source (origin (method git-fetch) (uri (git-reference @@ -855,7 +855,7 @@ MusePack, Monkey's Audio, and WavPack files.") (commit (string-append "v" version)))) (sha256 (base32 - "182jy23qv115dipny7kglwbn21z55dp253w1ykm0kh8n6vkgs7gp"))= + "16i12zl3g1zpx6lhg5pg821xirdf9rxx5m11b68inf83wn6hknhb"))= (file-name (git-file-name name version)) (patches (search-patches "extempore-unbundle-external-dependencies.patch"= )) @@ -864,16 +864,12 @@ MusePack, Monkey's Audio, and WavPack files.") '(begin ;; Remove bundled sources. (map delete-file-recursively - '("src/portaudio" - "src/pcre")) + '("src/pcre")) #t)))) (build-system cmake-build-system) (arguments `(#:configure-flags (list "-DJACK=3DON" "-DPACKAGE=3DON" - "-DEXTERNAL_SHLIBS_AUDIO=3DOFF" - "-DEXTERNAL_SHLIBS_GRAPHICS=3DOFF" - "-DCMAKE_BUILD_TYPE=3DRelease" (string-append "-DEXT_SHARE_DIR=3D" (assoc-ref %outputs "out")= "/share")) @@ -958,7 +954,12 @@ MusePack, Monkey's Audio, and WavPack files.") (("COMMAND extempore" prefix) (string-append prefix " --sharedir " (getcwd) " --mcpu=3Dgeneric --attr=3Dnone"))) - #t))))) + #t)) + (add-after 'unpack 'symlink-assets + (lambda* (#:key inputs #:allow-other-keys) + (let ((assets (assoc-ref inputs "extempore-assets"))) + (symlink assets "assets") + #t)))))) (inputs `(("llvm" ,(package @@ -972,6 +973,19 @@ MusePack, Monkey's Audio, and WavPack files.") (sha256 (base32 "1svdl6fxn8l01ni8mpm0bd5h856ahv3h9sdzgmymr6fayckjvqzs"))= )))) + ("extempore-assets" + ,(let ((commit "0c9f32c18169b3fbc24bc1ad66283125b54a0c85") + (revision "0") + (version "0.0.0")) + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/extemporelang/extempore-asse= ts") + (commit commit))) + (file-name (git-file-name "extempore-assets" + (git-version version revision com= mit))) + (sha256 + (base32 "1pxmcbngd9qx8m71d5rfsmf4h31jnsnd3wjh8vb0rwskif22x= z8l"))))) ("libffi" ,libffi) ("jack" ,jack-1) ("libsndfile" ,libsndfile) diff --git a/gnu/packages/patches/extempore-unbundle-external-dependencie= s.patch b/gnu/packages/patches/extempore-unbundle-external-dependencies.p= atch index e9484f7994..e72f995f0b 100644 --- a/gnu/packages/patches/extempore-unbundle-external-dependencies.patch= +++ b/gnu/packages/patches/extempore-unbundle-external-dependencies.patch= @@ -1,19 +1,27 @@ -Remove build machinery for bundled dependencies. +From b48ef9af13a154939acc245c32d72358001d00f1 Mon Sep 17 00:00:00 2001 +From: Giacomo Leidi +Date: Sun, 20 Jun 2021 12:53:27 +0200 +Subject: [PATCH] Remove build machinery for bundled dependencies. + +--- + CMakeLists.txt | 192 +------------------------------------------------ + 1 file changed, 1 insertion(+), 191 deletions(-) =20 diff --git a/CMakeLists.txt b/CMakeLists.txt -index 89e6125e..c5e90750 100644 +index 17d13d7c..2a7206ed 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -36,7 +36,7 @@ endif() - if(PACKAGE) - # this needs to be set before project() is called - set(CMAKE_OSX_DEPLOYMENT_TARGET 10.12) -- set(ASSETS ON) # necessary for packaging -+ set(ASSETS OFF) # necessary for packaging - message(STATUS "Building Extempore for binary distribution (assets di= rectory will be downloaded)") - endif() +@@ -1,9 +1,6 @@ + cmake_minimum_required(VERSION 3.1) # we use target_sources() + project(Extempore VERSION 0.8.9) =20 -@@ -134,71 +134,6 @@ else() +-# for backwards compatibility with CMake older than 3.19 +-cmake_policy(SET CMP0114 OLD) +- + option(ASSETS "download multimedia assets (approx 500MB)" OFF) + option(BUILD_TESTS "build test targets (including examples)" ON) + option(PACKAGE "set up install targets for packaging" OFF) +@@ -142,55 +139,6 @@ else() message(FATAL_ERROR "Sorry, Extempore isn't supported on this platfor= m - macOS, Linux & Windows only.") endif() =20 @@ -51,90 +59,224 @@ index 89e6125e..c5e90750 100644 -# portaudio # -############# - --add_library(portaudio STATIC -- src/portaudio/src/common/pa_allocation.c -- src/portaudio/src/common/pa_allocation.h -- src/portaudio/src/common/pa_converters.c -- src/portaudio/src/common/pa_converters.h -- src/portaudio/src/common/pa_cpuload.c -- src/portaudio/src/common/pa_cpuload.h -- src/portaudio/src/common/pa_debugprint.c -- src/portaudio/src/common/pa_debugprint.h -- src/portaudio/src/common/pa_dither.c -- src/portaudio/src/common/pa_dither.h -- src/portaudio/src/common/pa_endianness.h -- src/portaudio/src/common/pa_front.c -- src/portaudio/src/common/pa_hostapi.h -- src/portaudio/src/common/pa_memorybarrier.h -- src/portaudio/src/common/pa_process.c -- src/portaudio/src/common/pa_process.h -- src/portaudio/src/common/pa_ringbuffer.c -- src/portaudio/src/common/pa_ringbuffer.h -- src/portaudio/src/common/pa_stream.c -- src/portaudio/src/common/pa_stream.h -- src/portaudio/src/common/pa_trace.c -- src/portaudio/src/common/pa_trace.h -- src/portaudio/src/common/pa_types.h -- src/portaudio/src/common/pa_util.h -- ) +-include(ExternalProject) - --target_include_directories(portaudio -- PRIVATE src/portaudio/include -- PRIVATE src/portaudio/src/common) +-ExternalProject_Add(portaudio_static +- PREFIX portaudio +- URL https://github.com/PortAudio/portaudio/archive/3f7bee79a65327d2e0= 965e8a74299723ed6f072d.zip +- URL_MD5 182b76e05f6ef21d9f5716da7489905d +- CMAKE_ARGS +- -DPA_BUILD_STATIC=3DON +- -DPA_BUILD_SHARED=3DOFF +- -DPA_LIBNAME_ADD_SUFFIX=3DOFF +- -DCMAKE_BUILD_TYPE=3D${CMAKE_BUILD_TYPE} +- -DCMAKE_C_FLAGS=3D${EXT_DEPS_C_FLAGS} +- -DCMAKE_CXX_FLAGS=3D${EXT_DEPS_CXX_FLAGS} +- -DCMAKE_INSTALL_PREFIX=3D${CMAKE_BINARY_DIR}/portaudio) - - # platform-specific -=20 - if(APPLE) -@@ -224,25 +159,8 @@ if(APPLE) + ############## + # LLVM 3.8.0 # + ############## +@@ -323,11 +271,6 @@ if(UNIX) + set_source_files_properties(src/Scheme.cpp PROPERTIES COMPILE_FLAGS -= Wno-switch) + endif() =20 - elseif(UNIX AND NOT APPLE) - # use ALSA on Linux -- target_sources(portaudio -- PRIVATE src/portaudio/src/hostapi/alsa/pa_linux_alsa.c -- PRIVATE src/portaudio/src/os/unix/pa_unix_hostapis.c -- PRIVATE src/portaudio/src/os/unix/pa_unix_util.c -- ) -- target_include_directories(portaudio -- PRIVATE src/portaudio/src/os/unix) -- target_compile_definitions(portaudio -- PRIVATE -DPA_USE_ALSA) -- target_link_libraries(portaudio -- PRIVATE asound) +-# static extempore build dependencies +- +-add_dependencies(extempore pcre) +-add_dependencies(extempore portaudio_static) +- + if(BUILD_LLVM) + if(WIN32) + add_dependencies(extempore LLVM-install) +@@ -342,12 +285,9 @@ endif() =20 - if(JACK) -- target_sources(portaudio -- PRIVATE src/portaudio/src/hostapi/jack/pa_jack.c) -- target_compile_definitions(portaudio -- PRIVATE -DPA_USE_JACK) -- target_link_libraries(portaudio -- PRIVATE jack) - endif() + target_include_directories(extempore + PRIVATE +- src/pcre +- ${CMAKE_BINARY_DIR}/portaudio/include # installed by ExternalProject + ${EXT_LLVM_DIR}/include) =20 - elseif(WIN32) -@@ -292,8 +210,6 @@ if(ASIO) +-target_link_directories(extempore PRIVATE ${CMAKE_BINARY_DIR}/portaudio= /lib) +-target_link_libraries(extempore PRIVATE pcre portaudio${CMAKE_STATIC_LI= BRARY_SUFFIX} ${LLVM_LIBRARIES}) ++target_link_libraries(extempore PRIVATE pcre portaudio ${LLVM_LIBRARIES= }) + if(UNIX AND NOT APPLE) + target_link_libraries(extempore PRIVATE asound) endif() +@@ -425,7 +365,6 @@ elseif(APPLE) # macOS + PRIVATE "-framework AudioToolbox") =20 - if(PACKAGE) -- target_compile_options(portaudio -- PRIVATE -mtune=3Dgeneric) - endif() + elseif(UNIX AND NOT APPLE) # Linux +- set_property(TARGET pcre PROPERTY POSITION_INDEPENDENT_CODE ON) + set_property(TARGET extempore PROPERTY POSITION_INDEPENDENT_CODE ON) + # target_link_libraries(extempore PRIVATE --export-dynamic) + target_link_libraries(extempore PRIVATE dl) +@@ -529,7 +468,6 @@ else(WIN32) + DEPENDS ${filename} extempore) + set_target_properties(${targetname} PROPERTIES FOLDER AOT) + if(NOT ${group} STREQUAL "core") +- add_dependencies(${targetname} external_shlibs_${group}) + add_dependencies(aot_external_${group} ${targetname}) + endif() + foreach(dep ${ARGN}) +@@ -568,59 +506,6 @@ add_custom_target(clean_aot + if(UNIX) + if(EXTERNAL_SHLIBS_AUDIO) =20 - ############## -@@ -411,8 +327,6 @@ endif() +- # first, download & build the shared libraries themselves (these ar= e all external to Extempore) +- +- ExternalProject_Add(portmidi +- PREFIX portmidi +- URL https://github.com/extemporelang/portmidi/archive/8602f548f71= daf5ef638b2f7d224753400cb2158.zip +- CMAKE_ARGS +- -DCMAKE_BUILD_TYPE=3D${CMAKE_BUILD_TYPE} +- -DCMAKE_C_FLAGS=3D${EXT_DEPS_C_FLAGS} +- -DCMAKE_CXX_FLAGS=3D${EXT_DEPS_CXX_FLAGS} +- -DCMAKE_INSTALL_PREFIX=3D${EXT_DEPS_INSTALL_DIR}) +- set_target_properties(portmidi PROPERTIES FOLDER EXTERNAL_SHLIBS) +- +- ExternalProject_Add(rtmidi +- PREFIX rtmidi +- URL https://github.com/thestk/rtmidi/archive/84d130bf22d878ff1b0e= 224346e2e0f9e3ba8099.zip +- URL_MD5 d932b9fef01b859a1b8b86a3c8dc6621 +- CMAKE_ARGS +- -DRTMIDI_BUILD_TESTING=3DOFF +- -DCMAKE_BUILD_TYPE=3D${CMAKE_BUILD_TYPE} +- -DCMAKE_C_FLAGS=3D${EXT_DEPS_C_FLAGS} +- -DCMAKE_CXX_FLAGS=3D${EXT_DEPS_CXX_FLAGS} +- -DCMAKE_INSTALL_PREFIX=3D${EXT_DEPS_INSTALL_DIR}) +- set_target_properties(rtmidi PROPERTIES FOLDER EXTERNAL_SHLIBS) +- +- ExternalProject_Add(kiss_fft +- PREFIX kiss_fft +- URL https://github.com/extemporelang/kiss_fft/archive/1.3.0.zip +- CMAKE_ARGS +- -DCMAKE_BUILD_TYPE=3D${CMAKE_BUILD_TYPE} +- -DCMAKE_C_FLAGS=3D${EXT_DEPS_C_FLAGS} +- -DCMAKE_CXX_FLAGS=3D${EXT_DEPS_CXX_FLAGS} +- -DCMAKE_INSTALL_PREFIX=3D${EXT_DEPS_INSTALL_DIR}) +- set_target_properties(kiss_fft PROPERTIES FOLDER EXTERNAL_SHLIBS) +- +- # build with as few deps as we can get away with +- +- ExternalProject_Add(sndfile +- PREFIX libsndfile +- URL https://github.com/erikd/libsndfile/archive/ae64caf9b5946d36597= 1c550875000342e763de6.zip +- CMAKE_ARGS +- -DCMAKE_BUILD_TYPE=3D${CMAKE_BUILD_TYPE} +- -DCMAKE_C_FLAGS=3D${EXT_DEPS_C_FLAGS} +- -DCMAKE_CXX_FLAGS=3D${EXT_DEPS_CXX_FLAGS} +- -DCMAKE_INSTALL_PREFIX=3D${EXT_DEPS_INSTALL_DIR} +- -DBUILD_SHARED_LIBS=3DON +- -DBUILD_PROGRAMS=3DOFF +- -DBUILD_EXAMPLES=3DOFF +- -DENABLE_EXTERNAL_LIBS=3DOFF +- -DBUILD_TESTING=3DOFF +- -DENABLE_CPACK=3DOFF +- -DENABLE_PACKAGE_CONFIG=3DOFF) +- set_target_properties(sndfile PROPERTIES FOLDER EXTERNAL_SHLIBS) +- + add_custom_target(aot_external_audio ALL) + set_target_properties(aot_external_audio PROPERTIES FOLDER AOT) + aotcompile_lib(libs/external/fft.xtm audio base math) +@@ -629,76 +514,13 @@ if(UNIX) + aotcompile_lib(libs/external/instruments_ext.xtm audio base sndfile= instruments) + aotcompile_lib(libs/external/portmidi.xtm audio base) +=20 +- add_custom_target(external_shlibs_audio +- COMMENT "moving shared libs into ${EXT_PLATFORM_SHLIBS_DIR}" +- DEPENDS LLVM sndfile kiss_fft portmidi rtmidi +- COMMAND ${CMAKE_COMMAND} -E make_directory ${EXT_PLATFORM_SHLIBS_= DIR} +- COMMAND ${CMAKE_COMMAND} -E copy libkiss_fft${CMAKE_SHARED_LIBRAR= Y_SUFFIX} ${EXT_PLATFORM_SHLIBS_DIR} +- COMMAND ${CMAKE_COMMAND} -E copy libportmidi${CMAKE_SHARED_LIBRAR= Y_SUFFIX} ${EXT_PLATFORM_SHLIBS_DIR} +- COMMAND ${CMAKE_COMMAND} -E copy librtmidi${CMAKE_SHARED_LIBRARY_= SUFFIX} ${EXT_PLATFORM_SHLIBS_DIR} +- COMMAND ${CMAKE_COMMAND} -E copy libsndfile${CMAKE_SHARED_LIBRARY= _SUFFIX} ${EXT_PLATFORM_SHLIBS_DIR} +- WORKING_DIRECTORY ${EXT_DEPS_INSTALL_DIR}/lib) +- set_target_properties(external_shlibs_audio PROPERTIES FOLDER EXTER= NAL_SHLIBS) +- + add_dependencies(aot_external_audio extempore) +- add_dependencies(aot_external_audio external_shlibs_audio) =20 - # dependencies + endif(EXTERNAL_SHLIBS_AUDIO) =20 --add_dependencies(extempore pcre portaudio) + if(EXTERNAL_SHLIBS_GRAPHICS) +=20 +- ExternalProject_Add(nanovg +- PREFIX nanovg +- URL https://github.com/extemporelang/nanovg/archive/3c60175fcc2e5= fe305b04355cdce35d499c80310.tar.gz +- CMAKE_ARGS +- -DEXTEMPORE_LIB_PATH=3D${CMAKE_SOURCE_DIR}/libs/platform-shlibs/e= xtempore.lib +- -DCMAKE_BUILD_TYPE=3D${CMAKE_BUILD_TYPE} +- -DCMAKE_C_FLAGS=3D${EXT_DEPS_C_FLAGS} +- -DCMAKE_CXX_FLAGS=3D${EXT_DEPS_CXX_FLAGS} +- -DCMAKE_INSTALL_PREFIX=3D${EXT_DEPS_INSTALL_DIR}) +- set_target_properties(nanovg PROPERTIES FOLDER EXTERNAL_SHLIBS) - - if(BUILD_LLVM) - if(WIN32) - add_dependencies(extempore LLVM-install) -@@ -553,7 +467,7 @@ else() - install(TARGETS extempore - RUNTIME - DESTINATION ".") -- install(DIRECTORY assets runtime libs examples tests -+ install(DIRECTORY runtime libs examples - DESTINATION "." - PATTERN ".DS_Store" EXCLUDE) - endif() +- add_dependencies(nanovg extempore) +- +- ExternalProject_Add(stb_image +- PREFIX stb_image +- URL https://github.com/extemporelang/stb/archive/152a250a702bf289= 51bb0220d63bc0c99830c498.zip +- CMAKE_ARGS +- -DCMAKE_BUILD_TYPE=3D${CMAKE_BUILD_TYPE} +- -DCMAKE_C_FLAGS=3D${EXT_DEPS_C_FLAGS} +- -DCMAKE_CXX_FLAGS=3D${EXT_DEPS_CXX_FLAGS} +- -DCMAKE_INSTALL_PREFIX=3D${EXT_DEPS_INSTALL_DIR}) +- set_target_properties(nanovg PROPERTIES FOLDER EXTERNAL_SHLIBS) +- +- ExternalProject_Add(glfw3 +- PREFIX glfw3 +- URL https://github.com/glfw/glfw/releases/download/3.2.1/glfw-3.2= =2E1.zip +- CMAKE_ARGS +- -DCMAKE_BUILD_TYPE=3D${CMAKE_BUILD_TYPE} +- -DCMAKE_C_FLAGS=3D${EXT_DEPS_C_FLAGS} +- -DCMAKE_CXX_FLAGS=3D${EXT_DEPS_CXX_FLAGS} +- -DBUILD_SHARED_LIBS=3DON +- -DGLFW_BUILD_EXAMPLES=3DOFF +- -DGLFW_BUILD_TESTS=3DOFF +- -DCMAKE_INSTALL_PREFIX=3D${EXT_DEPS_INSTALL_DIR}) +- set_target_properties(glfw3 PROPERTIES FOLDER EXTERNAL_SHLIBS) +- +- ExternalProject_Add(assimp +- PREFIX assimp +- URL https://github.com/assimp/assimp/archive/v3.2.zip +- CMAKE_ARGS +- -DCMAKE_BUILD_TYPE=3D${CMAKE_BUILD_TYPE} +- -DCMAKE_C_FLAGS=3D${EXT_DEPS_C_FLAGS} +- -DCMAKE_CXX_FLAGS=3D${EXT_DEPS_CXX_FLAGS} +- -DCMAKE_DEBUG_POSTFIX=3D +- -DASSIMP_BUILD_ASSIMP_TOOLS=3DOFF +- -DASSIMP_BUILD_SAMPLES=3DOFF +- -DASSIMP_BUILD_TESTS=3DOFF +- -DCMAKE_INSTALL_PREFIX=3D${EXT_DEPS_INSTALL_DIR}) +- set_target_properties(assimp PROPERTIES FOLDER EXTERNAL_SHLIBS) +- + add_custom_target(aot_external_graphics ALL) +- set_target_properties(assimp PROPERTIES FOLDER AOT) +=20 + aotcompile_lib(libs/external/stb_image.xtm graphics base) + aotcompile_lib(libs/external/glfw3.xtm graphics base) +@@ -715,20 +537,8 @@ if(UNIX) + aotcompile_lib(libs/external/assimp.xtm graphics base stb_image gra= phics-pipeline) + aotcompile_lib(libs/external/gl/glcompat-${GL_BIND_METHOD}.xtm grap= hics base) +=20 +- add_custom_target(external_shlibs_graphics +- COMMENT "moving shared libs into ${EXT_PLATFORM_SHLIBS_DIR}" +- DEPENDS LLVM assimp glfw3 stb_image nanovg +- COMMAND ${CMAKE_COMMAND} -E make_directory ${EXT_PLATFORM_SHLIBS_= DIR} +- COMMAND ${CMAKE_COMMAND} -E copy libassimp${CMAKE_SHARED_LIBRARY_= SUFFIX} ${EXT_PLATFORM_SHLIBS_DIR} +- COMMAND ${CMAKE_COMMAND} -E copy libglfw${CMAKE_SHARED_LIBRARY_SU= FFIX} ${EXT_PLATFORM_SHLIBS_DIR} +- COMMAND ${CMAKE_COMMAND} -E copy libnanovg${CMAKE_SHARED_LIBRARY_= SUFFIX} ${EXT_PLATFORM_SHLIBS_DIR} +- COMMAND ${CMAKE_COMMAND} -E copy libstb_image${CMAKE_SHARED_LIBRA= RY_SUFFIX} ${EXT_PLATFORM_SHLIBS_DIR} +- WORKING_DIRECTORY ${EXT_DEPS_INSTALL_DIR}/lib) +- set_target_properties(external_shlibs_graphics PROPERTIES FOLDER EX= TERNAL_SHLIBS) +- + # set up these libs for AOT compilation + add_dependencies(aot_external_graphics extempore) +- add_dependencies(aot_external_graphics external_shlibs_graphics) +=20 + endif(EXTERNAL_SHLIBS_GRAPHICS) + endif(UNIX) +--=20 +2.32.0 + --=20 2.32.0 --------------396EBF744DEACA52E0903EB0--