More mac/ios build improvements
This commit is contained in:
committed by
Anthony Green
parent
853cc722a1
commit
39e6a58604
3
.gitignore
vendored
3
.gitignore
vendored
@@ -19,4 +19,5 @@ autom4te.cache
|
|||||||
libffi.xcodeproj/xcuserdata
|
libffi.xcodeproj/xcuserdata
|
||||||
libffi.xcodeproj/project.xcworkspace
|
libffi.xcodeproj/project.xcworkspace
|
||||||
ios/
|
ios/
|
||||||
|
osx/
|
||||||
|
build_*/
|
||||||
@@ -14,3 +14,4 @@ x32libtool
|
|||||||
arm-test-fix
|
arm-test-fix
|
||||||
xcode
|
xcode
|
||||||
darwin-missing-semi
|
darwin-missing-semi
|
||||||
|
xcode-improvements
|
||||||
|
|||||||
22
.pc/xcode-improvements/.gitignore
vendored
Normal file
22
.pc/xcode-improvements/.gitignore
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
.libs
|
||||||
|
.deps
|
||||||
|
*.o
|
||||||
|
*.lo
|
||||||
|
.dirstamp
|
||||||
|
*.la
|
||||||
|
Makefile
|
||||||
|
config.log
|
||||||
|
config.status
|
||||||
|
*~
|
||||||
|
fficonfig.h
|
||||||
|
include/ffi.h
|
||||||
|
include/ffitarget.h
|
||||||
|
libffi.pc
|
||||||
|
libtool
|
||||||
|
stamp-h1
|
||||||
|
libffi*gz
|
||||||
|
autom4te.cache
|
||||||
|
libffi.xcodeproj/xcuserdata
|
||||||
|
libffi.xcodeproj/project.xcworkspace
|
||||||
|
ios/
|
||||||
|
|
||||||
0
.pc/xcode-improvements/.timestamp
Normal file
0
.pc/xcode-improvements/.timestamp
Normal file
5047
.pc/xcode-improvements/ChangeLog
Normal file
5047
.pc/xcode-improvements/ChangeLog
Normal file
File diff suppressed because it is too large
Load Diff
177
.pc/xcode-improvements/generate-ios-source-and-headers.py
Normal file
177
.pc/xcode-improvements/generate-ios-source-and-headers.py
Normal file
@@ -0,0 +1,177 @@
|
|||||||
|
#!/usr/bin/env python
|
||||||
|
import subprocess
|
||||||
|
import re
|
||||||
|
import os
|
||||||
|
import errno
|
||||||
|
import collections
|
||||||
|
import sys
|
||||||
|
#developer_path =
|
||||||
|
|
||||||
|
|
||||||
|
class Platform(object):
|
||||||
|
pass
|
||||||
|
|
||||||
|
sdk_re = re.compile(r'.*-sdk ([a-zA-Z0-9.]*)')
|
||||||
|
|
||||||
|
|
||||||
|
def sdkinfo(sdkname):
|
||||||
|
ret = {}
|
||||||
|
for line in subprocess.Popen(['xcodebuild', '-sdk', sdkname, '-version'], stdout=subprocess.PIPE).stdout:
|
||||||
|
kv = line.strip().split(': ', 1)
|
||||||
|
if len(kv) == 2:
|
||||||
|
k,v = kv
|
||||||
|
ret[k] = v
|
||||||
|
return ret
|
||||||
|
|
||||||
|
def mkdir_p(path):
|
||||||
|
try:
|
||||||
|
os.makedirs(path)
|
||||||
|
except OSError as exc: # Python >2.5
|
||||||
|
if exc.errno == errno.EEXIST:
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
raise
|
||||||
|
|
||||||
|
|
||||||
|
sim_sdk_info = sdkinfo('iphonesimulator')
|
||||||
|
device_sdk_info = sdkinfo('iphoneos')
|
||||||
|
|
||||||
|
def latest_sdks():
|
||||||
|
latest_sim = None
|
||||||
|
latest_device = None
|
||||||
|
for line in subprocess.Popen(['xcodebuild', '-showsdks'], stdout=subprocess.PIPE).stdout:
|
||||||
|
match = sdk_re.match(line)
|
||||||
|
if match:
|
||||||
|
if 'Simulator' in line:
|
||||||
|
latest_sim = match.group(1)
|
||||||
|
elif 'iOS' in line:
|
||||||
|
latest_device = match.group(1)
|
||||||
|
|
||||||
|
return latest_sim, latest_device
|
||||||
|
|
||||||
|
sim_sdk, device_sdk = latest_sdks()
|
||||||
|
|
||||||
|
class simulator_platform(Platform):
|
||||||
|
sdk='iphonesimulator'
|
||||||
|
arch = 'i386'
|
||||||
|
short_arch = arch
|
||||||
|
triple = 'i386-apple-darwin10'
|
||||||
|
sdkroot = sim_sdk_info['Path']
|
||||||
|
|
||||||
|
prefix = "#if !defined(__arm__) && defined(__i386__)\n\n"
|
||||||
|
suffix = "\n\n#endif"
|
||||||
|
|
||||||
|
class device_platform(Platform):
|
||||||
|
sdk='iphoneos'
|
||||||
|
arch = 'armv7'
|
||||||
|
short_arch = 'arm'
|
||||||
|
triple = 'arm-apple-darwin10'
|
||||||
|
sdkroot = device_sdk_info['Path']
|
||||||
|
|
||||||
|
prefix = "#ifdef __arm__\n\n"
|
||||||
|
suffix = "\n\n#endif"
|
||||||
|
|
||||||
|
|
||||||
|
def move_file(src_dir, dst_dir, filename, file_suffix=None, prefix='', suffix=''):
|
||||||
|
mkdir_p(dst_dir)
|
||||||
|
out_filename = filename
|
||||||
|
|
||||||
|
if file_suffix:
|
||||||
|
split_name = os.path.splitext(filename)
|
||||||
|
out_filename = "%s_%s%s" % (split_name[0], file_suffix, split_name[1])
|
||||||
|
|
||||||
|
with open(os.path.join(src_dir, filename)) as in_file:
|
||||||
|
with open(os.path.join(dst_dir, out_filename), 'w') as out_file:
|
||||||
|
if prefix:
|
||||||
|
out_file.write(prefix)
|
||||||
|
|
||||||
|
out_file.write(in_file.read())
|
||||||
|
|
||||||
|
if suffix:
|
||||||
|
out_file.write(suffix)
|
||||||
|
|
||||||
|
headers_seen = collections.defaultdict(set)
|
||||||
|
|
||||||
|
def move_source_tree(src_dir, dest_dir, dest_include_dir, arch=None, prefix=None, suffix=None):
|
||||||
|
for root, dirs, files in os.walk(src_dir, followlinks=True):
|
||||||
|
relroot = os.path.relpath(root,src_dir)
|
||||||
|
|
||||||
|
def move_dir(arch, prefix='', suffix='', files=[]):
|
||||||
|
for file in files:
|
||||||
|
file_suffix = None
|
||||||
|
if file.endswith('.h'):
|
||||||
|
if dest_include_dir:
|
||||||
|
file_suffix = arch
|
||||||
|
if arch:
|
||||||
|
headers_seen[file].add(arch)
|
||||||
|
move_file(root, dest_include_dir, file, arch, prefix=prefix, suffix=suffix)
|
||||||
|
|
||||||
|
elif dest_dir:
|
||||||
|
outroot = os.path.join(dest_dir, relroot)
|
||||||
|
move_file(root, outroot, file, prefix=prefix, suffix=suffix)
|
||||||
|
|
||||||
|
if relroot == '.':
|
||||||
|
move_dir(arch=arch,
|
||||||
|
files=files,
|
||||||
|
prefix=prefix,
|
||||||
|
suffix=suffix)
|
||||||
|
elif relroot == 'arm':
|
||||||
|
move_dir(arch='arm',
|
||||||
|
prefix="#ifdef __arm__\n\n",
|
||||||
|
suffix="\n\n#endif",
|
||||||
|
files=files)
|
||||||
|
elif relroot == 'x86':
|
||||||
|
move_dir(arch='i386',
|
||||||
|
prefix="#if !defined(__arm__) && defined(__i386__)\n\n",
|
||||||
|
suffix="\n\n#endif",
|
||||||
|
files=files)
|
||||||
|
|
||||||
|
def build_target(platform):
|
||||||
|
def xcrun_cmd(cmd):
|
||||||
|
return subprocess.check_output(['xcrun', '-sdk', platform.sdkroot, '-find', cmd]).strip()
|
||||||
|
|
||||||
|
build_dir = 'build_' + platform.short_arch
|
||||||
|
mkdir_p(build_dir)
|
||||||
|
env = dict(CC=xcrun_cmd('clang'),
|
||||||
|
LD=xcrun_cmd('ld'),
|
||||||
|
CFLAGS='-arch %s -isysroot %s -miphoneos-version-min=4.3' % (platform.arch, platform.sdkroot))
|
||||||
|
working_dir=os.getcwd()
|
||||||
|
try:
|
||||||
|
os.chdir(build_dir)
|
||||||
|
subprocess.check_call(['../configure', '-host', platform.triple], env=env)
|
||||||
|
move_source_tree('.', None, '../ios/include',
|
||||||
|
arch=platform.short_arch,
|
||||||
|
prefix=platform.prefix,
|
||||||
|
suffix=platform.suffix)
|
||||||
|
move_source_tree('./include', None, '../ios/include',
|
||||||
|
arch=platform.short_arch,
|
||||||
|
prefix=platform.prefix,
|
||||||
|
suffix=platform.suffix)
|
||||||
|
finally:
|
||||||
|
os.chdir(working_dir)
|
||||||
|
|
||||||
|
for header_name, archs in headers_seen.iteritems():
|
||||||
|
basename, suffix = os.path.splitext(header_name)
|
||||||
|
|
||||||
|
def make_tramp():
|
||||||
|
with open('src/arm/trampoline.S', 'w') as tramp_out:
|
||||||
|
p = subprocess.Popen(['bash', 'src/arm/gentramp.sh'], stdout=tramp_out)
|
||||||
|
p.wait()
|
||||||
|
|
||||||
|
|
||||||
|
def main():
|
||||||
|
make_tramp()
|
||||||
|
|
||||||
|
move_source_tree('src', 'ios/src', 'ios/include')
|
||||||
|
move_source_tree('include', None, 'ios/include')
|
||||||
|
build_target(simulator_platform)
|
||||||
|
build_target(device_platform)
|
||||||
|
|
||||||
|
for header_name, archs in headers_seen.iteritems():
|
||||||
|
basename, suffix = os.path.splitext(header_name)
|
||||||
|
with open(os.path.join('ios/include', header_name), 'w') as header:
|
||||||
|
for arch in archs:
|
||||||
|
header.write('#include <%s_%s%s>\n' % (basename, arch, suffix))
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
main()
|
||||||
304
.pc/xcode-improvements/libffi.xcodeproj/project.pbxproj
Normal file
304
.pc/xcode-improvements/libffi.xcodeproj/project.pbxproj
Normal file
@@ -0,0 +1,304 @@
|
|||||||
|
// !$*UTF8*$!
|
||||||
|
{
|
||||||
|
archiveVersion = 1;
|
||||||
|
classes = {
|
||||||
|
};
|
||||||
|
objectVersion = 46;
|
||||||
|
objects = {
|
||||||
|
|
||||||
|
/* Begin PBXBuildFile section */
|
||||||
|
F66B6AF9152FA32400B29B2A /* ffi.c in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AE4152FA32400B29B2A /* ffi.c */; };
|
||||||
|
F66B6AFA152FA32400B29B2A /* sysv.S in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AE6152FA32400B29B2A /* sysv.S */; };
|
||||||
|
F66B6AFB152FA32400B29B2A /* trampoline.S in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AE7152FA32400B29B2A /* trampoline.S */; };
|
||||||
|
F66B6AFC152FA32400B29B2A /* closures.c in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AE8152FA32400B29B2A /* closures.c */; };
|
||||||
|
F66B6AFD152FA32400B29B2A /* debug.c in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AE9152FA32400B29B2A /* debug.c */; };
|
||||||
|
F66B6AFE152FA32400B29B2A /* dlmalloc.c in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AEA152FA32400B29B2A /* dlmalloc.c */; };
|
||||||
|
F66B6AFF152FA32400B29B2A /* java_raw_api.c in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AEB152FA32400B29B2A /* java_raw_api.c */; };
|
||||||
|
F66B6B00152FA32400B29B2A /* prep_cif.c in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AEC152FA32400B29B2A /* prep_cif.c */; };
|
||||||
|
F66B6B01152FA32400B29B2A /* raw_api.c in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AED152FA32400B29B2A /* raw_api.c */; };
|
||||||
|
F66B6B02152FA32400B29B2A /* types.c in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AEE152FA32400B29B2A /* types.c */; };
|
||||||
|
F66B6B03152FA32400B29B2A /* darwin.S in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AF0152FA32400B29B2A /* darwin.S */; };
|
||||||
|
F66B6B05152FA32400B29B2A /* ffi.c in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AF2152FA32400B29B2A /* ffi.c */; };
|
||||||
|
/* End PBXBuildFile section */
|
||||||
|
|
||||||
|
/* Begin PBXFileReference section */
|
||||||
|
F66B6AE4152FA32400B29B2A /* ffi.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ffi.c; sourceTree = "<group>"; };
|
||||||
|
F66B6AE5152FA32400B29B2A /* gentramp.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = gentramp.sh; sourceTree = "<group>"; };
|
||||||
|
F66B6AE6152FA32400B29B2A /* sysv.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = sysv.S; sourceTree = "<group>"; };
|
||||||
|
F66B6AE7152FA32400B29B2A /* trampoline.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = trampoline.S; sourceTree = "<group>"; };
|
||||||
|
F66B6AE8152FA32400B29B2A /* closures.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = closures.c; sourceTree = "<group>"; };
|
||||||
|
F66B6AE9152FA32400B29B2A /* debug.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = debug.c; sourceTree = "<group>"; };
|
||||||
|
F66B6AEA152FA32400B29B2A /* dlmalloc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dlmalloc.c; sourceTree = "<group>"; };
|
||||||
|
F66B6AEB152FA32400B29B2A /* java_raw_api.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = java_raw_api.c; sourceTree = "<group>"; };
|
||||||
|
F66B6AEC152FA32400B29B2A /* prep_cif.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = prep_cif.c; sourceTree = "<group>"; };
|
||||||
|
F66B6AED152FA32400B29B2A /* raw_api.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = raw_api.c; sourceTree = "<group>"; };
|
||||||
|
F66B6AEE152FA32400B29B2A /* types.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = types.c; sourceTree = "<group>"; };
|
||||||
|
F66B6AF0152FA32400B29B2A /* darwin.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = darwin.S; sourceTree = "<group>"; };
|
||||||
|
F66B6AF2152FA32400B29B2A /* ffi.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ffi.c; sourceTree = "<group>"; };
|
||||||
|
F6B08473147252410031D8A1 /* ffi_arm.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffi_arm.h; sourceTree = "<group>"; };
|
||||||
|
F6B08474147252410031D8A1 /* ffi_i386.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffi_i386.h; sourceTree = "<group>"; };
|
||||||
|
F6B08475147252410031D8A1 /* ffi.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffi.h; sourceTree = "<group>"; };
|
||||||
|
F6B08476147252410031D8A1 /* fficonfig_arm.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fficonfig_arm.h; sourceTree = "<group>"; };
|
||||||
|
F6B08477147252410031D8A1 /* fficonfig_i386.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fficonfig_i386.h; sourceTree = "<group>"; };
|
||||||
|
F6B08478147252410031D8A1 /* fficonfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fficonfig.h; sourceTree = "<group>"; };
|
||||||
|
F6B08479147252410031D8A1 /* ffitarget_arm.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffitarget_arm.h; sourceTree = "<group>"; };
|
||||||
|
F6B0847A147252410031D8A1 /* ffitarget_i386.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffitarget_i386.h; sourceTree = "<group>"; };
|
||||||
|
F6B0847B147252410031D8A1 /* ffitarget.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffitarget.h; sourceTree = "<group>"; };
|
||||||
|
F6F980BA147386130008F121 /* libffi.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libffi.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
|
/* End PBXFileReference section */
|
||||||
|
|
||||||
|
/* Begin PBXFrameworksBuildPhase section */
|
||||||
|
F6F980B7147386130008F121 /* Frameworks */ = {
|
||||||
|
isa = PBXFrameworksBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
};
|
||||||
|
/* End PBXFrameworksBuildPhase section */
|
||||||
|
|
||||||
|
/* Begin PBXGroup section */
|
||||||
|
F66B6AE2152FA32400B29B2A /* src */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
F66B6AE3152FA32400B29B2A /* arm */,
|
||||||
|
F66B6AE8152FA32400B29B2A /* closures.c */,
|
||||||
|
F66B6AE9152FA32400B29B2A /* debug.c */,
|
||||||
|
F66B6AEA152FA32400B29B2A /* dlmalloc.c */,
|
||||||
|
F66B6AEB152FA32400B29B2A /* java_raw_api.c */,
|
||||||
|
F66B6AEC152FA32400B29B2A /* prep_cif.c */,
|
||||||
|
F66B6AED152FA32400B29B2A /* raw_api.c */,
|
||||||
|
F66B6AEE152FA32400B29B2A /* types.c */,
|
||||||
|
F66B6AEF152FA32400B29B2A /* x86 */,
|
||||||
|
);
|
||||||
|
name = src;
|
||||||
|
path = ios/src;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
F66B6AE3152FA32400B29B2A /* arm */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
F66B6AE4152FA32400B29B2A /* ffi.c */,
|
||||||
|
F66B6AE5152FA32400B29B2A /* gentramp.sh */,
|
||||||
|
F66B6AE6152FA32400B29B2A /* sysv.S */,
|
||||||
|
F66B6AE7152FA32400B29B2A /* trampoline.S */,
|
||||||
|
);
|
||||||
|
path = arm;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
F66B6AEF152FA32400B29B2A /* x86 */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
F66B6AF0152FA32400B29B2A /* darwin.S */,
|
||||||
|
F66B6AF2152FA32400B29B2A /* ffi.c */,
|
||||||
|
);
|
||||||
|
path = x86;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
F6B0839514721EE50031D8A1 = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
F66B6AE2152FA32400B29B2A /* src */,
|
||||||
|
F6B0846C147241640031D8A1 /* include */,
|
||||||
|
F6B083A214721EE50031D8A1 /* Frameworks */,
|
||||||
|
F6F980C6147386260008F121 /* Products */,
|
||||||
|
);
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
F6B083A214721EE50031D8A1 /* Frameworks */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
);
|
||||||
|
name = Frameworks;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
F6B0846C147241640031D8A1 /* include */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
F6B08473147252410031D8A1 /* ffi_arm.h */,
|
||||||
|
F6B08474147252410031D8A1 /* ffi_i386.h */,
|
||||||
|
F6B08475147252410031D8A1 /* ffi.h */,
|
||||||
|
F6B08476147252410031D8A1 /* fficonfig_arm.h */,
|
||||||
|
F6B08477147252410031D8A1 /* fficonfig_i386.h */,
|
||||||
|
F6B08478147252410031D8A1 /* fficonfig.h */,
|
||||||
|
F6B08479147252410031D8A1 /* ffitarget_arm.h */,
|
||||||
|
F6B0847A147252410031D8A1 /* ffitarget_i386.h */,
|
||||||
|
F6B0847B147252410031D8A1 /* ffitarget.h */,
|
||||||
|
);
|
||||||
|
name = include;
|
||||||
|
path = ios/include;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
F6F980C6147386260008F121 /* Products */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
F6F980BA147386130008F121 /* libffi.a */,
|
||||||
|
);
|
||||||
|
name = Products;
|
||||||
|
path = ../..;
|
||||||
|
sourceTree = BUILT_PRODUCTS_DIR;
|
||||||
|
};
|
||||||
|
/* End PBXGroup section */
|
||||||
|
|
||||||
|
/* Begin PBXHeadersBuildPhase section */
|
||||||
|
F6F980B8147386130008F121 /* Headers */ = {
|
||||||
|
isa = PBXHeadersBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
};
|
||||||
|
/* End PBXHeadersBuildPhase section */
|
||||||
|
|
||||||
|
/* Begin PBXNativeTarget section */
|
||||||
|
F6F980B9147386130008F121 /* ffi */ = {
|
||||||
|
isa = PBXNativeTarget;
|
||||||
|
buildConfigurationList = F6F980C4147386130008F121 /* Build configuration list for PBXNativeTarget "ffi" */;
|
||||||
|
buildPhases = (
|
||||||
|
F6F980B6147386130008F121 /* Sources */,
|
||||||
|
F6F980B7147386130008F121 /* Frameworks */,
|
||||||
|
F6F980B8147386130008F121 /* Headers */,
|
||||||
|
);
|
||||||
|
buildRules = (
|
||||||
|
);
|
||||||
|
dependencies = (
|
||||||
|
);
|
||||||
|
name = ffi;
|
||||||
|
productName = ffi;
|
||||||
|
productReference = F6F980BA147386130008F121 /* libffi.a */;
|
||||||
|
productType = "com.apple.product-type.library.static";
|
||||||
|
};
|
||||||
|
/* End PBXNativeTarget section */
|
||||||
|
|
||||||
|
/* Begin PBXProject section */
|
||||||
|
F6B0839714721EE50031D8A1 /* Project object */ = {
|
||||||
|
isa = PBXProject;
|
||||||
|
attributes = {
|
||||||
|
LastUpgradeCheck = 0420;
|
||||||
|
};
|
||||||
|
buildConfigurationList = F6B0839A14721EE50031D8A1 /* Build configuration list for PBXProject "libffi" */;
|
||||||
|
compatibilityVersion = "Xcode 3.2";
|
||||||
|
developmentRegion = English;
|
||||||
|
hasScannedForEncodings = 0;
|
||||||
|
knownRegions = (
|
||||||
|
en,
|
||||||
|
);
|
||||||
|
mainGroup = F6B0839514721EE50031D8A1;
|
||||||
|
productRefGroup = F6B0839514721EE50031D8A1;
|
||||||
|
projectDirPath = "";
|
||||||
|
projectRoot = "";
|
||||||
|
targets = (
|
||||||
|
F6F980B9147386130008F121 /* ffi */,
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/* End PBXProject section */
|
||||||
|
|
||||||
|
/* Begin PBXSourcesBuildPhase section */
|
||||||
|
F6F980B6147386130008F121 /* Sources */ = {
|
||||||
|
isa = PBXSourcesBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
F66B6AF9152FA32400B29B2A /* ffi.c in Sources */,
|
||||||
|
F66B6AFA152FA32400B29B2A /* sysv.S in Sources */,
|
||||||
|
F66B6AFB152FA32400B29B2A /* trampoline.S in Sources */,
|
||||||
|
F66B6AFC152FA32400B29B2A /* closures.c in Sources */,
|
||||||
|
F66B6AFD152FA32400B29B2A /* debug.c in Sources */,
|
||||||
|
F66B6AFE152FA32400B29B2A /* dlmalloc.c in Sources */,
|
||||||
|
F66B6AFF152FA32400B29B2A /* java_raw_api.c in Sources */,
|
||||||
|
F66B6B00152FA32400B29B2A /* prep_cif.c in Sources */,
|
||||||
|
F66B6B01152FA32400B29B2A /* raw_api.c in Sources */,
|
||||||
|
F66B6B02152FA32400B29B2A /* types.c in Sources */,
|
||||||
|
F66B6B03152FA32400B29B2A /* darwin.S in Sources */,
|
||||||
|
F66B6B05152FA32400B29B2A /* ffi.c in Sources */,
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
};
|
||||||
|
/* End PBXSourcesBuildPhase section */
|
||||||
|
|
||||||
|
/* Begin XCBuildConfiguration section */
|
||||||
|
F6B083AB14721EE50031D8A1 /* Debug */ = {
|
||||||
|
isa = XCBuildConfiguration;
|
||||||
|
buildSettings = {
|
||||||
|
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||||
|
ARCHS = "$(ARCHS_STANDARD_32_BIT)";
|
||||||
|
COPY_PHASE_STRIP = NO;
|
||||||
|
GCC_C_LANGUAGE_STANDARD = gnu99;
|
||||||
|
GCC_DYNAMIC_NO_PIC = NO;
|
||||||
|
GCC_OPTIMIZATION_LEVEL = 0;
|
||||||
|
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||||
|
"DEBUG=1",
|
||||||
|
"$(inherited)",
|
||||||
|
);
|
||||||
|
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
|
||||||
|
GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES;
|
||||||
|
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||||
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
|
HEADER_SEARCH_PATHS = ios/include;
|
||||||
|
SDKROOT = iphoneos;
|
||||||
|
};
|
||||||
|
name = Debug;
|
||||||
|
};
|
||||||
|
F6B083AC14721EE50031D8A1 /* Release */ = {
|
||||||
|
isa = XCBuildConfiguration;
|
||||||
|
buildSettings = {
|
||||||
|
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||||
|
ARCHS = "$(ARCHS_STANDARD_32_BIT)";
|
||||||
|
COPY_PHASE_STRIP = YES;
|
||||||
|
GCC_C_LANGUAGE_STANDARD = gnu99;
|
||||||
|
GCC_PREPROCESSOR_DEFINITIONS = "";
|
||||||
|
GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES;
|
||||||
|
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||||
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
|
HEADER_SEARCH_PATHS = ios/include;
|
||||||
|
SDKROOT = iphoneos;
|
||||||
|
VALIDATE_PRODUCT = YES;
|
||||||
|
};
|
||||||
|
name = Release;
|
||||||
|
};
|
||||||
|
F6F980C2147386130008F121 /* Debug */ = {
|
||||||
|
isa = XCBuildConfiguration;
|
||||||
|
buildSettings = {
|
||||||
|
DSTROOT = /tmp/ffi.dst;
|
||||||
|
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
||||||
|
OTHER_LDFLAGS = "-ObjC";
|
||||||
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
|
SKIP_INSTALL = YES;
|
||||||
|
};
|
||||||
|
name = Debug;
|
||||||
|
};
|
||||||
|
F6F980C3147386130008F121 /* Release */ = {
|
||||||
|
isa = XCBuildConfiguration;
|
||||||
|
buildSettings = {
|
||||||
|
DSTROOT = /tmp/ffi.dst;
|
||||||
|
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
||||||
|
OTHER_LDFLAGS = "-ObjC";
|
||||||
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
|
SKIP_INSTALL = YES;
|
||||||
|
};
|
||||||
|
name = Release;
|
||||||
|
};
|
||||||
|
/* End XCBuildConfiguration section */
|
||||||
|
|
||||||
|
/* Begin XCConfigurationList section */
|
||||||
|
F6B0839A14721EE50031D8A1 /* Build configuration list for PBXProject "libffi" */ = {
|
||||||
|
isa = XCConfigurationList;
|
||||||
|
buildConfigurations = (
|
||||||
|
F6B083AB14721EE50031D8A1 /* Debug */,
|
||||||
|
F6B083AC14721EE50031D8A1 /* Release */,
|
||||||
|
);
|
||||||
|
defaultConfigurationIsVisible = 0;
|
||||||
|
defaultConfigurationName = Release;
|
||||||
|
};
|
||||||
|
F6F980C4147386130008F121 /* Build configuration list for PBXNativeTarget "ffi" */ = {
|
||||||
|
isa = XCConfigurationList;
|
||||||
|
buildConfigurations = (
|
||||||
|
F6F980C2147386130008F121 /* Debug */,
|
||||||
|
F6F980C3147386130008F121 /* Release */,
|
||||||
|
);
|
||||||
|
defaultConfigurationIsVisible = 0;
|
||||||
|
defaultConfigurationName = Release;
|
||||||
|
};
|
||||||
|
/* End XCConfigurationList section */
|
||||||
|
};
|
||||||
|
rootObject = F6B0839714721EE50031D8A1 /* Project object */;
|
||||||
|
}
|
||||||
4450
.pc/xcode-improvements/src/arm/trampoline.S
Normal file
4450
.pc/xcode-improvements/src/arm/trampoline.S
Normal file
File diff suppressed because it is too large
Load Diff
@@ -1,3 +1,11 @@
|
|||||||
|
2012-04-11 Zachary Waldowski <zwaldowski@gmail.com>
|
||||||
|
|
||||||
|
* generate-ios-source-and-headers.py,
|
||||||
|
libffi.xcodeproj/project.pbxproj: Support a Mac static library via
|
||||||
|
Xcode. Set iOS compatibility to 4.0. Move iOS trampoline
|
||||||
|
generation into an Xcode "run script" phase. Include both as
|
||||||
|
Xcode build scripts. Don't always regenerate config files.
|
||||||
|
|
||||||
2012-04-10 Anthony Green <green@moxielogic.com>
|
2012-04-10 Anthony Green <green@moxielogic.com>
|
||||||
|
|
||||||
* src/powerpc/ffi_darwin.c (ffi_prep_args): Add missing semicolon.
|
* src/powerpc/ffi_darwin.c (ffi_prep_args): Add missing semicolon.
|
||||||
|
|||||||
@@ -1,19 +1,17 @@
|
|||||||
#!/usr/bin/env python
|
#!/usr/bin/env python
|
||||||
|
|
||||||
import subprocess
|
import subprocess
|
||||||
import re
|
import re
|
||||||
import os
|
import os
|
||||||
import errno
|
import errno
|
||||||
import collections
|
import collections
|
||||||
import sys
|
import sys
|
||||||
#developer_path =
|
|
||||||
|
|
||||||
|
|
||||||
class Platform(object):
|
class Platform(object):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
sdk_re = re.compile(r'.*-sdk ([a-zA-Z0-9.]*)')
|
sdk_re = re.compile(r'.*-sdk ([a-zA-Z0-9.]*)')
|
||||||
|
|
||||||
|
|
||||||
def sdkinfo(sdkname):
|
def sdkinfo(sdkname):
|
||||||
ret = {}
|
ret = {}
|
||||||
for line in subprocess.Popen(['xcodebuild', '-sdk', sdkname, '-version'], stdout=subprocess.PIPE).stdout:
|
for line in subprocess.Popen(['xcodebuild', '-sdk', sdkname, '-version'], stdout=subprocess.PIPE).stdout:
|
||||||
@@ -23,16 +21,6 @@ def sdkinfo(sdkname):
|
|||||||
ret[k] = v
|
ret[k] = v
|
||||||
return ret
|
return ret
|
||||||
|
|
||||||
def mkdir_p(path):
|
|
||||||
try:
|
|
||||||
os.makedirs(path)
|
|
||||||
except OSError as exc: # Python >2.5
|
|
||||||
if exc.errno == errno.EEXIST:
|
|
||||||
pass
|
|
||||||
else:
|
|
||||||
raise
|
|
||||||
|
|
||||||
|
|
||||||
sim_sdk_info = sdkinfo('iphonesimulator')
|
sim_sdk_info = sdkinfo('iphonesimulator')
|
||||||
device_sdk_info = sdkinfo('iphoneos')
|
device_sdk_info = sdkinfo('iphoneos')
|
||||||
|
|
||||||
@@ -54,7 +42,7 @@ sim_sdk, device_sdk = latest_sdks()
|
|||||||
class simulator_platform(Platform):
|
class simulator_platform(Platform):
|
||||||
sdk='iphonesimulator'
|
sdk='iphonesimulator'
|
||||||
arch = 'i386'
|
arch = 'i386'
|
||||||
short_arch = arch
|
name = 'simulator'
|
||||||
triple = 'i386-apple-darwin10'
|
triple = 'i386-apple-darwin10'
|
||||||
sdkroot = sim_sdk_info['Path']
|
sdkroot = sim_sdk_info['Path']
|
||||||
|
|
||||||
@@ -63,8 +51,8 @@ class simulator_platform(Platform):
|
|||||||
|
|
||||||
class device_platform(Platform):
|
class device_platform(Platform):
|
||||||
sdk='iphoneos'
|
sdk='iphoneos'
|
||||||
|
name = 'ios'
|
||||||
arch = 'armv7'
|
arch = 'armv7'
|
||||||
short_arch = 'arm'
|
|
||||||
triple = 'arm-apple-darwin10'
|
triple = 'arm-apple-darwin10'
|
||||||
sdkroot = device_sdk_info['Path']
|
sdkroot = device_sdk_info['Path']
|
||||||
|
|
||||||
@@ -73,7 +61,9 @@ class device_platform(Platform):
|
|||||||
|
|
||||||
|
|
||||||
def move_file(src_dir, dst_dir, filename, file_suffix=None, prefix='', suffix=''):
|
def move_file(src_dir, dst_dir, filename, file_suffix=None, prefix='', suffix=''):
|
||||||
mkdir_p(dst_dir)
|
if not os.path.exists(dst_dir):
|
||||||
|
os.makedirs(dst_dir)
|
||||||
|
|
||||||
out_filename = filename
|
out_filename = filename
|
||||||
|
|
||||||
if file_suffix:
|
if file_suffix:
|
||||||
@@ -130,38 +120,31 @@ def build_target(platform):
|
|||||||
def xcrun_cmd(cmd):
|
def xcrun_cmd(cmd):
|
||||||
return subprocess.check_output(['xcrun', '-sdk', platform.sdkroot, '-find', cmd]).strip()
|
return subprocess.check_output(['xcrun', '-sdk', platform.sdkroot, '-find', cmd]).strip()
|
||||||
|
|
||||||
build_dir = 'build_' + platform.short_arch
|
build_dir = 'build_' + platform.name
|
||||||
mkdir_p(build_dir)
|
if not os.path.exists(build_dir):
|
||||||
env = dict(CC=xcrun_cmd('clang'),
|
os.makedirs(build_dir)
|
||||||
LD=xcrun_cmd('ld'),
|
env = dict(CC=xcrun_cmd('clang'),
|
||||||
CFLAGS='-arch %s -isysroot %s -miphoneos-version-min=4.3' % (platform.arch, platform.sdkroot))
|
LD=xcrun_cmd('ld'),
|
||||||
working_dir=os.getcwd()
|
CFLAGS='-arch %s -isysroot %s -miphoneos-version-min=4.0' % (platform.arch, platform.sdkroot))
|
||||||
try:
|
working_dir=os.getcwd()
|
||||||
os.chdir(build_dir)
|
try:
|
||||||
subprocess.check_call(['../configure', '-host', platform.triple], env=env)
|
os.chdir(build_dir)
|
||||||
move_source_tree('.', None, '../ios/include',
|
subprocess.check_call(['../configure', '-host', platform.triple], env=env)
|
||||||
arch=platform.short_arch,
|
move_source_tree('.', None, '../ios/include',
|
||||||
prefix=platform.prefix,
|
arch=platform.arch,
|
||||||
suffix=platform.suffix)
|
prefix=platform.prefix,
|
||||||
move_source_tree('./include', None, '../ios/include',
|
suffix=platform.suffix)
|
||||||
arch=platform.short_arch,
|
move_source_tree('./include', None, '../ios/include',
|
||||||
prefix=platform.prefix,
|
arch=platform.arch,
|
||||||
suffix=platform.suffix)
|
prefix=platform.prefix,
|
||||||
finally:
|
suffix=platform.suffix)
|
||||||
os.chdir(working_dir)
|
finally:
|
||||||
|
os.chdir(working_dir)
|
||||||
for header_name, archs in headers_seen.iteritems():
|
|
||||||
basename, suffix = os.path.splitext(header_name)
|
|
||||||
|
|
||||||
def make_tramp():
|
|
||||||
with open('src/arm/trampoline.S', 'w') as tramp_out:
|
|
||||||
p = subprocess.Popen(['bash', 'src/arm/gentramp.sh'], stdout=tramp_out)
|
|
||||||
p.wait()
|
|
||||||
|
|
||||||
|
for header_name, archs in headers_seen.iteritems():
|
||||||
|
basename, suffix = os.path.splitext(header_name)
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
make_tramp()
|
|
||||||
|
|
||||||
move_source_tree('src', 'ios/src', 'ios/include')
|
move_source_tree('src', 'ios/src', 'ios/include')
|
||||||
move_source_tree('include', None, 'ios/include')
|
move_source_tree('include', None, 'ios/include')
|
||||||
build_target(simulator_platform)
|
build_target(simulator_platform)
|
||||||
|
|||||||
153
generate-osx-source-and-headers.py
Normal file
153
generate-osx-source-and-headers.py
Normal file
@@ -0,0 +1,153 @@
|
|||||||
|
#!/usr/bin/env python
|
||||||
|
import subprocess
|
||||||
|
import re
|
||||||
|
import os
|
||||||
|
import errno
|
||||||
|
import collections
|
||||||
|
import sys
|
||||||
|
|
||||||
|
class Platform(object):
|
||||||
|
pass
|
||||||
|
|
||||||
|
sdk_re = re.compile(r'.*-sdk ([a-zA-Z0-9.]*)')
|
||||||
|
|
||||||
|
def sdkinfo(sdkname):
|
||||||
|
ret = {}
|
||||||
|
for line in subprocess.Popen(['xcodebuild', '-sdk', sdkname, '-version'], stdout=subprocess.PIPE).stdout:
|
||||||
|
kv = line.strip().split(': ', 1)
|
||||||
|
if len(kv) == 2:
|
||||||
|
k,v = kv
|
||||||
|
ret[k] = v
|
||||||
|
return ret
|
||||||
|
|
||||||
|
desktop_sdk_info = sdkinfo('macosx')
|
||||||
|
|
||||||
|
def latest_sdks():
|
||||||
|
latest_desktop = None
|
||||||
|
for line in subprocess.Popen(['xcodebuild', '-showsdks'], stdout=subprocess.PIPE).stdout:
|
||||||
|
match = sdk_re.match(line)
|
||||||
|
if match:
|
||||||
|
if 'OS X' in line:
|
||||||
|
latest_desktop = match.group(1)
|
||||||
|
|
||||||
|
return latest_desktop
|
||||||
|
|
||||||
|
desktop_sdk = latest_sdks()
|
||||||
|
|
||||||
|
class desktop_platform_32(Platform):
|
||||||
|
sdk='macosx'
|
||||||
|
arch = 'i386'
|
||||||
|
name = 'mac32'
|
||||||
|
triple = 'i386-apple-darwin10'
|
||||||
|
sdkroot = desktop_sdk_info['Path']
|
||||||
|
|
||||||
|
prefix = "#if defined(__i386__) && !defined(__x86_64__)\n\n"
|
||||||
|
suffix = "\n\n#endif"
|
||||||
|
|
||||||
|
class desktop_platform_64(Platform):
|
||||||
|
sdk='macosx'
|
||||||
|
arch = 'x86_64'
|
||||||
|
name = 'mac'
|
||||||
|
triple = 'x86_64-apple-darwin10'
|
||||||
|
sdkroot = desktop_sdk_info['Path']
|
||||||
|
|
||||||
|
prefix = "#if !defined(__i386__) && defined(__x86_64__)\n\n"
|
||||||
|
suffix = "\n\n#endif"
|
||||||
|
|
||||||
|
def move_file(src_dir, dst_dir, filename, file_suffix=None, prefix='', suffix=''):
|
||||||
|
if not os.path.exists(dst_dir):
|
||||||
|
os.makedirs(dst_dir)
|
||||||
|
|
||||||
|
out_filename = filename
|
||||||
|
|
||||||
|
if file_suffix:
|
||||||
|
split_name = os.path.splitext(filename)
|
||||||
|
out_filename = "%s_%s%s" % (split_name[0], file_suffix, split_name[1])
|
||||||
|
|
||||||
|
with open(os.path.join(src_dir, filename)) as in_file:
|
||||||
|
with open(os.path.join(dst_dir, out_filename), 'w') as out_file:
|
||||||
|
if prefix:
|
||||||
|
out_file.write(prefix)
|
||||||
|
|
||||||
|
out_file.write(in_file.read())
|
||||||
|
|
||||||
|
if suffix:
|
||||||
|
out_file.write(suffix)
|
||||||
|
|
||||||
|
headers_seen = collections.defaultdict(set)
|
||||||
|
|
||||||
|
def move_source_tree(src_dir, dest_dir, dest_include_dir, arch=None, prefix=None, suffix=None):
|
||||||
|
for root, dirs, files in os.walk(src_dir, followlinks=True):
|
||||||
|
relroot = os.path.relpath(root,src_dir)
|
||||||
|
|
||||||
|
def move_dir(arch, prefix='', suffix='', files=[]):
|
||||||
|
for file in files:
|
||||||
|
file_suffix = None
|
||||||
|
if file.endswith('.h'):
|
||||||
|
if dest_include_dir:
|
||||||
|
file_suffix = arch
|
||||||
|
if arch:
|
||||||
|
headers_seen[file].add(arch)
|
||||||
|
move_file(root, dest_include_dir, file, arch, prefix=prefix, suffix=suffix)
|
||||||
|
|
||||||
|
elif dest_dir:
|
||||||
|
outroot = os.path.join(dest_dir, relroot)
|
||||||
|
move_file(root, outroot, file, prefix=prefix, suffix=suffix)
|
||||||
|
|
||||||
|
if relroot == '.':
|
||||||
|
move_dir(arch=arch,
|
||||||
|
files=files,
|
||||||
|
prefix=prefix,
|
||||||
|
suffix=suffix)
|
||||||
|
elif relroot == 'x86':
|
||||||
|
move_dir(arch='i386',
|
||||||
|
prefix="#if defined(__i386__) && !defined(__x86_64__)\n\n",
|
||||||
|
suffix="\n\n#endif",
|
||||||
|
files=files)
|
||||||
|
move_dir(arch='x86_64',
|
||||||
|
prefix="#if !defined(__i386__) && defined(__x86_64__)\n\n",
|
||||||
|
suffix="\n\n#endif",
|
||||||
|
files=files)
|
||||||
|
|
||||||
|
def build_target(platform):
|
||||||
|
def xcrun_cmd(cmd):
|
||||||
|
return subprocess.check_output(['xcrun', '-sdk', platform.sdkroot, '-find', cmd]).strip()
|
||||||
|
|
||||||
|
build_dir = 'build_' + platform.name
|
||||||
|
if not os.path.exists(build_dir):
|
||||||
|
os.makedirs(build_dir)
|
||||||
|
env = dict(CC=xcrun_cmd('clang'),
|
||||||
|
LD=xcrun_cmd('ld'),
|
||||||
|
CFLAGS='-arch %s -isysroot %s -mmacosx-version-min=10.6' % (platform.arch, platform.sdkroot))
|
||||||
|
working_dir=os.getcwd()
|
||||||
|
try:
|
||||||
|
os.chdir(build_dir)
|
||||||
|
subprocess.check_call(['../configure', '-host', platform.triple], env=env)
|
||||||
|
move_source_tree('.', None, '../osx/include',
|
||||||
|
arch=platform.arch,
|
||||||
|
prefix=platform.prefix,
|
||||||
|
suffix=platform.suffix)
|
||||||
|
move_source_tree('./include', None, '../osx/include',
|
||||||
|
arch=platform.arch,
|
||||||
|
prefix=platform.prefix,
|
||||||
|
suffix=platform.suffix)
|
||||||
|
finally:
|
||||||
|
os.chdir(working_dir)
|
||||||
|
|
||||||
|
for header_name, archs in headers_seen.iteritems():
|
||||||
|
basename, suffix = os.path.splitext(header_name)
|
||||||
|
|
||||||
|
def main():
|
||||||
|
move_source_tree('src', 'osx/src', 'osx/include')
|
||||||
|
move_source_tree('include', None, 'osx/include')
|
||||||
|
build_target(desktop_platform_32)
|
||||||
|
build_target(desktop_platform_64)
|
||||||
|
|
||||||
|
for header_name, archs in headers_seen.iteritems():
|
||||||
|
basename, suffix = os.path.splitext(header_name)
|
||||||
|
with open(os.path.join('osx/include', header_name), 'w') as header:
|
||||||
|
for arch in archs:
|
||||||
|
header.write('#include <%s_%s%s>\n' % (basename, arch, suffix))
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
main()
|
||||||
@@ -7,47 +7,104 @@
|
|||||||
objects = {
|
objects = {
|
||||||
|
|
||||||
/* Begin PBXBuildFile section */
|
/* Begin PBXBuildFile section */
|
||||||
F66B6AF9152FA32400B29B2A /* ffi.c in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AE4152FA32400B29B2A /* ffi.c */; };
|
6C43CBDC1534F76F00162364 /* ffi.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CBBD1534F76F00162364 /* ffi.c */; };
|
||||||
F66B6AFA152FA32400B29B2A /* sysv.S in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AE6152FA32400B29B2A /* sysv.S */; };
|
6C43CBDD1534F76F00162364 /* sysv.S in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CBBF1534F76F00162364 /* sysv.S */; };
|
||||||
F66B6AFB152FA32400B29B2A /* trampoline.S in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AE7152FA32400B29B2A /* trampoline.S */; };
|
6C43CBDE1534F76F00162364 /* trampoline.S in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CBC01534F76F00162364 /* trampoline.S */; };
|
||||||
F66B6AFC152FA32400B29B2A /* closures.c in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AE8152FA32400B29B2A /* closures.c */; };
|
6C43CBE61534F76F00162364 /* darwin.S in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CBC91534F76F00162364 /* darwin.S */; };
|
||||||
F66B6AFD152FA32400B29B2A /* debug.c in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AE9152FA32400B29B2A /* debug.c */; };
|
6C43CBE81534F76F00162364 /* ffi.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CBCB1534F76F00162364 /* ffi.c */; };
|
||||||
F66B6AFE152FA32400B29B2A /* dlmalloc.c in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AEA152FA32400B29B2A /* dlmalloc.c */; };
|
6C43CBE91534F76F00162364 /* ffi64.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CBCC1534F76F00162364 /* ffi64.c */; };
|
||||||
F66B6AFF152FA32400B29B2A /* java_raw_api.c in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AEB152FA32400B29B2A /* java_raw_api.c */; };
|
6C43CC1F1534F77800162364 /* darwin.S in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC051534F77800162364 /* darwin.S */; };
|
||||||
F66B6B00152FA32400B29B2A /* prep_cif.c in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AEC152FA32400B29B2A /* prep_cif.c */; };
|
6C43CC201534F77800162364 /* darwin64.S in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC061534F77800162364 /* darwin64.S */; };
|
||||||
F66B6B01152FA32400B29B2A /* raw_api.c in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AED152FA32400B29B2A /* raw_api.c */; };
|
6C43CC211534F77800162364 /* ffi.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC071534F77800162364 /* ffi.c */; };
|
||||||
F66B6B02152FA32400B29B2A /* types.c in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AEE152FA32400B29B2A /* types.c */; };
|
6C43CC221534F77800162364 /* ffi64.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC081534F77800162364 /* ffi64.c */; };
|
||||||
F66B6B03152FA32400B29B2A /* darwin.S in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AF0152FA32400B29B2A /* darwin.S */; };
|
6C43CC2F1534F7BE00162364 /* closures.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC281534F7BE00162364 /* closures.c */; };
|
||||||
F66B6B05152FA32400B29B2A /* ffi.c in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AF2152FA32400B29B2A /* ffi.c */; };
|
6C43CC301534F7BE00162364 /* closures.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC281534F7BE00162364 /* closures.c */; };
|
||||||
|
6C43CC311534F7BE00162364 /* debug.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC291534F7BE00162364 /* debug.c */; };
|
||||||
|
6C43CC321534F7BE00162364 /* debug.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC291534F7BE00162364 /* debug.c */; };
|
||||||
|
6C43CC331534F7BE00162364 /* dlmalloc.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC2A1534F7BE00162364 /* dlmalloc.c */; };
|
||||||
|
6C43CC341534F7BE00162364 /* dlmalloc.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC2A1534F7BE00162364 /* dlmalloc.c */; };
|
||||||
|
6C43CC351534F7BE00162364 /* java_raw_api.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC2B1534F7BE00162364 /* java_raw_api.c */; };
|
||||||
|
6C43CC361534F7BE00162364 /* java_raw_api.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC2B1534F7BE00162364 /* java_raw_api.c */; };
|
||||||
|
6C43CC371534F7BE00162364 /* prep_cif.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC2C1534F7BE00162364 /* prep_cif.c */; };
|
||||||
|
6C43CC381534F7BE00162364 /* prep_cif.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC2C1534F7BE00162364 /* prep_cif.c */; };
|
||||||
|
6C43CC391534F7BE00162364 /* raw_api.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC2D1534F7BE00162364 /* raw_api.c */; };
|
||||||
|
6C43CC3A1534F7BE00162364 /* raw_api.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC2D1534F7BE00162364 /* raw_api.c */; };
|
||||||
|
6C43CC3B1534F7BE00162364 /* types.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC2E1534F7BE00162364 /* types.c */; };
|
||||||
|
6C43CC3C1534F7BE00162364 /* types.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC2E1534F7BE00162364 /* types.c */; };
|
||||||
|
6C43CC971535032600162364 /* ffi.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CC8D1535032600162364 /* ffi.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||||
|
6C43CC981535032600162364 /* ffi_common.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CC8E1535032600162364 /* ffi_common.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||||
|
6C43CC991535032600162364 /* ffi_i386.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CC8F1535032600162364 /* ffi_i386.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||||
|
6C43CC9A1535032600162364 /* ffi_x86_64.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CC901535032600162364 /* ffi_x86_64.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||||
|
6C43CC9B1535032600162364 /* fficonfig.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CC911535032600162364 /* fficonfig.h */; };
|
||||||
|
6C43CC9C1535032600162364 /* fficonfig_i386.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CC921535032600162364 /* fficonfig_i386.h */; };
|
||||||
|
6C43CC9D1535032600162364 /* fficonfig_x86_64.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CC931535032600162364 /* fficonfig_x86_64.h */; };
|
||||||
|
6C43CC9E1535032600162364 /* ffitarget.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CC941535032600162364 /* ffitarget.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||||
|
6C43CC9F1535032600162364 /* ffitarget_i386.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CC951535032600162364 /* ffitarget_i386.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||||
|
6C43CCA01535032600162364 /* ffitarget_x86_64.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CC961535032600162364 /* ffitarget_x86_64.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||||
|
6C43CCAD1535039600162364 /* ffi.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CCA21535039600162364 /* ffi.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||||
|
6C43CCAE1535039600162364 /* ffi_armv7.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CCA31535039600162364 /* ffi_armv7.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||||
|
6C43CCAF1535039600162364 /* ffi_common.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CCA41535039600162364 /* ffi_common.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||||
|
6C43CCB01535039600162364 /* ffi_i386.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CCA51535039600162364 /* ffi_i386.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||||
|
6C43CCB11535039600162364 /* fficonfig.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CCA61535039600162364 /* fficonfig.h */; };
|
||||||
|
6C43CCB21535039600162364 /* fficonfig_armv7.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CCA71535039600162364 /* fficonfig_armv7.h */; };
|
||||||
|
6C43CCB31535039600162364 /* fficonfig_i386.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CCA81535039600162364 /* fficonfig_i386.h */; };
|
||||||
|
6C43CCB41535039600162364 /* ffitarget.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CCA91535039600162364 /* ffitarget.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||||
|
6C43CCB51535039600162364 /* ffitarget_arm.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CCAA1535039600162364 /* ffitarget_arm.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||||
|
6C43CCB61535039600162364 /* ffitarget_armv7.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CCAB1535039600162364 /* ffitarget_armv7.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||||
|
6C43CCB71535039600162364 /* ffitarget_i386.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CCAC1535039600162364 /* ffitarget_i386.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||||
/* End PBXBuildFile section */
|
/* End PBXBuildFile section */
|
||||||
|
|
||||||
/* Begin PBXFileReference section */
|
/* Begin PBXFileReference section */
|
||||||
F66B6AE4152FA32400B29B2A /* ffi.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ffi.c; sourceTree = "<group>"; };
|
6C43CB3D1534E9D100162364 /* libffi.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libffi.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
F66B6AE5152FA32400B29B2A /* gentramp.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = gentramp.sh; sourceTree = "<group>"; };
|
6C43CBBD1534F76F00162364 /* ffi.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ffi.c; sourceTree = "<group>"; };
|
||||||
F66B6AE6152FA32400B29B2A /* sysv.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = sysv.S; sourceTree = "<group>"; };
|
6C43CBBF1534F76F00162364 /* sysv.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = sysv.S; sourceTree = "<group>"; };
|
||||||
F66B6AE7152FA32400B29B2A /* trampoline.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = trampoline.S; sourceTree = "<group>"; };
|
6C43CBC01534F76F00162364 /* trampoline.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = trampoline.S; sourceTree = "<group>"; };
|
||||||
F66B6AE8152FA32400B29B2A /* closures.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = closures.c; sourceTree = "<group>"; };
|
6C43CBC91534F76F00162364 /* darwin.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = darwin.S; sourceTree = "<group>"; };
|
||||||
F66B6AE9152FA32400B29B2A /* debug.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = debug.c; sourceTree = "<group>"; };
|
6C43CBCB1534F76F00162364 /* ffi.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ffi.c; sourceTree = "<group>"; };
|
||||||
F66B6AEA152FA32400B29B2A /* dlmalloc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dlmalloc.c; sourceTree = "<group>"; };
|
6C43CBCC1534F76F00162364 /* ffi64.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ffi64.c; sourceTree = "<group>"; };
|
||||||
F66B6AEB152FA32400B29B2A /* java_raw_api.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = java_raw_api.c; sourceTree = "<group>"; };
|
6C43CC051534F77800162364 /* darwin.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = darwin.S; sourceTree = "<group>"; };
|
||||||
F66B6AEC152FA32400B29B2A /* prep_cif.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = prep_cif.c; sourceTree = "<group>"; };
|
6C43CC061534F77800162364 /* darwin64.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = darwin64.S; sourceTree = "<group>"; };
|
||||||
F66B6AED152FA32400B29B2A /* raw_api.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = raw_api.c; sourceTree = "<group>"; };
|
6C43CC071534F77800162364 /* ffi.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ffi.c; sourceTree = "<group>"; };
|
||||||
F66B6AEE152FA32400B29B2A /* types.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = types.c; sourceTree = "<group>"; };
|
6C43CC081534F77800162364 /* ffi64.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ffi64.c; sourceTree = "<group>"; };
|
||||||
F66B6AF0152FA32400B29B2A /* darwin.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = darwin.S; sourceTree = "<group>"; };
|
6C43CC281534F7BE00162364 /* closures.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = closures.c; path = src/closures.c; sourceTree = SOURCE_ROOT; };
|
||||||
F66B6AF2152FA32400B29B2A /* ffi.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ffi.c; sourceTree = "<group>"; };
|
6C43CC291534F7BE00162364 /* debug.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = debug.c; path = src/debug.c; sourceTree = SOURCE_ROOT; };
|
||||||
F6B08473147252410031D8A1 /* ffi_arm.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffi_arm.h; sourceTree = "<group>"; };
|
6C43CC2A1534F7BE00162364 /* dlmalloc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = dlmalloc.c; path = src/dlmalloc.c; sourceTree = SOURCE_ROOT; };
|
||||||
F6B08474147252410031D8A1 /* ffi_i386.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffi_i386.h; sourceTree = "<group>"; };
|
6C43CC2B1534F7BE00162364 /* java_raw_api.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = java_raw_api.c; path = src/java_raw_api.c; sourceTree = SOURCE_ROOT; };
|
||||||
F6B08475147252410031D8A1 /* ffi.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffi.h; sourceTree = "<group>"; };
|
6C43CC2C1534F7BE00162364 /* prep_cif.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = prep_cif.c; path = src/prep_cif.c; sourceTree = SOURCE_ROOT; };
|
||||||
F6B08476147252410031D8A1 /* fficonfig_arm.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fficonfig_arm.h; sourceTree = "<group>"; };
|
6C43CC2D1534F7BE00162364 /* raw_api.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = raw_api.c; path = src/raw_api.c; sourceTree = SOURCE_ROOT; };
|
||||||
F6B08477147252410031D8A1 /* fficonfig_i386.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fficonfig_i386.h; sourceTree = "<group>"; };
|
6C43CC2E1534F7BE00162364 /* types.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = types.c; path = src/types.c; sourceTree = SOURCE_ROOT; };
|
||||||
F6B08478147252410031D8A1 /* fficonfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fficonfig.h; sourceTree = "<group>"; };
|
6C43CC8D1535032600162364 /* ffi.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffi.h; sourceTree = "<group>"; };
|
||||||
F6B08479147252410031D8A1 /* ffitarget_arm.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffitarget_arm.h; sourceTree = "<group>"; };
|
6C43CC8E1535032600162364 /* ffi_common.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffi_common.h; sourceTree = "<group>"; };
|
||||||
F6B0847A147252410031D8A1 /* ffitarget_i386.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffitarget_i386.h; sourceTree = "<group>"; };
|
6C43CC8F1535032600162364 /* ffi_i386.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffi_i386.h; sourceTree = "<group>"; };
|
||||||
F6B0847B147252410031D8A1 /* ffitarget.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffitarget.h; sourceTree = "<group>"; };
|
6C43CC901535032600162364 /* ffi_x86_64.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffi_x86_64.h; sourceTree = "<group>"; };
|
||||||
|
6C43CC911535032600162364 /* fficonfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fficonfig.h; sourceTree = "<group>"; };
|
||||||
|
6C43CC921535032600162364 /* fficonfig_i386.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fficonfig_i386.h; sourceTree = "<group>"; };
|
||||||
|
6C43CC931535032600162364 /* fficonfig_x86_64.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fficonfig_x86_64.h; sourceTree = "<group>"; };
|
||||||
|
6C43CC941535032600162364 /* ffitarget.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffitarget.h; sourceTree = "<group>"; };
|
||||||
|
6C43CC951535032600162364 /* ffitarget_i386.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffitarget_i386.h; sourceTree = "<group>"; };
|
||||||
|
6C43CC961535032600162364 /* ffitarget_x86_64.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffitarget_x86_64.h; sourceTree = "<group>"; };
|
||||||
|
6C43CCA21535039600162364 /* ffi.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffi.h; sourceTree = "<group>"; };
|
||||||
|
6C43CCA31535039600162364 /* ffi_armv7.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffi_armv7.h; sourceTree = "<group>"; };
|
||||||
|
6C43CCA41535039600162364 /* ffi_common.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffi_common.h; sourceTree = "<group>"; };
|
||||||
|
6C43CCA51535039600162364 /* ffi_i386.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffi_i386.h; sourceTree = "<group>"; };
|
||||||
|
6C43CCA61535039600162364 /* fficonfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fficonfig.h; sourceTree = "<group>"; };
|
||||||
|
6C43CCA71535039600162364 /* fficonfig_armv7.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fficonfig_armv7.h; sourceTree = "<group>"; };
|
||||||
|
6C43CCA81535039600162364 /* fficonfig_i386.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fficonfig_i386.h; sourceTree = "<group>"; };
|
||||||
|
6C43CCA91535039600162364 /* ffitarget.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffitarget.h; sourceTree = "<group>"; };
|
||||||
|
6C43CCAA1535039600162364 /* ffitarget_arm.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffitarget_arm.h; sourceTree = "<group>"; };
|
||||||
|
6C43CCAB1535039600162364 /* ffitarget_armv7.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffitarget_armv7.h; sourceTree = "<group>"; };
|
||||||
|
6C43CCAC1535039600162364 /* ffitarget_i386.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffitarget_i386.h; sourceTree = "<group>"; };
|
||||||
F6F980BA147386130008F121 /* libffi.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libffi.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
F6F980BA147386130008F121 /* libffi.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libffi.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
/* End PBXFileReference section */
|
/* End PBXFileReference section */
|
||||||
|
|
||||||
/* Begin PBXFrameworksBuildPhase section */
|
/* Begin PBXFrameworksBuildPhase section */
|
||||||
|
6C43CB3A1534E9D100162364 /* Frameworks */ = {
|
||||||
|
isa = PBXFrameworksBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
};
|
||||||
F6F980B7147386130008F121 /* Frameworks */ = {
|
F6F980B7147386130008F121 /* Frameworks */ = {
|
||||||
isa = PBXFrameworksBuildPhase;
|
isa = PBXFrameworksBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
@@ -58,81 +115,139 @@
|
|||||||
/* End PBXFrameworksBuildPhase section */
|
/* End PBXFrameworksBuildPhase section */
|
||||||
|
|
||||||
/* Begin PBXGroup section */
|
/* Begin PBXGroup section */
|
||||||
F66B6AE2152FA32400B29B2A /* src */ = {
|
6C43CBAF1534F76F00162364 /* iOS */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
F66B6AE3152FA32400B29B2A /* arm */,
|
6C43CCA11535039600162364 /* include */,
|
||||||
F66B6AE8152FA32400B29B2A /* closures.c */,
|
6C43CBBB1534F76F00162364 /* src */,
|
||||||
F66B6AE9152FA32400B29B2A /* debug.c */,
|
|
||||||
F66B6AEA152FA32400B29B2A /* dlmalloc.c */,
|
|
||||||
F66B6AEB152FA32400B29B2A /* java_raw_api.c */,
|
|
||||||
F66B6AEC152FA32400B29B2A /* prep_cif.c */,
|
|
||||||
F66B6AED152FA32400B29B2A /* raw_api.c */,
|
|
||||||
F66B6AEE152FA32400B29B2A /* types.c */,
|
|
||||||
F66B6AEF152FA32400B29B2A /* x86 */,
|
|
||||||
);
|
);
|
||||||
name = src;
|
name = iOS;
|
||||||
path = ios/src;
|
path = ios;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
};
|
};
|
||||||
F66B6AE3152FA32400B29B2A /* arm */ = {
|
6C43CBBB1534F76F00162364 /* src */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
F66B6AE4152FA32400B29B2A /* ffi.c */,
|
6C43CBC81534F76F00162364 /* x86 */,
|
||||||
F66B6AE5152FA32400B29B2A /* gentramp.sh */,
|
6C43CBBC1534F76F00162364 /* arm */,
|
||||||
F66B6AE6152FA32400B29B2A /* sysv.S */,
|
);
|
||||||
F66B6AE7152FA32400B29B2A /* trampoline.S */,
|
path = src;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
6C43CBBC1534F76F00162364 /* arm */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
6C43CBBD1534F76F00162364 /* ffi.c */,
|
||||||
|
6C43CBBF1534F76F00162364 /* sysv.S */,
|
||||||
|
6C43CBC01534F76F00162364 /* trampoline.S */,
|
||||||
);
|
);
|
||||||
path = arm;
|
path = arm;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
};
|
};
|
||||||
F66B6AEF152FA32400B29B2A /* x86 */ = {
|
6C43CBC81534F76F00162364 /* x86 */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
F66B6AF0152FA32400B29B2A /* darwin.S */,
|
6C43CBC91534F76F00162364 /* darwin.S */,
|
||||||
F66B6AF2152FA32400B29B2A /* ffi.c */,
|
6C43CBCB1534F76F00162364 /* ffi.c */,
|
||||||
|
6C43CBCC1534F76F00162364 /* ffi64.c */,
|
||||||
);
|
);
|
||||||
path = x86;
|
path = x86;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
};
|
};
|
||||||
|
6C43CBF01534F77800162364 /* OS X */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
6C43CC8C1535032600162364 /* include */,
|
||||||
|
6C43CBFC1534F77800162364 /* src */,
|
||||||
|
);
|
||||||
|
name = "OS X";
|
||||||
|
path = osx;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
6C43CBFC1534F77800162364 /* src */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
6C43CC041534F77800162364 /* x86 */,
|
||||||
|
);
|
||||||
|
path = src;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
6C43CC041534F77800162364 /* x86 */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
6C43CC051534F77800162364 /* darwin.S */,
|
||||||
|
6C43CC061534F77800162364 /* darwin64.S */,
|
||||||
|
6C43CC071534F77800162364 /* ffi.c */,
|
||||||
|
6C43CC081534F77800162364 /* ffi64.c */,
|
||||||
|
);
|
||||||
|
path = x86;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
6C43CC3D1534F7C400162364 /* src */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
6C43CC281534F7BE00162364 /* closures.c */,
|
||||||
|
6C43CC291534F7BE00162364 /* debug.c */,
|
||||||
|
6C43CC2A1534F7BE00162364 /* dlmalloc.c */,
|
||||||
|
6C43CC2B1534F7BE00162364 /* java_raw_api.c */,
|
||||||
|
6C43CC2C1534F7BE00162364 /* prep_cif.c */,
|
||||||
|
6C43CC2D1534F7BE00162364 /* raw_api.c */,
|
||||||
|
6C43CC2E1534F7BE00162364 /* types.c */,
|
||||||
|
);
|
||||||
|
name = src;
|
||||||
|
path = ios;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
6C43CC8C1535032600162364 /* include */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
6C43CC8D1535032600162364 /* ffi.h */,
|
||||||
|
6C43CC8E1535032600162364 /* ffi_common.h */,
|
||||||
|
6C43CC8F1535032600162364 /* ffi_i386.h */,
|
||||||
|
6C43CC901535032600162364 /* ffi_x86_64.h */,
|
||||||
|
6C43CC911535032600162364 /* fficonfig.h */,
|
||||||
|
6C43CC921535032600162364 /* fficonfig_i386.h */,
|
||||||
|
6C43CC931535032600162364 /* fficonfig_x86_64.h */,
|
||||||
|
6C43CC941535032600162364 /* ffitarget.h */,
|
||||||
|
6C43CC951535032600162364 /* ffitarget_i386.h */,
|
||||||
|
6C43CC961535032600162364 /* ffitarget_x86_64.h */,
|
||||||
|
);
|
||||||
|
path = include;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
6C43CCA11535039600162364 /* include */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
6C43CCA21535039600162364 /* ffi.h */,
|
||||||
|
6C43CCA31535039600162364 /* ffi_armv7.h */,
|
||||||
|
6C43CCA41535039600162364 /* ffi_common.h */,
|
||||||
|
6C43CCA51535039600162364 /* ffi_i386.h */,
|
||||||
|
6C43CCA61535039600162364 /* fficonfig.h */,
|
||||||
|
6C43CCA71535039600162364 /* fficonfig_armv7.h */,
|
||||||
|
6C43CCA81535039600162364 /* fficonfig_i386.h */,
|
||||||
|
6C43CCA91535039600162364 /* ffitarget.h */,
|
||||||
|
6C43CCAA1535039600162364 /* ffitarget_arm.h */,
|
||||||
|
6C43CCAB1535039600162364 /* ffitarget_armv7.h */,
|
||||||
|
6C43CCAC1535039600162364 /* ffitarget_i386.h */,
|
||||||
|
);
|
||||||
|
path = include;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
F6B0839514721EE50031D8A1 = {
|
F6B0839514721EE50031D8A1 = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
F66B6AE2152FA32400B29B2A /* src */,
|
6C43CC3D1534F7C400162364 /* src */,
|
||||||
F6B0846C147241640031D8A1 /* include */,
|
6C43CBAF1534F76F00162364 /* iOS */,
|
||||||
F6B083A214721EE50031D8A1 /* Frameworks */,
|
6C43CBF01534F77800162364 /* OS X */,
|
||||||
F6F980C6147386260008F121 /* Products */,
|
F6F980C6147386260008F121 /* Products */,
|
||||||
);
|
);
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
};
|
};
|
||||||
F6B083A214721EE50031D8A1 /* Frameworks */ = {
|
|
||||||
isa = PBXGroup;
|
|
||||||
children = (
|
|
||||||
);
|
|
||||||
name = Frameworks;
|
|
||||||
sourceTree = "<group>";
|
|
||||||
};
|
|
||||||
F6B0846C147241640031D8A1 /* include */ = {
|
|
||||||
isa = PBXGroup;
|
|
||||||
children = (
|
|
||||||
F6B08473147252410031D8A1 /* ffi_arm.h */,
|
|
||||||
F6B08474147252410031D8A1 /* ffi_i386.h */,
|
|
||||||
F6B08475147252410031D8A1 /* ffi.h */,
|
|
||||||
F6B08476147252410031D8A1 /* fficonfig_arm.h */,
|
|
||||||
F6B08477147252410031D8A1 /* fficonfig_i386.h */,
|
|
||||||
F6B08478147252410031D8A1 /* fficonfig.h */,
|
|
||||||
F6B08479147252410031D8A1 /* ffitarget_arm.h */,
|
|
||||||
F6B0847A147252410031D8A1 /* ffitarget_i386.h */,
|
|
||||||
F6B0847B147252410031D8A1 /* ffitarget.h */,
|
|
||||||
);
|
|
||||||
name = include;
|
|
||||||
path = ios/include;
|
|
||||||
sourceTree = "<group>";
|
|
||||||
};
|
|
||||||
F6F980C6147386260008F121 /* Products */ = {
|
F6F980C6147386260008F121 /* Products */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
F6F980BA147386130008F121 /* libffi.a */,
|
F6F980BA147386130008F121 /* libffi.a */,
|
||||||
|
6C43CB3D1534E9D100162364 /* libffi.a */,
|
||||||
);
|
);
|
||||||
name = Products;
|
name = Products;
|
||||||
path = ../..;
|
path = ../..;
|
||||||
@@ -141,20 +256,68 @@
|
|||||||
/* End PBXGroup section */
|
/* End PBXGroup section */
|
||||||
|
|
||||||
/* Begin PBXHeadersBuildPhase section */
|
/* Begin PBXHeadersBuildPhase section */
|
||||||
|
6C43CB3B1534E9D100162364 /* Headers */ = {
|
||||||
|
isa = PBXHeadersBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
6C43CC971535032600162364 /* ffi.h in Headers */,
|
||||||
|
6C43CC981535032600162364 /* ffi_common.h in Headers */,
|
||||||
|
6C43CC991535032600162364 /* ffi_i386.h in Headers */,
|
||||||
|
6C43CC9A1535032600162364 /* ffi_x86_64.h in Headers */,
|
||||||
|
6C43CC9E1535032600162364 /* ffitarget.h in Headers */,
|
||||||
|
6C43CC9F1535032600162364 /* ffitarget_i386.h in Headers */,
|
||||||
|
6C43CCA01535032600162364 /* ffitarget_x86_64.h in Headers */,
|
||||||
|
6C43CC9B1535032600162364 /* fficonfig.h in Headers */,
|
||||||
|
6C43CC9C1535032600162364 /* fficonfig_i386.h in Headers */,
|
||||||
|
6C43CC9D1535032600162364 /* fficonfig_x86_64.h in Headers */,
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
};
|
||||||
F6F980B8147386130008F121 /* Headers */ = {
|
F6F980B8147386130008F121 /* Headers */ = {
|
||||||
isa = PBXHeadersBuildPhase;
|
isa = PBXHeadersBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
files = (
|
files = (
|
||||||
|
6C43CCAD1535039600162364 /* ffi.h in Headers */,
|
||||||
|
6C43CCAE1535039600162364 /* ffi_armv7.h in Headers */,
|
||||||
|
6C43CCAF1535039600162364 /* ffi_common.h in Headers */,
|
||||||
|
6C43CCB01535039600162364 /* ffi_i386.h in Headers */,
|
||||||
|
6C43CCB41535039600162364 /* ffitarget.h in Headers */,
|
||||||
|
6C43CCB51535039600162364 /* ffitarget_arm.h in Headers */,
|
||||||
|
6C43CCB61535039600162364 /* ffitarget_armv7.h in Headers */,
|
||||||
|
6C43CCB71535039600162364 /* ffitarget_i386.h in Headers */,
|
||||||
|
6C43CCB11535039600162364 /* fficonfig.h in Headers */,
|
||||||
|
6C43CCB21535039600162364 /* fficonfig_armv7.h in Headers */,
|
||||||
|
6C43CCB31535039600162364 /* fficonfig_i386.h in Headers */,
|
||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
/* End PBXHeadersBuildPhase section */
|
/* End PBXHeadersBuildPhase section */
|
||||||
|
|
||||||
/* Begin PBXNativeTarget section */
|
/* Begin PBXNativeTarget section */
|
||||||
F6F980B9147386130008F121 /* ffi */ = {
|
6C43CB3C1534E9D100162364 /* libffi OS X */ = {
|
||||||
isa = PBXNativeTarget;
|
isa = PBXNativeTarget;
|
||||||
buildConfigurationList = F6F980C4147386130008F121 /* Build configuration list for PBXNativeTarget "ffi" */;
|
buildConfigurationList = 6C43CB4A1534E9D100162364 /* Build configuration list for PBXNativeTarget "libffi OS X" */;
|
||||||
buildPhases = (
|
buildPhases = (
|
||||||
|
6C43CC401534FF3B00162364 /* Generate Source and Headers */,
|
||||||
|
6C43CB391534E9D100162364 /* Sources */,
|
||||||
|
6C43CB3A1534E9D100162364 /* Frameworks */,
|
||||||
|
6C43CB3B1534E9D100162364 /* Headers */,
|
||||||
|
);
|
||||||
|
buildRules = (
|
||||||
|
);
|
||||||
|
dependencies = (
|
||||||
|
);
|
||||||
|
name = "libffi OS X";
|
||||||
|
productName = "ffi OS X";
|
||||||
|
productReference = 6C43CB3D1534E9D100162364 /* libffi.a */;
|
||||||
|
productType = "com.apple.product-type.library.static";
|
||||||
|
};
|
||||||
|
F6F980B9147386130008F121 /* libffi iOS */ = {
|
||||||
|
isa = PBXNativeTarget;
|
||||||
|
buildConfigurationList = F6F980C4147386130008F121 /* Build configuration list for PBXNativeTarget "libffi iOS" */;
|
||||||
|
buildPhases = (
|
||||||
|
6C43CC3E1534F8E200162364 /* Generate Trampoline */,
|
||||||
|
6C43CC3F1534FF1B00162364 /* Generate Source and Headers */,
|
||||||
F6F980B6147386130008F121 /* Sources */,
|
F6F980B6147386130008F121 /* Sources */,
|
||||||
F6F980B7147386130008F121 /* Frameworks */,
|
F6F980B7147386130008F121 /* Frameworks */,
|
||||||
F6F980B8147386130008F121 /* Headers */,
|
F6F980B8147386130008F121 /* Headers */,
|
||||||
@@ -163,7 +326,7 @@
|
|||||||
);
|
);
|
||||||
dependencies = (
|
dependencies = (
|
||||||
);
|
);
|
||||||
name = ffi;
|
name = "libffi iOS";
|
||||||
productName = ffi;
|
productName = ffi;
|
||||||
productReference = F6F980BA147386130008F121 /* libffi.a */;
|
productReference = F6F980BA147386130008F121 /* libffi.a */;
|
||||||
productType = "com.apple.product-type.library.static";
|
productType = "com.apple.product-type.library.static";
|
||||||
@@ -174,7 +337,7 @@
|
|||||||
F6B0839714721EE50031D8A1 /* Project object */ = {
|
F6B0839714721EE50031D8A1 /* Project object */ = {
|
||||||
isa = PBXProject;
|
isa = PBXProject;
|
||||||
attributes = {
|
attributes = {
|
||||||
LastUpgradeCheck = 0420;
|
LastUpgradeCheck = 0430;
|
||||||
};
|
};
|
||||||
buildConfigurationList = F6B0839A14721EE50031D8A1 /* Build configuration list for PBXProject "libffi" */;
|
buildConfigurationList = F6B0839A14721EE50031D8A1 /* Build configuration list for PBXProject "libffi" */;
|
||||||
compatibilityVersion = "Xcode 3.2";
|
compatibilityVersion = "Xcode 3.2";
|
||||||
@@ -188,34 +351,139 @@
|
|||||||
projectDirPath = "";
|
projectDirPath = "";
|
||||||
projectRoot = "";
|
projectRoot = "";
|
||||||
targets = (
|
targets = (
|
||||||
F6F980B9147386130008F121 /* ffi */,
|
F6F980B9147386130008F121 /* libffi iOS */,
|
||||||
|
6C43CB3C1534E9D100162364 /* libffi OS X */,
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
/* End PBXProject section */
|
/* End PBXProject section */
|
||||||
|
|
||||||
|
/* Begin PBXShellScriptBuildPhase section */
|
||||||
|
6C43CC3E1534F8E200162364 /* Generate Trampoline */ = {
|
||||||
|
isa = PBXShellScriptBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
);
|
||||||
|
inputPaths = (
|
||||||
|
);
|
||||||
|
name = "Generate Trampoline";
|
||||||
|
outputPaths = (
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
shellPath = /usr/bin/python;
|
||||||
|
shellScript = "import subprocess\nimport re\nimport os\nimport errno\nimport sys\n\ndef main():\n with open('src/arm/trampoline.S', 'w') as tramp_out:\n p = subprocess.Popen(['bash', 'src/arm/gentramp.sh'], stdout=tramp_out)\n p.wait()\n\nif __name__ == '__main__':\n main()";
|
||||||
|
};
|
||||||
|
6C43CC3F1534FF1B00162364 /* Generate Source and Headers */ = {
|
||||||
|
isa = PBXShellScriptBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
);
|
||||||
|
inputPaths = (
|
||||||
|
);
|
||||||
|
name = "Generate Source and Headers";
|
||||||
|
outputPaths = (
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
shellPath = /bin/sh;
|
||||||
|
shellScript = "/usr/bin/python generate-ios-source-and-headers.py";
|
||||||
|
};
|
||||||
|
6C43CC401534FF3B00162364 /* Generate Source and Headers */ = {
|
||||||
|
isa = PBXShellScriptBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
);
|
||||||
|
inputPaths = (
|
||||||
|
);
|
||||||
|
name = "Generate Source and Headers";
|
||||||
|
outputPaths = (
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
shellPath = /bin/sh;
|
||||||
|
shellScript = "/usr/bin/python generate-osx-source-and-headers.py";
|
||||||
|
};
|
||||||
|
/* End PBXShellScriptBuildPhase section */
|
||||||
|
|
||||||
/* Begin PBXSourcesBuildPhase section */
|
/* Begin PBXSourcesBuildPhase section */
|
||||||
|
6C43CB391534E9D100162364 /* Sources */ = {
|
||||||
|
isa = PBXSourcesBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
6C43CC1F1534F77800162364 /* darwin.S in Sources */,
|
||||||
|
6C43CC201534F77800162364 /* darwin64.S in Sources */,
|
||||||
|
6C43CC211534F77800162364 /* ffi.c in Sources */,
|
||||||
|
6C43CC221534F77800162364 /* ffi64.c in Sources */,
|
||||||
|
6C43CC301534F7BE00162364 /* closures.c in Sources */,
|
||||||
|
6C43CC321534F7BE00162364 /* debug.c in Sources */,
|
||||||
|
6C43CC341534F7BE00162364 /* dlmalloc.c in Sources */,
|
||||||
|
6C43CC361534F7BE00162364 /* java_raw_api.c in Sources */,
|
||||||
|
6C43CC381534F7BE00162364 /* prep_cif.c in Sources */,
|
||||||
|
6C43CC3A1534F7BE00162364 /* raw_api.c in Sources */,
|
||||||
|
6C43CC3C1534F7BE00162364 /* types.c in Sources */,
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
};
|
||||||
F6F980B6147386130008F121 /* Sources */ = {
|
F6F980B6147386130008F121 /* Sources */ = {
|
||||||
isa = PBXSourcesBuildPhase;
|
isa = PBXSourcesBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
files = (
|
files = (
|
||||||
F66B6AF9152FA32400B29B2A /* ffi.c in Sources */,
|
6C43CBDC1534F76F00162364 /* ffi.c in Sources */,
|
||||||
F66B6AFA152FA32400B29B2A /* sysv.S in Sources */,
|
6C43CBDD1534F76F00162364 /* sysv.S in Sources */,
|
||||||
F66B6AFB152FA32400B29B2A /* trampoline.S in Sources */,
|
6C43CBDE1534F76F00162364 /* trampoline.S in Sources */,
|
||||||
F66B6AFC152FA32400B29B2A /* closures.c in Sources */,
|
6C43CBE61534F76F00162364 /* darwin.S in Sources */,
|
||||||
F66B6AFD152FA32400B29B2A /* debug.c in Sources */,
|
6C43CBE81534F76F00162364 /* ffi.c in Sources */,
|
||||||
F66B6AFE152FA32400B29B2A /* dlmalloc.c in Sources */,
|
6C43CBE91534F76F00162364 /* ffi64.c in Sources */,
|
||||||
F66B6AFF152FA32400B29B2A /* java_raw_api.c in Sources */,
|
6C43CC2F1534F7BE00162364 /* closures.c in Sources */,
|
||||||
F66B6B00152FA32400B29B2A /* prep_cif.c in Sources */,
|
6C43CC311534F7BE00162364 /* debug.c in Sources */,
|
||||||
F66B6B01152FA32400B29B2A /* raw_api.c in Sources */,
|
6C43CC331534F7BE00162364 /* dlmalloc.c in Sources */,
|
||||||
F66B6B02152FA32400B29B2A /* types.c in Sources */,
|
6C43CC351534F7BE00162364 /* java_raw_api.c in Sources */,
|
||||||
F66B6B03152FA32400B29B2A /* darwin.S in Sources */,
|
6C43CC371534F7BE00162364 /* prep_cif.c in Sources */,
|
||||||
F66B6B05152FA32400B29B2A /* ffi.c in Sources */,
|
6C43CC391534F7BE00162364 /* raw_api.c in Sources */,
|
||||||
|
6C43CC3B1534F7BE00162364 /* types.c in Sources */,
|
||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
/* End PBXSourcesBuildPhase section */
|
/* End PBXSourcesBuildPhase section */
|
||||||
|
|
||||||
/* Begin XCBuildConfiguration section */
|
/* Begin XCBuildConfiguration section */
|
||||||
|
6C43CB4B1534E9D100162364 /* Debug */ = {
|
||||||
|
isa = XCBuildConfiguration;
|
||||||
|
buildSettings = {
|
||||||
|
ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
|
||||||
|
DSTROOT = /tmp/ffi.dst;
|
||||||
|
FRAMEWORK_SEARCH_PATHS = (
|
||||||
|
"$(inherited)",
|
||||||
|
"\"$(SYSTEM_APPS_DIR)/Xcode.app/Contents/Developer/Library/Frameworks\"",
|
||||||
|
);
|
||||||
|
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
|
||||||
|
GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
|
||||||
|
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||||
|
GCC_WARN_UNINITIALIZED_AUTOS = YES;
|
||||||
|
MACOSX_DEPLOYMENT_TARGET = 10.6;
|
||||||
|
ONLY_ACTIVE_ARCH = YES;
|
||||||
|
PRODUCT_NAME = ffi;
|
||||||
|
SDKROOT = macosx;
|
||||||
|
};
|
||||||
|
name = Debug;
|
||||||
|
};
|
||||||
|
6C43CB4C1534E9D100162364 /* Release */ = {
|
||||||
|
isa = XCBuildConfiguration;
|
||||||
|
buildSettings = {
|
||||||
|
ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
|
||||||
|
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||||
|
DSTROOT = /tmp/ffi.dst;
|
||||||
|
FRAMEWORK_SEARCH_PATHS = (
|
||||||
|
"$(inherited)",
|
||||||
|
"\"$(SYSTEM_APPS_DIR)/Xcode.app/Contents/Developer/Library/Frameworks\"",
|
||||||
|
);
|
||||||
|
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
|
||||||
|
GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
|
||||||
|
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||||
|
GCC_WARN_UNINITIALIZED_AUTOS = YES;
|
||||||
|
MACOSX_DEPLOYMENT_TARGET = 10.6;
|
||||||
|
PRODUCT_NAME = ffi;
|
||||||
|
SDKROOT = macosx;
|
||||||
|
};
|
||||||
|
name = Release;
|
||||||
|
};
|
||||||
F6B083AB14721EE50031D8A1 /* Debug */ = {
|
F6B083AB14721EE50031D8A1 /* Debug */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
@@ -230,8 +498,9 @@
|
|||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
);
|
);
|
||||||
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
|
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
|
||||||
GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES;
|
GCC_WARN_ABOUT_MISSING_PROTOTYPES = NO;
|
||||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||||
|
GCC_WARN_UNUSED_VALUE = NO;
|
||||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
HEADER_SEARCH_PATHS = ios/include;
|
HEADER_SEARCH_PATHS = ios/include;
|
||||||
SDKROOT = iphoneos;
|
SDKROOT = iphoneos;
|
||||||
@@ -246,8 +515,9 @@
|
|||||||
COPY_PHASE_STRIP = YES;
|
COPY_PHASE_STRIP = YES;
|
||||||
GCC_C_LANGUAGE_STANDARD = gnu99;
|
GCC_C_LANGUAGE_STANDARD = gnu99;
|
||||||
GCC_PREPROCESSOR_DEFINITIONS = "";
|
GCC_PREPROCESSOR_DEFINITIONS = "";
|
||||||
GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES;
|
GCC_WARN_ABOUT_MISSING_PROTOTYPES = NO;
|
||||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||||
|
GCC_WARN_UNUSED_VALUE = NO;
|
||||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
HEADER_SEARCH_PATHS = ios/include;
|
HEADER_SEARCH_PATHS = ios/include;
|
||||||
SDKROOT = iphoneos;
|
SDKROOT = iphoneos;
|
||||||
@@ -258,10 +528,16 @@
|
|||||||
F6F980C2147386130008F121 /* Debug */ = {
|
F6F980C2147386130008F121 /* Debug */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
|
ARCHS = (
|
||||||
|
armv6,
|
||||||
|
armv7,
|
||||||
|
);
|
||||||
DSTROOT = /tmp/ffi.dst;
|
DSTROOT = /tmp/ffi.dst;
|
||||||
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
||||||
|
GCC_THUMB_SUPPORT = NO;
|
||||||
|
IPHONEOS_DEPLOYMENT_TARGET = 4.0;
|
||||||
OTHER_LDFLAGS = "-ObjC";
|
OTHER_LDFLAGS = "-ObjC";
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = ffi;
|
||||||
SKIP_INSTALL = YES;
|
SKIP_INSTALL = YES;
|
||||||
};
|
};
|
||||||
name = Debug;
|
name = Debug;
|
||||||
@@ -269,10 +545,16 @@
|
|||||||
F6F980C3147386130008F121 /* Release */ = {
|
F6F980C3147386130008F121 /* Release */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
|
ARCHS = (
|
||||||
|
armv6,
|
||||||
|
armv7,
|
||||||
|
);
|
||||||
DSTROOT = /tmp/ffi.dst;
|
DSTROOT = /tmp/ffi.dst;
|
||||||
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
||||||
|
GCC_THUMB_SUPPORT = NO;
|
||||||
|
IPHONEOS_DEPLOYMENT_TARGET = 4.0;
|
||||||
OTHER_LDFLAGS = "-ObjC";
|
OTHER_LDFLAGS = "-ObjC";
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = ffi;
|
||||||
SKIP_INSTALL = YES;
|
SKIP_INSTALL = YES;
|
||||||
};
|
};
|
||||||
name = Release;
|
name = Release;
|
||||||
@@ -280,6 +562,15 @@
|
|||||||
/* End XCBuildConfiguration section */
|
/* End XCBuildConfiguration section */
|
||||||
|
|
||||||
/* Begin XCConfigurationList section */
|
/* Begin XCConfigurationList section */
|
||||||
|
6C43CB4A1534E9D100162364 /* Build configuration list for PBXNativeTarget "libffi OS X" */ = {
|
||||||
|
isa = XCConfigurationList;
|
||||||
|
buildConfigurations = (
|
||||||
|
6C43CB4B1534E9D100162364 /* Debug */,
|
||||||
|
6C43CB4C1534E9D100162364 /* Release */,
|
||||||
|
);
|
||||||
|
defaultConfigurationIsVisible = 0;
|
||||||
|
defaultConfigurationName = Release;
|
||||||
|
};
|
||||||
F6B0839A14721EE50031D8A1 /* Build configuration list for PBXProject "libffi" */ = {
|
F6B0839A14721EE50031D8A1 /* Build configuration list for PBXProject "libffi" */ = {
|
||||||
isa = XCConfigurationList;
|
isa = XCConfigurationList;
|
||||||
buildConfigurations = (
|
buildConfigurations = (
|
||||||
@@ -289,7 +580,7 @@
|
|||||||
defaultConfigurationIsVisible = 0;
|
defaultConfigurationIsVisible = 0;
|
||||||
defaultConfigurationName = Release;
|
defaultConfigurationName = Release;
|
||||||
};
|
};
|
||||||
F6F980C4147386130008F121 /* Build configuration list for PBXNativeTarget "ffi" */ = {
|
F6F980C4147386130008F121 /* Build configuration list for PBXNativeTarget "libffi iOS" */ = {
|
||||||
isa = XCConfigurationList;
|
isa = XCConfigurationList;
|
||||||
buildConfigurations = (
|
buildConfigurations = (
|
||||||
F6F980C2147386130008F121 /* Debug */,
|
F6F980C2147386130008F121 /* Debug */,
|
||||||
|
|||||||
@@ -15,3 +15,4 @@ x32libtool
|
|||||||
arm-test-fix
|
arm-test-fix
|
||||||
xcode
|
xcode
|
||||||
darwin-missing-semi
|
darwin-missing-semi
|
||||||
|
xcode-improvements
|
||||||
|
|||||||
819
patches/xcode-improvements
Normal file
819
patches/xcode-improvements
Normal file
@@ -0,0 +1,819 @@
|
|||||||
|
Index: libffi/.gitignore
|
||||||
|
===================================================================
|
||||||
|
--- libffi.orig/.gitignore
|
||||||
|
+++ libffi/.gitignore
|
||||||
|
@@ -19,4 +19,5 @@ autom4te.cache
|
||||||
|
libffi.xcodeproj/xcuserdata
|
||||||
|
libffi.xcodeproj/project.xcworkspace
|
||||||
|
ios/
|
||||||
|
-
|
||||||
|
+osx/
|
||||||
|
+build_*/
|
||||||
|
\ No newline at end of file
|
||||||
|
Index: libffi/ChangeLog
|
||||||
|
===================================================================
|
||||||
|
--- libffi.orig/ChangeLog
|
||||||
|
+++ libffi/ChangeLog
|
||||||
|
@@ -1,3 +1,11 @@
|
||||||
|
+2012-04-11 Zachary Waldowski <zwaldowski@gmail.com>
|
||||||
|
+
|
||||||
|
+ * generate-ios-source-and-headers.py,
|
||||||
|
+ libffi.xcodeproj/project.pbxproj: Support a Mac static library via
|
||||||
|
+ Xcode. Set iOS compatibility to 4.0. Move iOS trampoline
|
||||||
|
+ generation into an Xcode "run script" phase. Include both as
|
||||||
|
+ Xcode build scripts. Don't always regenerate config files.
|
||||||
|
+
|
||||||
|
2012-04-10 Anthony Green <green@moxielogic.com>
|
||||||
|
|
||||||
|
* src/powerpc/ffi_darwin.c (ffi_prep_args): Add missing semicolon.
|
||||||
|
Index: libffi/generate-ios-source-and-headers.py
|
||||||
|
===================================================================
|
||||||
|
--- libffi.orig/generate-ios-source-and-headers.py
|
||||||
|
+++ libffi/generate-ios-source-and-headers.py
|
||||||
|
@@ -1,19 +1,17 @@
|
||||||
|
#!/usr/bin/env python
|
||||||
|
+
|
||||||
|
import subprocess
|
||||||
|
import re
|
||||||
|
import os
|
||||||
|
import errno
|
||||||
|
import collections
|
||||||
|
import sys
|
||||||
|
-#developer_path =
|
||||||
|
-
|
||||||
|
|
||||||
|
class Platform(object):
|
||||||
|
pass
|
||||||
|
|
||||||
|
sdk_re = re.compile(r'.*-sdk ([a-zA-Z0-9.]*)')
|
||||||
|
|
||||||
|
-
|
||||||
|
def sdkinfo(sdkname):
|
||||||
|
ret = {}
|
||||||
|
for line in subprocess.Popen(['xcodebuild', '-sdk', sdkname, '-version'], stdout=subprocess.PIPE).stdout:
|
||||||
|
@@ -23,16 +21,6 @@ def sdkinfo(sdkname):
|
||||||
|
ret[k] = v
|
||||||
|
return ret
|
||||||
|
|
||||||
|
-def mkdir_p(path):
|
||||||
|
- try:
|
||||||
|
- os.makedirs(path)
|
||||||
|
- except OSError as exc: # Python >2.5
|
||||||
|
- if exc.errno == errno.EEXIST:
|
||||||
|
- pass
|
||||||
|
- else:
|
||||||
|
- raise
|
||||||
|
-
|
||||||
|
-
|
||||||
|
sim_sdk_info = sdkinfo('iphonesimulator')
|
||||||
|
device_sdk_info = sdkinfo('iphoneos')
|
||||||
|
|
||||||
|
@@ -54,7 +42,7 @@ sim_sdk, device_sdk = latest_sdks()
|
||||||
|
class simulator_platform(Platform):
|
||||||
|
sdk='iphonesimulator'
|
||||||
|
arch = 'i386'
|
||||||
|
- short_arch = arch
|
||||||
|
+ name = 'simulator'
|
||||||
|
triple = 'i386-apple-darwin10'
|
||||||
|
sdkroot = sim_sdk_info['Path']
|
||||||
|
|
||||||
|
@@ -63,8 +51,8 @@ class simulator_platform(Platform):
|
||||||
|
|
||||||
|
class device_platform(Platform):
|
||||||
|
sdk='iphoneos'
|
||||||
|
+ name = 'ios'
|
||||||
|
arch = 'armv7'
|
||||||
|
- short_arch = 'arm'
|
||||||
|
triple = 'arm-apple-darwin10'
|
||||||
|
sdkroot = device_sdk_info['Path']
|
||||||
|
|
||||||
|
@@ -73,7 +61,9 @@ class device_platform(Platform):
|
||||||
|
|
||||||
|
|
||||||
|
def move_file(src_dir, dst_dir, filename, file_suffix=None, prefix='', suffix=''):
|
||||||
|
- mkdir_p(dst_dir)
|
||||||
|
+ if not os.path.exists(dst_dir):
|
||||||
|
+ os.makedirs(dst_dir)
|
||||||
|
+
|
||||||
|
out_filename = filename
|
||||||
|
|
||||||
|
if file_suffix:
|
||||||
|
@@ -130,38 +120,31 @@ def build_target(platform):
|
||||||
|
def xcrun_cmd(cmd):
|
||||||
|
return subprocess.check_output(['xcrun', '-sdk', platform.sdkroot, '-find', cmd]).strip()
|
||||||
|
|
||||||
|
- build_dir = 'build_' + platform.short_arch
|
||||||
|
- mkdir_p(build_dir)
|
||||||
|
- env = dict(CC=xcrun_cmd('clang'),
|
||||||
|
- LD=xcrun_cmd('ld'),
|
||||||
|
- CFLAGS='-arch %s -isysroot %s -miphoneos-version-min=4.3' % (platform.arch, platform.sdkroot))
|
||||||
|
- working_dir=os.getcwd()
|
||||||
|
- try:
|
||||||
|
- os.chdir(build_dir)
|
||||||
|
- subprocess.check_call(['../configure', '-host', platform.triple], env=env)
|
||||||
|
- move_source_tree('.', None, '../ios/include',
|
||||||
|
- arch=platform.short_arch,
|
||||||
|
- prefix=platform.prefix,
|
||||||
|
- suffix=platform.suffix)
|
||||||
|
- move_source_tree('./include', None, '../ios/include',
|
||||||
|
- arch=platform.short_arch,
|
||||||
|
- prefix=platform.prefix,
|
||||||
|
- suffix=platform.suffix)
|
||||||
|
- finally:
|
||||||
|
- os.chdir(working_dir)
|
||||||
|
-
|
||||||
|
- for header_name, archs in headers_seen.iteritems():
|
||||||
|
- basename, suffix = os.path.splitext(header_name)
|
||||||
|
-
|
||||||
|
-def make_tramp():
|
||||||
|
- with open('src/arm/trampoline.S', 'w') as tramp_out:
|
||||||
|
- p = subprocess.Popen(['bash', 'src/arm/gentramp.sh'], stdout=tramp_out)
|
||||||
|
- p.wait()
|
||||||
|
+ build_dir = 'build_' + platform.name
|
||||||
|
+ if not os.path.exists(build_dir):
|
||||||
|
+ os.makedirs(build_dir)
|
||||||
|
+ env = dict(CC=xcrun_cmd('clang'),
|
||||||
|
+ LD=xcrun_cmd('ld'),
|
||||||
|
+ CFLAGS='-arch %s -isysroot %s -miphoneos-version-min=4.0' % (platform.arch, platform.sdkroot))
|
||||||
|
+ working_dir=os.getcwd()
|
||||||
|
+ try:
|
||||||
|
+ os.chdir(build_dir)
|
||||||
|
+ subprocess.check_call(['../configure', '-host', platform.triple], env=env)
|
||||||
|
+ move_source_tree('.', None, '../ios/include',
|
||||||
|
+ arch=platform.arch,
|
||||||
|
+ prefix=platform.prefix,
|
||||||
|
+ suffix=platform.suffix)
|
||||||
|
+ move_source_tree('./include', None, '../ios/include',
|
||||||
|
+ arch=platform.arch,
|
||||||
|
+ prefix=platform.prefix,
|
||||||
|
+ suffix=platform.suffix)
|
||||||
|
+ finally:
|
||||||
|
+ os.chdir(working_dir)
|
||||||
|
|
||||||
|
+ for header_name, archs in headers_seen.iteritems():
|
||||||
|
+ basename, suffix = os.path.splitext(header_name)
|
||||||
|
|
||||||
|
def main():
|
||||||
|
- make_tramp()
|
||||||
|
-
|
||||||
|
move_source_tree('src', 'ios/src', 'ios/include')
|
||||||
|
move_source_tree('include', None, 'ios/include')
|
||||||
|
build_target(simulator_platform)
|
||||||
|
Index: libffi/libffi.xcodeproj/project.pbxproj
|
||||||
|
===================================================================
|
||||||
|
--- libffi.orig/libffi.xcodeproj/project.pbxproj
|
||||||
|
+++ libffi/libffi.xcodeproj/project.pbxproj
|
||||||
|
@@ -7,47 +7,104 @@
|
||||||
|
objects = {
|
||||||
|
|
||||||
|
/* Begin PBXBuildFile section */
|
||||||
|
- F66B6AF9152FA32400B29B2A /* ffi.c in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AE4152FA32400B29B2A /* ffi.c */; };
|
||||||
|
- F66B6AFA152FA32400B29B2A /* sysv.S in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AE6152FA32400B29B2A /* sysv.S */; };
|
||||||
|
- F66B6AFB152FA32400B29B2A /* trampoline.S in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AE7152FA32400B29B2A /* trampoline.S */; };
|
||||||
|
- F66B6AFC152FA32400B29B2A /* closures.c in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AE8152FA32400B29B2A /* closures.c */; };
|
||||||
|
- F66B6AFD152FA32400B29B2A /* debug.c in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AE9152FA32400B29B2A /* debug.c */; };
|
||||||
|
- F66B6AFE152FA32400B29B2A /* dlmalloc.c in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AEA152FA32400B29B2A /* dlmalloc.c */; };
|
||||||
|
- F66B6AFF152FA32400B29B2A /* java_raw_api.c in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AEB152FA32400B29B2A /* java_raw_api.c */; };
|
||||||
|
- F66B6B00152FA32400B29B2A /* prep_cif.c in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AEC152FA32400B29B2A /* prep_cif.c */; };
|
||||||
|
- F66B6B01152FA32400B29B2A /* raw_api.c in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AED152FA32400B29B2A /* raw_api.c */; };
|
||||||
|
- F66B6B02152FA32400B29B2A /* types.c in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AEE152FA32400B29B2A /* types.c */; };
|
||||||
|
- F66B6B03152FA32400B29B2A /* darwin.S in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AF0152FA32400B29B2A /* darwin.S */; };
|
||||||
|
- F66B6B05152FA32400B29B2A /* ffi.c in Sources */ = {isa = PBXBuildFile; fileRef = F66B6AF2152FA32400B29B2A /* ffi.c */; };
|
||||||
|
+ 6C43CBDC1534F76F00162364 /* ffi.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CBBD1534F76F00162364 /* ffi.c */; };
|
||||||
|
+ 6C43CBDD1534F76F00162364 /* sysv.S in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CBBF1534F76F00162364 /* sysv.S */; };
|
||||||
|
+ 6C43CBDE1534F76F00162364 /* trampoline.S in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CBC01534F76F00162364 /* trampoline.S */; };
|
||||||
|
+ 6C43CBE61534F76F00162364 /* darwin.S in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CBC91534F76F00162364 /* darwin.S */; };
|
||||||
|
+ 6C43CBE81534F76F00162364 /* ffi.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CBCB1534F76F00162364 /* ffi.c */; };
|
||||||
|
+ 6C43CBE91534F76F00162364 /* ffi64.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CBCC1534F76F00162364 /* ffi64.c */; };
|
||||||
|
+ 6C43CC1F1534F77800162364 /* darwin.S in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC051534F77800162364 /* darwin.S */; };
|
||||||
|
+ 6C43CC201534F77800162364 /* darwin64.S in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC061534F77800162364 /* darwin64.S */; };
|
||||||
|
+ 6C43CC211534F77800162364 /* ffi.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC071534F77800162364 /* ffi.c */; };
|
||||||
|
+ 6C43CC221534F77800162364 /* ffi64.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC081534F77800162364 /* ffi64.c */; };
|
||||||
|
+ 6C43CC2F1534F7BE00162364 /* closures.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC281534F7BE00162364 /* closures.c */; };
|
||||||
|
+ 6C43CC301534F7BE00162364 /* closures.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC281534F7BE00162364 /* closures.c */; };
|
||||||
|
+ 6C43CC311534F7BE00162364 /* debug.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC291534F7BE00162364 /* debug.c */; };
|
||||||
|
+ 6C43CC321534F7BE00162364 /* debug.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC291534F7BE00162364 /* debug.c */; };
|
||||||
|
+ 6C43CC331534F7BE00162364 /* dlmalloc.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC2A1534F7BE00162364 /* dlmalloc.c */; };
|
||||||
|
+ 6C43CC341534F7BE00162364 /* dlmalloc.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC2A1534F7BE00162364 /* dlmalloc.c */; };
|
||||||
|
+ 6C43CC351534F7BE00162364 /* java_raw_api.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC2B1534F7BE00162364 /* java_raw_api.c */; };
|
||||||
|
+ 6C43CC361534F7BE00162364 /* java_raw_api.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC2B1534F7BE00162364 /* java_raw_api.c */; };
|
||||||
|
+ 6C43CC371534F7BE00162364 /* prep_cif.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC2C1534F7BE00162364 /* prep_cif.c */; };
|
||||||
|
+ 6C43CC381534F7BE00162364 /* prep_cif.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC2C1534F7BE00162364 /* prep_cif.c */; };
|
||||||
|
+ 6C43CC391534F7BE00162364 /* raw_api.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC2D1534F7BE00162364 /* raw_api.c */; };
|
||||||
|
+ 6C43CC3A1534F7BE00162364 /* raw_api.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC2D1534F7BE00162364 /* raw_api.c */; };
|
||||||
|
+ 6C43CC3B1534F7BE00162364 /* types.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC2E1534F7BE00162364 /* types.c */; };
|
||||||
|
+ 6C43CC3C1534F7BE00162364 /* types.c in Sources */ = {isa = PBXBuildFile; fileRef = 6C43CC2E1534F7BE00162364 /* types.c */; };
|
||||||
|
+ 6C43CC971535032600162364 /* ffi.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CC8D1535032600162364 /* ffi.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||||
|
+ 6C43CC981535032600162364 /* ffi_common.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CC8E1535032600162364 /* ffi_common.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||||
|
+ 6C43CC991535032600162364 /* ffi_i386.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CC8F1535032600162364 /* ffi_i386.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||||
|
+ 6C43CC9A1535032600162364 /* ffi_x86_64.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CC901535032600162364 /* ffi_x86_64.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||||
|
+ 6C43CC9B1535032600162364 /* fficonfig.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CC911535032600162364 /* fficonfig.h */; };
|
||||||
|
+ 6C43CC9C1535032600162364 /* fficonfig_i386.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CC921535032600162364 /* fficonfig_i386.h */; };
|
||||||
|
+ 6C43CC9D1535032600162364 /* fficonfig_x86_64.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CC931535032600162364 /* fficonfig_x86_64.h */; };
|
||||||
|
+ 6C43CC9E1535032600162364 /* ffitarget.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CC941535032600162364 /* ffitarget.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||||
|
+ 6C43CC9F1535032600162364 /* ffitarget_i386.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CC951535032600162364 /* ffitarget_i386.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||||
|
+ 6C43CCA01535032600162364 /* ffitarget_x86_64.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CC961535032600162364 /* ffitarget_x86_64.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||||
|
+ 6C43CCAD1535039600162364 /* ffi.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CCA21535039600162364 /* ffi.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||||
|
+ 6C43CCAE1535039600162364 /* ffi_armv7.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CCA31535039600162364 /* ffi_armv7.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||||
|
+ 6C43CCAF1535039600162364 /* ffi_common.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CCA41535039600162364 /* ffi_common.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||||
|
+ 6C43CCB01535039600162364 /* ffi_i386.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CCA51535039600162364 /* ffi_i386.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||||
|
+ 6C43CCB11535039600162364 /* fficonfig.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CCA61535039600162364 /* fficonfig.h */; };
|
||||||
|
+ 6C43CCB21535039600162364 /* fficonfig_armv7.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CCA71535039600162364 /* fficonfig_armv7.h */; };
|
||||||
|
+ 6C43CCB31535039600162364 /* fficonfig_i386.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CCA81535039600162364 /* fficonfig_i386.h */; };
|
||||||
|
+ 6C43CCB41535039600162364 /* ffitarget.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CCA91535039600162364 /* ffitarget.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||||
|
+ 6C43CCB51535039600162364 /* ffitarget_arm.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CCAA1535039600162364 /* ffitarget_arm.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||||
|
+ 6C43CCB61535039600162364 /* ffitarget_armv7.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CCAB1535039600162364 /* ffitarget_armv7.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||||
|
+ 6C43CCB71535039600162364 /* ffitarget_i386.h in Headers */ = {isa = PBXBuildFile; fileRef = 6C43CCAC1535039600162364 /* ffitarget_i386.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||||
|
/* End PBXBuildFile section */
|
||||||
|
|
||||||
|
/* Begin PBXFileReference section */
|
||||||
|
- F66B6AE4152FA32400B29B2A /* ffi.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ffi.c; sourceTree = "<group>"; };
|
||||||
|
- F66B6AE5152FA32400B29B2A /* gentramp.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = gentramp.sh; sourceTree = "<group>"; };
|
||||||
|
- F66B6AE6152FA32400B29B2A /* sysv.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = sysv.S; sourceTree = "<group>"; };
|
||||||
|
- F66B6AE7152FA32400B29B2A /* trampoline.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = trampoline.S; sourceTree = "<group>"; };
|
||||||
|
- F66B6AE8152FA32400B29B2A /* closures.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = closures.c; sourceTree = "<group>"; };
|
||||||
|
- F66B6AE9152FA32400B29B2A /* debug.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = debug.c; sourceTree = "<group>"; };
|
||||||
|
- F66B6AEA152FA32400B29B2A /* dlmalloc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dlmalloc.c; sourceTree = "<group>"; };
|
||||||
|
- F66B6AEB152FA32400B29B2A /* java_raw_api.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = java_raw_api.c; sourceTree = "<group>"; };
|
||||||
|
- F66B6AEC152FA32400B29B2A /* prep_cif.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = prep_cif.c; sourceTree = "<group>"; };
|
||||||
|
- F66B6AED152FA32400B29B2A /* raw_api.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = raw_api.c; sourceTree = "<group>"; };
|
||||||
|
- F66B6AEE152FA32400B29B2A /* types.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = types.c; sourceTree = "<group>"; };
|
||||||
|
- F66B6AF0152FA32400B29B2A /* darwin.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = darwin.S; sourceTree = "<group>"; };
|
||||||
|
- F66B6AF2152FA32400B29B2A /* ffi.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ffi.c; sourceTree = "<group>"; };
|
||||||
|
- F6B08473147252410031D8A1 /* ffi_arm.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffi_arm.h; sourceTree = "<group>"; };
|
||||||
|
- F6B08474147252410031D8A1 /* ffi_i386.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffi_i386.h; sourceTree = "<group>"; };
|
||||||
|
- F6B08475147252410031D8A1 /* ffi.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffi.h; sourceTree = "<group>"; };
|
||||||
|
- F6B08476147252410031D8A1 /* fficonfig_arm.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fficonfig_arm.h; sourceTree = "<group>"; };
|
||||||
|
- F6B08477147252410031D8A1 /* fficonfig_i386.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fficonfig_i386.h; sourceTree = "<group>"; };
|
||||||
|
- F6B08478147252410031D8A1 /* fficonfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fficonfig.h; sourceTree = "<group>"; };
|
||||||
|
- F6B08479147252410031D8A1 /* ffitarget_arm.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffitarget_arm.h; sourceTree = "<group>"; };
|
||||||
|
- F6B0847A147252410031D8A1 /* ffitarget_i386.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffitarget_i386.h; sourceTree = "<group>"; };
|
||||||
|
- F6B0847B147252410031D8A1 /* ffitarget.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffitarget.h; sourceTree = "<group>"; };
|
||||||
|
+ 6C43CB3D1534E9D100162364 /* libffi.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libffi.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
|
+ 6C43CBBD1534F76F00162364 /* ffi.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ffi.c; sourceTree = "<group>"; };
|
||||||
|
+ 6C43CBBF1534F76F00162364 /* sysv.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = sysv.S; sourceTree = "<group>"; };
|
||||||
|
+ 6C43CBC01534F76F00162364 /* trampoline.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = trampoline.S; sourceTree = "<group>"; };
|
||||||
|
+ 6C43CBC91534F76F00162364 /* darwin.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = darwin.S; sourceTree = "<group>"; };
|
||||||
|
+ 6C43CBCB1534F76F00162364 /* ffi.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ffi.c; sourceTree = "<group>"; };
|
||||||
|
+ 6C43CBCC1534F76F00162364 /* ffi64.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ffi64.c; sourceTree = "<group>"; };
|
||||||
|
+ 6C43CC051534F77800162364 /* darwin.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = darwin.S; sourceTree = "<group>"; };
|
||||||
|
+ 6C43CC061534F77800162364 /* darwin64.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = darwin64.S; sourceTree = "<group>"; };
|
||||||
|
+ 6C43CC071534F77800162364 /* ffi.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ffi.c; sourceTree = "<group>"; };
|
||||||
|
+ 6C43CC081534F77800162364 /* ffi64.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ffi64.c; sourceTree = "<group>"; };
|
||||||
|
+ 6C43CC281534F7BE00162364 /* closures.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = closures.c; path = src/closures.c; sourceTree = SOURCE_ROOT; };
|
||||||
|
+ 6C43CC291534F7BE00162364 /* debug.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = debug.c; path = src/debug.c; sourceTree = SOURCE_ROOT; };
|
||||||
|
+ 6C43CC2A1534F7BE00162364 /* dlmalloc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = dlmalloc.c; path = src/dlmalloc.c; sourceTree = SOURCE_ROOT; };
|
||||||
|
+ 6C43CC2B1534F7BE00162364 /* java_raw_api.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = java_raw_api.c; path = src/java_raw_api.c; sourceTree = SOURCE_ROOT; };
|
||||||
|
+ 6C43CC2C1534F7BE00162364 /* prep_cif.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = prep_cif.c; path = src/prep_cif.c; sourceTree = SOURCE_ROOT; };
|
||||||
|
+ 6C43CC2D1534F7BE00162364 /* raw_api.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = raw_api.c; path = src/raw_api.c; sourceTree = SOURCE_ROOT; };
|
||||||
|
+ 6C43CC2E1534F7BE00162364 /* types.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = types.c; path = src/types.c; sourceTree = SOURCE_ROOT; };
|
||||||
|
+ 6C43CC8D1535032600162364 /* ffi.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffi.h; sourceTree = "<group>"; };
|
||||||
|
+ 6C43CC8E1535032600162364 /* ffi_common.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffi_common.h; sourceTree = "<group>"; };
|
||||||
|
+ 6C43CC8F1535032600162364 /* ffi_i386.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffi_i386.h; sourceTree = "<group>"; };
|
||||||
|
+ 6C43CC901535032600162364 /* ffi_x86_64.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffi_x86_64.h; sourceTree = "<group>"; };
|
||||||
|
+ 6C43CC911535032600162364 /* fficonfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fficonfig.h; sourceTree = "<group>"; };
|
||||||
|
+ 6C43CC921535032600162364 /* fficonfig_i386.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fficonfig_i386.h; sourceTree = "<group>"; };
|
||||||
|
+ 6C43CC931535032600162364 /* fficonfig_x86_64.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fficonfig_x86_64.h; sourceTree = "<group>"; };
|
||||||
|
+ 6C43CC941535032600162364 /* ffitarget.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffitarget.h; sourceTree = "<group>"; };
|
||||||
|
+ 6C43CC951535032600162364 /* ffitarget_i386.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffitarget_i386.h; sourceTree = "<group>"; };
|
||||||
|
+ 6C43CC961535032600162364 /* ffitarget_x86_64.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffitarget_x86_64.h; sourceTree = "<group>"; };
|
||||||
|
+ 6C43CCA21535039600162364 /* ffi.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffi.h; sourceTree = "<group>"; };
|
||||||
|
+ 6C43CCA31535039600162364 /* ffi_armv7.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffi_armv7.h; sourceTree = "<group>"; };
|
||||||
|
+ 6C43CCA41535039600162364 /* ffi_common.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffi_common.h; sourceTree = "<group>"; };
|
||||||
|
+ 6C43CCA51535039600162364 /* ffi_i386.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffi_i386.h; sourceTree = "<group>"; };
|
||||||
|
+ 6C43CCA61535039600162364 /* fficonfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fficonfig.h; sourceTree = "<group>"; };
|
||||||
|
+ 6C43CCA71535039600162364 /* fficonfig_armv7.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fficonfig_armv7.h; sourceTree = "<group>"; };
|
||||||
|
+ 6C43CCA81535039600162364 /* fficonfig_i386.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fficonfig_i386.h; sourceTree = "<group>"; };
|
||||||
|
+ 6C43CCA91535039600162364 /* ffitarget.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffitarget.h; sourceTree = "<group>"; };
|
||||||
|
+ 6C43CCAA1535039600162364 /* ffitarget_arm.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffitarget_arm.h; sourceTree = "<group>"; };
|
||||||
|
+ 6C43CCAB1535039600162364 /* ffitarget_armv7.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffitarget_armv7.h; sourceTree = "<group>"; };
|
||||||
|
+ 6C43CCAC1535039600162364 /* ffitarget_i386.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ffitarget_i386.h; sourceTree = "<group>"; };
|
||||||
|
F6F980BA147386130008F121 /* libffi.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libffi.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
|
/* End PBXFileReference section */
|
||||||
|
|
||||||
|
/* Begin PBXFrameworksBuildPhase section */
|
||||||
|
+ 6C43CB3A1534E9D100162364 /* Frameworks */ = {
|
||||||
|
+ isa = PBXFrameworksBuildPhase;
|
||||||
|
+ buildActionMask = 2147483647;
|
||||||
|
+ files = (
|
||||||
|
+ );
|
||||||
|
+ runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
+ };
|
||||||
|
F6F980B7147386130008F121 /* Frameworks */ = {
|
||||||
|
isa = PBXFrameworksBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
@@ -58,81 +115,139 @@
|
||||||
|
/* End PBXFrameworksBuildPhase section */
|
||||||
|
|
||||||
|
/* Begin PBXGroup section */
|
||||||
|
- F66B6AE2152FA32400B29B2A /* src */ = {
|
||||||
|
+ 6C43CBAF1534F76F00162364 /* iOS */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
- F66B6AE3152FA32400B29B2A /* arm */,
|
||||||
|
- F66B6AE8152FA32400B29B2A /* closures.c */,
|
||||||
|
- F66B6AE9152FA32400B29B2A /* debug.c */,
|
||||||
|
- F66B6AEA152FA32400B29B2A /* dlmalloc.c */,
|
||||||
|
- F66B6AEB152FA32400B29B2A /* java_raw_api.c */,
|
||||||
|
- F66B6AEC152FA32400B29B2A /* prep_cif.c */,
|
||||||
|
- F66B6AED152FA32400B29B2A /* raw_api.c */,
|
||||||
|
- F66B6AEE152FA32400B29B2A /* types.c */,
|
||||||
|
- F66B6AEF152FA32400B29B2A /* x86 */,
|
||||||
|
+ 6C43CCA11535039600162364 /* include */,
|
||||||
|
+ 6C43CBBB1534F76F00162364 /* src */,
|
||||||
|
);
|
||||||
|
- name = src;
|
||||||
|
- path = ios/src;
|
||||||
|
+ name = iOS;
|
||||||
|
+ path = ios;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
- F66B6AE3152FA32400B29B2A /* arm */ = {
|
||||||
|
+ 6C43CBBB1534F76F00162364 /* src */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
- F66B6AE4152FA32400B29B2A /* ffi.c */,
|
||||||
|
- F66B6AE5152FA32400B29B2A /* gentramp.sh */,
|
||||||
|
- F66B6AE6152FA32400B29B2A /* sysv.S */,
|
||||||
|
- F66B6AE7152FA32400B29B2A /* trampoline.S */,
|
||||||
|
+ 6C43CBC81534F76F00162364 /* x86 */,
|
||||||
|
+ 6C43CBBC1534F76F00162364 /* arm */,
|
||||||
|
+ );
|
||||||
|
+ path = src;
|
||||||
|
+ sourceTree = "<group>";
|
||||||
|
+ };
|
||||||
|
+ 6C43CBBC1534F76F00162364 /* arm */ = {
|
||||||
|
+ isa = PBXGroup;
|
||||||
|
+ children = (
|
||||||
|
+ 6C43CBBD1534F76F00162364 /* ffi.c */,
|
||||||
|
+ 6C43CBBF1534F76F00162364 /* sysv.S */,
|
||||||
|
+ 6C43CBC01534F76F00162364 /* trampoline.S */,
|
||||||
|
);
|
||||||
|
path = arm;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
- F66B6AEF152FA32400B29B2A /* x86 */ = {
|
||||||
|
+ 6C43CBC81534F76F00162364 /* x86 */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
- F66B6AF0152FA32400B29B2A /* darwin.S */,
|
||||||
|
- F66B6AF2152FA32400B29B2A /* ffi.c */,
|
||||||
|
+ 6C43CBC91534F76F00162364 /* darwin.S */,
|
||||||
|
+ 6C43CBCB1534F76F00162364 /* ffi.c */,
|
||||||
|
+ 6C43CBCC1534F76F00162364 /* ffi64.c */,
|
||||||
|
);
|
||||||
|
path = x86;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
- F6B0839514721EE50031D8A1 = {
|
||||||
|
+ 6C43CBF01534F77800162364 /* OS X */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
- F66B6AE2152FA32400B29B2A /* src */,
|
||||||
|
- F6B0846C147241640031D8A1 /* include */,
|
||||||
|
- F6B083A214721EE50031D8A1 /* Frameworks */,
|
||||||
|
- F6F980C6147386260008F121 /* Products */,
|
||||||
|
+ 6C43CC8C1535032600162364 /* include */,
|
||||||
|
+ 6C43CBFC1534F77800162364 /* src */,
|
||||||
|
);
|
||||||
|
+ name = "OS X";
|
||||||
|
+ path = osx;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
- F6B083A214721EE50031D8A1 /* Frameworks */ = {
|
||||||
|
+ 6C43CBFC1534F77800162364 /* src */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
+ 6C43CC041534F77800162364 /* x86 */,
|
||||||
|
);
|
||||||
|
- name = Frameworks;
|
||||||
|
+ path = src;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
- F6B0846C147241640031D8A1 /* include */ = {
|
||||||
|
+ 6C43CC041534F77800162364 /* x86 */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
- F6B08473147252410031D8A1 /* ffi_arm.h */,
|
||||||
|
- F6B08474147252410031D8A1 /* ffi_i386.h */,
|
||||||
|
- F6B08475147252410031D8A1 /* ffi.h */,
|
||||||
|
- F6B08476147252410031D8A1 /* fficonfig_arm.h */,
|
||||||
|
- F6B08477147252410031D8A1 /* fficonfig_i386.h */,
|
||||||
|
- F6B08478147252410031D8A1 /* fficonfig.h */,
|
||||||
|
- F6B08479147252410031D8A1 /* ffitarget_arm.h */,
|
||||||
|
- F6B0847A147252410031D8A1 /* ffitarget_i386.h */,
|
||||||
|
- F6B0847B147252410031D8A1 /* ffitarget.h */,
|
||||||
|
+ 6C43CC051534F77800162364 /* darwin.S */,
|
||||||
|
+ 6C43CC061534F77800162364 /* darwin64.S */,
|
||||||
|
+ 6C43CC071534F77800162364 /* ffi.c */,
|
||||||
|
+ 6C43CC081534F77800162364 /* ffi64.c */,
|
||||||
|
+ );
|
||||||
|
+ path = x86;
|
||||||
|
+ sourceTree = "<group>";
|
||||||
|
+ };
|
||||||
|
+ 6C43CC3D1534F7C400162364 /* src */ = {
|
||||||
|
+ isa = PBXGroup;
|
||||||
|
+ children = (
|
||||||
|
+ 6C43CC281534F7BE00162364 /* closures.c */,
|
||||||
|
+ 6C43CC291534F7BE00162364 /* debug.c */,
|
||||||
|
+ 6C43CC2A1534F7BE00162364 /* dlmalloc.c */,
|
||||||
|
+ 6C43CC2B1534F7BE00162364 /* java_raw_api.c */,
|
||||||
|
+ 6C43CC2C1534F7BE00162364 /* prep_cif.c */,
|
||||||
|
+ 6C43CC2D1534F7BE00162364 /* raw_api.c */,
|
||||||
|
+ 6C43CC2E1534F7BE00162364 /* types.c */,
|
||||||
|
+ );
|
||||||
|
+ name = src;
|
||||||
|
+ path = ios;
|
||||||
|
+ sourceTree = "<group>";
|
||||||
|
+ };
|
||||||
|
+ 6C43CC8C1535032600162364 /* include */ = {
|
||||||
|
+ isa = PBXGroup;
|
||||||
|
+ children = (
|
||||||
|
+ 6C43CC8D1535032600162364 /* ffi.h */,
|
||||||
|
+ 6C43CC8E1535032600162364 /* ffi_common.h */,
|
||||||
|
+ 6C43CC8F1535032600162364 /* ffi_i386.h */,
|
||||||
|
+ 6C43CC901535032600162364 /* ffi_x86_64.h */,
|
||||||
|
+ 6C43CC911535032600162364 /* fficonfig.h */,
|
||||||
|
+ 6C43CC921535032600162364 /* fficonfig_i386.h */,
|
||||||
|
+ 6C43CC931535032600162364 /* fficonfig_x86_64.h */,
|
||||||
|
+ 6C43CC941535032600162364 /* ffitarget.h */,
|
||||||
|
+ 6C43CC951535032600162364 /* ffitarget_i386.h */,
|
||||||
|
+ 6C43CC961535032600162364 /* ffitarget_x86_64.h */,
|
||||||
|
+ );
|
||||||
|
+ path = include;
|
||||||
|
+ sourceTree = "<group>";
|
||||||
|
+ };
|
||||||
|
+ 6C43CCA11535039600162364 /* include */ = {
|
||||||
|
+ isa = PBXGroup;
|
||||||
|
+ children = (
|
||||||
|
+ 6C43CCA21535039600162364 /* ffi.h */,
|
||||||
|
+ 6C43CCA31535039600162364 /* ffi_armv7.h */,
|
||||||
|
+ 6C43CCA41535039600162364 /* ffi_common.h */,
|
||||||
|
+ 6C43CCA51535039600162364 /* ffi_i386.h */,
|
||||||
|
+ 6C43CCA61535039600162364 /* fficonfig.h */,
|
||||||
|
+ 6C43CCA71535039600162364 /* fficonfig_armv7.h */,
|
||||||
|
+ 6C43CCA81535039600162364 /* fficonfig_i386.h */,
|
||||||
|
+ 6C43CCA91535039600162364 /* ffitarget.h */,
|
||||||
|
+ 6C43CCAA1535039600162364 /* ffitarget_arm.h */,
|
||||||
|
+ 6C43CCAB1535039600162364 /* ffitarget_armv7.h */,
|
||||||
|
+ 6C43CCAC1535039600162364 /* ffitarget_i386.h */,
|
||||||
|
+ );
|
||||||
|
+ path = include;
|
||||||
|
+ sourceTree = "<group>";
|
||||||
|
+ };
|
||||||
|
+ F6B0839514721EE50031D8A1 = {
|
||||||
|
+ isa = PBXGroup;
|
||||||
|
+ children = (
|
||||||
|
+ 6C43CC3D1534F7C400162364 /* src */,
|
||||||
|
+ 6C43CBAF1534F76F00162364 /* iOS */,
|
||||||
|
+ 6C43CBF01534F77800162364 /* OS X */,
|
||||||
|
+ F6F980C6147386260008F121 /* Products */,
|
||||||
|
);
|
||||||
|
- name = include;
|
||||||
|
- path = ios/include;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
F6F980C6147386260008F121 /* Products */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
F6F980BA147386130008F121 /* libffi.a */,
|
||||||
|
+ 6C43CB3D1534E9D100162364 /* libffi.a */,
|
||||||
|
);
|
||||||
|
name = Products;
|
||||||
|
path = ../..;
|
||||||
|
@@ -141,20 +256,68 @@
|
||||||
|
/* End PBXGroup section */
|
||||||
|
|
||||||
|
/* Begin PBXHeadersBuildPhase section */
|
||||||
|
+ 6C43CB3B1534E9D100162364 /* Headers */ = {
|
||||||
|
+ isa = PBXHeadersBuildPhase;
|
||||||
|
+ buildActionMask = 2147483647;
|
||||||
|
+ files = (
|
||||||
|
+ 6C43CC971535032600162364 /* ffi.h in Headers */,
|
||||||
|
+ 6C43CC981535032600162364 /* ffi_common.h in Headers */,
|
||||||
|
+ 6C43CC991535032600162364 /* ffi_i386.h in Headers */,
|
||||||
|
+ 6C43CC9A1535032600162364 /* ffi_x86_64.h in Headers */,
|
||||||
|
+ 6C43CC9E1535032600162364 /* ffitarget.h in Headers */,
|
||||||
|
+ 6C43CC9F1535032600162364 /* ffitarget_i386.h in Headers */,
|
||||||
|
+ 6C43CCA01535032600162364 /* ffitarget_x86_64.h in Headers */,
|
||||||
|
+ 6C43CC9B1535032600162364 /* fficonfig.h in Headers */,
|
||||||
|
+ 6C43CC9C1535032600162364 /* fficonfig_i386.h in Headers */,
|
||||||
|
+ 6C43CC9D1535032600162364 /* fficonfig_x86_64.h in Headers */,
|
||||||
|
+ );
|
||||||
|
+ runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
+ };
|
||||||
|
F6F980B8147386130008F121 /* Headers */ = {
|
||||||
|
isa = PBXHeadersBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
+ 6C43CCAD1535039600162364 /* ffi.h in Headers */,
|
||||||
|
+ 6C43CCAE1535039600162364 /* ffi_armv7.h in Headers */,
|
||||||
|
+ 6C43CCAF1535039600162364 /* ffi_common.h in Headers */,
|
||||||
|
+ 6C43CCB01535039600162364 /* ffi_i386.h in Headers */,
|
||||||
|
+ 6C43CCB41535039600162364 /* ffitarget.h in Headers */,
|
||||||
|
+ 6C43CCB51535039600162364 /* ffitarget_arm.h in Headers */,
|
||||||
|
+ 6C43CCB61535039600162364 /* ffitarget_armv7.h in Headers */,
|
||||||
|
+ 6C43CCB71535039600162364 /* ffitarget_i386.h in Headers */,
|
||||||
|
+ 6C43CCB11535039600162364 /* fficonfig.h in Headers */,
|
||||||
|
+ 6C43CCB21535039600162364 /* fficonfig_armv7.h in Headers */,
|
||||||
|
+ 6C43CCB31535039600162364 /* fficonfig_i386.h in Headers */,
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
};
|
||||||
|
/* End PBXHeadersBuildPhase section */
|
||||||
|
|
||||||
|
/* Begin PBXNativeTarget section */
|
||||||
|
- F6F980B9147386130008F121 /* ffi */ = {
|
||||||
|
+ 6C43CB3C1534E9D100162364 /* libffi OS X */ = {
|
||||||
|
+ isa = PBXNativeTarget;
|
||||||
|
+ buildConfigurationList = 6C43CB4A1534E9D100162364 /* Build configuration list for PBXNativeTarget "libffi OS X" */;
|
||||||
|
+ buildPhases = (
|
||||||
|
+ 6C43CC401534FF3B00162364 /* Generate Source and Headers */,
|
||||||
|
+ 6C43CB391534E9D100162364 /* Sources */,
|
||||||
|
+ 6C43CB3A1534E9D100162364 /* Frameworks */,
|
||||||
|
+ 6C43CB3B1534E9D100162364 /* Headers */,
|
||||||
|
+ );
|
||||||
|
+ buildRules = (
|
||||||
|
+ );
|
||||||
|
+ dependencies = (
|
||||||
|
+ );
|
||||||
|
+ name = "libffi OS X";
|
||||||
|
+ productName = "ffi OS X";
|
||||||
|
+ productReference = 6C43CB3D1534E9D100162364 /* libffi.a */;
|
||||||
|
+ productType = "com.apple.product-type.library.static";
|
||||||
|
+ };
|
||||||
|
+ F6F980B9147386130008F121 /* libffi iOS */ = {
|
||||||
|
isa = PBXNativeTarget;
|
||||||
|
- buildConfigurationList = F6F980C4147386130008F121 /* Build configuration list for PBXNativeTarget "ffi" */;
|
||||||
|
+ buildConfigurationList = F6F980C4147386130008F121 /* Build configuration list for PBXNativeTarget "libffi iOS" */;
|
||||||
|
buildPhases = (
|
||||||
|
+ 6C43CC3E1534F8E200162364 /* Generate Trampoline */,
|
||||||
|
+ 6C43CC3F1534FF1B00162364 /* Generate Source and Headers */,
|
||||||
|
F6F980B6147386130008F121 /* Sources */,
|
||||||
|
F6F980B7147386130008F121 /* Frameworks */,
|
||||||
|
F6F980B8147386130008F121 /* Headers */,
|
||||||
|
@@ -163,7 +326,7 @@
|
||||||
|
);
|
||||||
|
dependencies = (
|
||||||
|
);
|
||||||
|
- name = ffi;
|
||||||
|
+ name = "libffi iOS";
|
||||||
|
productName = ffi;
|
||||||
|
productReference = F6F980BA147386130008F121 /* libffi.a */;
|
||||||
|
productType = "com.apple.product-type.library.static";
|
||||||
|
@@ -174,7 +337,7 @@
|
||||||
|
F6B0839714721EE50031D8A1 /* Project object */ = {
|
||||||
|
isa = PBXProject;
|
||||||
|
attributes = {
|
||||||
|
- LastUpgradeCheck = 0420;
|
||||||
|
+ LastUpgradeCheck = 0430;
|
||||||
|
};
|
||||||
|
buildConfigurationList = F6B0839A14721EE50031D8A1 /* Build configuration list for PBXProject "libffi" */;
|
||||||
|
compatibilityVersion = "Xcode 3.2";
|
||||||
|
@@ -188,34 +351,139 @@
|
||||||
|
projectDirPath = "";
|
||||||
|
projectRoot = "";
|
||||||
|
targets = (
|
||||||
|
- F6F980B9147386130008F121 /* ffi */,
|
||||||
|
+ F6F980B9147386130008F121 /* libffi iOS */,
|
||||||
|
+ 6C43CB3C1534E9D100162364 /* libffi OS X */,
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/* End PBXProject section */
|
||||||
|
|
||||||
|
+/* Begin PBXShellScriptBuildPhase section */
|
||||||
|
+ 6C43CC3E1534F8E200162364 /* Generate Trampoline */ = {
|
||||||
|
+ isa = PBXShellScriptBuildPhase;
|
||||||
|
+ buildActionMask = 2147483647;
|
||||||
|
+ files = (
|
||||||
|
+ );
|
||||||
|
+ inputPaths = (
|
||||||
|
+ );
|
||||||
|
+ name = "Generate Trampoline";
|
||||||
|
+ outputPaths = (
|
||||||
|
+ );
|
||||||
|
+ runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
+ shellPath = /usr/bin/python;
|
||||||
|
+ shellScript = "import subprocess\nimport re\nimport os\nimport errno\nimport sys\n\ndef main():\n with open('src/arm/trampoline.S', 'w') as tramp_out:\n p = subprocess.Popen(['bash', 'src/arm/gentramp.sh'], stdout=tramp_out)\n p.wait()\n\nif __name__ == '__main__':\n main()";
|
||||||
|
+ };
|
||||||
|
+ 6C43CC3F1534FF1B00162364 /* Generate Source and Headers */ = {
|
||||||
|
+ isa = PBXShellScriptBuildPhase;
|
||||||
|
+ buildActionMask = 2147483647;
|
||||||
|
+ files = (
|
||||||
|
+ );
|
||||||
|
+ inputPaths = (
|
||||||
|
+ );
|
||||||
|
+ name = "Generate Source and Headers";
|
||||||
|
+ outputPaths = (
|
||||||
|
+ );
|
||||||
|
+ runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
+ shellPath = /bin/sh;
|
||||||
|
+ shellScript = "/usr/bin/python generate-ios-source-and-headers.py";
|
||||||
|
+ };
|
||||||
|
+ 6C43CC401534FF3B00162364 /* Generate Source and Headers */ = {
|
||||||
|
+ isa = PBXShellScriptBuildPhase;
|
||||||
|
+ buildActionMask = 2147483647;
|
||||||
|
+ files = (
|
||||||
|
+ );
|
||||||
|
+ inputPaths = (
|
||||||
|
+ );
|
||||||
|
+ name = "Generate Source and Headers";
|
||||||
|
+ outputPaths = (
|
||||||
|
+ );
|
||||||
|
+ runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
+ shellPath = /bin/sh;
|
||||||
|
+ shellScript = "/usr/bin/python generate-osx-source-and-headers.py";
|
||||||
|
+ };
|
||||||
|
+/* End PBXShellScriptBuildPhase section */
|
||||||
|
+
|
||||||
|
/* Begin PBXSourcesBuildPhase section */
|
||||||
|
+ 6C43CB391534E9D100162364 /* Sources */ = {
|
||||||
|
+ isa = PBXSourcesBuildPhase;
|
||||||
|
+ buildActionMask = 2147483647;
|
||||||
|
+ files = (
|
||||||
|
+ 6C43CC1F1534F77800162364 /* darwin.S in Sources */,
|
||||||
|
+ 6C43CC201534F77800162364 /* darwin64.S in Sources */,
|
||||||
|
+ 6C43CC211534F77800162364 /* ffi.c in Sources */,
|
||||||
|
+ 6C43CC221534F77800162364 /* ffi64.c in Sources */,
|
||||||
|
+ 6C43CC301534F7BE00162364 /* closures.c in Sources */,
|
||||||
|
+ 6C43CC321534F7BE00162364 /* debug.c in Sources */,
|
||||||
|
+ 6C43CC341534F7BE00162364 /* dlmalloc.c in Sources */,
|
||||||
|
+ 6C43CC361534F7BE00162364 /* java_raw_api.c in Sources */,
|
||||||
|
+ 6C43CC381534F7BE00162364 /* prep_cif.c in Sources */,
|
||||||
|
+ 6C43CC3A1534F7BE00162364 /* raw_api.c in Sources */,
|
||||||
|
+ 6C43CC3C1534F7BE00162364 /* types.c in Sources */,
|
||||||
|
+ );
|
||||||
|
+ runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
+ };
|
||||||
|
F6F980B6147386130008F121 /* Sources */ = {
|
||||||
|
isa = PBXSourcesBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
- F66B6AF9152FA32400B29B2A /* ffi.c in Sources */,
|
||||||
|
- F66B6AFA152FA32400B29B2A /* sysv.S in Sources */,
|
||||||
|
- F66B6AFB152FA32400B29B2A /* trampoline.S in Sources */,
|
||||||
|
- F66B6AFC152FA32400B29B2A /* closures.c in Sources */,
|
||||||
|
- F66B6AFD152FA32400B29B2A /* debug.c in Sources */,
|
||||||
|
- F66B6AFE152FA32400B29B2A /* dlmalloc.c in Sources */,
|
||||||
|
- F66B6AFF152FA32400B29B2A /* java_raw_api.c in Sources */,
|
||||||
|
- F66B6B00152FA32400B29B2A /* prep_cif.c in Sources */,
|
||||||
|
- F66B6B01152FA32400B29B2A /* raw_api.c in Sources */,
|
||||||
|
- F66B6B02152FA32400B29B2A /* types.c in Sources */,
|
||||||
|
- F66B6B03152FA32400B29B2A /* darwin.S in Sources */,
|
||||||
|
- F66B6B05152FA32400B29B2A /* ffi.c in Sources */,
|
||||||
|
+ 6C43CBDC1534F76F00162364 /* ffi.c in Sources */,
|
||||||
|
+ 6C43CBDD1534F76F00162364 /* sysv.S in Sources */,
|
||||||
|
+ 6C43CBDE1534F76F00162364 /* trampoline.S in Sources */,
|
||||||
|
+ 6C43CBE61534F76F00162364 /* darwin.S in Sources */,
|
||||||
|
+ 6C43CBE81534F76F00162364 /* ffi.c in Sources */,
|
||||||
|
+ 6C43CBE91534F76F00162364 /* ffi64.c in Sources */,
|
||||||
|
+ 6C43CC2F1534F7BE00162364 /* closures.c in Sources */,
|
||||||
|
+ 6C43CC311534F7BE00162364 /* debug.c in Sources */,
|
||||||
|
+ 6C43CC331534F7BE00162364 /* dlmalloc.c in Sources */,
|
||||||
|
+ 6C43CC351534F7BE00162364 /* java_raw_api.c in Sources */,
|
||||||
|
+ 6C43CC371534F7BE00162364 /* prep_cif.c in Sources */,
|
||||||
|
+ 6C43CC391534F7BE00162364 /* raw_api.c in Sources */,
|
||||||
|
+ 6C43CC3B1534F7BE00162364 /* types.c in Sources */,
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
};
|
||||||
|
/* End PBXSourcesBuildPhase section */
|
||||||
|
|
||||||
|
/* Begin XCBuildConfiguration section */
|
||||||
|
+ 6C43CB4B1534E9D100162364 /* Debug */ = {
|
||||||
|
+ isa = XCBuildConfiguration;
|
||||||
|
+ buildSettings = {
|
||||||
|
+ ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
|
||||||
|
+ DSTROOT = /tmp/ffi.dst;
|
||||||
|
+ FRAMEWORK_SEARCH_PATHS = (
|
||||||
|
+ "$(inherited)",
|
||||||
|
+ "\"$(SYSTEM_APPS_DIR)/Xcode.app/Contents/Developer/Library/Frameworks\"",
|
||||||
|
+ );
|
||||||
|
+ GCC_ENABLE_OBJC_EXCEPTIONS = YES;
|
||||||
|
+ GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
|
||||||
|
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||||
|
+ GCC_WARN_UNINITIALIZED_AUTOS = YES;
|
||||||
|
+ MACOSX_DEPLOYMENT_TARGET = 10.6;
|
||||||
|
+ ONLY_ACTIVE_ARCH = YES;
|
||||||
|
+ PRODUCT_NAME = ffi;
|
||||||
|
+ SDKROOT = macosx;
|
||||||
|
+ };
|
||||||
|
+ name = Debug;
|
||||||
|
+ };
|
||||||
|
+ 6C43CB4C1534E9D100162364 /* Release */ = {
|
||||||
|
+ isa = XCBuildConfiguration;
|
||||||
|
+ buildSettings = {
|
||||||
|
+ ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
|
||||||
|
+ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||||
|
+ DSTROOT = /tmp/ffi.dst;
|
||||||
|
+ FRAMEWORK_SEARCH_PATHS = (
|
||||||
|
+ "$(inherited)",
|
||||||
|
+ "\"$(SYSTEM_APPS_DIR)/Xcode.app/Contents/Developer/Library/Frameworks\"",
|
||||||
|
+ );
|
||||||
|
+ GCC_ENABLE_OBJC_EXCEPTIONS = YES;
|
||||||
|
+ GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
|
||||||
|
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||||
|
+ GCC_WARN_UNINITIALIZED_AUTOS = YES;
|
||||||
|
+ MACOSX_DEPLOYMENT_TARGET = 10.6;
|
||||||
|
+ PRODUCT_NAME = ffi;
|
||||||
|
+ SDKROOT = macosx;
|
||||||
|
+ };
|
||||||
|
+ name = Release;
|
||||||
|
+ };
|
||||||
|
F6B083AB14721EE50031D8A1 /* Debug */ = {
|
||||||
|
isa = XCBuildConfiguration;
|
||||||
|
buildSettings = {
|
||||||
|
@@ -230,8 +498,9 @@
|
||||||
|
"$(inherited)",
|
||||||
|
);
|
||||||
|
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
|
||||||
|
- GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES;
|
||||||
|
+ GCC_WARN_ABOUT_MISSING_PROTOTYPES = NO;
|
||||||
|
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||||
|
+ GCC_WARN_UNUSED_VALUE = NO;
|
||||||
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
|
HEADER_SEARCH_PATHS = ios/include;
|
||||||
|
SDKROOT = iphoneos;
|
||||||
|
@@ -246,8 +515,9 @@
|
||||||
|
COPY_PHASE_STRIP = YES;
|
||||||
|
GCC_C_LANGUAGE_STANDARD = gnu99;
|
||||||
|
GCC_PREPROCESSOR_DEFINITIONS = "";
|
||||||
|
- GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES;
|
||||||
|
+ GCC_WARN_ABOUT_MISSING_PROTOTYPES = NO;
|
||||||
|
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||||
|
+ GCC_WARN_UNUSED_VALUE = NO;
|
||||||
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
|
HEADER_SEARCH_PATHS = ios/include;
|
||||||
|
SDKROOT = iphoneos;
|
||||||
|
@@ -258,10 +528,16 @@
|
||||||
|
F6F980C2147386130008F121 /* Debug */ = {
|
||||||
|
isa = XCBuildConfiguration;
|
||||||
|
buildSettings = {
|
||||||
|
+ ARCHS = (
|
||||||
|
+ armv6,
|
||||||
|
+ armv7,
|
||||||
|
+ );
|
||||||
|
DSTROOT = /tmp/ffi.dst;
|
||||||
|
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
||||||
|
+ GCC_THUMB_SUPPORT = NO;
|
||||||
|
+ IPHONEOS_DEPLOYMENT_TARGET = 4.0;
|
||||||
|
OTHER_LDFLAGS = "-ObjC";
|
||||||
|
- PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
|
+ PRODUCT_NAME = ffi;
|
||||||
|
SKIP_INSTALL = YES;
|
||||||
|
};
|
||||||
|
name = Debug;
|
||||||
|
@@ -269,10 +545,16 @@
|
||||||
|
F6F980C3147386130008F121 /* Release */ = {
|
||||||
|
isa = XCBuildConfiguration;
|
||||||
|
buildSettings = {
|
||||||
|
+ ARCHS = (
|
||||||
|
+ armv6,
|
||||||
|
+ armv7,
|
||||||
|
+ );
|
||||||
|
DSTROOT = /tmp/ffi.dst;
|
||||||
|
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
||||||
|
+ GCC_THUMB_SUPPORT = NO;
|
||||||
|
+ IPHONEOS_DEPLOYMENT_TARGET = 4.0;
|
||||||
|
OTHER_LDFLAGS = "-ObjC";
|
||||||
|
- PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
|
+ PRODUCT_NAME = ffi;
|
||||||
|
SKIP_INSTALL = YES;
|
||||||
|
};
|
||||||
|
name = Release;
|
||||||
|
@@ -280,6 +562,15 @@
|
||||||
|
/* End XCBuildConfiguration section */
|
||||||
|
|
||||||
|
/* Begin XCConfigurationList section */
|
||||||
|
+ 6C43CB4A1534E9D100162364 /* Build configuration list for PBXNativeTarget "libffi OS X" */ = {
|
||||||
|
+ isa = XCConfigurationList;
|
||||||
|
+ buildConfigurations = (
|
||||||
|
+ 6C43CB4B1534E9D100162364 /* Debug */,
|
||||||
|
+ 6C43CB4C1534E9D100162364 /* Release */,
|
||||||
|
+ );
|
||||||
|
+ defaultConfigurationIsVisible = 0;
|
||||||
|
+ defaultConfigurationName = Release;
|
||||||
|
+ };
|
||||||
|
F6B0839A14721EE50031D8A1 /* Build configuration list for PBXProject "libffi" */ = {
|
||||||
|
isa = XCConfigurationList;
|
||||||
|
buildConfigurations = (
|
||||||
|
@@ -289,7 +580,7 @@
|
||||||
|
defaultConfigurationIsVisible = 0;
|
||||||
|
defaultConfigurationName = Release;
|
||||||
|
};
|
||||||
|
- F6F980C4147386130008F121 /* Build configuration list for PBXNativeTarget "ffi" */ = {
|
||||||
|
+ F6F980C4147386130008F121 /* Build configuration list for PBXNativeTarget "libffi iOS" */ = {
|
||||||
|
isa = XCConfigurationList;
|
||||||
|
buildConfigurations = (
|
||||||
|
F6F980C2147386130008F121 /* Debug */,
|
||||||
|
Index: libffi/src/arm/trampoline.S
|
||||||
|
===================================================================
|
||||||
|
--- libffi.orig/src/arm/trampoline.S
|
||||||
|
+++ libffi/src/arm/trampoline.S
|
||||||
|
@@ -1,5 +1,5 @@
|
||||||
|
# GENERATED CODE - DO NOT EDIT
|
||||||
|
-# This file was generated by ./gentramp.sh
|
||||||
|
+# This file was generated by src/arm/gentramp.sh
|
||||||
|
|
||||||
|
# Copyright (c) 2010, Plausible Labs Cooperative, Inc.
|
||||||
|
#
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
# GENERATED CODE - DO NOT EDIT
|
# GENERATED CODE - DO NOT EDIT
|
||||||
# This file was generated by ./gentramp.sh
|
# This file was generated by src/arm/gentramp.sh
|
||||||
|
|
||||||
# Copyright (c) 2010, Plausible Labs Cooperative, Inc.
|
# Copyright (c) 2010, Plausible Labs Cooperative, Inc.
|
||||||
#
|
#
|
||||||
|
|||||||
Reference in New Issue
Block a user