Age | Commit message (Collapse) | Author |
|
Since 5598b0bd63f690c151074494ce47ef872f004ab4, clang -v is used to
detect the clang version. The version number was expected to come after
the word "version". For Apple clang, this doesn't work as it has its
own versioning scheme.
The version number is now first searched after the string
"based on LLVM". This works for Apple clang before version 7, and also
for e.g. Ubuntu's clang up to version 3.7. If it's not found and the
version string contains "Apple LLVM version", clang version 3.7 is
assumed, which is the version that comes with Xcode 7. Otherwise, the
version number is still expected after the word "version", which works
for very old Apple clang versions.
Ref: https://trac.macports.org/wiki/XcodeVersionInfo
Fixes https://github.com/curl/curl/issues/1606
Closes https://github.com/curl/curl/pull/1607
|
|
It usually warns when using commas instead of semicolons or other
operators by accident.
Closes https://github.com/curl/curl/pull/1578
|
|
It usually warns when forgetting to declare TU-local variables static.
Closes https://github.com/curl/curl/pull/1578
|
|
Enable -Wdouble-promotion for both GCC and clang. It warns on implicit
promotion from float to double.
Closes https://github.com/curl/curl/pull/1578
|
|
Previously, that warning was only implicitly active in C90 mode.
Enable it unconditionally as already done for GCC.
Closes https://github.com/curl/curl/pull/1578
|
|
Closes #1528
|
|
Otherwise, they are removed in the final configure file.
Also changed sed to "$SED" like in most other calls in this file.
|
|
"clang -dumpversion" always returns "4.2.1", the GCC version that clang
was initially compatible to. Use "clang -v" instead, which returns the
actual clang version.
Fixes https://github.com/curl/curl/issues/1522
Closes https://github.com/curl/curl/pull/1523
|
|
clang 2.9+ supports -Wshift-sign-overflow, which warns about undefined
behavior on signed left shifts when shifting by too many places.
Ref: https://github.com/curl/curl/issues/1516
Closes https://github.com/curl/curl/pull/1517
|
|
- Change prepends to appends because user's LDFLAGS and CPPFLAGS should
always come first so they're searched before ours.
Bug: https://github.com/curl/curl/issues/1420
Reported-by: Helmut K. C. Tessarek
|
|
-Og, introduced in GCC 4.8, optimizes for debugging experience.
-Ofast, introduced in GCC 4.7, builds on -O3 and enables further
optimizations breaking strict standards compliance.
When specified in CFLAGS, these were always overridden by -O0 or -O2.
Fix this by adding them to flags_opt_all.
Ref: https://gcc.gnu.org/onlinedocs/gcc-4.8.0/gcc/Optimize-Options.html
Ref: https://github.com/curl/curl/pull/1404#issuecomment-296401570
Closes https://github.com/curl/curl/pull/1440
|
|
This adds -Werror-implicit-function-declaration for GCC 2.95+ so that
these errors are visible at the point where they occur instead of only
at link time.
Implicit function declarations are illegal in C99 and C++ anyway, and
the same warning has been turned into an error for ICC in commit
3072c5b8a127057aa922b7c51051bbb4a630b091.
Ref: https://gcc.gnu.org/onlinedocs/gcc-2.95.2/gcc_2.html#SEC8
Ref: https://curl.haxx.se/mail/lib-2017-04/0001.html
Closes https://github.com/curl/curl/pull/1419
|
|
Closes #1356
|
|
Better handle options conflicts that can occur if --enable-pthreads.
Bug: https://github.com/curl/curl/pull/1295
Reported-by: Marc-Antoine Perennou
|
|
We're mostly saying just "curl" in lower case these days so here's a big
cleanup to adapt to this reality. A few instances are left as the
project could still formally be considered called cURL.
|
|
... so that the same libcurl build easier can run on any version.
Follow-up to issue #1057
|
|
Fixes #1057
|
|
Some builds of GCC produce output on both stdout and stderr when --help
--verbose is used. The 2>&1 redirection caused them to be arbitrarily
interleaved with each other because of stream buffering. Consequently,
grep failed to match the fvisibility= string in the mixed output, even
though the string was present in GCC's standard output.
This led to silently disabling symbol hiding in some builds of curl.
|
|
These configure vars are modified in a curl-specific way but never
evaluated or loaded from cache, even though they are designated as
_cv_. We could either implement proper AC_CACHE_CHECKs for them, or
remove them completely.
Fixes #603 as ac_cv_func_gethostbyname is no longer clobbered, and
AC_CHECK_FUNC(gethostbyname...) will no longer spuriously succeed after
the first configure run with caching.
`ac_cv_func_strcasecmp` is curious, see #770.
`eval "ac_cv_func_$func=yes"` can still cause problems as it works in
tandem with AC_CHECK_FUNCS and then potentially modifies its result. It
would be best to rewrite this test to use a new CURL_CHECK_FUNCS macro,
which works the same as AC_CHECK_FUNCS but relies on caching the values
of curl_cv_func_* variables, without modifiying ac_cv_func_*.
|
|
These configure vars are modified in a curl-specific way and modified by
the configure process, but are never loaded from cache, even though they
are designated as _cv_. We should implement proper AC_CACHE_CHECKs for
them eventually.
|
|
This was automated by:
sed -b -i -f <(ack -A1 AC_CACHE_CHECK | \
ack -o 'ac_cv_.*?\b' | \
sort -u | xargs -n1 bash -c \
'echo "s/$0/curl_cv_${0#ac_cv_}/g"') \
$(git ls-files)
This only changed the prefix for 16 variables actually checked with
AC_CACHE_CHECK.
|
|
|
|
|
|
This patch was "nicked" from the MINGW-packages project by Daniel.
https://github.com/Alexpux/MINGW-packages/commit/9253d0bf58a1486e91f7efb5316e7fdb48fa4007
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
|
|
This patch is adopted from the MINGW-packages project. It makes it
possible to build curl both shared and static again.
URL: https://github.com/Alexpux/MINGW-packages/tree/master/mingw-w64-curl
|
|
... for CURL_CHECK_OPTION_RT
Closes #456
|
|
This option disables any attempts in configure to create dependency on
stuff requiring linking to librt.so and libpthread.so, in this case this
means clock_gettime(CLOCK_MONOTONIC, &mt).
We were in need to build curl which doesn't link libpthread.so to avoid
the following bug:
https://sourceware.org/bugzilla/show_bug.cgi?id=16628.
|
|
|
|
|
|
Poll has long been broken on Mac OS X. Starting with 10.9 (darwin13) it
now works correctly so this patch enables it there.
|
|
The latest version(s) of the icc compiler no longer accept the extra
space in the -we (warning enable), -wd (warning disable), etc.
Reported-by: Elmira A Semenova
Bug: http://curl.haxx.se/mail/lib-2013-09/0182.html
|
|
The compiler test used a variable before it was assigned when it tried
to see how it acts on a mismatching prototype, which could cause a false
positive.
|
|
Use XC_CHECK_BUILD_FLAGS instead XC_CHECK_USER_FLAGS.
|
|
This reverts commit 6b27703b5f525eccdc0a8409f51de8595c75132a.
|
|
|
|
Instead of claiming it is an error, we call it a "note" to reduce the
severity level. But the following text now says the [variable] "*should*
only be used to specify"... instead of previously having said "may".
|
|
|
|
See XC_AMEND_DISTCLEAN comments for details.
|
|
|
|
|
|
|
|
|
|
This function was only used twice, both in places where performance
isn't crucial (socks + if2ip). Removing the use of this function removes
the need to have our private version for systems without it == reduced
amount of code.
Also, in the SOCKS case it is clearly better to fail gracefully rather
than to truncate the results.
This work was triggered by a bug report on the strcal prototype in
strequal.h.
strlcat was added in commit db70cd28 in February 2001!
Bug: http://curl.haxx.se/bug/view.cgi?id=1192
Reported by: Jeremy Huddleston
|
|
- Fix a pair of single quotes to double quotes.
URL: http://curl.haxx.se/mail/lib-2013-01/0355.html
Reported by: Tor Arntsen
|
|
- Take into account that 'wc' may return leading spaces and/or tabs.
- Set initial IFS to space, tab and newline.
|
|
- Take into account that 'wc' may return leading spaces.
- Set internationalization behavior variables.
Tor Arntsen analyzed and reported the issue.
URL: http://curl.haxx.se/mail/lib-2013-01/0351.html
|
|
|
|
- Stabilization results in 4 public interface m4 macros:
XC_CONFIGURE_PREAMBLE
XC_CONFIGURE_PREAMBLE_VER_MAJOR
XC_CONFIGURE_PREAMBLE_VER_MINOR
XC_CHECK_PATH_SEPARATOR
- Avoid one level of internal indirection
- Update comments
- Drop XC_OVR_ZZ40 macro
|
|
This avoids witness message in output when running configure --help,
while sending the message to config.log for other configure runs.
|
|
- version conditional overriding
- catch unexpanded XC macros
- fix double words in comments
|