aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/c_src.mk
AgeCommit message (Collapse)Author
2022-08-30Removed hardcoded `-arch x86_64` for MacOS nifsDominic Letz
For current macs the flag seems problematic as it overrides the default choice of building for the current architecture and hence prevents building on ARM based macs.
2020-04-17Fix non-verbose output for C/CPP targetsLoïc Hoguin
2020-03-25Remove -lerl_interface from the default LDLIBSLoïc Hoguin
The -lerl_interface library is getting removed in OTP-23.
2019-12-09plugins/c_src.mk: Deduce directory to create from $@Jean-Sébastien Pédron
... instead of hard-coding `priv`.
2018-12-11Remove -finline-functions from OSX by defaultLoïc Hoguin
Since it's not available via clang and that's the default there.
2018-11-29Rebuild the env.mk file when the Erlang/OTP has changedLoïc Hoguin
We also rebuild the C code since C code tends to not stay compatible between different Erlang versions. Based on a patch by Slava Yurin.
2018-11-29Rebuild C projects when Makefiles changeLoïc Hoguin
2018-11-26Rename render_template to core_render and move into coreLoïc Hoguin
Also remove the last instance of an "eval export" that pollutes the environment and use the new core_render for it instead. core_render does not include $(verbose) as this needs to be different depending on who calls it. It's now set explicitly everywhere required.
2018-11-24Don't try to create a nif if n wasn't providedLoïc Hoguin
2018-11-24Add a warning to not edit env.mkLoïc Hoguin
2016-10-21Update Copyright notices2016.10.21Loïc Hoguin
2016-01-24Export CC on WindowsLoïc Hoguin
Considering we require this compiler, we should set a good default for all sub-Makefiles.
2015-12-14Fix compilation of NIFs on WindowsLoïc Hoguin
Thanks to two users of the ninenines/esdl2 project, a correct way to build NIFs on Windows has been found. At the moment we require a specific compiler (MingW's gcc). Maybe we can change this in the future and allow Visual Studio and others. Some small changes have been made to the documentation, and the meaning of one configuration variable has changed to not include the extension (which is decided automatically by Erlang.mk; and configurable separately). Enjoy!
2015-11-19Do not export templates as environment variablesJean-Sébastien Pédron
We can write the file using the Makefile variables without going through environment variables.
2015-10-26Add new-nif target and related testsLoïc Hoguin
Pushing this now so I can figure out Windows.
2015-10-15fix multiple patterns used on core_findDaniel Goertzen
'find', the underlying command of core_find, does not support multiple patterns after -name. This patch fixes multi-pattern use in c_src.mk by calling core_find once for each pattern.
2015-10-12Fix port compilation for rebar projectsLoïc Hoguin
2015-07-04Add $(verbose) to avoid completely silencing commandsLoïc Hoguin
2015-07-02Reduce dependency on external programsLoïc Hoguin
This commit implements a core_find and core_ls function that can be used to list files recursively or not. A few other minute changes are included and a couple hacks removed.
2015-05-22Handle executable portsLoïc Hoguin
Previously we only did shared libraries, now we allow executables. Also improve greatly the handling of autopatched rebar projects by relying once again on the rebar_utils module.
2015-05-20Use core platform detection in c_srcLoïc Hoguin
2015-05-14Merge branch 'jj1bdx-c_src-appbuild' of https://github.com/jj1bdx/erlang.mkLoïc Hoguin
2015-05-14Make sure auto patched dependencies recompile fineLoïc Hoguin
2015-05-14Build NIF C code also on testsKenji Rikitake
* This patch ensures building the NIF code under`c_src` even on running `make tests` * When `c_src/Makefile` exists: * Split the Makefile invocation dependency into `app-c_src` * Invoke `app-c_src` also in `test-build` as well as `app` * When `c_src/Makefile` does not exist: * Add `$(C_SRC_ENV) $(C_SRC_OUTPUT)` dependencies to `test-build`
2015-05-12More improvements for building dependenciesLoïc Hoguin
2015-01-12Update copyright yearLoïc Hoguin
Also added a copyright line in the eunit plugin due to the extensive work I have done there a few days ago.
2015-01-08Speed up "erl" invocationsLoïc Hoguin
Use "+A0 -noinput -boot start_clean" as start argument. Use halt/{1,2} to shutdown the VM faster.
2014-11-25plugins/c_src.mk: update CFLAGS/CXXFLAGS/LDFLAGS for OS XKenji Rikitake
* Add the following flags to LDFLAGS needed at linkage for OS X, and remove the following flags from CFLAGS and CPPFLAGS: `-arch x86_64 -flat_namespace -undefined suppress`
2014-11-25plugins/c_src.mk: use non-regex file extention detectionKenji Rikitake
* The `-regex` option of `find` command to determine `SOURCES` in plugins/c_src.mk` is not portable; does not work on OS X. Rewrite with a portable form of using `find` native `-name` command option with `\(`, `-o`, and `\)`. * Support file extentions of `*.c`, `*.C`, `*.cc`, and `*.cpp`.
2014-11-22plugin/c_src: remove C_SRC_OPTSSlava Yurin
We can just LDFLAGS += and whatnot.
2014-11-20plugin/c_src: compile C++ sourceSlava Yurin
Add compile .cc,.cpp,.C files as C++. Compile each source file to .o. Link all .o object to .so. Delete .o on clean target.
2014-11-19Make env.mk delete on distcleanSlava Yurin
Because env.mk creates a considerable time, then delete it less often.
2014-11-19Compile all *.c files in c_src and sub dirSlava Yurin
2014-11-19Don't try compile c_src if not existSlava Yurin
2014-11-19Add erl_interface for c_src compile and linkSlava Yurin
Using LDFLAGS, LDLIBS for link
2014-11-09Use erlang:halt/0 for c_src.mkKenji Rikitake
* erlang:halt/0 is much faster than init:stop/0 to terminate execution (no wait time)
2014-09-09fix typo in ifneqDaniel Goertzen
2014-07-21Add CC/CFLAGS OS type detection code to plugins/c_src.mkKenji Rikitake
2014-06-10Initial support for NIFsLoïc Hoguin