summaryrefslogtreecommitdiff
path: root/configure.ac
AgeCommit message (Collapse)Author
2021-07-07Shared libruby also needs MAINLIBS for jemallocNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/4632
2021-07-07Refactor --with-jemalloc optionNobuyoshi Nakada
Find jemalloc header first, then using the found header, try [with mangle, without mangle] x [no more additional libraries, adding jemalloc] combination. Notes: Merged: https://github.com/ruby/ruby/pull/4632
2021-07-07comment about the situation [ci skip]卜部昌平
Notes: Merged: https://github.com/ruby/ruby/pull/4631
2021-07-07configure: add -Wl,--no-as-needed卜部昌平
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. Notes: Merged: https://github.com/ruby/ruby/pull/4631
2021-07-06Enable libruby-relative on FreeBSDNobuyoshi Nakada
2021-07-06Fix check for malloc_conf when no library is requiredNobuyoshi Nakada
2021-07-06Moved native coroutine type checking messageNobuyoshi Nakada
Not to be interleaved by fallback checking messages
2021-07-01Replace copy coroutine with pthread implementation.Samuel Williams
2021-06-24Remove also debug symbol directory at clean on macOSNobuyoshi Nakada
2021-06-22Run ifchange with shell explicitly, workaround of noexec mountNobuyoshi Nakada
2021-06-16Configure ioctl request argument type [Bug #17759]Nobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/4576
2021-06-14prefer cc/gcc over clang on solaris卜部昌平
requested by tankf33der at https://bugs.ruby-lang.org/issues/17949#change-92430 Notes: Merged: https://github.com/ruby/ruby/pull/4567
2021-05-14Refix PAGE_SIZENobuyoshi Nakada
* honor actually used headers * include sys/user.h only when `PAGE_SIZE` is not defined
2021-05-13Fix compilation with jemalloc on macosJohn Hawthorn
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. Notes: Merged: https://github.com/ruby/ruby/pull/4494
2021-05-10Removed missing/dup2.cNobuyoshi Nakada
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. Notes: Merged: https://github.com/ruby/ruby/pull/4483
2021-05-06Check only whether PAGE_SIZE is compile-time constNobuyoshi Nakada
2021-05-06Get rid of including sys/user.h on macOSNobuyoshi Nakada
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 ^ ```
2021-05-05Fix PAGE_SIZE macro detection in autoconfPeter Zhu
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. Notes: Merged: https://github.com/ruby/ruby/pull/4461
2021-05-05Fix compilation on M1 MacNobuyoshi Nakada
As PAGE_SIZE may not be a preprocessor constant, dispatch at runtime in that case.
2021-05-05configure.ac: check if __builtin_expect is available or notYusuke Endoh
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) ... ```
2021-05-05Workaround for gcc-4 bugNobuyoshi Nakada
False positive `-Wundef` in `#elif` after `#if defined`. Notes: Merged: https://github.com/ruby/ruby/pull/4459
2021-05-04Add -Werror=undef to default warnflags for coreBenoit Daloze
* See [Feature #17752] * For external extensions it's transformed to just warn and not error (-Wundef) like other other -Werror in warnflags. Notes: Merged: https://github.com/ruby/ruby/pull/4428
2021-04-17Remove comments in tool/m4 from the generated configureNobuyoshi Nakada
2021-04-17Prefer positive condition to double negativeNobuyoshi Nakada
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.
2021-04-12Support non-standard `struct stat` [Bug #17793]Nobuyoshi Nakada
On 32-bit Android: * `st_dev`/`st_rdev` are not `dev_t` * `st_mode` is not `mode_t`
2021-04-10configure: always check for atomic/sync builtins [Bug #17787]Nobuyoshi Nakada
Non-gcc compilers tend to have this intrinsic these days, e.g. xlc has `__sync` builtins. Notes: Merged: https://github.com/ruby/ruby/pull/4372
2021-04-10configure: try `-fdeclspec` option by linking [Bug #17787]Nobuyoshi Nakada
A workaround for `-f` option of AIX xlc compiler which works only on linking. Notes: Merged: https://github.com/ruby/ruby/pull/4372
2021-03-30Fix `coroutine_type` variable nameKazuhiro NISHIYAMA
2021-03-30Support for native riscv64 coroutines.Samuel Williams
Notes: Merged: https://github.com/ruby/ruby/pull/4337
2021-03-24Removed dln_a_outNobuyoshi Nakada
a.out format is considered extinct nowadays. Notes: Merged: https://github.com/ruby/ruby/pull/4317 Merged-By: nobu <nobu@ruby-lang.org>
2021-03-20configure.ac: enable FORCE_FILESYSTEM for EmscriptenYusuke Endoh
2021-03-19Remove unneeded dependencies on macOS [Feature #17730]Rick Mark
Notes: Merged: https://github.com/ruby/ruby/pull/4289
2021-03-19Use CommonRandom if availableNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/4289
2021-03-19configure.ac: don't use pthread_sigmask in emscriptenYusuke Endoh
2021-03-19configure.ac: avoid spaces in a LDFLAGS optionYusuke Endoh
Seems like it confuses "make ruby" for emscripten.
2021-03-17get rid of aclocal (#4280)卜部昌平
Notes: Merged-By: mame <mame@ruby-lang.org>
2021-03-12Removed a duplicate setting for mingwNobuyoshi Nakada
2021-03-10Fix `coroutine_type` variable nameNobuyoshi Nakada
2021-03-09Given argument does not need to cacheNobuyoshi Nakada
2021-03-09Recheck ucontext functions to make reconfig stableNobuyoshi Nakada
2021-03-02Don't use mmap on platforms that have large OS page sizesPeter Zhu
Notes: Merged: https://github.com/ruby/ruby/pull/4235
2021-02-25Use mmap for allocating heap pagesPeter Zhu
Notes: Merged: https://github.com/ruby/ruby/pull/4227
2021-02-24Reverting PR #4221Aaron Patterson
It seems this breaks tests on Solaris, so I'm reverting it until we figure out the right fix. http://rubyci.s3.amazonaws.com/solaris11-sunc/ruby-master/log/20210224T210007Z.fail.html.gz
2021-02-24Use mmap for allocating heap pagesPeter Zhu
Notes: Merged: https://github.com/ruby/ruby/pull/4221
2021-02-15supports for stack protection for haiku.David Carlier
Notes: Merged: https://github.com/ruby/ruby/pull/4186
2021-02-09Fixed default coroutine selection for musl.Andrew Aladjev
Notes: Merged: https://github.com/ruby/ruby/pull/3567 Merged-By: ioquatix <samuel@codeotaku.com>
2021-02-05Add -fdeclspec to CFLAGS instead of CCNobuyoshi Nakada
2021-01-31MSys is a variant of CygwinNobuyoshi Nakada
2021-01-27Clear unexpanded `mjit_std_cflag`Nobuyoshi Nakada
2021-01-27Disable fast-mathNobuyoshi Nakada
As `RUBY_TRY_CFLAGS` restores `CFLAGS`, appending to the variable in its block has no effect.