|
96 | 96 | { |
97 | 97 | 'target_name': 'libffi', |
98 | 98 | 'type': 'static_library', |
| 99 | + 'hard_dependency': 1, |
99 | 100 | 'cflags': ['-fvisibility=hidden'], |
100 | 101 | 'xcode_settings': { |
101 | 102 | 'GCC_SYMBOLS_PRIVATE_EXTERN': 'YES', |
|
106 | 107 | ], |
107 | 108 | 'include_dirs': [ |
108 | 109 | 'include', |
109 | | - '<(INTERMEDIATE_DIR)', |
| 110 | + '<(SHARED_INTERMEDIATE_DIR)/libffi', |
110 | 111 | ], |
111 | 112 | 'sources': [ |
112 | 113 | '<@(libffi_sources)', |
|
123 | 124 | 'src/x86/ffitarget.h', |
124 | 125 | ], |
125 | 126 | 'outputs': [ |
126 | | - '<(INTERMEDIATE_DIR)/ffi.h', |
127 | | - '<(INTERMEDIATE_DIR)/fficonfig.h', |
128 | | - '<(INTERMEDIATE_DIR)/ffitarget.h', |
| 127 | + '<(SHARED_INTERMEDIATE_DIR)/libffi/ffi.h', |
| 128 | + '<(SHARED_INTERMEDIATE_DIR)/libffi/fficonfig.h', |
| 129 | + '<(SHARED_INTERMEDIATE_DIR)/libffi/ffitarget.h', |
129 | 130 | ], |
130 | 131 | 'action': [ |
131 | 132 | '<(python)', |
132 | 133 | 'generate-headers.py', |
133 | 134 | '--output-dir', |
134 | | - '<(INTERMEDIATE_DIR)', |
| 135 | + '<(SHARED_INTERMEDIATE_DIR)/libffi', |
135 | 136 | ], |
136 | 137 | }, |
137 | 138 | ], |
|
146 | 147 | 'include/ffi_cfi.h', |
147 | 148 | 'src/x86/asmnames.h', |
148 | 149 | 'src/x86/win64_intel.S', |
149 | | - '<(INTERMEDIATE_DIR)/ffi.h', |
150 | | - '<(INTERMEDIATE_DIR)/fficonfig.h', |
| 150 | + '<(SHARED_INTERMEDIATE_DIR)/libffi/ffi.h', |
| 151 | + '<(SHARED_INTERMEDIATE_DIR)/libffi/fficonfig.h', |
151 | 152 | ], |
152 | 153 | 'outputs': [ |
153 | | - '<(INTERMEDIATE_DIR)/win64_intel.asm', |
| 154 | + '<(SHARED_INTERMEDIATE_DIR)/libffi/win64_intel.asm', |
154 | 155 | ], |
155 | 156 | 'action': [ |
156 | 157 | '<(python)', |
|
172 | 173 | ['OS == "win" and target_arch == "arm64"', { |
173 | 174 | # Link the prebuilt object file directly |
174 | 175 | 'libraries': [ |
175 | | - '<(INTERMEDIATE_DIR)/win64_armasm.obj', |
| 176 | + '<(SHARED_INTERMEDIATE_DIR)/libffi/win64_armasm.obj', |
176 | 177 | ], |
177 | 178 | 'actions': [ |
178 | 179 | { |
|
183 | 184 | 'include/ffi_cfi.h', |
184 | 185 | 'src/aarch64/internal.h', |
185 | 186 | 'src/aarch64/win64_armasm.S', |
186 | | - '<(INTERMEDIATE_DIR)/ffi.h', |
187 | | - '<(INTERMEDIATE_DIR)/fficonfig.h', |
| 187 | + '<(SHARED_INTERMEDIATE_DIR)/libffi/ffi.h', |
| 188 | + '<(SHARED_INTERMEDIATE_DIR)/libffi/fficonfig.h', |
188 | 189 | ], |
189 | 190 | 'outputs': [ |
190 | | - '<(INTERMEDIATE_DIR)/win64_armasm.obj', |
| 191 | + '<(SHARED_INTERMEDIATE_DIR)/libffi/win64_armasm.obj', |
191 | 192 | ], |
192 | 193 | 'action': [ |
193 | 194 | '<(python)', |
194 | 195 | 'preprocess_asm.py', |
195 | 196 | '--input', |
196 | 197 | 'src/aarch64/win64_armasm.S', |
197 | 198 | '--output', |
198 | | - '<(INTERMEDIATE_DIR)/win64_armasm.asm', |
| 199 | + '<(SHARED_INTERMEDIATE_DIR)/libffi/win64_armasm.asm', |
199 | 200 | '--include-dir', |
200 | 201 | 'include', |
201 | 202 | '--include-dir', |
|
212 | 213 | 'direct_dependent_settings': { |
213 | 214 | 'include_dirs': [ |
214 | 215 | 'include', |
215 | | - '<(INTERMEDIATE_DIR)', |
| 216 | + '<(SHARED_INTERMEDIATE_DIR)/libffi', |
216 | 217 | ], |
217 | 218 | 'defines': [ |
218 | 219 | 'FFI_STATIC_BUILD', |
|
0 commit comments