Re: [yocto] [meta-darwin][PATCH] osx-runtime: OSX Yosemite v10.10
On 08/12/15 16:01, Bystricky, Juro wrote: > yes, I ran into the same libgcc problem, I plan on tackling it eventually. > Likely some paths are not set correctly. > For what is worth, try to build the SDK against the poky "dizzy" branch. > I was able to build Darwin SDK with it. You may need to patch some other > files though. > Anyway, there is new repo > https://git.yoctoproject.org/cgit/cgit.cgi/meta-darwin-contrib/ > where I will place some Darwin patches, most notably those I used to build > the "dizzy" SDK (later next week). I can't seem to get even this working (i.e. generating an SDK for MacOSX using dizzy). $ cat conf/bblayers.conf # LAYER_CONF_VERSION is increased each time build/conf/bblayers.conf # changes incompatibly LCONF_VERSION = "6" BBPATH = "${TOPDIR}" BBFILES ?= "" BBLAYERS ?= " \ /z/darwinSDK/layers/meta-poky/meta \ /z/darwinSDK/layers/meta-poky/meta-yocto \ /z/darwinSDK/layers/meta-poky/meta-yocto-bsp \ /z/darwinSDK/layers/meta-darwin-contrib \ " BBLAYERS_NON_REMOVABLE ?= " \ /z/darwinSDK/layers/meta-poky/meta \ /z/darwinSDK/layers/meta-poky/meta-yocto \ $ cat conf/local.conf MACHINE ??= "qemux86" DL_DIR ?= "/home/trevor/devel/Downloads" DISTRO ?= "poky" PACKAGE_CLASSES ?= "package_rpm" EXTRA_IMAGE_FEATURES = "debug-tweaks" USER_CLASSES ?= "buildstats image-mklibs image-prelink" PATCHRESOLVE = "noop" BB_DISKMON_DIRS = "\ STOPTASKS,${TMPDIR},1G,100K \ STOPTASKS,${DL_DIR},1G,100K \ STOPTASKS,${SSTATE_DIR},1G,100K \ ABORT,${TMPDIR},100M,1K \ ABORT,${DL_DIR},100M,1K \ ABORT,${SSTATE_DIR},100M,1K" PACKAGECONFIG_append_pn-qemu-native = " sdl" PACKAGECONFIG_append_pn-nativesdk-qemu = " sdl" ASSUME_PROVIDED += "libsdl-native" CONF_VERSION = "1" SDKMACHINE = "i386-darwin" build config: $ bitbake core-image-minimal -c populate_sdk Build Configuration: BB_VERSION= "1.24.0" BUILD_SYS = "x86_64-linux" NATIVELSBSTRING = "openSUSE-project-13.2" TARGET_SYS= "i586-poky-linux" MACHINE = "qemux86" DISTRO= "poky" DISTRO_VERSION= "1.7.3" TUNE_FEATURES = "m32 i586" TARGET_FPU= "" meta meta-yocto meta-yocto-bsp= "dizzy:b38454c2e3a7a58f5397bb16d59e2b0aa71c4a94" meta-darwin-contrib = "juro/dizzy/osx-runtime:396962db08ed77c5ee83cd5dd2c301402ec826c1" meta-darwin-contrib doesn't have a "dizzy" branch, but I tried all of the "juro/dizzy/*" branches individually without success. Is there anything obvious I'm doing wrong? -- ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto
Re: [yocto] [meta-darwin][PATCH] osx-runtime: OSX Yosemite v10.10
On 08/11/15 17:48, Juro Bystricky wrote: Set of patches to allow building against OSX Yosemite v10.10 runtime. Excellent! My build failed, then I noticed your patches. Even with this patch applied, however, my build fails with native-libffi in do_patch. It appears the existing darwinfix.patch no longer applies. I updated the patch so libffi can now do_patch successfully, but I don't know if it builds since gcc-crosssdk-i386 fails in do_compile. | /z/layerindex/firefly/tmp/work/i386-linux/gcc-crosssdk-i386/4.9.3-r0/gcc-4.9.3/build.x86_64-linux.i386-pokysdk-darwin/./gcc/xgcc -B/z/layerindex/firefly/tmp/work/i386-linux/gcc-crosssdk-i386/4.9.3-r0/gcc-4.9.3/build.x86_64-linux.i386-pokysdk-darwin/./gcc/ -B/z/layerindex/firefly/tmp/sysroots/x86_64-linux/usr/i386-pokysdk-darwin/bin/ -B/z/layerindex/firefly/tmp/sysroots/x86_64-linux/usr/i386-pokysdk-darwin/lib/ -isystem /z/layerindex/firefly/tmp/sysroots/x86_64-linux/usr/i386-pokysdk-darwin/include -isystem /z/layerindex/firefly/tmp/sysroots/x86_64-linux/usr/i386-pokysdk-darwin/sys-include --sysroot=/z/layerindex/firefly/tmp/sysroots/i386-nativesdk-darwin-pokysdk-darwin -O2 -g -Os -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -pipe -fno-common -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector -dynamiclib -nodefaultlibs -install_name /z/layerindex/firefly/tmp/sysroots/x86_64-linux/usr/i386-pokysdk-darwin/lib/libgcc_s.1.dylib -single_module -o ./libgcc_s.dylib -Wl,-exported_symbols_list,libgcc.map -compatibility_version 1 -current_version 1.0 -g -Os -B./ _muldi3_s.o _negdi2_s.o _lshrdi3_s.o _ashldi3_s.o _ashrdi3_s.o _cmpdi2_s.o _ucmpdi2_s.o _clear_cache_s.o _trampoline_s.o __main_s.o _absvsi2_s.o _absvdi2_s.o _addvsi3_s.o _addvdi3_s.o _subvsi3_s.o _subvdi3_s.o _mulvsi3_s.o _mulvdi3_s.o _negvsi2_s.o _negvdi2_s.o _ctors_s.o _ffssi2_s.o _ffsdi2_s.o _clz_s.o _clzsi2_s.o _clzdi2_s.o _ctzsi2_s.o _ctzdi2_s.o _popcount_tab_s.o _popcountsi2_s.o _popcountdi2_s.o _paritysi2_s.o _paritydi2_s.o _powisf2_s.o _powidf2_s.o _powixf2_s.o _powitf2_s.o _mulsc3_s.o _muldc3_s.o _mulxc3_s.o _multc3_s.o _divsc3_s.o _divdc3_s.o _divxc3_s.o _divtc3_s.o _bswapsi2_s.o _bswapdi2_s.o _clrsbsi2_s.o _clrsbdi2_s.o _fixunssfsi_s.o _fixunsdfsi_s.o _fixunsxfsi_s.o _fixsfdi_s.o _fixdfdi_s.o _fixxfdi_s.o _fixunssfdi_s.o _fixunsdfdi_s.o _fixunsxfdi_s.o _floatdisf_s.o _floatdidf_s.o _floatdixf_s.o _floatundisf_s.o _floatundidf_s.o _floatundixf_s.o _fixsfti_s.o _fixdfti_s.o _fixxfti_s.o _fixtfti_s.o _fixunssfti_s.o _fixunsdfti_s.o _fixunsxfti_s.o _fixunstfti_s.o _floattisf_s.o _floattidf_s.o _floattixf_s.o _floattitf_s.o _floatuntisf_s.o _floatuntidf_s.o _floatuntixf_s.o _floatuntitf_s.o _divdi3_s.o _moddi3_s.o _udivdi3_s.o _umoddi3_s.o _udiv_w_sdiv_s.o _udivmoddi4_s.o darwin-64_s.o cpuinfo_s.o tf-signs_s.o sfp-exceptions_s.o addtf3_s.o divtf3_s.o eqtf2_s.o getf2_s.o letf2_s.o multf3_s.o negtf2_s.o subtf3_s.o unordtf2_s.o fixtfsi_s.o fixunstfsi_s.o floatsitf_s.o floatunsitf_s.o fixtfdi_s.o fixunstfdi_s.o floatditf_s.o floatunditf_s.o extendsftf2_s.o extenddftf2_s.o extendxftf2_s.o trunctfsf2_s.o trunctfdf2_s.o trunctfxf2_s.o enable-execute-stack_s.o unwind-dw2_s.o unwind-dw2-fde-darwin_s.o unwind-sjlj_s.o unwind-c_s.o emutls_s.o libgcc.a -lc | ld: library not found for -ldylib1.o It's strange that it says library not found for -ldylib1.o because that library is in my sdk's sysroot: $ find . -name *dylib1* -print ./tmp/sysroots/i386-nativesdk-darwin-pokysdk-darwin/usr/lib/dylib1.o ./tmp/sysroots/i386-nativesdk-darwin-pokysdk-darwin/usr/lib/dylib1.10.5.o ./tmp/sysroots/i386-nativesdk-darwin-pokysdk-darwin/usr/lib/lazydylib1.o Have you had any success building? The line I'm using to invoke the build is: $ SDKMACHINE=i386-darwin bitbake core-image-minimal -c populate_sdk and the details of my build are: Build Configuration: BB_VERSION= 1.27.1 BUILD_SYS = x86_64-linux NATIVELSBSTRING = openSUSE-project-13.2 TARGET_SYS= arm-poky-linux-gnueabi MACHINE = firefly-emmc-mainline DISTRO= poky DISTRO_VERSION= 1.8+snapshot-20150812 TUNE_FEATURES = arm armv7a vfp neon cortexa15 TARGET_FPU= vfp-neon meta = master:4c3329630e5bf6f2229c6a85052ce71f7cc71703 meta-rockchip = contrib/twoerner/emmc-first-draft:be45e46f73c5ea7118e4be9511e1ee7652e1ebcf meta-yocto= master:eefd3580e451a09e7f4696f306d955a4caa1cf88 meta-darwin = contrib/twoerner/fixes:6234b82444b1ebf9bfb0ac8deb5cb582c89cb41d my layers are: openembedded-core/meta meta-rockchip meta-yocto/meta-yocto meta-darwin Thoughts? -- ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto
Re: [yocto] [meta-darwin][PATCH] osx-runtime: OSX Yosemite v10.10
yes, I ran into the same libgcc problem, I plan on tackling it eventually. Likely some paths are not set correctly. For what is worth, try to build the SDK against the poky dizzy branch. I was able to build Darwin SDK with it. You may need to patch some other files though. Anyway, there is new repo https://git.yoctoproject.org/cgit/cgit.cgi/meta-darwin-contrib/ where I will place some Darwin patches, most notably those I used to build the dizzy SDK (later next week). -Original Message- From: Trevor Woerner [mailto:twoer...@gmail.com] Sent: Wednesday, August 12, 2015 11:22 AM To: Bystricky, Juro; yocto@yoctoproject.org Cc: richard.pur...@linuxfoundation.org Subject: Re: [meta-darwin][PATCH] osx-runtime: OSX Yosemite v10.10 On 08/11/15 17:48, Juro Bystricky wrote: Set of patches to allow building against OSX Yosemite v10.10 runtime. Excellent! My build failed, then I noticed your patches. Even with this patch applied, however, my build fails with native-libffi in do_patch. It appears the existing darwinfix.patch no longer applies. I updated the patch so libffi can now do_patch successfully, but I don't know if it builds since gcc-crosssdk-i386 fails in do_compile. | /z/layerindex/firefly/tmp/work/i386-linux/gcc-crosssdk-i386/4.9.3-r0/gcc- 4.9.3/build.x86_64-linux.i386-pokysdk-darwin/./gcc/xgcc -B/z/layerindex/firefly/tmp/work/i386-linux/gcc-crosssdk-i386/4.9.3-r0/gcc- 4.9.3/build.x86_64-linux.i386-pokysdk-darwin/./gcc/ -B/z/layerindex/firefly/tmp/sysroots/x86_64-linux/usr/i386-pokysdk- darwin/bin/ -B/z/layerindex/firefly/tmp/sysroots/x86_64-linux/usr/i386-pokysdk- darwin/lib/ -isystem /z/layerindex/firefly/tmp/sysroots/x86_64-linux/usr/i386-pokysdk- darwin/include -isystem /z/layerindex/firefly/tmp/sysroots/x86_64-linux/usr/i386-pokysdk- darwin/sys-include --sysroot=/z/layerindex/firefly/tmp/sysroots/i386-nativesdk-darwin- pokysdk-darwin -O2 -g -Os -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -W -Wall -Wno- narrowing -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -pipe -fno-common -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector - dynamiclib -nodefaultlibs -install_name /z/layerindex/firefly/tmp/sysroots/x86_64-linux/usr/i386-pokysdk- darwin/lib/libgcc_s.1.dylib -single_module -o ./libgcc_s.dylib -Wl,-exported_symbols_list,libgcc.map -compatibility_version 1 -current_version 1.0 -g -Os -B./ _muldi3_s.o _negdi2_s.o _lshrdi3_s.o _ashldi3_s.o _ashrdi3_s.o _cmpdi2_s.o _ucmpdi2_s.o _clear_cache_s.o _trampoline_s.o __main_s.o _absvsi2_s.o _absvdi2_s.o _addvsi3_s.o _addvdi3_s.o _subvsi3_s.o _subvdi3_s.o _mulvsi3_s.o _mulvdi3_s.o _negvsi2_s.o _negvdi2_s.o _ctors_s.o _ffssi2_s.o _ffsdi2_s.o _clz_s.o _clzsi2_s.o _clzdi2_s.o _ctzsi2_s.o _ctzdi2_s.o _popcount_tab_s.o _popcountsi2_s.o _popcountdi2_s.o _paritysi2_s.o _paritydi2_s.o _powisf2_s.o _powidf2_s.o _powixf2_s.o _powitf2_s.o _mulsc3_s.o _muldc3_s.o _mulxc3_s.o _multc3_s.o _divsc3_s.o _divdc3_s.o _divxc3_s.o _divtc3_s.o _bswapsi2_s.o _bswapdi2_s.o _clrsbsi2_s.o _clrsbdi2_s.o _fixunssfsi_s.o _fixunsdfsi_s.o _fixunsxfsi_s.o _fixsfdi_s.o _fixdfdi_s.o _fixxfdi_s.o _fixunssfdi_s.o _fixunsdfdi_s.o _fixunsxfdi_s.o _floatdisf_s.o _floatdidf_s.o _floatdixf_s.o _floatundisf_s.o _floatundidf_s.o _floatundixf_s.o _fixsfti_s.o _fixdfti_s.o _fixxfti_s.o _fixtfti_s.o _fixunssfti_s.o _fixunsdfti_s.o _fixunsxfti_s.o _fixunstfti_s.o _floattisf_s.o _floattidf_s.o _floattixf_s.o _floattitf_s.o _floatuntisf_s.o _floatuntidf_s.o _floatuntixf_s.o _floatuntitf_s.o _divdi3_s.o _moddi3_s.o _udivdi3_s.o _umoddi3_s.o _udiv_w_sdiv_s.o _udivmoddi4_s.o darwin-64_s.o cpuinfo_s.o tf-signs_s.o sfp-exceptions_s.o addtf3_s.o divtf3_s.o eqtf2_s.o getf2_s.o letf2_s.o multf3_s.o negtf2_s.o subtf3_s.o unordtf2_s.o fixtfsi_s.o fixunstfsi_s.o floatsitf_s.o floatunsitf_s.o fixtfdi_s.o fixunstfdi_s.o floatditf_s.o floatunditf_s.o extendsftf2_s.o extenddftf2_s.o extendxftf2_s.o trunctfsf2_s.o trunctfdf2_s.o trunctfxf2_s.o enable- execute-stack_s.o unwind-dw2_s.o unwind-dw2-fde-darwin_s.o unwind- sjlj_s.o unwind-c_s.o emutls_s.o libgcc.a -lc | ld: library not found for -ldylib1.o It's strange that it says library not found for -ldylib1.o because that library is in my sdk's sysroot: $ find . -name *dylib1* -print ./tmp/sysroots/i386-nativesdk-darwin-pokysdk-darwin/usr/lib/dylib1.o ./tmp/sysroots/i386-nativesdk-darwin-pokysdk-darwin/usr/lib/dylib1.10.5.o ./tmp/sysroots/i386-nativesdk-darwin-pokysdk-darwin/usr/lib/lazydylib1.o Have you had any success building? The line I'm using to invoke the build is: $ SDKMACHINE=i386-darwin bitbake core-image-minimal -c populate_sdk and the details of my build are: Build Configuration: BB_VERSION= 1.27.1 BUILD_SYS = x86_64-linux NATIVELSBSTRING = openSUSE-project-13.2 TARGET_SYS= arm-poky-linux-gnueabi MACHINE = firefly-emmc-mainline DISTRO=
[yocto] [meta-darwin][PATCH] osx-runtime: OSX Yosemite v10.10
Set of patches to allow building against OSX Yosemite v10.10 runtime. Signed-off-by: Juro Bystricky juro.bystri...@intel.com --- .../files/fix_typedef_dispatch_block_t.patch | 16 + .../files/foundation_framework_headers_clang.patch | 1065 .../osx-runtime/files/fsevents-clang.patch | 135 +++ ...vailability_with_message_for_gcc_osx10.10.patch | 128 +++ .../osx-runtime/nativesdk-osx-runtime_10.10.bb | 70 ++ 5 files changed, 1414 insertions(+) create mode 100644 recipes-devtools/osx-runtime/files/fix_typedef_dispatch_block_t.patch create mode 100644 recipes-devtools/osx-runtime/files/foundation_framework_headers_clang.patch create mode 100644 recipes-devtools/osx-runtime/files/fsevents-clang.patch create mode 100644 recipes-devtools/osx-runtime/files/remove_unsupported_attribute_availability_with_message_for_gcc_osx10.10.patch create mode 100644 recipes-devtools/osx-runtime/nativesdk-osx-runtime_10.10.bb diff --git a/recipes-devtools/osx-runtime/files/fix_typedef_dispatch_block_t.patch b/recipes-devtools/osx-runtime/files/fix_typedef_dispatch_block_t.patch new file mode 100644 index 000..6a1bace --- /dev/null +++ b/recipes-devtools/osx-runtime/files/fix_typedef_dispatch_block_t.patch @@ -0,0 +1,16 @@ +Index: OSX-sdk/usr/include/dispatch/object.h +=== +--- OSX-sdk.orig/usr/include/dispatch/object.h OSX-sdk/usr/include/dispatch/object.h +@@ -140,7 +140,11 @@ typedef union { + * Instead, the block literal must be copied to the heap with the Block_copy() + * function or by sending it a -[copy] message. + */ ++#if defined(__clang__) + typedef void (^dispatch_block_t)(void); ++#else ++typedef void* dispatch_block_t; ++#endif + + __BEGIN_DECLS + diff --git a/recipes-devtools/osx-runtime/files/foundation_framework_headers_clang.patch b/recipes-devtools/osx-runtime/files/foundation_framework_headers_clang.patch new file mode 100644 index 000..0f87c53 --- /dev/null +++ b/recipes-devtools/osx-runtime/files/foundation_framework_headers_clang.patch @@ -0,0 +1,1065 @@ +Index: OSX-sdk/System/Library/Frameworks/Foundation.framework/Versions/C/Headers/NSArray.h +=== +--- OSX-sdk.orig/System/Library/Frameworks/Foundation.framework/Versions/C/Headers/NSArray.h OSX-sdk/System/Library/Frameworks/Foundation.framework/Versions/C/Headers/NSArray.h +@@ -55,7 +55,7 @@ + - (NSArray *)objectsAtIndexes:(NSIndexSet *)indexes; + + - (id)objectAtIndexedSubscript:(NSUInteger)idx NS_AVAILABLE(10_8, 6_0); +- ++#if defined(__clang__) + - (void)enumerateObjectsUsingBlock:(void (^)(id obj, NSUInteger idx, BOOL *stop))block NS_AVAILABLE(10_6, 4_0); + - (void)enumerateObjectsWithOptions:(NSEnumerationOptions)opts usingBlock:(void (^)(id obj, NSUInteger idx, BOOL *stop))block NS_AVAILABLE(10_6, 4_0); + - (void)enumerateObjectsAtIndexes:(NSIndexSet *)s options:(NSEnumerationOptions)opts usingBlock:(void (^)(id obj, NSUInteger idx, BOOL *stop))block NS_AVAILABLE(10_6, 4_0); +@@ -67,7 +67,20 @@ + - (NSIndexSet *)indexesOfObjectsPassingTest:(BOOL (^)(id obj, NSUInteger idx, BOOL *stop))predicate NS_AVAILABLE(10_6, 4_0); + - (NSIndexSet *)indexesOfObjectsWithOptions:(NSEnumerationOptions)opts passingTest:(BOOL (^)(id obj, NSUInteger idx, BOOL *stop))predicate NS_AVAILABLE(10_6, 4_0); + - (NSIndexSet *)indexesOfObjectsAtIndexes:(NSIndexSet *)s options:(NSEnumerationOptions)opts passingTest:(BOOL (^)(id obj, NSUInteger idx, BOOL *stop))predicate NS_AVAILABLE(10_6, 4_0); ++#else ++- (void)enumerateObjectsUsingBlock:(void *(id obj, NSUInteger idx, BOOL *stop))block NS_AVAILABLE(10_6, 4_0); ++- (void)enumerateObjectsWithOptions:(NSEnumerationOptions)opts usingBlock:(void *(id obj, NSUInteger idx, BOOL *stop))block NS_AVAILABLE(10_6, 4_0); ++- (void)enumerateObjectsAtIndexes:(NSIndexSet *)s options:(NSEnumerationOptions)opts usingBlock:(void *(id obj, NSUInteger idx, BOOL *stop))block NS_AVAILABLE(10_6, 4_0); ++ ++- (NSUInteger)indexOfObjectPassingTest:(BOOL *(id obj, NSUInteger idx, BOOL *stop))predicate NS_AVAILABLE(10_6, 4_0); ++- (NSUInteger)indexOfObjectWithOptions:(NSEnumerationOptions)opts passingTest:(BOOL *(id obj, NSUInteger idx, BOOL *stop))predicate NS_AVAILABLE(10_6, 4_0); ++- (NSUInteger)indexOfObjectAtIndexes:(NSIndexSet *)s options:(NSEnumerationOptions)opts passingTest:(BOOL *(id obj, NSUInteger idx, BOOL *stop))predicate NS_AVAILABLE(10_6, 4_0); ++ ++- (NSIndexSet *)indexesOfObjectsPassingTest:(BOOL *(id obj, NSUInteger idx, BOOL *stop))predicate NS_AVAILABLE(10_6, 4_0); ++- (NSIndexSet *)indexesOfObjectsWithOptions:(NSEnumerationOptions)opts passingTest:(BOOL *(id obj, NSUInteger idx, BOOL *stop))predicate NS_AVAILABLE(10_6, 4_0); ++- (NSIndexSet *)indexesOfObjectsAtIndexes:(NSIndexSet *)s options:(NSEnumerationOptions)opts passingTest:(BOOL *(id obj, NSUInteger idx, BOOL *stop))predicate