Přemysl Eric Janouch
47fb9653b8
- 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. |
||
---|---|---|
cmake | ||
docs/user-guide | ||
liblogdiag | ||
po | ||
share | ||
src | ||
tests | ||
vera++@45f3ab870d | ||
.gitignore | ||
.gitmodules | ||
CMakeLists.txt | ||
LICENSE | ||
NEWS | ||
README.adoc | ||
ToolchainCrossMinGW.cmake | ||
ToolchainCrossMinGWW64.cmake | ||
ToolchainCrossWin64.cmake | ||
Win32Depends.cmake | ||
Win64Depends.sh | ||
config.h.in |
README.adoc
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.
Packages
Regular releases are sporadic. git master should be stable enough. You can get a package with the latest development version from Archlinux’s 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 we’re 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, it’s 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:
-
An NSIS-based installation package:
> cpack -G NSIS
-
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 build — package
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.