summaryrefslogtreecommitdiff
path: root/configure.in
Commit message (Collapse)AuthorAgeFilesLines
* atomics: Disentangle 32bit and 64bit atomics configuration.Yann Ylavic2023-04-211-9/+20
| | | | | | | | | | | | | | | | Allow for --enable-nonportable-atomics=upto32bit to disable 64bit atomic builtins while still allowing for 32bit ones. yes/no still enables/disables both (if available in the first place..). By default (no --enable-nonportable-atomics setting), generic 64bit atomics are forced for 32bit CPUs/systems, until we figure out how to properly align apr_uint64_t (at least i[56]86 CPUs which could work with 64bit builtins actually don't if the data is not 64bit aligned, assuming the same for other 32bit CPUs is safer). git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1909321 13f79535-47bb-0310-9956-ffa450edef68
* tests: Follow up to r1908616: Simplify epoll_wait() check.Yann Ylavic2023-03-211-10/+10
| | | | git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1908618 13f79535-47bb-0310-9956-ffa450edef68
* tests: check whether epoll_wait() timeout is reliable and adjust justsleep().Yann Ylavic2023-03-211-2/+43
| | | | | | | | | | | | | * configure.in: Small epoll_wait() loop to check timeout reliability and set HAVE_EPOLL_WAIT_RELIABLE_TIMEOUT. * test/testpoll.c(justsleep): Allow some jiffy is !HAVE_EPOLL_WAIT_RELIABLE_TIMEOUT. git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1908616 13f79535-47bb-0310-9956-ffa450edef68
* Fix crosscompiling detection in apr-1-configRuediger Pluem2023-03-101-0/+12
| | | | | | | | | | | | | | | | | | | Since r1872148 apr-1-config tries to detect if it runs in a crosscompile scenario. Fix the detection to correctly distinguish between crosscompiling and DESTDIR installations for packaging. * configure.in: Set APR_CROSS_COMPILING to 'no', 'yes' or 'maybe' based on possible --host and --build parameters given to configure to determine if configure was called for a crosscompiling scenario. This was inspired by how autoconf itself detects crosscompiling scenarios. * apr-config.in: Use the value from APR_CROSS_COMPILING to determine if we are in a crosscompiling scenario. Furthermore normalize the pathes we use for suffix matches by collapsing multiple consecutive '/' to one. PR: 66510 git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1908248 13f79535-47bb-0310-9956-ffa450edef68
* configure: atomic builtins might be implemented for i586 and i686.Yann Ylavic2023-03-021-5/+12
| | | | git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1907988 13f79535-47bb-0310-9956-ffa450edef68
* Revert r1907986.Yann Ylavic2023-03-021-12/+5
| | | | git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1907987 13f79535-47bb-0310-9956-ffa450edef68
* configure: atomic builtins might be implemented for i586 and i686.Yann Ylavic2023-03-021-5/+12
| | | | git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1907986 13f79535-47bb-0310-9956-ffa450edef68
* configure: Test apr_uint64_t alignment for 64bit atomic builtins usability.Yann Ylavic2023-02-141-25/+43
| | | | | | | | | | | | | | | | | | | | | | | On some systems the __atomic builtins may be available only through libatomic or fall back to libatomic when the atomic operations are not issued on a suitably aligned address (64bit atomics on 8-byte aligned addresses only for instance). Modify the tests for HAVE_ATOMIC_BUILTINS64 and HAVE__ATOMIC_BUILTINS64 such that the address for the atomic operations is not aligned (unless 64bit ints always have the suitable alignment, i.e. mainly 64bit systems..). Also, use the __atomic_always_lock_free() builtin to fail the test when the compiler already knows about the alignment issue (falling back to libatomic, which we don't require/want). With this, 64bit builtins should be selected only for platforms that can natively handle atomics on any apr_uin64_t (since the APR has no dedicated 8-byte aligned 64bit type for now), while the generic/mutex implementation is used for others. git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1907642 13f79535-47bb-0310-9956-ffa450edef68
* * Since r1901037 Posix shared mem is prefered over SysV shared mem.Ruediger Pluem2023-02-101-0/+7
| | | | | | | Add an option to revert this choice on systems that provide both. git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1907566 13f79535-47bb-0310-9956-ffa450edef68
* * configure.in: Fix variable-length-array detection for recent gccJoe Orton2023-01-231-1/+2
| | | | | | | | | | | with -Wall in CFLAGS, avoiding the "set but not used" warning: conftest.c: In function 'main': conftest.c:197:9: error: variable 'foo' set but not used [-Werror=unused-but-set-variable] 197 | int foo[argc]; git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1906946 13f79535-47bb-0310-9956-ffa450edef68
* Merge thread-name branch (PR 60587) [1]:Ivan Zhakov2023-01-211-0/+1
|\ | | | | | | | | | | | | | | | | * Introduce apr_thread_name_set() and apr_thread_name_get(). [1] https://bz.apache.org/bugzilla/show_bug.cgi?id=60587 [2] https://lists.apache.org/thread/z24logzc6v8tc0p2q3375cc10qo9y5yw git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1906889 13f79535-47bb-0310-9956-ffa450edef68
| * crude check for pthread_setname_npEric Covener2022-06-281-0/+1
| | | | | | | | git-svn-id: https://svn.apache.org/repos/asf/apr/apr/branches/thread-name@1902326 13f79535-47bb-0310-9956-ffa450edef68
* | force USE_SHMEM_SHMGET on AIXEric Covener2023-01-191-0/+4
| | | | | | | | | | | | | | | | | | prior to r1901037 on trunk, USE_SHMEM_SHMGET is used. APR_USE_SHMEM_MMAP_SHM does not currently work on AIX. git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1906825 13f79535-47bb-0310-9956-ffa450edef68
* | Further strict C99 configure fix:Joe Orton2023-01-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Avoid an implicit int in the definition of the main function. Avoids build problems with future C compilers which will not support them by default. Submitted by: Florian Weimer <fweimer redhat.com> PR: 66426 git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1906723 13f79535-47bb-0310-9956-ffa450edef68
* | Fix further strict C99 compliance issue. (fixes #37)Joe Orton2023-01-111-3/+6
| | | | | | | | | | | | | | | | PR: 66408 Submitted by: Sam James <sam gentoo.org> git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1906594 13f79535-47bb-0310-9956-ffa450edef68
* | Revert r1904726: EXTRA_LIBS takes care of -lcrypt already in trunk.Yann Ylavic2022-10-201-2/+1
| | | | | | | | git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1904739 13f79535-47bb-0310-9956-ffa450edef68
* | configure: Link to libcrypt (when available) for apr_password_validate.Yann Ylavic2022-10-201-1/+2
|/ | | | git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1904726 13f79535-47bb-0310-9956-ffa450edef68
* atomic: Detect 32bit and 64bit atomic builtins separately.Yann Ylavic2022-06-261-6/+95
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some 32bit platforms provide 32bit but not 64bit atomics, detect and distinctly set/use HAVE_ATOMIC_BUILTINS/HAVE_ATOMIC_BUILTINS64 and USE_ATOMICS_BUILTINS/USE_ATOMICS_BUILTINS64. These platforms NEED_ATOMICS_GENERIC64 as 64bit implementation. * configure.in(): Use stdint.h's uint{32,64}_t as atomic type for testing atomic builtins when available, otherwise "unsigned int" for 32bit testing and "unsigned long long" as 64bit. * configure.in(): AC_TRY_RUN each 32bit and 64bit type separately, the former determining HAVE_ATOMIC_BUILTINS and the latter HAVE_ATOMIC_BUILTINS64. * include/arch/unix/apr_arch_atomic.h(): Define USE_ATOMICS_BUILTINS64 when HAVE_ATOMIC_BUILTINS64, otherise define NEED_ATOMICS_GENERIC64 * include/arch/unix/apr_arch_atomic.h(): Check defined(__powerpc__) for USE_ATOMICS_PPC. * atomic/unix/builtins64.c(): Implement for USE_ATOMICS_BUILTINS64 only. BZ 63566. git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1902266 13f79535-47bb-0310-9956-ffa450edef68
* Prefer posix shared mem over SysV in all cases:Jim Jagielski2022-05-181-4/+4
| | | | | | | Have name based order same as anon git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1901037 13f79535-47bb-0310-9956-ffa450edef68
* apr_sleep: use nanosleep() when available.Yann Ylavic2021-11-261-0/+4
| | | | git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1895361 13f79535-47bb-0310-9956-ffa450edef68
* apr_atomic: Use __atomic builtins when available.Yann Ylavic2021-10-291-9/+36
| | | | | | | | | | Unlike Intel's atomic builtins (__sync_*), the more recent __atomic builtins provide atomic load and store for weakly ordered architectures like ARM32 or powerpc[64], so use them when available (gcc 4.6.3+). git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1894621 13f79535-47bb-0310-9956-ffa450edef68
* Revert r1894618.Yann Ylavic2021-10-291-36/+9
| | | | git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1894619 13f79535-47bb-0310-9956-ffa450edef68
* apr_atomic: Use __atomic builtins when available.Yann Ylavic2021-10-291-9/+36
| | | | | | | | | | Unlike Intel's atomic builtins (__sync_*), the more recent __atomic builtins provide atomic load and store for weakly ordered architectures like ARM32 or powerpc[64], so use them when available (gcc 4.6.3+). git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1894618 13f79535-47bb-0310-9956-ffa450edef68
* apr_brigade_split_boundary: Provide a memmem implementation on platforms thatGraham Leggett2021-10-251-0/+2
| | | | | | | do not have one. git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1894551 13f79535-47bb-0310-9956-ffa450edef68
* More revert of r1887500.Yann Ylavic2021-03-111-3/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1887505 13f79535-47bb-0310-9956-ffa450edef68
* Follow up to r1887060: fix compilation on BEOS.Yann Ylavic2021-03-111-0/+3
| | | | | | | poffset is undefined there, by inspection (no BEOS at hand..). git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1887500 13f79535-47bb-0310-9956-ffa450edef68
* calls to exit() require stdlib.h or else we get ↵Jim Jagielski2020-10-291-1/+5
| | | | | | -Werror,-Wimplicit-function-declaration git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1882979 13f79535-47bb-0310-9956-ffa450edef68
* * configure.in: Add --enable-thread-debug, which definesJoe Orton2020-06-011-0/+7
| | | | | | | | | | | | | | | APR_THREAD_DEBUG. * locks/unix/thread_mutex.c (apr_thread_mutex_create): For APR_THREAD_DEBUG, use the ERRORCHECK mutex type by default (if not nested/recursive), which reliably fails for cases of otherwise undefined behaviour: a) relocking a mutex locked by the current thread b) unlocking a thread locked by another thread git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1878362 13f79535-47bb-0310-9956-ffa450edef68
* Add a cache check with which users who cross-compile APRGraham Leggett2020-03-101-7/+5
| | | | | | | | can influence the outcome of the /dev/zero test by setting the variable ac_cv_mmap__dev_zero=yes git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1875062 13f79535-47bb-0310-9956-ffa450edef68
* Don't try to use PROC_PTHREAD by default when cross compiling.Graham Leggett2020-02-051-2/+8
| | | | git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1873593 13f79535-47bb-0310-9956-ffa450edef68
* Submitted by: Hongxu Jia <hongxu.jia@windriver.com>Graham Leggett2019-12-261-0/+5
| | | | | | | | | | | | | | | https://patch-diff.githubusercontent.com/raw/apache/apr/pull/8.patch While cross-compiling, the tools/gen_test_char could not be executed at build time, use AX_PROG_CC_FOR_BUILD to build native tools/gen_test_char Support explicit libtool by variable assigning before buildcheck.sh, it is helpful for cross-compiling (such as libtool=aarch64-linux-libtool) git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1871998 13f79535-47bb-0310-9956-ffa450edef68
* Use AC_CHECK_SIZEOF, so as to support cross compiling. PR 56053.Graham Leggett2019-12-261-7/+7
| | | | git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1871980 13f79535-47bb-0310-9956-ffa450edef68
* Add --tag=CC to libtool invocations. PR 62640.Graham Leggett2019-08-171-2/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1865343 13f79535-47bb-0310-9956-ffa450edef68
* Simplify avoiding the dirread_r deprecated and unwise invocations, by alwaysWilliam A. Rowe Jr2019-04-011-4/+2
| | | | | | | | | | presuming READDIR_IS_THREAD_SAFE for our purposes. Users can force-override this to gain dirread_r detection again, but it would not be advised in 1.7.0 and later releases. git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1856756 13f79535-47bb-0310-9956-ffa450edef68
* Revert r1789258, r1856189, r1856191 following discussion on list, in favorWilliam A. Rowe Jr2019-04-011-24/+1
| | | | | | | | | | | | | | | of a simpler path of avoiding dirread_r always, by default. This saves us various additional detection logic, and follows advice of library maintainers and our library's behavior, any apparent "thread safety" offered by the _r() flavors of this function were not truly supported by APR's allocation or dirread_r reentrancy of parallel threads attemping to access the same open directory descriptor. Retains r1856192, r1856196 to avoid wasteful allocation in the dirread() case. git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1856755 13f79535-47bb-0310-9956-ffa450edef68
* Follow up to r1856189: sys/types.h possibly needed.Yann Ylavic2019-03-251-0/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1856191 13f79535-47bb-0310-9956-ffa450edef68
* Follow up to r1789258: configure to detect whether readdir() is thread-safe.Yann Ylavic2019-03-251-1/+23
| | | | | | | | | | | | | On platforms where readdir_r() is available but deprecated, readdir() is to be used although it's not in libc_r (e.g. Linux has no libc_r). In this case we can APR_TRY_COMPILE_NO_WARNING readdir_r() and, if it's deprecated, define READDIR_IS_THREAD_SAFE. With this we don't need user-defined APR_USE_READDIR{,64}_R from r1789258. git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1856189 13f79535-47bb-0310-9956-ffa450edef68
* The string conversion to apr_off_t is strtoll when it's a long long.Yann Ylavic2019-03-221-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1856063 13f79535-47bb-0310-9956-ffa450edef68
* Use stdint/inttypes 64bit types/formats when both available.Yann Ylavic2019-03-221-11/+34
| | | | | | | Which should be the case on modern platforms, no change for others. git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1856042 13f79535-47bb-0310-9956-ffa450edef68
* Use proc mutex pthread by default when robust[_np]Yann Ylavic2019-03-221-0/+8
| | | | | | | | | | | | | On platforms that support pshared and robust pthread mutex, this is usually the best interprocess mutex mechanism because it's efficient, posix, not limited and not persistent on the system when the program exits (i.e. no need to delete it explicitely before leaving, like IPC SysV or files for instance). Note that on older POSIX systems pthread_mutex_{setrobust,consistent}() funcs existed with the non-posix _np() suffix, and we consider them equivalent. git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1856022 13f79535-47bb-0310-9956-ffa450edef68
* Replace generic off_t logic with APR_CHECK_TYPES_FMT_COMPATIBLE,William A. Rowe Jr2019-03-191-11/+18
| | | | | | | | | | confirming that the best int type is elected for off_t, even where the bytewidth of multiple int types is identical. Resolves issues around APR_OFF_T_FMT reported on modern BSD compilers. git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1855840 13f79535-47bb-0310-9956-ffa450edef68
* Deprecate APR_CHECK_TYPES_COMPATIBLE for new APR_CHECK_TYPES_FMT_COMPATIBLEWilliam A. Rowe Jr2019-03-191-4/+9
| | | | | | | | | | | | | macro, testing both type compatibility in a more portable way, and verifying the printf format token for these types. Order of preference of long over int is preserved. (Defers off_t fixes for the subsequent patch.) git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1855839 13f79535-47bb-0310-9956-ffa450edef68
* Quit redundantly looking up shlibpath_varWilliam A. Rowe Jr2019-03-131-1/+4
| | | | git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1855444 13f79535-47bb-0310-9956-ffa450edef68
* Revert 1839627, this macro does not result in a usable CC_FOR_BUILDWilliam A. Rowe Jr2018-08-301-3/+0
| | | | | | | Corresponds to unsuccessful pull request #8. git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1839701 13f79535-47bb-0310-9956-ffa450edef68
* Revert 1839699, this contained unintended, additional noise. Re-correcting.William A. Rowe Jr2018-08-301-0/+3
| | | | git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1839700 13f79535-47bb-0310-9956-ffa450edef68
* Revert 1839627, this macro does not result in a usable CC_FOR_BUILDWilliam A. Rowe Jr2018-08-301-3/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1839699 13f79535-47bb-0310-9956-ffa450edef68
* Submitted by: Hongxu Jia <hongxu.jia@windriver.com>William A. Rowe Jr2018-08-301-0/+3
| | | | | | | | | | | | | | | https://patch-diff.githubusercontent.com/raw/apache/apr/pull/8.patch While cross-compiling, the tools/gen_test_char could not be executed at build time, use AX_PROG_CC_FOR_BUILD to build native tools/gen_test_char Support explicit libtool by variable assigning before buildcheck.sh, it is helpful for cross-compiling (such as libtool=aarch64-linux-libtool) git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1839627 13f79535-47bb-0310-9956-ffa450edef68
* If --with-installbuilddir is not supplied, it unconditially overrides the valueRainer Jung2018-08-251-2/+2
| | | | | | | | | | | | | set by APR_SET_LAYOUT. Disable that and stop showing an invalid default value. PR 56090. Patch provided by Michael Osipov. This fixes #11. git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1839068 13f79535-47bb-0310-9956-ffa450edef68
* Provide APR_SIZEOF_OFF_T.Yann Ylavic2018-07-251-0/+7
| | | | git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1836616 13f79535-47bb-0310-9956-ffa450edef68
* configure.in: match fallback apr_off_t type with the comment/format.Yann Ylavic2018-07-251-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1836615 13f79535-47bb-0310-9956-ffa450edef68