Marek Roszko
db1f457ff9
Add msvc flag definition for ARM64
2021-03-10 21:48:04 -05:00
Marek Roszko
71c1be8de0
Guard BUILD_SMALL_DEBUG_FILES away for MSVC
2021-03-10 18:33:07 -05:00
Marek Roszko
df2154a87a
Rename KICAD_BUILD_PARALLEL_CL_MP to KICAD_WIN32_BUILD_PARALLEL_CL_MP
...
Also make it a dependent option on WIN32 for sanity.
2021-03-10 00:28:04 -05:00
Marek Roszko
a82764f43a
Fix the missing optimizations for RELWITHDEBINFO builds
2021-03-09 20:47:02 -05:00
Marek Roszko
8cb127b8e4
Change the msvc exception handling mode when using asm libcontext
2021-03-04 21:48:26 -05:00
Marek Roszko
2bf488e0c7
Add cmake option to enable win32 fibers
2021-03-04 21:48:26 -05:00
Marek Roszko
75c0dc7454
Make sure the mingw rc gets the build dir include
2021-03-04 07:32:58 -05:00
Marek Roszko
047bfdfb30
Ensure MSVC builds with standard unwinding enabled
...
It seems some cmake copies don't enable it for some odd reason ?
2021-02-27 14:20:45 -05:00
Marek Roszko
64f817001a
Change pcbnew.pyd install location for vcpkg
2021-02-10 21:23:01 -05:00
Marek Roszko
de4eafc38d
Bump only the minimum cmake to 3.10
2021-02-09 18:51:27 -05:00
Marek Roszko
872184fe8b
Revert "Bump minimum required CMake version to 3.10"
...
This reverts commit a475f45753
.
2021-02-09 18:46:13 -05:00
Simon Richter
a475f45753
Bump minimum required CMake version to 3.10
...
This allows us to remove even more workarounds
2021-02-08 12:23:08 +00:00
Ian McInerney
5418e3454c
Default the translations build to off and build it in CI
2021-01-18 17:43:34 +00:00
Ian McInerney
43baf2e3f2
Translate the linux metadata files
2021-01-18 17:43:34 +00:00
Ian McInerney
e9fa9f68b2
Integrate the i18n CMake into the main CMake
...
This adds a new target i18n that will compile all the translation
files.
2021-01-18 17:43:33 +00:00
Marek Roszko
3ad0e5d8bf
Turn on /bigobj for MSVC as release objs with swigwin exceed the standard limit
2021-01-12 19:49:41 -05:00
Seth Hillbrand
2cb8dff650
Use KICAD_DATA for data path lookup in scripting
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7036
2021-01-12 08:22:17 -08:00
Michael Kavanagh
9546ad88b5
Packaging: more human-friendly names on macOS...
...
At least it appears that way (just the symlinks are renamed).
2021-01-09 16:23:49 +00:00
Marek Roszko
84dd78e01d
Fix the install location for vcpkg built python modules
2021-01-07 00:08:11 -05:00
Marek Roszko
318d7ab67b
Use cmake_dependent_option for KICAD_WIN32_DPI_AWARE
2021-01-07 00:08:10 -05:00
Ian McKellar
7f6be05d9d
Correct GLEW bundled include directory
...
There is no CMake target property PRIVATE_INCLUDE_DIRECTORIES, just
INCLUDE_DIRECTORIES (PRIVATE and PUBLIC directories) and
INTERFACE_INCLUDE_DIRECTORIES (PUBLIC and INTERFACE directories).
Building on Linux with -DKICAD_USE_EGL=ON but without a system-wide GLEW
fails without this change.
2020-12-01 00:56:28 +00:00
Ian McInerney
11e6cac42b
Introduce EGL backend support for the OpenGL canvas
...
wxWidgets 3.1.5+ on Linux will compile with the Wayland EGL
canvas as the backend instead of the X11 backend. This requires a
version of GLEW compiled with the proper EGL defines and a different
header/code for certain parts that are X11 GLEW specific.
This introduces an in-tree version of GLEW that will be built with the
GLEW_EGL flag then statically linked into the KiCad executables when
EGL support is needed.
2020-11-11 00:41:02 +00:00
Seth Hillbrand
9ed6cdd943
Remove GITHUB plugins
...
KiCad github downloads are no longer supported
Fixes https://gitlab.com/kicad/code/kicad/issues/6182
2020-10-29 16:45:04 -07:00
Seth Hillbrand
19155edde0
Work around broken FindWxWidgets in vcpkg
2020-10-15 11:23:50 -07:00
Simon Richter
d339979c28
Turn off compiler extensions
...
We want to be somewhat standards compliant if we can.
There is a small complication, which we work around:
gcc sets __STRICT_ANSI__ in "c++11" mode (the non-strict mode would be
"gnu++11"), which causes the "strdup" definition to go away. If wx < 3.1 is
compiled with GNU extensions, it just forwards the wxCRT strdup function to
system strdup and doesn't create a definition for the wxCRT function, and
when a program is then compiled in strict mode against that, the wxCRT
function is missing.
From 3.1 onwards, the function is provided unconditionally in wx, so the
workaround is no longer needed there.
2020-10-14 16:22:37 +00:00
Mark Roszko
a8bd0a9b84
Handle Windows manifests ourselves and add dpi awareness option
2020-10-10 19:08:23 +00:00
Ian McInerney
f1ebb64e51
Remove unused CMake option
2020-09-30 23:34:04 +01:00
Jon Evans
8a5163a9f5
Build cvpcb after pcbnew
...
cvpcb now depends on ${PCBNEW_IO_LIBRARIES} set in pcbnew's CMakeLists.txt
2020-08-23 16:22:29 -04:00
Seth Hillbrand
a38c2aad1f
ADDED: Support compressed STEP and VRML files
...
This adds support for opening .stpZ, step.gz and .wrz files where the
files have been compressed using ZIP or gzip according to the "standard"
published by the MBx volunteer forum at
https://www.cax-if.org/documents/rec_prac_file_compression_v12.pdf
Fixes https://gitlab.com/kicad/code/kicad/issues/2479
2020-08-19 03:20:30 +00:00
Ian McInerney
0a1d8c1aaa
Move lemon parser generation into build directory
...
This moves the generated files out of the source tree and into
the build directory. They are now regenerated each time they are
needed, based on the timestamp of the generated file compared to
the timestamp of the lemon file.
To do this, we also bundle lemon into the thirdparty directory
and build it for ourselves since it is a very tiny program and
not all platforms seem to distribute it in a consistent manner.
Fixes https://gitlab.com/kicad/code/kicad/issues/5013
2020-08-10 13:53:54 +00:00
Ian McInerney
11ef147a36
Drop support for GTK2 on Linux
...
CHANGED: Drop support for GTK2 on Linux
2020-07-16 15:16:31 +00:00
Tomasz Wlostowski
c897273f11
PROPERTY_MANAGER requires propgrid wx component
2020-07-05 22:44:38 +02:00
Seth Hillbrand
7e3a338518
Move warning flags to proper place
...
Cleans unitialized warnings in wxApps
2020-07-02 12:17:45 -07:00
Seth Hillbrand
d663be853f
Explicitly add signed/unsigned comparison to warnings
2020-07-02 10:54:34 -07:00
Ian McInerney
d72a778f19
Move Doxygen test to main CMake scope
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4468
2020-05-17 18:29:50 +01:00
Ian McInerney
0658d297e5
Cleanup cmake for documentation creation
2020-05-17 01:00:37 +01:00
Simon Richter
2341b69840
Make sure that Ninja knows the version header ( fixes #4209 )
...
This is required, because Ninja otherwise doesn't properly rebuild after
updating the version string header file.
Because BYPRODUCTS requires CMake 3.2, bump the minimum version and remove
now unused compatibility code for older CMake versions.
2020-05-09 15:25:33 +00:00
Ian McInerney
e4b6487fca
Overhaul compiler warnings infrastructure
...
* Track our warnings separate from normal flags
* Remove all warnings from the SWIG code
* Add more GCC warnings
2020-05-06 01:47:20 +01:00
Ian McInerney
5a4e4aea67
Enable new warnings
2020-04-25 00:46:29 +01:00
Jon Evans
7df3df3381
Add basic netlist QA test
2020-04-19 19:13:24 -04:00
Simon Richter
f663f199b4
Tighten version requirements: GLM >= 0.9.8
...
Commit ae6fbc9c6
builds a glm::vec4 from a vec3 and one float, which
requires 0.9.8 at least.
2020-04-19 14:21:45 +00:00
Ian McInerney
7bda8178d1
Move library includes to main CMake file
...
Placing them behind the SYSTEM directive tells CMake to tell
the compiler they are system libraries, so it shouldn't show
warnings created from them.
2020-04-19 01:11:56 +01:00
jean-pierre charras
25d7c0cae2
Opencascade: fix min version: OCE=0.18, OCC=6.9.0
...
Fix also a few minor Coverity warnings.
2020-04-16 10:22:20 +02:00
Ian McInerney
d787596124
When using ASAN, disable stack protection and source fortification
...
ASAN throws some false positive errors on stack overflows when
used with the stack protector option, and doesn't support source
fortification.
2020-03-18 19:12:24 +00:00
Jon Evans
009641d151
Make libcurl a required dependency and always build KICAD_CURL
2020-02-26 01:03:07 +00:00
jean-pierre charras
6d44a93eaf
Linking, mingw: Add bcrypt to libraries linked to libcommon.
...
It is already added with MSVC, and must be added with gcc/mingw
However, the cmake option:
add_definitions( -DBOOST_UUID_FORCE_AUTO_LINK )
does not work on msys2 (at least with my cmake version), so another syntax is used.
2020-02-21 10:37:59 +01:00
Jon Evans
e8e3b4f11e
Rename UUID to KUUID to fix MSVC build
...
Also add another newly-required boost flag
2020-02-20 22:07:17 -05:00
Jon Evans
b824051adf
Ensure DEBUG is defined on all platforms for debug builds
2020-02-07 11:58:41 +00:00
Jon Evans
6b3fdf2d15
Remove cmake change that accidentally got merged
2020-02-05 20:47:08 +01:00
Jon Evans
fe375b4419
Allow sheet pins to be strong drivers if they don't conflict with anything
...
Also try harder to match bus members in case one was renamed by a higher
priority label.
Fixes https://gitlab.com/kicad/code/kicad/issues/3797
2020-02-05 14:23:55 +00:00