206 Commits

Author SHA1 Message Date
daan
43ce102425 Merge branch 'dev' into dev-slice 2022-10-31 16:17:17 -07:00
daan
3ad4639aea fix atomic lib reference, see PR #586 2022-10-31 15:53:36 -07:00
daan
923ef1ba74 Merge branch 'dev' into dev-slice 2022-10-31 15:49:48 -07:00
daan
7cb1fdc44e nicer style for pc_libraries 2022-10-31 15:49:04 -07:00
Daan
907d04c27c
Merge pull request #595 from eli-schwartz/pkg-config
cmake: add pkg-config file
2022-10-31 15:42:08 -07:00
Daan
4c241139e9
Merge pull request #588 from TApplencourt/dev
Add support for IntelLLVM
2022-10-31 15:32:31 -07:00
daan
0b1012aee0 Merge branch 'dev' into dev-slice 2022-10-31 15:30:54 -07:00
daan
d8dd297974 add cmake option MI_WIN_REDIRECT to be able to explicitly disable linking with mimalloc-redirect on windows; always OFF on ARM, fixes issue #591 and #590 2022-10-31 15:26:21 -07:00
daan
66525ccae3 merge from dev-track 2022-10-30 14:31:21 -07:00
daan
74d002b61c better cmake process for MI_VALGRIND 2022-10-30 14:20:35 -07:00
daan
886fd7d1b8 add cmakefile MI_VALGRIND option 2022-10-30 12:49:29 -07:00
Eli Schwartz
eb97236652
cmake: add pkg-config file
pkg-config allows using the library in build systems that are not cmake,
by exporting the same information from the cmake -config files in a
buildsystem-neutral format.

Fixes #16
2022-06-19 14:45:44 -04:00
Thomas Applencourt
8cb6ba2221 add support for IntelLLVM 2022-06-06 16:18:33 +00:00
Daan Leijen
8d6a9df752 update windows pipeline to 2022 2022-04-14 16:47:43 -07:00
Daan Leijen
45044da101 do not turn on C++ compilation on msvc by default 2022-04-14 16:43:10 -07:00
Daan
2a4a3dfa23 Merge branch 'dev' into dev-slice 2022-04-07 16:12:30 -07:00
Daan
25ecec3c3b fix for dynamic overriding on macOS; add warning about C++ compilation (as that does not interact well with interpose) 2022-04-07 16:12:16 -07:00
Daan
e91ee4c384 Merge branch 'dev' into dev-slice 2022-02-14 16:16:03 -08:00
daan
38639a08c8 fix test-api-fill c++ compilation 2022-02-10 11:58:25 -08:00
daan
ccbc8ae0bb add huge allocation test (see #544 by @Tiran) 2022-02-10 11:46:28 -08:00
Daan
0dd5a2e0a5 Merge branch 'dev' into dev-slice 2022-02-03 15:59:49 -08:00
Daan
08e9d4b6c1 small fixes 2022-02-03 15:56:53 -08:00
Daan
cbcee4dce4 merge from dev 2022-02-03 15:49:27 -08:00
Daan
df998563bc
Merge pull request #530 from Jarred-Sumner/bun
Add  MI_SKIP_COLLECT_ON_EXIT flag
2022-02-02 20:41:14 -08:00
Daan
f4e221917b
Merge branch 'dev' into bun 2022-02-02 19:56:27 -08:00
Daan
a3325a9b6f Merge branch 'master' into dev 2022-02-02 19:51:51 -08:00
Hans Loeblich
a5a87a109b
Include mimalloc-redirect.dll with cmake install 2022-01-26 17:39:58 -06:00
Jarred Sumner
d2e727f0e8 Add MI_SKIP_COLLECT_ON_EXIT flag 2022-01-18 21:11:12 -08:00
Daan Leijen
e115a655dc Merge branch 'dev' into dev-slice 2022-01-10 16:57:23 -08:00
Daan Leijen
2cc400d600 update comment 2022-01-10 16:53:19 -08:00
daan
a74c05c6c0 Merge branch 'dev' into dev-slice 2022-01-10 16:21:15 -08:00
Daan Leijen
05c2a51211 merge from master 2022-01-10 16:20:22 -08:00
daan
ae1c06d940 merge from dev 2022-01-10 15:29:49 -08:00
akarin
3d91c0e737 cmake: export mimalloc-static as well
Otherwise a static only build would not be usable as cmake package
(as mimalloc.cmake wouldn't be generated).

Signed-off-by: akarin <i@akarin.info>
2021-12-26 18:17:53 +09:00
Frank Richter
969f3a6998 Add tests for zero-initialization functions 2021-12-21 16:20:56 +01:00
Frank Richter
51271ba8ea Replace redundant CMake code for tests with a loop 2021-12-21 12:54:15 +01:00
daan
2af1db7f3a Merge branch 'dev' into dev-slice 2021-12-15 19:29:04 -08:00
daan
ee3ae2a425 add deprecated notice 2021-12-15 08:53:55 -08:00
daan
60ca554413 Merge branch 'dev' into dev-slice 2021-12-15 08:47:00 -08:00
daan
144b4a2d3e link with libatomic automatically if found 2021-12-15 08:42:58 -08:00
daan
b7d33c2c33 fix MI_ prefix for libraries 2021-12-15 08:41:52 -08:00
Daan
d15f5fae64 merge from dev 2021-12-14 18:29:58 -08:00
Daan
69b6b24688 further improvements to installation directories 2021-12-14 18:29:14 -08:00
Daan
1bbc184082
Merge pull request #493 from viy2/pull_request_on_dev
Pull request for issue #490:  set SOVERSION for mimalloc shared lib
2021-12-13 17:26:12 -08:00
Daan
d575aacfde use find_library for pthread (issue #496) 2021-12-13 13:10:33 -08:00
Igor Vlasenko
acc64ee5cd added SOVERSION to mimalloc shared lib (issue #490)
This is a portability improvement.
A cross-platform library needs SOVERSION field for Unix platforms.
With SOVERSION field cmake itself will do proper management of
libmimalloc.so.SOVERSION -> libmimalloc.so.VERSION symlink on Unix,
so a piece of code that tried to emulate this behavior manually
is no more needed and is removed here too.
2021-11-28 19:59:09 +02:00
daan
6efd78c5e0 remove O3 flag 2021-11-15 10:52:39 -08:00
daan
4a456ba054 Merge branch 'dev' into dev-slice 2021-11-15 10:52:17 -08:00
daan
1c22650719 remove no-invalid-memory-model supression 2021-11-15 10:52:09 -08:00
Daan
18fc788201 merge from dev 2021-11-14 15:39:05 -08:00
Daan
5e55525e5e
Merge pull request #483 from joy4eg/install-dirs-dev
cmake: removed hardcoded names for top level configuration
2021-11-14 14:49:48 -08:00
daan
97a1584bb5 Merge branch 'dev' into dev-slice 2021-11-13 13:30:17 -08:00
daan
c56be7ac5a show cflags in cmake; fix -fno-builtin-malloc flag 2021-11-13 13:30:03 -08:00
daan
c6b82a4b37 wip: change decommit expiration 2021-11-12 17:31:21 -08:00
Daan
464cba833e Merge branch 'dev' into dev-slice 2021-11-04 18:55:34 -07:00
Daan
c47de7eb90 improve macOS overriding 2021-11-04 18:55:12 -07:00
Daan
f3ffa663f1 merge from dev 2021-11-02 22:42:25 -07:00
Daan
32ee13f41e improve macOS M1 performance; use interpose in combination with zone's; add -fno-builtin-malloc flag in building with MI_OVERRIDE 2021-11-02 21:54:44 -07:00
Yaroslav Syrytsia
0ead911b6b cmake: removed hardcoded names for top level configuration 2021-10-28 12:04:48 +03:00
Daan
de00de96fd merge with dev 2021-10-20 09:56:03 -07:00
Daan
e02f88a11c Fix warnings with g++-11 compilation 2021-10-20 09:55:03 -07:00
Daan
b47d0802d1 Merge branch 'dev' into dev-slice 2021-10-20 09:36:08 -07:00
Daan
4d89176eb4 add MI_USE_LIBATOMIC to link with -latomic on older systems (see also PR #429); rename MI_INTERPOSE to MI_OSX_INTERPOSE 2021-10-20 09:35:58 -07:00
Daan
aeb73b0cd4 merge from dev 2021-10-19 12:55:10 -07:00
Daan
2d821003b0 don't add prefix if build type is None (PR #427) 2021-10-19 10:56:13 -07:00
Daan
b4a5c8459d
Merge pull request #461 from objectx/patch-1
fix: Fix a typo
2021-10-19 10:25:16 -07:00
Daan
a4078df9d5 Merge branch 'dev' into dev-slice 2021-10-19 10:17:53 -07:00
Daan
60937b5bc8 add -Wstrict-prototypes flag during compilation 2021-10-19 09:39:33 -07:00
Masashi Fujita
9ee780894a
fix: Fix a typo 2021-09-16 03:35:56 +09:00
Daan Leijen
5869c85749 merge from dev 2021-06-17 19:18:57 -07:00
Daan Leijen
a83bca72b3 fixes for M1; disable interpose use zones; fix pedantic warnings 2021-06-17 19:15:09 -07:00
Daan Leijen
6ba9387bf8 Merge branch 'dev' into dev-slice 2021-06-07 17:51:42 -07:00
Daan Leijen
c8b5b74500 improve warnings 2021-06-07 17:51:27 -07:00
Daan Leijen
9974b0ee23 Merge branch 'dev' into dev-slice 2021-06-07 16:51:14 -07:00
Daan Leijen
4ba32c3160 Revert "make all includes relative"
This reverts commit 1feb6123d90f5557a0fc1bc2afc72401e58f8cb0.
2021-06-07 16:47:57 -07:00
Daan Leijen
7b595bd957 Merge branch 'dev' into dev-slice 2021-06-06 20:31:53 -07:00
Daan Leijen
1feb6123d9 make all includes relative 2021-06-06 20:31:36 -07:00
Daan Leijen
54b2c3525c merge with dev 2021-05-21 15:36:30 -07:00
Daan Leijen
e2c095fad2 fix installation directories on unix to use /lib, /include, /share; fix issues #399, #223, and #89 2021-05-21 15:15:50 -07:00
Daan Leijen
34172910e5 fix symlink and --prefix option with delayed CMAKE_INSTALL_PREFIX; fix issue #398 2021-05-21 13:01:11 -07:00
Daan
143cf9c3d6
Merge pull request #400 from mkurdej/redirect32
[Windows] Correctly choose 32-bit version of mimalloc-redirect{,32}.dll in CMake.
2021-05-21 12:17:33 -07:00
Yupeng Zhang
712e7d3de0 [CMake] Respect CMAKE_INSTALL_PREFIX at install time
The standard way of cmake install to a destination folder is the following pattern:
```shell
cd <BUILD_DIR>
cmake <SRC_DIR>
cmake --build <BUILD_DIR>
cmake --install <BUILD_DIR> --prefix <INSTALL_DIR>
```
Right now, the `<INSTALL_DIR>` folder passed in cmake --install command is ignored,
and always installed into `C:/Program Files(x86)/...`, which is the default
`CMAKE_INSTALL_PREFIX` value passed at the `cmake <SRC_DIR>` call.
Thus, it is not possible to install the binaries into different folders
without rerun the cmake/build process.

The important thing here is, the cmake variable `CMAKE_INSTALL_PREFIX`
is supposed to be passed at `cmake --install` time with the `--prefix` argument.
In cmake file, `install` with relative path will use that prefix automaticlly.
And it is the best practice to not include CMAKE_INSTALL_PREFIX
in the `install(... DESTINATION )` argument:
```
In particular, there is no need to make paths absolute by prepending
CMAKE_INSTALL_PREFIX; this prefix is used by default if the DESTINATION is a relative path.
```
referenced from: https://cmake.org/cmake/help/latest/command/install.html
2021-05-10 12:01:03 -04:00
Marek Kurdej
acba250e60 [Windows] Correctly choose 32-bit version of mimalloc-redirect{,32}.dll. 2021-05-04 11:26:07 +02:00
Daan Leijen
8f69e7095d Merge branch 'dev' into dev-slice 2021-02-22 14:28:22 -08:00
Daan Leijen
9f3c29c642 remove -march=native flag; see pr #362 for discussion 2021-02-22 13:09:41 -08:00
Daan Leijen
b93cba3b05 merge from dev 2021-01-29 16:53:52 -08:00
Daan Leijen
5291487dac fix cmake typo in merge for #255 2021-01-29 15:52:18 -08:00
Daan
71d80e914d
Merge branch 'dev' into patch-1 2021-01-29 15:49:57 -08:00
Daan Leijen
72559c5c49 merge from dev 2021-01-29 13:08:00 -08:00
Daan Leijen
f02643d9f2 Merge branch 'dev' into dev-slice 2021-01-29 12:33:52 -08:00
Tarcisio Rodrigues
eb5613563b Add /Zc:__cplusplus to MSVC compiler flags
Fix build errors for a clean build on Windows. For details about the
CMake teting code see https://stackoverflow.com/a/60890947/1254880
2021-01-28 23:58:41 -03:00
Tarcisio Rodrigues
335fbd9a43 Avoid MATCHES operator to check CMake options
Instead use simply the option name in conditional contexts.
2021-01-22 19:49:19 -03:00
Daan Leijen
da79629308 Merge branch 'dev' into dev-slice 2020-12-17 14:11:50 -08:00
Uwe L. Korn
62b6ccb03e Check for march=native before using it 2020-12-15 11:03:20 +01:00
Uwe L. Korn
d7f3d7679a Don't set march=native on Apple Silicon 2020-12-15 10:20:58 +01:00
daan
037285ac09 refactor segment cache and map in a separate source file 2020-09-08 13:27:34 -07:00
daan
a948724340 merge from dev (bitmap split) 2020-09-08 10:33:30 -07:00
daan
c86459afef split bitmap code into separate header and source file 2020-09-08 10:14:13 -07:00
daan
4f7bc7d98e Merge branch 'dev' into dev-slice 2020-09-06 08:50:44 -07:00
daan
f7b94fe21c experiment with bcrypt api again 2020-09-06 08:33:27 -07:00