Commit Graph

418 Commits

Author SHA1 Message Date
Přemysl Eric Janouch 8950a533b4
Don't generate marshallers in the source tree
This is much cleaner.  I'm unsure of the original motivations,
perhaps I just wanted to have all source files next to each other.
There is no functional issue with the build directory, though.
2021-11-01 10:14:19 +01:00
Přemysl Eric Janouch 79d2fc78ea
Win64Depends.sh: describe a more precise fix 2021-11-01 09:26:48 +01:00
Přemysl Eric Janouch 1d118d5406
CMakeLists.txt: remove pointless targets
The win32-depends target only makes sense /before/ running CMake.

Let the builder do it by hand rather than invoking it automatically,
which would be another sensible solution.
2021-11-01 07:52:41 +01:00
Přemysl Eric Janouch d5ea2e2b4d
Move GSettings schema checking to tests 2021-11-01 07:40:32 +01:00
Přemysl Eric Janouch 0cec1b4bad
CMakeLists.txt: slightly modernize
Before version 3.12, we still need to set CPACK_PACKAGE_VERSION
manually, and the subversions are actually wrongly defaulting to 0.1.1
(but we don't particularly care).

FindIntl has been there since CMake 3.2.
2021-10-31 04:18:44 +01:00
Přemysl Eric Janouch a40b281078
Improve clang-format configuration 2021-10-30 03:01:11 +02:00
Přemysl Eric Janouch dd48af42eb
Stop stuttering in CMake scripts 2021-10-29 04:56:56 +02:00
Přemysl Eric Janouch ed6d34159e
Win32Depends.cmake: make a note about cURL 2021-10-29 04:30:35 +02:00
Přemysl Eric Janouch ff03060efa
Win32Depends.cmake: reflect mingw-get's existence
But let's keep Lua in the downloader, to make cross-compiling easier.
2021-10-29 04:11:03 +02:00
Přemysl Eric Janouch 9dcef6a14f
Make ld_library_find_symbol() easier to read
As well as shorter, strangely.

Symbols may technically exist directly in the root category now.
2021-10-29 01:31:50 +02:00
Přemysl Eric Janouch ee7be81434
Clean up 2021-10-29 00:24:12 +02:00
Přemysl Eric Janouch 0c5c680f62
Get rid of broken vera++, integrate clang-tidy 2021-10-29 00:22:43 +02:00
Přemysl Eric Janouch f139efba6d
Support Windows XP forever
GTK+ 3 has been almost abandoned, and there is little newer versions
could improve, so keep supporting the old and working 3.8.
2021-10-28 21:36:54 +02:00
Přemysl Eric Janouch 83c1e7a491
Update translations 2021-10-28 21:33:09 +02:00
Přemysl Eric Janouch 59b5ff7020
Append ellipsis to the Print menu item
It opens a dialog.
2021-10-28 20:05:31 +02:00
Přemysl Eric Janouch 2bc9fe4f1d
Fix scaling to fit paper 2021-10-28 06:14:21 +02:00
Přemysl Eric Janouch bd12c0502a
Update user guides
Now add text labels, and this project is functionally complete.
2021-10-28 06:01:03 +02:00
Přemysl Eric Janouch 4f01392de5
Add basic print functionality
Sadly, the line width depends on the widget's DPI, which seems to
even cause uneven lines on Windows, where virtual printers claim
high DPI.  It might also be an unrelated problem.

Similarly, selected objects are exported highlighted.

Other than that, it works quite well.

Add a manifest to make the print dialog look nice with the older
GTK+ bundle we depend upon.

The RC file could theoretically be scanned for /\s+"([^"]+)"\s*$/,
unescaped, and the results configure_file()-stamped.
2021-10-28 05:57:27 +02:00
Přemysl Eric Janouch 6cd6ddbd1c
ld-window-main.c: clean up 2021-10-28 05:25:57 +02:00
Přemysl Eric Janouch a4a0dd2106
Clean up
It turns out the RC detection snippet is no longer necessary
after the recent CMake version bump.

The "name" argument in the UI file is redundant, implied by "action".
2021-10-28 05:18:03 +02:00
Přemysl Eric Janouch b45670f9e9
CMakeLists.txt: simplify NSIS configuration
Functionality has been verified to remain as it was
on a native Windows XP build using NSIS 3.08.
2021-10-27 21:47:49 +02:00
Přemysl Eric Janouch 06e3c9e280
Bind # to toggling the view grid
As seen in Inkscape.
2021-10-27 18:38:33 +02:00
Přemysl Eric Janouch 073a4cd4a7
CMakeLists.txt: don't look for gtk-doc by default
The integration is broken and it spams with a warning message
when building on Windows directly.
2021-10-26 20:12:26 +02:00
Přemysl Eric Janouch f7807cada2
Make the about dialog link work in Windows XP
For some weird reason, GTK+ is trying to connect to URLs first,
which typically won't succeed these days.
2021-10-26 07:37:50 +02:00
Přemysl Eric Janouch 08cf0ef2e6
Make development builds find the program icon 2021-10-26 06:32:29 +02:00
Přemysl Eric Janouch baf2dc8ccd
Fix help on Windows with newer GIO
It needs its launch helper, luckily it's a tiny binary.
2021-10-25 23:12:14 +02:00
Přemysl Eric Janouch a5e341bcc1
Update README 2021-10-25 18:21:23 +02:00
Přemysl Eric Janouch bc8ceebef7
Add clang-format configuration, clean up 2021-10-25 18:06:50 +02:00
Přemysl Eric Janouch da0a5c43dc
Add the user guide to the Help menu
The old GLib put up a good fight, it says "URIs not supported"
even for the file:// scheme.
2021-10-25 02:50:14 +02:00
Přemysl Eric Janouch 384dad7bd8
Get rid of extra semicolons after macros 2021-10-25 00:27:32 +02:00
Přemysl Eric Janouch ada833a009
Abandon AsciiDoc in favor of plain HTML
It is very difficult to set up Python or Ruby on Windows XP.

Simple HTML works better, everywhere, it covers all our needs,
and it isn't any harder to write.

This documentation is now installed.
2021-10-25 00:04:28 +02:00
Přemysl Eric Janouch 924617e1ce
Silence some GLib deprecation warnings
Using the GLib version from the GTK+ 3.8.2 bundle.
2021-10-24 16:45:53 +02:00
Přemysl Eric Janouch 67acddb26d
Disable the broken gtk-doc rule by default
Unlikely to be used by anyone, especially since it cannot produce
anything useful anymore.
2021-10-24 16:43:55 +02:00
Přemysl Eric Janouch bc1dd64fdf
Partially unbreak the hopeless gtk-doc
GNOME Idiots Inc. keep breaking everything,
sometimes in coöperation with KitWare KludgeMakers Ltd.
2021-10-24 15:31:03 +02:00
Přemysl Eric Janouch 8c290df7b5
Update README 2021-10-23 20:27:51 +02:00
Přemysl Eric Janouch 5fc35517cb
Update README 2021-10-23 20:11:10 +02:00
Přemysl Eric Janouch 5a4cffd35e
Win32Depends.cmake: remove an unused feature 2021-10-23 20:02:45 +02:00
Přemysl Eric Janouch 3a087ad581
Remove unnecessary DLLs from Windows builds
This saves 20 MiB and 4 MiB of libraries in MSYS2 and bundle
builds respectively, in total, without any adverse effects.

The MSYS2 build remains bloated, due to the Adwaita icon theme.

Bump minimum CMake version to avoid a bug.
2021-10-23 18:01:30 +02:00
Přemysl Eric Janouch 4305c603e9
CMakeLists.txt: clean-up
Use the newer 3.0 string quoting to save some ugly escaping.
2021-10-23 16:35:36 +02:00
Přemysl Eric Janouch cbe23b7bb6
Bump version, update NEWS 2021-10-22 22:34:39 +02:00
Přemysl Eric Janouch 2d103ed454
Fix the file save dialog and translations 2021-10-22 22:23:59 +02:00
Přemysl Eric Janouch 885ccb46a3
Win32Depends.cmake: get rid of 7z
CMake 3.9 has been proven to successfully unpack 7z archives.
2021-10-22 21:53:35 +02:00
Přemysl Eric Janouch 47fb9653b8
Bump the CMake version requirement, fix Windows
- Add a missing runtime library for gettext-tools.
 - Remove the no longer necessary customized FindGettext.cmake,
   since the downloaded gettext binaries are new enough.
 - Make the installer at least ask to uninstall previous versions.
 - Adjust the PATH of tests so that they'll run on Windows directly.
 - Fix quoting so that the project will build inside paths with spaces.
 - Resolve a GSettings deprecation warning.
 - Update the README's build instructions as appropriate.
 - Require CMake 3.9 because of the README's suggestion to fix
   FindPkgConfig.cmake manually using separate_arguments(UNIX_COMMAND).

Tested build configurations:
 - native Arch Linux,
 - native Windows XP with the newest NSIS,
 - Arch Linux Mingw-w64 i686 Win32Depends.cmake NSIS cross-build + XP,
 - Arch Linux Mingw-w64 x86_64 MSYS2 NSIS cross-build + Windows 10.

Detected issues:
 - The file save dialog will not add the extension automatically,
   seen with MSYS2.
2021-10-22 20:08:51 +02:00
Přemysl Eric Janouch 42b6da1ffe
README: fix cross-building instructions
Copy-pasting and exhaustion do not go well together.
2021-10-22 14:41:37 +02:00
Přemysl Eric Janouch 98f16c2c76
Further minor improvements to cross-compilation 2021-10-22 01:40:29 +02:00
Přemysl Eric Janouch 03c6ae0750
Include modern build instructions for Win64
Mostly just so that the two options don't look the same.
2021-10-21 21:53:20 +02:00
Přemysl Eric Janouch 95f53863ec
Win64Depends.sh: verify package checksums
Now the script has nearly reached feature parity with Win32Depends.sh,
though it can't be easily run on Windows.
2021-10-21 21:37:44 +02:00
Přemysl Eric Janouch 8ac267c8db
Figure out how to abuse MSYS2 repositories
In the end, all seems to work fairly well on Windows 10.
2021-10-21 19:38:37 +02:00
Přemysl Eric Janouch 45dd1a4a86
NEWS: do not lie, theme-serviced XP looks fine 2021-10-21 12:58:13 +02:00
Přemysl Eric Janouch 2c5fc3ebdd
Win32Depends.cmake: show a different upgrade path 2021-10-21 11:38:53 +02:00