Hi,
This one is a bit weird.
There's a really strange linking error while trying to build devel/libmtp,
and it looks like it's only happening on mips64el.
===> Building for libmtp-1.1.13
make all-recursive
Making all in src
Making all in examples
cc -DHAVE_CONFIG_H -I. -I.. -I../src -I/usr/local/include -O2 -pipe -Wall
-Wmissing-prototypes -MT detect.o -MD -MP -MF .deps/detect.Tpo -c -o detect.o
detect.c
mv -f .deps/detect.Tpo .deps/detect.Po
/usr/bin/libtool --tag=CC --mode=link cc -O2 -pipe -Wall
-Wmissing-prototypes -L/usr/local/lib -o mtp-detect detect.o util.o
../src/libmtp.la -lgcrypt
libtool: link: cc -o .libs/mtp-detect -pthread -O2 -pipe -Wall
-Wmissing-prototypes detect.o util.o -L.libs -lmtp -liconv -lusb-1.0 -lgcrypt
-lgpg-error -lintl -Wl,-rpath-link,/usr/local/lib
.libs/libgcrypt.so.19.3: warning: warning: stpcpy() is dangerous; do not use it
.libs/libmtp.so.7.0: warning: warning: rand() may return deterministic values,
is that what you want?
.libs/libmtp.so.7.0: warning: warning: strcat() is almost always misused,
please use strlcat()
.libs/libmtp.so.7.0: warning: warning: sprintf() is often misused, please use
snprintf()
.libs/libmtp.so.7.0: warning: warning: strcpy() is almost always misused,
please use strlcpy()
.libs/libmtp.so.7.0: undefined reference to `.L2085'
collect2: ld returned 1 exit status
Error while executing cc -o .libs/mtp-detect -pthread -O2 -pipe -Wall
-Wmissing-prototypes detect.o util.o -L.libs -lmtp -liconv -lusb-1.0 -lgcrypt
-lgpg-error -lintl -Wl,-rpath-link,/usr/local/lib
*** Error 25 in examples (Makefile:511 'mtp-detect')
*** Error 1 in . (Makefile:551 'all-recursive')
*** Error 1 in /usr/ports/pobj/libmtp-1.1.13/libmtp-1.1.13 (Makefile:389 'all')
*** Error 1 in . (/usr/ports/infrastructure/mk/bsd.port.mk:2695
'/usr/ports/pobj/libmtp-1.1.13/.build_done')
*** Error 1 in /usr/ports/devel/libmtp
(/usr/ports/infrastructure/mk/bsd.port.mk:2398 'all')
Using MODGCC4 works around this. I suspect a small bug in base toolchain,
but strangely, mips64 doesn't look affected as I see a package for it, so
mips64el might be the only arch having this issue... (and this build error
has existed for some months).
I have no idea how to investigate this, and it doesn't look like a common
problem on mips64el, so using MODGCC4 feels like an acceptable workaround,
IMO.
Index: Makefile
===================================================================
RCS file: /cvs/ports/devel/libmtp/Makefile,v
retrieving revision 1.35
diff -u -p -r1.35 Makefile
--- Makefile 30 May 2017 20:48:04 -0000 1.35
+++ Makefile 3 Jul 2017 10:26:57 -0000
@@ -16,6 +16,9 @@ WANTLIB += c gcrypt gpg-error iconv intl
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=libmtp/}
+MODULES+= gcc4
+MODGCC4_ARCHS= mips64el
+
LIB_DEPENDS= devel/libusb1 \
security/libgcrypt