Skip to content

Commit

Permalink
net-proxy/bfilter: Add '-funsigned-char' to CXXFLAGS, prevent narrowing
Browse files Browse the repository at this point in the history
Gentoo-Bug: 572072
* EAPI=6

Package-Manager: portage-2.2.27
  • Loading branch information
SoapGentoo committed Jan 24, 2016
1 parent 3513833 commit edcca8e
Showing 1 changed file with 85 additions and 0 deletions.
85 changes: 85 additions & 0 deletions net-proxy/bfilter/bfilter-1.1.4-r3.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$

EAPI=6

inherit autotools flag-o-matic user

DESCRIPTION="Ad-filtering web proxy featuring an effective heuristic ad-detection algorithm"
HOMEPAGE="http://bfilter.sourceforge.net/"
SRC_URI="mirror://sourceforge/bfilter/${P}.tar.gz"

LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="X debug"

RDEPEND="sys-libs/zlib
dev-libs/ace:=
dev-libs/libsigc++:2
X? ( dev-cpp/gtkmm:2.4 x11-libs/libX11 )
dev-libs/boost:="

DEPEND="${RDEPEND}
dev-util/scons
virtual/pkgconfig"

PATCHES=(
"${FILESDIR}/${P}-glib-2.32.patch"
"${FILESDIR}/${P}-external-boost.patch"
"${FILESDIR}/${P}-gtkmm-X11-underlinking.patch"
)

RESTRICT="test" # boost's test API has changed

src_prepare() {
default

# Some includes are missing and this breaks updates of ACE
sed -i \
-e "/#include <ace\/Synch.h>/a#include <ace\/Condition_T.h>\n#include <ace\/Guard_T.cpp>" \
libjs/nspr_impl/private.h \
main/*.h \
main/cache/*.h || die

mv configure.{in,ac} || die
rm -r boost || die

eautoreconf
}

src_configure() {
append-cxxflags -std=c++11
# Required to prevent narrowing conversion in lexcode.cpp, #572072
append-cxxflags -funsigned-char
econf \
$(use_enable debug) \
$(use_with X gui) \
--without-builtin-boost
}

src_install() {
default

insinto /etc/bfilter
doins "${FILESDIR}/forwarding.xml"

dodoc "${FILESDIR}/forwarding-proxy.xml"
dodoc -r doc/*

newinitd "${FILESDIR}/bfilter.init" bfilter
newconfd "${FILESDIR}/bfilter.conf" bfilter
}

pkg_preinst() {
enewgroup bfilter
enewuser bfilter -1 -1 -1 bfilter
}

pkg_postinst() {
elog "The documentation is available at"
elog " http://bfilter.sourceforge.net/documentation.php"
elog "For forwarding bfilter service traffic through a proxy,"
elog "see forwarding-proxy.xml example installed in the doc directory."
}

0 comments on commit edcca8e

Please sign in to comment.