|
7697e541
|
2013-12-11T15:02:20
|
|
Test cancel from indexer progress callback
This adds tests that try canceling an indexer operation from
within the progress callback.
After writing the tests, I wanted to run this under valgrind and
had a number of errors in that situation because mmap wasn't
working. I added a CMake option to force emulation of mmap and
consolidated the Amiga-specific code into that new place (so we
don't actually need separate Amiga code now, just have to turn on
-DNO_MMAP).
Additionally, I made the indexer code propagate error codes more
reliably than it used to.
|
|
726b75d1
|
2013-12-02T11:32:37
|
|
Improve iconv finding for cmake
* add FindIconv helper for CMake iconv detection
* only default using iconv to ON for MacOS
* update pkg-config generation to include iconv dependency better
|
|
83e1efbf
|
2013-11-14T14:10:32
|
|
Update files that reference tests-clar
|
|
0df96f2b
|
2013-11-10T07:31:21
|
|
Merge pull request #1936 from libgit2/better-url-parsing
Streamline url-parsing logic.
|
|
73291aff
|
2013-11-05T22:08:02
|
|
cmake: Add `USE_SSH` option
|
|
2d1feaa2
|
2013-11-04T15:03:44
|
|
Compile HTTP parser on win32 (for url parsing)
|
|
1bfe7133
|
2013-10-25T13:23:46
|
|
Allow -DWINHTTP=OFF to disable WinHTTP
|
|
474c8cf8
|
2013-10-23T22:49:52
|
|
Really fix the pc file
It turns out that variables have function scope by default. Let's
really set -liconv and add a few libraries that were forgotten in
the previous commit.
We also need to special-case OSX, as they ship zlib but do not provide
a pkg-config file for it.
|
|
1ecda61e
|
2013-10-23T12:58:56
|
|
Set the correct dependencies in the pkg-config file
When linking statically, the including project needs to know what the
current library build depends on so they can link to it. Store this
information in the pkg-config file.
While here, remove claims that users need to link to zlib or libcrypto.
|
|
92dac975
|
2013-10-08T16:35:57
|
|
Make reference lookups apply precomposeunicode
Before these changes, looking up a reference would return the
same precomposed or decomposed form of the reference name that
was used to look it up, so on MacOS which ignores the difference
between the two, a single reference could be looked up either way
and git_reference_name would return the form of the name that was
used to look it up! This change makes lookup always return the
precomposed name if core.precomposeunicode is set regardless of
which version was used to look it up. The reference iterator was
already returning the precomposed form from earlier work.
This also updates the CMakeLists.txt rules for enabling iconv
usage because the clar tests for this code were actually not being
activated properly with the old version.
Finally, this moves git_repository_reset_filesystem from include/
git2/repository.h to include/git2/sys/repository.h since it is not
really a function that normal library users should have to think
about very often.
|
|
219d3457
|
2013-10-01T16:12:15
|
|
Initial iconv hookup for precomposed unicode
This hooks up git_path_direach and git_path_dirload so that they
will take a flag indicating if directory entry names should be
tested and converted from decomposed unicode to precomposed form.
This code will only come into play on the Apple platform and even
then, only when certain types of filesystems are used.
This involved adding a flag to these functions which involved
changing a lot of places in the code.
This was an opportunity to do a bit of code cleanup here and there,
for example, getting rid of the git_futils_cleanupdir_r function in
favor of a simple flag to git_futils_rmdir_r to not remove the top
level entry. That ended up adding depth tracking during rmdir_r
which led to a safety check for infinite directory recursion. Yay.
This hasn't actually been tested on the Mac filesystems where the
issue occurs. I still need to get test environment for that.
|
|
b176eded
|
2013-09-19T14:52:57
|
|
Initial Implementation of progress reports during push
This adds the basics of progress reporting during push. While progress
for all aspects of a push operation are not reported with this change,
it lays the foundation to add these later. Push progress reporting
can be improved in the future - and consumers of the API should
just get more accurate information at that point.
The main areas where this is lacking are:
1) packbuilding progress: does not report progress during deltafication,
as this involves coordinating progress from multiple threads.
2) network progress: reports progress as objects and bytes are going
to be written to the subtransport (instead of as client gets
confirmation that they have been received by the server) and leaves
out some of the bytes that are transfered as part of the push protocol.
Basically, this reports the pack bytes that are written to the
subtransport. It does not report the bytes sent on the wire that
are received by the server. This should be a good estimate of
progress (and an improvement over no progress).
|
|
60ee53df
|
2013-09-03T15:14:04
|
|
Split examples CMakeLists.txt
Also, this converts the examples/CMakeLists.txt from explicitly
listing to just globbing for all the individual C files.
|
|
c46fe0c6
|
2013-09-02T03:01:40
|
|
Merge pull request #1823 from kadamski/building4android
Small changes enabling compiling libgit2 for Android.
|
|
5c37f005
|
2013-09-01T18:59:42
|
|
Build all example files if BUILD_EXAMPLES used.
|
|
82b2fc2c
|
2013-09-01T18:45:36
|
|
Create ANDROID build option
CMake seems not to support Android as a target and this option
lets us test this in CMakeLists.txt.
|
|
43095341
|
2013-08-26T14:56:31
|
|
Load SRWLock APIs at runtime
This loads SRWLock APIs at runtime and in their absence (i.e. on
Windows before Vista) falls back on a regular CRITICAL_SECTION
that will not permit concurrent readers.
|
|
eb868b1e
|
2013-08-22T14:34:21
|
|
Drop support for THREADSAFE on Windows XP
This makes libgit2 require Windows Vista or newer if it is going
to be compiled with the THREADSAFE option
|
|
5be622fb
|
2013-08-11T01:37:44
|
|
Test SSH in travis
Set up the ssh credentials so we are able to talk to localhost and
issue git commands. Move to use a script, as the command list is
getting somewhat long.
While here, delay installing valgrind until we need it, as it and its
dependencies are by far the largest downloads and this allows us to
start compiling (and failing) faster and we only incur this cost when
the test suite runs successfully.
|
|
d10de8bd
|
2013-08-12T12:07:33
|
|
CMake: finding libssh2 should be idempotent
With the current code, running 'cmake .' in an already-configured
directory causes the removal of ssh flags passed to the compiler,
making it impossible to build with ssh support but by removing CMake's
cache.
Remove the check for LIBSSH2_LIBRARY and let CMake do the right thing
wrt finding the library.
|
|
e8242022
|
2013-08-05T09:59:02
|
|
Move slow tests to "stress" clar module
Create a new section of clar tests "stress" that will default to
being off where we can put slow tests that push the library for
performance testing purposes.
|
|
275d8d55
|
2013-07-18T09:37:59
|
|
Typo
|
|
e49dc687
|
2013-07-17T14:06:31
|
|
Switch default calling convention to cdecl.
|
|
cdacd3d9
|
2013-07-12T16:53:00
|
|
header files show up in vs
|
|
c41281ad
|
2013-06-19T13:36:59
|
|
CMakeLists: fix zlib linker setup
b53671a (Search for zlib unconditional, 2012-12-18) changed things
around to always (even on windows, that's what the subject refers to)
call FIND_PACKAGE(ZLIB).
However, it did not correctly handle the case where ZLIB_LIBRARY is
cached, either by the user setting it manually or by an earlier
search. In that case, the IF(ZLIB_FOUND) would not trigger (that
variable is not cached) and we'd instead use the built-in version.
000e689 (CMake: don't try to use bundled zlib when the system's path
is in the cache, 2013-05-12) tried to fix that, but it actually made
the problem worse: now with ZLIB_LIBRARY cached, _neither_ of the
blocks would execute, resulting in a linker error for me when trying
to build such a doubly-configured setup.
To fix the issue, we just trust CMake to do the right thing. If
ZLIB_LIBRARY is set (either from user or cache) then the find_library
in FindZLIB.cmake will use that instead of searching again. So we can
unconditionally (for real this time) call FIND_PACKAGE(ZLIB), and just
check its result.
|
|
c1cf1af4
|
2013-06-12T21:15:58
|
|
cmake: Add option to specify the name of the binary
|
|
5a6e45cc
|
2013-06-12T21:14:04
|
|
Revert "cmake: Update Windows resources to reflect the optional vendor string"
This reverts commit 095bfd748766966f5515bdfe64867d6a09287123.
|
|
7a6e0281
|
2013-05-02T14:07:22
|
|
Build with the system's http-parser installation if available
|
|
095bfd74
|
2013-05-21T11:38:24
|
|
cmake: Update Windows resources to reflect the optional vendor string
Make InternalName and OriginalFilename resources reflect the name of the compiled binary.
|
|
ccf1a2ba
|
2013-05-21T11:37:13
|
|
cmake: Fix indentation
|
|
e3107e0e
|
2013-05-16T11:35:02
|
|
Merge pull request #1558 from bmorganpa/ssh_transport
SSH Transport
|
|
3bbc87d6
|
2013-05-14T23:09:26
|
|
CMake: allow appending a string to the library filename
This helps us install multiple versions of the library side-by-side.
|
|
000e6896
|
2013-05-12T15:35:02
|
|
CMake: don't try to use bundled zlib when the system's path is in the cache
The code surrounding zlib bundling did not take into consideration
that ZLIB_LIBRARY gets cached, and assumed that FIND(ZLIB) would
always set ZLIB_FOUND, which does not hold true, as this variable
signifies that we have found the package and had to look at the
system, as its location was not cached.
Only use the bundled sources if the external zlib is neither
newly-found nor cached.
|
|
00e43380
|
2013-05-07T14:30:35
|
|
Merge remote-tracking branch 'origin/development' into ssh_transport
|
|
7369b3c3
|
2013-05-07T14:26:33
|
|
Added libssh2 cmake module
|
|
b641c00e
|
2013-05-03T17:35:50
|
|
clar: Always generate the test suite
|
|
ac1d85cf
|
2013-04-29T11:00:05
|
|
cmake 2.6 parser bug workaround
|
|
eb63fda2
|
2013-04-25T11:52:17
|
|
git_atomic_ssize for 64-bit atomics only on 64-bit platforms
|
|
ec7e240b
|
2013-04-09T05:07:12
|
|
Add rev-list example to makefiles
|
|
2c7f7a66
|
2013-03-25T17:35:36
|
|
http: Support 302 Found (arrbee did most of the work)
|
|
c2ea65ee
|
2013-03-25T21:22:57
|
|
clar: Disable online tests. By now.
|
|
d66a7c06
|
2013-03-16T17:48:24
|
|
Fix for a cmake bug when using MSVC + Win64 + static libraries
(see http://public.kitware.com/Bug/view.php?id=11240)
|
|
08f32085
|
2013-03-16T17:38:27
|
|
Adds an option to select the CRT link mode ( static or dynamic ).
This is useful when linking libgit2 statically, as the setting must match the linking program's one.
|
|
0887b580
|
2013-03-08T15:13:25
|
|
Use C99 stdio in mingw-w64
MinGW >= 3.14 does this automatically, but mingw-64 wants us to define
it.
|
|
92ebbe99
|
2013-03-07T12:06:18
|
|
Merge pull request #1399 from nathan-osman/development
Add SONAME build option to facilitate building for Android.
|
|
b5ec5430
|
2013-03-04T23:52:30
|
|
optional tracing
|
|
e7da9acd
|
2013-03-06T17:51:38
|
|
Added build option SONAME to control whether VERSION and SOVERSION were set for the git2 target, as some platforms require that this NOT be set.
|
|
69c28b75
|
2013-03-06T13:22:50
|
|
MSVC: Define NDEBUG to disable asserts in release builds
|
|
19be3f9e
|
2013-02-13T12:36:41
|
|
Improve MSVC compiler, linker flags
|
|
fb60d268
|
2013-02-05T06:18:23
|
|
Merge pull request #1315 from nulltoken/development
cMakeList: Prevent MSVCR1x0.dll dependency
|
|
e8670d01
|
2013-02-05T14:32:09
|
|
cMakeList: Prevent MSVCR1x0.dll dependency
Deploys the libgit2/libgit2@9041250 fix to RELWITHDEBINFO
and MINSIZEREL build flavors
Fix #255
|
|
c27e2112
|
2013-01-23T17:38:00
|
|
update examples to work on windows
|
|
b41e24a6
|
2013-01-04T13:02:47
|
|
Add -fPIC only if BUILD_SHARED_LIBS is ON
|
|
707ede86
|
2013-01-04T03:25:05
|
|
Compile regexp dependency when AMIGA is defined.
Before it was compiled when CMake was actually run on AmigaOS.
|
|
c57c4af3
|
2012-12-29T23:27:14
|
|
Disable SSL when compiling for AmigaOS for now.
|
|
8f09f464
|
2013-01-08T16:54:44
|
|
remove ppc sha1 asm
|
|
d335e73a
|
2013-01-08T16:37:19
|
|
keep comments at < 80 chars
|
|
09556895
|
2013-01-06T14:40:32
|
|
travis: Include the online suite when running against Travis
|
|
4236164a
|
2013-01-03T02:37:28
|
|
Prototypes warning goes away
|
|
2e6f06a8
|
2013-01-03T02:34:45
|
|
...and add Clar raw
|
|
afb18116
|
2013-01-03T01:04:18
|
|
/deal with it
|
|
39444bea
|
2013-01-03T01:01:03
|
|
...fine
|
|
ad27838b
|
2013-01-03T00:58:46
|
|
Proper submodule dependency
|
|
6443eaf2
|
2013-01-03T00:50:29
|
|
Disable Network suite by default
|
|
39cd0177
|
2013-01-02T22:38:10
|
|
This is a better name
|
|
a44f2e9e
|
2013-01-02T22:26:34
|
|
Try it like this...
|
|
e229c048
|
2013-01-02T21:25:32
|
|
Fuck you CMake
|
|
0df41675
|
2013-01-02T21:22:19
|
|
Submodule checkout
|
|
a368fd0f
|
2013-01-02T20:08:49
|
|
Checkout test
|
|
5c2d3f6d
|
2013-01-02T04:17:31
|
|
Add build dependency for clar. Also, fuck you CMake. Fuck you.
|
|
b0a45829
|
2012-12-19T01:10:13
|
|
Bump the Clar submodule
|
|
156cfec0
|
2012-12-19T00:12:26
|
|
Cleanup Clar to make it SIMPLER
|
|
523a3ae5
|
2012-12-18T20:40:57
|
|
MSVC: Don't list all source files in an endless list
Instead tell MSVC to group the source files by directory.
|
|
94243295
|
2012-12-18T19:51:31
|
|
DRY: Add function that adds os-specific libraries to our targets
|
|
19a766a2
|
2012-12-18T19:32:31
|
|
Collect configuration options at the top of the file
- Also document the -DSTDCALL even better.
|
|
521479b1
|
2012-12-18T19:18:13
|
|
DRY: Don't repeat globs for libgit2's own source files
|
|
c5309eb2
|
2012-12-18T19:07:59
|
|
Remove special case source globs for Solaris
With the src/compat/*.c glob removed, there is no longer a difference to
the default globs we use for the IF( UNIX ) case.
|
|
49b63008
|
2012-12-18T19:07:08
|
|
Remove src/compat/*.c from source globs
This directory doesn't exist.
|
|
b53671ae
|
2012-12-18T19:03:29
|
|
Search for zlib unconditional
Up to now, on windows we don't even bother to look if the user has a zlib
available somwhere.
In almost all larger commercial projects i've participated in, it was not
at all uncommon to have such a dependency somewhere in the source tree and
use it whereever required.
Searching for it, even if it's unlikely to be present, allows for such a
scenario (i.e. by prefilling the CMake-Cache).
|
|
3d007f4f
|
2012-12-18T18:55:23
|
|
DRY: Scan for regex.c only in one place
|
|
8d457891
|
2012-12-18T18:52:49
|
|
Only add deps/http-parser to include-dirs if required
|
|
cfbe4be3
|
2012-11-17T19:54:47
|
|
More external API cleanup
Conflicts:
src/branch.c
tests-clar/refs/branches/create.c
|
|
a9069f61
|
2012-11-19T12:11:01
|
|
Merge pull request #1086 from scunz/vs_warning_level
VS-Build: Append C_FLAGS to the end of the already given ones.
|
|
4a03913c
|
2012-11-19T04:48:40
|
|
VS-Build: Disable /W4 parameter, as it is not picked up anyway
My other PR revealed, that the /W4 parameter, we give to MSVC is ignored
because cmake set CMAKE_C_FLAGS already to /W3 and we overwrite it.
The command line tools gave me a D9025 warning for this on every file and
looking into the project properties page on MSVC 2008 tells, that it has
the warning level set to /W3.
However, the warnings introduced by /W4 are far to useless for having
them enabled. So just disable them.
|
|
26d9e317
|
2012-11-19T04:40:58
|
|
Don't use precompiled headers for command-line based VC builds.
The reason, why libgit2 currently cannot support compiling via the command-line
tools cl/nmake from WinSDK and/or Microsoft Visual Studio, seems to be a
missing dependency on the generated precompiled header file.
The Visual Studio IDE automatically inserts this dependency when it sees the
right combination of "/Y" parameters.
This patch allows to compile using command line tools by disabling precompiled
headers for NON-IDE builds.
|
|
d6fb0924
|
2012-11-05T12:37:15
|
|
Win32 CryptoAPI and CNG support for SHA1
|
|
dbd6850d
|
2012-11-01T10:57:14
|
|
Hide deprecations on MacOS
Why Apple, why?
|
|
88149fae
|
2012-10-28T10:21:28
|
|
Leave CMAKE_BUILD_TYPE absent on those generators which don't use it.
|
|
4a3be934
|
2012-10-28T09:56:18
|
|
Removed overwrite of CMAKE_C_FLAGS_DEBUG.
- No overwriting allows control from cmake cache or cmdline
- -g is already the CMake default
- -O0 is already gcc's default
|
|
54c56d3e
|
2012-10-28T09:42:54
|
|
Remove "-O2 -g" from default CMAKE_C_FLAGS.
- Those are the RelWithDebInfo flags.
- They should be controlled from CMAKE_BUILD_TYPE
|
|
2df7c944
|
2012-10-28T09:25:43
|
|
Remove duplicate CMAKE_C_FLAGS inside CMAKE_C_FLAGS_DEBUG.
- For Debug builds, CMake uses concatenated
CMAKE_C_FLAGS and CMAKE_C_FLAGS_DEBUG
- This reverts commit 291f7122927d2cc170dc63c378a08fa78515d987.
|
|
94155e2f
|
2012-10-25T14:51:08
|
|
remove /ZM1000 from msvc builds
|
|
81e7b10a
|
2012-10-23T13:43:28
|
|
Merge pull request #1012 from carlosmn/libcrypto-sha
Use libcrypto's SHA-1 implementation when linking to it
|
|
7205a4d9
|
2012-10-23T19:30:04
|
|
Use libcrypto's SHA-1 implementation when linking to it
libcryto's SHA-1 implementation is measurably better than the one that
ships with the library. If we link to it for HTTPS support already,
use that implementation instead.
Testing on a ~600MB of the linux repository, this reduces indexing
time by 40% and removes the hashing from the top spot in the perf
output.
|
|
88e0fc05
|
2012-10-20T02:59:40
|
|
Remove backwards compatibility for INSTALL_LIB
|
|
291f7122
|
2012-10-19T23:34:00
|
|
Let environment CFLAGS override the debug flags
|
|
9795a40f
|
2012-10-19T17:33:13
|
|
Use standard CMake variable names for installation paths
Rename INSTALL_INC and INSTALL_BIN to INCLUDE_INSTALL_DIR and
BIN_INSTALL_DIR, which are more commonly used. This is also
consistent with the variable for the library path which is
already LIB_INSTALL_DIR.
|
|
a75770fe
|
2012-10-10T14:57:05
|
|
tests: add a test for tag autofollow behaviour
Also tell ctest and valgrind to run libgit2_clar with '-iall' so we
run the network tests in travis.
|
|
3ce22c74
|
2012-08-26T19:22:34
|
|
http: use WinHTTP on Windows
Wondows has its own HTTP library. Use that one when possible instead of
our own.
As we don't depend on them anymore, remove the http-parser library from
the Windows build, as well as the search for OpenSSL.
|
|
b3237ac3
|
2012-07-13T17:13:35
|
|
Add support for the more standard LIB_INSTALL_DIR variable
|