CMakeLists.txt


Log

Author Commit Date CI Message
Thomas Rast 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.
nulltoken c1cf1af4 2013-06-12T21:15:58 cmake: Add option to specify the name of the binary
Vicent Marti 5a6e45cc 2013-06-12T21:14:04 Revert "cmake: Update Windows resources to reflect the optional vendor string" This reverts commit 095bfd748766966f5515bdfe64867d6a09287123.
Veeti Paananen 7a6e0281 2013-05-02T14:07:22 Build with the system's http-parser installation if available
nulltoken 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.
nulltoken ccf1a2ba 2013-05-21T11:37:13 cmake: Fix indentation
Vicent Martí e3107e0e 2013-05-16T11:35:02 Merge pull request #1558 from bmorganpa/ssh_transport SSH Transport
Carlos Martín Nieto 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.
Carlos Martín Nieto 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.
Brad Morgan 00e43380 2013-05-07T14:30:35 Merge remote-tracking branch 'origin/development' into ssh_transport
Brad Morgan 7369b3c3 2013-05-07T14:26:33 Added libssh2 cmake module
Vicent Marti b641c00e 2013-05-03T17:35:50 clar: Always generate the test suite
Edward Thomson ac1d85cf 2013-04-29T11:00:05 cmake 2.6 parser bug workaround
Edward Thomson eb63fda2 2013-04-25T11:52:17 git_atomic_ssize for 64-bit atomics only on 64-bit platforms
Ben Straub ec7e240b 2013-04-09T05:07:12 Add rev-list example to makefiles
Philip Kelley 2c7f7a66 2013-03-25T17:35:36 http: Support 302 Found (arrbee did most of the work)
Vicent Marti c2ea65ee 2013-03-25T21:22:57 clar: Disable online tests. By now.
QbProg 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)
QbProg 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.
Carlos Martín Nieto 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.
Vicent Martí 92ebbe99 2013-03-07T12:06:18 Merge pull request #1399 from nathan-osman/development Add SONAME build option to facilitate building for Android.
Edward Thomson b5ec5430 2013-03-04T23:52:30 optional tracing
Nathan Osman 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.
Philip Kelley 69c28b75 2013-03-06T13:22:50 MSVC: Define NDEBUG to disable asserts in release builds
Philip Kelley 19be3f9e 2013-02-13T12:36:41 Improve MSVC compiler, linker flags
Vicent Martí fb60d268 2013-02-05T06:18:23 Merge pull request #1315 from nulltoken/development cMakeList: Prevent MSVCR1x0.dll dependency
nulltoken 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
Edward Thomson c27e2112 2013-01-23T17:38:00 update examples to work on windows
Sebastian Bauer b41e24a6 2013-01-04T13:02:47 Add -fPIC only if BUILD_SHARED_LIBS is ON
Sebastian Bauer 707ede86 2013-01-04T03:25:05 Compile regexp dependency when AMIGA is defined. Before it was compiled when CMake was actually run on AmigaOS.
Sebastian Bauer c57c4af3 2012-12-29T23:27:14 Disable SSL when compiling for AmigaOS for now.
Edward Thomson 8f09f464 2013-01-08T16:54:44 remove ppc sha1 asm
Edward Thomson d335e73a 2013-01-08T16:37:19 keep comments at < 80 chars
nulltoken 09556895 2013-01-06T14:40:32 travis: Include the online suite when running against Travis
Vicent Marti 4236164a 2013-01-03T02:37:28 Prototypes warning goes away
Vicent Marti 2e6f06a8 2013-01-03T02:34:45 ...and add Clar raw
Vicent Marti afb18116 2013-01-03T01:04:18 /deal with it
Vicent Marti 39444bea 2013-01-03T01:01:03 ...fine
Vicent Marti ad27838b 2013-01-03T00:58:46 Proper submodule dependency
Vicent Marti 6443eaf2 2013-01-03T00:50:29 Disable Network suite by default
Vicent Marti 39cd0177 2013-01-02T22:38:10 This is a better name
Vicent Marti a44f2e9e 2013-01-02T22:26:34 Try it like this...
Vicent Marti e229c048 2013-01-02T21:25:32 Fuck you CMake
Vicent Marti 0df41675 2013-01-02T21:22:19 Submodule checkout
Vicent Marti a368fd0f 2013-01-02T20:08:49 Checkout test
Vicent Marti 5c2d3f6d 2013-01-02T04:17:31 Add build dependency for clar. Also, fuck you CMake. Fuck you.
Vicent Marti b0a45829 2012-12-19T01:10:13 Bump the Clar submodule
Vicent Marti 156cfec0 2012-12-19T00:12:26 Cleanup Clar to make it SIMPLER
Sascha Cunz 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.
Sascha Cunz 94243295 2012-12-18T19:51:31 DRY: Add function that adds os-specific libraries to our targets
Sascha Cunz 19a766a2 2012-12-18T19:32:31 Collect configuration options at the top of the file - Also document the -DSTDCALL even better.
Sascha Cunz 521479b1 2012-12-18T19:18:13 DRY: Don't repeat globs for libgit2's own source files
Sascha Cunz 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.
Sascha Cunz 49b63008 2012-12-18T19:07:08 Remove src/compat/*.c from source globs This directory doesn't exist.
Sascha Cunz 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).
Sascha Cunz 3d007f4f 2012-12-18T18:55:23 DRY: Scan for regex.c only in one place
Sascha Cunz 8d457891 2012-12-18T18:52:49 Only add deps/http-parser to include-dirs if required
Vicent Marti cfbe4be3 2012-11-17T19:54:47 More external API cleanup Conflicts: src/branch.c tests-clar/refs/branches/create.c
Russell Belfer 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.
Sascha Cunz 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.
Sascha Cunz 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.
Edward Thomson d6fb0924 2012-11-05T12:37:15 Win32 CryptoAPI and CNG support for SHA1
Russell Belfer dbd6850d 2012-11-01T10:57:14 Hide deprecations on MacOS Why Apple, why?
Paul Thompson 88149fae 2012-10-28T10:21:28 Leave CMAKE_BUILD_TYPE absent on those generators which don't use it.
Paul Thompson 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
Paul Thompson 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
Paul Thompson 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.
Edward Thomson 94155e2f 2012-10-25T14:51:08 remove /ZM1000 from msvc builds
Vicent Martí 81e7b10a 2012-10-23T13:43:28 Merge pull request #1012 from carlosmn/libcrypto-sha Use libcrypto's SHA-1 implementation when linking to it
Carlos Martín Nieto 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.
Veeti Paananen 88e0fc05 2012-10-20T02:59:40 Remove backwards compatibility for INSTALL_LIB
Veeti Paananen 291f7122 2012-10-19T23:34:00 Let environment CFLAGS override the debug flags
Veeti Paananen 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.
Carlos Martín Nieto 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.
Carlos Martín Nieto 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.
Ignacio Casal Quinteiro b3237ac3 2012-07-13T17:13:35 Add support for the more standard LIB_INSTALL_DIR variable
Chris Young abd6d52c 2012-06-20T19:27:17 revert defaults
Chris Young 17b45d80 2012-06-13T23:43:25 Removed hardcoded CMAKE_SYSTEM_NAME
Chris Young a21bb1aa 2012-06-13T23:28:51 Merge remote-tracking branch 'source/development' into development
Chris Young 96ef3d84 2012-06-13T23:16:14 Make this more generic and mergeable. Needs AmigaOS.cmake now from CMake package at OS4Depot, or contents below: --8<-- SET(AMIGA 1) SET(CMAKE_SHARED_LIBRARY_C_FLAGS "-fPIC") SET(CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS "-shared") --8<--
Ben Straub 73aaf674 2012-06-13T14:22:33 Precompile headers for MSVC.
Chris Young c9f79972 2012-06-09T23:13:21 remove errorneous comment
Chris Young c3fad0ae 2012-06-09T23:06:32 Merge branch 'development' of github.com:chris-y/libgit2 into development
Chris Young 41cbbea8 2012-06-09T23:03:27 Let platform 'Generic' get the regex deps so we don't need to use our external ones
Chris Young b9bfc768 2012-06-09T17:33:08 pre-compiled sha1ppc.S.obj file with nasty CMake hack instructions as the cross-compile process refuses to build and link this file itself.
Chris Young 4c650c2b 2012-06-08T19:55:04 Don't use the PPC native SHA1 :( CMake is refusing to acknowledge the sha1ppc.S ppc asm code.
Chris Young c3f7a938 2012-06-08T19:37:24 Re-add the ability to select the PowerPC SHA1 function
Chris Young fa56478f 2012-06-08T19:15:11 Generic needs compat files
Chris Young fb0b1523 2012-06-07T20:40:03 force disable of openssl, confusing cross-compiler
Chris Young c3f35902 2012-06-07T20:29:22 Merge remote-tracking branch 'source/development' into update-test Merging main libgit2! Conflicts: CMakeLists.txt src/unix/map.c
Vicent Martí 966fbdcb 2012-06-05T13:53:33 Merge pull request #697 from carlosmn/ssl Add HTTPS support
Chris Young cada414a 2012-06-05T12:07:08 OS4 is PPC
U-Poseidon\Chris bad15056 2012-06-05T11:41:43 Force not to use openssl, as confusing cross-compiler t to use openssl, as confusing cross-compiler t to use openssl, as confusing cross-compiler ss Changes to be committed: (use "git reset HEAD <file>..." to unstage) modified: CMakeLists.txt
Scott J. Goldman 2eb18449 2012-05-26T18:20:33 Refactor CMakeLists.txt for mingw cross-compile Two things: 1) By default, Linux CMake puts -fPIC on the link line. So we remove that for MINGW to avoid warnings that it will be ignored. 2) Similarly, move -fvisibility=hidden flag to be for non-mingw compilation only to avoid warnings that it will be ignored.
Scott J. Goldman 62986ff6 2012-05-20T00:46:48 Add CMake build for examples / add them to Travis By default, they are still not built, but hopefully, now that Travis is building them, this will help stave off some of the bitrot.
Carlos Martín Nieto d3e1367f 2012-05-17T21:40:20 ssl: remove GnuTLS support It's too much work for now to redo everything. Move the ssl context struct to transport.h
Carlos Martín Nieto a6f24a5b 2012-05-01T01:50:26 https: make it work with OpenSSL as well Add specific functions that use OpenSSL instead of GnuTLS
Carlos Martín Nieto 66024c7c 2012-05-01T00:05:25 http: add https support when GnuTLS is available If it's not available, an error saying so will be returned when trying to use a https:// URL. This also unifies a lot of the network code to use git_transport in many places instead of an socket descriptor.
Russell Belfer 706a9974 2012-05-17T13:05:17 Basic setup for profiling This fixes the examples so they will build and adds a PROFILE option to the CMakeFile that enabled gprof info on non-Windows
Vicent Martí 72bfde97 2012-05-14T11:01:14 Merge pull request #681 from scottjg/solaris-fixes Fix build/runtime issues on Solaris