qoi.h is used for upstream, instead of writing a custom decoder.
I may write a custom decoder later to decode the Qoi data directly
into an rp_image without having an intermediate step.
Move extlib/ before src/.
Remove src/librpbase/uvector.h. This was moved to src/uvector.h in
commit 597d0a088c
(Move uvector.h from src/librpbase/ to src/.)
..and was rewritten to derive from std::vector<> in
commit d2a752a456
(Replace ao::uvector<> with std::vector<> with a custom allocator.)
TODO: Sort the license descriptions?
No `gdk` target since libgdk was merged into libgtk.
Added libgraphene-1.0, a dependency of libgtk-4.
Removed FindPango.cmake since it's no longer needed.
[gtk4] CMakeLists.txt: Use the new GTK4 targets and get rid of the
now-unnecessary FIND_PACKAGE() calls.
_GTK3_FIND_LIBRARY(): Remove _append_version, since GTK's versioning
has stabilized. Instead, append the version number to the library name.
This prevents mismatched version numbers betwen various GTK versions.
[gtk3] CMakeLists.txt: Use the new GTK3 targets and get rid of the
now-unnecessary FIND_PACKAGE() calls.
We're not using cjk.h right now, but better to ensure that it *is* usable
in case we decide to use it later.
[debian] copyright: Update copyrights for uniwidth.
uniwidth provides a uc_width() function, which is similar to wcwidth().
Our version removes the 'encoding' parameter, which isn't needed because
we're always using UTF-8.
Fixes#353: rpcli: bad table alignment on multibyte characters
Reported by @DankRank.
The JSON output code will be rewritten to use rapidjson, which will allow
us to add more stuff without having to worry if the resulting text has
the correct formatting.
This adds around 20 KB to the compiled binary.
I chose MiniLZO instead of regular LZO because we only need to be able to
decompress LZO1X blocks.
[libromdata] CisoPspReader: Don't call lzo_init() if this JISO isn't
actually using LZO. Otherwise, if the DLL is missing on Windows, the
program will crash.
Since we can't get it working with 32-bit MinGW-w64, we'll just add our
own implementation that we'll use if timegm() and _mkgmtime() aren't
available.
TODO: Add a unit test to ensure that it's working correctly.
No actual changes, but the license is now LGPL-2.1+ instead of GPL-3+.
The version in gettext seems to have always been LGPL, so I'm not sure
why mine was GPL.
[debian] copyright: Added gettext.h license information.
- s/poublisher/publisher/
- Use https for the GNU website.
- Added LGPL-2.1+.
- Updated LGPL-2.1 to refer to LGPL, not GPL.
This should have been done in commit b3f17f6318
([libi18n] gettext.h: Rebased to gettext-0.20.1's version.)
but it wasn't for some reason.
Using GCR_Cmake macros from: https://github.com/Makman2/GCR_CMake
Currently loading the full 16x16 sprite sheet as the icon for each
dropdown entry. This is obviously wrong, but it works as a basic
test for now.
PIMGTYPE.cpp: New function PIMGTYPE_load_png_from_gresource(). This
function loads a PNG image from the glibresources and returns it as
PIMGTYPE. This does *not* use rp_image at all; it uses Cairo's
built-in PNG loading functionality.
TODO: GdkPixbuf version.
It seems that the R and B channels are backwards, so we'll need to fix
that next. Other than that, both 2bpp and 4bpp decoding seems to work.
(A lot better than my terrible attempt, at least.)
[cmake] options.cmake: Added an option for PVRTC. The code is licensed
under the MIT license, but we might as well provide an option for it
because it's third-party code instead of my own code.
TODO:
- Fix R/B channel ordering.
- PVRTC-II decoding?
- Add PVRTC decoding to KTX and DDS.
This is a stripped-down version of libmspack containing only the necessary
functionality for Xbox 360 executables.
Xenia commit: e706cf0d5413c31b7e80a50411cc88cc7c71af30
License: LGPLv2.1
config.h.in: Modified for cmake; removed unnecessary checks.
debian/copyright: Added copyright information.
cmake/options.cmake: Added an ENABLE_LIBMSPACK option. (default is ON)
source-is-missing: Several JavaScript files included with libjpeg-turbo's
HTML documentation are minimized. These files have been added to
debian/source/lintian-overrides.
debhelper-but-no-misc-depends rom-properties-all: Added ${misc:Depends}.
virtual-package-depends-without-real-package-depends: Added non-virtual
dependencies as alternatives to libcurl-dev.
syntax-error-in-dep5-copyright: Removed an extra space at the beginning
of the GPL-3 license.
TODO: Move gettext to Build-Depends-Indep for the translations
metapackage, since that will be an "All" architectures package.
Partially based on dolphin-emu:
https://packages.debian.org/sid/games/dolphin-emu
CMake's debian package generator supports generating multiple DEB
packages by component, but doesn't easily allow installing common
files in each (e.g. document files). It turns out that writing
standard Debian package rules got a lot easier now than the last
time I tried (with gens), so we'll use standard Debian rules.
NOTE: Multi-arch is enabled on the KDE 5 plugin, but not the KDE 4
plugin, since the KDE 4 plugin is installed in /usr/lib/. This
shouldn't be an issue in most cases, since most 64-bit Linux systems
don't have many 32-bit KDE applications installed.
TODO: "rom-properties" might not be a valid name due to the hyphen.
I might have to either remove the '-', change it to an underscore,
or something else...