/
Makefile.lib
45 lines (38 loc) · 1.61 KB
/
Makefile.lib
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
include ../common/Makefile.lib.extra
$(info LIBRARY: libgit2)
# plugin definitions
LIBGIT2URL:=https://github.com/libgit2/libgit2/archive/v0.25.0-rc1.tar.gz
LIBGIT2DIR:=$(THIRDPARTYDIR)/libgit2-0.25.0-rc1
LIBGIT2LIBNAME:=libgit2.0.25.0.dylib
LIBGIT2LIB:=$(THIRDPARTYINSTALLDIR)/$(LIBGIT2LIBNAME)
LIBGIT2ARCHIVE:=$(THIRDPARTYCACHEDIR)/libgit2-v0.25.0.tar.gz
# ensure third-party library is built and recognised by plugins
INCDIRS:=$(INCDIRS) $(THIRDPARTYINCLUDEDIR)
EXTRALIBS:=$(EXTRALIBS) $(LIBGIT2LIB)
PLUGINREQS:=$(THIRDPARTYLIBS)
$(LIBGIT2ARCHIVE):
curl -o $(LIBGIT2ARCHIVE) -L $(LIBGIT2URL)
$(THIRDPARTYLIBDIR)/$(LIBGIT2LIBNAME): $(LIBGIT2ARCHIVE)
tar x -f $(LIBGIT2ARCHIVE) -C $(THIRDPARTYDIR)
cd $(LIBGIT2DIR) \
&& cmake \
-DCMAKE_INSTALL_PREFIX=$(THIRDPARTYOUTDIR) \
-DUSE_SSH=ON \
-DCURL=OFF \
-DBUILD_CLAR=ON \
-DLIBSSH2_FOUND=ON \
-DLIBSSH2_INCLUDE_DIRS=$(THIRDPARTYINCLUDEDIR) \
-DLIBSSH2_LIBRARIES=$(THIRDPARTYLIBDIR)/libssh2.1.dylib \
-DCMAKE_C_FLAGS="-m32 -L$(THIRDPARTYLIBDIR)" \
-DCMAKE_CXX_FLAGS="-m32 -L$(THIRDPARTYLIBDIR)" \
-DCMAKE_OSX_ARCHITECTURES=i386 \
-DCMAKE_SHARED_LINKER_FLAGS=-Wl,-rpath,@executable_path:@executable_path/Plugins \
&& make \
&& make install
$(LIBGIT2LIB): libssh2 $(THIRDPARTYLIBDIR)/$(LIBGIT2LIBNAME)
cp -f $(THIRDPARTYLIBDIR)/$(LIBGIT2LIBNAME) $(THIRDPARTYINSTALLDIR)
install_name_tool -id "@executable_path/Plugins/$(LIBGIT2LIBNAME)" $(LIBGIT2LIB)
@echo "Fixing dependency links"
install_name_tool -change "$(THIRDPARTYLIBDIR)/$(LIBSSH2LIBNAME)" "@executable_path/Plugins/$(LIBSSH2LIBNAME)" $(LIBGIT2LIB)
@echo "DONE"
libgit2: $(LIBGIT2LIB)