On Thu, May 25, 2017 16:27, Stuart Henderson wrote:
> apcupsd tries to link its binaries using cc (rather than c++) with a static
> link to -lsupc++, for people who "care about binary portability between
> Linux distributions".
>
> the simplest fix seems to be to just use c++ to link, switching it to
> libstdc++ as usual.
>
> ok?
Sure.
>
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/sysutils/apcupsd/Makefile,v
> retrieving revision 1.33
> diff -u -p -r1.33 Makefile
> --- Makefile 3 Jun 2016 08:11:09 -0000 1.33
> +++ Makefile 25 May 2017 13:23:29 -0000
> @@ -8,6 +8,7 @@ DISTNAME = apcupsd-3.14.14
> PKGNAME-main = ${DISTNAME}
> PKGNAME-cgi = ${DISTNAME:S/-/-cgi-/}
> PKGNAME-x11 = ${DISTNAME:S/-/-x11-/}
> +REVISION = 0
>
> CATEGORIES = sysutils
>
> @@ -18,8 +19,10 @@ MAINTAINER = Kirill Bychkov <kirby@open
> # GPLv2
> PERMIT_PACKAGE_CDROM = Yes
>
> +WANTLIB = ${LIBCXX} c m pthread
> +
> LIB_DEPENDS-main = devel/libusb-compat
> -WANTLIB-main = c pthread usb
> +WANTLIB-main = ${WANTLIB} usb
>
> MASTER_SITES = ${MASTER_SITE_SOURCEFORGE:=apcupsd/}
>
> @@ -52,7 +55,7 @@ MULTI_PACKAGES = -main
> MULTI_PACKAGES += -cgi
> PREFIX-cgi = ${WEB_ROOT}
> CONFIGURE_ARGS += --enable-cgi
> -WANTLIB-cgi = c pthread gd
> +WANTLIB-cgi = ${WANTLIB} gd
> LIB_DEPENDS-cgi = graphics/gd
> RUN_DEPENDS-cgi =
>
> @@ -63,11 +66,12 @@ LIB_DEPENDS-x11 = devel/gconf2 \
> x11/gtk+2
> RUN_DEPENDS-x11 = devel/desktop-file-utils
>
> +WANTLIB-x11 += ${WANTLIB}
> WANTLIB-x11 += X11 Xcomposite Xcursor Xdamage Xext Xfixes Xi Xinerama
> -WANTLIB-x11 += Xrandr Xrender atk-1.0 c cairo fontconfig freetype
> -WANTLIB-x11 += gconf-2 gdk-x11-2.0 gdk_pixbuf-2.0 gio-2.0 glib-2.0
> -WANTLIB-x11 += gobject-2.0 gthread-2.0 gtk-x11-2.0 intl pango-1.0
> pangocairo-1.0
> -WANTLIB-x11 += pangoft2-1.0 pthread z
> +WANTLIB-x11 += Xrandr Xrender atk-1.0 cairo fontconfig freetype gconf-2
> +WANTLIB-x11 += gdk-x11-2.0 gdk_pixbuf-2.0 gio-2.0 glib-2.0 gobject-2.0
> +WANTLIB-x11 += gthread-2.0 gtk-x11-2.0 intl pango-1.0 pangocairo-1.0
> +WANTLIB-x11 += pangoft2-1.0 z
> .endif
>
> FAKE_FLAGS = sysconfdir=${TRUEPREFIX}/share/examples/apcupsd/etc
> Index: patches/patch-configure
> ===================================================================
> RCS file: patches/patch-configure
> diff -N patches/patch-configure
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-configure 25 May 2017 13:23:29 -0000
> @@ -0,0 +1,19 @@
> +$OpenBSD$
> +
> +We care more about building with clang than binary portability between
> +Linux distributions.
> +
> +Index: configure
> +--- configure.orig
> ++++ configure
> +@@ -12397,7 +12397,9 @@ $as_echo "$as_me: error: gethostbyname_r is required"
> + ;;
> + esac
> +
> +-if test -n "$GCC"; then
> ++if true; then
> ++ LD="$CXX"
> ++else
> + # Starting with GCC 3.0, you must link C++ programs against either
> + # libstdc++ (shared by default), or libsupc++ (always static). If
> + # you care about binary portability between Linux distributions,
>
>
No comments:
Post a Comment