aboutsummaryrefslogtreecommitdiffstats
path: root/configure.ac
Commit message (Collapse)AuthorAgeFilesLines
* MINGW-UCRT: Set CONFIG['arch'] and RUBY_PLATFORM to "x64-mingw-ucrt"Lars Kanis2021-09-201-1/+5
| | | | | | | | | This allows easy differentiation between ABI incompatible platforms like MSWIN64 and MSVCRT-based MINGW32. This also implicates a distinct rubygem platform which is also "x64-mingw-ucrt". Although the term "mingw32" is the OS-part for 64 bit systems as well, the "32" is misleading and confusing for many users. Therefore the new platform string drops the "32" from the OS part to just "mingw". This conforms to the common practice of windows platform testing per RUBY_PLATFORM=~/mswin|mingw/ .
* MINGW: More permissive pattern matching for coroutinextkoba (Tee KOBAYASHI)2021-09-201-2/+2
| | | | Pattern matching for target_os in configure script should be permissive if we consider suffixing something onto "mingw32".
* MINGW: set rb_cv_msvcrt=ucrt and RT_VER=140 when UCRT is usedxtkoba (Tee KOBAYASHI)2021-09-201-1/+3
|
* coroutine enables assembly version for dragonflybsd.DC2021-09-131-0/+3
|
* Remove stale DLEXT2Nobuyoshi Nakada2021-09-101-4/+1
| | | | | | Actually disabled at 181a3a2af5df88d145b73a060d51fe437c8c4ad4 in 2004, it has remained in config.status and been carried over to rbconfig.rb.
* Make ruby.pc from makeNobuyoshi Nakada2021-08-291-15/+0
| | | | | Expand variables undefined in configure.ac, RUBY_RELEASE_DATE and so on.
* Move DEFFILE to EXTDLDFLAGSNobuyoshi Nakada2021-08-291-1/+1
| | | | So that it is no longer needed in ruby.pc.in.
* Use C99-defined signbit macroNobuyoshi Nakada2021-08-271-11/+1
|
* Use C99-defined macros to classify a floating-point numberNobuyoshi Nakada2021-08-271-4/+2
|
* netbsd coroutine uses assembly instead and little build fix.David Carlier2021-08-241-0/+9
|
* Fix COROUTINE_SRC on emscriptenNobuyoshi Nakada2021-08-161-8/+3
| | | | | Select the C source if exists, otherwise the assembler source, instead of selecting by the coroutine type.
* coroutine use asm version for handful of architectures for freebsd.DC2021-08-161-0/+9
|
* Shared libruby also needs MAINLIBS for jemallocNobuyoshi Nakada2021-07-071-0/+1
|
* Refactor --with-jemalloc optionNobuyoshi Nakada2021-07-071-33/+41
| | | | | | Find jemalloc header first, then using the found header, try [with mangle, without mangle] x [no more additional libraries, adding jemalloc] combination.
* comment about the situation [ci skip]卜部昌平2021-07-071-0/+6
|
* configure: add -Wl,--no-as-needed卜部昌平2021-07-071-0/+5
| | | | | | | | | | | | | | | | | | | | It is reported that combination of `--enable-shared --with-jemalloc` breaks on Debian bullseye (testig). Deeper investigation revealed that this system's `ld(1)` is patched, to turn `ld --as-needed` on by default. This linker flag strips "unnecessary" library dependencies from an executable. In case of `ruby(1)` (of `--enable-shared`), because everything is in `libruby.so`, the binary itself doesn't include any calls to `malloc(3)` at all. So in spite of our explicit `-ljemalloc` flag, it is ignored. Libc's one is chosen instead. This is not what we want. Let's force our `ruby(1)` link what we want. Fixes https://github.com/ruby/ruby/pull/4627 The author would like to acknowledge Akihiko Odaki <akihiko.odaki@gmail.com> for their contributions.
* Enable libruby-relative on FreeBSDNobuyoshi Nakada2021-07-061-0/+4
|
* Fix check for malloc_conf when no library is requiredNobuyoshi Nakada2021-07-061-3/+6
|
* Moved native coroutine type checking messageNobuyoshi Nakada2021-07-061-1/+1
| | | | Not to be interleaved by fallback checking messages
* Replace copy coroutine with pthread implementation.Samuel Williams2021-07-011-4/+4
|
* Remove also debug symbol directory at clean on macOSNobuyoshi Nakada2021-06-241-0/+3
|
* Run ifchange with shell explicitly, workaround of noexec mountNobuyoshi Nakada2021-06-221-1/+1
|
* Configure ioctl request argument type [Bug #17759]Nobuyoshi Nakada2021-06-161-0/+30
|
* prefer cc/gcc over clang on solaris卜部昌平2021-06-141-1/+8
| | | | requested by tankf33der at https://bugs.ruby-lang.org/issues/17949#change-92430
* Refix PAGE_SIZENobuyoshi Nakada2021-05-141-7/+4
| | | | | * honor actually used headers * include sys/user.h only when `PAGE_SIZE` is not defined
* Fix compilation with jemalloc on macosJohn Hawthorn2021-05-131-1/+1
| | | | | | | | | | On darwin we avoid including sys/user.h to avoid a conflict. Previously we still ended up with PAGE_SIZE being defined because the headers for system malloc define it. However, when compiling with jemalloc nothing would define PAGE_SIZE. This commit changes configure.ac so that we never use the PAGE_SIZE constant on darwin and to always use the sysconf fallback.
* Removed missing/dup2.cNobuyoshi Nakada2021-05-101-2/+7
| | | | | | This function should be always available, as POSIX-compliant or Windows platform are required since 1.9. Also the code in this file is MT-unsafe.
* Check only whether PAGE_SIZE is compile-time constNobuyoshi Nakada2021-05-061-14/+8
|
* Get rid of including sys/user.h on macOSNobuyoshi Nakada2021-05-061-1/+4
| | | | | | | | | | | LIST_HEAD in ccan/list conflicts with sys/queue.h. ``` ./ccan/list/list.h:75:9: warning: 'LIST_HEAD' macro redefined [-Wmacro-redefined] ^ /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/queue.h:465:9: note: previous definition is here ^ ```
* Fix PAGE_SIZE macro detection in autoconfPeter Zhu2021-05-051-8/+11
| | | | | | | | | | | | The current fix for PAGE_SIZE macro detection in autoconf does not work correctly. I see the following output with running configure on Linux: ``` checking PAGE_SIZE is defined... no ``` Linux has PAGE_SIZE macro. This is happening because the macro exists in sys/user.h and not in the malloc headers.
* Fix compilation on M1 MacNobuyoshi Nakada2021-05-051-0/+18
| | | | | As PAGE_SIZE may not be a preprocessor constant, dispatch at runtime in that case.
* configure.ac: check if __builtin_expect is available or notYusuke Endoh2021-05-051-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | include/ruby/internal/has/builtin.h uses HAVE_BUILTIN___BUILTIN_EXPECT for icc but previously it was not defined. This is a follow up of 8b32de2ec9b72d4c9ede19b70ec9497718fb25a6 and this will fix the following failures: http://rubyci.s3.amazonaws.com/icc-x64/ruby-master/log/20210505T030003Z.fail.html.gz ``` 1) Failure: TestMkmf::TestConvertible#test_typeof_builtin [/home/chkbuild/chkbuild/tmp/build/20210505T030003Z/ruby/test/mkmf/test_convertible.rb:9]: convertible_int: checking for convertible type of short... -------------------- short -------------------- convertible_int: checking for convertible type of int... -------------------- int -------------------- convertible_int: checking for convertible type of long... -------------------- long -------------------- convertible_int: checking for convertible type of signed short... -------------------- failed "icc -std=gnu99 -o conftest -I. -I/home/chkbuild/chkbuild/tmp/build/20210505T030003Z/ruby/.ext/include/x86_64-linux -I/home/chkbuild/chkbuild/tmp/build/20210505T030003Z/ruby/include -I./test -O3 -ggdb -Wall -Wextra -Wdeprecated-declarations -Wimplicit-function-declaration -Wimplicit-int -Wpointer-arith -Wshorten-64-to-32 -Wwrite-strings -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-unused-parameter -Wunused-variable -diag-disable=175,188,1684,2259,2312 -Wextra-tokens -Wundef conftest.c -L. -L/home/chkbuild/chkbuild/tmp/build/20210505T030003Z/ruby -Wl,-rpath,/home/chkbuild/chkbuild/tmp/build/20210505T030003Z/ruby -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,-rpath,/home/chkbuild/chkbuild/tmp/build/20210505T030003Z/lib -L/home/chkbuild/chkbuild/tmp/build/20210505T030003Z/lib -lruby-static -lz -lpthread -lrt -lrt -ldl -lcrypt -lm -lm -lc" In file included from /home/chkbuild/chkbuild/tmp/build/20210505T030003Z/ruby/include/ruby/defines.h(72), from /home/chkbuild/chkbuild/tmp/build/20210505T030003Z/ruby/include/ruby/ruby.h(23), from /home/chkbuild/chkbuild/tmp/build/20210505T030003Z/ruby/include/ruby.h(39), from conftest.c(1): /home/chkbuild/chkbuild/tmp/build/20210505T030003Z/ruby/include/ruby/backward/2/assume.h(34): warning #193: zero used for undefined preprocessing identifier "HAVE_BUILTIN___BUILTIN_EXPECT" #if RBIMPL_HAS_BUILTIN(__builtin_expect) ... ```
* Workaround for gcc-4 bugNobuyoshi Nakada2021-05-051-1/+12
| | | | False positive `-Wundef` in `#elif` after `#if defined`.
* Add -Werror=undef to default warnflags for coreBenoit Daloze2021-05-041-0/+1
| | | | | | * See [Feature #17752] * For external extensions it's transformed to just warn and not error (-Wundef) like other other -Werror in warnflags.
* Remove comments in tool/m4 from the generated configureNobuyoshi Nakada2021-04-171-37/+37
|
* Prefer positive condition to double negativeNobuyoshi Nakada2021-04-171-4/+4
| | | | | | Autoconf 2.70 seems to omit the check for the given CC, `AC_COMPILE_IFELSE` does not know which is the cause of the failure.
* Support non-standard `struct stat` [Bug #17793]Nobuyoshi Nakada2021-04-121-0/+5
| | | | | | On 32-bit Android: * `st_dev`/`st_rdev` are not `dev_t` * `st_mode` is not `mode_t`
* configure: always check for atomic/sync builtins [Bug #17787]Nobuyoshi Nakada2021-04-101-1/+3
| | | | | Non-gcc compilers tend to have this intrinsic these days, e.g. xlc has `__sync` builtins.
* configure: try `-fdeclspec` option by linking [Bug #17787]Nobuyoshi Nakada2021-04-101-1/+1
| | | | | A workaround for `-f` option of AIX xlc compiler which works only on linking.
* Fix `coroutine_type` variable nameKazuhiro NISHIYAMA2021-03-301-1/+1
|
* Support for native riscv64 coroutines.Samuel Williams2021-03-301-0/+3
|
* Removed dln_a_outNobuyoshi Nakada2021-03-241-49/+15
| | | a.out format is considered extinct nowadays.
* configure.ac: enable FORCE_FILESYSTEM for EmscriptenYusuke Endoh2021-03-201-0/+1
|
* Remove unneeded dependencies on macOS [Feature #17730]Rick Mark2021-03-191-2/+2
|
* Use CommonRandom if availableNobuyoshi Nakada2021-03-191-1/+2
|
* configure.ac: don't use pthread_sigmask in emscriptenYusuke Endoh2021-03-191-1/+2
|
* configure.ac: avoid spaces in a LDFLAGS optionYusuke Endoh2021-03-191-2/+2
| | | | Seems like it confuses "make ruby" for emscripten.
* get rid of aclocal (#4280)卜部昌平2021-03-171-1/+34
|
* Removed a duplicate setting for mingwNobuyoshi Nakada2021-03-121-2/+1
|
* Fix `coroutine_type` variable nameNobuyoshi Nakada2021-03-101-2/+2
|