summaryrefslogtreecommitdiff
path: root/Makefile
AgeCommit message (Collapse)AuthorFilesLines
2011-05-26Merge branch 'kk/maint-prefix-in-config-mak' into maintLibravatar Junio C Hamano1-9/+9
* kk/maint-prefix-in-config-mak: Honor $(prefix) set in config.mak* when defining ETC_GIT* Revert "Honor $(prefix) set in config.mak* when defining ETC_GIT* and sysconfdir" Honor $(prefix) set in config.mak* when defining ETC_GIT* and sysconfdir
2011-05-09Honor $(prefix) set in config.mak* when defining ETC_GIT*Libravatar Johannes Sixt1-9/+9
Notice that the prefix specified for the build influenced the definitions of ETC_GITCONFIG and ETC_GITATTRIBUTES only when it was exactly '/usr'. Kacper Kornet noticed that this was furthermore only the case when the build was triggered using 'make prefix=/usr', i.e., the prefix was given on the command line; it did not work when the prefix was specified in config.mak because this file is included much later in the Makefile. To fix this, move the conditional after the inclusion of config.mak. Additionally, it is desirable to specify the etc directory for a build (for example, a build with prefix /usr/local may still want to have the system configuration in /etc/gitconfig). For this purpose, promote the variable 'sysconfdir' from a helper variable to a configuration variable. The prefix check that was moved must now be wrapped so that it does not override sysconfdir setting given in config.mak. Signed-off-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-05-09Revert "Honor $(prefix) set in config.mak* when defining ETC_GIT* and ↵Libravatar Junio C Hamano1-10/+9
sysconfdir" This reverts commit 2910bf56a4ffc13c398fb04ba32910cb3b724091, as it does not really solve the issue of making $(sysconfigdir) any more useful than it currently is.
2011-05-08Remove gitweb/gitweb.cgi and other legacy targets from main MakefileLibravatar Jakub Narebski1-26/+0
Now that there is gitweb/Makefile, let's leave only "gitweb" and "install-gitweb" targets in main Makefile. Those targets just delegate to gitweb's Makefile. Requested-by: Junio C Hamano <gitster@pobox.com> Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-05-08git-instaweb: Simplify build dependency on gitwebLibravatar Jakub Narebski1-1/+1
Since c0cb4ed (git-instaweb: Configure it to work with new gitweb structure, 2010-05-28) git-instaweb does not re-create gitweb.cgi etc., but makes use of installed gitweb. Therefore simplify git-instaweb dependency on gitweb subsystem in main Makefile from 'gitweb/gitweb.cgi gitweb/static/gitweb.css gitweb/static/gitweb.js' to simply 'gitweb'. This is preparation for splitting gitweb.perl script, and for splitting gitweb.js (to be reassembled / combined on build). This way we don't have to duplicate parts of gitweb/Makefile in main Makefile... it is also more correct description of git-instaweb dependency. Reported-by: Junio C Hamano <gitster@pobox.com> Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-04-28Honor $(prefix) set in config.mak* when defining ETC_GIT* and sysconfdirLibravatar Kacper Kornet1-9/+10
Definitions of ETC_GITCONFIG, ETC_GITATTRIBUTES and sysconfdir depend on value of prefix. As prefix can be changed in config.mak.autogen, all if blocks with conditions based on prefix should be placed after the file is included in Makefile. Signed-off-by: Kacper Kornet <draenog@pld-linux.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-04-11Makefile: extract Q_() source strings as ngettext()Libravatar Ævar Arnfjörð Bjarmason1-1/+2
The Q_() wrapper added by 0c9ea33 (i18n: add stub Q_() wrapper for ngettext, 2011-03-09) needs to be noticed by xgettext. Add an appropriate --keyword option to the Makefile, so that "make pot" would notice the strings in the plural form marked with the wrapper. Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-04-01Merge branch 'sb/sparse-more'Libravatar Junio C Hamano1-1/+1
* sb/sparse-more: Makefile: Cover more files with make check
2011-03-23Merge branch 'jn/maint-c99-format'Libravatar Junio C Hamano1-14/+0
* jn/maint-c99-format: unbreak and eliminate NO_C99_FORMAT mktag: avoid %td in format string
2011-03-21Makefile: Cover more files with make checkLibravatar Stephen Boyd1-1/+1
After the builtin/ move 'make check' doesn't cover the builtin/ directory. We could just add builtin/*.c but lets just use GIT_OBJS instead so we cover future movement of the source files. Signed-off-by: Stephen Boyd <bebarino@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-03-20Merge branch 'mr/hpux' into maintLibravatar Junio C Hamano1-0/+1
* mr/hpux: git-compat-util.h: Honor HP C's noreturn attribute Makefile: add NO_FNMATCH_CASEFOLD to HP-UX section
2011-03-20Merge branch 'ae/better-template-failure-report' into maintLibravatar Junio C Hamano1-0/+1
* ae/better-template-failure-report: Improve error messages when temporary file creation fails
2011-03-19Merge branch 'ab/i18n-basic'Libravatar Junio C Hamano1-0/+28
* ab/i18n-basic: i18n: "make distclean" should clean up after "make pot" i18n: Makefile: "pot" target to extract messages marked for translation i18n: add stub Q_() wrapper for ngettext i18n: do not poison translations unless GIT_GETTEXT_POISON envvar is set i18n: add GETTEXT_POISON to simulate unfriendly translator i18n: add no-op _() and N_() wrappers commit, status: use status_printf{,_ln,_more} helpers commit: refer to commit template as s->fp wt-status: add helpers for printing wt-status lines Conflicts: builtin/commit.c
2011-03-17unbreak and eliminate NO_C99_FORMATLibravatar Jonathan Nieder1-14/+0
In the spirit of v1.5.0.2~21 (Check for PRIuMAX rather than NO_C99_FORMAT in fast-import.c, 2007-02-20), use PRIuMAX from git-compat-util.h on all platforms instead of C99-specific formats like %zu with dangerous fallbacks to %u or %lu. So now C99-challenged platforms can build git without provoking warnings or errors from printf, even if pointers do not have the same size as an int or long. The need for a fallback PRIuMAX is detected in git-compat-util.h with "#ifndef PRIuMAX". So while at it, simplify the Makefile and configure script by eliminating the NO_C99_FORMAT knob altogether. Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-03-15Merge branch 'mr/hpux'Libravatar Junio C Hamano1-0/+1
* mr/hpux: git-compat-util.h: Honor HP C's noreturn attribute Makefile: add NO_FNMATCH_CASEFOLD to HP-UX section
2011-03-09i18n: "make distclean" should clean up after "make pot"Libravatar Jonathan Nieder1-0/+1
This is in "make distclean" and not "make clean" to avoid needlessly changing the POT-Creation-Date in the following scenario: make clean; # cleaning up after an old build git pull make pot; # regenerate po template if necessary msgmerge po/my_language.po po/git.pot Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-03-09i18n: Makefile: "pot" target to extract messages marked for translationLibravatar Ævar Arnfjörð Bjarmason1-0/+16
Add rules to generate a template (po/git.pot) listing messages marked for translation in the C portion of git. To get started translating, just run "make pot". Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-03-08i18n: do not poison translations unless GIT_GETTEXT_POISON envvar is setLibravatar Jonathan Nieder1-1/+4
Tweak the GETTEXT_POISON facility so it is activated at run time instead of compile time. If the GIT_GETTEXT_POISON environment variable is set, _(msg) will result in gibberish as before; but if the GIT_GETTEXT_POISON variable is not set, it will return the message for human-readable output. So the behavior of mistranslated and untranslated git can be compared without rebuilding git in between. For simplicity we always set the GIT_GETTEXT_POISON variable in tests. This does not affect builds without the GETTEXT_POISON compile-time option set, so non-i18n git will not be slowed down. Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-03-08i18n: add GETTEXT_POISON to simulate unfriendly translatorLibravatar Ævar Arnfjörð Bjarmason1-0/+7
Add a new GETTEXT_POISON compile-time parameter to make _(msg) always return gibberish. So now you can run make GETTEXT_POISON=YesPlease to get a copy of git that functions correctly (one hopes) but produces output that is in nobody's native language at all. This is a debugging aid for people who are working on the i18n part of the system, to make sure that they are not marking plumbing messages that should never be translated with _(). As new strings get marked for translation, naturally a number of tests will be broken in this mode. Tests that depend on output from Porcelain will need to be marked with the new C_LOCALE_OUTPUT test prerequisite. Newly failing tests that do not depend on output from Porcelain would be bugs due to messages that should not have been marked for translation. Note that the string we're using ("# GETTEXT POISON #") intentionally starts the pound sign. Some of Git's tests such as t3404-rebase-interactive.sh rely on interactive editing with a fake editor, and will needlessly break if the message doesn't start with something the interactive editor considers a comment. A future patch will fix fix the underlying cause of that issue by adding "#" characters to the commit advice automatically. Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-03-08i18n: add no-op _() and N_() wrappersLibravatar Ævar Arnfjörð Bjarmason1-0/+1
The _ function is for translating strings into the user's chosen language. The N_ macro just marks translatable strings for the xgettext(1) tool without translating them; it is intended for use in contexts where a function call cannot be used. So, for example: fprintf(stderr, _("Expansion of alias '%s' failed; " "'%s' is not a git command\n"), cmd, argv[0]); and const char *unpack_plumbing_errors[NB_UNPACK_TREES_ERROR_TYPES] = { /* ERROR_WOULD_OVERWRITE */ N_("Entry '%s' would be overwritten by merge. Cannot merge."), [...] Define such _ and N_ in a new gettext.h and include it in cache.h, so they can be used everywhere. Each just returns its argument for now. _ is a function rather than a macro like N_ to avoid the temptation to use _("foo") as a string literal (which would be a compile-time error once _(s) expands to an expression for the translation of s). Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-03-08Makefile: add NO_FNMATCH_CASEFOLD to HP-UX sectionLibravatar Michal Rokos1-0/+1
fnmatch() on HP-UX does not support the GNU FNM_CASEFOLD extension, so set NO_FNMATCH_CASEFOLD to use the internal fnmatch implementation. Signed-off-by: Michal Rokos <michal.rokos@nextsoft.cz> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-02-09Merge branch 'ae/better-template-failure-report'Libravatar Junio C Hamano1-0/+1
* ae/better-template-failure-report: Improve error messages when temporary file creation fails
2010-12-28Merge branch 'nd/setup'Libravatar Junio C Hamano1-0/+1
* nd/setup: (47 commits) setup_work_tree: adjust relative $GIT_WORK_TREE after moving cwd git.txt: correct where --work-tree path is relative to Revert "Documentation: always respect core.worktree if set" t0001: test git init when run via an alias Remove all logic from get_git_work_tree() setup: rework setup_explicit_git_dir() setup: clean up setup_discovered_git_dir() t1020-subdirectory: test alias expansion in a subdirectory setup: clean up setup_bare_git_dir() setup: limit get_git_work_tree()'s to explicit setup case only Use git_config_early() instead of git_config() during repo setup Add git_config_early() git-rev-parse.txt: clarify --git-dir t1510: setup case #31 t1510: setup case #30 t1510: setup case #29 t1510: setup case #28 t1510: setup case #27 t1510: setup case #26 t1510: setup case #25 ...
2010-12-27setup_work_tree: adjust relative $GIT_WORK_TREE after moving cwdLibravatar Nguyễn Thái Ngọc Duy1-0/+1
When setup_work_tree() is called, it moves cwd to $GIT_WORK_TREE and makes internal copy of $GIT_WORK_TREE absolute. The environt variable, if set by user, remains unchanged. If the variable is relative, it is no longer correct because its base dir has changed. Instead of making $GIT_WORK_TREE absolute too, we just say "." and let subsequent git processes handle it. Reported-by: Michel Briand <michelbriand@free.fr> Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-12-22Makefile: add NO_FNMATCH_CASEFOLD to IRIX sectionsLibravatar Brandon Casey1-0/+2
IRIX's fnmatch() does not support the GNU FNM_CASEFOLD extension, so set NO_FNMATCH_CASEFOLD so that the internal fnmatch implementation will be used. Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-12-21Improve error messages when temporary file creation failsLibravatar Arnout Engelen1-0/+1
Before, when creating a temporary file failed, a generic 'Unable to create temporary file' message was printed. In some cases this could lead to confusion as to which directory should be checked for correct permissions etc. This patch adds the template for the temporary filename to the error message, converting it to an absolute path if needed. A test verifies that the template is indeed printed when pointing to a nonexistent or unwritable directory. A copy of the original template is made in case mkstemp clears the template. Signed-off-by: Arnout Engelen <arnouten@bzzt.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-12-16Merge branch 'rj/msvc-fix'Libravatar Junio C Hamano1-1/+1
* rj/msvc-fix: msvc: Fix macro redefinition warnings msvc: Fix build by adding missing INTMAX_MAX define msvc: git-daemon.exe: Fix linker "unresolved externals" error msvc: Fix compilation errors in compat/win32/sys/poll.c
2010-12-14Merge branch 'maint'Libravatar Junio C Hamano1-0/+4
* maint: Prepare for 1.7.3.4 use persistent memory for rejected paths do not overwrite files in leading path lstat_cache: optionally return match_len add function check_ok_to_remove() t7607: add leading-path tests t7607: use test-lib functions and check MERGE_HEAD Do not link with -lcrypto under NO_OPENSSL Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-12-14Merge branch 'jc/maint-no-openssl-build-fix' into maintLibravatar Junio C Hamano1-0/+4
* jc/maint-no-openssl-build-fix: Do not link with -lcrypto under NO_OPENSSL
2010-12-14Merge branch 'tc/http-urls-ends-with-slash' into maintLibravatar Junio C Hamano1-1/+1
* tc/http-urls-ends-with-slash: http-fetch: rework url handling http-push: add trailing slash at arg-parse time, instead of later on http-push: check path length before using it http-push: Normalise directory names when pushing to some WebDAV servers http-backend: use end_url_with_slash() url: add str wrapper for end_url_with_slash() shift end_url_with_slash() from http.[ch] to url.[ch] t5550-http-fetch: add test for http-fetch t5550-http-fetch: add missing '&&'
2010-12-12Merge branch 'ef/help-cmd-prefix'Libravatar Junio C Hamano1-0/+2
* ef/help-cmd-prefix: help: always suggest common-cmds if prefix of cmd
2010-12-12Merge branch 'tc/http-urls-ends-with-slash'Libravatar Junio C Hamano1-1/+1
* tc/http-urls-ends-with-slash: http-fetch: rework url handling http-push: add trailing slash at arg-parse time, instead of later on http-push: check path length before using it http-push: Normalise directory names when pushing to some WebDAV servers http-backend: use end_url_with_slash() url: add str wrapper for end_url_with_slash() shift end_url_with_slash() from http.[ch] to url.[ch] t5550-http-fetch: add test for http-fetch t5550-http-fetch: add missing '&&'
2010-12-12Merge branch 'ef/win32-dirent'Libravatar Junio C Hamano1-2/+5
* ef/win32-dirent: win32: use our own dirent.h msvc: opendir: handle paths ending with a slash win32: dirent: handle errors msvc: opendir: do not start the search msvc: opendir: allocate enough memory msvc: opendir: fix malloc-failure Conflicts: Makefile
2010-12-12Merge branch 'jk/asciidoc-update'Libravatar Junio C Hamano1-5/+5
* jk/asciidoc-update: docs: default to more modern toolset
2010-12-10Makefile: transport-helper uses thread-utils.hLibravatar Jonathan Nieder1-2/+1
transport-helper.o gained a dependency on thread-utils.h in 7851b1e (remote-fd/ext: finishing touches after code review, 2010-11-17). Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-12-09msvc: git-daemon.exe: Fix linker "unresolved externals" errorLibravatar Ramsay Jones1-1/+1
The msvc linker complains about external symbols referenced by the new poll() emulation code. In particular, it complains about the DispatchMessage(), PeekMessage(), TranslateMessage() and MsgWaitForMultipleObjects() functions. In order to satisfy the external references, we link against the user32.lib library. Signed-off-by: Ramsay Jones <ramsay@ramsay1.demon.co.uk> Acked-by: Erik Faye-Lund <kusmabite@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-12-08Do not link with -lcrypto under NO_OPENSSLLibravatar Junio C Hamano1-0/+4
With 401857c (imap-send: link against libcrypto for HMAC and others, 2010-11-24) we started linking imap-send unconditionally with -lcrypto by mistake; disable this when we are building under NO_OPENSSL. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-12-08Merge branch 'il/remote-fd-ext'Libravatar Junio C Hamano1-0/+2
* il/remote-fd-ext: remote-fd/ext: finishing touches after code review git-remote-ext git-remote-fd Add bidirectional_transfer_loop() Conflicts: compat/mingw.h
2010-12-08Merge branch 'jh/notes-merge'Libravatar Junio C Hamano1-0/+2
* jh/notes-merge: (23 commits) Provide 'git merge --abort' as a synonym to 'git reset --merge' cmd_merge(): Parse options before checking MERGE_HEAD Provide 'git notes get-ref' to easily retrieve current notes ref git notes merge: Add testcases for merging notes trees at different fanouts git notes merge: Add another auto-resolving strategy: "cat_sort_uniq" git notes merge: --commit should fail if underlying notes ref has moved git notes merge: List conflicting notes in notes merge commit message git notes merge: Manual conflict resolution, part 2/2 git notes merge: Manual conflict resolution, part 1/2 Documentation: Preliminary docs on 'git notes merge' git notes merge: Add automatic conflict resolvers (ours, theirs, union) git notes merge: Handle real, non-conflicting notes merges builtin/notes.c: Refactor creation of notes commits. git notes merge: Initial implementation handling trivial merges only builtin/notes.c: Split notes ref DWIMmery into a separate function notes.c: Use two newlines (instead of one) when concatenating notes (trivial) t3303: Indent with tabs instead of spaces for consistency notes.h/c: Propagate combine_notes_fn return value to add_note() and beyond notes.h/c: Allow combine_notes functions to remove notes notes.c: Reorder functions in preparation for next commit ... Conflicts: builtin.h
2010-12-07Makefile: dependencies for vcs-svn testsLibravatar Jonathan Nieder1-1/+5
The vcs-svn tests (test-treap.o et al) depend on the vcs-svn headers for declarations and inline functions. Declare the dependency. While at it, declare a dependency of the vcs-svn objects (vcs-svn/string_pool.o et al) on $(LIB_H) to reflect use within the vcs-svn library of git-compat-util.h and cache.h. Without this change, tweaks to inline functions in those headers do not provoke rebuilds of the corresponding tests[*], making such changes unnecessarily difficult to test. Before: $ touch vcs-svn/*.h && make test-treap $ After: $ touch vcs-svn/*.h && make test-treap CC test-treap.o LINK test-treap $ [*] unless COMPUTE_HEADER_DEPENDENCIES is enabled Detected with "make CHECK_HEADER_DEPENDENCIES=1". Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-12-05help: always suggest common-cmds if prefix of cmdLibravatar Erik Faye-Lund1-0/+2
If someone runs "git st", the command "git status" is not suggested because it's not one of the closest levenshtein-neighbour. Reserve the distance of 0 for common commands where the entered command is a prefixe, as these are often more likely to be what the user meant. This way, "git status" is the first suggestion, while a list of possible typos are still suggested as well. Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-12-03Merge branch 'jn/thinner-wrapper'Libravatar Junio C Hamano1-0/+1
* jn/thinner-wrapper: Remove pack file handling dependency from wrapper.o pack-objects: mark file-local variable static wrapper: give zlib wrappers their own translation unit strbuf: move strbuf_branchname to sha1_name.c path helpers: move git_mkstemp* to wrapper.c wrapper: move odb_* to environment.c wrapper: move xmmap() to sha1_file.c
2010-12-03Merge branch 'jj/icase-directory'Libravatar Junio C Hamano1-4/+23
* jj/icase-directory: Support case folding in git fast-import when core.ignorecase=true Support case folding for git add when core.ignorecase=true Add case insensitivity support when using git ls-files Add case insensitivity support for directories when using git status Case insensitivity support for .gitignore via core.ignorecase Add string comparison functions that respect the ignore_case variable. Makefile & configure: add a NO_FNMATCH_CASEFOLD flag Makefile & configure: add a NO_FNMATCH flag Conflicts: Makefile config.mak.in configure.ac fast-import.c
2010-11-29Merge branch 'md/interix'Libravatar Junio C Hamano1-0/+28
* md/interix: Interix: add configure checks add support for the SUA layer (interix; windows) Conflicts: git-compat-util.h
2010-11-26shift end_url_with_slash() from http.[ch] to url.[ch]Libravatar Tay Ray Chuan1-1/+1
This allows non-http/curl users to access it too (eg. http-backend.c). Update include headers in end_url_with_slash() users too. Signed-off-by: Tay Ray Chuan <rctay89@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-11-24docs: default to more modern toolsetLibravatar Jeff King1-5/+5
When the ASCIIDOC8 and ASCIIDOC_NO_ROFF knobs were built, many people were still on asciidoc 7 and using older versions of docbook-xsl. These days, even the almost 2-year-old Debian stable needs these knobs turned. So let's turn them by default. The new knobs ASCIIDOC7 and ASCIIDOC_ROFF can be used to get the old behavior if people are on older systems. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-11-24Merge branch 'maint'Libravatar Junio C Hamano1-1/+1
* maint: imap-send: link against libcrypto for HMAC and others git-send-email.perl: Deduplicate "to:" and "cc:" entries with names mingw: do not set errno to 0 on success
2010-11-24Merge branch 'ab/makefile-track-cc' into maintLibravatar Junio C Hamano1-1/+1
* ab/makefile-track-cc: Makefile: add CC to TRACK_CFLAGS
2010-11-24imap-send: link against libcrypto for HMAC and othersLibravatar Diego Elio Pettenò1-1/+1
When using stricter linkers, such as GNU gold or Darwin ld, transitive dependencies are not counted towards symbol resolution. If we don't link imap-send to libcrypto, we'll have undefined references to the HMAC_*, EVP_* and ERR_* functions families. Signed-off-by: Diego Elio Pettenò <flameeyes@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-11-23win32: use our own dirent.hLibravatar Erik Faye-Lund1-2/+5
The mingw-runtime implemenation of opendir, readdir and closedir sets errno to 0 on success, something that POSIX explicitly forbids. 3ba7a06 ("A loose object is not corrupt if it cannot be read due to EMFILE") introduce a dependency on this behaviour, leading to a broken "git clone" on Windows. compat/mingw.c contains an implementation of readdir, and compat/msvc.c contains implementations of opendir and closedir. Move these to compat/win32/dirent.[ch], and change to our own DIR structure at the same time. This provides a generic Win32-implementation of opendir, readdir and closedir which works on both MinGW and MSVC and does not reset errno, and as a result git clone is working again on Windows. Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>