devel/jsoncpp and staging?

Steve Kargl sgk at troutmask.apl.washington.edu
Tue Dec 18 01:49:05 UTC 2018


I must be missing a change in how staging works.

% cd /usr/ports/devel/jsoncpp
% make

===>  Staging for jsoncpp-1.8.1_5
===>   Generating temporary packing list
(cd /usr/ports/devel/jsoncpp/work/jsoncpp-1.8.1/include/ && /bin/sh -c '(/usr/bin/find -Ed $1 $3 | /usr/bin/cpio -dumpl $2 >/dev/null 2>&1) &&  /usr/bin/find -Ed $1 $3 \(   -type d -exec /bin/sh -c '\''cd '\''$2'\'' && chmod 755 "$@"'\'' . {} +  -o -type f -exec /bin/sh -c '\''cd '\''$2'\'' && chmod 0644 "$@"'\'' . {} + \)' COPYTREE_SHARE json/ /usr/ports/devel/jsoncpp/work/stage/usr/local/include/jsoncpp/)
chmod: json/allocator.h: No such file or directory
chmod: json/assertions.h: No such file or directory
chmod: json/autolink.h: No such file or directory
chmod: json/config.h: No such file or directory
chmod: json/features.h: No such file or directory
chmod: json/forwards.h: No such file or directory
chmod: json/json.h: No such file or directory
chmod: json/reader.h: No such file or directory
chmod: json/value.h: No such file or directory
chmod: json/version.h: No such file or directory
chmod: json/writer.h: No such file or directory

% ls work/stage/usr/local/include/jsoncpp/json
<no files!!!>

Now, let's re-run make

%  make
===>  Staging for jsoncpp-1.8.1_5
===>   Generating temporary packing list
(cd /usr/ports/devel/jsoncpp/work/jsoncpp-1.8.1/include/ && /bin/sh -c '(/usr/bin/find -Ed $1 $3 | /usr/bin/cpio -dumpl $2 >/dev/null 2>&1) &&  /usr/bin/find -Ed $1 $3 \(   -type d -exec /bin/sh -c '\''cd '\''$2'\'' && chmod 755 "$@"'\'' . {} +  -o -type f -exec /bin/sh -c '\''cd '\''$2'\'' && chmod 0644 "$@"'\'' . {} + \)' COPYTREE_SHARE json/ /usr/ports/devel/jsoncpp/work/stage/usr/local/include/jsoncpp/)
install  -m 0644 /usr/ports/devel/jsoncpp/work/jsoncpp-1.8.1/libs/linux-gcc-FreeBSD/libjsoncpp.a  /usr/ports/devel/jsoncpp/work/stage/usr/local/lib
install  -s -m 0644 /usr/ports/devel/jsoncpp/work/jsoncpp-1.8.1/libs/linux-gcc-FreeBSD/libjsoncpp.so.1.8.1  /usr/ports/devel/jsoncpp/work/stage/usr/local/lib
/bin/ln -s libjsoncpp.so.1.8.1 /usr/ports/devel/jsoncpp/work/stage/usr/local/lib/libjsoncpp.so.1
/bin/ln -s libjsoncpp.so.1.8.1 /usr/ports/devel/jsoncpp/work/stage/usr/local/lib/libjsoncpp.so
cp -f /usr/ports/devel/jsoncpp/work/jsoncpp-1.8.1/pkg-config/jsoncpp.pc.in /usr/ports/devel/jsoncpp/work/stage/usr/local/libdata/pkgconfig/jsoncpp.pc
====> Compressing man pages (compress-man)

% ls work/stage/usr/local/include/jsoncpp/json
allocator.h     config.h        json.h          version.h
assertions.h    features.h      reader.h        writer.h
autolink.h      forwards.h      value.h

The missing files are suddenly found.  Seems to be a race in
staging feature.

-- 
Steve


More information about the freebsd-ports mailing list