configure.ac


Log

Author Commit Date CI Message
Azat Khuzhin 2cfa7ff7 2020-06-28T22:31:41 Bump version to 2.1.12-stable (w/o ABI breakage)
fanquake cb4b8738 2020-06-26T14:35:41 build: remove duplicate -Wredundant-decls (cherry picked from commit ff4ec5fdb02d22c131e63b5a98e453da975a3cb1)
yuangongji b9bf7fa7 2020-03-14T11:13:38 autoconf: fix getaddrinfo checking errors on mingw `AC_CHECK_FUNCS` can not properly check `getaddrinfo` because this function requires some special headers on mingw. Using `AC_CHECK_DECL` can effectively solve this issue. Same for - getnameinfo - getprotobynumber - getservbyname - inet_ntop - inet_pton (cherry picked from commit 6d54be2cc078351b4ce1e469bedc4a976f4e3636)
Azat Khuzhin e85afbe3 2020-01-13T23:36:40 Merge branch 'osx-clock' Moves the thread into real-time scheduling class, as recommended in [1], it fixes the separate test provided by @ygj6 [2] everywhere (github actions, travis-ci, appveyor) under osx. [1]: https://developer.apple.com/library/archive/technotes/tn2169/_index.html [2]: https://github.com/azat-archive/osx-timers/commit/dde1a6e4d04506d0e0fb193ebb9f49ae25873be6 Although even after this changes the following time-related tests failed on travis-ci: - no_events - del_wait But anyway I guess #940 can be closed, since this fixes the issue in common. * osx-clock: test: Use THREAD_* wrappers in del_notify/del_wait test: move threads created with THREAD_START() to realtime scheduling class too test: put thread into real time scheduling class on osx for better latencies Closes: #940 (cherry picked from commit a6f81aa45455c8afb69980f7026a0e706f4f9387)
Azat Khuzhin d2871a37 2019-10-16T01:11:51 Do not use sysctl.h on linux (it had been deprecated) It had been deprecated for a long time (AFAIK), but since glibc-2.29.9000-309-g744e829637 it produces a #warning (cherry picked from commit b9b9f19058dc04b7ad4d079a38f6b86c0e7b1072)
yuangongji f4a6152c 2019-09-19T15:24:51 evutil_time: detect and use _gmtime64_s()/_gmtime64() (cherry picked from commit 148d12ad31b03a813f4ffd9df14a85392aa74130)
Azat Khuzhin 66ec78fd 2019-09-03T00:34:35 arc4random: replace sysctl() with getrandom (on linux) Since sysctl() is deprecated for a long-long time, according to sysctl(2): Since Linux 2.6.24, uses of this system call result in warnings in the kernel log. Fixes: #890 Suggested-by: Pierce Lopez (cherry picked from commit 86f55b0420f864b518475f781ce7a3c619180b12)
yuangongji 45da7d9d 2019-08-30T10:21:07 Upgrade autoconf (after upgrading minimum required to 2.67) - AC_PROG_SED - AC_USE_SYSTEM_EXTENSIONS - AC_TRY_COMPILE -> AC_COMPILE_IFELSE - AC_TRY_RUN -> AC_RUN_IFELSE ... Also use: - AC_CONFIG_AUX_DIR Refs: #870 Fixes: 3f09e923 ("Change the minimum version of automake to 1.13 and autoconf to 2.67") (cherry picked from commit 13b8fc39fd4000de2c836b0acdc52ae5b4c757c7)
yuangongji 5d1e8570 2019-08-23T22:31:28 autotools: attach doxygen target into all target v2: disable man pages by default (cherry picked from commit f9c6a14ee089452c74e492edc674260a3717763e)
ygj6 fdb8fb66 2019-08-08T21:48:21 Change the minimum version of automake to 1.13 and autoconf to 2.67 When I run make check via automake with a version of 1.12.6 or lower, I got this error: /bin/sh: line 9: ./test_runner_epoll: No such file or directory FAIL: test_runner_epoll /bin/sh: line 9: ./test_runner_select: No such file or directory FAIL: test_runner_select /bin/sh: line 9: ./test_runner_kqueue: No such file or directory FAIL: test_runner_kqueue /bin/sh: line 9: ./test_runner_evport: No such file or directory FAIL: test_runner_evport /bin/sh: line 9: ./test_runner_devpoll: No such file or directory FAIL: test_runner_devpoll /bin/sh: line 9: ./test_runner_poll: No such file or directory FAIL: test_runner_poll /bin/sh: line 9: ./test_runner_win32: No such file or directory FAIL: test_runner_win32 /bin/sh: line 9: ./test_runner_timerfd: No such file or directory FAIL: test_runner_timerfd /bin/sh: line 9: ./test_runner_changelist: No such file or directory FAIL: test_runner_changelist /bin/sh: line 9: ./test_runner_timerfd_changelist: No such file or directory FAIL: test_runner_timerfd_changelist Open the Makefile generated by command ./autogen.sh && ./configure I can see the errors are caused by this line: if $(TESTS_ENVIRONMENT) $${dir}$$tst $(AM_TESTS_FD_REDIRECT); then $${dir}$$tst will expand to ./test_runner_epoll, but test_runner_epoll is only a target in test/include.am, not a file, so it print: /bin/sh: line 9: ./test_runner_epoll: No such file or directory. It seems like a bug in automake 1.12.6. The errors will disappear if I simply upgrade automake to 1.13, and upgrade autoconf to 2.65 (2.65 is the lowest version dependent by automake-1.13). When I build with automake-1.13 and autoconf-2.66, I got another error: configure.ac:667: error: AC_CHECK_SIZEOF: requires literal arguments The code in configure.ac line 667 is : AC_CHECK_SIZEOF(void *) It is a bug in autoconf-2.66 : http://gnu-autoconf.7623.n7.nabble.com/AC-CHECK-SIZEOF-int-is-error-in-autoconf-2-66-td13537.html Finally, everything works fine when using automake-1.13 and autoconf-2.67. Refs: #858 (cherry picked from commit 3f09e9230ab45008e0016b63fc1d3b05eb23e6ec)
Azat Khuzhin 5b723a66 2019-08-02T00:23:11 Bump version to 2.1.11-stable (with ABI breakage)
yuangongji 2a333008 2019-07-27T22:41:39 Change autoconf version to 2.62 and automake version to 1.11.2 On my computer, the version of autoconf is 2.59 and automake is 1.9 I build with autogen.sh & configure & make and failed. I find In Makefile.am: include/event2/event-config.h: config.h make-event-config.sed $(AM_V_GEN)test -d include/event2 || $(MKDIR_P) include/event2 $(AM_V_at)$(SED) -f $(srcdir)/make-event-config.sed < config.h > $@T $(AM_V_at)mv -f $@T $@ There are three undefined variables: MKDIR_P, AM_V_GEN and AM_V_at. Then I tried: - autoconf-2.60 / automake-1.10 - autoconf-2.61 / automake-1.11 - autoconf-2.62 / automake-1.11.2 And only autoconf-2.62 & automake-1.11.2 is ok. Therefore, I recommend changing the autoconf version from 2.59 to 2.62 and automake version from 1.9 to 1.11.2. Plus autoconf 2.59 is too old - 2003.12.16 [1], so as automake 1.9 - 2004.08.11 [2], while $(AM_V_GEN)/$(AM_V_at) had been introduced in 371a1237 back in 2012. [1]: http://ftp.gnu.org/gnu/autoconf/ [1]: http://ftp.gnu.org/gnu/automake/ Fixes: 371a1237 ("Make quiet build even quieter") (cherry picked from commit 1947dd0ddbced0d8f9891656c820353f82261c52)
Azat Khuzhin f5bfd721 2019-05-25T22:33:45 Bump version to 2.1.10-stable everywhere
Azat Khuzhin 7c4da937 2019-05-12T19:06:43 Merge branch 'issue-807-accept4-getnameinfo-AF_UNIX' * issue-807-accept4-getnameinfo-AF_UNIX: http-server: add usage/help dialog http: avoid use of uninitialized value for AF_UNIX/AF_LOCAL sockaddr http-server: add ability to bind to unix-socket build: struct sockaddr_un detection (sys/un.h, afunix.h) Fixes: #807 (cherry picked from commit 76eded24d3b0c3fc48c5a888906cc9043223101b)
Enji Cooper 5e39750d 2019-02-28T17:47:51 Fix typos: warnigns -> warnings Signed-off-by: Enji Cooper <yaneurabeya@gmail.com> (cherry picked from commit 91dad75f7d04c2bef05bdd1dca7c29340ce33900)
Enji Cooper 00ba9fa2 2019-02-25T11:59:15 Define `_GNU_SOURCE` properly/consistently per autoconf Although `_GNU_SOURCE` can be defined as an arbitrary #define per the glibc docs [1], it's best to define it in a manner consistent with the way that autoconf defines it, i.e., `1`. While this shouldn't matter in most cases, it does when the headers from other projects follow the poorly defined GNU convention implemented by autoconf and are included after the libevent's util.h header. An example failure with clang, similar to the failure I encountered, is as follows: ``` $ printf "#define _GNU_SOURCE\n#define _GNU_SOURCE 1" | clang -c -x c - <stdin>:2:9: warning: '_GNU_SOURCE' macro redefined [-Wmacro-redefined] ^ <stdin>:1:9: note: previous definition is here ^ 1 warning generated. ``` This happened when compiling python [2] with a stale homebrew util.h file from libevent (which admittedly would not happen in a correct libevent install, as the header should be installed under /usr/local/include/event2/util.h). However, if both headers had been combined (which is more likely), it would have failed as shown above. Removing the ad hoc definition unbreaks compiling python's pyconfig.h.in header when included after util.h from libevent. 1. http://www.gnu.org/software/libc/manual/html_node/Feature-Test-Macros.html 2. https://github.com/python/cpython/blob/master/configure.ac#L126 Closes: #773 (cherry-picked) Signed-off-by: Enji Cooper <yaneurabeya@gmail.com> (cherry picked from commit 5f87be42f0ae0126938624a1419a572607078217)
Azat Khuzhin 900f5c45 2019-02-03T19:19:46 Bump version to 2.1.9-beta everywhere
Azat Khuzhin bff1423d 2018-10-27T16:49:39 autotools: do not add warnings that is included into -Wall already Plus remove duplicates (cherry picked from commit 006c528a21f8beec8993134c12610bd16cde7fff)
Azat Khuzhin b3af7bdd 2018-06-19T10:15:08 Cleanup __func__ detection First of all __func__ is not a macro, it is char[] array, so the code that we had before in cmake, was incorrect, i.e.: #if defined (__func__) #define EVENT____func__ __func__ #elif defined(__FUNCTION__) #define EVENT____func__ __FUNCTION__ #else #define EVENT____func__ __FILE__ #endif So just detect do we have __func__/__FUNCTION__ in configure/cmake before build and define EVENT__HAVE___func__/EVENT__HAVE___FUNCTION__ to use the later to choose which should be used as a __func__ (if it is not presented). Closes: #644 (cherry picked from commit e85818d24850540d220e6d7bc0a30653ba2135f2)
Azat Khuzhin d7579fb9 2018-08-01T00:58:02 autotools: include win32 specific headers for socklen_t detection on win32/mingw The [1] removes EVENT__ prefix, and now if we will incorrectly detect that "foobar" (or socklen_t in our case) type is not available, but somewhere later it will be available then we will get next error [2]: error: two or more data types in declaration specifiers According to [3]: - Compile something in Cygwin and you are compiling it for Cygwin. - Compile something in MinGW and you are compiling it for Windows. And I can confirm this, since there is _WIN32 defined (according to [4]) And since according to [5] our image in appveyour (Visual Studion 2015) has mingw (and we use it, not cygwin) we need ws2tcpip.h (over sys/socket.h -- which does not exist in win32) header to detect socklen_t existence. [1]: 587e9f5828c4eb3c6e79e9eb29f174e4ae0c05bd ("config.h can't be prefixed unconditionally") [2]: https://ci.appveyor.com/project/nmathewson/libevent/build/job/yonukoc5q3tr3e5e#L372 [3]: https://stackoverflow.com/questions/771756/what-is-the-difference-between-cygwin-and-mingw [4]: https://www.appveyor.com/docs/build-environment/#mingw-msys-cygwin [5]: https://ci.appveyor.com/project/nmathewson/libevent/build/job/yonukoc5q3tr3e5e#L164 Fixes: #649 (cherry picked from commit 4728ffed865985ab663b2e067afb904d124fc1db)
Carlo Marcelo Arenas Belón 9c720b70 2017-08-19T16:01:46 configure: avoid false positive in DragonFlyBSD by default, the max buffer size is 16K and histeresis is at 50%, so a bigger read is needed to unlock writes than you would expect from other BSD (512 bytes) this doesn't introduce any regression on FreeBSD 11.1, OpenBSD 6.1, NetBSD 7.1, macOS 10.12.6 and of course DragonFlyBSD 4.8.1, and most of them show a max pipe size of 64K, so the read call should drain them all regardless of how conservative they are on the free pipe space they will require (usually 512 bytes) before kevent reports the fd as ready for write. I couldn't find a reference to which bug this code was trying to look for and it seems to be there from the beginning of git history so it might be no longer relevant. Issue: #548 (cherry picked from commit 1dfec8a97094a26317eac9b3d8a1c16eb1a7dbea)
Carlo Marcelo Arenas Belón 8983e511 2017-09-01T15:50:36 test: fix 32bit linux regress (cherry picked from commit 63c4bf78d6af3c6ff46d2e8e4b53dd9f577a9ca9)
Redfoxmoon d433201e 2017-08-15T05:11:05 Add configure check for midipix Fixes: #540 (cherry picked from commit 94e5cc84d5adf8075a1a98263d16756faec8ea30)
Azat Khuzhin a0bfe2c4 2017-03-08T17:58:26 Merge branch 'cmake-configure-fixes-v2' Fixes in cmake, to make it more like configure and support some cross-compiling. * cmake-configure-fixes-v2: cmake: fix extracting of the version from git (check for number of matches) Detect arch4random_addrandom() existence Use off_t instead of ev_off_t for sendfile() (fixes android build) cmake: detect _GNU_SOURCE not by __GNU_LIBRARY__ only (fallback to _GNU_SOURCE) Check for WNOWAIT in waitpid() in runtime (not in cmake/configure) cmake: add <pthread.h> into CMAKE_REQUIRED_INCLUDES for sizeof(pthread_t) cmake: fix values for #cmakedefine cmake: drop duplicates from event-config template cmake: add value for the #cmakedefine macros (like autoconf) cmake: Fix checking of enum values from sysctl.h (cherry picked from commit 5aade2d30b6c5eff226cbf7b63fda5a01987ba4f)
Azat Khuzhin e7bd9e03 2017-03-06T02:46:23 Merge branch 'fix-openssl-linking' * fix-openssl-linking: sample/https-client: use ERR_remove_*state() when we have them Do not check for ERR_remove_thread_state() (do not link ssl into every library) Closes: #476 (cherry picked from commit 98faf19895bd6aa41c68f7da050179e207f05ae1)
Azat Khuzhin 8567f2f5 2017-01-29T23:07:40 Merge branch 'fix-struct-linger' @jbech "Accidentally disabled by 0dda56a due to confusion between struct linger vs. SO_LINGER and #define vs. AC_DEFINE. Try adding synthetic #error test to confirm." * fix-struct-linger: cmake: check for 'struct linger' existence test/bench*: prefix event-config.h macros after 0dda56a48e94 test/bench_httpclient: restore SO_LINGER usage after 0dda56a48e94 Fixes: #444 (original pull-request) (cherry picked from commit 9d5a4bdc5cfbf2385efc7c58103161b3512c4500)
Azat Khuzhin 9b63b5d4 2017-01-22T18:21:57 Bump version to 2.1.8-stable everywhere P.S. in referenced commit I made a mistake and instead of *-rc* I wrote *-beta*. See-also: f4489b8323cda0bf8eed7c1353911a852d7a947c ("Bump version to 2.1.7-beta everywhere")
Azat Khuzhin a7513cc9 2017-01-15T12:31:27 automake: do not use serial-tests if parallel-test-harness available Revert: 61179dec7716975a151c6dae4524ae504d05780e ("automake: define serial-tests only if automake have this option") Revert: Revert: 44d755e00e249c09914cf35089c16735df82e270 ("test/automake: don't use paralell test harness (since automake 1.12)")
Azat Khuzhin f4489b83 2016-11-02T00:31:31 Bump version to 2.1.7-beta everywhere - cmake basic - cmake detecting from git -- event_fuzzy_version_from_git() - autotools - win32 - appveyor
Vlad Shcherban adc402ba 2016-09-29T18:31:53 Adding option to ignore clock_gettime: --disable-clock-gettime macOS 10.12 introduced `clock_gettime` to libsystem. This means, built on OS X 10.12 application would crash on earlier versions of OS X because it will try to call clock_gettime. This options is useful to make backwards compatible macOS apps. Fixes: #398 Fixes: #399 Fixes: #400
Azat Khuzhin 51019e94 2016-07-13T17:40:48 Bump version to 2.1.6-beta everywhere - cmake basic - cmake detecting from git -- event_fuzzy_version_from_git() - autotools - win32 - appveyor
Azat Khuzhin 43eb56c7 2016-08-11T16:15:45 tests: use waitpid(..., WNOWAIT) to fix failing of main/fork under solaris According to solaris docs: "One instance of a SIGCHLD signal is queued for each child process whose status has changed. If waitpid() returns because the status of a child process is available, and WNOWAIT was not specified in options, any pending SIGCHLD signal associated with the process ID of that child process is discarded. Any other pending SIGCHLD signals remain pending." And interesting thing that it works if you add sleep(1) before waitpid(), and also if you run with --verbose (some race or what). But linux doesn't support WNOWAIT in waitpid() so add detection into cmake/autotools. Fixes: #387 Link: https://bugzilla.redhat.com/show_bug.cgi?id=840782
Azat Khuzhin 671a24f2 2016-08-08T18:10:56 autotools/win32: fix searching ssl library
Azat Khuzhin bb09535b 2016-08-07T22:19:39 autoconf: fix --disable-thread-support build under win32 Fixes: https://ci.appveyor.com/project/azat/libevent/build/job/gvud4tcqsd5bnarl Fixes: https://ci.appveyor.com/project/azat/libevent/build/2.1.6.80/job/5frnb1c3n4quxxqy Fixes: https://ci.appveyor.com/project/azat/libevent/build/2.1.6.80/job/3wdahbrew7setmoa
Mark Ellzey 30316177 2016-06-28T10:37:24 [#372] check for errno.h
Rainer Keller b5ca3656 2016-05-30T16:53:41 For non GCC/clang on OSX the -Wno-deprecated-declarations may not be valid Closes: nmathewson/Libevent#129
Azat Khuzhin 61179dec 2016-05-11T16:02:02 automake: define serial-tests only if automake have this option P.S. I did try a lot of other ways, but seems that this is the only one that will work. Fixes: automake 1.11 Travis-CI: https://travis-ci.org/azat/libevent/jobs/129398265
Jan Heylen b8d7c621 2016-04-20T07:31:25 libevent_core and libevent_extra also deserve a pkgconfig file
Azat Khuzhin f29f59e8 2016-03-10T00:25:09 Replace -Wswitch-enum with -Wswitch, and add it into cmake rules too According to https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html: -Wswitch-enum Warn whenever a switch statement has an index of enumerated type and lacks a case for one or more of the named codes of that enumeration. case labels outside the enumeration range also provoke warnings when this option is used. The only difference between -Wswitch and this option is that this option gives a warning about an omitted enumeration code even if there is a *default label*.
Azat Khuzhin 959a4c20 2015-11-25T17:47:42 autotools: fix getservbyname() detection The mentioned commit adds this check under-the-else of the previous condition between getaddrinfo()/gethostbyname_r(), so this check is triggered only when we don't have getaddrinfo() which is wrong, fix this by move it upper. Fixes [CI] since it uses getservbyname() and it failed with autotools only (cmake detection is ok). CI: https://travis-ci.org/libevent/libevent/builds/93125954 Fixes: af08a94085e49e6942835b4c6b50a774536d5b5b ("Check for getservbyname even if not on win32.")
Azat Khuzhin c4e9d9bd 2015-11-23T18:44:03 sample/https-client: check for ERR_remove_thread_state() existence Fixes: freebsd 9.2 build
Nick Mathewson 683f5568 2015-01-05T09:16:12 Increment version to 2.1.5-beta
Mike Frysinger 0c492b33 2014-06-13T17:07:50 add a --disable-samples configure flag For people building & installing libevent in a distro, building all these sample apps are not useful. Add a flag to turn them off.
Nick Mathewson de268feb 2014-03-21T13:20:34 Increment version to 2.1.4-alpha-dev
Nick Mathewson d08273ec 2014-03-16T12:09:24 Increment version to 2.1.4-alpha
Nick Mathewson cbfa8da1 2014-03-03T11:23:55 Merge remote-tracking branch 'origin/patches-2.0'
Trond Norbye b56611d7 2014-02-19T06:49:31 Add -Qunused-arguments for clang on macos The clang compiler provided with macosx emits warnings like: CC bufferevent.lo clang: warning: argument unused during compilation: '-I .' clang: warning: argument unused during compilation: '-I ./compat' clang: warning: argument unused during compilation: '-I ./include' clang: warning: argument unused during compilation: '-I ./include' for each file being compiled. This generates a lot of noise during compilation making it hard to see "real" errors. This patch mute those warnings.
Nick Mathewson f665d5cb 2014-02-24T10:32:00 Stop checking for inet_aton; we don't use it. We had cmake and autoconf tests for the inet_aton function... but we never actually use it any more. (The autoconf tests still use the callability of inet_aton to decide whether we need to link against -lresolv) Reported by Harlan Stenn.
Nick Mathewson f8d80a28 2013-05-01T23:12:08 Bump version to 2.1.3-alpha-dev
Nick Mathewson dd4be76f 2013-04-30T12:02:49 Incremement version to 2.1.3-alpha
Nick Mathewson 6b94ffce 2013-04-25T13:54:19 Merge remote-tracking branch 'origin/patches-2.0' Conflicts: configure.ac
Nick Mathewson 66dacfa2 2013-04-25T13:43:49 Merge remote-tracking branch 'origin/pr/36' into patches-2.0
Nick Mathewson 49146200 2013-03-31T14:05:26 Do not build strlcpy.c when it will have no code.
Nick Mathewson ebf278b2 2013-02-08T13:03:29 Use AC_CONFIG_HEADERS in place of AM_CONFIG_HEADERS for autmake 1.13 compat Patch from cazfi.
Nick Mathewson 0c79787a 2013-02-08T22:07:43 Rename configure.in to configure.ac to appease newer autoconfs
Nicholas Heath 0dda56a4 2013-02-03T19:08:37 Preliminary changes for Minix3.
Nick Mathewson 40b95ae2 2012-11-19T10:53:25 Increment version to 2.1.2-alpha-dev
Nick Mathewson ffdad1dc 2012-11-18T10:53:52 Bump versions to 2.1.2-alpha
Patrick Pelletier 09098f70 2012-10-23T22:09:45 fix a few trivial documentation typos
Ross Lagerwall b3fea673 2012-09-03T08:37:25 Rename configure.in to configure.ac. ".ac" is the preferred extension.