Commit Graph

208 Commits

Author SHA1 Message Date
Seth Hillbrand daf178b64f Upgrade Clipper2 to 1.3.0
Fixes a number of minor inflation issues including slivers when
overlapping points are inflated

Fixes https://gitlab.com/kicad/code/kicad/-/issues/16182
2023-11-28 16:02:39 -08:00
Mark Roszko 2b3ad808ea Add the BTI C hint to libcontext arm64 2023-11-01 15:53:11 +00:00
Alex Shvartzkop 64a64f5216 NanoSVG: parse 'class' attribute before 'style'. 2023-10-09 07:04:50 +03:00
Jeff Young 902e5df2e8 Report unsupported DXF features on import.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15614
2023-09-25 16:21:11 +01:00
Ian McInerney a44728bc13 Remove minimum CMake versions from thridparty
New CMake versions warn when support for CMake 3.5 and before is
requested, so since we use a higher CMake minumum, just remove these
version checks in the thridparty code to remove the warnings.
2023-09-24 00:21:06 +01:00
Jon Evans 9973dd3e5d Fix sentry compile issues on macOS 2023-09-19 20:31:14 -04:00
Jeff Young 9114578004 Improve custom rules syntax help (based on info in docs).
Also turns on table processing in ConvertMarkdown2Html().

Fixes https://gitlab.com/kicad/code/kicad/-/issues/15609
2023-09-16 14:41:43 +01:00
Mark Roszko ca0b103b54 Fix/disable argparse install (again) 2023-09-15 16:21:50 +00:00
Marek Roszko 0e0c267829 Add missing pragma once to compoundfilereader.h 2023-09-09 22:00:04 -04:00
Marek Roszko bd52ed2054 Upgrade {fmt} to 10.1.1 to fix warnings 2023-09-09 18:39:24 -04:00
Marek Roszko 11de95778b Unwrap the FROM_UTF8 macro in favor of direct function
The extern just gets annoying to try to export the func later. We also yeet TO_UTF8 to string_utils.h for parity.
2023-09-09 00:10:57 -04:00
Alex Shvartzkop 2c07866fff NanoSVG: update image size to the actual size after scaling. 2023-09-07 10:57:02 +03:00
jean-pierre charras ecd8c7e2cc Fix a compil issue (in sch_altium_plugin.cpp) and compil warnings. 2023-09-07 08:53:30 +02:00
Alex Shvartzkop c64b44913c NanoSVG: change preserveAspectRatio default to "xMidYMid meet". 2023-09-02 22:06:32 +03:00
Alex Shvartzkop 2cd7c0636f NanoSVG: basic support for stylesheets.
Based on https://github.com/memononen/nanosvg/pull/175
2023-09-02 19:17:31 +03:00
Marek Roszko 88a76d4b01 Update argparse to get multiline alignment 2023-08-31 22:09:34 -04:00
jean-pierre charras 9e446ba17b Update Clipper2 to commit 7cf615c2799a9328ec32eb116f46b64ed34aecff.
(it fixes (or try to fix) an issue impacting Kicad)
2023-08-27 11:13:27 +02:00
Seth Hillbrand 57ae1b872e Fix build issue in Clipper2 for *nix 2023-08-22 12:15:05 -07:00
jean-pierre charras 235006a1b7 Update Clipper2 to commit 4ef91e99756f97cab23e7fa2cd78861deeb61338.
It fixes some of our issues.
However, Clipper issue 618 can create problems in zone filler, Clipper2
will be updated as soom as issue 618 is fixed.
2023-08-22 18:18:55 +02:00
Seth Hillbrand 57ba38560c Optimize library load time for Altium plugin
Load times were >20min for moderate sized libraries as EnumFiles
iterated over the entire list for each operation.  The update modifies
our third-party lib to allow a return value, stopping the iteration when
we find our desired entry.  This also provides a short-circuit for
ASCII-based names, allowing single-level parsing if available
2023-08-18 13:50:15 -07:00
Ian McInerney 199098910a Disable shared library building for thirdparty libraries
Specifically, the fmt CMake has defaulted to not specifying the library
type to build, so without BUILD_SHARED_LIBS=OFF set, it might try to
build it as a shared library, which we don't want.
2023-08-02 22:58:32 +01:00
Mark Roszko b95b07e54d Turn off the FMT_INSTALL opt 2023-07-30 21:20:04 +00:00
Alex Shvartzkop b784b44ed0 UTF16ToWstring: stop at NUL input terminator. 2023-07-25 00:21:55 +03:00
Alex Shvartzkop d40e34aebe CompoundFileReader: fix build error 2023-07-23 15:13:08 +05:00
Alex Shvartzkop c39dfb9f05 CompoundFileReader: fix UTF16~wstring conversion on 16b wchar compilers 2023-07-23 14:55:15 +05:00
Marek Roszko a5cf2716b6 Update {fmt} to 10.0.0 2023-07-15 13:49:55 -04:00
Simon Richter 49a72f7cb4 Fix keyword order in include setup (Closes: #15081)
The SYSTEM keyword can only be used before a visibility keyword, so
"PUBLIC SYSTEM" declares an include directory named "SYSTEM".
2023-07-03 10:11:00 +00:00
Seth Hillbrand d5d28e5b34 Add magic_enum 2023-06-14 09:44:10 -07:00
Seth Hillbrand fe62a3f985 Update Clipper2 to 9d946d7
Fixed a number of smaller issues as well as overlapping segment
cleaning.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/14682
2023-06-01 11:38:33 -07:00
Ian McInerney 20ec8ed303 Fix GitLab URLs to point to the correct project page
GitLab 16.0 removes support for URLs that don't contain /-/ after the
repository name, so the report bug feature and various links we had in
the source (including the git-fixes script) would lead to a 404 error.

See GitLab docs for deprecation/removal notice:
https://docs.gitlab.com/ee/update/deprecations.html?removal_milestone=16.0#legacy-urls-replaced-or-removed

Fixes: https://gitlab.com/kicad/code/kicad/-/issues/14759
2023-05-17 11:23:00 +01:00
Seth Hillbrand f7f52d77e4 Rework Copper Sliver check
Adds QA checks to copper sliver tests.  Adds the following checks:
- Dot product between two arms (quickly avoids checks for >90°)
- Checks the sliver is convex (area test)
- Eliminates minor slivers with angles that are approximately 0 and ones
  with the opposite side width beneath a configurable level
- Updates Clipper2 to fix a couple of jagged edges on inflate
- Adds simplify during zone fill inflation to limit jaggies

Fixes https://gitlab.com/kicad/code/kicad/issues/14549
2023-04-25 10:32:46 -07:00
Jeff Young 2533141583 Revert "Update pybind11 to version 2.10.4" for now.
This reverts commits 9d077c9ba5 and
b4938f5198.

They cause a crash-on-startup on Mac ARM machines, failing to get the
locale encoding (nl_langinfo(CODESET) failed).
2023-04-18 17:28:10 +01:00
Alex b4938f5198 Patch pybind11 version 2.10.4 for MSVC
Based on commits c483c582 and 8f1b2acd
2023-04-16 22:34:22 +00:00
Alex 9d077c9ba5 Update pybind11 to version 2.10.4 2023-04-16 22:34:22 +00:00
Marek Roszko d18102fff6 Add a hack to try and capture more crash data 2023-04-16 13:49:21 -04:00
Marek Roszko ca770c79ab Make libcontext build statically
Fixes an issue combining cpp and obj files explicitly on arm64
2023-04-10 21:22:04 -04:00
Marek Roszko 32a747374f Fix the #ifdef for the release_fcontext stub
As if the if def hell was easy to read
2023-04-10 19:12:27 -04:00
Marek Roszko 726b137fed Fix libcontext arm64 build and purge winfiber
The winfiber implementation ran into memory leak issues as it didnt exit the stack jumps correctly
and lets not mislead anyone by keeping it
2023-04-10 18:07:35 -04:00
Ian McInerney 45b8dced92 Fix nanodbc build with clang and gcc stdlib
This should really be fixed upstream somehow, but the upstream build
with clang is broken on Fedora 38 right now anyway due to header issues.
2023-04-02 00:50:33 +01:00
jean-pierre charras ac71227e75 Fix compil warnings. 2023-03-23 18:36:59 +01:00
Seth Hillbrand 97558b62ec Update to Clipper 1.2+
Updates to Clipper2 742614f, which includes bug fixes for specific KiCad
boards beyond Clipper2 itself

Fixes https://gitlab.com/kicad/code/kicad/issues/14294
2023-03-22 15:24:26 -07:00
Ian McInerney e20b33cb66 Fix boost dependencies
* Add Boost::locale explicetly to the CMake since nanoodbc requires it
* Don't let nanoodbc add all Boost libraries to the link line, since it
  is used in common, and it was pulling the unit test framework into
  common then.
2023-03-11 13:29:45 +00:00
Marek Roszko b4bb1f4b46 update vcpkg to get the arm64 compatible packages 2023-03-10 21:23:09 -05:00
Marek Roszko 65818bd4a3 Add windows arm64 support 2023-03-10 21:19:56 -05:00
jean-pierre charras 67ec09c850 fix a minor compil warning 2023-03-05 09:16:04 +01:00
Jon Evans 99dea1a9d7 Update {fmt} to 9.1.0 2023-03-01 17:53:27 -05:00
Ian McInerney bcb93e9aa7 Modernize setting of compiler definitions in CMake
add_compile_definitions was added in 3.12, and our minimum is now
greater than that.
2023-02-22 01:44:06 +00:00
Seth Hillbrand 5a56b18b0e Revert "Update Clipper2 to version 1.1.1"
This reverts commit c594a0eba2.
2023-02-17 09:24:19 -08:00
Seth Hillbrand c594a0eba2 Update Clipper2 to version 1.1.1 2023-02-17 17:14:37 +01:00
Ian McInerney 1355561d6c Update lemon to latest upstream sources
This is the lemon.c and lempar.c files from uptream as of Feb 16, 2023.
2023-02-16 18:30:46 +00:00