aboutsummaryrefslogtreecommitdiffstats
path: root/erts/configure.in
AgeCommit message (Collapse)Author
2018-11-23Merge branch 'john/erts/spectre-configure-flag-otp_20/OTP-15430/ERIERL-237' ↵John Högberg
into maint * john/erts/spectre-configure-flag-otp_20/OTP-15430/ERIERL-237: Allow disabling retpoline in interpreter loop Add a ./configure flag for spectre mitigation
2018-11-20Merge branch 'john/erts/spectre-configure-flag/OTP-15430/ERIERL-237' into ↵John Högberg
john/erts/spectre-configure-flag-otp_20/OTP-15430/ERIERL-237 * john/erts/spectre-configure-flag/OTP-15430/ERIERL-237: Allow disabling retpoline in interpreter loop Add a ./configure flag for spectre mitigation
2018-11-20Add a ./configure flag for spectre mitigationJohn Högberg
Note that the ERTS_NO_RETPOLINE macro introduced by this commit is completely inert unless spectre-mitigation is set to 'incomplete.' This includes when mitigation has been manually enabled through CFLAGS, so it should be impossible for it to unintentionally disable mitigation.
2018-09-06Fix PGO configure testRickard Green
2018-07-23erts: Fix configure check when cross-compilingFredrik Fornwall
Without the action-if-cross-compiling argument to AC_RUN_IFELSE the configure steps fails with the following message when cross-compiling: configure: error: cannot run test program while cross compiling
2018-06-18Update copyright yearHenrik Nord
2018-05-23configure.in: Add back accidentally deleted AC_SUBST(FPE)Björn Gustavsson
AC_SUBST(FPE) was accidentally deleted in 13bcae12947603.
2018-05-09Disable the use of floating point exceptionsBjörn Gustavsson
Floating point exceptions has been disabled since 2011 on macOS (fa0f8d2c29b) and on Linux since 2014 (c7ddafbe6dbc) because there were unresolved stability issues. Floating point exceptions are not disabled by default on FreeBSD, and if OTP is compiled with gcc (as opposed to clang) floating point exceptions will be used. 81a6adab693a introduced a bug in erts/emulator/Makefile.in which would cause the building of OTP to fail if floating point exceptions were enabled. The bug was not noticed because it turns out that none of our daily build machines has floating point exceptions enabled. Since floating point exceptions is not tested, we should not expect them to work reliably on any platform. Therefore, turn off floating point exceptions unconditionally in erts/configure.in. For the moment we will keep the code in the runtime system that handles floating point exceptions. (This commit also fixes the bug in erts/emulator/Makefile.in, in case floating point exceptions ever become reliable and enabled.) https://bugs.erlang.org/browse/ERL-620
2018-04-27Move the corba applcations to separate repositoryLars Thorsen
All corba applications are moved to a separate repository. E.g. orber, ic, cosEvent, cosEventDomain, cosNotifications cosTime, cosTransactions, cosProperty and cosFileTransfer.
2018-04-20erts: Remove config test of MAP_NORESERVE for hipe on x86_64Sverker Eriksson
and instead test for mprotect which is what is uses. The use of MAP_NORESERVE for hipe code allocations was removed in 8fd6e3353b094aa94e37e257ee20cd5e0e5dddcb.
2018-04-19erts,erl_interface: Refactor common config of ARCHSverker Eriksson
into aclocal.m4 as LM_HARDWARE_ARCH
2018-03-13Force 64-bit alignment for pre-allocators unless x86Rickard Green
2018-02-14Merge branch 'sverker/gc-move-opt'Sverker Eriksson
2018-01-29make HiPE work on x86_64 when PIE is enabledbhuztez
Currently HiPE amd64 assumes the runtime system code is loaded into the low 2G of the address space. However, this is not the case when PIE is enabled, it is loaded into a random location. So trampolines are required to call BIFs, and also we have first to load the address of sse2_fnegate_mask to a regisiter before xorpd in fchs.
2018-01-19erts: Add ERTS_RESTRICTSverker Eriksson
2018-01-11Merge branch 'maint'Rickard Green
* maint: Do not add -lz to LIBS; keep it in Z_LIB
2017-12-18Do not add -lz to LIBS; keep it in Z_LIBRickard Green
2017-10-30Merge branch 'lukas/erts/pgo/OTP-14604'Lukas Larsson
* lukas/erts/pgo/OTP-14604: erts: Only do PGO if gcc supports -fprofile-correction
2017-10-25erts: Only do PGO if gcc supports -fprofile-correctionLukas Larsson
2017-10-05Use 32-bits pointers to C codeBjörn Gustavsson
On a 64-bit machine, we only need 32 bits to store a pointer to the C code that implements a BEAM instruction. Refactor the code to only use the lower 32 bits of each instruction word, and take care to preserve the high 32 bits.
2017-10-05Move LD flags for hipe from Makefile.in to configure.inBjörn Gustavsson
We want the flags to be available for other tests in configure.in.
2017-10-02erts: disable kernel-poll on OS X vsn < 16Lukas Larsson
kqueue is broken on earlier versions of OS X.
2017-10-02erts: Move all I/O polling to a seperate threadLukas Larsson
2017-09-11erts: Remove possibility to disable dirty schedulersLukas Larsson
2017-09-11Merge branch 'lukas/erts/pgo/OTP-14604'Lukas Larsson
* lukas/erts/pgo/OTP-14604: Add support for building a pgo beam_emu
2017-09-08Add support for building a pgo beam_emuLukas Larsson
2017-09-05Merge branch 'maint'Rickard Green
* maint: Bug fixes of statistics(wall_clock) and statistics(runtime) Conflicts: erts/emulator/beam/erl_time_sup.c
2017-09-05Merge branch 'rickard/statistics-time-fixes/OTP-14597/ERL-465' into maintRickard Green
* rickard/statistics-time-fixes/OTP-14597/ERL-465: Bug fixes of statistics(wall_clock) and statistics(runtime) Conflicts: erts/emulator/beam/erl_time_sup.c
2017-09-04Bug fixes of statistics(wall_clock) and statistics(runtime)Rickard Green
2017-08-11Break out most instructions from beam_emu.cBjörn Gustavsson
2017-07-17erts: Cleanup configure and makefiles after non-smp removalLukas Larsson
2017-07-17erts: Cleanup removal of non-smp emulatorsLukas Larsson
2017-07-06Merge branch 'maint'Björn Gustavsson
* maint: macOS: Fix problems loading crypto
2017-07-04macOS: Fix problems loading cryptoBjörn Gustavsson
On macOS, it was not possible to start crypto after running observer. (ERL_251) On the beta of macOS 10.13 (High Sierra), crypto does not work at all. (ERL-439) The problem is that the use of the -flat_namespace option when linking dynamic drivers such as the one for crypto. With that option, all function names must be unique among all linked libraries and frameworks, or the wrong function could be called. Resolve the problem by using the two-level namespace as recommended by Apple. We need to use the -bundle_loader option to point out beam.smp when building all drivers and NIF libraries. https://bugs.erlang.org/browse/ERL-251 https://bugs.erlang.org/browse/ERL-439
2017-06-23Support e2k architectureBoris Bochkarev
2017-05-16Let --enable-lock-counter build an additional emulatorBjörn Gustavsson
"./configure --enable-lock-counter" would modify the behavior of the default emulator (usually SMP). To make lock counting more accessible, change --enable-lock-counter to build an additional emulator in the same way as: (cd erts/emulator && make lcnt) (The next commit will make it easier to start the built lock-counter emulator.)
2017-05-04Update copyright yearRaimo Niskanen
2017-04-21erts: Deprecate the non-smp emulatorsLukas Larsson
2017-04-12Merge branch 'ingela/openssl-version'Ingela Anderton Andin
* ingela/openssl-version: crypto: Update documentation to reflect new version policy erts: Update configure check for OpenSSL
2017-04-11Merge PR-1397 from margnus1/hipe-m32-build OTP-14330Sverker Eriksson
Allow HiPE-enabled VMs to be built with --enable-m32-build
2017-04-07erts: Update configure check for OpenSSLIngela Anderton Andin
We have never officially supported OpenSSL-0.9.7* Update to OpenSSL-0.9.8c or later, but OpenSSL-1.0.2 or later is recommended
2017-03-30Don't imply --disable-hipe in --enable-m32-buildMagnus Lång
HiPE compiles and runs perfectly well with --enable-m32-build on linux. If there are some darwin-specific issues with --enable-m32-build and --enable-hipe, a more specific test for these conditions should be added.
2017-03-30Complete the list of ./configure ARCH adjustmentsMagnus Lång
Also remove i386 clause, as ARCH can never have that value.
2017-03-29Partially revert commit 37d63e9b8a0a96125ada858205286a58a5bed1aeKostis Sagonas
The above commit erroneously declared 'ppc64le' as a 'ppc64' for HiPE enabling. These two architectures are different and one can NOT expect that native code generated for one architecture runs on the other one. Rather than reverting this commit, make sure that the architecture is declared correctly instead of pretending it's a PPC64.
2017-03-16Improve no-pie solution from bug report ERL-294Karol Ostrovsky
Some linkers, for example on Gentoo Hardened, do not accept the -no-pie flag but require the -fno-PIE flag instead.
2017-02-06Implement magic referencesRickard Green
Magic references are *intentionally* indistinguishable from ordinary references for the Erlang software. Magic references do not change the language, and are intended as a pure runtime internal optimization. An ordinary reference is typically used as a key in some table. A magic reference has a direct pointer to a reference counted magic binary. This makes it possible to implement various things without having to do lookups in a table, but instead access the data directly. Besides very fast lookups this can also improve scalability by removing a potentially contended table. A couple of examples of planned future usage of magic references are ETS table identifiers, and BIF timer identifiers. Besides future optimizations using magic references it should also be possible to replace the exposed magic binary cludge with magic references. That is, magic binaries that are exposed as empty binaries to the Erlang software.
2017-01-12Support for dirty BIFsRickard Green
2016-12-02configure.in: Fix configure test for usable OpenSSLBjörn Gustavsson
In OpenSSL 1.1.0, HMAC_CTX no longer has a complete definition, and can no longer be allocated as a stack variable. Therefore, the code in the configure test for usable OpenSSL library will not compile. Call the HMAC() function instead since it exists in all versions of of OpenSSL that we support. Note that the code will only be compiled and linked, not run, so the argument values don't matter as long as they have the correct type.
2016-12-02configure.in: Fix test for SSL with KerberosBjörn Gustavsson
OpenSSL 1.1.0 and higher does not support Kerberos and no longer defines OPENSSL_NO_KRB5 to indicate that. Test the version number as well as OPENSSL_NO_KRB5.
2016-11-22Merge branch 'sverker/Wundef'Sverker Eriksson