libgit2: fix gcc2 build.

This is needed for the work on the Git Tracker add-on for GSoC.
This commit is contained in:
Adrien Destugues
2018-05-10 10:33:36 +02:00
parent 48ddc7cea0
commit ceaf873bb3
2 changed files with 80 additions and 3 deletions

View File

@@ -15,12 +15,13 @@ DESCRIPTION="The library provides:
HOMEPAGE="https://libgit2.github.com/"
COPYRIGHT="2005-2018 libgit2 project"
LICENSE="GNU LGPL v2"
REVISION="1"
REVISION="2"
SOURCE_URI="https://github.com/libgit2/libgit2/archive/v$portVersion.tar.gz"
CHECKSUM_SHA256="0da4e211dfb63c22e5f43f2a4a5373e86a140afa88a25ca6ba3cc2cae58263d2"
SOURCE_FILENAME="libgit2-$portVersion.tar.gz"
PATCHES="libgit2-$portVersion.patchset"
ARCHITECTURES="!x86_gcc2 ?x86 x86_64"
ARCHITECTURES="x86_gcc2 ?x86 x86_64"
SECONDARY_ARCHITECTURES="x86"
libVersion="$portVersion"
@@ -69,13 +70,18 @@ BUILD()
{
mkdir -p build && cd build
OPTIONS=
if [ $effectiveTargetArchitecture == x86_gcc2 ] ; then
OPTIONS=-DTHREADSAFE=OFF
fi
cmake .. \
-DCMAKE_INSTALL_PREFIX:PATH=$prefix \
-DBIN_INSTALL_DIR:PATH=$binDir \
-DINCLUDE_INSTALL_DIR:PATH=$includeDir \
-DLIB_INSTALL_DIR:PATH=$libDir \
-DBUILD_CLAR=OFF \
-DBUILD_EXAMPLES=OFF
-DBUILD_EXAMPLES=OFF $OPTIONS
make $jobArgs
}

View File

@@ -0,0 +1,71 @@
From 4036019821be1f94bed724e2ebdb2a3b6ff41670 Mon Sep 17 00:00:00 2001
From: Adrien Destugues <pulkomandy@pulkomandy.tk>
Date: Thu, 10 May 2018 10:21:34 +0200
Subject: Reorder some includes to avoid conflicts between zlib and openssl
zlib #defines free_func, but ssl headers use free_func in a parameter
name in some places. This ends up confusing gcc2. Make sure the ssl
headers are included before the define is set, so we can build libgit
with gcc2.
diff --git a/src/fetch.c b/src/fetch.c
index f408a51..9bf58fc 100644
--- a/src/fetch.c
+++ b/src/fetch.c
@@ -5,6 +5,8 @@
* a Linking Exception. For full terms see the included COPYING file.
*/
+#include "netops.h"
+
#include "git2/oid.h"
#include "git2/refs.h"
#include "git2/revwalk.h"
@@ -15,7 +17,6 @@
#include "refspec.h"
#include "pack.h"
#include "fetch.h"
-#include "netops.h"
#include "repository.h"
#include "refs.h"
diff --git a/src/pack-objects.h b/src/pack-objects.h
index e1e0ee3..399a035 100644
--- a/src/pack-objects.h
+++ b/src/pack-objects.h
@@ -8,12 +8,13 @@
#ifndef INCLUDE_pack_objects_h__
#define INCLUDE_pack_objects_h__
+#include "netops.h"
+
#include "common.h"
#include "buffer.h"
#include "hash.h"
#include "oidmap.h"
-#include "netops.h"
#include "zstream.h"
#include "pool.h"
#include "indexer.h"
diff --git a/src/push.c b/src/push.c
index 433cc06..a112fc1 100644
--- a/src/push.c
+++ b/src/push.c
@@ -5,11 +5,12 @@
* a Linking Exception. For full terms see the included COPYING file.
*/
+#include "pack-objects.h"
+
#include "git2.h"
#include "common.h"
#include "pack.h"
-#include "pack-objects.h"
#include "remote.h"
#include "vector.h"
#include "push.h"
--
2.16.2