Opened 3 years ago

Closed 3 years ago

#16975 closed bug (fixed)

haikuports.cross: inconsistent ICU version

Reported by: X512 Owned by: bonefish
Priority: normal Milestone: R1/beta4
Component: Build System Version: R1/Development
Keywords: Cc: kallisti5
Blocked By: Blocking:
Platform: All

Description

haikuports.cross repository use ICU version 57.1.2, but Haiku build system use version 57.2.2 that cause build failure:

BootstrapRepositoryFetchPackage1 /home/user/Packages/haiku/generated.riscv64-bootstrap/objects/haiku/riscv64/packaging/repositories/HaikuPortsCross-build/packages/icu_bootstrap-57.2-2-riscv64.hpkg 
Checking if any dependency-infos need to be updated ...
Looking for stale dependency-infos ...
======================================================================
dev-libs::icu_bootstrap-57.1
======================================================================
The following build dependencies were found:
----------------------------------------------------------------------
dev-libs::icu_bootstrap-57.1
        /home/user/Packages/haiku/generated.riscv64-bootstrap/../../haikuports.cross/dev-libs/icu_bootstrap/icu_bootstrap-57.1.recipe
----------------------------------------------------------------------
Skipping download of source for icu4c-57_1-src.tgz
Validating checksum of icu4c-57_1-src.tgz
Error: Expected SHA-256: ff8c67cb65949b1e7808f2359f2b80f722697048e90e7cfc382ec1fe229e9581
Error: Found SHA-256:    6e5b3d0218a47698be3314c03863f061ebdad5ca0dc071441af83439a4fc7d5a
Supposedly built package /home/user/Packages/haiku/generated.riscv64-bootstrap/objects/haiku/riscv64/packaging/repositories/HaikuPortsCross-build/packages/icu_bootstrap-57.2-2-riscv64.hpkg does not exist; version mismatch?


package="/home/user/Packages/haiku/generated.riscv64-bootstrap/objects/haiku/riscv64/packaging/repositories/HaikuPortsCross-build/packages/icu_bootstrap-57.2-2-riscv64.hpkg"
if [ -e "$package" ]; then
exit 0
fi


haikuCrossDevelPackage="objects/haiku/riscv64/packaging/packages/haiku_cross_devel_sysroot_stage1_riscv64.hpkg"
if [ "x$haikuCrossDevelPackage" = "x" ]; then
echo "$package does not have a cross-devel package defined!"
exit 1
fi

if [ "x$haikuCrossDevelPackage" = "x${haikuCrossDevelPackage#/}" ]; then
haikuCrossDevelPackage="`pwd`/$haikuCrossDevelPackage"
fi


secondaryCrossDevelPackages=
if [ -n  ]; then
for secondaryCrossDevelPackage in  ; do
if [ "x$secondaryCrossDevelPackage" = "x${secondaryCrossDevelPackage#/}" ]; then
secondaryCrossDevelPackage="`pwd`/$secondaryCrossDevelPackage"
fi
if [ -n "$secondaryCrossDevelPackages" ]; then
secondaryCrossDevelPackages="$secondaryCrossDevelPackages,$secondaryCrossDevelPackage"
else
secondaryCrossDevelPackages="--secondary-cross-devel-package=$secondaryCrossDevelPackage"
fi
done
fi


portSpec=`basename "$package" | sed 's@-.*@@'`

cd /home/user/Packages/haiku/generated.riscv64-bootstrap/objects/haiku/riscv64/packaging/repositories/HaikuPortsCross-build

export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/home/user/Packages/haiku/generated.riscv64-bootstrap/objects/linux/lib"
if [ -n "$secondaryCrossDevelPackages" ]; then
/home/user/Packages/haiku/generated.riscv64-bootstrap/../../haikuporter/haikuporter  \
--all-dependencies  \
--cross-devel-package "$haikuCrossDevelPackage" \
"$secondaryCrossDevelPackages" $portSpec
else
/home/user/Packages/haiku/generated.riscv64-bootstrap/../../haikuporter/haikuporter  \
--all-dependencies  \
--cross-devel-package "$haikuCrossDevelPackage" $portSpec
fi

if [ ! -e "$package" ]; then
echo "Supposedly built package $package does not exist; version mismatch?"
exit 1
fi

...failed BootstrapRepositoryFetchPackage1 /home/user/Packages/haiku/generated.riscv64-bootstrap/objects/haiku/riscv64/packaging/repositories/HaikuPortsCross-build/packages/icu_bootstrap-57.2-2-riscv64.hpkg ...

Attachments (1)

icu_bootstrap-67.1.recipe (7.3 KB ) - added by tqh 3 years ago.

Download all attachments as: .zip

Change History (5)

comment:1 by kallisti5, 3 years ago

Yeah. We need to bump the icu version in cross-tools because of Pulkomandy's recent updates.

Generally you'll need to:

  • Look at the new version in haikuports
  • Look at the current version in haikuports.cross
  • Merge the two and make a icu_bootstrap :-)

comment:2 by pulkomandy, 3 years ago

We should jump directly to icu66 while we're doing this.

But this is unrelated to my recent updates: I have moved to icu66 for x86 architectures, and this is a mismatch between icu 57.1 and 57.2.

I have tried to not break non-x86 architectures more than they already were.

It seems the haikuportscross repo definition for riscv64 is incorrect:

build/jam/repositories/HaikuPortsCross/riscv64: icu_bootstrap-57.2-2
build/jam/repositories/HaikuPortsCross/riscv64: icu_bootstrap_devel-57.2-2

All other architectures correctly use 57.1 in the HaikuPortsCross file.

Last edited 3 years ago by pulkomandy (previous) (diff)

by tqh, 3 years ago

Attachment: icu_bootstrap-67.1.recipe added

comment:3 by tqh, 3 years ago

I seem to have used a newer one for ARM64. Attached, as I don't manage to get anything into that repo :(

comment:4 by pulkomandy, 3 years ago

Milestone: UnscheduledR1/beta4
Resolution: fixed
Status: newclosed

The recipe for ICU 67 is now merged in haikuports.cross.

Note: See TracTickets for help on using tickets.