[pypy-dev] Mac osx patches

Gabriel Lavoie glavoie at gmail.com
Sat Oct 10 17:19:35 CEST 2009


Hello everyone,
     here's a patch so pypy-c can be built under Snow Leopard (64 bits
Python/GCC). I'm not 100% sure on how to make type casts but it
builds. I'm sure someone can validate. :)

Cheers,

Gabriel

2009/10/6 Leonardo Santagada <santagada at gmail.com>:
> Thanks pedronis for applying one of the patches, but without the
> trackgcroot one I can't get no trackgcroot test to pass, and without
> the -dynamiclib change I get one failure on test_rffi_platform.py, but
> with it the generated pypy .s files can't be read by trackgcroot.
>
> Anyone knows how to fix the current failure on test_rffi_platform on
> osx without changing the -bundle to -dynamiclib?
>
> And the other failure about offset_labels, maybe it is possible to
> offset them but not by so much as 2**30 but maybe 2**24 or something?
>
>
> On Sep 30, 2009, at 2:06 PM, Leonardo Santagada wrote:
>
>> To make compilation and asmgcroot happy on osx I made some changes,
>> I would like to know if someone has anything against applying this
>> stuff to trunk?
>>
>> Index: pypy/translator/c/gcc/trackgcroot.py
>> ===================================================================
>> --- pypy/translator/c/gcc/trackgcroot.py        (revision 68036)
>> +++ pypy/translator/c/gcc/trackgcroot.py        (working copy)
>> @@ -22,7 +22,11 @@
>> r_sectionstart         = re.compile(r"\t\.("+'|'.join(OTHERSECTIONS)
>> +").*$")
>> r_functionstart_darwin = re.compile(r"_(\w+):\s*$")
>>
>> -OFFSET_LABELS   = 2**30
>> +# darwin's ld complain about this hack
>> +if sys.platform == 'darwin':
>> +    OFFSET_LABELS = 0
>> +else:
>> +    OFFSET_LABELS = 2**30
>>
>> # inside functions
>> LABEL           = r'([.]?[\w$@]+)'
>> Index: pypy/translator/platform/test/test_darwin.py
>> ===================================================================
>> --- pypy/translator/platform/test/test_darwin.py        (revision
>> 68036)
>> +++ pypy/translator/platform/test/test_darwin.py        (working copy)
>> @@ -2,8 +2,8 @@
>> """ File containing darwin platform tests
>> """
>>
>> -import py, os
>> -if os.name != 'darwin':
>> +import py, sys
>> +if sys.platform != 'darwin':
>>     py.test.skip("Darwin only")
>>
>> from pypy.tool.udir import udir
>> Index: pypy/translator/platform/darwin.py
>> ===================================================================
>> --- pypy/translator/platform/darwin.py  (revision 68036)
>> +++ pypy/translator/platform/darwin.py  (working copy)
>> @@ -18,7 +18,7 @@
>>         self.cc = cc
>>
>>     def _args_for_shared(self, args):
>> -        return (self.shared_only + ['-bundle', '-undefined',
>> 'dynamic_lookup']
>> +        return (self.shared_only + ['-dynamiclib', '-undefined',
>> 'dynamic_lookup']
>>                                  + args)
>>
>>     def include_dirs_for_libffi(self):
>>
>>
>> --
>> Leonardo Santagada
>> santagada at gmail.com
>>
>>
>>
>
> --
> Leonardo Santagada
> santagada at gmail.com
>
>
>
> _______________________________________________
> pypy-dev at codespeak.net
> http://codespeak.net/mailman/listinfo/pypy-dev
>



-- 
Gabriel Lavoie
glavoie at gmail.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pypy-snow-leopard-translate.patch
Type: application/octet-stream
Size: 3719 bytes
Desc: not available
URL: <http://mail.python.org/pipermail/pypy-dev/attachments/20091010/f6918a69/attachment.obj>


More information about the Pypy-dev mailing list