25 Commits

Author SHA1 Message Date
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
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
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
8c290df7b5 Update README 2021-10-23 20:27:51 +02:00
5fc35517cb Update README 2021-10-23 20:11:10 +02:00
5a4cffd35e Win32Depends.cmake: remove an unused feature 2021-10-23 20:02:45 +02:00
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
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
cbe23b7bb6 Bump version, update NEWS 2021-10-22 22:34:39 +02:00
2d103ed454 Fix the file save dialog and translations 2021-10-22 22:23:59 +02:00
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
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
42b6da1ffe README: fix cross-building instructions
Copy-pasting and exhaustion do not go well together.
2021-10-22 14:41:37 +02:00
98f16c2c76 Further minor improvements to cross-compilation 2021-10-22 01:40:29 +02:00
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
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
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
45dd1a4a86 NEWS: do not lie, theme-serviced XP looks fine 2021-10-21 12:58:13 +02:00
2c5fc3ebdd Win32Depends.cmake: show a different upgrade path 2021-10-21 11:38:53 +02:00
1ca42eb8e2 Update a comment about widget styling 2021-10-17 08:33:11 +02:00
8815d72db7 Make note of the recent g_win32_get_command_line() 2021-10-14 00:36:39 +02:00
3102bc0cb9 LdCategorySymbolView: work around a mysterious bug
We sometimes get a deselecting event when toying around with menus
and then dragging.  There might be a simpler reproducer.
2021-07-24 10:44:19 +02:00
7f357cb7c8 Fix Win32Depends.cmake, update README 2021-07-24 10:08:58 +02:00
b4db65d246 CMakeLists.txt: bump minimum version to 2.8.12
To silence a deprecation warning.

We should still be fine with this version.
2021-06-19 15:29:01 +02:00
af14119165 Name change
Also some copyright years fix-ups/updates.
2020-09-28 04:49:03 +02:00
62 changed files with 429 additions and 405 deletions

View File

@@ -1,23 +1,14 @@
project (logdiag C) # The last version with Windows XP support is 3.13, we want to keep that
cmake_minimum_required (VERSION 2.8) cmake_minimum_required (VERSION 3.10)
project (logdiag VERSION 0.2.1 LANGUAGES C)
# Default to 2.8 behaviour
cmake_policy (VERSION 2.8)
# Options # Options
option (OPTION_USE_VERA "Use vera++ for source code style checks" OFF) option (OPTION_USE_VERA "Use vera++ for source code style checks" OFF)
option (OPTION_NOINSTALL "Only for developers; work without installing" OFF) option (OPTION_NOINSTALL "For developers only--work without installing" OFF)
option (OPTION_GTKDOC "For developers only--enable use of gtk-doc" OFF)
option (BUILD_TESTING "Build tests" OFF) option (BUILD_TESTING "Build tests" OFF)
# Project information # Project information
set (project_VERSION_MAJOR "0")
set (project_VERSION_MINOR "2")
set (project_VERSION_PATCH "0")
set (project_VERSION "${project_VERSION_MAJOR}")
set (project_VERSION "${project_VERSION}.${project_VERSION_MINOR}")
set (project_VERSION "${project_VERSION}.${project_VERSION_PATCH}")
set (project_URL "https://git.janouch.name/p/logdiag") set (project_URL "https://git.janouch.name/p/logdiag")
# For custom modules # For custom modules
@@ -28,7 +19,7 @@ if (WIN32)
set (WIN32_DEPENDS_PATH ${PROJECT_SOURCE_DIR}/win32-depends) set (WIN32_DEPENDS_PATH ${PROJECT_SOURCE_DIR}/win32-depends)
list (APPEND CMAKE_PREFIX_PATH ${WIN32_DEPENDS_PATH}) list (APPEND CMAKE_PREFIX_PATH ${WIN32_DEPENDS_PATH})
list (APPEND CMAKE_INCLUDE_PATH ${WIN32_DEPENDS_PATH}/lib) list (APPEND CMAKE_INCLUDE_PATH ${WIN32_DEPENDS_PATH}/lib)
list (APPEND CMAKE_C_FLAGS "-mms-bitfields") set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mms-bitfields")
if (CMAKE_CROSSCOMPILING) if (CMAKE_CROSSCOMPILING)
list (APPEND CMAKE_FIND_ROOT_PATH ${WIN32_DEPENDS_PATH}) list (APPEND CMAKE_FIND_ROOT_PATH ${WIN32_DEPENDS_PATH})
@@ -90,7 +81,6 @@ else (NOT WIN32)
# For whatever reason this now seems to be required # For whatever reason this now seems to be required
set (LUA_INCLUDE_DIR "${WIN32_DEPENDS_PATH}/include") set (LUA_INCLUDE_DIR "${WIN32_DEPENDS_PATH}/include")
# XXX: this seems to require CMake 3.0 ... include it in the project?
find_package (Lua REQUIRED) find_package (Lua REQUIRED)
if (LUA_VERSION_STRING VERSION_LESS "5.2") if (LUA_VERSION_STRING VERSION_LESS "5.2")
message (FATAL_ERROR "Lua 5.2 not found") message (FATAL_ERROR "Lua 5.2 not found")
@@ -114,7 +104,7 @@ foreach (file ${project_PO_FILES})
list (APPEND project_TRANSLATIONS "${translation}") list (APPEND project_TRANSLATIONS "${translation}")
endforeach (file) endforeach (file)
# Documentation # Documentation--gtk-doc 1.25 is required
find_package (GtkDoc 1.25) find_package (GtkDoc 1.25)
set (project_DOC_DIR "${PROJECT_BINARY_DIR}/liblogdiag") set (project_DOC_DIR "${PROJECT_BINARY_DIR}/liblogdiag")
@@ -185,6 +175,8 @@ if (WIN32)
endif (WIN32) endif (WIN32)
# Generate a configure file # Generate a configure file
add_definitions (-DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_36)
add_definitions (-DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_36)
configure_file (${PROJECT_SOURCE_DIR}/config.h.in configure_file (${PROJECT_SOURCE_DIR}/config.h.in
${PROJECT_BINARY_DIR}/config.h) ${PROJECT_BINARY_DIR}/config.h)
include_directories (${PROJECT_BINARY_DIR}) include_directories (${PROJECT_BINARY_DIR})
@@ -250,20 +242,33 @@ if (BUILD_TESTING)
foreach (name ${logdiag_TESTS}) foreach (name ${logdiag_TESTS})
add_executable (test-${name} tests/${name}.c) add_executable (test-${name} tests/${name}.c)
target_link_libraries (test-${name} liblogdiag ${logdiag_LIBS}) target_link_libraries (test-${name} liblogdiag ${logdiag_LIBS})
add_test (NAME test-${name} COMMAND test-${name})
add_test (test-${name} test-${name}) list (APPEND logdiag_TEST_TARGETS test-${name})
endforeach (name) endforeach (name)
if (WIN32 AND NOT CMAKE_CROSSCOMPILING)
set_tests_properties (${logdiag_TEST_TARGETS}
PROPERTIES ENVIRONMENT "PATH=${WIN32_DEPENDS_PATH}/bin")
endif ()
endif (BUILD_TESTING) endif (BUILD_TESTING)
# Generate documentation # Generate documentation
if (GTKDOC_FOUND) if (OPTION_GTKDOC AND GTKDOC_FOUND)
# FIXME: not our bug but xml/gtkdocentities.ent cannot be passed # Extracted LDFLAGS didn't contain -l in CMake 3.21.3 and gtk-doc 1.33.2,
target_link_libraries (liblogdiag ${logdiag_LIBS}) # pass them explicitly and work around insanity; CMake still exits with
# an error and gtk-doc produces empty HTML documentation
string (REGEX REPLACE "(;)([^-])" "\\1-l\\2" xldflags "${logdiag_LIBS}")
set_target_properties (liblogdiag PROPERTIES LINK_LIBRARIES "")
# The "official" module wants an XML file I don't want to give it
file (WRITE ${PROJECT_BINARY_DIR}/liblogdiag-docs-dummy.xml "<book/>")
# XXX: not our bug but xml/gtkdocentities.ent cannot be passed
# XXX: this causes `make clean` to remove the entire build directory,
# because it marks CMAKE_CURRENT_BINARY_DIR as an output
gtk_doc_add_module (liblogdiag gtk_doc_add_module (liblogdiag
SOURCE ${PROJECT_SOURCE_DIR}/liblogdiag SOURCE ${PROJECT_SOURCE_DIR}/liblogdiag
SUFFIXES c h SUFFIXES c h LDFLAGS "-l${xldflags}"
# The "official" module wants an XML file I don't want to give it XML ${PROJECT_BINARY_DIR}/liblogdiag-docs-dummy.xml
XML ${PROJECT_BINARY_DIR}/liblogdiag/liblogdiag-docs.xml
LIBRARIES liblogdiag) LIBRARIES liblogdiag)
endif () endif ()
@@ -340,19 +345,22 @@ if (WIN32)
install (DIRECTORY install (DIRECTORY
${WIN32_DEPENDS_PATH}/bin/ ${WIN32_DEPENDS_PATH}/bin/
DESTINATION . DESTINATION .
FILES_MATCHING PATTERN "*.dll" FILES_MATCHING PATTERN "*.dll")
PATTERN "libgettext*" EXCLUDE)
install (DIRECTORY install (DIRECTORY
${WIN32_DEPENDS_PATH}/etc/ ${WIN32_DEPENDS_PATH}/etc/
DESTINATION etc) DESTINATION etc)
install (DIRECTORY install (DIRECTORY
${WIN32_DEPENDS_PATH}/lib/gdk-pixbuf-2.0 ${WIN32_DEPENDS_PATH}/lib/gdk-pixbuf-2.0
DESTINATION lib) DESTINATION lib
FILES_MATCHING PATTERN "*" PATTERN "*.a" EXCLUDE)
install (DIRECTORY install (DIRECTORY
${WIN32_DEPENDS_PATH}/share/glib-2.0/schemas ${WIN32_DEPENDS_PATH}/share/glib-2.0/schemas
DESTINATION share/glib-2.0 DESTINATION share/glib-2.0
FILES_MATCHING PATTERN "org.gtk.Settings.*") FILES_MATCHING PATTERN "org.gtk.Settings.*")
install (DIRECTORY
${WIN32_DEPENDS_PATH}/share/icons/Adwaita
DESTINATION share/icons OPTIONAL)
install (FILES install (FILES
${WIN32_DEPENDS_PATH}/share/icons/hicolor/index.theme ${WIN32_DEPENDS_PATH}/share/icons/hicolor/index.theme
DESTINATION share/icons/hicolor) DESTINATION share/icons/hicolor)
@@ -369,6 +377,8 @@ if (WIN32)
DESTINATION share/locale) DESTINATION share/locale)
endif (translation_found GREATER -1) endif (translation_found GREATER -1)
endforeach (locale) endforeach (locale)
install (SCRIPT Win32Cleanup.cmake)
else (WIN32) else (WIN32)
install (TARGETS logdiag DESTINATION bin) install (TARGETS logdiag DESTINATION bin)
install (FILES share/logdiag.desktop DESTINATION share/applications) install (FILES share/logdiag.desktop DESTINATION share/applications)
@@ -380,25 +390,20 @@ else (WIN32)
install (FILES LICENSE NEWS DESTINATION share/doc/${PROJECT_NAME}) install (FILES LICENSE NEWS DESTINATION share/doc/${PROJECT_NAME})
endif (WIN32) endif (WIN32)
install (FILES ${GSETTINGS_SCHEMAS} install (DIRECTORY share/gui share/library DESTINATION share/${PROJECT_NAME})
DESTINATION share/glib-2.0/schemas) install (FILES ${GSETTINGS_SCHEMAS} DESTINATION share/glib-2.0/schemas)
install (CODE " # DESTDIR is not in use on Windows install (CODE " # DESTDIR is not in use on Windows (WIN32 is only native here!)
if (WIN32 OR \"\$ENV{DESTDIR}\" STREQUAL \"\") if (WIN32 OR \"\$ENV{DESTDIR}\" STREQUAL \"\")
execute_process (COMMAND ${GLIB_COMPILE_SCHEMAS_EXECUTABLE} execute_process (COMMAND \"${GLIB_COMPILE_SCHEMAS_EXECUTABLE}\"
\"\${CMAKE_INSTALL_PREFIX}/share/glib-2.0/schemas\") \"\${CMAKE_INSTALL_PREFIX}/share/glib-2.0/schemas\")
endif (WIN32 OR \"\$ENV{DESTDIR}\" STREQUAL \"\")") endif ()")
install (DIRECTORY share/gui share/library
DESTINATION share/${PROJECT_NAME})
# CPack # CPack
set (CPACK_PACKAGE_DESCRIPTION_SUMMARY "Schematic editor") set (CPACK_PACKAGE_DESCRIPTION_SUMMARY "Schematic editor")
set (CPACK_PACKAGE_VENDOR "Premysl Janouch") set (CPACK_PACKAGE_VENDOR "Premysl Eric Janouch")
set (CPACK_PACKAGE_CONTACT "Přemysl Janouch <p@janouch.name>") set (CPACK_PACKAGE_CONTACT "Přemysl Eric Janouch <p@janouch.name>")
set (CPACK_RESOURCE_FILE_LICENSE "${PROJECT_SOURCE_DIR}/LICENSE") set (CPACK_RESOURCE_FILE_LICENSE "${PROJECT_SOURCE_DIR}/LICENSE")
set (CPACK_PACKAGE_VERSION_MAJOR ${project_VERSION_MAJOR}) set (CPACK_PACKAGE_VERSION ${PROJECT_VERSION})
set (CPACK_PACKAGE_VERSION_MINOR ${project_VERSION_MINOR})
set (CPACK_PACKAGE_VERSION_PATCH ${project_VERSION_PATCH})
if (WIN32) if (WIN32)
set (CPACK_GENERATOR "NSIS;ZIP") set (CPACK_GENERATOR "NSIS;ZIP")
@@ -408,26 +413,32 @@ else (WIN32)
endif (WIN32) endif (WIN32)
set (CPACK_PACKAGE_FILE_NAME set (CPACK_PACKAGE_FILE_NAME
"${PROJECT_NAME}-${project_VERSION}-${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}") "${PROJECT_NAME}-${PROJECT_VERSION}-${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}")
set (CPACK_PACKAGE_INSTALL_DIRECTORY set (CPACK_PACKAGE_INSTALL_DIRECTORY "${PROJECT_NAME} ${CPACK_PACKAGE_VERSION}")
"${PROJECT_NAME} ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}")
# XXX: It is still possible to install multiple copies, making commands collide.
set (CPACK_NSIS_ENABLE_UNINSTALL_BEFORE_INSTALL ON)
set (CPACK_PACKAGE_INSTALL_REGISTRY_KEY "${PROJECT_NAME}")
# FIXME: It is possible to install multiple copies. Everything screws up then.
set (CPACK_PACKAGE_ICON "${PROJECT_SOURCE_DIR}/share\\\\header.bmp") set (CPACK_PACKAGE_ICON "${PROJECT_SOURCE_DIR}/share\\\\header.bmp")
set (CPACK_NSIS_INSTALLED_ICON_NAME "logdiag.exe") set (CPACK_NSIS_INSTALLED_ICON_NAME "logdiag.exe")
set (CPACK_NSIS_CREATE_ICONS_EXTRA " set (CPACK_NSIS_CREATE_ICONS_EXTRA [[
CreateShortCut '\$SMPROGRAMS\\\\$STARTMENU_FOLDER\\\\logdiag.lnk' '\$INSTDIR\\\\logdiag.exe'") CreateShortCut '$SMPROGRAMS\\$STARTMENU_FOLDER\\logdiag.lnk' '$INSTDIR\\logdiag.exe'
set (CPACK_NSIS_DELETE_ICONS_EXTRA " ]])
Delete '\$SMPROGRAMS\\\\$MUI_TEMP\\\\logdiag.lnk'") set (CPACK_NSIS_DELETE_ICONS_EXTRA [[
set (CPACK_NSIS_EXTRA_INSTALL_COMMANDS " Delete '$SMPROGRAMS\\$MUI_TEMP\\logdiag.lnk'
]])
set (CPACK_NSIS_EXTRA_INSTALL_COMMANDS [[
WriteRegStr HKCR '.ldd' '' 'logdiag.Diagram' WriteRegStr HKCR '.ldd' '' 'logdiag.Diagram'
WriteRegStr HKCR 'logdiag.Diagram' '' 'logdiag Diagram' WriteRegStr HKCR 'logdiag.Diagram' '' 'logdiag Diagram'
WriteRegStr HKCR 'logdiag.Diagram\\\\shell\\\\open\\\\command' '' '\\\"\$INSTDIR\\\\logdiag.exe\\\" \\\"%1\\\"' WriteRegStr HKCR 'logdiag.Diagram\\shell\\open\\command' '' '\"$INSTDIR\\logdiag.exe\" \"%1\"'
WriteRegStr HKCR 'logdiag.Diagram\\\\shell\\\\edit\\\\command' '' '\\\"\$INSTDIR\\\\logdiag.exe\\\" \\\"%1\\\"' WriteRegStr HKCR 'logdiag.Diagram\\shell\\edit\\command' '' '\"$INSTDIR\\logdiag.exe\" \"%1\"'
System::Call 'shell32::SHChangeNotify(i,i,i,i) (0x08000000, 0x1000, 0, 0)'") System::Call 'shell32::SHChangeNotify(i,i,i,i) (0x08000000, 0x1000, 0, 0)'
set (CPACK_NSIS_EXTRA_UNINSTALL_COMMANDS " ]])
set (CPACK_NSIS_EXTRA_UNINSTALL_COMMANDS [[
DeleteRegKey HKCR 'logdiag.Diagram' DeleteRegKey HKCR 'logdiag.Diagram'
System::Call 'shell32::SHChangeNotify(i,i,i,i) (0x08000000, 0x1000, 0, 0)'") System::Call 'shell32::SHChangeNotify(i,i,i,i) (0x08000000, 0x1000, 0, 0)'
]])
string (REPLACE "https://" "https:\\\\\\\\" project_URL_NSIS "${project_URL}") string (REPLACE "https://" "https:\\\\\\\\" project_URL_NSIS "${project_URL}")
set (CPACK_NSIS_URL_INFO_ABOUT "${project_URL_NSIS}") set (CPACK_NSIS_URL_INFO_ABOUT "${project_URL_NSIS}")
@@ -446,7 +457,7 @@ set (CPACK_RPM_PACKAGE_URL "${project_URL}")
set (CPACK_SOURCE_GENERATOR "TGZ;ZIP") set (CPACK_SOURCE_GENERATOR "TGZ;ZIP")
set (CPACK_SOURCE_IGNORE_FILES "/\\\\.git;/build;/CMakeLists.txt.user;/win32-depends;/liblogdiag/ld-marshal.[ch]") set (CPACK_SOURCE_IGNORE_FILES "/\\\\.git;/build;/CMakeLists.txt.user;/win32-depends;/liblogdiag/ld-marshal.[ch]")
set (CPACK_SOURCE_PACKAGE_FILE_NAME "${PROJECT_NAME}-${project_VERSION}") set (CPACK_SOURCE_PACKAGE_FILE_NAME "${PROJECT_NAME}-${PROJECT_VERSION}")
include (CPack) include (CPack)

View File

@@ -1,4 +1,4 @@
Copyright (c) 2010 - 2018, Přemysl Janouch <p@janouch.name> Copyright (c) 2010 - 2021, Přemysl Eric Janouch <p@janouch.name>
Permission to use, copy, modify, and/or distribute this software for any Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted. purpose with or without fee is hereby granted.

8
NEWS
View File

@@ -1,3 +1,9 @@
Version 0.2.1
- Set up grounds for 64-bit Windows builds using the latest GTK+ 3.
- Made the Windows installer ask to uninstall previous versions first.
- Worked around a mysterious recent GTK+ bug with symbol dragging.
- Put a default filename in the save dialog, ensuring a file extension.
Version 0.2.0 Version 0.2.0
- Added a library pane instead of a toolbar. - Added a library pane instead of a toolbar.
- Added scrolling using the middle mouse button. - Added scrolling using the middle mouse button.
@@ -15,7 +21,7 @@ Version 0.2.0
- This is the last version supporting Windows XP (we use an outdated GTK+ - This is the last version supporting Windows XP (we use an outdated GTK+
bundle, support for this operating system has been dropped in version 3.18). bundle, support for this operating system has been dropped in version 3.18).
- Various unimportant fixes and changes. - Various unimportant fixes and changes.
- Known issues: Windows XP looks ugly now and there's little we can do. - Known issues: Windows XP looks ugly with the classic theme, little we can do.
Version 0.1.2 Version 0.1.2
- Updated symbol library. - Updated symbol library.

View File

@@ -3,8 +3,8 @@ logdiag
'logdiag' is a simple multiplatform schematic editor written in GTK+. 'logdiag' is a simple multiplatform schematic editor written in GTK+.
This software is considered to be of alpha quality and isn't recommended for This software has never really been finished, and is no longer being worked on,
regular usage. although I strive to keep it building on Windows XP and elsewhere.
image::docs/user-guide/logdiag-en.png[align="center"] image::docs/user-guide/logdiag-en.png[align="center"]
@@ -16,7 +16,7 @@ a package with the latest development version from Archlinux's AUR.
Requirements Requirements
------------ ------------
Runtime dependencies: GTK+ >= 3.8, json-glib >= 0.10.4, lua >= 5.2 + Runtime dependencies: GTK+ >= 3.8, json-glib >= 0.10.4, lua >= 5.2 +
Build dependencies: CMake >= 2.8 Build dependencies: CMake >= 3.10
Build from source on Unix-like systems Build from source on Unix-like systems
-------------------------------------- --------------------------------------
@@ -47,60 +47,65 @@ CMake offers DEB and RPM.
After _cpack_ finishes making the package, install this file. After _cpack_ finishes making the package, install this file.
$ fakeroot cpack -G DEB $ cpack -G DEB
# dpkg -i logdiag-version-system-arch.deb # dpkg -i logdiag-version-system-arch.deb
Leave out the fakeroot for CMake >= 2.8.9, it's been fixed since.
Build from source on Windows Build from source on Windows
---------------------------- ----------------------------
_Note that with the current method we're stuck with GTK+ 3.10.4 at best._ _Note that using the current method we're stuck with GTK+ 3.8.2, which works
worse on Windows 10, but better on XP and under WINE._
First install CMake >= 3.1 and MinGW. Add both to your system path. If you want First, install CMake and MinGW. Add both to your system path. If you want
to build an installation package, also install NSIS. to build an installation package, also install NSIS. If you want to build
within a path containing spaces,
https://gitlab.kitware.com/cmake/cmake/-/issues/22396[fix] your CMake's
FindPkgConfig.cmake module to say:
separate_arguments(_pkgconfig_invoke_result UNIX_COMMAND "${_pkgconfig_invoke_result}")
Run the following command in the directory with source files to automatically Run the following command in the directory with source files to automatically
fetch and setup all dependencies (contact me if the script becomes obsolete, fetch and set up all dependencies (note that Windows XP is no longer able to
it's easy to fix but I usually update it only just a short while before download from HTTPS sources, you'll have to run this externally):
releasing a new version in order to resolve compatibility issues):
> cmake -P Win32Depends.cmake > cmake -P Win32Depends.cmake
Reserve a directory for an out-of-source build: Reserve a directory for an out-of-source build and let CMake prepare the build:
> mkdir build > mkdir build
> cd build > cd build
Let CMake prepare the build:
> cmake .. -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Release > cmake .. -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Release
Now you can generate a package with CPack. You may choose between: Now you can generate a package with CPack. You may choose between:
1. An NSIS-based installation package: 1. An NSIS-based installation package:
+
> cpack -G NSIS > cpack -G NSIS
2. A portable ZIP package: 2. A portable ZIP package:
+
> cpack -G ZIP > cpack -G ZIP
By default, that is if you specify no generator, both packages are built. By default, that is if you specify no generator, both packages are built.
Cross-compilation for Windows Cross-compilation for Windows
----------------------------- -----------------------------
The procedure is almost exactly the same as before, including the requirements. The procedure is almost exactly the same as before, including the requirements.
Just install MinGW-w64 and let automation take care of the rest. Just install MinGW-w64 and let automation take care of the rest.
$ cmake -P Win32Depends.cmake $ cmake -P Win32Depends.cmake
$ mkdir build $ mkdir build
$ cd build $ cd build
$ cmake .. \ $ cmake -DCMAKE_TOOLCHAIN_FILE=../ToolchainCrossMinGWW64.cmake \
-DCMAKE_TOOLCHAIN_FILE=../ToolchainDebianMinGWW64.cmake \ -DCMAKE_BUILD_TYPE=Release ..
-DCMAKE_BUILD_TYPE=Release
$ cpack $ 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 Contributing and Support
------------------------ ------------------------
Use https://git.janouch.name/p/logdiag to report any bugs, request features, Use https://git.janouch.name/p/logdiag to report any bugs, request features,

16
ToolchainCrossWin64.cmake Normal file
View File

@@ -0,0 +1,16 @@
set (CMAKE_SYSTEM_NAME "Windows")
set (CMAKE_SYSTEM_PROCESSOR "x86_64")
set (CMAKE_C_COMPILER "x86_64-w64-mingw32-gcc")
set (CMAKE_CXX_COMPILER "x86_64-w64-mingw32-g++")
set (CMAKE_RC_COMPILER "x86_64-w64-mingw32-windres")
# Not needed to crosscompile an installation package
#set (CMAKE_CROSSCOMPILING_EMULATOR "wine64")
set (CMAKE_FIND_ROOT_PATH "/usr/x86_64-w64-mingw32")
set (CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
set (CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set (CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)

37
Win32Cleanup.cmake Normal file
View File

@@ -0,0 +1,37 @@
# To be run from cmake_install.cmake, eradicates all unreferenced libraries.
# CMake 3.9.6 has a parsing bug with ENCODING UTF-8.
cmake_minimum_required (VERSION 3.10)
# CPack runs this almost without any CMake variables at all
# (cmStateSnapshot::SetDefaultDefinitions(), CMAKE_INSTALL_PREFIX, [DESTDIR])
set (installdir "${CMAKE_INSTALL_PREFIX}")
if (NOT installdir OR installdir MATCHES "^/usr(/|$)")
return ()
endif ()
# The function is recursive and CMake has tragic scoping behaviour;
# environment variables are truly global there, in the absence of a cache
unset (ENV{seen})
function (expand path)
set (seen $ENV{seen})
if (path IN_LIST seen OR NOT EXISTS "${path}")
return ()
endif ()
set (ENV{seen} "$ENV{seen};${path}")
file (STRINGS "${path}" strings REGEX "[.][Dd][Ll][Ll]$" ENCODING UTF-8)
foreach (string ${strings})
string (REGEX MATCH "[-.+_a-zA-Z0-9]+$" word "${string}")
expand ("${installdir}/${word}")
endforeach ()
endfunction ()
file (GLOB roots LIST_DIRECTORIES false "${installdir}/*.[Ee][Xx][Ee]"
"${installdir}/lib/gdk-pixbuf-2.0/2.10.0/loaders/*.[Dd][Ll][Ll]")
foreach (binary ${roots})
expand ("${binary}")
endforeach ()
file (GLOB libraries LIST_DIRECTORIES false "${installdir}/*.[Dd][Ll][Ll]")
list (REMOVE_ITEM libraries $ENV{seen})
file (REMOVE ${libraries})

View File

@@ -1,14 +1,11 @@
# Usage: cmake -P Win32Depends.cmake # Usage: cmake -P Win32Depends.cmake
# Only CMake 3.1+ supports XZ archives and 7z doesn't also untar automatically # Only CMake 3.1+ supports XZ archives, not sure when 7z support comes from
cmake_minimum_required (VERSION 3.1) cmake_minimum_required (VERSION 3.9)
# Directories # Directories
set (working_dir ${CMAKE_CURRENT_BINARY_DIR}/win32-depends) set (working_dir ${CMAKE_CURRENT_BINARY_DIR}/win32-depends)
set (pkg_dir ${working_dir}/packages) set (pkg_dir ${working_dir}/packages)
set (tools_dir ${working_dir}/tools)
set (sevenzip_executable ${tools_dir}/7za)
set (tmp_dir ${working_dir}/tmp)
file (MAKE_DIRECTORY ${working_dir}) file (MAKE_DIRECTORY ${working_dir})
file (MAKE_DIRECTORY ${pkg_dir}) file (MAKE_DIRECTORY ${pkg_dir})
@@ -21,27 +18,25 @@ if (files)
endif (files) endif (files)
# Packages # Packages
set (pkg_list "7za" "gtk" "gtkalt" "winlibs" "mingw_lua") set (pkg_list "gtk" "gtkalt" "winlibs" "mingw_lua")
set (pkg_7za_root "http://sourceforge.net/projects/sevenzip/files")
set (pkg_7za_urls "${pkg_7za_root}/7-Zip/9.20/7za920.zip")
set (pkg_7za_md5 "2fac454a90ae96021f4ffc607d4c00f8")
set (pkg_gtk_root "http://ftp.gnome.org/pub/gnome/binaries/win32") set (pkg_gtk_root "http://ftp.gnome.org/pub/gnome/binaries/win32")
set (pkg_gtk_urls "${pkg_gtk_root}/dependencies/gettext-tools-0.17.zip") set (pkg_gtk_urls
set (pkg_gtk_md5 "09baff956ebd1c391c7f71e9bd768edd") "${pkg_gtk_root}/dependencies/gettext-tools-0.17.zip"
"${pkg_gtk_root}/dependencies/gettext-runtime-0.17-1.zip")
set (pkg_gtk_md5
"09baff956ebd1c391c7f71e9bd768edd"
"110394b4b1e0a50cd440f1e8729d159c")
set (pkg_gtkalt_root "http://win32builder.gnome.org") # https://sourceforge.net/projects/urlget/files
# /GTK%2B%203%20binary%20for%20Windows/GTK%2B%203.16.6/
# contains a binary bundle that may be more or less simply transplanted over,
# due to ABI compatibility, however something is wrong with icons,
# and it looks alien on Windows XP (use themes) for close to no improvement.
set (pkg_gtkalt_root "https://download.geany.org/contrib/gtk")
set (pkg_gtkalt_urls "${pkg_gtkalt_root}/gtk+-bundle_3.8.2-20131001_win32.zip") set (pkg_gtkalt_urls "${pkg_gtkalt_root}/gtk+-bundle_3.8.2-20131001_win32.zip")
set (pkg_gtkalt_md5 "3f9b159207edf44937f209b4a5e6bb63") set (pkg_gtkalt_md5 "3f9b159207edf44937f209b4a5e6bb63")
# Doesn't work, no gtk+-3.0.pc file present
#set (pkg_gtkalt_urls "${pkg_gtkalt_root}/gtk+-bundle_3.10.4-20131202_win32.zip")
#set (pkg_gtkalt_md5 "520bed70943974efdaeea2a1dbe48f84")
# Too old
#set (pkg_gtkalt_urls "${pkg_gtkalt_root}/gtk+-bundle_3.6.4-20130921_win32.zip")
#set (pkg_gtkalt_md5 "9bcb87d917982a6e52a69141ade8bd56")
set (pkg_winlibs_root "http://sourceforge.net/projects/winlibs/files") set (pkg_winlibs_root "http://sourceforge.net/projects/winlibs/files")
set (pkg_winlibs_urls "${pkg_winlibs_root}/GTK+/libjson-glib-1.0-1-mingw32.7z") set (pkg_winlibs_urls "${pkg_winlibs_root}/GTK+/libjson-glib-1.0-1-mingw32.7z")
set (pkg_winlibs_md5 "f06e42c5998dae5fb6245fecc96a403e") set (pkg_winlibs_md5 "f06e42c5998dae5fb6245fecc96a403e")
@@ -66,11 +61,11 @@ foreach (pkg_set ${pkg_list})
message (WARNING "MD5 checksum missing for ${basename}") message (WARNING "MD5 checksum missing for ${basename}")
set (pkg_md5_sum) set (pkg_md5_sum)
set (pkg_md5_param) set (pkg_md5_param)
else (NOT pkg_md5) else ()
list (GET pkg_md5 0 pkg_md5_sum) list (GET pkg_md5 0 pkg_md5_sum)
list (REMOVE_AT pkg_md5 0) list (REMOVE_AT pkg_md5 0)
set (pkg_md5_param EXPECTED_MD5 ${pkg_md5_sum}) set (pkg_md5_param EXPECTED_MD5 ${pkg_md5_sum})
endif (NOT pkg_md5) endif ()
if (NOT EXISTS ${filename}) if (NOT EXISTS ${filename})
message (STATUS "Downloading ${url}...") message (STATUS "Downloading ${url}...")
@@ -88,74 +83,27 @@ foreach (pkg_set ${pkg_list})
if (NOT output MATCHES "^${pkg_md5_sum}") if (NOT output MATCHES "^${pkg_md5_sum}")
message (FATAL_ERROR "MD5 mismatch for ${basename}") message (FATAL_ERROR "MD5 mismatch for ${basename}")
endif (NOT output MATCHES "^${pkg_md5_sum}") endif (NOT output MATCHES "^${pkg_md5_sum}")
endif (NOT EXISTS ${filename}) endif ()
endforeach (url) endforeach (url)
endforeach (pkg_set) endforeach (pkg_set)
if (NOT WIN32) # Stage 2: extract the rest of packages
unset (sevenzip_executable)
find_program (sevenzip_executable 7za)
if (NOT sevenzip_executable)
message (FATAL_ERROR "Could not find 7za (part of p7zip)")
endif (NOT sevenzip_executable)
endif (NOT WIN32)
# Stage 2: setup 7za first
file (MAKE_DIRECTORY ${tmp_dir})
foreach (url ${pkg_7za_urls})
get_filename_component (filename ${url} NAME)
message (STATUS "Extracting ${filename}...")
set (filename ${pkg_dir}/${filename})
execute_process (COMMAND ${CMAKE_COMMAND} -E tar xf ${filename}
WORKING_DIRECTORY ${tmp_dir}
RESULT_VARIABLE status)
if (status)
message (FATAL_ERROR "Extraction failed: ${status}")
endif (status)
endforeach (url)
file (MAKE_DIRECTORY ${tools_dir})
file (COPY ${tmp_dir}/7za.exe DESTINATION ${tools_dir})
file (REMOVE_RECURSE ${tmp_dir})
list (REMOVE_ITEM pkg_list "7za")
# Stage 3: extract the rest of packages
foreach (pkg_set ${pkg_list}) foreach (pkg_set ${pkg_list})
foreach (url ${pkg_${pkg_set}_urls}) foreach (url ${pkg_${pkg_set}_urls})
get_filename_component (filename ${url} NAME) get_filename_component (filename ${url} NAME)
message (STATUS "Extracting ${filename}...") message (STATUS "Extracting ${filename}...")
if (filename MATCHES "\\.7z$")
set (extract_command ${sevenzip_executable} x)
set (quiet OUTPUT_QUIET)
else (filename MATCHES "\\.7z$")
set (extract_command ${CMAKE_COMMAND} -E tar xf)
set (quiet)
endif (filename MATCHES "\\.7z$")
set (filename ${pkg_dir}/${filename}) set (filename ${pkg_dir}/${filename})
if (pkg_${pkg_set}_strip) execute_process (COMMAND ${CMAKE_COMMAND} -E tar xf ${filename}
file (MAKE_DIRECTORY ${tmp_dir}) WORKING_DIRECTORY ${working_dir}
execute_process (COMMAND ${extract_command} ${filename} RESULT_VARIABLE status)
WORKING_DIRECTORY ${tmp_dir}
RESULT_VARIABLE status ${quiet})
file (COPY ${tmp_dir}/${pkg_${pkg_set}_strip}/
DESTINATION ${working_dir})
file (REMOVE_RECURSE ${tmp_dir})
else (pkg_${pkg_set}_strip)
execute_process (COMMAND ${extract_command} ${filename}
WORKING_DIRECTORY ${working_dir}
RESULT_VARIABLE status ${quiet})
endif (pkg_${pkg_set}_strip)
if (status) if (status)
message (FATAL_ERROR "Extraction failed: ${status}") message (FATAL_ERROR "Extraction failed: ${status}")
endif (status) endif ()
endforeach (url) endforeach (url)
endforeach (pkg_set) endforeach (pkg_set)
# Stage 4: final touches # Stage 3: final touches
# We have to fix the prefix path as it is completely wrong everywhere # We have to fix the prefix path as it is completely wrong everywhere
file (GLOB files ${working_dir}/lib/pkgconfig/*.pc) file (GLOB files ${working_dir}/lib/pkgconfig/*.pc)
foreach (file ${files}) foreach (file ${files})

74
Win64Depends.sh Normal file
View File

@@ -0,0 +1,74 @@
#!/bin/sh -e
# Win64Depends.sh: download dependencies from MSYS2 for cross-compilation
# Dependencies: AWK, sed, sha256sum, cURL, bsdtar, wine64
repository=https://repo.msys2.org/mingw/mingw64/
status() {
echo "$(tput bold)-- $*$(tput sgr0)"
}
dbsync() {
status Fetching repository DB
[ -f db.tsv ] || curl -# "$repository/mingw64.db" | bsdtar -xOf- | awk '
function flush() { print f["%NAME%"] f["%FILENAME%"] f["%DEPENDS%"] }
NR > 1 && $0 == "%FILENAME%" { flush(); for (i in f) delete f[i] }
!/^[^%]/ { field = $0; next } { f[field] = f[field] $0 "\t" }
field == "%SHA256SUM%" { path = "*packages/" f["%FILENAME%"]
sub(/\t$/, "", path); print $0, path > "db.sums" } END { flush() }
' > db.tsv
}
fetch() {
status Resolving "$@"
mkdir -p packages
awk -F'\t' 'function get(name, i, a) {
if (visited[name]++ || !(name in filenames)) return
print filenames[name]; split(deps[name], a); for (i in a) get(a[i])
} BEGIN { while ((getline < "db.tsv") > 0) {
filenames[$1] = $2; deps[$1] = ""; for (i = 3; i <= NF; i++) {
gsub(/[<=>].*/, "", $i); deps[$1] = deps[$1] $i FS }
} for (i = 0; i < ARGC; i++) get(ARGV[i]) }' "$@" | while IFS= read -r name
do
status Fetching "$name"
[ -f "packages/$name" ] || curl -#o "packages/$name" "$repository/$name"
done
}
verify() {
status Verifying checksums
sha256sum --ignore-missing --quiet -c db.sums
}
extract() {
status Extracting packages
for subdir in *
do [ -d "$subdir" -a "$subdir" != packages ] && rm -rf -- "$subdir"
done
for i in packages/*
do bsdtar -xf "$i" --strip-components 1 mingw64
done
}
configure() {
status Configuring packages
glib-compile-schemas share/glib-2.0/schemas
wine64 bin/gdk-pixbuf-query-loaders.exe \
> lib/gdk-pixbuf-2.0/2.10.0/loaders.cache
# pkgconf has a command line option for this, but CMake can't pass it
sed -i "s|^prefix=/mingw64|prefix=$(pwd)|" {share,lib}/pkgconfig/*.pc
}
mkdir -p win32-depends
cd win32-depends
dbsync
fetch mingw-w64-x86_64-gtk3 mingw-w64-x86_64-lua \
mingw-w64-x86_64-libwinpthread-git # because we don't do "provides"?
verify
extract
configure
status Success
# XXX: Why is this override needed to run some GLib-based things under wine64?
export XDG_DATA_DIRS=$(pwd)/share

View File

@@ -44,7 +44,7 @@
#============================================================================= #=============================================================================
# Copyright 2011 Johannes Wienke <jwienke at techfak dot uni-bielefeld dot de> # Copyright 2011 Johannes Wienke <jwienke at techfak dot uni-bielefeld dot de>
# Copyright 2012 Přemysl Janouch <p at janouch dot name> # Copyright 2012 Přemysl Eric Janouch <p at janouch dot name>
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without

View File

@@ -1,99 +0,0 @@
# - Find GNU gettext tools
# This module looks for the GNU gettext tools. This module defines the
# following values:
# GETTEXT_MSGMERGE_EXECUTABLE: the full path to the msgmerge tool.
# GETTEXT_MSGFMT_EXECUTABLE: the full path to the msgfmt tool.
# GETTEXT_FOUND: True if gettext has been found.
#
# Additionally it provides the following macros:
# GETTEXT_CREATE_TRANSLATIONS ( outputFile [ALL] file1 ... fileN )
# This will create a target "${PROJECT_NAME}_translations" which will
# convert the given input po files into the binary output mo file.
# If the ALL option is used, the translations will also be created
# when building the default target.
#=============================================================================
# Copyright 2007-2009 Kitware, Inc.
# Copyright 2010-2011 Přemysl Janouch
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
# * Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# * Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
# * Neither the name of the Kitware nor the names of contributors may be
# used to endorse or promote products derived from this software
# without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
# THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE
# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
# OF SUCH DAMAGE.
#=============================================================================
find_program (GETTEXT_MSGMERGE_EXECUTABLE msgmerge)
find_program (GETTEXT_MSGFMT_EXECUTABLE msgfmt)
macro (GETTEXT_CREATE_TRANSLATIONS _potFile _firstPoFileArg)
# Make it a real variable, so we can modify it here.
set (_firstPoFile "${_firstPoFileArg}")
set (_gmoFiles)
get_filename_component (_potBasename ${_potFile} NAME_WE)
get_filename_component (_absPotFile ${_potFile} ABSOLUTE)
set (_addToAll)
if (${_firstPoFile} STREQUAL "ALL")
set (_addToAll "ALL")
set (_firstPoFile)
endif (${_firstPoFile} STREQUAL "ALL")
foreach (_currentPoFile ${_firstPoFile} ${ARGN})
get_filename_component (_absFile ${_currentPoFile} ABSOLUTE)
get_filename_component (_abs_PATH ${_absFile} PATH)
get_filename_component (_lang ${_absFile} NAME_WE)
set (_gmoFile ${CMAKE_CURRENT_BINARY_DIR}/${_lang}.gmo)
# msgmerge versions older than 0.11 don't actually support --update
# and --backup, let's try to workaround that (tested on 0.10.40).
execute_process (COMMAND ${GETTEXT_MSGMERGE_EXECUTABLE} -V
OUTPUT_VARIABLE _msgmergeVersion)
string (REGEX MATCH "0[.][0-9]+" _msgmergeVersion ${_msgmergeVersion})
if ("${_msgmergeVersion}" MATCHES "[.]10|[.][0-9]")
set (_msgmergeParams --quiet -s
${_absFile} -o ${_absFile} ${_absPotFile})
else ("${_msgmergeVersion}" MATCHES "[.]10|[.][0-9]")
set (_msgmergeParams --quiet --update --backup=none -s
${_absFile} ${_absPotFile})
endif ("${_msgmergeVersion}" MATCHES "[.]10|[.][0-9]")
add_custom_command (
OUTPUT ${_gmoFile}
COMMAND ${GETTEXT_MSGMERGE_EXECUTABLE} ${_msgmergeParams}
COMMAND ${GETTEXT_MSGFMT_EXECUTABLE} -o ${_gmoFile} ${_absFile}
DEPENDS ${_absPotFile} ${_absFile}
)
install (FILES ${_gmoFile} DESTINATION
share/locale/${_lang}/LC_MESSAGES RENAME ${_potBasename}.mo)
set (_gmoFiles ${_gmoFiles} ${_gmoFile})
endforeach (_currentPoFile)
add_custom_target (${PROJECT_NAME}_translations ${_addToAll}
DEPENDS ${_gmoFiles})
endmacro (GETTEXT_CREATE_TRANSLATIONS)
include (FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS (Gettext DEFAULT_MSG
GETTEXT_MSGMERGE_EXECUTABLE GETTEXT_MSGFMT_EXECUTABLE)

View File

@@ -5,7 +5,7 @@
# LIBINTL_LIBRARIES # LIBINTL_LIBRARIES
#============================================================================= #=============================================================================
# Copyright Přemysl Janouch 2011 # Copyright 2011 Přemysl Eric Janouch
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without

View File

@@ -22,7 +22,7 @@
# #
#============================================================================= #=============================================================================
# Copyright Přemysl Janouch 2010 # Copyright 2010 Přemysl Eric Janouch
# All rights reserved. # All rights reserved.
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without

View File

@@ -9,7 +9,7 @@
#define __CONFIG_H__ #define __CONFIG_H__
#define PROJECT_NAME "${PROJECT_NAME}" #define PROJECT_NAME "${PROJECT_NAME}"
#define PROJECT_VERSION "${project_VERSION}" #define PROJECT_VERSION "${PROJECT_VERSION}"
#define PROJECT_URL "${project_URL}" #define PROJECT_URL "${project_URL}"
#cmakedefine OPTION_NOINSTALL #cmakedefine OPTION_NOINSTALL

View File

@@ -4,7 +4,7 @@
logdiag: Průvodce uživatele logdiag: Průvodce uživatele
=========================== ===========================
Přemysl Janouch <p@janouch.name> Přemysl Eric Janouch <p@janouch.name>
v0.2.0, 2018-06-27 v0.2.0, 2018-06-27
:toc: left :toc: left
:toc-title: Obsah :toc-title: Obsah

View File

@@ -4,7 +4,7 @@
logdiag: User Guide logdiag: User Guide
=================== ===================
Přemysl Janouch <p@janouch.name> Přemysl Eric Janouch <p@janouch.name>
v0.2.0, 2018-06-27 v0.2.0, 2018-06-27
:toc: left :toc: left
:sectnums: :sectnums:

View File

@@ -2,7 +2,7 @@
* ld-category-symbol-view.c * ld-category-symbol-view.c
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2012 * Copyright 2012, 2015 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *
@@ -47,6 +47,7 @@ SymbolData;
* @path: path to the category within the library. * @path: path to the category within the library.
* @layout: (element-type SymbolData *): current layout of symbols. * @layout: (element-type SymbolData *): current layout of symbols.
* @preselected: currently preselected symbol. * @preselected: currently preselected symbol.
* @dragged: currently dragged symbol.
*/ */
struct _LdCategorySymbolViewPrivate struct _LdCategorySymbolViewPrivate
{ {
@@ -54,6 +55,7 @@ struct _LdCategorySymbolViewPrivate
gchar *path; gchar *path;
GSList *layout; GSList *layout;
SymbolData *preselected; SymbolData *preselected;
SymbolData *dragged;
}; };
enum enum
@@ -180,6 +182,7 @@ layout_destroy (LdCategorySymbolView *self)
g_slist_free (self->priv->layout); g_slist_free (self->priv->layout);
self->priv->layout = NULL; self->priv->layout = NULL;
self->priv->preselected = NULL; self->priv->preselected = NULL;
self->priv->dragged = NULL;
} }
static GSList * static GSList *
@@ -350,7 +353,10 @@ on_draw (GtkWidget *widget, cairo_t *cr)
return FALSE; return FALSE;
context = gtk_widget_get_style_context (widget); context = gtk_widget_get_style_context (widget);
// FIXME: there have to be better means (though I can't find them)
// XXX: alternatively, we could use gtk_style_context_lookup_color()
// with hardcoded colour names ("theme_*_color")--this is cleaner,
// and unlike GtkStyle doesn't cause deprecation warnings
gtk_style_context_add_class (context, "gtkstyle-fallback"); gtk_style_context_add_class (context, "gtkstyle-fallback");
gtk_style_context_get_background_color (context, gtk_style_context_get_background_color (context,
@@ -457,12 +463,12 @@ on_drag_data_get
LdCategorySymbolView *self; LdCategorySymbolView *self;
self = LD_CATEGORY_SYMBOL_VIEW (widget); self = LD_CATEGORY_SYMBOL_VIEW (widget);
g_return_if_fail (self->priv->preselected != NULL); g_return_if_fail (self->priv->dragged != NULL);
gtk_selection_data_set (selection_data, gtk_selection_data_set (selection_data,
gtk_selection_data_get_target (selection_data), gtk_selection_data_get_target (selection_data),
8, (guchar *) self->priv->preselected->path, 8, (guchar *) self->priv->dragged->path,
strlen (self->priv->preselected->path)); strlen (self->priv->dragged->path));
} }
static void static void
@@ -474,6 +480,9 @@ on_drag_begin (GtkWidget *widget, GdkDragContext *ctx, gpointer user_data)
self = LD_CATEGORY_SYMBOL_VIEW (widget); self = LD_CATEGORY_SYMBOL_VIEW (widget);
g_return_if_fail (self->priv->preselected != NULL); g_return_if_fail (self->priv->preselected != NULL);
/* Working around a mysterious bug where we /sometimes/ get deselected. */
self->priv->dragged = self->priv->preselected;
/* Some of the larger previews didn't work, and we have to get rid of /* Some of the larger previews didn't work, and we have to get rid of
* the icon later when we're hovering above LdDiagramView anyway. */ * the icon later when we're hovering above LdDiagramView anyway. */
pbuf = gdk_pixbuf_new (GDK_COLORSPACE_RGB, TRUE, 8, 1, 1); pbuf = gdk_pixbuf_new (GDK_COLORSPACE_RGB, TRUE, 8, 1, 1);
@@ -485,7 +494,11 @@ on_drag_begin (GtkWidget *widget, GdkDragContext *ctx, gpointer user_data)
static void static void
on_drag_end (GtkWidget *widget, GdkDragContext *ctx, gpointer user_data) on_drag_end (GtkWidget *widget, GdkDragContext *ctx, gpointer user_data)
{ {
symbol_deselect (LD_CATEGORY_SYMBOL_VIEW (widget)); LdCategorySymbolView *self;
self = LD_CATEGORY_SYMBOL_VIEW (widget);
symbol_deselect (self);
self->priv->dragged = NULL;
} }
static void static void

View File

@@ -2,7 +2,7 @@
* ld-category-symbol-view.h * ld-category-symbol-view.h
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2012 * Copyright 2012 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* ld-category-tree-view.c * ld-category-tree-view.c
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2011, 2012 * Copyright 2011, 2012 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* ld-category-tree-view.h * ld-category-tree-view.h
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2011, 2012 * Copyright 2011, 2012 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* ld-category-view.c * ld-category-view.c
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2012 * Copyright 2012 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* ld-category-view.h * ld-category-view.h
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2012 * Copyright 2012 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* ld-category.c * ld-category.c
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2010, 2011, 2012 * Copyright 2010, 2011, 2012 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* ld-category.h * ld-category.h
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2010, 2012 * Copyright 2010, 2012 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* ld-diagram-connection.c * ld-diagram-connection.c
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2011 * Copyright 2011 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* ld-diagram-connection.h * ld-diagram-connection.h
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2011 * Copyright 2011 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* ld-diagram-object.c * ld-diagram-object.c
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2010, 2011 * Copyright 2010, 2011 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* ld-diagram-object.h * ld-diagram-object.h
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2010, 2011 * Copyright 2010, 2011 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* ld-diagram-symbol.c * ld-diagram-symbol.c
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2010, 2011 * Copyright 2010, 2011 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* ld-diagram-symbol.h * ld-diagram-symbol.h
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2010, 2011 * Copyright 2010, 2011 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* ld-diagram-view.c * ld-diagram-view.c
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2010, 2011, 2012 * Copyright 2010, 2011, 2012, 2015 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* ld-diagram-view.h * ld-diagram-view.h
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2010, 2011 * Copyright 2010, 2011 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* ld-diagram.c * ld-diagram.c
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2010, 2011, 2012 * Copyright 2010, 2011, 2012 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* ld-diagram.h * ld-diagram.h
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2010, 2011 * Copyright 2010, 2011 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* ld-library.c * ld-library.c
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2010, 2011, 2012 * Copyright 2010, 2011, 2012 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* ld-library.h * ld-library.h
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2010, 2012 * Copyright 2010, 2012 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* ld-lua-private.h * ld-lua-private.h
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2010 * Copyright 2010 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* ld-lua-symbol-private.h * ld-lua-symbol-private.h
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2010, 2011 * Copyright 2010, 2011 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* ld-lua-symbol.c * ld-lua-symbol.c
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2010, 2011 * Copyright 2010, 2011 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* ld-lua-symbol.h * ld-lua-symbol.h
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2010 * Copyright 2010 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* ld-lua.c * ld-lua.c
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2010, 2011, 2012 * Copyright 2010, 2011, 2012 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* ld-lua.h * ld-lua.h
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2010 * Copyright 2010 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* ld-symbol.c * ld-symbol.c
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2010, 2011 * Copyright 2010, 2011 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* ld-symbol.h * ld-symbol.h
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2010, 2011 * Copyright 2010, 2011 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* ld-types.c * ld-types.c
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2010, 2011 * Copyright 2010, 2011 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* ld-types.h * ld-types.h
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2010, 2011 * Copyright 2010, 2011 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* ld-undo-action.c * ld-undo-action.c
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2011 * Copyright 2011 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* ld-undo-action.h * ld-undo-action.h
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2011 * Copyright 2011 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* liblogdiag.h * liblogdiag.h
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2011, 2012 * Copyright 2011, 2012 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -1,32 +1,32 @@
# Czech translation for logdiag. # Czech translation for logdiag.
# Copyright (C) 2011 Přemysl Janouch # Copyright (C) 2011 Přemysl Eric Janouch
# This file is distributed under the same license as the logdiag package. # This file is distributed under the same license as the logdiag package.
# Přemysl Janouch <p@janouch.name>, 2011. # Přemysl Eric Janouch <p@janouch.name>, 2011.
# #
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: logdiag\n" "Project-Id-Version: logdiag\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: https://git.janouch.name/p/logdiag/issues\n"
"POT-Creation-Date: 2018-06-27 04:52+0200\n" "POT-Creation-Date: 2021-10-22 22:16+0200\n"
"PO-Revision-Date: 2018-06-25 04:02+0200\n" "PO-Revision-Date: 2021-10-22 22:21+0200\n"
"Last-Translator: Přemysl Janouch <p@janouch.name>\n" "Last-Translator: Přemysl Eric Janouch <p@janouch.name>\n"
"Language-Team: Czech <cs@li.org>\n" "Language-Team: Czech <cs@li.org>\n"
"Language: cs\n" "Language: cs\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.0.8\n" "X-Generator: Poedit 3.0\n"
#: ../src/ld-window-main.c:931 #: ../src/ld-window-main.c:937
#, c-format #, c-format
msgid "%d%%" msgid "%d%%"
msgstr "%d %%" msgstr "%d %%"
#: ../src/logdiag.c:146 #: ../src/logdiag.c:147
msgid "- Schematic editor" msgid "- Schematic editor"
msgstr "- Editor schémat" msgstr "- Editor schémat"
#: ../src/ld-window-main.c:855 #: ../src/ld-window-main.c:861
msgid "Close _without Saving" msgid "Close _without Saving"
msgstr "Zavřít _bez uložení" msgstr "Zavřít _bez uložení"
@@ -59,7 +59,7 @@ msgstr "Nelze otevřít soubor"
msgid "Failed to save the diagram" msgid "Failed to save the diagram"
msgstr "Nelze uložit diagram" msgstr "Nelze uložit diagram"
#: ../src/ld-window-main.c:853 #: ../src/ld-window-main.c:859
msgid "If you don't save, changes will be permanently lost." msgid "If you don't save, changes will be permanently lost."
msgstr "Pokud je neuložíte, budou změny navždy ztraceny." msgstr "Pokud je neuložíte, budou změny navždy ztraceny."
@@ -87,7 +87,7 @@ msgstr "Provede posledně vrácenou akci"
msgid "Reset zoom level back to the default" msgid "Reset zoom level back to the default"
msgstr "Vrátí přiblížení na výchozí hodnotu" msgstr "Vrátí přiblížení na výchozí hodnotu"
#: ../src/ld-window-main.c:790 #: ../src/ld-window-main.c:792
msgid "Save As..." msgid "Save As..."
msgstr "Uložit jako..." msgstr "Uložit jako..."
@@ -97,17 +97,15 @@ msgstr "Uložit _jako..."
#: ../src/ld-window-main.c:623 #: ../src/ld-window-main.c:623
#, c-format #, c-format
msgid "" msgid "Save the changes to diagram \"%s\" before closing it and creating a new one?"
"Save the changes to diagram \"%s\" before closing it and creating a new one?"
msgstr "Uložit změny v diagramu \"%s\" před jeho zavřením a vytvořením nového?" msgstr "Uložit změny v diagramu \"%s\" před jeho zavřením a vytvořením nového?"
#: ../src/ld-window-main.c:755 #: ../src/ld-window-main.c:755
#, c-format #, c-format
msgid "" msgid "Save the changes to diagram \"%s\" before closing it and opening another one?"
"Save the changes to diagram \"%s\" before closing it and opening another one?"
msgstr "Uložit změny v diagramu \"%s\" před jeho zavřením a otevřením jiného?" msgstr "Uložit změny v diagramu \"%s\" před jeho zavřením a otevřením jiného?"
#: ../src/ld-window-main.c:893 #: ../src/ld-window-main.c:899
#, c-format #, c-format
msgid "Save the changes to diagram \"%s\" before closing?" msgid "Save the changes to diagram \"%s\" before closing?"
msgstr "Uložit změny v diagramu \"%s\" před jeho zavřením?" msgstr "Uložit změny v diagramu \"%s\" před jeho zavřením?"
@@ -160,6 +158,10 @@ msgstr "Vrátí poslední akci"
msgid "Unsaved Diagram" msgid "Unsaved Diagram"
msgstr "Neuložený diagram" msgstr "Neuložený diagram"
#: ../src/ld-window-main.c:806
msgid "Untitled diagram"
msgstr "Nepojmenovaný diagram"
#: ../src/ld-window-main.c:171 #: ../src/ld-window-main.c:171
msgid "Zoom _Out" msgid "Zoom _Out"
msgstr "_Oddálit" msgstr "_Oddálit"
@@ -240,9 +242,9 @@ msgstr "_Zobrazení"
msgid "_Zoom In" msgid "_Zoom In"
msgstr "_Přiblížit" msgstr "_Přiblížit"
#: ../src/ld-window-main.c:977 #: ../src/ld-window-main.c:983
msgid "translator-credits" msgid "translator-credits"
msgstr "Přemysl Janouch <p@janouch.name>" msgstr "Přemysl Eric Janouch <p@janouch.name>"
#~ msgid "The file is probably corrupted." #~ msgid "The file is probably corrupted."
#~ msgstr "Soubor je pravděpodobně poškozen." #~ msgstr "Soubor je pravděpodobně poškozen."

View File

@@ -1,15 +1,15 @@
# German translation for logdiag. # German translation for logdiag.
# Copyright (C) 2011 Přemysl Janouch # Copyright (C) 2011 Přemysl Eric Janouch
# This file is distributed under the same license as the logdiag package. # This file is distributed under the same license as the logdiag package.
# Andy J., 2011. # Andy J., 2011.
# #
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: logdiag\n" "Project-Id-Version: logdiag\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: https://git.janouch.name/p/logdiag/issues\n"
"POT-Creation-Date: 2018-06-27 04:52+0200\n" "POT-Creation-Date: 2021-10-22 22:16+0200\n"
"PO-Revision-Date: 2018-06-25 04:11+0200\n" "PO-Revision-Date: 2018-06-25 04:11+0200\n"
"Last-Translator: Přemysl Janouch <p@janouch.name>\n" "Last-Translator: Přemysl Eric Janouch <p@janouch.name>\n"
"Language-Team: German <de@li.org>\n" "Language-Team: German <de@li.org>\n"
"Language: de\n" "Language: de\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
@@ -17,16 +17,16 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.0.8\n" "X-Generator: Poedit 2.0.8\n"
#: ../src/ld-window-main.c:931 #: ../src/ld-window-main.c:937
#, c-format #, c-format
msgid "%d%%" msgid "%d%%"
msgstr "%d %%" msgstr "%d %%"
#: ../src/logdiag.c:146 #: ../src/logdiag.c:147
msgid "- Schematic editor" msgid "- Schematic editor"
msgstr "- Schema Editor" msgstr "- Schema Editor"
#: ../src/ld-window-main.c:855 #: ../src/ld-window-main.c:861
msgid "Close _without Saving" msgid "Close _without Saving"
msgstr "Schließen _ohne Speichern" msgstr "Schließen _ohne Speichern"
@@ -61,7 +61,7 @@ msgstr "Fehler beim Öffnen der Datei"
msgid "Failed to save the diagram" msgid "Failed to save the diagram"
msgstr "Fehler beim Speichern des Diagramms" msgstr "Fehler beim Speichern des Diagramms"
#: ../src/ld-window-main.c:853 #: ../src/ld-window-main.c:859
msgid "If you don't save, changes will be permanently lost." msgid "If you don't save, changes will be permanently lost."
msgstr "Wenn Sie nicht speichern, gehen alle Änderungen verloren." msgstr "Wenn Sie nicht speichern, gehen alle Änderungen verloren."
@@ -89,7 +89,7 @@ msgstr "Letzte nicht abgeschlossene Aktion wiederholen"
msgid "Reset zoom level back to the default" msgid "Reset zoom level back to the default"
msgstr "Zoom Bereich zurücksetzen" msgstr "Zoom Bereich zurücksetzen"
#: ../src/ld-window-main.c:790 #: ../src/ld-window-main.c:792
msgid "Save As..." msgid "Save As..."
msgstr "Speichern unter..." msgstr "Speichern unter..."
@@ -111,7 +111,7 @@ msgstr ""
"Änderungen im Diagramm \"%s\" speichern bevor es beendet und ein Weiteres " "Änderungen im Diagramm \"%s\" speichern bevor es beendet und ein Weiteres "
"geöffnet wird?" "geöffnet wird?"
#: ../src/ld-window-main.c:893 #: ../src/ld-window-main.c:899
#, c-format #, c-format
msgid "Save the changes to diagram \"%s\" before closing?" msgid "Save the changes to diagram \"%s\" before closing?"
msgstr "Änderungen im Diagramm \"%s\" vor dem Schließen speichern?" msgstr "Änderungen im Diagramm \"%s\" vor dem Schließen speichern?"
@@ -164,6 +164,11 @@ msgstr "Letzte Aktion rückgangig machen"
msgid "Unsaved Diagram" msgid "Unsaved Diagram"
msgstr "Ungespeichertes Diagramm" msgstr "Ungespeichertes Diagramm"
#: ../src/ld-window-main.c:806
#, fuzzy
msgid "Untitled diagram"
msgstr "Ungespeichertes Diagramm"
#: ../src/ld-window-main.c:171 #: ../src/ld-window-main.c:171
msgid "Zoom _Out" msgid "Zoom _Out"
msgstr "Zoom _heraus" msgstr "Zoom _heraus"
@@ -244,7 +249,7 @@ msgstr "_Ansicht"
msgid "_Zoom In" msgid "_Zoom In"
msgstr "_Hineinzoomen" msgstr "_Hineinzoomen"
#: ../src/ld-window-main.c:977 #: ../src/ld-window-main.c:983
msgid "translator-credits" msgid "translator-credits"
msgstr "Andy J." msgstr "Andy J."

View File

@@ -1,5 +1,5 @@
# SOME DESCRIPTIVE TITLE. # SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Přemysl Janouch # Copyright (C) YEAR Přemysl Eric Janouch
# This file is distributed under the same license as the logdiag package. # This file is distributed under the same license as the logdiag package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
# #
@@ -7,8 +7,8 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: logdiag 0.2.0\n" "Project-Id-Version: logdiag 0.2.0\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: https://git.janouch.name/p/logdiag/issues\n"
"POT-Creation-Date: 2018-06-27 04:52+0200\n" "POT-Creation-Date: 2021-10-22 22:16+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -206,29 +206,33 @@ msgstr ""
msgid "Open..." msgid "Open..."
msgstr "" msgstr ""
#: ../src/ld-window-main.c:790 #: ../src/ld-window-main.c:792
msgid "Save As..." msgid "Save As..."
msgstr "" msgstr ""
#: ../src/ld-window-main.c:853 #: ../src/ld-window-main.c:806
msgid "Untitled diagram"
msgstr ""
#: ../src/ld-window-main.c:859
msgid "If you don't save, changes will be permanently lost." msgid "If you don't save, changes will be permanently lost."
msgstr "" msgstr ""
#: ../src/ld-window-main.c:855 #: ../src/ld-window-main.c:861
msgid "Close _without Saving" msgid "Close _without Saving"
msgstr "" msgstr ""
#: ../src/ld-window-main.c:893 #: ../src/ld-window-main.c:899
#, c-format #, c-format
msgid "Save the changes to diagram \"%s\" before closing?" msgid "Save the changes to diagram \"%s\" before closing?"
msgstr "" msgstr ""
#: ../src/ld-window-main.c:931 #: ../src/ld-window-main.c:937
#, c-format #, c-format
msgid "%d%%" msgid "%d%%"
msgstr "" msgstr ""
#: ../src/ld-window-main.c:977 #: ../src/ld-window-main.c:983
msgid "translator-credits" msgid "translator-credits"
msgstr "" msgstr ""
@@ -236,7 +240,7 @@ msgstr ""
msgid "[FILE...]" msgid "[FILE...]"
msgstr "" msgstr ""
#: ../src/logdiag.c:146 #: ../src/logdiag.c:147
msgid "- Schematic editor" msgid "- Schematic editor"
msgstr "" msgstr ""

View File

@@ -1,36 +1,21 @@
#!/bin/bash #!/bin/sh -e
# This script makes a translation template # This shell script generates the translation template.
# The reason for this not being inside CMakeLists.txt #
# is that the translator should not need to run # The reason for this not being inside CMakeLists.txt is that the translator
# the whole configure process to get this single stupid file. # should not need to run the whole configuration process just to get this file.
dir=$(dirname $0)
# Source files export LC_ALL=C
SOURCES=$(echo ../{src,liblogdiag}/*.c)
# Get the package name from CMakeLists.txt re='^[ \t]*project *( *\([^ \t)]\{1,\}\) \{1,\}VERSION \{1,\}\([^ \t)]\{1,\}\).*'
PACKAGE=$(sed -n '/^[ \t]*[pP][rR][oO][jJ][eE][cC][tT][ \t]*([ \t]*\([^ \t)]\{1,\}\).*).*/{s//\1/p;q}' \ package=$(sed -n "s/$re/\\1/p" "$dir/../CMakeLists.txt")
../CMakeLists.txt) version=$(sed -n "s/$re/\\2/p" "$dir/../CMakeLists.txt")
if [ -z "$package" -o -z "$version" ]; then
# Get the package version from CMakeLists.txt echo "Failed to get information from CMakeLists.txt"
EXP_BEG='/^[ \t]*[sS][eE][tT][ \t]*([ \t]*project_VERSION_' exit 1
EXP_END='[ \t]\{1,\}"\{0,1\}\([^)"]\{1,\}\)"\{0,1\}).*/{s//\1/p;q}'
MAJOR=$(sed -n "${EXP_BEG}MAJOR${EXP_END}" ../CMakeLists.txt)
MINOR=$(sed -n "${EXP_BEG}MINOR${EXP_END}" ../CMakeLists.txt)
PATCH=$(sed -n "${EXP_BEG}PATCH${EXP_END}" ../CMakeLists.txt)
if [ "$MAJOR" != "" ]; then
VERSION=$MAJOR
if [ "$MINOR" != "" ]; then
VERSION=$VERSION.$MINOR
if [ "$PATCH" != "" ]; then
VERSION=$VERSION.$PATCH
fi
fi
fi fi
# Finally make the template xgettext -LC -k_ -kN_ "$dir"/../{src,liblogdiag}/*.c -o "$dir/$package.pot" \
xgettext -LC -k_ -kN_ $SOURCES -o "$PACKAGE".pot \ --package-name="$package" --package-version="$version" \
--package-name="$PACKAGE" --package-version="$VERSION" \ --copyright-holder="Přemysl Eric Janouch" \
--copyright-holder="Přemysl Janouch" --msgid-bugs-address="https://git.janouch.name/p/$package/issues"

View File

@@ -1,15 +1,15 @@
# Polish translation for logdiag. # Polish translation for logdiag.
# Copyright (C) 2011 Přemysl Janouch # Copyright (C) 2011 Přemysl Eric Janouch
# This file is distributed under the same license as the logdiag package. # This file is distributed under the same license as the logdiag package.
# Robert Svoboda <ravath@gmail.com>, 2011. # Robert Svoboda <ravath@gmail.com>, 2011.
# #
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: logdiag\n" "Project-Id-Version: logdiag\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: https://git.janouch.name/p/logdiag/issues\n"
"POT-Creation-Date: 2018-06-27 04:52+0200\n" "POT-Creation-Date: 2021-10-22 22:16+0200\n"
"PO-Revision-Date: 2018-06-25 04:09+0200\n" "PO-Revision-Date: 2018-06-25 04:09+0200\n"
"Last-Translator: Přemysl Janouch <p@janouch.name>\n" "Last-Translator: Přemysl Eric Janouch <p@janouch.name>\n"
"Language-Team: Polish <pl@li.org>\n" "Language-Team: Polish <pl@li.org>\n"
"Language: pl\n" "Language: pl\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
@@ -17,16 +17,16 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.0.8\n" "X-Generator: Poedit 2.0.8\n"
#: ../src/ld-window-main.c:931 #: ../src/ld-window-main.c:937
#, c-format #, c-format
msgid "%d%%" msgid "%d%%"
msgstr "%d%%" msgstr "%d%%"
#: ../src/logdiag.c:146 #: ../src/logdiag.c:147
msgid "- Schematic editor" msgid "- Schematic editor"
msgstr "- Edytor schematów" msgstr "- Edytor schematów"
#: ../src/ld-window-main.c:855 #: ../src/ld-window-main.c:861
msgid "Close _without Saving" msgid "Close _without Saving"
msgstr "Zamknąć _bez zapisu" msgstr "Zamknąć _bez zapisu"
@@ -59,7 +59,7 @@ msgstr "Pliku nie da się otworzyć"
msgid "Failed to save the diagram" msgid "Failed to save the diagram"
msgstr "Nie udało się zapisać wykresu" msgstr "Nie udało się zapisać wykresu"
#: ../src/ld-window-main.c:853 #: ../src/ld-window-main.c:859
msgid "If you don't save, changes will be permanently lost." msgid "If you don't save, changes will be permanently lost."
msgstr "Jeżeli nie zapiszesz zmian, zostaną one trwale utracone" msgstr "Jeżeli nie zapiszesz zmian, zostaną one trwale utracone"
@@ -87,7 +87,7 @@ msgstr "Powtórzy ostatnio cofniętą akcję"
msgid "Reset zoom level back to the default" msgid "Reset zoom level back to the default"
msgstr "Przywróci poziom zbliżenia na poziom wyjściowy" msgstr "Przywróci poziom zbliżenia na poziom wyjściowy"
#: ../src/ld-window-main.c:790 #: ../src/ld-window-main.c:792
msgid "Save As..." msgid "Save As..."
msgstr "Zapisz jako..." msgstr "Zapisz jako..."
@@ -109,7 +109,7 @@ msgid ""
msgstr "" msgstr ""
"Zapisać zmiany w wykresie \"%s\" przed jego zamknięciem i stworzeniem nowego?" "Zapisać zmiany w wykresie \"%s\" przed jego zamknięciem i stworzeniem nowego?"
#: ../src/ld-window-main.c:893 #: ../src/ld-window-main.c:899
#, c-format #, c-format
msgid "Save the changes to diagram \"%s\" before closing?" msgid "Save the changes to diagram \"%s\" before closing?"
msgstr "Zapisać zmiany w wykresie \"%s\" przed jego zamknięciem?" msgstr "Zapisać zmiany w wykresie \"%s\" przed jego zamknięciem?"
@@ -162,6 +162,11 @@ msgstr "Cofnie ostatnią akcję"
msgid "Unsaved Diagram" msgid "Unsaved Diagram"
msgstr "Niezapisany Wykres" msgstr "Niezapisany Wykres"
#: ../src/ld-window-main.c:806
#, fuzzy
msgid "Untitled diagram"
msgstr "Niezapisany Wykres"
#: ../src/ld-window-main.c:171 #: ../src/ld-window-main.c:171
msgid "Zoom _Out" msgid "Zoom _Out"
msgstr "_Oddalić widok" msgstr "_Oddalić widok"
@@ -242,7 +247,7 @@ msgstr "_Widok"
msgid "_Zoom In" msgid "_Zoom In"
msgstr "_Przybliżyć" msgstr "_Przybliżyć"
#: ../src/ld-window-main.c:977 #: ../src/ld-window-main.c:983
msgid "translator-credits" msgid "translator-credits"
msgstr "Robert Svoboda <ravath@gmail.com>" msgstr "Robert Svoboda <ravath@gmail.com>"

View File

@@ -1,15 +1,15 @@
# Slovak translation for logdiag. # Slovak translation for logdiag.
# Copyright (C) 2011 Přemysl Janouch # Copyright (C) 2011 Přemysl Eric Janouch
# This file is distributed under the same license as the logdiag package. # This file is distributed under the same license as the logdiag package.
# Miroslav Rigler <itsgoingd@luzer.sk>, 2011. # Miroslav Rigler <itsgoingd@luzer.sk>, 2011.
# #
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: logdiag\n" "Project-Id-Version: logdiag\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: https://git.janouch.name/p/logdiag/issues\n"
"POT-Creation-Date: 2018-06-27 04:52+0200\n" "POT-Creation-Date: 2021-10-22 22:16+0200\n"
"PO-Revision-Date: 2018-06-25 04:05+0200\n" "PO-Revision-Date: 2018-06-25 04:05+0200\n"
"Last-Translator: Přemysl Janouch <p@janouch.name>\n" "Last-Translator: Přemysl Eric Janouch <p@janouch.name>\n"
"Language-Team: Slovak <sk@li.org>\n" "Language-Team: Slovak <sk@li.org>\n"
"Language: sk\n" "Language: sk\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
@@ -17,16 +17,16 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.0.8\n" "X-Generator: Poedit 2.0.8\n"
#: ../src/ld-window-main.c:931 #: ../src/ld-window-main.c:937
#, c-format #, c-format
msgid "%d%%" msgid "%d%%"
msgstr "%d %%" msgstr "%d %%"
#: ../src/logdiag.c:146 #: ../src/logdiag.c:147
msgid "- Schematic editor" msgid "- Schematic editor"
msgstr "- Editor schém" msgstr "- Editor schém"
#: ../src/ld-window-main.c:855 #: ../src/ld-window-main.c:861
msgid "Close _without Saving" msgid "Close _without Saving"
msgstr "Zatvoriť _bez uloženia" msgstr "Zatvoriť _bez uloženia"
@@ -59,7 +59,7 @@ msgstr "Nepodarilo sa otvoriť súbor"
msgid "Failed to save the diagram" msgid "Failed to save the diagram"
msgstr "Nepodarilo sa uložiť diagram" msgstr "Nepodarilo sa uložiť diagram"
#: ../src/ld-window-main.c:853 #: ../src/ld-window-main.c:859
msgid "If you don't save, changes will be permanently lost." msgid "If you don't save, changes will be permanently lost."
msgstr "Ak ich neuložíte, budú zmeny navždy stratené." msgstr "Ak ich neuložíte, budú zmeny navždy stratené."
@@ -87,7 +87,7 @@ msgstr "Vykoná naposledy vrátenú akciu"
msgid "Reset zoom level back to the default" msgid "Reset zoom level back to the default"
msgstr "Vráti priblíženie na východiskovú hodnotu" msgstr "Vráti priblíženie na východiskovú hodnotu"
#: ../src/ld-window-main.c:790 #: ../src/ld-window-main.c:792
msgid "Save As..." msgid "Save As..."
msgstr "Uložiť ako..." msgstr "Uložiť ako..."
@@ -108,7 +108,7 @@ msgid ""
"Save the changes to diagram \"%s\" before closing it and opening another one?" "Save the changes to diagram \"%s\" before closing it and opening another one?"
msgstr "Uložiť zmeny v diagrame \"%s\" pred jeho zatvorením a otvorením iného?" msgstr "Uložiť zmeny v diagrame \"%s\" pred jeho zatvorením a otvorením iného?"
#: ../src/ld-window-main.c:893 #: ../src/ld-window-main.c:899
#, c-format #, c-format
msgid "Save the changes to diagram \"%s\" before closing?" msgid "Save the changes to diagram \"%s\" before closing?"
msgstr "Uložiť zmeny v diagrame \"%s\" pred jeho zatvorením?" msgstr "Uložiť zmeny v diagrame \"%s\" pred jeho zatvorením?"
@@ -161,6 +161,11 @@ msgstr "Vráti poslednú akciu"
msgid "Unsaved Diagram" msgid "Unsaved Diagram"
msgstr "Neuložený diagram" msgstr "Neuložený diagram"
#: ../src/ld-window-main.c:806
#, fuzzy
msgid "Untitled diagram"
msgstr "Neuložený diagram"
#: ../src/ld-window-main.c:171 #: ../src/ld-window-main.c:171
msgid "Zoom _Out" msgid "Zoom _Out"
msgstr "_Oddialiť" msgstr "_Oddialiť"
@@ -241,7 +246,7 @@ msgstr "_Zobrazenie"
msgid "_Zoom In" msgid "_Zoom In"
msgstr "_Priblížiť" msgstr "_Priblížiť"
#: ../src/ld-window-main.c:977 #: ../src/ld-window-main.c:983
msgid "translator-credits" msgid "translator-credits"
msgstr "Miroslav Rigler <itsgoingd@luzer.sk>" msgstr "Miroslav Rigler <itsgoingd@luzer.sk>"

View File

@@ -1,5 +1,5 @@
<schemalist> <schemalist>
<schema id="org.logdiag" path="/apps/logdiag/" gettext-domain="logdiag"> <schema id="org.logdiag" path="/org/logdiag/" gettext-domain="logdiag">
<key name="show-main-toolbar" type="b"> <key name="show-main-toolbar" type="b">
<default>true</default> <default>true</default>
<summary>Whether to show the main toolbar</summary> <summary>Whether to show the main toolbar</summary>

View File

@@ -2,7 +2,7 @@
* ld-window-main.c * ld-window-main.c
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2010, 2011, 2012 * Copyright 2010 - 2021 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *
@@ -784,6 +784,8 @@ static void
diagram_show_save_as_dialog (LdWindowMain *self) diagram_show_save_as_dialog (LdWindowMain *self)
{ {
GtkWidget *dialog; GtkWidget *dialog;
GtkFileChooser *file_chooser;
gchar *filename;
g_return_if_fail (LD_IS_WINDOW_MAIN (self)); g_return_if_fail (LD_IS_WINDOW_MAIN (self));
@@ -796,15 +798,19 @@ diagram_show_save_as_dialog (LdWindowMain *self)
gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (dialog), gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (dialog),
diagram_get_file_filter ()); diagram_get_file_filter ());
file_chooser = GTK_FILE_CHOOSER (dialog);
if (self->priv->filename) if (self->priv->filename)
gtk_file_chooser_set_filename (GTK_FILE_CHOOSER (dialog), gtk_file_chooser_set_filename (file_chooser, self->priv->filename);
self->priv->filename); else
{
filename = g_strdup_printf ("%s.ldd", _("Untitled diagram"));
gtk_file_chooser_set_current_name (file_chooser, filename);
g_free (filename);
}
while (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_ACCEPT) while (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_ACCEPT)
{ {
gchar *filename; filename = gtk_file_chooser_get_filename (file_chooser);
filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (dialog));
if (diagram_save (self, GTK_WINDOW (dialog), filename)) if (diagram_save (self, GTK_WINDOW (dialog), filename))
{ {
diagram_set_filename (self, filename); diagram_set_filename (self, filename);
@@ -975,7 +981,7 @@ on_action_about (GtkAction *action, LdWindowMain *self)
"logo-icon-name", PROJECT_NAME, "logo-icon-name", PROJECT_NAME,
"version", PROJECT_VERSION, "version", PROJECT_VERSION,
"translator-credits", _("translator-credits"), "translator-credits", _("translator-credits"),
"copyright", "Copyright Přemysl Janouch 2010 - 2018", "copyright", "Copyright 2010 - 2021 Přemysl Eric Janouch",
"website", PROJECT_URL, "website", PROJECT_URL,
NULL); NULL);
} }

View File

@@ -2,7 +2,7 @@
* ld-window-main.h * ld-window-main.h
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2010 * Copyright 2010 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* logdiag.c -- logdiag main source file. * logdiag.c -- logdiag main source file.
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2010, 2011 * Copyright 2010, 2011 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *
@@ -137,6 +137,7 @@ main (int argc, char *argv[])
#ifdef _WIN32 #ifdef _WIN32
/* Don't be unneccessarily limited by the system ANSI codepage. */ /* Don't be unneccessarily limited by the system ANSI codepage. */
/* g_win32_get_command_line() should replace this code for GLib >= 2.40. */
argv_overriden = get_utf8_args (&argc, &argv); argv_overriden = get_utf8_args (&argc, &argv);
if (argv_overriden) if (argv_overriden)
_putenv ("CHARSET=UTF-8"); _putenv ("CHARSET=UTF-8");

View File

@@ -2,7 +2,7 @@
* diagram.c * diagram.c
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2011 * Copyright 2011 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *

View File

@@ -2,7 +2,7 @@
* point-array.c * point-array.c
* *
* This file is a part of logdiag. * This file is a part of logdiag.
* Copyright Přemysl Janouch 2011 * Copyright 2011 Přemysl Eric Janouch
* *
* See the file LICENSE for licensing information. * See the file LICENSE for licensing information.
* *