Schematic editor
Go to file
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
cmake Bump the CMake version requirement, fix Windows 2021-10-22 20:08:51 +02:00
docs/user-guide Name change 2020-09-28 04:49:03 +02:00
liblogdiag Update a comment about widget styling 2021-10-17 08:33:11 +02:00
po Name change 2020-09-28 04:49:03 +02:00
share Bump the CMake version requirement, fix Windows 2021-10-22 20:08:51 +02:00
src Make note of the recent g_win32_get_command_line() 2021-10-14 00:36:39 +02:00
tests Name change 2020-09-28 04:49:03 +02:00
vera++@45f3ab870d Update vera++ 2015-01-18 23:29:53 +01:00
.gitignore Ignore Qt Creator settings file in the tree. 2011-07-05 13:11:49 +02:00
.gitmodules Update vera++ 2015-01-18 23:29:53 +01:00
CMakeLists.txt Bump the CMake version requirement, fix Windows 2021-10-22 20:08:51 +02:00
config.h.in Bump the CMake version requirement, fix Windows 2021-10-22 20:08:51 +02:00
LICENSE Name change 2020-09-28 04:49:03 +02:00
NEWS NEWS: do not lie, theme-serviced XP looks fine 2021-10-21 12:58:13 +02:00
README.adoc Bump the CMake version requirement, fix Windows 2021-10-22 20:08:51 +02:00
ToolchainCrossMinGW.cmake Figure out how to abuse MSYS2 repositories 2021-10-21 19:38:37 +02:00
ToolchainCrossMinGWW64.cmake Figure out how to abuse MSYS2 repositories 2021-10-21 19:38:37 +02:00
ToolchainCrossWin64.cmake Include modern build instructions for Win64 2021-10-21 21:53:20 +02:00
Win32Depends.cmake Bump the CMake version requirement, fix Windows 2021-10-22 20:08:51 +02:00
Win64Depends.sh Further minor improvements to cross-compilation 2021-10-22 01:40:29 +02:00

logdiag

logdiag is a simple multiplatform schematic editor written in GTK+.

This software has never really been finished, and is no longer being worked on.

logdiag en

Packages

Regular releases are sporadic. git master should be stable enough. You can get a package with the latest development version from Archlinuxs AUR.

Requirements

Runtime dependencies: GTK+ >= 3.8, json-glib >= 0.10.4, lua >= 5.2
Build dependencies: CMake >= 3.9

Build from source on Unix-like systems

First check that you have all the required dependencies installed, including development packages, if your distribution provides them.

Reserve a directory for an out-of-source build:

$ mkdir build
$ cd build

Let CMake prepare the build. You may change the directory where you want the application to be installed. The default is /usr/local.

$ cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr

Now you have two basic choices of installing the application.

Using make install

# make install

Using cpack

You have to choose a package format understood by your system package manager. CMake offers DEB and RPM.

After cpack finishes making the package, install this file.

$ cpack -G DEB
# dpkg -i logdiag-version-system-arch.deb

Build from source on Windows

Note that with the current method were stuck with GTK+ 3.8.2.

First install CMake and MinGW. Add both to your system path. If you want to build an installation package, also install NSIS. If you want to build within a path containing spaces, fix your FindPkgConfig.cmake to say:

separate_arguments(_pkgconfig_invoke_result UNIX_COMMAND "${_pkgconfig_invoke_result}")

Run the following command in the directory with source files to automatically fetch and setup all dependencies (contact me if the script becomes obsolete, its easy to fix but I usually update it only just a short while before releasing a new version in order to resolve compatibility issues):

> cmake -P Win32Depends.cmake

Note that Windows XP is no longer able to reliably download from HTTPS sources.

Reserve a directory for an out-of-source build:

> mkdir build
> cd build

Let CMake prepare the build:

> cmake .. -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Release

Now you can generate a package with CPack. You may choose between:

  1. An NSIS-based installation package:

    > cpack -G NSIS
  2. A portable ZIP package:

    > cpack -G ZIP

By default, that is if you specify no generator, both packages are built.

Cross-compilation for Windows

The procedure is almost exactly the same as before, including the requirements. Just install MinGW-w64 and let automation take care of the rest.

$ cmake -P Win32Depends.cmake
$ mkdir build
$ cd build
$ cmake .. \
  -DCMAKE_TOOLCHAIN_FILE=../ToolchainCrossMinGWW64.cmake \
  -DCMAKE_BUILD_TYPE=Release
$ cpack

Alternatively, for an unnecessarily bloated MSYS2-based 64-bit build:

$ sh Win64Depends.sh
$ cmake -DCMAKE_TOOLCHAIN_FILE=ToolchainCrossWin64.cmake \
  -DCMAKE_BUILD_TYPE=Release -B build
$ cmake --build buildpackage

Contributing and Support

Use https://git.janouch.name/p/logdiag to report any bugs, request features, or submit pull requests. git send-email is tolerated. If you want to discuss the project, feel free to join me at ircs://irc.janouch.name, channel #dev.

Bitcoin donations are accepted at: 12r5uEWEgcHC46xd64tt3hHt9EUvYYDHe9

License

This software is released under the terms of the 0BSD license, the text of which is included within the package along with the list of authors.