[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Help with libgit2 needed to strip code copy from r-cran-git2r



Hi,

r-cran-git2r was rejected by ftpmaster[1] due to the code copy of
libgit2.  I intended to fix this by removing the code copy and linking
against the Debian packaged libgit2.  The attempt to do so can be found
in Git[2].  Unfortunately that seems to be not as simple as I was
hoping for since I'm running into:

...
configure: creating ./config.status
config.status: creating src/Makevars
** libs
make[1]: Entering directory '/build/r-cran-git2r-0.21.0+dfsg/src'
gcc -std=gnu99 -I/usr/share/R/include -DNDEBUG -I. -I/usr/include/git2  -DGIT_ARCH_64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DGIT_OPENSSL -DLIBGIT2_NO_FEATURES_H -DGIT_SHA1_OPENSSL -     DGIT_SSH -DGIT_CURL -DGIT_USE_STAT_MTIM -DGIT_USE_NSEC -DHAVE_FUTIMENS -DHAVE_QSORT_R      -fpic  -g -O2 -fdebug-prefix-map=/build/r-base-3.4.3=. -fstack-protector-strong -Wformat -     Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g  -c git2r.c -o git2r.o
In file included from /usr/include/git2/common.h:29:0,
                 from /usr/include/git2/annotated_commit.h:10,
                 from /usr/include/git2.h:11,
                 from git2r.c:32:
/usr/include/git2/inttypes.h:33:2: error: #error "Use this header only with Microsoft Visual C++ compilers!"
 #error "Use this header only with Microsoft Visual C++ compilers!"
  ^~~~~
In file included from /usr/include/git2/inttypes.h:46:0,
                 from /usr/include/git2/common.h:29,
                 from /usr/include/git2/annotated_commit.h:10,
                 from /usr/include/git2.h:11,
                 from git2r.c:32:
/usr/include/git2/stdint.h:33:2: error: #error "Use this header only with Microsoft Visual C++ compilers!"
 #error "Use this header only with Microsoft Visual C++ compilers!"
  ^~~~~
In file included from /usr/include/git2/inttypes.h:46:0,
                 from /usr/include/git2/common.h:29,
                 from /usr/include/git2/annotated_commit.h:10,
                 from /usr/include/git2.h:11,
                 from git2r.c:32:
/usr/include/git2/stdint.h:89:30: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'int64_t'
 typedef signed __int64       int64_t;
                              ^~~~~~~
/usr/include/git2/stdint.h:90:30: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'uint64_t'
 typedef unsigned __int64     uint64_t;
                              ^~~~~~~~
/usr/include/git2/stdint.h:101:9: error: unknown type name 'uint64_t'
 typedef uint64_t  uint_least64_t;
         ^~~~~~~~
/usr/include/git2/stdint.h:111:9: error: unknown type name 'uint64_t'
 typedef uint64_t  uint_fast64_t;
         ^~~~~~~~
/usr/include/git2/stdint.h:124:9: error: unknown type name 'uint64_t'
 typedef uint64_t  uintmax_t;
         ^~~~~~~~
In file included from /usr/include/git2/common.h:29:0,
                 from /usr/include/git2/annotated_commit.h:10,
                 from /usr/include/git2.h:11,
                 from git2r.c:32:
/usr/include/git2/inttypes.h:282:1: error: unknown type name '_inline'; did you mean '__nlink_t'?
 _inline
 ^~~~~~~
 __nlink_t
/usr/include/git2/inttypes.h:284:11: error: expected '=', ',', ';', 'asm' or '__attribute__' before '__cdecl'
 imaxdiv_t __cdecl imaxdiv(intmax_t numer, intmax_t denom)
           ^~~~~~~
/usr/include/git2/inttypes.h:284:11: error: unknown type name '__cdecl'
/usr/lib/R/etc/Makeconf:159: recipe for target 'git2r.o' failed
make[1]: *** [git2r.o] Error 1
make[1]: Leaving directory '/build/r-cran-git2r-0.21.0+dfsg/src'
...


I admit I have no idea why the includes delivered by libgit2 do
not work here.  Any idea for a correct fix?

Kind regards

       Andreas.

[1] http://lists.alioth.debian.org/pipermail/debian-science-maintainers/2018-January/056928.html
[2] https://salsa.debian.org/r-pkg-team/r-cran-git2r.git

-- 
http://fam-tille.de


Reply to: