[Vm-dev] [commit][3697] Turn ARC On for 64bit compiles,
don't make MIDI,
fix various issues with bridge and windowIndex for ARC,
fix parseArgument data type warning
Eliot Miranda
eliot.miranda at gmail.com
Fri May 6 22:16:25 UTC 2016
Hi All, but mainly for John,
> On May 6, 2016, at 2:18 PM, Nicolas Cellier <nicolas.cellier.aka.nice at gmail.com> wrote:
>
>
>
> 2016-05-06 22:43 GMT+02:00 Eliot Miranda <eliot.miranda at gmail.com>:
>>
>> Hi Nicolas,
>>
>>
>>> On May 6, 2016, at 12:42 PM, Nicolas Cellier <nicolas.cellier.aka.nice at gmail.com> wrote:
>>>
>>> Strange...
>>> I've set the -fobjc-arc in build.macos32x86/common/Makefile.flags for months
>>> (along with same .m corrections as John)
>>> and it looks like working...
>>> (at least clang does not bark).
>>
>> Two questions, a) what version of clang do you have installed? b) why didn't you try and push back the changes?
> Hi Eliot,
>
> a) I update Xcode regularly but allways apply xcodelegacy immediately after each upgrade
> (https://github.com/devernay/xcodelegacy)
>
> clang --version
> Apple LLVM version 7.3.0 (clang-703.0.31)
> Target: x86_64-apple-darwin15.4.0
> Thread model: posix
> InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
>
> b) Nostalghia?
> Precisely because it breaks compatibility with OSX 10.6.
> ( I think I reported this in a vm-dev thread )
> From time to time, I use an old MacMini with snow leopard that I won't upgrade.
That makes sense. Thanks. It was, um, tedious to fix the makefiles to differentiate between clang 7.3 (which wants -fobjc-weak) and earlier. And personally I like to support as old an is version as possible, and 10.6 was ok for 32-bits so far. Have you tried a 10.6 SDK 64-bit build on your 10.6.x MacMini?
> a Better reason:
> The problems appeared after an upgrade of Xcode.
> I'm enough an expert to understand C compiler errors, and search for a quick fix on the internet.
> I'm not enough an expert of Mac to analyze the full impact of these changes...
>
>
>> Note that -fobjc-arc appeared (so John tells me) in 7.3. I'm still using 6.0 and 7.0.
>
> Yes, fixing for one, breaking for another is not very fair.
John, I understand that we have to upgrade 64-but Mac OS X to the 10.7 SDK to get ARC. But is there a good reason for upgrading the 32-bit compile to the 10.7 SDK, or would it be ok to keep using the 10.6 SDK for the 32-bit compile?
>>> Nicolas
>>>
>>> 2016-05-05 21:54 GMT+02:00 John McIntosh <johnmci at smalltalkconsulting.com>:
>>>>
>>>> ARC is not supported by the os-x 32bit legacy objective-C runtime kernel.
>>>>
>>>>> On Thu, May 5, 2016 at 12:23 PM, Eliot Miranda <eliot.miranda at gmail.com> wrote:
>>>>>
>>>>> Hi John,
>>>>>
>>>>>> On Thu, May 5, 2016 at 10:57 AM, <commits at squeakvm.org> wrote:
>>>>>>
>>>>>> Revision: 3697
>>>>>> Author: johnmci
>>>>>> Date: 2016-05-05 10:57:28 -0700 (Thu, 05 May 2016)
>>>>>> Log Message:
>>>>>> -----------
>>>>>> Turn ARC On for 64bit compiles, don't make MIDI, fix various issues with bridge and windowIndex for ARC, fix parseArgument data type warning
>>>>>
>>>>> Curious (ok, ignorant). Why use ARC for 64-bits but weak for 32-bits? WOup;don't it be better to go with one approach for both? If ARC is the future why not change the 32-bit compile to ARC too?
>>>>>
>>>>> [snip]
>>>>>> Modified: branches/Cog/build.macos32x86/common/Makefile.flags
>>>>>> ===================================================================
>>>>>> --- branches/Cog/build.macos32x86/common/Makefile.flags 2016-05-05 17:18:10 UTC (rev 3696)
>>>>>> +++ branches/Cog/build.macos32x86/common/Makefile.flags 2016-05-05 17:57:28 UTC (rev 3697)
>>>>>> @@ -9,7 +9,7 @@
>>>>>> SDKs:=MacOSX10.12.sdk MacOSX10.11.sdk MacOSX10.10.sdk MacOSX10.9.sdk
>>>>>> SDK:=$(firstword $(realpath $(addprefix $(SDKsDIR)/, $(SDKs))))
>>>>>> TARGET_ARCH:=i386
>>>>>> -TARGET_VERSION_MIN:=10.6
>>>>>> +TARGET_VERSION_MIN:=10.7
>>>>>>
>>>>>> CFLAGS:=$(CFLAGS) -DBUILD_FOR_OSX=1 \
>>>>>> -arch $(TARGET_ARCH) \
>>>>>> @@ -17,6 +17,7 @@
>>>>>> -fvisibility=default -fwrapv \
>>>>>> -fmacro-backtrace-limit=0 -fdiagnostics-show-note-include-stack \
>>>>>> -fmessage-length=0 -fpascal-strings -fasm-blocks -fstrict-aliasing \
>>>>>> + -fobjc-weak \
>>>>>> -isysroot $(SDK) \
>>>>>> -include $(PLATDIR)/iOS/vm/SqueakPureObjc_Prefix.pch
>>>>> [snip]
>>>>>> Modified: branches/Cog/build.macos64x64/common/Makefile.flags
>>>>>> ===================================================================
>>>>>> --- branches/Cog/build.macos64x64/common/Makefile.flags 2016-05-05 17:18:10 UTC (rev 3696)
>>>>>> +++ branches/Cog/build.macos64x64/common/Makefile.flags 2016-05-05 17:57:28 UTC (rev 3697)
>>>>>> @@ -9,7 +9,7 @@
>>>>>> SDKs:=MacOSX10.12.sdk MacOSX10.11.sdk MacOSX10.10.sdk MacOSX10.9.sdk
>>>>>> SDK:=$(firstword $(realpath $(addprefix $(SDKsDIR)/, $(SDKs))))
>>>>>> TARGET_ARCH:=x86_64
>>>>>> -TARGET_VERSION_MIN:=10.6
>>>>>> +TARGET_VERSION_MIN:=10.7
>>>>>>
>>>>>> CFLAGS:=$(CFLAGS) -DBUILD_FOR_OSX=1 \
>>>>>> -arch $(TARGET_ARCH) \
>>>>>> @@ -17,6 +17,7 @@
>>>>>> -fvisibility=default -fwrapv \
>>>>>> -fmacro-backtrace-limit=0 -fdiagnostics-show-note-include-stack \
>>>>>> -fmessage-length=0 -fpascal-strings -fasm-blocks -fstrict-aliasing \
>>>>>> + -fobjc-arc \
>>>>>> -isysroot $(SDK) \
>>>>>> -include $(PLATDIR)/iOS/vm/SqueakPureObjc_Prefix.pch
>>>>> [snip]
>>>>>
>>>>> _,,,^..^,,,_
>>>>> best, Eliot
>>>>
>>>> --
>>>> ===========================================================================
>>>> John M. McIntosh. Corporate Smalltalk Consulting Ltd https://www.linkedin.com/in/smalltalk
>>>> ===========================================================================
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20160506/b6eb46f9/attachment-0001.htm
More information about the Vm-dev
mailing list