Adriaan de Groot
84b0262f31
[libcalamares] Default symbols to hidden
...
This restores the purpose of DLLEXPORT and helps keep the ABI
small-and-stable.
2024-02-19 23:23:03 +01:00
Adriaan de Groot
c945cca93a
[libcalamares] untangle GeoIP implementation details
...
Some implementation details should just be compiled
multiple times, rather than wrestling with visibility.
2024-02-19 21:40:10 +01:00
Adriaan de Groot
cefb437324
[libcalamares] Improve CMake bits
...
- use modern CMake commands, target-based
- make DLLEXPORT_PRO local to the build of libcalamares
- improve locality of includes
2024-02-18 23:19:43 +01:00
artoo
78eeb963a3
libcalamares: add compat and packages headers to be installed;
...
Use case would be customization of default modules, eg packagechooser requires compat/Variant.h and packages/Globals.h to compile in the calamares-extension repo
Signed-off-by: artoo <artoo@artixlinux.org>
2024-01-02 22:57:08 +01:00
Adriaan de Groot
5cad467a49
Python: use the vendored pybind11
...
Add a target that resembles what you would get from "normal"
use of pybind11 when following the examples. Link with it.
Drop Boost:Python sources from libcalamares.
2023-10-16 20:07:39 +02:00
Adriaan de Groot
1efb12e332
libcalamares: rename CalamaresUtilsSystem and Gui
2023-09-11 20:40:10 +02:00
Adriaan de Groot
c2064124b9
libcalamares: needs to link in QtNetwork
2023-09-08 21:41:31 +02:00
Adriaan de Groot
ca9006a1bc
i18n: move translation helper-function to CMakeModules
2023-09-04 22:44:08 +02:00
Adriaan de Groot
8a8860e75c
Qt6: resolve TODOs against missing KF6
...
- On FreeBSD, no KF6 was available
- On KDE Neon Unstable, there are somewhat wonky KF6 packages available
- Adjust CMake to find the KDE Neon versions, then fix the C++ code
2023-09-04 21:51:03 +02:00
Adriaan de Groot
49d449c211
i18n: enable Qt6 build of lang/ and libcalamares translations
2023-09-03 23:00:13 +02:00
Adriaan de Groot
179796d598
CMake: can't mix KF5 and Qt6
...
This will fail to build because we require KDE Frameworks
CoreAddons, but I don't have one just now.
2023-09-03 22:53:43 +02:00
Adriaan de Groot
b905afb169
CMake: restrict Qt6 build
...
- build **only** libcalamares
- switch the finding and linking of Qt modules to use qtname
2023-09-03 22:53:43 +02:00
Adriaan de Groot
6558cd5150
CMake: add .so-version
...
This is basically PR #2002 , from Undef-a.
2022-08-23 15:45:20 +02:00
Adriaan de Groot
66cc1a74ec
CMake: apply gersemi to libcalamares
...
Since this CMakeLists.txt writes out a C program, the formatting
is a bit weird; just start the written TU with a blank line to
make gersemi happy and keep the C-code aligned.
2022-08-23 12:23:13 +02:00
Adriaan de Groot
ba96f7ddc2
CMake: build libcalamares with an internal name for KPMcore
2022-07-23 23:48:21 +02:00
Adriaan de Groot
04e93f513c
[libcalamares] Always use the calamares::kpmcore library
...
When KPMcore is present, the calamares::kpmcore wraps that
and provides suitable API detection. If KPMcore is not
present, the same interface library provides -DWITHOUT_KPMcore.
2022-07-19 11:41:01 +02:00
Adriaan de Groot
eef3bb19d3
Merge pull request #2011 from calamares/improve-kpmcore
...
Fix kpmcore detection and compilation on Debian-11
2022-07-18 23:23:32 +02:00
Adriaan de Groot
3360ad612e
[libcalamares] Use Calamares interface-library to kpmcore
2022-07-10 13:38:48 +02:00
Adriaan de Groot
ab813b607f
CMake: move kpmcore support into the helper-CMake-module
...
- find the dependencies just once
- fix the interface for kpmcore so it can find its own
includes (this is mostly relevant for Debian)
2022-07-10 13:38:48 +02:00
Adriaan de Groot
170a5a8697
[libcalamares] Factor out the list of translations
...
The list of translation codes lives in one place, make it accessible
through a function in Calamares::Locale.
2022-07-03 00:05:40 +02:00
Adriaan de Groot
f53f83be56
CMake: create header with available languages
2022-07-02 23:19:44 +02:00
Adriaan de Groot
72240d0d59
Merge branch 'work-3.3' into calamares
2022-05-29 17:22:36 +02:00
Adriaan de Groot
09255a1d9c
[libcalamares] Add a more extensible About message
...
- make the years easier to update without annoying translators
- make the maintainers extensible.
2022-05-23 16:45:23 +02:00
Adriaan de Groot
d7459e2bfe
CMake: modernize optional parts of libcalamares
2022-04-25 15:23:27 +02:00
Adriaan de Groot
585d06494e
CMake: fix linking with modern Python and Boost
2022-04-25 14:47:18 +02:00
Adriaan de Groot
f923dedc3f
[libcalamares] Add a word-expander
...
This is a variant on KMacroExpander, which allows for
reporting of errors after expansion.
2022-04-12 15:28:07 +02:00
Adriaan de Groot
b167d8da03
[libcalamares,ui] Make KF5::CoreAddons explicit
...
- libcalamares doesn't need it anymore, because it ported away
from KPluginLoader,
- libcalamaresui does need it, because of KMacroExpander.
2022-02-08 16:13:40 +01:00
Adriaan de Groot
e5fa58b890
[libcalamares] Add tests for relativeCangeDirectory()
2021-11-02 22:27:32 +01:00
Adriaan de Groot
0b943e801c
[libcalamares] Begin implementing Runner
...
This copies a bunch of code from the System methods for running,
and then #if 0's them to get it to compile. Add some basic
directory-management.
2021-11-02 22:27:32 +01:00
Adriaan de Groot
bc9d8fb13a
[libcalamares] Rename files Label -> Translation
2021-07-28 14:22:28 +02:00
Adriaan de Groot
d6825c4986
[libcalamares] Fix linking with renamed targets
2021-07-28 13:20:35 +02:00
Adriaan de Groot
4114a2bbe8
CMake: chase renamed YAMLCPP
2021-07-26 15:08:29 +02:00
Adriaan de Groot
cbb1a5ef36
CMake: within Calamares repo, use the (eventual) imported names of libraries
2021-07-26 14:22:28 +02:00
Adriaan de Groot
1af8796b2b
[libcalamares] Refactor translations-for-a-test CMake code
...
- turn the translations-QRC phase into a function, just in
case other tests need translations as well.
- This CMake code might work as the base of translation-wrangling for
plugins (externally).
2021-04-18 13:35:18 +02:00
Adriaan de Groot
cfbe722350
[libcalamares] Test the translated string with real translations
...
- introduce a bogus translation context, load translations,
and check that the context-enabled translator does its job.
2021-04-18 13:19:55 +02:00
Adriaan de Groot
75eb2c3cd4
[libcalamares] Add tests for filesystem_use service
2021-03-23 12:08:52 +01:00
Adriaan de Groot
afdf431b77
[libcalamares] Add partition service for managing global storage
...
- the global storage key filesystem_use has a structured meaning,
so give it a (trivial-ish) API for reading and writing.
2021-03-23 12:08:52 +01:00
Adriaan de Groot
dc0164d508
[libcalamares] Also install the version header
2021-03-22 13:36:52 +01:00
Adriaan de Groot
b868894371
[libcalamares] Start a packages service for netinstall and others
2021-03-16 13:50:15 +01:00
Adriaan de Groot
0be5e04c2e
[libcalamares] Add a base class for Config-objects
...
This is an optional (until 3.3) base class, which can handle
Presets consistently for configurations.
2021-03-12 13:49:37 +01:00
Adriaan de Groot
d9f2f5e988
[libcalamares] Start a 'presets' configuration datastructure
2021-03-12 13:16:36 +01:00
Adriaan de Groot
a3eae323f1
[libcalamares] Rename test-executable: avoid clashes with 'cala<tab>'
2020-12-22 22:08:23 +01:00
Adriaan de Groot
1c4bf58fb4
[libcalamares] automount-manipulation test-program
2020-12-22 21:25:00 +01:00
Adriaan de Groot
9e6bddf31a
[partition] Add new AutoMount-manipulating helpers
2020-12-22 16:05:20 +01:00
Adriaan de Groot
6c7d295712
CMake: simplify C and C++ flags
...
- reduce the difference between clang and g++ builds, factor
common flags out of the CMake-if
- drop special boost-warning-suppression, we do that differently
most of the time in the affected source files
2020-10-24 12:32:07 +02:00
Adriaan de Groot
c412e285c2
[libcalamares] Link publicly to yaml-cpp
...
Needed on FreeBSD, where you otherwise might not get the
include paths for yaml-cpp added -- and utils/Yaml.h
expects them to be there.
2020-10-23 12:01:29 +02:00
Adriaan de Groot
9ce08beead
[libcalamares] Fix build
...
- The API definitions are just the symbols to define; these
are variously added through add_definitions() (needs -D)
or target_add_definitions() (doesn't).
2020-10-07 01:15:12 +02:00
Adriaan de Groot
40aa0fcaba
CMake: add a helper module for finding KPMcore
...
I think we had this (kind of) module a long time ago and it was
removed for over-complicating things; re-introduce one now that
KPMcore is used in 3 different places and all would benefit
from consistent API handling / defines.
2020-10-07 00:11:18 +02:00
Adriaan de Groot
e0ba5a6ba2
[libcalamares] Convenience functions for localeConf GS entry
2020-09-03 20:21:37 +02:00
Adriaan de Groot
1cd9b93a22
REUSE: Giant boilerplate cleanup
...
- point to main Calamares site in the 'part of' headers instead
of to github (this is the "this file is part of Calamares"
opening line for most files).
- remove boilerplate from all source files, CMake modules and completions,
this is the 3-paragraph summary of the GPL-3.0-or-later, which has
a meaning entirely covered by the SPDX tag.
2020-08-26 02:28:38 +02:00