svn commit: r561516 - in head/devel: . libegit2 libegit2/files
Joseph Mingrone
jrm at FreeBSD.org
Wed Jan 13 22:23:22 UTC 2021
Author: jrm
Date: Wed Jan 13 22:23:16 2021
New Revision: 561516
URL: https://svnweb.freebsd.org/changeset/ports/561516
Log:
New port, devel/libegit2: Emacs bindings for libgit2
PR: 251147
Submitted by: Yasuhiro Kimura <yasu at utahime.org> (maintainer)
Added:
head/devel/libegit2/
head/devel/libegit2/Makefile (contents, props changed)
head/devel/libegit2/distinfo (contents, props changed)
head/devel/libegit2/files/
head/devel/libegit2/files/patch-libgit.el (contents, props changed)
head/devel/libegit2/files/patch-use-system-libgit2 (contents, props changed)
head/devel/libegit2/pkg-descr (contents, props changed)
head/devel/libegit2/pkg-plist (contents, props changed)
Modified:
head/devel/Makefile (contents, props changed)
Modified: head/devel/Makefile
==============================================================================
--- head/devel/Makefile Wed Jan 13 22:23:10 2021 (r561515)
+++ head/devel/Makefile Wed Jan 13 22:23:16 2021 (r561516)
@@ -1157,6 +1157,7 @@
SUBDIR += libdwarf
SUBDIR += libe
SUBDIR += libedit
+ SUBDIR += libegit2
SUBDIR += libeio
SUBDIR += libelf
SUBDIR += libepoll-shim
Added: head/devel/libegit2/Makefile
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/devel/libegit2/Makefile Wed Jan 13 22:23:16 2021 (r561516)
@@ -0,0 +1,48 @@
+# $FreeBSD$
+
+PORTNAME= libegit2
+DISTVERSION= g20200515
+CATEGORIES= devel elisp
+PKGNAMESUFFIX= ${EMACS_PKGNAMESUFFIX}
+
+MAINTAINER= yasu at utahime.org
+COMMENT= Emacs bindings for libgit2
+
+LICENSE= GPLv3+
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+LIB_DEPENDS= libgit2.so:devel/libgit2
+
+USES= cmake:noninja emacs pkgconfig
+USE_GITHUB= yes
+GH_ACCOUNT= magit
+GH_TAGNAME= 0ef8b13
+USE_LDCONFIG= yes
+
+CMAKE_ON= USE_SYSTEM_LIBGIT2
+
+PORTDOCS= README.md
+
+OPTIONS_DEFINE= DOCS
+
+post-patch:
+ ${REINPLACE_CMD} \
+ 's,%%LIBEGIT2_INSTALL_DIR%%,${PREFIX}/${EMACS_VERSION_SITE_LISPDIR},' \
+ ${WRKSRC}/libgit.el
+
+post-build:
+ (cd ${WRKSRC} \
+ && ${EMACS_CMD} -Q -batch -L . -f batch-byte-compile libgit.el)
+
+do-install:
+ @${MKDIR} ${STAGEDIR}${PREFIX}/${EMACS_VERSION_SITE_LISPDIR}
+ ${INSTALL_PROGRAM} ${WRKSRC}/../.build/libegit2.so \
+ ${STAGEDIR}${PREFIX}/${EMACS_VERSION_SITE_LISPDIR}
+ ${INSTALL_DATA} ${WRKSRC}/libgit.el ${WRKSRC}/libgit.elc \
+ ${STAGEDIR}${PREFIX}/${EMACS_VERSION_SITE_LISPDIR}
+
+do-install-DOCS-on:
+ @${MKDIR} ${STAGEDIR}${DOCSDIR}
+ ${INSTALL_DATA} ${WRKSRC}/README.md ${STAGEDIR}${DOCSDIR}
+
+.include <bsd.port.mk>
Added: head/devel/libegit2/distinfo
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/devel/libegit2/distinfo Wed Jan 13 22:23:16 2021 (r561516)
@@ -0,0 +1,3 @@
+TIMESTAMP = 1610571142
+SHA256 (magit-libegit2-g20200515-0ef8b13_GH0.tar.gz) = d746fd8120948ac1d2a3c12f25a65a2720ca8bdd7a794c9b2bc120ff95ed0ce9
+SIZE (magit-libegit2-g20200515-0ef8b13_GH0.tar.gz) = 131990
Added: head/devel/libegit2/files/patch-libgit.el
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/devel/libegit2/files/patch-libgit.el Wed Jan 13 22:23:16 2021 (r561516)
@@ -0,0 +1,11 @@
+--- libgit.el.orig 2020-05-15 17:59:08 UTC
++++ libgit.el
+@@ -41,7 +41,7 @@
+ "Directory where the libegit2 dynamic module file should be built.")
+
+ (defvar libgit--module-file
+- (expand-file-name (concat "libegit2" module-file-suffix) libgit--build-dir)
++ (expand-file-name (concat "libegit2" module-file-suffix) "/usr/local/share/emacs/27.1/site-lisp")
+ "Path to the libegit2 dynamic module file.")
+
+ (defun libgit--configure ()
Added: head/devel/libegit2/files/patch-use-system-libgit2
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/devel/libegit2/files/patch-use-system-libgit2 Wed Jan 13 22:23:16 2021 (r561516)
@@ -0,0 +1,78 @@
+From de3c48d72ec7064e7f0522877fe759c729df0c50 Mon Sep 17 00:00:00 2001
+From: Maxim Cournoyer <maxim.cournoyer at gmail.com>
+Date: Wed, 25 Mar 2020 11:32:18 -0400
+Subject: [PATCH] Allow using a system provided libgit2 library
+
+Setting the USE_SYSTEM_LIBGIT2 Make or CMake variable (through the
+BUILD_OPTIONS variable) to any value enables using the system library.
+The default behavior of using a bundled copy of libgit2 is unchanged.
+--- CMakeLists.txt.orig 2020-05-15 17:59:08 UTC
++++ CMakeLists.txt
+@@ -7,9 +7,14 @@ set(BUILD_SHARED_LIBS OFF CACHE BOOL "shared" FORCE)
+ set(BUILD_CLAR OFF CACHE BOOL "clar" FORCE)
+ set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DEGIT_DEBUG")
+
+-add_subdirectory(libgit2)
++if(USE_SYSTEM_LIBGIT2)
++ find_package(PkgConfig REQUIRED)
++ pkg_check_modules(git2 REQUIRED IMPORTED_TARGET libgit2)
++else()
++ add_subdirectory(libgit2)
++ find_library(git2 libgit2.a)
++endif()
+
+-find_library(git2 libgit2.a)
+ add_subdirectory(src)
+
+ enable_testing()
+ CMakeLists.txt | 9 +++++++--
+ Makefile | 11 +++++++++++
+ src/CMakeLists.txt | 9 +++++++--
+ 3 files changed, 25 insertions(+), 4 deletions(-)
+
+--- Makefile.orig 2020-05-15 17:59:08 UTC
++++ Makefile
+@@ -13,6 +13,13 @@ ifeq ($(UNAME),MSYS)
+ BUILD_OPTIONS+= -G "MSYS Makefiles"
+ endif
+
++# If the variable USE_SYSTEM_LIBGIT2 is set to *any* value, use the
++# system provided libgit2 library.
++USE_SYSTEM_LIBGIT2? := \
++ $(if $(or $(USE_SYSTEM_LIBGIT2),\
++ $(findstring USE_SYSTEM_LIBGIT2,$(BUILD_OPTIONS))),\
++ true)
++
+ ifeq "$(TRAVIS)" "true"
+ ## Makefile for Travis ###################################################
+ #
+@@ -87,7 +94,11 @@ submodule-update:
+ @git submodule update
+
+ libgit2:
++ifeq ($(USE_SYSTEM_LIBGIT2?),)
+ @git submodule update --init
++else
++ @echo "Using the system provided libgit2 library"
++endif
+
+ CLEAN = $(ELCS) $(PKG)-autoloads.el build
+
+--- src/CMakeLists.txt.orig 2020-05-15 17:59:08 UTC
++++ src/CMakeLists.txt
+@@ -13,8 +13,13 @@ if(WIN32)
+ set_target_properties(egit2 PROPERTIES PREFIX lib)
+ endif(WIN32)
+
+-target_link_libraries(egit2 git2)
+-target_include_directories(egit2 SYSTEM PRIVATE "${libgit2_SOURCE_DIR}/include")
++if(USE_SYSTEM_LIBGIT2)
++ target_link_libraries(egit2 PRIVATE PkgConfig::git2)
++else()
++ target_link_libraries(egit2 git2)
++ target_include_directories(
++ egit2 SYSTEM PRIVATE "${libgit2_SOURCE_DIR}/include")
++endif()
+
+ if(CMAKE_COMPILER_IS_GNUCC)
+ target_compile_options(egit2 PRIVATE -Wall -Wextra)
Added: head/devel/libegit2/pkg-descr
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/devel/libegit2/pkg-descr Wed Jan 13 22:23:16 2021 (r561516)
@@ -0,0 +1,4 @@
+This is an experimental module for libgit2 bindings to Emacs, intended
+to boost the performance of Magit (https://magit.vc/).
+
+WWW: https://github.com/magit/libegit2
Added: head/devel/libegit2/pkg-plist
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/devel/libegit2/pkg-plist Wed Jan 13 22:23:16 2021 (r561516)
@@ -0,0 +1,3 @@
+%%EMACS_VERSION_SITE_LISPDIR%%/libegit2.so
+%%EMACS_VERSION_SITE_LISPDIR%%/libgit.el
+%%EMACS_VERSION_SITE_LISPDIR%%/libgit.elc
More information about the svn-ports-all
mailing list