Making rsync compile under Mac OS X 10.3.9 with extended attributes

Vitorio Machado v.machado at permanence-informatique.fr
Sat Jan 26 19:21:21 GMT 2008


Well, it seems that we just use definitions from the system acl.h
So putting the acl.h attached into /Developer/SDKs/MacOSX10.3.9.sdk/ 
usr/include/sys/ should correct first errors.
I'm still studying the code to see if it needs other changes.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: acl.h
Type: application/octet-stream
Size: 6630 bytes
Desc: not available
Url : http://lists.samba.org/archive/rsync/attachments/20080126/53ec1ba3/acl.obj
-------------- next part --------------

Le 26 janv. 08 ? 19:44, Robert DuToit a ?crit :
> Hi Vitorio,
> This is a bit out of my league. I've done some applescript  
> applications including backuplist+ which rsync 3 has improved a  
> great deal. I was hoping to make it backwards compatible to 10.3X  
> so it would be great if we can do something to improve the xattrs  
> and or ACL's. If you saw my other post, I also found that OSX  
> creation dates aren't saved either with the build I did on 10.3  
> even with the patch for that....
>
> I have little experience with OBJ-C (though I use lots of "call  
> method") or C etc....  so you would have to see if you can figure  
> that out. Keep me informed. Anything I can do though , let me know.  
> Thanks, Rob
>
>
> On Jan 26, 2008, at 9:38 AM, Vitorio Machado wrote:
>
>> Sorry, I've misread your mail.
>>
>> But don't give up, I think that if we correct the headers in 10.3,  
>> we have a chance to make it compile. We should look at the ACL and  
>> xattr code and see if there are only constant and variable  
>> definition on the system headers that are not found in 10.3 or if  
>> it's more deep lied to the 10.4 API. In this case it represents  
>> much more work, but we have the chance that the basic system layer  
>> (Darwin) of 10.4 is released open source... So maybe we could take  
>> some code from there to have our xattr on 10.3...
>>
>> So, if nobody have a better idea, I think we should proceed like  
>> this:
>>
>> 1) Look on ACL and xattr code to understand what code they expect  
>> from the system
>>
>> 2a) If it's just a definition stuff (variable declaration,  
>> constants, etc) we can try a workaround of the configure script or  
>> something to put another header for 10.3 systems giving all those  
>> stuff that aren't built-in in the system headers. This shouldn't  
>> represent a lot of work
>>
>> 2b) If xattr and ACL code expect to use system fonctions, it won't  
>> be so simple... We can try patching the 10.3 system with some code  
>> of Darwin 8 (system code of 10.4 OS) hoping not have to go too  
>> deep, but just getting 1 or 2 files from it.
>>
>> 3) compile rsync with xattr support successfully with our little  
>> hacking.
>>
>> I will start looking into the code to try to figure out xattr and  
>> acl dependencies on the system. But I don't have Mac OS 10.3 here,  
>> only 10.4. It will be impossible for me to make any test today.
>>
>> Chin up, we can do it!
>>
>> Vitorio
>>
>> Le 26 janv. 08 ? 13:47, Robert DuToit a ?crit :
>>
>>> Hi Vitorio,
>>>
>>> Well, actually, it only compiles only with --disable-acl-support  
>>> --disable-xattr-support. which kind of defeats the whole purpose  
>>> since xattrs are out of the picture.
>>>
>>>
>>> Rob
>>>
>>>
>>>
>>> On Jan 26, 2008, at 7:24 AM, Vitorio Machado wrote:
>>>
>>>> Interesting,
>>>>
>>>> So patched rsync compiles with  --disable-acl-support --enable- 
>>>> xattr-support.
>>>> Can you give an output of rsync --version to see if it says that  
>>>> xattr is enabled on capabilities?
>>>>
>>>> Best regards,
>>>>
>>>> Vitorio
>>>>
>>>> Le 26 janv. 08 ? 12:36, Robert DuToit a ?crit :
>>>>
>>>>> Hi Matt,
>>>>>
>>>>> I tried
>>>>>
>>>>> ./configure --disable-acl-support --enable-xattr-support
>>>>>
>>>>> and got
>>>>>
>>>>> `XATTR_NOFOLLOW' undeclared (first use in this function)
>>>>>
>>>>> so then
>>>>>
>>>>> /configure --disable-acl-support --disable-xattr-support
>>>>>
>>>>> which worked
>>>>>
>>>>> then added patches
>>>>>
>>>>> patch -p1 <patches/flags.diff
>>>>> patch -p1 <patches/osx-create-time.diff
>>>>> ./configure --disable-acl-support --enable-xattr-support
>>>>> make
>>>>>
>>>>> OK this time. Then I tried some simple tests on OS10.3X
>>>>>
>>>>> mypathto/rsync -a --fileflags testdir destdir  (no AX of course!)
>>>>>
>>>>> It works and flags seem to work at least for locked files.  
>>>>> Creation time was not saved though.....
>>>>>
>>>>> any thoughts on xattrs or creation dates?   Quite a few people  
>>>>> still ask me to make support scripts on OS 10.3.9. Acls  
>>>>> probably not such an issue on OS 10.3 and earlier.
>>>>>
>>>>> Thanks Rob
>>>>>
>>>>
>>>
>>
>> --
>> To unsubscribe or change options: https://lists.samba.org/mailman/ 
>> listinfo/rsync
>> Before posting, read: http://www.catb.org/~esr/faqs/smart- 
>> questions.html
>



More information about the rsync mailing list