Created attachment 571418 [details] dev-libs:icu-64.1:20190331-170013.log make[2]: Leaving directory '/var/tmp/portage/dev-libs/icu-64.1/work/icu/source-.hppa/tools/escapesrc' make[2]: Entering directory '/var/tmp/portage/dev-libs/icu-64.1/work/icu/source-.hppa/tools' make[2]: Nothing to be done for 'all-local'. make[2]: Leaving directory '/var/tmp/portage/dev-libs/icu-64.1/work/icu/source-.hppa/tools' make[1]: Leaving directory '/var/tmp/portage/dev-libs/icu-64.1/work/icu/source-.hppa/tools' make[0]: Making `all' in `data' make[1]: Entering directory '/var/tmp/portage/dev-libs/icu-64.1/work/icu/source-.hppa/data' make -f pkgdataMakefile make[1]: *** No rule to make target 'out', needed by 'out/icudt64b.dat'. Stop. make[1]: *** Waiting for unfinished jobs.... make[2]: Entering directory '/var/tmp/portage/dev-libs/icu-64.1/work/icu/source-.hppa/data' rm -rf icupkg.inc make[2]: Leaving directory '/var/tmp/portage/dev-libs/icu-64.1/work/icu/source-.hppa/data' make[1]: Leaving directory '/var/tmp/portage/dev-libs/icu-64.1/work/icu/source-.hppa/data' make: *** [Makefile:153: all-recursive] Error 2 * ERROR: dev-libs/icu-64.1::gentoo failed (compile phase): * emake failed [ebuild U ] dev-libs/icu-64.1:0/64.1::gentoo [63.1-r1:0/63.1::gentoo] USE="-debug -doc -examples -static-libs" 0 KiB Sun 31 Mar 22:17:22 CEST 2019 emerge --info =dev-libs/icu-64.1:0/64.1::gentoo Portage 2.3.62 (python 3.5.7-final-0, default/linux/hppa/17.0, gcc-8.2.0, glibc-2.29-r1, 5.0.0-JeR-11515-g3b319ee220a8 parisc64) ================================================================= System Settings ================================================================= System uname: Linux-5.0.0-JeR-11515-g3b319ee220a8-parisc64-PA8800_-Mako-with-gentoo-2.6 KiB Mem: 8233016 total, 544720 free KiB Swap: 0 total, 0 free Timestamp of repository gentoo: Sun, 31 Mar 2019 14:15:01 +0000 Head commit of repository gentoo: f9341a8c9836f0709a8c6e2ee8719207c38d8758 sh bash 5.0_p3-r1 ld GNU ld (Gentoo 2.31.1 p5) 2.31.1 distcc[14360] (dcc_mkdir) ERROR: mkdir '/dev/shm/distcc/root/state' failed: No such file or directory [disabled] ccache version 3.6 [disabled] app-shells/bash: 5.0_p3-r1::gentoo dev-lang/perl: 5.28.0::gentoo dev-lang/python: 2.7.16::gentoo, 3.4.8-r1::gentoo, 3.5.7::gentoo, 3.6.8::gentoo, 3.7.3::gentoo dev-util/ccache: 3.6::gentoo dev-util/cmake: 3.14.1::gentoo sys-apps/baselayout: 2.6-r1::gentoo sys-apps/openrc: 0.41.2::gentoo sys-apps/sandbox: 2.17::gentoo sys-devel/autoconf: 2.13-r1::gentoo, 2.69-r4::gentoo sys-devel/automake: 1.9.6-r3::gentoo, 1.11.6-r3::gentoo, 1.12.6::gentoo, 1.13.4-r2::gentoo, 1.14.1::gentoo, 1.15.1-r2::gentoo, 1.16.1-r1::gentoo sys-devel/binutils: 2.25.1-r1::gentoo, 2.26.1::gentoo, 2.29::gentoo, 2.29.1-r1::gentoo, 2.30-r3::gentoo, 2.31.1-r4::gentoo, 2.32::gentoo sys-devel/gcc: 6.4.0-r5::gentoo, 7.3.0-r6::gentoo, 8.2.0-r6::gentoo, 8.3.0::gentoo sys-devel/gcc-config: 2.0::gentoo sys-devel/libtool: 2.4.6-r5::gentoo sys-devel/make: 4.2.1-r4::gentoo sys-kernel/linux-headers: 5.0-r1::gentoo (virtual/os-headers) sys-libs/glibc: 2.29-r1::gentoo Repositories: gentoo location: /aches/gentoo/portage sync-type: rsync sync-uri: rsync://rsync.nl.gentoo.org/gentoo-portage priority: -1000 sync-rsync-verify-metamanifest: yes sync-rsync-verify-jobs: 1 sync-rsync-extra-opts: sync-rsync-verify-max-age: 24 JeR location: /aches/gentoo/local masters: gentoo priority: -100 ACCEPT_KEYWORDS="hppa ~hppa" ACCEPT_LICENSE="*" CBUILD="hppa2.0-unknown-linux-gnu" CFLAGS="-mschedule=8000 -march=2.0 -ggdb -Wall -O2 -pipe -Wno-comment" CHOST="hppa2.0-unknown-linux-gnu" CONFIG_PROTECT="/etc /etc/stunnel/stunnel.conf /usr/lib/distcc/bin /usr/share/easy-rsa /usr/share/gnupg/qualified.txt /var/bind /var/www/localhost/htdocs/wordpress/wp-config.php" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.6/ext-active/ /etc/php/apache2-php7.1/ext-active/ /etc/php/apache2-php7.2/ext-active/ /etc/php/apache2-php7.3/ext-active/ /etc/php/cgi-php5.6/ext-active/ /etc/php/cgi-php7.1/ext-active/ /etc/php/cgi-php7.2/ext-active/ /etc/php/cgi-php7.3/ext-active/ /etc/php/cli-php5.6/ext-active/ /etc/php/cli-php7.1/ext-active/ /etc/php/cli-php7.2/ext-active/ /etc/php/cli-php7.3/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo" CXXFLAGS="-mschedule=8000 -march=2.0 -ggdb -Wall -O2 -pipe" DISTDIR="/aches/gentoo/distfiles" EMERGE_DEFAULT_OPTS="--quiet-build=n --autounmask=n --keep-going --ignore-built-slot-operator-deps=y" ENV_UNSET="DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR" FCFLAGS="" FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs buildpkg compressdebug config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync metadata-transfer multilib-strict news notitles parallel-fetch preserve-libs protect-owned sandbox sfperms splitdebug strict test-fail-continue unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr" FFLAGS="-mschedule=8000 -march=2.0 -ggdb -Wall -O2 -pipe" GENTOO_MIRRORS=" http://ftp.snt.utwente.nl/pub/os/linux/gentoo http://mirror.leaseweb.com/gentoo/ http://mirror.netcologne.de/gentoo/ " LANG="en_GB.utf8" LDFLAGS="-Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -Wl,--no-keep-memory" LINGUAS="en nl he" MAKEOPTS="-j3" PKGDIR="/aches/gentoo/packages/karsten" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git" PORTAGE_TMPDIR="/var/tmp" USE="256-color X acl alsa amr anacron apng argyllcms audit bash-completion beautifulsoup3 berkdb bfio big-endian bittorrent botan bzip2 cairo canberra cli consolekit coverage crossdev crypt cups custom-cflags cxx dane dbus declarative dirac directfb distinct-l dlz dot dri emacs exceptions exif expat fbcon ffmpeg filecaps firefox firmware foomaticdb fortran frontend-optional g-sorcery gbm gdbm geoip geoloc glep gles1 gles2 gost gpg gpm gsm gstreamer gtk gudev guile hddtemp hppa hwdb iconv idn imlib inotify ipv6 jadetex javascript jingle jit jpeg jpeg2k json kdrive kmod ladspa lasi launch-frontend lensfun libcaca libcanberra libevent libidn2 libopts libsoxr libusb libwww lua lzma lzo mad mng mod modplug mp3 mtp multislot multitarget munge nagios nas natspec ncurses netlink nfs nls nptl objc objc++ objc-gc offensive ofono-headset openexr opengl openmp openrc openvg opus oqgraph osmesa oss pam pcre pcre16 php pic pkcs11 png pnm policykit python qt qt3support qt4 raw readline realtime regression-test rtmp rubytests samba sbc schroedinger sctp smi snappy socks5 speex spell spidermonkey sqlite ssl svg tcl tcpd tga theora threads tiff tk tokyocabinet truetype unicode unwind v4l vim-syntax vorbis vpx wcwidth x264 x265 xattr xcb xft xhtml xkb xvfb xvid zlib" ALSA_CARDS="ad1889 usb-audio" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CURL_SSL="nss" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="evdev joystick keyboard mouse acecad aiptek calcomp citron digitaledge dmc dynapro elo2300 elographics fpit hyperpen jamstudio magellan microtouch mutouch palmax penmount spaceorb summa tek4957 tslib ur98 virtualbox libinput void" KERNEL="linux" L10N="en nl he" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" NETBEANS_MODULES="apisupport cnd groovy gsf harness ide identity j2ee java mobility nb php profiler soa visualweb webcommon websvccommon xml" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6 php7-1" POSTGRES_TARGETS="postgres9_5 postgres10" PYTHON_SINGLE_TARGET="python3_5" PYTHON_TARGETS="python2_7 python3_6 python3_5" RUBY_TARGETS="ruby24 ruby25" USERLAND="GNU" VIDEO_CARDS="stifb dummy" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CC, CPPFLAGS, CTARGET, CXX, INSTALL_MASK, LC_ALL, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
> make[1]: *** No rule to make target 'out', needed by 'out/icudt64b.dat'. Stop. 'out' is value of $(OUTDIR) set in source/data/Makefile.in: OUTDIR=./out icudt${version}b.dat is used on big-endian architectures. icudt${version}l.dat is used on little-endian architectures. In both ICU 63.1 and 64.1, pre-generated .dat file is provided only for little-endian architectures: ICU 63.1 tarball contains source/data/in/icudt63l.dat ICU 64.1 tarball contains source/data/in/icudt64l.dat source/data/Makefile.in later contains: [[[ # Find out if we have a source archive. # If we have that, then use that instead of building everything from scratch. ICUDATA_SOURCE_ARCHIVE = $(wildcard $(srcdir)/in/$(ICUDATA_PLATFORM_NAME).dat) ifeq ($(ICUDATA_SOURCE_ARCHIVE),) ICUDATA_ARCHIVE = $(firstword $(wildcard $(srcdir)/in/$(ICUDATA_BASENAME_VERSION)*.dat)) # We don't have the data in the current endianess or charset. # See if we can find data of any archive type, # and convert it to the current type. ifneq ($(ICUDATA_ARCHIVE),) ICUDATA_SOURCE_ARCHIVE = $(OUTDIR)/$(ICUDATA_PLATFORM_NAME).dat $(ICUDATA_SOURCE_ARCHIVE): $(ICUDATA_ARCHIVE) $(OUTDIR) $(INVOKE) $(TOOLBINDIR)/icupkg -t$(ICUDATA_CHAR) $(ICUDATA_ARCHIVE) $(ICUDATA_SOURCE_ARCHIVE) endif else ... endif ]]] So on big-endian architectures, icupkg tool is used to create icudt64b.dat ($(ICUDATA_SOURCE_ARCHIVE)) from icudt64l.dat ($(ICUDATA_ARCHIVE)). The same behavior is in ICU 63.1. In both ICU 63.1 and 64.1, source/data/Makefile.in contains this line: $(ICUDATA_SOURCE_ARCHIVE): $(ICUDATA_ARCHIVE) $(OUTDIR) ^^^^^^^^^ The problem probably started to occur due to this change between ICU 63.1 and 64.1: [[[ -BUILD_DIRS=$(OUTDIR) $(MAINBUILDDIR) $(BUILDDIR) $(CURRBLDDIR) $(LANGBLDDIR) $(REGIONBLDDIR) $(ZONEBLDDIR) $(UNITBLDDIR) $(BRKBLDDIR) $(COLBLDDIR) $(RBNFBLDDIR) $(TRANSLITBLDDIR) $(OUTTMPDIR) $(OUTTMPDIR_390STUB) $(OUTTMPDIR)/$(CURR_TREE) $(OUTTMPDIR)/$(LANG_TREE) $(OUTTMPDIR)/$(REGION_TREE) $(OUTTMPDIR)/$(ZONE_TREE) $(OUTTMPDIR)/$(UNIT_TREE) $(OUTTMPDIR)/$(COLLATION_TREE) $(OUTTMPDIR)/$(RBNF_TREE) $(OUTTMPDIR)/$(TRANSLIT_TREE) $(OUTTMPDIR)/$(BREAK_TREE) ... -$(BUILD_DIRS): build-dir - -build-dir: - @-$(RMV) $@ - echo timestamp > $@.tmp - @list='$(BUILD_DIRS)'; \ - for dir in $$list; do \ - if ! test -d $$dir; then \ - echo $(MKINSTALLDIRS) $(BUILD_DIRS); \ - $(MKINSTALLDIRS) $(BUILD_DIRS); \ - fi; \ - done - mv $@.tmp $@ ]]] Directory $(OUTDIR) gets created for me on little-endian architecture, but by a target run later. There seem to be 2 alternative fixes: 1. Defining target $(OUTDIR) somewhere: +$(OUTDIR): + @$(MKINSTALLDIRS) $(OUTDIR) 2. Dropping dependency on target $(OUTDIR) and creating directory $(OUTDIR) directly: ifneq ($(ICUDATA_ARCHIVE),) ICUDATA_SOURCE_ARCHIVE = $(OUTDIR)/$(ICUDATA_PLATFORM_NAME).dat -$(ICUDATA_SOURCE_ARCHIVE): $(ICUDATA_ARCHIVE) $(OUTDIR) +$(ICUDATA_SOURCE_ARCHIVE): $(ICUDATA_ARCHIVE) + $(MKINSTALLDIRS) $(OUTDIR) $(INVOKE) $(TOOLBINDIR)/icupkg -t$(ICUDATA_CHAR) $(ICUDATA_ARCHIVE) $(ICUDATA_SOURCE_ARCHIVE) endif There are no other dependencies on target $(OUTDIR), so the second fix might be preferred. ($(MKINSTALLDIRS) refers to script source/mkinstalldirs which already checks for existence of directory before creating it and has parallel-safe behavior.)
Created attachment 571552 [details, diff] icu-64.1-data_archive_generation.patch Please test this patch. If it works, I will send it to upstream.
It works.
icu-64.1-data_archive_generation.patch added in commit 69ff75e390a563e731c8e124d557d1513fba31d1: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=69ff75e390a563e731c8e124d557d1513fba31d1 commit 69ff75e390a563e731c8e124d557d1513fba31d1 Author: Lars Wendler <polynomial-c@gentoo.org> AuthorDate: 2019-04-21 11:32:00 +0000 Commit: Lars Wendler <polynomial-c@gentoo.org> CommitDate: 2019-04-21 11:35:18 +0000 dev-libs/icu: Bump to version 64.2 Package-Manager: Portage-2.3.64, Repoman-2.3.12 Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>