devel/gzstream: Link with ${CXX}

libgzstream is a C++ library so should be linked with libc++.  This
should unbreak consumers like audio/pianod2 after base r345349.
Also use INSTALL_LIB to install the library and make the build
respect LDFLAGS.

ld: error: /usr/local/lib/libgzstream.so: undefined reference to std::__1::basic_streambuf<char, std::__1::char_traits<char> >::imbue(std::__1::locale const&)
...
ld: error: /usr/local/lib/libgzstream.so: undefined reference to std::__1::ios_base::init(void*)
ld: error: /usr/local/lib/libgzstream.so: undefined reference to std::__1::basic_ios<char, std::__1::char_traits<char> >::~basic_ios()
ld: error: /usr/local/lib/libgzstream.so: undefined reference to typeinfo for std::__1::basic_streambuf<char, std::__1::char_traits<char> >
ld: error: /usr/local/lib/libgzstream.so: undefined reference to typeinfo for std::__1::basic_ios<char, std::__1::char_traits<char> >
ld: error: /usr/local/lib/libgzstream.so: undefined reference to vtable for __cxxabiv1::__vmi_class_type_info

http://beefy12.nyi.freebsd.org/data/head-amd64-default/p501607_s347555/logs/errors/pianod2-301.log
This commit is contained in:
Tobias Kortkamp 2019-05-16 04:23:30 +00:00
parent 1e6c5346ab
commit de01b29401
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=501768

View file

@ -3,7 +3,7 @@
PORTNAME= gzstream
DISTVERSION= 1.5
PORTREVISION= 2
PORTREVISION= 3
CATEGORIES= devel
MASTER_SITES= http://www.cs.unc.edu/Research/compgeom/gzstream/
DISTNAME= ${PORTNAME}
@ -24,11 +24,11 @@ CFLAGS+= -fPIC -iquote.
post-patch:
@${REINPLACE_CMD} -e 's/=/?=/;s/\.a/.so/g;s/CPPFL/CXXFL/g;\
s/{AR}/{CC} $${CFLAGS} -lz -shared -Wl,-soname=lib${PORTNAME}.so.0 -o/' ${WRKSRC}/${MAKEFILE}
s/{AR}/{CXX} $${LDFLAGS} -lz -shared -Wl,-soname=lib${PORTNAME}.so.0 -o/' ${WRKSRC}/${MAKEFILE}
@${REINPLACE_CMD} -e '/gzstream\.h/y/<>/""/' ${WRKSRC}/gzstream.C
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/lib${PORTNAME}.so ${STAGEDIR}${PREFIX}/lib/lib${PORTNAME}.so.0
${INSTALL_LIB} ${WRKSRC}/lib${PORTNAME}.so ${STAGEDIR}${PREFIX}/lib/lib${PORTNAME}.so.0
${LN} -sf lib${PORTNAME}.so.0 ${STAGEDIR}${PREFIX}/lib/lib${PORTNAME}.so
${INSTALL_DATA} ${WRKSRC}/${PORTNAME}.h ${STAGEDIR}${PREFIX}/include/