Opened 9 years ago

Closed 9 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 9 years ago.
wip: patch to add symlinks
gcc2hybrid.log (77.1 KB) - added by mmadia 9 years ago.
output for jam -q …

Download all attachments as: .zip

Change History (9)

comment:1 Changed 9 years ago by zooey

Status: newin-progress

comment:2 Changed 9 years ago by zooey

Resolution: fixed
Status: in-progressclosed

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

comment:3 Changed 9 years ago by anevilyak

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 Changed 9 years ago by zooey

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).

Changed 9 years ago by mmadia

Attachment: icu-devel-wip.patch added

wip: patch to add symlinks

Changed 9 years ago by mmadia

Attachment: gcc2hybrid.log added

output for jam -q ...

comment:5 Changed 9 years ago by mmadia

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 Changed 9 years ago by zooey

Status: reopenedin-progress

comment:7 Changed 9 years ago by zooey

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.