CMakeLists.txt


Log

Author Commit Date CI Message
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 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 521479b1 2012-12-18T19:18:13 DRY: Don't repeat globs for libgit2's own source files
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
Sascha Cunz b15bef23 2012-05-12T11:12:42 Use -fvisibility=hidden in GCC builds
Scott J. Goldman ec42eafd 2012-05-09T22:30:57 Hook up Windows compat fnmatch() for Solaris Since Solaris does not support some of the same flags as glibc fnmatch(), we just use the implementation we have for Windows. Now that it's no longer a windows-specific thing, I moved it into compat/ instead of win32/
Scott J. Goldman 901fbdad 2012-05-07T00:05:02 Define explicit _WIN32_WINNT version in makefile Previously, it was defined in netops.c, but it's also needed in one of the clar tests, so I figured we might as well just make it global for the whole project. Without it, the mingw32 linker won't resolve GetProcessId() (called from the core/errors.c clar test) because of some conditionals in windows.h.
Vicent Martí 16eaa150 2012-04-02T17:24:16 Merge pull request #606 from benstraub/t04_commit_to_clar Ported t04_commit.c to Clar.
Ben Straub fd29cd13 2012-03-31T16:10:01 Moved testing resources to clar, and removed old tests directory. Removed the BUILD_CLAR CMake flag, and updated the readme.
Ben Straub 9f75a9ce 2012-03-30T06:34:30 Turning on runtime checks when building debug under MSVC.
Ben Straub e0799b6c 2012-03-19T21:41:29 Ported t04_commit.c to Clar. Created a copy of tests/resources/testrepo.git that is compatible with the Clar sandboxing helpers. Restructured commit test suites to use Clar sandbox helpers. Now using typed data arrays rather than lots of macros to define test cases.
Ben Straub 06c081e1 2012-03-20T19:57:56 Adding multi-cpu compile option when generating MSVC projects.
Russell Belfer 3a5ad90a 2012-01-24T12:23:20 Import xdiff library from git This is the initial import of the xdiff code (LGPL) from core git as of rev f349b562086e2b7595d8a977d2734ab2ef9e71ef
Carlos Martín Nieto 4a1ecba6 2012-02-18T00:54:03 regex: Move the defines to a config header and include it unconditionally
Carlos Martín Nieto c17b1d00 2012-02-17T19:41:14 Add POSIX regex sources when needed Windows doesn't support POSIX regex, so we need to include it ourselves. The sources come from git, which in turn took them from gawk.
Russell Belfer 38691ffc 2012-02-01T13:20:47 Compile with _GNU_SOURCE when appropriate On non-Windows builds, we will now use _GNU_SOURCE so header files will include modern API extensions. This should resolve issue #547.
Vicent Martí 3fd1520c 2012-01-24T20:35:15 Rename the Clay test suite to Clar Clay is the name of a programming language on the makings, and we want to avoid confusions. Sorry for the huge diff!
Clemens Buchacher e632f687 2011-12-29T13:04:17 cmake: generate tags
Clemens Buchacher 86a459a8 2011-12-29T12:16:01 cmake: generate clay main The clay test suite files clay.h and clay_main.c are generated by the clay python script. Teach CMake about this dependency and remove the generated files from the repository.
Russell Belfer b762e576 2011-11-17T15:10:27 filebuf: add GIT_FILEBUF_INIT and protect multiple opens and cleanups Update all stack allocations of git_filebuf to use GIT_FILEBUF_INIT and make git_filebuf_open and git_filebuf_cleanup safe to be called multiple times on the same buffer. Signed-off-by: Vicent Marti <tanoku@gmail.com>
Carlos Martín Nieto 4ce16ed8 2011-10-22T12:25:55 CMake: use -O0 in debug mode Otherwise, GCC optimizes variables away and gdb can't tell us what's in them. Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
Carlos Martín Nieto dfafb03b 2011-10-07T00:44:41 Move the transports to their own directory
Vicent Marti 502dd2da 2011-10-12T12:09:56 msvc: Fix resourc embedding
Vicent Martí 92e2081f 2011-10-12T11:03:58 Merge pull request #449 from csware/include-win-version-information Include windows version information in git2.dll
Carlos Martín Nieto 5b216d1a 2011-10-11T18:08:54 CMake: don't overwrite the user's CFLAGS If either CFLAGS is defined or the user passes -DCMAKE_C_FLAGS to cmake, the variable already contains flags. Don't overwrite them, but append them to our settings. Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
Carlos Martín Nieto dcd62cb2 2011-10-11T16:11:40 CMake: Only add the STDCALL option when using MSVC This option is only ever used with MSVC. Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
Sven Strickroth cf9bf6b7 2011-10-09T18:45:23 include version information in git2.dll on Windows Signed-off-by: Sven Strickroth <email@cs-ware.de>
Sven Strickroth 96fab093 2011-10-09T18:37:41 put version information in separate file Signed-off-by: Sven Strickroth <email@cs-ware.de>
Sven Strickroth da2281c7 2011-10-09T18:35:42 libgit2 doesn't use -LIB define Signed-off-by: Sven Strickroth <email@cs-ware.de>
Vicent Marti d3fb6a81 2011-10-05T16:46:34 cmake: Set the old test suite as default for the release
Vicent Marti 5888860d 2011-09-28T23:42:38 msvc: Disable warnings in header file Remove clutter from the CMakeLists file by disabling the warnings programatically.
Carlos Martín Nieto 887eaf4d 2011-09-23T17:36:37 Fix dev branch under MSVC In libgit2: Move an enum out of an int bitfield in the HTTP transport. In the parser: Use int bitfields and change some variable sizes to better fit thir use. Variables that count the size of the data chunk can only ever be as large as off_t. Warning 4127 can be ignored, as nobody takes it seriously anyway. From Emeric: change some variable declarations to keep MSVC happy. Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
Vicent Marti 87a26ad5 2011-09-22T20:23:42 Add HTTP sources to Clay suite
Vicent Martí 8114ee4c 2011-09-22T10:17:43 Merge pull request #405 from carlosmn/http-ls Implement ls-remote over HTTP
Vicent Martí 71a4c1f1 2011-09-18T20:07:59 Merge pull request #384 from kiryl/warnings Add more -W flags to CFLAGS
Vicent Marti 48e97ed1 2011-09-16T05:39:52 Rename Clay target in CMakeLists This allows to build both test suites at the same time
Vicent Marti 11385c3c 2011-09-16T05:12:56 Add sample "Status" clay tests
Vicent Marti f1558d9b 2011-09-15T01:12:46 Come out and Clay
Carlos Martín Nieto b8a8191f 2011-09-05T01:13:46 http: add http-parser The code is under the MIT lincense Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
Kirill A. Shutemov d568d585 2011-08-30T23:55:22 CMakefile: add -Wmissing-prototypes and fix warnings Signed-off-by: Kirill A. Shutemov <kirill@shutemov.name>
Kirill A. Shutemov 51d00446 2011-08-30T23:33:59 CMakefile: add -Wstrict-prototypes and fix warnings Signed-off-by: Kirill A. Shutemov <kirill@shutemov.name>
Kirill A. Shutemov 0b2c4061 2011-08-30T23:06:04 CMakefile: add -Wstrict-aliasing=2 and fix warnings Signed-off-by: Kirill A. Shutemov <kirill@shutemov.name>
Kirill A. Shutemov 0d5aa7d7 2011-08-25T14:31:19 CMakeLists: no need in split debug/release build With GNU toolchain there's no need to split debug/release build. It's useful to have -O2 in debug envitonment since GCC show more warnings in this case. -O2 -g works fine. For release purpose, debug information can be stripted on later stage. Signed-off-by: Kirill A. Shutemov <kirill@shutemov.name>
Carlos Martín Nieto 4fd486e0 2011-08-12T23:57:44 Really fix pkg-config Without the @ONLY option, CONFIGURE_FILE would replace the variables that are meant to be used to pkg-config at configure time. Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
Lambert CLARA 71e08b33 2011-08-09T08:50:13 Fix installation of libgit2.pc file configure_file outputs by default to binary dir, and install(files) search from source dir.
Vicent Martí a41bf612 2011-08-08T11:10:16 Merge pull request #357 from carlosmn/calling-convention Use __stdcall by default on Windows
Carlos Martín Nieto 2327a7cc 2011-08-07T18:44:08 Create and install pkg-config file This hasn't been working since the switch away from waf. Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
Carlos Martín Nieto 1b5078f6 2011-08-06T13:58:16 Use __stdcall by default on Windows Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
Carlos Martín Nieto e944cfa9 2011-07-14T17:05:22 net: link necessary libraries in Solaris Solaris needs programs to link to socket and nsl in order to use BSD sockets. Tell CMake to do so, this time for real. Thanks to boyski for bearing with me through the various iterations of this patch. Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
Carlos Martín Nieto 39cdf272 2011-07-06T09:11:03 Fix network MSYS compilation MSYS/MinGW uses winsock but obviously doesn't set _MSC_VER. Use _WIN32 to decide whether to use winsock or BSD headers. Also remove these headers from src/transport_git.c altogether, as they are not needed. MSYS is very conservative, so we have to tell it that we don't care about versions of Windows lower than WindowsXP. We also need to tell CMake to add ws2_32 to the libraries list and we shouldn't add the -fPIC option, to MSYS because it complains that it does it anyway. Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
Vicent Marti 678e9e04 2011-07-03T13:33:43 build: Move OS-specific compat to their own folders
Kirill A. Shutemov 932d1baf 2011-06-30T19:52:34 cleanup: remove trailing spaces Signed-off-by: Kirill A. Shutemov <kirill@shutemov.name>