Commit Graph

395 Commits

Author SHA1 Message Date
qu1ck 06028d5015 PCM: fix kicad version restriction logic
The json schema for packages implies that kicad min/max version
restriction takes major.minor.patch string but actual logic
only checks major and minor.

This fixes the logic to work with full major.minor.patch tuple.
Additionally the version max logic will substitute missing portions
with 999 for a reasonable default so that say 7.1 is still considered
as >= 7.1.5 when checking for max version.

Reported here
https://forum.kicad.info/t/updating-already-installed-plugins-using-content-manager/35532/5?u=qu1ck
2022-06-14 17:18:25 +00:00
Marek Roszko 6d7835e742 Switch shader storage to char arrays 2022-05-14 11:39:46 -04:00
Marek Roszko 8288f24264 Move all the shaders to glsl files (and fix the processor more) 2022-05-12 23:37:44 -04:00
Marek Roszko 239af40256 Split large shader files into string literals rejoined into std strings 2022-05-12 23:37:44 -04:00
Marek Roszko 6188f632b9 Initial implementation of shader translation to cpp at build time 2022-05-12 23:37:44 -04:00
Mark Roszko b6522bfc66 FindwxPython VCPKG_INSTALLED_DIR over the old _VCPKG_INSTALLED_DIR 2022-05-03 12:48:37 +00:00
Marek Roszko 2ace8976d5 Fix FindPythonInterp for vcpkg again 2022-05-02 18:53:19 -04:00
Marek Roszko 453015586a Remove the vcpkg specific hack to FindwxWidgets.cmake which is no longer needed/broken with manifests 2022-04-28 23:28:05 -04:00
Marek Roszko 2815343979 Extend manifest product version to include minor 2022-03-14 20:35:07 -04:00
Marek Roszko 9b3e9082d3 Add extraction of patch version to feed to resource defines 2022-01-23 14:46:37 -05:00
Marek Roszko 1689ee5954 Try and silence the ci failure on windows 2022-01-23 14:16:20 -05:00
Marek Roszko 92155f5262 Add a nightly build flag to swap icons 2022-01-23 09:21:06 -05:00
Marek Roszko d4ee74a832 Add a way to add a "revision" for use in windows manifests 2022-01-15 15:20:27 -05:00
Ola Rinta-Koski 9b406c1da4 Outline font support. 2022-01-08 16:47:45 +00:00
Wayne Stambaugh 3e373da8c2 Add missing "-unknown" suffix to KiCadVersion.cmake. 2022-01-03 18:45:05 -05:00
Steven A. Falco 40589d2c33 Add python 3.11 support 2021-12-28 14:49:24 +00:00
Wayne Stambaugh a9ca49a600 Begin version 7 development. 2021-12-22 12:41:51 -05:00
Wayne Stambaugh a34e7c9def Revert "Begin version 7 development."
This reverts commit 0d1748c91c.
2021-12-22 12:40:54 -05:00
Wayne Stambaugh 0d1748c91c Begin version 7 development. 2021-12-22 08:51:25 -05:00
Wayne Stambaugh 7545e2dfee Tag release version 6.0.0. 2021-12-22 08:32:19 -05:00
Wayne Stambaugh 6f711f8ce3 Begin final push to stable release 6.0.0 round 2. 2021-12-16 11:14:42 -05:00
Wayne Stambaugh 64f06cc7ef Tag 6.0.0 release candidate 2. 2021-12-16 08:23:42 -05:00
Wayne Stambaugh 4df25edb3d Begin final push to stable release 6.0.0. 2021-11-15 21:59:37 -05:00
Wayne Stambaugh 9fb05440b3 Tag 6.0.0 release candidate 1. 2021-11-15 21:33:46 -05:00
Seth Hillbrand 227f11a71e Suppress CMake warning about naming 2021-10-15 13:50:36 -07:00
qu1ck 0f7c0e3872 PCM implementation 2021-08-27 21:11:47 +00:00
Seth Hillbrand 17a17586a6 Don't use REALPATH to find shared/dynamic libraries
We require API compatibility in the ngspice library because we
dynamically load the library and assign function pointers to specific
names/signatures.  This should be consistent for all versions of the the
library until the soversion changes.

Fixes https://gitlab.com/kicad/code/kicad/issues/8878
2021-08-24 11:44:56 -07:00
Jon Evans 4e273827f0 Fix comparison in Findngspice.cmake 2021-08-15 23:05:46 -04:00
luz paz 0446d35f0d Fix source comment/doc typos (follow-up)
Found via `codespell -q 3 -S *.po,./thirdparty -L aactual,acount,aline,alocation,alog,anormal,anumber,aother,apoints,aparent,aray,dout,einstance,modul,ot,overide,serie,te,,tesselate,tesselator,tht`
2021-07-13 10:48:17 +00:00
Jon Evans 27932883d9 Pass configured Python interpreter in to use for BOM plugins
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8594
2021-06-15 22:52:16 -04:00
luz paz f968fc8719 Fix source comment / documentation typos 2021-06-09 19:32:58 +00:00
Jon Evans b345d97954 Patch out FindPythonInterp to hopefully fix Ubuntu build
This is a bit of a hacky solution but in theory should work ok.
There was discussion of bringing in FindPython3 from upstream
CMake, which we could also do if someone is motivated...

Fixes https://gitlab.com/kicad/code/kicad/-/issues/8553
2021-06-07 08:52:34 -04:00
Seth Hillbrand f274a00c08 Remove PYTHON_* compile options 2021-06-01 20:18:24 +00:00
Adam Wolf 3100cd3599 Fix Python loading on macOS without wrangle_bundle.
The goal of this work is to let developers run Python things
on macOS on their builds without generating a full
relocatable and redistributable build.

This is a WIP.
2021-05-31 02:09:43 +00:00
Adam Wolf 327bd28298 Clarify macOS CMakeModules changes
Closes #8270
2021-04-28 12:58:49 +00:00
Marek Roszko 713f39ef71 Ensure we don't accidentally find a system python interp on windows 2021-04-26 20:58:28 -04:00
Ian McInerney fcca4bc3e6 Add a new warnings variable that can be used for injecting new warnings
This variable can be used to add in more warnings to the compilation
that only apply to the KiCad code and not the SWIG or third-party code.
2021-04-22 22:08:00 +01:00
Marcus A. Romer c5e77e9739 Respect KICAD_DOCS when searching for help files
On Linux, the documentation and help files are potentially installed to
a non-standard location (i.e., outside of /usr/share/doc/kicad/). This
can be the case when, e.g., multiple versions of KiCad are installed in
parallel. Making KICAD_DOCS available at run-time is the only viable
solution to allow the applications to find the help files in this case.

Fixes https://gitlab.com/kicad/code/kicad/issues/7874
2021-04-21 19:19:25 +00:00
Adam Wolf 68139cdd84 Remove unnecessary path adjustment on macOS in FindwxPython.cmake 2021-04-21 12:50:31 +00:00
Adam Wolf e4bd687245 Use newer BundleUtilities and GetPrerequisites.
macOS bundling needs executable scripts to be handled
better by CMake than they were in the past.

Until we require 3.14 or newer, bring in the modules from
45ed314bff.
2021-04-21 12:50:31 +00:00
Ian McInerney 4fc41627e9 Update and modernize linux metadata files
* Switch to using org.kicad.kicad as the main app ID
* Move the appstream file to a metainfo file
* Rename all metadata files to use the reverse DNS scheme
* Add header matching to mime type files where possible
* Add a mime type for gerber job files
* Add a QA test that verifies all the linux metadata files and
  run it in CI
* Update the visible names in the launcher entries to be more
  consistent with the internal visible names
* Update various strings and items in the metainfo file so they
  are more descriptive and easier to read
2021-04-15 16:34:12 +00:00
Johannes Maibaum 39c1387b5b Allow to relocate EDA libraries out of KICAD_DATA
Introduce a new advanced config variable `KICAD_LIBRARY_DATA` which can
be used to move templates, symbols, footprints, and 3dmodels out of
`KICAD_DATA`. If not defined, everything is kept as before.

To facilitate this, PATHS::GetStockEDALibraryPath() is added. This
allows to differentiate code paths looking for EDA library data vs. code
paths looking for plugins, demos, and the like.

Thanks to Aimylios for the hints and suggestions with regards to the
stock EDA library data path handling on Windows and MacOS.
2021-04-14 01:51:22 +00:00
Marcus A. Romer 1632707d9b Replace tabs with spaces 2021-04-05 01:13:39 +00:00
Jon Evans 44f88f840c Bitmaps: a few improvements from review 2021-03-11 08:37:35 -05:00
Jon Evans 18037e2f65 Rework bitmap system to load from archived PNGs
Bitmaps are now identified by an enum class instead of by pointers.
Bitmap loading and caching is now handled by a class in common, and
we no longer compile most bitmaps into the binary, so there is no
longer a bitmaps static library.

Instead, bitmaps are archived to a .tar.gz file which is installed
in ${KICAD_DATA}/resources/images.tar.gz

The source PNGs are checked in to Git as the original CPP files were,
so that people can build without the required dependencies to convert
SVGs to PNGs.

Initial support is also added for dark theme icons, although this
is not yet exposed in the GUI.

Stubs are present for multi-resolution image resources, but this is
not fully-baked yet and could use some refinement.
2021-03-11 08:37:35 -05:00
Marek Roszko 3d4ac9af03 Relocate win32 resource files to the central folder for further consolidation 2021-03-09 21:48:14 -05:00
Marek Roszko 8831c5567c Add win32 version manifest block 2021-03-04 00:34:48 -05:00
Ian McInerney fdf6318218 Ensure cmake commands depend on the cmake file they use
Without this dependency, the build stage won't rerun
if the CMake file changes on disk.
2021-01-28 00:24:22 +00:00
Ian McInerney 9263c0d554 Wrap linux metadata translation in a error catching wrapper
This will gracefully handle errors that prevent the file translation
by simply copying the file if they occur. This allows the build to
proceed and the logs to contain the error.
2021-01-28 00:24:22 +00:00
Ian McInerney beb50c529e Reorganize the CMake folder to separate build and configure steps
The BuildSteps folder now contains the CMake scripts that are
called during the build process as individual stages, while
the root CMakeModules directory contains the CMake files used
during the configuration phase.
2021-01-28 00:24:22 +00:00