Closed scar20 closed 3 years ago
Hi, good question and reminder as this was a development that was on the backlog for too long...
I have created a branch aar which contains an updated setup that separates the example activity from the core code, the latter which will be built as a library, packaged inside an AAR. The README file is also updated to describe how to include this AAR within a custom project.
Your workflow would then be that instead of cloning this repository and changing files accordingly, you have a checkout of the repository which creates the .AAR file. This file you can import in your custom project either manually or via an automation process that moves the assembled .AAR to the target project.
Perhaps you can give this a test drive and see if it works for your purposes ?
Here what i've done: fresh start:
Get from Version Control https://github.com/igorski/MWEngine.git
Open Gradle tool form View->Tool Windows->Gradle Unfold MWEngine->Task->build right-click assemble -> Run 'MWEngine [assemble]' then:
FAILURE: Build failed with an exception.
Where: Build file 'C:\Users\Sylvain\AndroidStudioProjects\MWEngine\mwengine\build.gradle' line: 1
What went wrong: A problem occurred evaluating project ':mwengine'.
Failed to apply plugin [id 'com.android.internal.version-check'] Minimum supported Gradle version is 6.5. Current version is 6.1.1. If using the gradle wrapper, try editing the distributionUrl in C:\Users\Sylvain\AndroidStudioProjects\MWEngine\gradle\wrapper\gradle-wrapper.properties to gradle-6.5-all.zip
Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
Get more help at https://help.gradle.org
changed gradle-wrapper.properties:
distributionUrl=https\://services.gradle.org/distributions/gradle-6.5-all.zip
and run again mwengine:assemble from the gradle tool
few warnings: many SWIG_ADD_MODULE is deprecated. Use SWIG_ADD_LIBRARY instead. and a few Warning 813: Warning for MWEngine::FrequencyModulator, base MWEngine::LFO ignored. Multiple inheritance is not supported in Java. but it finished with: BUILD SUCCESSFUL in 3m 39s 111 actionable tasks: 111 executed 1:13:46 PM: Task execution finished 'assemble'.
So it look cool... Now i'll try to import in a new project, not sure yet on how do do, so I'll try first from New Module or Import Module, if that fail, i'll install manually and see hoe far I can go.
Below is the complete log from the build in case there is some tweak to do:
1:08:35 PM: Executing task 'assemble'...
Executing tasks: [assemble] in project C:\Users\Sylvain\AndroidStudioProjects\MWEngine
Download https://services.gradle.org/distributions/gradle-6.5-all.zip (145.77 MB) Download https://services.gradle.org/distributions/gradle-6.5-all.zip finished succeeded, took 8 s 219 ms
Task :mwengine:preBuild UP-TO-DATE Task :mwengine:preDebugBuild UP-TO-DATE Task :mwengine:compileDebugAidl NO-SOURCE
Task :mwengine:generateJsonModelDebug C:\Users\Sylvain\AndroidStudioProjects\MWEngine\mwengine\CMakeLists.txt : C/C++ debug|armeabi-v7a : CMake Deprecation Warning at C:/Users/Sylvain/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/UseSWIG.cmake:231 (message): SWIG_ADD_MODULE is deprecated. Use SWIG_ADD_LIBRARY instead. Call Stack (most recent call first): CMakeLists.txt:176 (swig_add_module)
C:\Users\Sylvain\AndroidStudioProjects\MWEngine\mwengine\CMakeLists.txt : C/C++ debug|armeabi-v7a : CMake Deprecation Warning at C:/Users/Sylvain/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/UseSWIG.cmake:231 (message): SWIG_ADD_MODULE is deprecated. Use SWIG_ADD_LIBRARY instead. Call Stack (most recent call first): CMakeLists.txt:176 (swig_add_module)
C:\Users\Sylvain\AndroidStudioProjects\MWEngine\mwengine\CMakeLists.txt : C/C++ debug|arm64-v8a : CMake Deprecation Warning at C:/Users/Sylvain/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/UseSWIG.cmake:231 (message): SWIG_ADD_MODULE is deprecated. Use SWIG_ADD_LIBRARY instead. Call Stack (most recent call first): CMakeLists.txt:176 (swig_add_module)
C:\Users\Sylvain\AndroidStudioProjects\MWEngine\mwengine\CMakeLists.txt : C/C++ debug|arm64-v8a : CMake Deprecation Warning at C:/Users/Sylvain/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/UseSWIG.cmake:231 (message): SWIG_ADD_MODULE is deprecated. Use SWIG_ADD_LIBRARY instead. Call Stack (most recent call first): CMakeLists.txt:176 (swig_add_module)
C:\Users\Sylvain\AndroidStudioProjects\MWEngine\mwengine\CMakeLists.txt : C/C++ debug|x86_64 : CMake Deprecation Warning at C:/Users/Sylvain/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/UseSWIG.cmake:231 (message): SWIG_ADD_MODULE is deprecated. Use SWIG_ADD_LIBRARY instead. Call Stack (most recent call first): CMakeLists.txt:176 (swig_add_module)
C:\Users\Sylvain\AndroidStudioProjects\MWEngine\mwengine\CMakeLists.txt : C/C++ debug|x86_64 : CMake Deprecation Warning at C:/Users/Sylvain/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/UseSWIG.cmake:231 (message): SWIG_ADD_MODULE is deprecated. Use SWIG_ADD_LIBRARY instead. Call Stack (most recent call first): CMakeLists.txt:176 (swig_add_module)
Task :mwengine:externalNativeBuildDebug Build mwengine_wrapped_armeabi-v7a ninja: Entering directory
C:\Users\Sylvain\AndroidStudioProjects\MWEngine\mwengine\.cxx\cmake\debug\armeabi-v7a' [1/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/definitions/libraries.cpp.o [2/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/ringbuffer.cpp.o [3/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/wavetable.cpp.o [4/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/basecacheableaudioevent.cpp.o [5/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/audiochannel.cpp.o [6/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/channelgroup.cpp.o [7/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processingchain.cpp.o [8/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/sequencercontroller.cpp.o [9/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/drivers/adapter.cpp.o [10/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/sequencer.cpp.o [11/75] Building C object CMakeFiles/mwengine.dir/src/main/cpp/drivers/opensl_io.c.o [12/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/messaging/observer.cpp.o [13/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/drivers/aaudio_io.cpp.o [14/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/generators/envelopegenerator.cpp.o [15/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/generators/wavegenerator.cpp.o [16/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/baseaudioevent.cpp.o [17/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/instruments/sampledinstrument.cpp.o [18/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/sampleevent.cpp.o [19/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/global.cpp.o [20/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/services/library_loader.cpp.o [21/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/messaging/notifier.cpp.o [22/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/audiobuffer.cpp.o [23/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/instruments/baseinstrument.cpp.o [24/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/modules/envelopefollower.cpp.o [25/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/modules/routeableoscillator.cpp.o [26/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/bulkcacher.cpp.o [27/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/levelutility.cpp.o [28/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/fastmath.cpp.o [29/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/baseprocessor.cpp.o [30/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/audioengine.cpp.o [31/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/debug.cpp.o [32/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/modules/lfo.cpp.o [33/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/synthevent.cpp.o [34/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/wavereader.cpp.o [35/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/definitions/pitch.cpp.o [36/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/bufferpool.cpp.o [37/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/utils.cpp.o [38/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/samplemanager.cpp.o [39/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/tablepool.cpp.o [40/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/bufferutility.cpp.o [41/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/diskwriter.cpp.o [42/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/modules/arpeggiator.cpp.o [43/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/bitcrusher.cpp.o [44/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/wavewriter.cpp.o [45/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/modules/adsr.cpp.o [46/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/dcoffsetfilter.cpp.o [47/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/basesynthevent.cpp.o [48/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/generators/synthesizer.cpp.o [49/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/instruments/synthinstrument.cpp.o [50/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/instruments/oscillatorproperties.cpp.o [51/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/decimator.cpp.o [52/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/formantfilter.cpp.o [53/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/delay.cpp.o [54/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/filter.cpp.o [55/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/limiter.cpp.o [56/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/reverb.cpp.o [57/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/flanger.cpp.o [58/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/fm.cpp.o [59/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/lowpassfilter.cpp.o [60/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/phaser.cpp.o [61/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/glitcher.cpp.o [62/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/lpfhpfilter.cpp.o [63/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/pitchshifter.cpp.o [64/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/reverbsm.cpp.o [65/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/drumpattern.cpp.o [66/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/instruments/druminstrument.cpp.o [67/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/waveshaper.cpp.o [68/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/tremolo.cpp.o [69/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/jni/javabridge.cpp.o [70/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/drumevent.cpp.o [71/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/jni/javautilities.cpp.o [72/75] Linking CXX static library libmwengine.a [73/75] Swig source C:\Users\Sylvain\AndroidStudioProjects\MWEngine\mwengine\src\main\cpp\processors\fm.h(32) : Warning 813: Warning for MWEngine::FrequencyModulator, base MWEngine::LFO ignored. Multiple inheritance is not supported in Java. [74/75] Building CXX object CMakeFiles/mwengine_wrapped.dir/src/main/java/nl/igorski/mwengine/core/mwengineJAVA_wrap.cxx.o [75/75] Linking CXX shared module ..\..\..\..\build\intermediates\cmake\debug\obj\armeabi-v7a\libmwengine_wrapped.so Build mwengine_wrapped_arm64-v8a ninja: Entering directory
C:\Users\Sylvain\AndroidStudioProjects\MWEngine\mwengine.cxx\cmake\debug\arm64-v8a' [1/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/definitions/libraries.cpp.o [2/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/ringbuffer.cpp.o [3/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/wavetable.cpp.o [4/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/drivers/adapter.cpp.o [5/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/global.cpp.o [6/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processingchain.cpp.o [7/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/channelgroup.cpp.o [8/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/audiochannel.cpp.o [9/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/drivers/aaudio_io.cpp.o [10/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/sequencer.cpp.o [11/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/sequencercontroller.cpp.o [12/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/messaging/observer.cpp.o [13/75] Building C object CMakeFiles/mwengine.dir/src/main/cpp/drivers/opensl_io.c.o [14/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/generators/wavegenerator.cpp.o [15/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/generators/envelopegenerator.cpp.o [16/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/audiobuffer.cpp.o [17/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/services/library_loader.cpp.o [18/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/instruments/sampledinstrument.cpp.o [19/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/baseaudioevent.cpp.o [20/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/basecacheableaudioevent.cpp.o [21/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/sampleevent.cpp.o [22/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/instruments/baseinstrument.cpp.o [23/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/messaging/notifier.cpp.o [24/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/modules/envelopefollower.cpp.o [25/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/modules/routeableoscillator.cpp.o [26/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/baseprocessor.cpp.o [27/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/levelutility.cpp.o [28/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/bulkcacher.cpp.o [29/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/audioengine.cpp.o [30/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/fastmath.cpp.o [31/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/debug.cpp.o [32/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/wavereader.cpp.o [33/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/modules/lfo.cpp.o [34/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/samplemanager.cpp.o [35/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/utils.cpp.o [36/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/bufferutility.cpp.o [37/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/tablepool.cpp.o [38/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/bufferpool.cpp.o [39/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/diskwriter.cpp.o [40/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/wavewriter.cpp.o [41/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/basesynthevent.cpp.o [42/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/synthevent.cpp.o [43/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/instruments/synthinstrument.cpp.o [44/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/modules/arpeggiator.cpp.o [45/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/definitions/pitch.cpp.o [46/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/instruments/oscillatorproperties.cpp.o [47/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/dcoffsetfilter.cpp.o [48/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/generators/synthesizer.cpp.o [49/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/modules/adsr.cpp.o [50/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/delay.cpp.o [51/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/decimator.cpp.o [52/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/bitcrusher.cpp.o [53/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/filter.cpp.o [54/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/formantfilter.cpp.o [55/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/phaser.cpp.o [56/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/lpfhpfilter.cpp.o [57/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/reverb.cpp.o [58/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/fm.cpp.o [59/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/flanger.cpp.o [60/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/pitchshifter.cpp.o [61/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/lowpassfilter.cpp.o [62/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/glitcher.cpp.o [63/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/limiter.cpp.o [64/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/reverbsm.cpp.o [65/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/jni/javabridge.cpp.o [66/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/tremolo.cpp.o [67/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/instruments/druminstrument.cpp.o [68/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/jni/javautilities.cpp.o [69/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/waveshaper.cpp.o [70/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/drumpattern.cpp.o [71/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/drumevent.cpp.o [72/75] Linking CXX static library libmwengine.a [73/75] Swig source C:\Users\Sylvain\AndroidStudioProjects\MWEngine\mwengine\src\main\cpp\processors\fm.h(32) : Warning 813: Warning for MWEngine::FrequencyModulator, base MWEngine::LFO ignored. Multiple inheritance is not supported in Java. [74/75] Building CXX object CMakeFiles/mwengine_wrapped.dir/src/main/java/nl/igorski/mwengine/core/mwengineJAVA_wrap.cxx.o [75/75] Linking CXX shared module ........\build\intermediates\cmake\debug\obj\arm64-v8a\libmwengine_wrapped.so Build mwengine_wrapped_x86_64 ninja: Entering directory `C:\Users\Sylvain\AndroidStudioProjects\MWEngine\mwengine.cxx\cmake\debug\x86_64' [1/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/ringbuffer.cpp.o [2/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/wavetable.cpp.o [3/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/drivers/adapter.cpp.o [4/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/global.cpp.o [5/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/sequencercontroller.cpp.o [6/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processingchain.cpp.o [7/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/definitions/libraries.cpp.o [8/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/audiochannel.cpp.o [9/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/channelgroup.cpp.o [10/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/sequencer.cpp.o [11/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/messaging/observer.cpp.o [12/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/drivers/aaudio_io.cpp.o [13/75] Building C object CMakeFiles/mwengine.dir/src/main/cpp/drivers/opensl_io.c.o [14/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/generators/envelopegenerator.cpp.o [15/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/generators/wavegenerator.cpp.o [16/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/audiobuffer.cpp.o [17/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/services/library_loader.cpp.o [18/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/basecacheableaudioevent.cpp.o [19/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/instruments/sampledinstrument.cpp.o [20/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/baseaudioevent.cpp.o [21/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/sampleevent.cpp.o [22/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/instruments/baseinstrument.cpp.o [23/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/messaging/notifier.cpp.o [24/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/modules/envelopefollower.cpp.o [25/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/modules/routeableoscillator.cpp.o [26/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/bulkcacher.cpp.o [27/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/baseprocessor.cpp.o [28/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/audioengine.cpp.o [29/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/fastmath.cpp.o [30/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/debug.cpp.o [31/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/levelutility.cpp.o [32/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/modules/lfo.cpp.o [33/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/wavereader.cpp.o [34/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/samplemanager.cpp.o [35/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/utils.cpp.o [36/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/tablepool.cpp.o [37/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/diskwriter.cpp.o [38/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/bufferpool.cpp.o [39/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/bufferutility.cpp.o [40/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/synthevent.cpp.o [41/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/definitions/pitch.cpp.o [42/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/dcoffsetfilter.cpp.o [43/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/modules/arpeggiator.cpp.o [44/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/wavewriter.cpp.o [45/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/bitcrusher.cpp.o [46/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/basesynthevent.cpp.o [47/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/modules/adsr.cpp.o [48/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/decimator.cpp.o [49/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/delay.cpp.o [50/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/instruments/oscillatorproperties.cpp.o [51/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/generators/synthesizer.cpp.o [52/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/instruments/synthinstrument.cpp.o [53/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/pitchshifter.cpp.o [54/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/formantfilter.cpp.o [55/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/filter.cpp.o [56/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/fm.cpp.o [57/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/lpfhpfilter.cpp.o [58/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/glitcher.cpp.o [59/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/lowpassfilter.cpp.o [60/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/limiter.cpp.o [61/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/reverbsm.cpp.o [62/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/phaser.cpp.o [63/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/reverb.cpp.o [64/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/flanger.cpp.o [65/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/instruments/druminstrument.cpp.o [66/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/drumpattern.cpp.o [67/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/jni/javautilities.cpp.o [68/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/drumevent.cpp.o [69/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/jni/javabridge.cpp.o [70/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/tremolo.cpp.o [71/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/waveshaper.cpp.o [72/75] Linking CXX static library libmwengine.a [73/75] Swig source C:\Users\Sylvain\AndroidStudioProjects\MWEngine\mwengine\src\main\cpp\processors\fm.h(32) : Warning 813: Warning for MWEngine::FrequencyModulator, base MWEngine::LFO ignored. Multiple inheritance is not supported in Java. [74/75] Building CXX object CMakeFiles/mwengine_wrapped.dir/src/main/java/nl/igorski/mwengine/core/mwengineJAVA_wrap.cxx.o [75/75] Linking CXX shared module ........\build\intermediates\cmake\debug\obj\x86_64\libmwengine_wrapped.soTask :mwengine:mergeDebugJniLibFolders Task :mwengine:compileDebugRenderscript NO-SOURCE Task :mwengine:generateDebugBuildConfig Task :mwengine:generateDebugResValues Task :mwengine:generateDebugResources Task :mwengine:packageDebugResources Task :mwengine:mergeDebugNativeLibs Task :mwengine:parseDebugLocalResources Task :mwengine:stripDebugDebugSymbols Task :mwengine:copyDebugJniLibsProjectAndLocalJars Task :mwengine:javaPreCompileDebug Task :mwengine:mergeDebugShaders Task :mwengine:compileDebugShaders NO-SOURCE Task :mwengine:generateDebugAssets UP-TO-DATE Task :mwengine:packageDebugAssets Task :mwengine:packageDebugRenderscript NO-SOURCE Task :mwengine:prepareLintJarForPublish Task :mwengine:processDebugJavaRes NO-SOURCE Task :mwengine:preReleaseBuild UP-TO-DATE Task :mwengine:compileReleaseAidl NO-SOURCE Task :mwengine:writeDebugAarMetadata Task :mwengine:mergeDebugJavaResource Task :mwengine:processDebugManifest
Task :mwengine:generateJsonModelRelease C:\Users\Sylvain\AndroidStudioProjects\MWEngine\mwengine\CMakeLists.txt : C/C++ release|armeabi-v7a : CMake Deprecation Warning at C:/Users/Sylvain/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/UseSWIG.cmake:231 (message): SWIG_ADD_MODULE is deprecated. Use SWIG_ADD_LIBRARY instead. Call Stack (most recent call first): CMakeLists.txt:176 (swig_add_module)
C:\Users\Sylvain\AndroidStudioProjects\MWEngine\mwengine\CMakeLists.txt : C/C++ release|armeabi-v7a : CMake Deprecation Warning at C:/Users/Sylvain/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/UseSWIG.cmake:231 (message): SWIG_ADD_MODULE is deprecated. Use SWIG_ADD_LIBRARY instead. Call Stack (most recent call first): CMakeLists.txt:176 (swig_add_module)
C:\Users\Sylvain\AndroidStudioProjects\MWEngine\mwengine\CMakeLists.txt : C/C++ release|arm64-v8a : CMake Deprecation Warning at C:/Users/Sylvain/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/UseSWIG.cmake:231 (message): SWIG_ADD_MODULE is deprecated. Use SWIG_ADD_LIBRARY instead. Call Stack (most recent call first): CMakeLists.txt:176 (swig_add_module)
C:\Users\Sylvain\AndroidStudioProjects\MWEngine\mwengine\CMakeLists.txt : C/C++ release|arm64-v8a : CMake Deprecation Warning at C:/Users/Sylvain/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/UseSWIG.cmake:231 (message): SWIG_ADD_MODULE is deprecated. Use SWIG_ADD_LIBRARY instead. Call Stack (most recent call first): CMakeLists.txt:176 (swig_add_module)
C:\Users\Sylvain\AndroidStudioProjects\MWEngine\mwengine\CMakeLists.txt : C/C++ release|x86_64 : CMake Deprecation Warning at C:/Users/Sylvain/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/UseSWIG.cmake:231 (message): SWIG_ADD_MODULE is deprecated. Use SWIG_ADD_LIBRARY instead. Call Stack (most recent call first): CMakeLists.txt:176 (swig_add_module)
C:\Users\Sylvain\AndroidStudioProjects\MWEngine\mwengine\CMakeLists.txt : C/C++ release|x86_64 : CMake Deprecation Warning at C:/Users/Sylvain/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/UseSWIG.cmake:231 (message): SWIG_ADD_MODULE is deprecated. Use SWIG_ADD_LIBRARY instead. Call Stack (most recent call first): CMakeLists.txt:176 (swig_add_module)
Task :mwengine:generateDebugRFile
Task :mwengine:externalNativeBuildRelease Build mwengine_wrapped_armeabi-v7a ninja: Entering directory
C:\Users\Sylvain\AndroidStudioProjects\MWEngine\mwengine\.cxx\cmake\release\armeabi-v7a' [1/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/definitions/libraries.cpp.o [2/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/wavetable.cpp.o [3/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/audiobuffer.cpp.o [4/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/ringbuffer.cpp.o [5/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processingchain.cpp.o [6/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/channelgroup.cpp.o [7/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/drivers/adapter.cpp.o [8/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/audiochannel.cpp.o [9/75] Building C object CMakeFiles/mwengine.dir/src/main/cpp/drivers/opensl_io.c.o [10/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/messaging/observer.cpp.o [11/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/sequencer.cpp.o [12/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/sequencercontroller.cpp.o [13/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/generators/envelopegenerator.cpp.o [14/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/audioengine.cpp.o [15/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/basecacheableaudioevent.cpp.o [16/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/sampleevent.cpp.o [17/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/baseaudioevent.cpp.o [18/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/services/library_loader.cpp.o [19/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/drivers/aaudio_io.cpp.o [20/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/instruments/sampledinstrument.cpp.o [21/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/generators/wavegenerator.cpp.o [22/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/global.cpp.o [23/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/messaging/notifier.cpp.o [24/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/modules/envelopefollower.cpp.o [25/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/instruments/baseinstrument.cpp.o [26/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/fastmath.cpp.o [27/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/modules/lfo.cpp.o [28/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/modules/routeableoscillator.cpp.o [29/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/baseprocessor.cpp.o [30/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/levelutility.cpp.o [31/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/bulkcacher.cpp.o [32/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/debug.cpp.o [33/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/wavereader.cpp.o [34/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/utils.cpp.o [35/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/tablepool.cpp.o [36/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/samplemanager.cpp.o [37/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/bufferutility.cpp.o [38/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/definitions/pitch.cpp.o [39/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/decimator.cpp.o [40/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/synthevent.cpp.o [41/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/diskwriter.cpp.o [42/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/bufferpool.cpp.o [43/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/delay.cpp.o [44/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/basesynthevent.cpp.o [45/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/wavewriter.cpp.o [46/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/instruments/oscillatorproperties.cpp.o [47/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/modules/arpeggiator.cpp.o [48/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/modules/adsr.cpp.o [49/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/generators/synthesizer.cpp.o [50/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/bitcrusher.cpp.o [51/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/dcoffsetfilter.cpp.o [52/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/instruments/synthinstrument.cpp.o [53/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/filter.cpp.o [54/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/reverb.cpp.o [55/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/flanger.cpp.o [56/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/pitchshifter.cpp.o [57/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/formantfilter.cpp.o [58/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/lowpassfilter.cpp.o [59/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/fm.cpp.o [60/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/limiter.cpp.o [61/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/glitcher.cpp.o [62/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/lpfhpfilter.cpp.o [63/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/phaser.cpp.o [64/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/jni/javabridge.cpp.o [65/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/reverbsm.cpp.o [66/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/tremolo.cpp.o [67/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/jni/javautilities.cpp.o [68/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/waveshaper.cpp.o [69/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/drumevent.cpp.o [70/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/drumpattern.cpp.o [71/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/instruments/druminstrument.cpp.o [72/75] Linking CXX static library libmwengine.a [73/75] Swig source C:\Users\Sylvain\AndroidStudioProjects\MWEngine\mwengine\src\main\cpp\processors\fm.h(32) : Warning 813: Warning for MWEngine::FrequencyModulator, base MWEngine::LFO ignored. Multiple inheritance is not supported in Java. [74/75] Building CXX object CMakeFiles/mwengine_wrapped.dir/src/main/java/nl/igorski/mwengine/core/mwengineJAVA_wrap.cxx.o [75/75] Linking CXX shared module ..\..\..\..\build\intermediates\cmake\release\obj\armeabi-v7a\libmwengine_wrapped.so Build mwengine_wrapped_arm64-v8a ninja: Entering directory
C:\Users\Sylvain\AndroidStudioProjects\MWEngine\mwengine.cxx\cmake\release\arm64-v8a' [1/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/definitions/libraries.cpp.o [2/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/ringbuffer.cpp.o [3/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/wavetable.cpp.o [4/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/drivers/adapter.cpp.o [5/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/channelgroup.cpp.o [6/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/audiochannel.cpp.o [7/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processingchain.cpp.o [8/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/messaging/observer.cpp.o [9/75] Building C object CMakeFiles/mwengine.dir/src/main/cpp/drivers/opensl_io.c.o [10/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/sequencercontroller.cpp.o [11/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/drivers/aaudio_io.cpp.o [12/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/sequencer.cpp.o [13/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/baseaudioevent.cpp.o [14/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/generators/envelopegenerator.cpp.o [15/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/basecacheableaudioevent.cpp.o [16/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/generators/wavegenerator.cpp.o [17/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/global.cpp.o [18/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/sampleevent.cpp.o [19/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/services/library_loader.cpp.o [20/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/instruments/sampledinstrument.cpp.o [21/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/messaging/notifier.cpp.o [22/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/audiobuffer.cpp.o [23/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/modules/routeableoscillator.cpp.o [24/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/instruments/baseinstrument.cpp.o [25/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/fastmath.cpp.o [26/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/modules/envelopefollower.cpp.o [27/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/baseprocessor.cpp.o [28/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/bulkcacher.cpp.o [29/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/levelutility.cpp.o [30/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/modules/lfo.cpp.o [31/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/debug.cpp.o [32/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/audioengine.cpp.o [33/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/wavereader.cpp.o [34/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/utils.cpp.o [35/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/tablepool.cpp.o [36/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/bufferutility.cpp.o [37/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/samplemanager.cpp.o [38/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/bufferpool.cpp.o [39/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/basesynthevent.cpp.o [40/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/definitions/pitch.cpp.o [41/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/synthevent.cpp.o [42/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/modules/arpeggiator.cpp.o [43/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/diskwriter.cpp.o [44/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/wavewriter.cpp.o [45/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/instruments/oscillatorproperties.cpp.o [46/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/bitcrusher.cpp.o [47/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/instruments/synthinstrument.cpp.o [48/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/dcoffsetfilter.cpp.o [49/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/generators/synthesizer.cpp.o [50/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/decimator.cpp.o [51/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/modules/adsr.cpp.o [52/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/delay.cpp.o [53/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/flanger.cpp.o [54/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/limiter.cpp.o [55/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/filter.cpp.o [56/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/fm.cpp.o [57/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/lowpassfilter.cpp.o [58/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/lpfhpfilter.cpp.o [59/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/phaser.cpp.o [60/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/formantfilter.cpp.o [61/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/pitchshifter.cpp.o [62/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/glitcher.cpp.o [63/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/reverb.cpp.o [64/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/jni/javabridge.cpp.o [65/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/waveshaper.cpp.o [66/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/reverbsm.cpp.o [67/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/drumevent.cpp.o [68/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/instruments/druminstrument.cpp.o [69/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/drumpattern.cpp.o [70/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/tremolo.cpp.o [71/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/jni/javautilities.cpp.o [72/75] Linking CXX static library libmwengine.a [73/75] Swig source C:\Users\Sylvain\AndroidStudioProjects\MWEngine\mwengine\src\main\cpp\processors\fm.h(32) : Warning 813: Warning for MWEngine::FrequencyModulator, base MWEngine::LFO ignored. Multiple inheritance is not supported in Java. [74/75] Building CXX object CMakeFiles/mwengine_wrapped.dir/src/main/java/nl/igorski/mwengine/core/mwengineJAVA_wrap.cxx.o [75/75] Linking CXX shared module ........\build\intermediates\cmake\release\obj\arm64-v8a\libmwengine_wrapped.so Build mwengine_wrapped_x86_64 ninja: Entering directory `C:\Users\Sylvain\AndroidStudioProjects\MWEngine\mwengine.cxx\cmake\release\x86_64' [1/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/definitions/libraries.cpp.o [2/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/global.cpp.o [3/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/ringbuffer.cpp.o [4/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processingchain.cpp.o [5/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/drivers/adapter.cpp.o [6/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/wavetable.cpp.o [7/75] Building C object CMakeFiles/mwengine.dir/src/main/cpp/drivers/opensl_io.c.o [8/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/audiochannel.cpp.o [9/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/channelgroup.cpp.o [10/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/sequencer.cpp.o [11/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/sequencercontroller.cpp.o [12/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/messaging/observer.cpp.o [13/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/generators/envelopegenerator.cpp.o [14/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/drivers/aaudio_io.cpp.o [15/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/generators/wavegenerator.cpp.o [16/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/sampleevent.cpp.o [17/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/services/library_loader.cpp.o [18/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/basecacheableaudioevent.cpp.o [19/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/baseaudioevent.cpp.o [20/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/instruments/sampledinstrument.cpp.o [21/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/audiobuffer.cpp.o [22/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/instruments/baseinstrument.cpp.o [23/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/messaging/notifier.cpp.o [24/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/modules/envelopefollower.cpp.o [25/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/modules/routeableoscillator.cpp.o [26/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/baseprocessor.cpp.o [27/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/levelutility.cpp.o [28/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/modules/lfo.cpp.o [29/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/fastmath.cpp.o [30/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/audioengine.cpp.o [31/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/debug.cpp.o [32/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/bulkcacher.cpp.o [33/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/wavereader.cpp.o [34/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/utils.cpp.o [35/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/samplemanager.cpp.o [36/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/bufferpool.cpp.o [37/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/bufferutility.cpp.o [38/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/tablepool.cpp.o [39/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/basesynthevent.cpp.o [40/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/synthevent.cpp.o [41/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/definitions/pitch.cpp.o [42/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/diskwriter.cpp.o [43/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/dcoffsetfilter.cpp.o [44/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/delay.cpp.o [45/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/modules/arpeggiator.cpp.o [46/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/decimator.cpp.o [47/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/bitcrusher.cpp.o [48/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/instruments/oscillatorproperties.cpp.o [49/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/generators/synthesizer.cpp.o [50/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/utilities/wavewriter.cpp.o [51/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/instruments/synthinstrument.cpp.o [52/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/modules/adsr.cpp.o [53/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/filter.cpp.o [54/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/phaser.cpp.o [55/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/fm.cpp.o [56/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/pitchshifter.cpp.o [57/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/limiter.cpp.o [58/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/glitcher.cpp.o [59/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/reverb.cpp.o [60/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/lowpassfilter.cpp.o [61/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/lpfhpfilter.cpp.o [62/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/flanger.cpp.o [63/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/formantfilter.cpp.o [64/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/reverbsm.cpp.o [65/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/waveshaper.cpp.o [66/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/processors/tremolo.cpp.o [67/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/jni/javabridge.cpp.o [68/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/events/drumevent.cpp.o [69/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/drumpattern.cpp.o [70/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/instruments/druminstrument.cpp.o [71/75] Building CXX object CMakeFiles/mwengine.dir/src/main/cpp/jni/javautilities.cpp.o [72/75] Linking CXX static library libmwengine.a [73/75] Swig source C:\Users\Sylvain\AndroidStudioProjects\MWEngine\mwengine\src\main\cpp\processors\fm.h(32) : Warning 813: Warning for MWEngine::FrequencyModulator, base MWEngine::LFO ignored. Multiple inheritance is not supported in Java. [74/75] Building CXX object CMakeFiles/mwengine_wrapped.dir/src/main/java/nl/igorski/mwengine/core/mwengineJAVA_wrap.cxx.o [75/75] Linking CXX shared module ........\build\intermediates\cmake\release\obj\x86_64\libmwengine_wrapped.soTask :mwengine:mergeReleaseJniLibFolders Task :mwengine:compileReleaseRenderscript NO-SOURCE Task :mwengine:mergeReleaseNativeLibs Task :mwengine:compileDebugJavaWithJavac Task :mwengine:extractDebugAnnotations Task :mwengine:mergeDebugGeneratedProguardFiles Task :mwengine:mergeDebugConsumerProguardFiles Task :mwengine:syncDebugLibJars Task :mwengine:bundleDebugAar Task :mwengine:compileDebugSources Task :mwengine:assembleDebug Task :mwengine:stripReleaseDebugSymbols Task :mwengine:copyReleaseJniLibsProjectAndLocalJars Task :mwengine:generateReleaseBuildConfig Task :mwengine:generateReleaseResValues Task :mwengine:generateReleaseResources Task :mwengine:packageReleaseResources Task :mwengine:parseReleaseLocalResources Task :mwengine:javaPreCompileRelease Task :mwengine:mergeReleaseShaders Task :mwengine:compileReleaseShaders NO-SOURCE Task :mwengine:generateReleaseAssets UP-TO-DATE Task :mwengine:processReleaseManifest Task :mwengine:packageReleaseAssets Task :mwengine:packageReleaseRenderscript NO-SOURCE Task :mwengine:processReleaseJavaRes NO-SOURCE Task :mwengine:generateReleaseRFile Task :mwengine:writeReleaseAarMetadata Task :mwengine:mergeReleaseJavaResource Task :mwengine:mergeReleaseResources Task :mwengine:compileReleaseJavaWithJavac Task :mwengine:extractReleaseAnnotations Task :mwengine:mergeReleaseGeneratedProguardFiles Task :mwengine:mergeReleaseConsumerProguardFiles Task :mwengine:syncReleaseLibJars Task :mwengine:compileReleaseSources Task :mwengine_example:preBuild UP-TO-DATE Task :mwengine_example:preDebugBuild UP-TO-DATE Task :mwengine_example:compileDebugAidl NO-SOURCE Task :mwengine_example:compileDebugRenderscript NO-SOURCE Task :mwengine_example:generateDebugBuildConfig Task :mwengine_example:javaPreCompileDebug Task :mwengine:compileDebugLibraryResources Task :mwengine_example:checkDebugAarMetadata Task :mwengine_example:generateDebugResValues Task :mwengine_example:generateDebugResources Task :mwengine:bundleLibCompileToJarDebug Task :mwengine_example:mergeDebugResources Task :mwengine:verifyReleaseResources Task :mwengine:bundleReleaseAar Task :mwengine:assembleRelease Task :mwengine:assemble Task :mwengine_example:createDebugCompatibleScreenManifests Task :mwengine:extractDeepLinksDebug Task :mwengine_example:extractDeepLinksDebug Task :mwengine_example:processDebugMainManifest Task :mwengine_example:processDebugManifest Task :mwengine_example:mergeDebugNativeDebugMetadata NO-SOURCE Task :mwengine_example:mergeDebugShaders Task :mwengine_example:compileDebugShaders NO-SOURCE Task :mwengine_example:generateDebugAssets UP-TO-DATE Task :mwengine_example:mergeDebugAssets Task :mwengine:bundleLibResDebug NO-SOURCE Task :mwengine_example:processDebugJavaRes NO-SOURCE Task :mwengine_example:compressDebugAssets Task :mwengine_example:mergeDebugJavaResource Task :mwengine_example:checkDebugDuplicateClasses Task :mwengine:bundleLibRuntimeToJarDebug Task :mwengine:copyDebugJniLibsProjectOnly Task :mwengine_example:mergeExtDexDebug Task :mwengine_example:mergeDebugJniLibFolders Task :mwengine_example:validateSigningDebug Task :mwengine_example:preReleaseBuild UP-TO-DATE Task :mwengine_example:compileReleaseAidl NO-SOURCE Task :mwengine_example:compileReleaseRenderscript NO-SOURCE Task :mwengine_example:generateReleaseBuildConfig Task :mwengine_example:mergeDebugNativeLibs Task :mwengine_example:javaPreCompileRelease Task :mwengine:bundleLibCompileToJarRelease Task :mwengine_example:stripDebugDebugSymbols Task :mwengine:compileReleaseLibraryResources Task :mwengine_example:checkReleaseAarMetadata Task :mwengine_example:generateReleaseResValues Task :mwengine_example:generateReleaseResources Task :mwengine_example:createReleaseCompatibleScreenManifests Task :mwengine:extractDeepLinksRelease Task :mwengine_example:extractDeepLinksRelease Task :mwengine_example:processReleaseMainManifest Task :mwengine_example:processReleaseManifest Task :mwengine_example:mergeReleaseResources Task :mwengine_example:mergeReleaseNativeDebugMetadata NO-SOURCE Task :mwengine_example:mergeReleaseShaders Task :mwengine_example:compileReleaseShaders NO-SOURCE Task :mwengine_example:generateReleaseAssets UP-TO-DATE Task :mwengine_example:mergeReleaseAssets Task :mwengine_example:processDebugManifestForPackage Task :mwengine_example:compressReleaseAssets Task :mwengine_example:processDebugResources Task :mwengine_example:compileDebugJavaWithJavac Task :mwengine_example:compileDebugSources Task :mwengine_example:dexBuilderDebug Task :mwengine_example:checkReleaseDuplicateClasses Task :mwengine:bundleLibResRelease NO-SOURCE Task :mwengine_example:mergeExtDexRelease Task :mwengine_example:processReleaseJavaRes NO-SOURCE Task :mwengine_example:mergeReleaseJavaResource Task :mwengine:bundleLibRuntimeToJarRelease Task :mwengine_example:collectReleaseDependencies Task :mwengine_example:sdkReleaseDependencyData Task :mwengine:copyReleaseJniLibsProjectOnly Task :mwengine_example:mergeReleaseJniLibFolders Task :mwengine_example:processReleaseManifestForPackage Task :mwengine_example:mergeReleaseNativeLibs Task :mwengine_example:processReleaseResources Task :mwengine_example:mergeDexDebug Task :mwengine_example:compileReleaseJavaWithJavac Task :mwengine_example:compileReleaseSources Task :mwengine_example:lintVitalRelease Task :mwengine_example:dexBuilderRelease Task :mwengine_example:stripReleaseDebugSymbols Task :mwengine_example:mergeDexRelease Task :mwengine_example:packageDebug Task :mwengine_example:assembleDebug Task :mwengine_example:packageRelease Task :mwengine_example:assembleRelease Task :mwengine_example:assemble
BUILD SUCCESSFUL in 3m 39s 111 actionable tasks: 111 executed 1:13:46 PM: Task execution finished 'assemble'.
Hi, good question and reminder as this was a development that was on the backlog for too long...
I have created a branch aar which contains an updated setup that separates the example activity from the core code, the latter which will be built as a library, packaged inside an AAR. The README file is also updated to describe how to include this AAR within a custom project.
Your workflow would then be that instead of cloning this repository and changing files accordingly, you have a checkout of the repository which creates the .AAR file. This file you can import in your custom project either manually or via an automation process that moves the assembled .AAR to the target project.
Perhaps you can give this a test drive and see if it works for your purposes ?
OK, I imported the aar according to https://developer.android.com/studio/projects/android-library:
File->New->New Module
Import .JAR/.AAR Package
configurations.maybeCreate("default") artifacts.add("default", file('mwengine-debug.aar'))
idem for settings-gradle:
include ':mwengine-debug' include ':app' rootProject.name='AudioWithLib'
and then added this line in the dependency section of build.gradle(:app) implementation project(":mwengine-debug")
Then sync and I got this warning
Deprecated Gradle features were used in this build, making it incompatible with Gradle 6.0. Use '--warning-mode all' to show the individual deprecation warnings. See https://docs.gradle.org/5.4.1/userguide/command_line_interface.html#sec:command_line_warnings
But in main (which is a modified MWEngineActivity) everything was in red. I right-click the library -> Load/Unload Modules... and load the module
Now most of main been resolved but for: BUFFER_SIZE = DevicePropertyCalculator.getRecommendedBufferSize( getApplicationContext() ); SAMPLE_RATE = DevicePropertyCalculator.getRecommendedSampleRate( getApplicationContext() ); Those two do not seem to come from core.
I tried also as you suggest in the readme and moved(refactor) the arr in .libs and add the dirs "libs" line in the "allprojects" section and the ndk line in the defaultConfig section of the build.gradle(:app). But it didnt work. It seem i'm close though.
Stupid me... It didnt compile because my main was from a modified MWEngineActivity from last year.... So BUFFER_SIZE = DevicePropertyCalculator.getRecommendedBufferSize( getApplicationContext() ); SAMPLE_RATE = DevicePropertyCalculator.getRecommendedSampleRate( getApplicationContext() ) have now been replaced to BUFFER_SIZE = MWEngine.getRecommendedBufferSize( getApplicationContext() ); SAMPLE_RATE = MWEngine.getRecommendedSampleRate( getApplicationContext() ); Now everything is fine, it compile and run. Although I could not reproduce it in the way indicated in the readme by copying in the libs directory. I could only make it happen with Android Studio New Module pointing to the aar without a libs directory. The only line I had to add was the implementation project(":mwengine-debug") dependency.
Glad to hear its working! :)
I shall update the README with your findings, thanks for the test drive and elaborate info!
Here is the minimal steps you need to install MWEngine as a lib:
1 - First get the aar branch of the library https://github.com/igorski/MWEngine/tree/aar either cloning or download the zip - if you clone, make sure you checkout the aar branch on bottom right of Android Studio.
2 - Open the gradle command tool: View->Tool Windows->Gradle and right-click on mwengine->Tasks->build->assemble
You can find the resulting aar's in
3a - In your project, import the library with New->New Module... and select Import .JAR/.AAR Package
and 3b - browse to the location of the aar you want (you can only import one at a time), select and click finish.
4 - In the build.gradle(:app) add these lines to the defaultConfig section:
ndk {
// these values must match the abi's defined in mwengine/build.gradle
// to prevent UnsatisfiedLinkError when this app tries to serve an unsupported architecture
abiFilters "armeabi-v7a", "arm64-v8a", "x86_64"
}
and this line to the dependency section:
implementation project(":mwengine-debug")
or :mwengine-release depending on which one you selected
That's it
Thanks! 🎉
I added your instructions to the README and have merged the branch into master. From this day forth, MWEngine will out of the box build its core library as a shareable module.
Last year, I've hacked up the example in MWEngine to see its capability. Now I want to properly use the engine as a library for my project. I got a fresh new clone of MWEngine from GitHub and a made a small project to link with just for the purpose of figuring out the right way to do it. I did File->New->Import Module... and pointed to the fresh clone. At first, it seem to had worked but trying to build give error due to the presence of the example app. And deleting it just made chain reactions of others errors. Now a mess... I'm not familiar with configuration stuff so some advice to help me jumps start will be appreciated. I did read the doc, but I'm a bit overwhelmed by all the options. Do I need to do a AAR?
Ideally, I want to have a pure MWEngine on which I could make branch for modifications and use the modification branch as a library in my main project. I have latest Android Studio API 30 and latest NDK installed on Windows10
Thanks