Opened 10 years ago

Closed 10 years ago

#5499 closed bug (fixed)

ICU-devel package doesn't create /boot/develop symlinks

Reported by: anevilyak Owned by: zooey
Priority: normal Milestone: R1
Component: Build System Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Has a Patch: no Platform: All

Description

So this isn't forgotten...the ICU-devel package currently doesn't publish symlinks to libicu-*.so in the requisite /boot/develop subdirs, so attempting to link to them fails unless those are created first.

Attachments (2)

icu-devel-wip.patch (1.6 KB ) - added by mmadia 10 years ago.
wip: patch to add symlinks
gcc2hybrid.log (77.1 KB ) - added by mmadia 10 years ago.
output for jam -q …

Download all attachments as: .zip

Change History (9)

comment:1 by zooey, 10 years ago

Status: newin-progress

comment:2 by zooey, 10 years ago

Resolution: fixed
Status: in-progressclosed

Fixed in hrev35680 - thanks for poking me, Rene! ;-)

comment:3 by anevilyak, 10 years ago

Hi Oliver,

Unfortunately, the fix creates another problem: it gets unzipped before the Development package does, and as a result, /boot/develop/abi/current is created as an actual directory rather than an appropriate symlink to x86/{gcc2,gcc4}. Consequently it breaks the rest of the devkit since later creation of the symlink fails. Perhaps it'd be better to explicitly add them as links in the development package via jam logic if ICU-devel is also present or something in that vein?

comment:4 by zooey, 10 years ago

Resolution: fixed
Status: closedreopened

Bummer - declaring appropriate dependencies doesn't seem to fix things either ...

will have to look into that one again (but not today).

by mmadia, 10 years ago

Attachment: icu-devel-wip.patch added

wip: patch to add symlinks

by mmadia, 10 years ago

Attachment: gcc2hybrid.log added

output for jam -q ...

comment:5 by mmadia, 10 years ago

The attach patch creates the symlinks in develop/abi/x86/gcc$(VERSION) directory. However when building a hybrid, the symlinks will not be created for the alternate gcc. Looking at the jam output, they seem to be created or rather attempted.

InitScript1 /generated/x86gcc4/haiku-alternative-gcc-copy-files 
AppendToContainerCopyFilesScriptSingleFile <AlternativeGCCArchive>haiku-alternative-gcc-copy-files-dummy-system/lib/gcc4-libjpeg.so 
AppendToContainerCopyFilesScriptSingleFile <AlternativeGCCArchive>haiku-alternative-gcc-copy-files-dummy-system/lib/gcc4-libpng.so 
AppendToContainerCopyFilesScriptSingleFile <AlternativeGCCArchive>haiku-alternative-gcc-copy-files-dummy-system/lib/gcc4-libz.so 
AppendToContainerCopyFilesScriptSingleFile <AlternativeGCCArchive>haiku-alternative-gcc-copy-files-dummy-system/lib/gcc4-libicu-common.so 
AppendToContainerCopyFilesScriptSingleFile <AlternativeGCCArchive>haiku-alternative-gcc-copy-files-dummy-system/lib/gcc4-libicu-data.so 
AppendToContainerCopyFilesScriptSingleFile <AlternativeGCCArchive>haiku-alternative-gcc-copy-files-dummy-system/lib/gcc4-libicu-i18n.so 
AppendToContainerCopyFilesScript <AlternativeGCCArchive>haiku-alternative-gcc-copy-files-dummy-system/lib/gcc4 

comment:6 by zooey, 10 years ago

Status: reopenedin-progress

comment:7 by zooey, 10 years ago

Resolution: fixed
Status: in-progressclosed

Thanks for the patch, Matt.

It was just missing invocations of AddSymlinkToHaiku*Hybrid*Image, which takes care of handling both gcc versions (AddSymlinkToHaikuImage doesn't).

Additionally, there are now links for the versioned libs, too, which makes it possible to keep two different versions of ICU-devel around, should that ever be necessary. That's not really important now (especially for ICU), but I just wanted to give a good example for the person working on the next *-devel package.

Fixed in hrev35730.

Note: See TracTickets for help on using tickets.