diff --git a/TODO b/TODO index 6630355..1bc11ac 100644 --- a/TODO +++ b/TODO @@ -1,9 +1,3 @@ -0.6.0 ------ - -code: -* android, ios - 1.0.0 ----- @@ -100,7 +94,7 @@ build system: * VC, XCode, etc project files? * single header(s) * cross compile (rpi etc.) -* consider tuist (https://tuist.io/), bazel (https://bazel.build/), pants (https://www.pantsbuild.org/), buck (https://buck2.build/), please (https://please.build/index.html) for mobile apps +* better use of xcodegen (see xcode warnings) and/or consider tuist (https://tuist.io/), bazel (https://bazel.build/), pants (https://www.pantsbuild.org/), buck (https://buck2.build/), please (https://please.build/index.html) for mobile apps * homogenize android and ios common code (e.g., same index) -- diff --git a/examples/common/ios/app-Bridging-Header.h b/examples/common/ios/app-Bridging-Header.h new file mode 100644 index 0000000..012e4b2 --- /dev/null +++ b/examples/common/ios/app-Bridging-Header.h @@ -0,0 +1,24 @@ +/* + * Brickworks + * + * Copyright (C) 2023 Orastron Srl unipersonale + * + * Brickworks is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, version 3 of the License. + * + * Brickworks is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Brickworks. If not, see . + * + * File author: Stefano D'Angelo, Paolo Marrone + */ + +char audioStart(); +void audioStop(); +void setParameter(int i, float v); +float getParameter(int i); diff --git a/examples/common/ios/app.swift b/examples/common/ios/app.swift new file mode 100644 index 0000000..67bea95 --- /dev/null +++ b/examples/common/ios/app.swift @@ -0,0 +1,102 @@ +/* + * Brickworks + * + * Copyright (C) 2023 Orastron Srl unipersonale + * + * Brickworks is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, version 3 of the License. + * + * Brickworks is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Brickworks. If not, see . + * + * File author: Stefano D'Angelo, Paolo Marrone + */ + +import SwiftUI +import WebKit +import AVFoundation + +struct WebView: UIViewRepresentable { + class Coordinator: NSObject, WKScriptMessageHandlerWithReply { + func userContentController(_ userContentController: WKUserContentController, didReceive message: WKScriptMessage, replyHandler: @escaping (Any?, String?) -> Void) { + guard let body = message.body as? [String : Any] else { return } + guard let name = body["name"] as? String else { return } + switch (name) { + case "needAudioPermission": + replyHandler(AVCaptureDevice.authorizationStatus(for: .audio) != .authorized, nil) + break; + case "requestAudioPermission": + AVAudioSession.sharedInstance().requestRecordPermission { granted in } + replyHandler(nil, nil) + break; + case "audioStart": + replyHandler(audioStart() != 0, nil) + break; + case "audioStop": + audioStop() + replyHandler(nil, nil) + break; + case "setParameter": + guard let index = body["index"] as? Int32 else { return } + guard let value = body["value"] as? Double else { return } + setParameter(index, Float(value)) + replyHandler(nil, nil) + break; + case "getParameter": + guard let index = body["index"] as? Int32 else { return } + let v = getParameter(index) + replyHandler(v, nil) + break; + default: + break; + } + } + } + + func makeCoordinator() -> Coordinator { + return Coordinator() + } + + let url: URL + + func makeUIView(context: Context) -> WKWebView { + let configuration = WKWebViewConfiguration() + configuration.userContentController.addScriptMessageHandler(Coordinator(), contentWorld: .page, name: "listener") + let webView = WKWebView(frame: .zero, configuration: configuration) + webView.isInspectable = true + return webView + } + + func updateUIView(_ webView: WKWebView, context: Context) { + let request = URLRequest(url: url) + webView.load(request) + } +} + +struct ContentView: View { + var body: some View { + let url = Bundle.main.url(forResource: "index", withExtension: "html") + WebView(url: url!) + } +} + +struct ContentView_Previews: PreviewProvider { + static var previews: some View { + ContentView() + } +} + +@main +struct templateApp: App { + var body: some Scene { + WindowGroup { + ContentView() + } + } +} diff --git a/examples/common/ios/index.html b/examples/common/ios/index.html new file mode 100644 index 0000000..40653b4 --- /dev/null +++ b/examples/common/ios/index.html @@ -0,0 +1,175 @@ + + + + + + + + + + + +
+ + diff --git a/examples/common/ios/ios.mk b/examples/common/ios/ios.mk new file mode 100644 index 0000000..06361d5 --- /dev/null +++ b/examples/common/ios/ios.mk @@ -0,0 +1,32 @@ +COMMON_DIR := ${ROOT_DIR}/../../common/ios + +COMMON_SOURCES := index.html app.swift native.mm app-Bridging-Header.h +COMMON_SOURCES_IN := $(addprefix ${COMMON_DIR}/, ${COMMON_SOURCES}) +COMMON_SOURCES_OUT := $(addprefix build/gen/src/, ${COMMON_SOURCES}) + +SOURCES := ${SOURCE} config.js +SOURCES_IN := $(addprefix ${ROOT_DIR}/../src/, ${SOURCES}) +SOURCES_OUT := $(addprefix build/gen/src/, ${SOURCES}) + +BUNDLE_NAME := $(shell echo ${NAME} | sed 's:_:-:g') + +all: ${COMMON_SOURCES_OUT} ${SOURCES_OUT} build/gen/${NAME}.xcodeproj + +${COMMON_SOURCES_OUT} ${SOURCES_OUT}: ${COMMON_SOURCES_IN} ${SOURCES_IN} | build/gen/src + cp $^ build/gen/src + +build/gen/${NAME}.xcodeproj: build/gen/project.yml + xcodegen generate --spec $^ + +build/gen/project.yml: ${COMMON_DIR}/project.yml | build/gen + cat $^ | sed s:@NAME@:${NAME}:g | sed s:@BUNDLE_NAME@:${BUNDLE_NAME}:g > $@ + +build/gen build/gen/src: + mkdir -p $@ + +clean: + rm -fr build + +install: + +.PHONY: all clean install diff --git a/examples/common/ios/native.mm b/examples/common/ios/native.mm new file mode 100644 index 0000000..18c006c --- /dev/null +++ b/examples/common/ios/native.mm @@ -0,0 +1,278 @@ +/* + * Brickworks + * + * Copyright (C) 2023 Orastron Srl unipersonale + * + * Brickworks is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, version 3 of the License. + * + * Brickworks is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Brickworks. If not, see . + * + * File author: Stefano D'Angelo, Paolo Marrone + */ + +#include +#include +#include +#define MINIAUDIO_IMPLEMENTATION +#define MA_NO_RUNTIME_LINKING +#include +#include "config.h" + +#define BLOCK_SIZE 32 +#define NUM_BUFS (NUM_CHANNELS_IN > NUM_CHANNELS_OUT ? NUM_CHANNELS_IN : NUM_CHANNELS_OUT) + +ma_device device; +#ifdef P_NOTE_ON +CFStringRef midiClientName = NULL; +MIDIClientRef midiClient = NULL; +CFStringRef midiInputName = NULL; +MIDIPortRef midiPort = NULL; +#endif +P_TYPE instance; +float paramValues[NUM_PARAMETERS]; +float bufs[NUM_BUFS][BLOCK_SIZE]; +#if NUM_CHANNELS_IN != 0 +const float *inBufs[NUM_CHANNELS_IN]; +#endif +float *outBufs[NUM_CHANNELS_OUT]; +std::mutex mutex; +#ifdef P_MEM_REQ +void *mem; +#endif + +static void data_callback(ma_device* pDevice, void* pOutput, const void* pInput, ma_uint32 frameCount) { + (void)pDevice; +#if NUM_CHANNELS_IN == 0 + (void)pInput; +#else + const float *x = reinterpret_cast(pInput); +#endif + float *y = reinterpret_cast(pOutput); + + if (mutex.try_lock()) { + for (int i = 0; i < NUM_PARAMETERS; i++) + if (config_parameters[i].out) + paramValues[i] = P_GET_PARAMETER(&instance, i); + else + P_SET_PARAMETER(&instance, i, paramValues[i]); + mutex.unlock(); + } + + ma_uint32 i = 0; + while (i < frameCount) { + ma_uint32 n = std::min(frameCount - i, static_cast(BLOCK_SIZE)); + + int l; +#if NUM_CHANNELS_IN != 0 + l = NUM_CHANNELS_IN * i; + for (ma_uint32 j = 0; j < n; j++) + for (int k = 0; k < NUM_CHANNELS_IN; k++, l++) + bufs[k][j] = x[l]; +#endif + +#if NUM_CHANNELS_IN != 0 + P_PROCESS(&instance, inBufs, outBufs, n); +#else + P_PROCESS(&instance, NULL, outBufs, n); +#endif + + l = NUM_CHANNELS_OUT * i; + for (ma_uint32 j = 0; j < n; j++) + for (int k = 0; k < NUM_CHANNELS_OUT; k++, l++) + y[l] = bufs[k][j]; + + i += n; + } +} + +#ifdef P_NOTE_ON +void (^midiNotifyBlock)(const MIDINotification *message) = ^(const MIDINotification *message) { + if (message->messageID != kMIDIMsgObjectAdded) + return; + const MIDIObjectAddRemoveNotification *n = reinterpret_cast(message); + MIDIEndpointRef endPoint = n->child; + MIDIPortConnectSource(midiPort, endPoint, NULL); +}; + +void (^midiReceiveBlock)(const MIDIEventList *evtlist, void *srcConnRefCon) = ^(const MIDIEventList *evtlist, void *srcConnRefCon) { + const MIDIEventPacket *p = evtlist->packet; + for (UInt32 i = 0; i < evtlist->numPackets; i++) { + for (UInt32 j = 0; j < p->wordCount; j++) { + UInt32 w = p->words[j]; + if ((w & 0xf0000000) != 0x20000000) + continue; + switch (w & 0x00f00000) { + case 0x00900000: + mutex.lock(); + P_NOTE_ON(&instance, (w & 0x0000ff00) >> 8, w & 0x000000ff); + mutex.unlock(); + break; + case 0x00800000: + mutex.lock(); + P_NOTE_OFF(&instance, (w & 0x0000ff00) >> 8); + mutex.unlock(); + break; +#ifdef P_PITCH_BEND + case 0x00e00000: + mutex.lock(); + P_PITCH_BEND(&instance, ((w & 0x0000007f) << 7) | ((w & 0x00007f00) >> 8)); + mutex.unlock(); + break; +#endif +#ifdef P_MOD_WHEEL + case 0x00b00000: + if ((w & 0x0000ff00) == 0x00000100) { + mutex.lock(); + P_MOD_WHEEL(&instance, w & 0x000000ff); + mutex.unlock(); + } + break; +#endif + } + } + p = MIDIEventPacketNext(p); + } +}; +#endif + +extern "C" +char audioStart() { +#if NUM_CHANNELS_IN == 0 + ma_device_config deviceConfig = ma_device_config_init(ma_device_type_playback); +#else + ma_device_config deviceConfig = ma_device_config_init(ma_device_type_duplex); +#endif + deviceConfig.periodSizeInFrames = BLOCK_SIZE; + deviceConfig.periods = 1; + deviceConfig.performanceProfile = ma_performance_profile_low_latency; + deviceConfig.noPreSilencedOutputBuffer = 1; + deviceConfig.noClip = 0; + deviceConfig.noDisableDenormals = 0; + deviceConfig.noFixedSizedCallback = 1; + deviceConfig.dataCallback = data_callback; + deviceConfig.capture.pDeviceID = NULL; + deviceConfig.capture.format = ma_format_f32; + deviceConfig.capture.channels = NUM_CHANNELS_IN; + deviceConfig.capture.shareMode = ma_share_mode_shared; + deviceConfig.playback.pDeviceID = NULL; + deviceConfig.playback.format = ma_format_f32; + deviceConfig.playback.channels = NUM_CHANNELS_OUT; + deviceConfig.playback.shareMode = ma_share_mode_shared; + + if (ma_device_init(NULL, &deviceConfig, &device) != MA_SUCCESS) + goto err_device_init; + +#ifdef P_NOTE_ON + if (midiClientName == NULL) { + midiClientName = CFSTR("template"); + if (midiClientName == NULL) + goto err_midiClientName; + } + if (midiClient == (MIDIClientRef)NULL) { + if (MIDIClientCreateWithBlock(midiClientName, &midiClient, midiNotifyBlock) != 0) + goto err_midiClientCreate; + } + + if (midiInputName == NULL) { + midiInputName = CFSTR("Input"); + if (midiInputName == NULL) + goto err_midiInputName; + } + if (midiPort == (MIDIPortRef)NULL) { + if (MIDIInputPortCreateWithProtocol(midiClient, midiInputName, kMIDIProtocol_1_0, &midiPort, midiReceiveBlock) != 0) + goto err_midiInputPort; + + ItemCount n = MIDIGetNumberOfSources(); + for (ItemCount i = 0; i < n; i++) { + MIDIEndpointRef endPoint = MIDIGetSource(i); + MIDIPortConnectSource(midiPort, endPoint, NULL); + } + } +#endif + + P_INIT(&instance); + P_SET_SAMPLE_RATE(&instance, (float)device.sampleRate); +#ifdef P_MEM_REQ + size_t req = P_MEM_REQ(&instance); + if (req) { + mem = malloc(req); + if (mem == NULL) + goto err_mem_req; + P_MEM_SET(&instance, mem); + } else + mem = NULL; +#endif + + for (int i = 0; i < NUM_PARAMETERS; i++) { + paramValues[i] = config_parameters[i].defaultValueUnmapped; + if (!config_parameters[i].out) + P_SET_PARAMETER(&instance, i, paramValues[i]); + } + + P_RESET(&instance); + +#if NUM_CHANNELS_IN != 0 + for (int i = 0; i < NUM_CHANNELS_IN; i++) + inBufs[i] = bufs[i]; +#endif + for (int i = 0; i < NUM_CHANNELS_OUT; i++) + outBufs[i] = bufs[i]; + + if (ma_device_start(&device) != MA_SUCCESS) + goto err_device_start; + + return 1; + +err_device_start: +#ifdef P_MEM_REQ + free(mem); +err_mem_req: +#endif +#ifdef P_FINI + P_FINI(&instance); +#endif +#ifdef P_NOTE_ON +err_midiInputPort: +err_midiInputName: +err_midiClientCreate: +err_midiClientName: +#endif + ma_device_uninit(&device); +err_device_init: + return 0; +} + +extern "C" +void audioStop() { +#ifdef P_MEM_REQ + free(mem); +#endif +#ifdef P_FINI + P_FINI(&instance); +#endif + ma_device_stop(&device); + ma_device_uninit(&device); +} + +extern "C" +void setParameter(int i, float v) { + mutex.lock(); + paramValues[i] = v; + mutex.unlock(); +} + +extern "C" +float getParameter(int i) { + mutex.lock(); + float v = paramValues[i]; + mutex.unlock(); + return v; +} diff --git a/examples/common/ios/platform.h b/examples/common/ios/platform.h new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/examples/common/ios/platform.h @@ -0,0 +1 @@ + diff --git a/examples/common/ios/project.yml b/examples/common/ios/project.yml new file mode 100644 index 0000000..57b978a --- /dev/null +++ b/examples/common/ios/project.yml @@ -0,0 +1,20 @@ +name: @NAME@ +targets: + @NAME@: + platform: iOS + type: application + sources: + - path: src + settings: + base: + PRODUCT_BUNDLE_IDENTIFIER: com.orastron.@BUNDLE_NAME@ + SWIFT_OBJC_BRIDGING_HEADER: src/app-Bridging-Header.h + HEADER_SEARCH_PATHS: + - ../../../src + - ../../../../common/ios + - ../../../../../include + - ../../../../../../miniaudio + info: + path: Info.plist + properties: + NSMicrophoneUsageDescription: Audio input access needed to run the example diff --git a/examples/fx_ap1/ios/Makefile b/examples/fx_ap1/ios/Makefile new file mode 100644 index 0000000..6609b9f --- /dev/null +++ b/examples/fx_ap1/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_ap1 +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_ap2/ios/Makefile b/examples/fx_ap2/ios/Makefile new file mode 100644 index 0000000..c6cae1e --- /dev/null +++ b/examples/fx_ap2/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_ap2 +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_balance/ios/Makefile b/examples/fx_balance/ios/Makefile new file mode 100644 index 0000000..0aca644 --- /dev/null +++ b/examples/fx_balance/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_balance +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_bitcrush/ios/Makefile b/examples/fx_bitcrush/ios/Makefile new file mode 100644 index 0000000..9f0734c --- /dev/null +++ b/examples/fx_bitcrush/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_bitcrush +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_chorus/ios/Makefile b/examples/fx_chorus/ios/Makefile new file mode 100644 index 0000000..fdb8a02 --- /dev/null +++ b/examples/fx_chorus/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_chorus +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_clip/ios/Makefile b/examples/fx_clip/ios/Makefile new file mode 100644 index 0000000..ea3a3df --- /dev/null +++ b/examples/fx_clip/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_clip +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_comb/ios/Makefile b/examples/fx_comb/ios/Makefile new file mode 100644 index 0000000..14ad6b6 --- /dev/null +++ b/examples/fx_comb/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_comb +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_comp/ios/Makefile b/examples/fx_comp/ios/Makefile new file mode 100644 index 0000000..9766a11 --- /dev/null +++ b/examples/fx_comp/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_comp +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_delay/ios/Makefile b/examples/fx_delay/ios/Makefile new file mode 100644 index 0000000..469bdbd --- /dev/null +++ b/examples/fx_delay/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_delay +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_dist/ios/Makefile b/examples/fx_dist/ios/Makefile new file mode 100644 index 0000000..a19583f --- /dev/null +++ b/examples/fx_dist/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_dist +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_drive/ios/Makefile b/examples/fx_drive/ios/Makefile new file mode 100644 index 0000000..2e12f9b --- /dev/null +++ b/examples/fx_drive/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_drive +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_eq_3band/ios/Makefile b/examples/fx_eq_3band/ios/Makefile new file mode 100644 index 0000000..da70967 --- /dev/null +++ b/examples/fx_eq_3band/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_eq_3band +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_flanger/ios/Makefile b/examples/fx_flanger/ios/Makefile new file mode 100644 index 0000000..178378e --- /dev/null +++ b/examples/fx_flanger/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_flanger +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_fuzz/ios/Makefile b/examples/fx_fuzz/ios/Makefile new file mode 100644 index 0000000..9921bf2 --- /dev/null +++ b/examples/fx_fuzz/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_fuzz +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_hp1/ios/Makefile b/examples/fx_hp1/ios/Makefile new file mode 100644 index 0000000..d57132b --- /dev/null +++ b/examples/fx_hp1/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_hp1 +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_hs1/ios/Makefile b/examples/fx_hs1/ios/Makefile new file mode 100644 index 0000000..39e233c --- /dev/null +++ b/examples/fx_hs1/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_hs1 +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_lp1/ios/Makefile b/examples/fx_lp1/ios/Makefile new file mode 100644 index 0000000..1f433af --- /dev/null +++ b/examples/fx_lp1/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_lp1 +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_ls1/ios/Makefile b/examples/fx_ls1/ios/Makefile new file mode 100644 index 0000000..24e5210 --- /dev/null +++ b/examples/fx_ls1/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_ls1 +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_mm1/ios/Makefile b/examples/fx_mm1/ios/Makefile new file mode 100644 index 0000000..5365ea2 --- /dev/null +++ b/examples/fx_mm1/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_mm1 +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_mm2/ios/Makefile b/examples/fx_mm2/ios/Makefile new file mode 100644 index 0000000..4b7399b --- /dev/null +++ b/examples/fx_mm2/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_mm2 +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_noise_gate/ios/Makefile b/examples/fx_noise_gate/ios/Makefile new file mode 100644 index 0000000..0eb278a --- /dev/null +++ b/examples/fx_noise_gate/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_noise_gate +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_notch/ios/Makefile b/examples/fx_notch/ios/Makefile new file mode 100644 index 0000000..aff439d --- /dev/null +++ b/examples/fx_notch/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_notch +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_one_pole/ios/Makefile b/examples/fx_one_pole/ios/Makefile new file mode 100644 index 0000000..ef659ee --- /dev/null +++ b/examples/fx_one_pole/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_one_pole +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_pan/ios/Makefile b/examples/fx_pan/ios/Makefile new file mode 100644 index 0000000..5aaa1dc --- /dev/null +++ b/examples/fx_pan/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_pan +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_phaser/ios/Makefile b/examples/fx_phaser/ios/Makefile new file mode 100644 index 0000000..b381d49 --- /dev/null +++ b/examples/fx_phaser/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_phaser +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_reverb/ios/Makefile b/examples/fx_reverb/ios/Makefile new file mode 100644 index 0000000..33bb326 --- /dev/null +++ b/examples/fx_reverb/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_reverb +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_satur/ios/Makefile b/examples/fx_satur/ios/Makefile new file mode 100644 index 0000000..49a85c9 --- /dev/null +++ b/examples/fx_satur/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_satur +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_slew_lim/ios/Makefile b/examples/fx_slew_lim/ios/Makefile new file mode 100644 index 0000000..d5428ce --- /dev/null +++ b/examples/fx_slew_lim/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_slew_lim +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_svf/ios/Makefile b/examples/fx_svf/ios/Makefile new file mode 100644 index 0000000..11800c7 --- /dev/null +++ b/examples/fx_svf/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_svf +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_trem/ios/Makefile b/examples/fx_trem/ios/Makefile new file mode 100644 index 0000000..29f0fc0 --- /dev/null +++ b/examples/fx_trem/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_trem +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_vibrato/ios/Makefile b/examples/fx_vibrato/ios/Makefile new file mode 100644 index 0000000..f35dfec --- /dev/null +++ b/examples/fx_vibrato/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_vibrato +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_wah/ios/Makefile b/examples/fx_wah/ios/Makefile new file mode 100644 index 0000000..4390299 --- /dev/null +++ b/examples/fx_wah/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fx_wah +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_ap1/ios/Makefile b/examples/fxpp_ap1/ios/Makefile new file mode 100644 index 0000000..b5c951e --- /dev/null +++ b/examples/fxpp_ap1/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_ap1 +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_ap2/ios/Makefile b/examples/fxpp_ap2/ios/Makefile new file mode 100644 index 0000000..83db85e --- /dev/null +++ b/examples/fxpp_ap2/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_ap2 +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_balance/ios/Makefile b/examples/fxpp_balance/ios/Makefile new file mode 100644 index 0000000..d684703 --- /dev/null +++ b/examples/fxpp_balance/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_balance +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_bitcrush/ios/Makefile b/examples/fxpp_bitcrush/ios/Makefile new file mode 100644 index 0000000..490946b --- /dev/null +++ b/examples/fxpp_bitcrush/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_bitcrush +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_chorus/ios/Makefile b/examples/fxpp_chorus/ios/Makefile new file mode 100644 index 0000000..0cebb28 --- /dev/null +++ b/examples/fxpp_chorus/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_chorus +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_clip/ios/Makefile b/examples/fxpp_clip/ios/Makefile new file mode 100644 index 0000000..a8b29ff --- /dev/null +++ b/examples/fxpp_clip/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_clip +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_comb/ios/Makefile b/examples/fxpp_comb/ios/Makefile new file mode 100644 index 0000000..39de890 --- /dev/null +++ b/examples/fxpp_comb/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_comb +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_comp/ios/Makefile b/examples/fxpp_comp/ios/Makefile new file mode 100644 index 0000000..c2521d1 --- /dev/null +++ b/examples/fxpp_comp/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_comp +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_delay/ios/Makefile b/examples/fxpp_delay/ios/Makefile new file mode 100644 index 0000000..124b6df --- /dev/null +++ b/examples/fxpp_delay/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_delay +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_dist/ios/Makefile b/examples/fxpp_dist/ios/Makefile new file mode 100644 index 0000000..e0d74ea --- /dev/null +++ b/examples/fxpp_dist/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_dist +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_drive/ios/Makefile b/examples/fxpp_drive/ios/Makefile new file mode 100644 index 0000000..648584c --- /dev/null +++ b/examples/fxpp_drive/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_drive +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_eq_3band/ios/Makefile b/examples/fxpp_eq_3band/ios/Makefile new file mode 100644 index 0000000..a42026f --- /dev/null +++ b/examples/fxpp_eq_3band/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_eq_3band +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_flanger/ios/Makefile b/examples/fxpp_flanger/ios/Makefile new file mode 100644 index 0000000..5e8dfcc --- /dev/null +++ b/examples/fxpp_flanger/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_flanger +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_fuzz/ios/Makefile b/examples/fxpp_fuzz/ios/Makefile new file mode 100644 index 0000000..1b4cc0a --- /dev/null +++ b/examples/fxpp_fuzz/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_fuzz +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_hp1/ios/Makefile b/examples/fxpp_hp1/ios/Makefile new file mode 100644 index 0000000..45d9387 --- /dev/null +++ b/examples/fxpp_hp1/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_hp1 +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_hs1/ios/Makefile b/examples/fxpp_hs1/ios/Makefile new file mode 100644 index 0000000..fc60e06 --- /dev/null +++ b/examples/fxpp_hs1/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_hs1 +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_lp1/ios/Makefile b/examples/fxpp_lp1/ios/Makefile new file mode 100644 index 0000000..8fe9110 --- /dev/null +++ b/examples/fxpp_lp1/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_lp1 +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_ls1/ios/Makefile b/examples/fxpp_ls1/ios/Makefile new file mode 100644 index 0000000..f5b44db --- /dev/null +++ b/examples/fxpp_ls1/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_ls1 +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_mm1/ios/Makefile b/examples/fxpp_mm1/ios/Makefile new file mode 100644 index 0000000..a69aa55 --- /dev/null +++ b/examples/fxpp_mm1/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_mm1 +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_mm2/ios/Makefile b/examples/fxpp_mm2/ios/Makefile new file mode 100644 index 0000000..81d1471 --- /dev/null +++ b/examples/fxpp_mm2/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_mm2 +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_noise_gate/ios/Makefile b/examples/fxpp_noise_gate/ios/Makefile new file mode 100644 index 0000000..ed97cee --- /dev/null +++ b/examples/fxpp_noise_gate/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_noise_gate +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_notch/ios/Makefile b/examples/fxpp_notch/ios/Makefile new file mode 100644 index 0000000..44e0856 --- /dev/null +++ b/examples/fxpp_notch/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_notch +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_one_pole/ios/Makefile b/examples/fxpp_one_pole/ios/Makefile new file mode 100644 index 0000000..9a03479 --- /dev/null +++ b/examples/fxpp_one_pole/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_one_pole +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_pan/ios/Makefile b/examples/fxpp_pan/ios/Makefile new file mode 100644 index 0000000..b1a4841 --- /dev/null +++ b/examples/fxpp_pan/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_pan +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_phaser/ios/Makefile b/examples/fxpp_phaser/ios/Makefile new file mode 100644 index 0000000..a9a1227 --- /dev/null +++ b/examples/fxpp_phaser/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_phaser +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_reverb/ios/Makefile b/examples/fxpp_reverb/ios/Makefile new file mode 100644 index 0000000..dbff83d --- /dev/null +++ b/examples/fxpp_reverb/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_reverb +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_satur/ios/Makefile b/examples/fxpp_satur/ios/Makefile new file mode 100644 index 0000000..a14e6c3 --- /dev/null +++ b/examples/fxpp_satur/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_satur +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_slew_lim/ios/Makefile b/examples/fxpp_slew_lim/ios/Makefile new file mode 100644 index 0000000..1013e5d --- /dev/null +++ b/examples/fxpp_slew_lim/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_slew_lim +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_svf/ios/Makefile b/examples/fxpp_svf/ios/Makefile new file mode 100644 index 0000000..b3d89a0 --- /dev/null +++ b/examples/fxpp_svf/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_svf +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_trem/ios/Makefile b/examples/fxpp_trem/ios/Makefile new file mode 100644 index 0000000..562a986 --- /dev/null +++ b/examples/fxpp_trem/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_trem +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_vibrato/ios/Makefile b/examples/fxpp_vibrato/ios/Makefile new file mode 100644 index 0000000..2a8c9d2 --- /dev/null +++ b/examples/fxpp_vibrato/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_vibrato +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_wah/ios/Makefile b/examples/fxpp_wah/ios/Makefile new file mode 100644 index 0000000..8632511 --- /dev/null +++ b/examples/fxpp_wah/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_fxpp_wah +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/synth_mono/ios/Makefile b/examples/synth_mono/ios/Makefile new file mode 100644 index 0000000..4fd3a38 --- /dev/null +++ b/examples/synth_mono/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_synth_mono +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/synth_poly/ios/Makefile b/examples/synth_poly/ios/Makefile new file mode 100644 index 0000000..c984ed4 --- /dev/null +++ b/examples/synth_poly/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_synth_poly +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/synth_simple/ios/Makefile b/examples/synth_simple/ios/Makefile new file mode 100644 index 0000000..63da0c4 --- /dev/null +++ b/examples/synth_simple/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_synth_simple +SOURCE := ${NAME}.c + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/synthpp_mono/ios/Makefile b/examples/synthpp_mono/ios/Makefile new file mode 100644 index 0000000..a1d8bf1 --- /dev/null +++ b/examples/synthpp_mono/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_synthpp_mono +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/synthpp_poly/ios/Makefile b/examples/synthpp_poly/ios/Makefile new file mode 100644 index 0000000..be438f0 --- /dev/null +++ b/examples/synthpp_poly/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_synthpp_poly +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/synthpp_simple/ios/Makefile b/examples/synthpp_simple/ios/Makefile new file mode 100644 index 0000000..66b8403 --- /dev/null +++ b/examples/synthpp_simple/ios/Makefile @@ -0,0 +1,6 @@ +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +NAME := bw_example_synthpp_simple +SOURCE := ${NAME}.cpp + +include ${ROOT_DIR}/../../common/ios/ios.mk