expo-juce 0.2.4 → 0.2.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ios/ExpoJuce.podspec +17 -6
- package/package.json +1 -1
package/ios/ExpoJuce.podspec
CHANGED
|
@@ -17,12 +17,18 @@ Pod::Spec.new do |s|
|
|
|
17
17
|
|
|
18
18
|
s.dependency 'ExpoModulesCore'
|
|
19
19
|
|
|
20
|
-
#
|
|
21
|
-
#
|
|
22
|
-
#
|
|
23
|
-
|
|
20
|
+
# Only OUR source files — not JUCE subdirectories.
|
|
21
|
+
# JUCE headers must NOT be in source_files or CocoaPods adds them to the
|
|
22
|
+
# module map, where they fail to compile standalone (missing FLT_MAX etc).
|
|
23
|
+
# JuceModules.mm #includes the JUCE .cpp files via amalgamation;
|
|
24
|
+
# JUCE headers are found via HEADER_SEARCH_PATHS.
|
|
25
|
+
s.source_files = "*.{h,m,mm,swift}"
|
|
26
|
+
# JuceConfig.h is a C++ prefix header (uses <cfloat> etc.) — it must NOT
|
|
27
|
+
# appear in the Clang module map or Swift/ObjC imports will fail.
|
|
28
|
+
# It's applied to C++ via OTHER_CPLUSPLUSFLAGS -include instead.
|
|
29
|
+
s.exclude_files = "JuceConfig.h"
|
|
24
30
|
|
|
25
|
-
# JUCE
|
|
31
|
+
# Keep JUCE sources on disk so the compiler can find them via #include
|
|
26
32
|
s.preserve_paths = "juce_modules/**"
|
|
27
33
|
|
|
28
34
|
# iOS frameworks required by JUCE modules + our AVAudioEngine code
|
|
@@ -36,7 +42,12 @@ Pod::Spec.new do |s|
|
|
|
36
42
|
'SWIFT_COMPILATION_MODE' => 'wholemodule',
|
|
37
43
|
'CLANG_CXX_LANGUAGE_STANDARD' => 'c++17',
|
|
38
44
|
'CLANG_ENABLE_OBJC_ARC' => 'YES',
|
|
39
|
-
|
|
45
|
+
# Only our ios/ dir in HEADER_SEARCH_PATHS — safe for the Clang module map.
|
|
46
|
+
# JUCE's juce_modules/ goes in OTHER_CPLUSPLUSFLAGS so it only affects
|
|
47
|
+
# C++/ObjC++ source compilation and can't shadow system headers during
|
|
48
|
+
# module building (JUCE bundles its own zlib.h, etc.).
|
|
49
|
+
'HEADER_SEARCH_PATHS' => '"$(PODS_TARGET_SRCROOT)/ios"',
|
|
40
50
|
'GCC_PREPROCESSOR_DEFINITIONS' => '$(inherited) JUCE_GLOBAL_MODULE_SETTINGS_INCLUDED=1',
|
|
51
|
+
'OTHER_CPLUSPLUSFLAGS' => '$(inherited) -I"$(PODS_TARGET_SRCROOT)/ios/juce_modules" -include "$(PODS_TARGET_SRCROOT)/ios/JuceConfig.h"',
|
|
41
52
|
}
|
|
42
53
|
end
|