-
Notifications
You must be signed in to change notification settings - Fork 596
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
cmake/xplatform builds using github/tox/conda workflows #187
base: master
Are you sure you want to change the base?
Conversation
set(make_env ${CMAKE_COMMAND} -E env SDKROOT=${CMAKE_OSX_SYSROOT}) | ||
endif() | ||
|
||
# run make to extract compiler options, linker options and list of source files |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure I understand the requirement driving this; can you elaborate a little bit here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry, that ^^ question was in regards to cmake docs, where it says:
"... It is intended to be set locally by the user creating a build tree. "
https://cmake.org/cmake/help/latest/variable/CMAKE_OSX_SYSROOT.html
91dae88
to
9a268ee
Compare
Fresh rebase-on-the-rebase with some cleanup and timespec fix. |
ba547b1
to
d63c541
Compare
a029c8b
to
2d82a9d
Compare
5b1d8fb
to
088ae33
Compare
fix a handful of warnings, add missing gia.c to module.make add makefile overrides and a soname, make library symlinks add separate shared library/test targets add -fvisibility=hidden to cxxflags, makes build result much smaller add visibility pragma for demo consumer add ci workflow with simple gcc/clang matrix Signed-off-by: Stephen L Arnold <[email protected]>
* update cmake source modules using PR script * add basic versioning for cmake shared libs * complete target/install properties, export config * move toolchain file to tools dir, add python script from PR * add tox file, update ci workflow to use it * tox handles most build tool dependencies, cmake, ninja, cpplint * make sure ABC_USE_STDINT_H is fallback if ABC_USE_NAMESPACE is not set Signed-off-by: Stephen L Arnold <[email protected]>
* fix type invalid literal errors * use pSat2 from abcglucuse2 header for correct cec solver type Signed-off-by: Stephen L Arnold <[email protected]>
* add win32 defines ABC_NO_DYNAMIC_LINKING, WIN32 * static_cast => uint returns in acbTest.c !refactor * check for win first, win/mingw definitions inside if(msys or mingw) * fix missing leading ddunder on mingw32__ * switch msys env for clang64, re-enable readline * cleanup cmake type checks and workflow env * mingw clang-64 thinks sizeof long is 4 * use abc typedefs instead of hard-coded types Signed-off-by: Stephen L Arnold <[email protected]>
The assert is disabled in release builds.
* define HAVE_STRUCT_TIMESPEC and _XKEYCHECK_H on msvc * avoid LIBSTDCXX linking (msvc only), pass build config to all steps * add optional lto support; note clang lto requires llvm-config and lld * add llvm source-based coverage build, fix uninitialzed variable * update cmake-posix workflow configure, bin path, emulate in tox * add conda devenv file and workflow => use platform compilers and Ninja * update build instructions in readme file, cleanup tox/ci files Signed-off-by: Stephen L Arnold <[email protected]>
* remove the linker optimization arg for gnu on macos * remove GH workflow warning annotations, bump action versions Signed-off-by: Stephen L Arnold <[email protected]>
* updates tox argument syntax on macos * also restores missing OS list in conda-dev workflow Signed-off-by: Stephen L Arnold <[email protected]>
* win pthreads module tries to define timespec if HAVE_STRUCT_TIMESPEC is not defined except msys/mingw already defines it Signed-off-by: Stephen L Arnold <[email protected]>
Signed-off-by: Stephen L Arnold <[email protected]>
Signed-off-by: Stephen L Arnold <[email protected]>
* use more specific if check for windows includes * add missing win32 link library * move extern Io_MvLoadFileBz2 to header, use hdr in cmd.c Signed-off-by: Stephen L Arnold <[email protected]>
* msys/mingw has incomplete dirent so disable namespace * refactor cmake config, update dirent pkg spec in conda env * try cheap ENV hack to find dirent header in conda Signed-off-by: Stephen L Arnold <[email protected]>
* update setup-miniconda config to get latest pkg versions * add more workflow output, reset cache number * list envs, revert to previous with some info output, back to v2 Signed-off-by: Stephen L Arnold <[email protected]>
* leave default PY_VER but do not specify version for action * use proper activate command workflow in build step * add some path and prefix introspection, try find/which * bump windows ci runner version, list env, cat dirent.h * do not use jinja compier templates, revert to py39/win2019 default Signed-off-by: Stephen L Arnold <[email protected]>
* cleanup initial extern hacks and use ioAbc.h for missing symbol * remove superfluous dirent dep on windows Signed-off-by: Stephen L Arnold <[email protected]>
Majority of changed files are new cmake files so it's fairly easy to see the actual source changes. I started this back when the cmake PR was fairly new, and then I got busy (so fresh rebase on current master).
From ubuntu-clang workflow: