Commit 4c7cea8a authored by pi's avatar pi
Browse files

New port: devel/bear

Bear is a tool that generates a compilation database for clang
tooling. The JSON compilation database is used in the clang project
to provide information on how a single compilation unit is processed.
With this, it is easy to re-run the compilation with alternate
programs. One way to get a compilation database is to use cmake as
the build tool. Passing -DCMAKE_EXPORT_COMPILE_COMMANDS=ON to cmake
generates the compile_commands.json file into the current directory.
For non-cmake projects, Bear generates the JSON file during the
build process.

The concept behind Bear is: to execute the original build command
and intercept the exec calls issued by the build tool. To achieve
that, Bear uses the LD_PRELOAD or DYLD_INSERT_LIBRARIES mechanisms
provided by the dynamic linker.

WWW: https://github.com/rizsotto/Bear

PR:		220475
Submitted by:	Jov <amutu@amutu.com>
parent b4dd6905
......@@ -7602,7 +7602,6 @@ devel/erlang-mustache|devel/erlang-bbmustache|2015-06-21|Renamed upstream
dns/maradns1|dns/maradns|2015-06-23|Has expired: MaraDNS 1 end-of-life: June 21, 2015, use dns/maradns
net/py-soappy-devel||2015-06-25|Please use net/py-soappy instead. It's fresher than -devel
devel/armv6-freebsd10.0-xdev||2015-06-27|Not usable for the purpose it has been intended for
devel/bear|devel/erlang-bear|2015-06-27|Renamed with erlang- prefix
devel/common_lib|devel/erlang-common_lib|2015-06-27|Renamed with erlang- prefix
devel/cowlib|devel/erlang-cowlib|2015-06-27|Renamed with erlang- prefix
devel/cuttlefish|devel/erlang-cuttlefish|2015-06-27|Renamed with erlang- prefix
......
......@@ -175,6 +175,7 @@
SUBDIR += bbfreeze-loader
SUBDIR += bcc
SUBDIR += bcpp
SUBDIR += bear
SUBDIR += beautifyphp
SUBDIR += bennugd-core
SUBDIR += bennugd-modules
......
# Created by: Jov <amutu@amutu.com>
# $FreeBSD$
PORTNAME= bear
PORTVERSION= 2.3.6
CATEGORIES= devel
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
MAINTAINER= amutu@amutu.com
COMMENT= Tool that generates a compilation database for clang tooling
LICENSE= GPLv3
USE_GITHUB= yes
GH_ACCOUNT= rizsotto
GH_PROJECT= Bear
USES= cmake shebangfix python:2.7+
USE_LDCONFIG= yes
SHEBANG_FILES= bear/main.py.in
OPTIONS_DEFINE= DOCS
post-patch:
${REINPLACE_CMD} -e '/install(FILES COPYING/d' \
-e '/{CMAKE_INSTALL_DOCDIR}/d' \
${WRKSRC}/CMakeLists.txt
post-install-DOCS-on:
${MKDIR} ${STAGEDIR}${DOCSDIR}
${INSTALL_DATA} ${WRKSRC}/README.md ${STAGEDIR}${DOCSDIR}
.include <bsd.port.mk>
TIMESTAMP = 1499241718
SHA256 (rizsotto-Bear-2.3.6_GH0.tar.gz) = 94ceb407d4058b22563bc26b5a4d0d1d10df83987320e60e455e8a6a5616a75d
SIZE (rizsotto-Bear-2.3.6_GH0.tar.gz) = 41275
Bear is a tool that generates a compilation database for clang
tooling. The JSON compilation database is used in the clang project
to provide information on how a single compilation unit is processed.
With this, it is easy to re-run the compilation with alternate
programs. One way to get a compilation database is to use cmake as
the build tool. Passing -DCMAKE_EXPORT_COMPILE_COMMANDS=ON to cmake
generates the compile_commands.json file into the current directory.
For non-cmake projects, Bear generates the JSON file during the
build process.
The concept behind Bear is: to execute the original build command
and intercept the exec calls issued by the build tool. To achieve
that, Bear uses the LD_PRELOAD or DYLD_INSERT_LIBRARIES mechanisms
provided by the dynamic linker.
WWW: https://github.com/rizsotto/Bear
bin/bear
lib/libear.so
man/man1/bear.1.gz
%%PORTDOCS%%%%DOCSDIR%%/README.md
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment