git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH v4 0/8] CMake build system for git

From
Sibi Siddharthan via GitGitGadget <gitgitgadget@gmail.com>
Date
Jun 12, 2020, 18:29 UTC
Message-ID
<pull.614.v4.git.1591986566.gitgitgadget@gmail.com>
In-Reply-To
<pull.614.v3.git.1590759624.gitgitgadget@gmail.com>

This is an attempt to build Git using CMake. CMake is cross-platform build generator which works well on a variety of platforms(primarily Linux and Windows). Using CMake we can check whether certain headers exist, certain functions exist, the required libraries are present and configure the build accordingly. Using CMake we can also build and test Git out of source, resulting in a clean source tree.

Tested platforms
Ubuntu 18.04 GCC 7.4 Clang 8.0.1
Windows MinGW GCC 9.2 Clang 9 Visual Studio 2015,2017,2019
Changes:
1) The CMake script has been relocated to contrib/buildsystems 2) The CMake
script parses the Makefile for the sources. LIB_OBJS BUILTIN_OBJS XDIFF_OBJS
VCSSVN_OBJS TEST_BUILTINS_OBJS SCRIPT_SH SCRIPT_PERL 3) Philip suggested to
change the error message if sh/bash was not found on windows. 4) CMake now
tests for ICONV_OMITS_BOM, NO_ST_BLOCKS_IN_STRUCT_STAT 5) Renamed the
variable test_helper_sources to test-tool_SOURCES [PATCH 4/8] to be
consistent with the naming of source variables.

Changes v2: Changes 1,2,4 have been rebased to PATCH 01/xx CMake uses GIT-VERSION-GEN to get the version of Git Fixed a bug where a Windows user can pose as Linux user and vice versa. [PATCH 6/8]

Changes v3: Patch changes are moved from the commit messages and are placed here. Code inside check_c_source_(compiles/runs) have been formatted according to git coding guidelines. [PATCH 1/8] The CMake script parses the Makefile for SCRIPT_LIB also. [PATCH 2/8] The CMake script globs templates, po files. Logic has been added to place the template files in their respective directories instead of hard-coding them. [PATCH 2/8]

Sibi Siddharthan (8):
  Introduce CMake support for configuring Git
  cmake: generate the shell/perl/python scripts and templates,
    translations
  cmake: installation support for git
  cmake: support for testing git with ctest
  cmake: support for testing git when building out of the source tree
  cmake: support for building git on windows with mingw
  cmake: support for building git on windows with msvc and clang.
  ci: modification of main.yml to use cmake for vs-build job
 .github/workflows/main.yml          |   36 +-
 contrib/buildsystems/CMakeLists.txt | 1003 +++++++++++++++++++++++++++
 2 files changed, 1024 insertions(+), 15 deletions(-)
 create mode 100644 contrib/buildsystems/CMakeLists.txt
base-commit: c72c7da667dba3465fb566ecb23457950e28893c
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-614%2FSibiSiddharthan%2Fgit-og-v4
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-614/SibiSiddharthan/git-og-v4
Pull-Request: https://github.com/gitgitgadget/git/pull/614
Range-diff vs v3:
 1:  09c972de52b ! 1:  c4e1ba74464 Introduce CMake support for configuring Git
     @@ Commit message
          part of the build. This is needed to generate all those hardlinks for
          the built-in commands of Git.
      
     -    Changes
     -    The CMake script parses the Makefile for:
     -    LIB_OBJS
     -    BUILTIN_OBJS
     -    XDIFF_OBJS
     -    VCSSVN_OBJS
     -    TEST_BUILTINS_OBJS
     -
     -    By doing this we avoid duplication of text between the Makefile and
     -    the CMake script.
     -
     -    The CMake script has been relocated to contrib/buildsystems.
     -
     -    The CMake script uses GIT-VERSION-GEN to determine the version of Git
     -    being built.
     -
          Signed-off-by: Sibi Siddharthan <sibisiddharthan.github@gmail.com>
      
       ## contrib/buildsystems/CMakeLists.txt (new) ##
     @@ contrib/buildsystems/CMakeLists.txt (new)
      +Instructions to run CMake:
      +
      +cmake `relative-path-to-CMakeLists.txt` -DCMAKE_BUILD_TYPE=Release
     ++Eg.
     ++From the root of git source tree
     ++	`cmake contrib/buildsystems/ `
     ++This will build the git binaries at the root
     ++
     ++For out of source builds, say build in 'git/git-build/'
     ++	`mkdir git-build;cd git-build; cmake ../contrib/buildsystems/`
     ++This will build the git binaries in git-build directory
      +
      +Possible build configurations(-DCMAKE_BUILD_TYPE) with corresponding
      +compiler flags
     @@ contrib/buildsystems/CMakeLists.txt (new)
      +NOTE: -DCMAKE_BUILD_TYPE is optional. For multi-config generators like Visual Studio
      +this option is ignored
      +
     -+This process generates a Makefile(Linux) , Visual Studio solution(Windows) by default.
     -+Run `make` to build Git on Linux.
     ++This process generates a Makefile(Linux/*BSD/MacOS) , Visual Studio solution(Windows) by default.
     ++Run `make` to build Git on Linux/*BSD/MacOS.
      +Open git.sln on Windows and build Git.
      +
      +NOTE: By default CMake uses Makefile as the build tool on Linux and Visual Studio in Windows,
     @@ contrib/buildsystems/CMakeLists.txt (new)
      +
      +check_c_source_compiles("
      +#include <alloca.h>
     -+int
     -+main ()
     ++
     ++int main(void)
      +{
     -+char *p = (char *) alloca (2 * sizeof (int));
     -+	if (p) return 0;
     ++	char *p = (char *) alloca(2 * sizeof(int));
     ++
     ++	if (p)
     ++		return 0;
      +	return 0;
      +}"
      +HAVE_ALLOCA_H)
     @@ contrib/buildsystems/CMakeLists.txt (new)
      +#include<stdarg.h>
      +#include<string.h>
      +#include<stdlib.h>
     ++
      +int test_vsnprintf(char *str, size_t maxsize, const char *format, ...)
      +{
      +	int ret;
     @@ contrib/buildsystems/CMakeLists.txt (new)
      +	return ret;
      +}
      +
     -+int
     -+main ()
     ++int main(void)
      +{
      +	char buf[6];
     ++
      +	if (test_vsnprintf(buf, 3, \"%s\", \"12345\") != 5
     -+		|| strcmp(buf, \"12\")) return 1;
     ++		|| strcmp(buf, \"12\"))
     ++			return 1;
      +	if (snprintf(buf, 3, \"%s\", \"12345\") != 5
     -+		|| strcmp(buf, \"12\")) return 1;
     -+
     ++		|| strcmp(buf, \"12\"))
     ++			return 1;
      +	return 0;
      +}"
      +SNPRINTF_OK)
     @@ contrib/buildsystems/CMakeLists.txt (new)
      +
      +check_c_source_runs("
      +#include<stdio.h>
     -+int
     -+main ()
     ++
     ++int main(void)
      +{
      +	FILE *f = fopen(\".\", \"r\");
     -+	return f != NULL;
      +
     -+	return 0;
     ++	return f != NULL;
      +}"
      +FREAD_READS_DIRECTORIES_NO)
      +if(NOT FREAD_READS_DIRECTORIES_NO)
     @@ contrib/buildsystems/CMakeLists.txt (new)
      +#ifndef REG_STARTEND
      +#error oops we dont have it
      +#endif
     -+int main(){return 0;}"
     ++
     ++int main(void)
     ++{
     ++	return 0;
     ++}"
      +HAVE_REGEX)
      +if(NOT HAVE_REGEX)
      +	include_directories(${CMAKE_SOURCE_DIR}/compat/regex)
     @@ contrib/buildsystems/CMakeLists.txt (new)
      +#include <sys/types.h>
      +#include <sys/sysctl.h>
      +
     -+int
     -+main ()
     ++int main(void)
      +{
      +	int val, mib[2];
      +	size_t len;
     @@ contrib/buildsystems/CMakeLists.txt (new)
      +	mib[1] = 1;
      +	len = sizeof(val);
      +	return sysctl(mib, 2, &val, &len, NULL, 0) ? 1 : 0;
     -+
     -+	return 0;
      +}"
      +HAVE_BSD_SYSCTL)
      +if(HAVE_BSD_SYSCTL)
     @@ contrib/buildsystems/CMakeLists.txt (new)
      +		char **inbuf, size_t *inbytesleft,
      +		char **outbuf, size_t *outbytesleft);
      +
     -+int main(){return 0;}"
     ++int main(void)
     ++{
     ++	return 0;
     ++}"
      +HAVE_NEW_ICONV)
      +if(HAVE_NEW_ICONV)
      +	set(HAVE_OLD_ICONV 0)
     @@ contrib/buildsystems/CMakeLists.txt (new)
      +typedef char *iconv_ibp;
      +#endif
      +
     -+int main()
     ++int main(void)
      +{
      +	int v;
      +	iconv_t conv;
     -+	char in[] = \"a\"; iconv_ibp pin = in;
     -+	char out[20] = \"\"; char *pout = out;
     -+	size_t isz = sizeof in;
     -+	size_t osz = sizeof out;
     ++	char in[] = \"a\";
     ++	iconv_ibp pin = in;
     ++	char out[20] = \"\";
     ++	char *pout = out;
     ++	size_t isz = sizeof(in);
     ++	size_t osz = sizeof(out);
      +
      +	conv = iconv_open(\"UTF-16\", \"UTF-8\");
      +	iconv(conv, &pin, &isz, &pout, &osz);
 2:  f19794fdbc0 ! 2:  abb9e6e1d58 cmake: generate the shell/perl/python scripts and templates, translations
     @@ Commit message
      
          NOTE: The scripts and templates are generated during configuration.
      
     -    Changes
     -    The CMake script parses the Makefile for:
     -    SCRIPT_SH
     -    SCRIPT_PERL
     -
          Signed-off-by: Sibi Siddharthan <sibisiddharthan.github@gmail.com>
      
       ## contrib/buildsystems/CMakeLists.txt ##
     @@ contrib/buildsystems/CMakeLists.txt: macro(parse_makefile_for_sources list_var r
      +	string(REPLACE "${regex} +=" "" ${list_var} ${${list_var}})
      +	string(STRIP ${${list_var}} ${list_var}) #remove trailing/leading whitespaces
      +	string(REPLACE " " ";" ${list_var} ${${list_var}}) #convert string to a list
     -+	list(TRANSFORM ${list_var} REPLACE "${lang}" "") #do the replacement
     ++	if(NOT ${lang}) #exclude for SCRIPT_LIB
     ++		list(TRANSFORM ${list_var} REPLACE "${lang}" "") #do the replacement
     ++	endif()
      +endmacro()
      +
       include(CheckTypeSize)
     @@ contrib/buildsystems/CMakeLists.txt: add_custom_command(OUTPUT ${git_links} ${gi
      +
      +#shell scripts
      +parse_makefile_for_scripts(git_sh_scripts "SCRIPT_SH" ".sh")
     ++parse_makefile_for_scripts(git_shlib_scripts "SCRIPT_LIB" "")
      +set(git_shell_scripts
     -+	${git_sh_scripts}
     -+	git-mergetool--lib git-parse-remote git-rebase--preserve-merges
     -+	git-sh-setup git-sh-i18n git-instaweb)
     ++	${git_sh_scripts} ${git_shlib_scripts} git-instaweb)
      +
      +foreach(script ${git_shell_scripts})
      +	file(STRINGS ${CMAKE_SOURCE_DIR}/${script}.sh content NEWLINE_CONSUME)
     @@ contrib/buildsystems/CMakeLists.txt: add_custom_command(OUTPUT ${git_links} ${gi
      +
      +
      +#templates
     ++file(GLOB templates "${CMAKE_SOURCE_DIR}/templates/*")
     ++list(TRANSFORM templates REPLACE "${CMAKE_SOURCE_DIR}/templates/" "")
     ++list(REMOVE_ITEM templates ".gitignore")
     ++list(REMOVE_ITEM templates "Makefile")
     ++
     ++list(REMOVE_ITEM templates "branches--")
      +file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/templates/blt/branches) #create branches
     -+set(hooks_templates
     -+	applypatch-msg.sample pre-applypatch.sample pre-push.sample
     -+	commit-msg.sample pre-commit.sample pre-rebase.sample
     -+	fsmonitor-watchman.sample pre-merge-commit.sample pre-receive.sample
     -+	post-update.sample prepare-commit-msg.sample update.sample)
      +
      +#templates have @.*@ replacement so use configure_file instead
     -+#hooks
     -+foreach(tm ${hooks_templates})
     -+	configure_file(${CMAKE_SOURCE_DIR}/templates/hooks--${tm} ${CMAKE_BINARY_DIR}/templates/blt/hooks/${tm} @ONLY)
     ++foreach(tm ${templates})
     ++	string(REPLACE "--" "/" blt_tm ${tm})
     ++	string(REPLACE "this" "" blt_tm ${blt_tm})# for this--
     ++	configure_file(${CMAKE_SOURCE_DIR}/templates/${tm} ${CMAKE_BINARY_DIR}/templates/blt/${blt_tm} @ONLY)
      +endforeach()
      +
     -+#info
     -+configure_file(${CMAKE_SOURCE_DIR}/templates/info--exclude ${CMAKE_BINARY_DIR}/templates/blt/info/exclude @ONLY)
     -+
     -+#this
     -+configure_file(${CMAKE_SOURCE_DIR}/templates/this--description ${CMAKE_BINARY_DIR}/templates/blt/description @ONLY)
     -+
      +
      +#translations
      +if(MSGFMT_EXE)
     -+	set(po_files bg  ca  de  el  es  fr  is  it  ko  pt_PT  ru  sv  tr  vi  zh_CN  zh_TW)
     ++	file(GLOB po_files "${CMAKE_SOURCE_DIR}/po/*.po")
     ++	list(TRANSFORM po_files REPLACE "${CMAKE_SOURCE_DIR}/po/" "")
     ++	list(TRANSFORM po_files REPLACE ".po" "")
      +	foreach(po ${po_files})
      +		file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/po/build/locale/${po}/LC_MESSAGES)
      +		add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/po/build/locale/${po}/LC_MESSAGES/git.mo
 3:  6ec73d3e967 ! 3:  4a0dd23cbbf cmake: installation support for git
     @@ Commit message
      
          Then run `make install`
      
     -    Changes:
     -    Removed a comment regarding the installation of gitk.
     -
          Signed-off-by: Sibi Siddharthan <sibisiddharthan.github@gmail.com>
      
       ## contrib/buildsystems/CMakeLists.txt ##
 4:  cdc53172b3f ! 4:  db05180e98a cmake: support for testing git with ctest
     @@ Commit message
      
          NOTE: Testing only works when building in source for now.
      
     -    Changes:
     -    Renamed the variable test_helper_sources to test-tool_SOURCES
     -    to be consistent with the naming of source variables.
     -
          Signed-off-by: Sibi Siddharthan <sibisiddharthan.github@gmail.com>
      
       ## contrib/buildsystems/CMakeLists.txt ##
 5:  cdc68f102cb = 5:  17e7f3e9de6 cmake: support for testing git when building out of the source tree
 6:  f41cbd43081 ! 6:  549f0cd5fff cmake: support for building git on windows with mingw
     @@ Commit message
          To use CMake on Windows with MinGW do this:
          cmake `relative-path-to-srcdir` -G "MinGW Makefiles"
      
     -    Changes:
     -    Changed the error message when sh.exe is not found on Windows as
     -    suggested by Philip Oakley <philipoakley@iee.email>
     -
     -    v2:
     -    Fixed a bug where a Windows user can pose as Linux user and vice versa.
     -
          Signed-off-by: Sibi Siddharthan <sibisiddharthan.github@gmail.com>
      
       ## contrib/buildsystems/CMakeLists.txt ##
 7:  8f36e30cd22 ! 7:  f85ea0ac0ca cmake: support for building git on windows with msvc and clang.
     @@ Commit message
          For Clang builds do this:
      
          On bash
     -    CC=Clang cmake `relative-path-to-srcdir` -G Ninja
     +    CC=clang cmake `relative-path-to-srcdir` -G Ninja
                          -DCMAKE_BUILD_TYPE=[Debug or Release]
      
          On cmd
 8:  bb329d16ce0 ! 8:  2f7cf41e08f ci: modification of main.yml to use cmake for vs-build job
     @@ Commit message
          FindCURL module. An extra definition (-DCURL_NO_CURL_CMAKE=ON) has been
          added to revert to the old behaviour.
      
     -    Edit(Explanation for the reordering of build steps):
          In the configuration phase CMake looks for the required libraries for
          building git (eg zlib,libiconv). So we extract the libraries before we
          configure.
     @@ Commit message
          To check for ICONV_OMITS_BOM libiconv.dll needs to be in the working
          directory of script or path. So we copy the dlls before we configure.
      
     -    Signed-off-by: Sibi Siddharthan <sibisiv.siddharthan@gmail.com>
     +    Signed-off-by: Sibi Siddharthan <sibisiddharthan.github@gmail.com>
      
       ## .github/workflows/main.yml ##
      @@ .github/workflows/main.yml: jobs:
     @@ .github/workflows/main.yml: jobs:
         regular:
           needs: ci-config
           if: needs.ci-config.outputs.enabled == 'yes'
     -@@ .github/workflows/main.yml: jobs:
     -     steps:
     -     - uses: actions/checkout@v1
     -     - run: ci/install-dependencies.sh
     --    - run: ci/test-documentation.sh
     -+    - run: ci/test-documentation.sh
     - \ No newline at end of file
-- 
gitgitgadget
Previous: Sibi SiddharthanNext: Sibi Siddharthan via GitGitGadget
Message 144 of 179 in “CMake build system for git”
  1. 0/8 CMake build system for gitSibi Siddharthan via GitGitGadget, Apr 24, 2020
  2. 2/8 cmake: generate the shell/perl/python scripts and templates, translationsSibi Siddharthan via GitGitGadget, Apr 24, 2020
  3. Danh DoanApr 24, 2020
  4. Sibi SiddharthanApr 24, 2020
  5. 3/8 cmake: installation support for gitSibi Siddharthan via GitGitGadget, Apr 24, 2020
  6. Danh DoanApr 24, 2020
  7. Sibi SiddharthanApr 24, 2020
  8. 1/8 Introduce CMake support for configuring Git on LinuxSibi Siddharthan via GitGitGadget, Apr 24, 2020
  9. Danh DoanApr 24, 2020
  10. Sibi SiddharthanApr 24, 2020
  11. Danh DoanApr 24, 2020
  12. Sibi SiddharthanApr 25, 2020
  13. Johannes SchindelinApr 25, 2020
  14. brian m. carlsonApr 25, 2020
  15. Randall S. BeckerApr 25, 2020
  16. Philip OakleyApr 25, 2020
  17. Sibi SiddharthanApr 25, 2020
  18. 5/8 cmake: support for testing git when building out of the source treeSibi Siddharthan via GitGitGadget, Apr 24, 2020
  19. Danh DoanApr 24, 2020
  20. Sibi SiddharthanApr 24, 2020
  21. Danh DoanApr 24, 2020
  22. Sibi SiddharthanApr 25, 2020
  23. 7/8 cmake: support for building git on windows with msvc and clang.Sibi Siddharthan via GitGitGadget, Apr 24, 2020
  24. Danh DoanApr 24, 2020
  25. Sibi SiddharthanApr 24, 2020
  26. 4/8 cmake: support for testing git with ctestSibi Siddharthan via GitGitGadget, Apr 24, 2020
  27. Danh DoanApr 24, 2020
  28. Sibi SiddharthanApr 24, 2020
  29. 8/8 ci: modification of main.yml to use cmake for vs-build jobSibi Siddharthan via GitGitGadget, Apr 24, 2020
  30. Danh DoanApr 24, 2020
  31. Sibi SiddharthanApr 24, 2020
  32. Johannes SchindelinApr 24, 2020
  33. 6/8 cmake: support for building git on windows with mingwSibi Siddharthan via GitGitGadget, Apr 24, 2020
  34. Philip OakleyApr 24, 2020
  35. Sibi SiddharthanApr 24, 2020
  36. Philip OakleyApr 25, 2020
  37. Sibi SiddharthanApr 25, 2020
  38. Junio C HamanoApr 24, 2020
  39. Sibi SiddharthanApr 24, 2020
  40. Junio C HamanoApr 24, 2020
  41. Sibi SiddharthanApr 25, 2020
  42. Philip OakleyApr 25, 2020
  43. Johannes SchindelinApr 25, 2020
  44. Sibi SiddharthanApr 25, 2020
  45. Johannes SchindelinApr 25, 2020
  46. Sibi SiddharthanApr 25, 2020
  47. Johannes SchindelinApr 25, 2020
  48. Sibi SiddharthanApr 25, 2020
  49. Danh DoanApr 26, 2020
  50. Sibi SiddharthanApr 26, 2020
  51. Johannes SchindelinApr 25, 2020
  52. Jeff KingApr 27, 2020
  53. Jeff KingApr 27, 2020
  54. Danh DoanApr 28, 2020
  55. Jeff KingApr 28, 2020
  56. Sibi SiddharthanApr 29, 2020
  57. Johannes SchindelinMay 1, 2020
  58. Sibi SiddharthanMay 2, 2020
  59. Randall S. BeckerMay 2, 2020
  60. Junio C HamanoMay 2, 2020
  61. Sibi SiddharthanMay 3, 2020
  62. Junio C HamanoMay 3, 2020
  63. Konstantin TokarevMay 3, 2020
  64. Junio C HamanoMay 3, 2020
  65. Johannes SchindelinMay 4, 2020
  66. Konstantin TokarevMay 4, 2020
  67. Sibi SiddharthanMay 5, 2020
  68. Junio C HamanoMay 5, 2020
  69. Sibi SiddharthanMay 5, 2020
  70. Junio C HamanoMay 5, 2020
  71. Sibi SiddharthanMay 6, 2020
  72. Đoàn Trần Công DanhMay 7, 2020
  73. Johannes SchindelinMay 6, 2020
  74. Johannes SchindelinMay 7, 2020
  75. Danh DoanMay 2, 2020
  76. Sibi SiddharthanMay 2, 2020
  77. Danh DoanMay 2, 2020
  78. Sibi SiddharthanMay 2, 2020
  79. Junio C HamanoApr 27, 2020
  80. Michal SuchánekApr 27, 2020
  81. Jeff KingApr 27, 2020
  82. Elijah NewrenApr 27, 2020
  83. Junio C HamanoApr 27, 2020
  84. Jeff KingApr 28, 2020
  85. 00/11 CMake build system for gitSibi Siddharthan via GitGitGadget, May 12, 2020
  86. 02/11 cmake: generate the shell/perl/python scripts and templates, translationsSibi Siddharthan via GitGitGadget, May 12, 2020
  87. Junio C HamanoMay 12, 2020
  88. Sibi SiddharthanMay 13, 2020
  89. 01/11 Introduce CMake support for configuring Git on LinuxSibi Siddharthan via GitGitGadget, May 12, 2020
  90. Junio C HamanoMay 12, 2020
  91. Sibi SiddharthanMay 13, 2020
  92. 05/11 cmake: support for testing git when building out of the source treeSibi Siddharthan via GitGitGadget, May 12, 2020
  93. 03/11 cmake: installation support for gitSibi Siddharthan via GitGitGadget, May 12, 2020
  94. 06/11 cmake: support for building git on windows with mingwSibi Siddharthan via GitGitGadget, May 12, 2020
  95. Đoàn Trần Công DanhMay 14, 2020
  96. Sibi SiddharthanMay 14, 2020
  97. 04/11 cmake: support for testing git with ctestSibi Siddharthan via GitGitGadget, May 12, 2020
  98. 07/11 cmake: support for building git on windows with msvc and clang.Sibi Siddharthan via GitGitGadget, May 12, 2020
  99. 08/11 cmake: added checks for struct stat and libiconvSibi Siddharthan via GitGitGadget, May 12, 2020
  100. Junio C HamanoMay 12, 2020
  101. Sibi SiddharthanMay 13, 2020
  102. Junio C HamanoMay 14, 2020
  103. Đoàn Trần Công DanhMay 14, 2020
  104. Sibi SiddharthanMay 14, 2020
  105. 11/11 ci: modification of main.yml to use cmake for vs-build jobSibi Siddharthan via GitGitGadget, May 12, 2020
  106. Junio C HamanoMay 12, 2020
  107. Sibi SiddharthanMay 13, 2020
  108. Sibi SiddharthanMay 25, 2020
  109. Junio C HamanoMay 25, 2020
  110. Sibi SiddharthanMay 25, 2020
  111. Johannes SchindelinMay 25, 2020
  112. 10/11 cmake: parse the makefile for the sources.Sibi Siddharthan via GitGitGadget, May 12, 2020
  113. Junio C HamanoMay 12, 2020
  114. Sibi SiddharthanMay 13, 2020
  115. Junio C HamanoMay 13, 2020
  116. 09/11 cmake: relocated script file contrib/buildsystemsSibi Siddharthan via GitGitGadget, May 12, 2020
  117. Junio C HamanoMay 12, 2020
  118. Sibi SiddharthanMay 13, 2020
  119. 0/8 CMake build system for gitSibi Siddharthan via GitGitGadget, May 29, 2020
  120. 1/8 Introduce CMake support for configuring GitSibi Siddharthan via GitGitGadget, May 29, 2020
  121. Junio C HamanoMay 29, 2020
  122. Sibi SiddharthanMay 30, 2020
  123. Junio C HamanoMay 31, 2020
  124. Johannes SchindelinMay 30, 2020
  125. Đoàn Trần Công DanhMay 30, 2020
  126. 3/8 cmake: installation support for gitSibi Siddharthan via GitGitGadget, May 29, 2020
  127. 2/8 cmake: generate the shell/perl/python scripts and templates, translationsSibi Siddharthan via GitGitGadget, May 29, 2020
  128. Junio C HamanoMay 29, 2020
  129. Sibi SiddharthanMay 30, 2020
  130. Sibi SiddharthanJun 8, 2020
  131. Junio C HamanoJun 8, 2020
  132. 4/8 cmake: support for testing git with ctestSibi Siddharthan via GitGitGadget, May 29, 2020
  133. Đoàn Trần Công DanhMay 30, 2020
  134. Sibi SiddharthanMay 30, 2020
  135. Đoàn Trần Công DanhMay 31, 2020
  136. 6/8 cmake: support for building git on windows with mingwSibi Siddharthan via GitGitGadget, May 29, 2020
  137. 5/8 cmake: support for testing git when building out of the source treeSibi Siddharthan via GitGitGadget, May 29, 2020
  138. 7/8 cmake: support for building git on windows with msvc and clang.Sibi Siddharthan via GitGitGadget, May 29, 2020
  139. Đoàn Trần Công DanhMay 30, 2020
  140. Sibi SiddharthanMay 30, 2020
  141. 8/8 ci: modification of main.yml to use cmake for vs-build jobSibi Siddharthan via GitGitGadget, May 29, 2020
  142. Đoàn Trần Công DanhMay 30, 2020
  143. Sibi SiddharthanMay 30, 2020
  144. 0/8 CMake build system for gitSibi Siddharthan via GitGitGadget, Jun 12, 2020
  145. 3/8 cmake: installation support for gitSibi Siddharthan via GitGitGadget, Jun 12, 2020
  146. 1/8 Introduce CMake support for configuring GitSibi Siddharthan via GitGitGadget, Jun 12, 2020
  147. Øystein WalleJun 15, 2020
  148. Sibi SiddharthanJun 15, 2020
  149. 4/8 cmake: support for testing git with ctestSibi Siddharthan via GitGitGadget, Jun 12, 2020
  150. Øystein WalleJun 15, 2020
  151. Sibi SiddharthanJun 15, 2020
  152. 2/8 cmake: generate the shell/perl/python scripts and templates, translationsSibi Siddharthan via GitGitGadget, Jun 12, 2020
  153. 5/8 cmake: support for testing git when building out of the source treeSibi Siddharthan via GitGitGadget, Jun 12, 2020
  154. 7/8 cmake: support for building git on windows with msvc and clang.Sibi Siddharthan via GitGitGadget, Jun 12, 2020
  155. Øystein WalleJun 15, 2020
  156. Sibi SiddharthanJun 15, 2020
  157. 6/8 cmake: support for building git on windows with mingwSibi Siddharthan via GitGitGadget, Jun 12, 2020
  158. Øystein WalleJun 15, 2020
  159. Sibi SiddharthanJun 15, 2020
  160. Junio C HamanoJun 18, 2020
  161. Sibi SiddharthanJun 18, 2020
  162. Junio C HamanoJun 18, 2020
  163. Sibi SiddharthanJun 18, 2020
  164. Junio C HamanoJun 18, 2020
  165. Sibi SiddharthanJun 19, 2020
  166. Junio C HamanoJun 19, 2020
  167. 8/8 ci: modification of main.yml to use cmake for vs-build jobSibi Siddharthan via GitGitGadget, Jun 12, 2020
  168. 0/8 CMake build system for gitSibi Siddharthan via GitGitGadget, Jun 26, 2020
  169. 1/8 Introduce CMake support for configuring GitSibi Siddharthan via GitGitGadget, Jun 26, 2020
  170. 3/8 cmake: installation support for gitSibi Siddharthan via GitGitGadget, Jun 26, 2020
  171. 7/8 cmake: support for building git on windows with msvc and clang.Sibi Siddharthan via GitGitGadget, Jun 26, 2020
  172. 6/8 cmake: support for building git on windows with mingwSibi Siddharthan via GitGitGadget, Jun 26, 2020
  173. David AguilarJun 30, 2020
  174. Sibi SiddharthanJul 1, 2020
  175. Sibi SiddharthanJul 1, 2020
  176. 2/8 cmake: generate the shell/perl/python scripts and templates, translationsSibi Siddharthan via GitGitGadget, Jun 26, 2020
  177. 8/8 ci: modification of main.yml to use cmake for vs-build jobSibi Siddharthan via GitGitGadget, Jun 26, 2020
  178. 5/8 cmake: support for testing git when building out of the source treeSibi Siddharthan via GitGitGadget, Jun 26, 2020
  179. 4/8 cmake: support for testing git with ctestSibi Siddharthan via GitGitGadget, Jun 26, 2020

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.