This commit is contained in:
Fijxu 2024-03-07 20:28:57 -03:00
commit e571c4fbe8
139 changed files with 8839 additions and 0 deletions

107
.gitlab-ci.yml Normal file
View file

@ -0,0 +1,107 @@
variables:
# Application id of the app, should be same as id used in flatpak manifest and MetaInfo
APP_ID: org.suyu_emu.suyu
# Location of the flatpak manifest, root of git repository
MANIFEST_PATH: $CI_PROJECT_DIR/${APP_ID}.yaml
# Name of flatpak bundle
BUNDLE: "${APP_ID}.flatpak"
# Docker image to use
DOCKER_REGISTRY: "docker.io/bilelmoussaoui/flatpak-github-actions"
# Runtime to use, https://github.com/flatpak/flatpak-github-actions#docker-image
RUNTIME_NAME: "freedesktop"
# Runtime version to use
RUNTIME_VRESION: "23.08"
DOCKER_IMAGE: ${DOCKER_REGISTRY}:${RUNTIME_NAME}-${RUNTIME_VRESION}
SCHEDULE_TASK: default
stages:
- setup
- build
- deploy
# This will check for updates using external data checker and send PRs to the repo
update-sources:
stage: setup
image:
# https://github.com/flathub/flatpak-external-data-checker
name: ghcr.io/flathub/flatpak-external-data-checker
# Open shell rather than the bin
entrypoint: [""]
before_script:
- git config --global user.name "${GITLAB_USER_LOGIN}"
- git config --global user.email "${GITLAB_USER_EMAIL}"
script:
- /app/flatpak-external-data-checker --update --commit-only $MANIFEST_PATH
# Creates a merge request targetting the default repo branch and sets up auto merge when pipeline succeeds
- git push -o merge_request.create -o merge_request.target=${CI_DEFAULT_BRANCH} -o merge_request.merge_when_pipeline_succeeds
"https://${GITLAB_USER_NAME}:${CI_GIT_TOKEN}@${CI_REPOSITORY_URL#*@}" || true
artifacts:
paths:
- $MANIFEST_PATH
expire_in: 1 week
rules:
# Set up a pipeline schedule for this https://docs.gitlab.com/ee/ci/pipelines/schedules.html
- if: $CI_PIPELINE_SOURCE == "schedule" || $CI_PIPELINE_SOURCE == "trigger"
when: always
- when: never
flatpak:
stage: build
image: ${DOCKER_IMAGE}
variables:
# Stable Flathub repo
RUNTIME_REPO: "https://flathub.org/repo/flathub.flatpakrepo"
before_script:
# Sets up the stable Flathub repository for dependencies
- flatpak remote-add --user --if-not-exists flathub ${RUNTIME_REPO}
script:
# Sets up GPG signing
- gpg --list-keys --with-keygrip
- echo "allow-preset-passphrase" >> ~/.gnupg/gpg-agent.conf
- gpg-connect-agent reloadagent /bye
- cat $GPG_PASSPHRASE | /usr/libexec/gpg-preset-passphrase --preset $GPG_KEY_GREP
- gpg --import --batch ${GPG_PRIVATE_KEY}
# Build & install build dependencies
- flatpak-builder build --user --install-deps-from=flathub --gpg-sign=${GPG_KEY_ID} --disable-rofiles-fuse --disable-updates --force-clean --repo=repo ${BRANCH:+--default-branch=$BRANCH} ${MANIFEST_PATH}
# Generate a Flatpak bundle
- flatpak build-bundle --gpg-sign=${GPG_KEY_ID} repo ${BUNDLE} --runtime-repo=${RUNTIME_REPO} ${APP_ID} ${BRANCH}
- flatpak build-update-repo --gpg-sign=${GPG_KEY_ID} --generate-static-deltas --prune repo/
artifacts:
paths:
- repo
expire_in: 1 week
tags: [""]
rules:
- if: $CI_PIPELINE_SOURCE == "schedule"
when: never
- when: always
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
when: always
- if: $CI_COMMIT_BRANCH != $CI_DEFAULT_BRANCH
when: manual
# Deploys the generated package to Gitlab pages name.gitlab.io/repo_name
pages:
variables:
BUILD_OUTPUT_PATH: ${CI_PROJECT_DIR}/repo
stage: deploy
image: alpine:latest
before_script:
- apk add rsync
# replace html assets relative path with pages absolute path
- find $BUILD_OUTPUT_PATH \( -type d -name .git -prune \) -o -type f -print0 | xargs -0 sed -i -e "s#href=\"\/#href=\"$CI_PAGES_URL/#g" -e "s#src=\"\/#src=\"$CI_PAGES_URL/#g"
script:
- mkdir public || true
- rsync -av --exclude='public' --exclude='.git' $BUILD_OUTPUT_PATH/ public
artifacts:
paths:
- public
expire_in: 1 week
rules:
- if: $CI_PIPELINE_SOURCE == "schedule"
when: never
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
when: always

48
README.md Normal file
View file

@ -0,0 +1,48 @@
# Flatpak for Yuzu Emulator
Yuzu is an experimental Nintendo Switch emulator. For more information, please [visit our website](https://yuzu-emu.org/).
To install the Flatpak version of Yuzu Emulator, please visit <https://flathub.org/apps/details/org.yuzu_emu.yuzu>.
For issues with basic functionality and usage, please use our [Community Forum](https://community.citra-emu.org/) or join our [Discord channel](https://discord.gg/u77vRWY).
## Reporting Bugs
If you encounter any crashes or stability issues, please report them in the issues section of this repository.
When reporting, make sure to select the appropriate template and follow the instructions in the template.
### Obtaining Necessary Information for Bug Reports
Since Yuzu is a complex piece of software, it's very difficult to pinpoint a specific issue. Providing necessary contextual information will help us determine the root cause of the problem you are experiencing.
Usually, yuzu's own log file will reveal the issue. Please see [How to obtain the log file](https://yuzu-emu.org/help/reference/log-files/) for information on how to collect the log file from your system.
Sometimes, yuzu's own log file is insufficient to determine the cause, especially if you are reporting a crash or a freeze.
Ideally, we will able to reproduce the issue on our own machines. But there are times when we can't reproduce the crash or freeze on our own machines due to hardware differences. This would require you to provide a debugger trace.
Obtaining a debugger trace is a bit complicated, so please bear with us:
#### Obtaining a debugger trace after the crash
1. Install debuggers in Flatpak: `flatpak install org.kde.Sdk//5.15-23.08`
2. Install debug information for yuzu: `flatpak install org.yuzu_emu.yuzu.Debug`
3. Execute this command in your terminal: `flatpak-coredumpctl org.yuzu_emu.yuzu -m yuzu --gdb-arguments "--batch -ex 'thread apply all bt'" > /tmp/yuzu-backtrace.log`
4. Please attach the file `/tmp/yuzu-backtrace.log` file to your report
#### Obtaining a debugger trace as the crash happens
1. Install debuggers in Flatpak: `flatpak install org.kde.Sdk//5.15-23.08`
2. Install debug information for yuzu: `flatpak install org.yuzu_emu.yuzu.Debug`
3. Execute this command in your terminal: `flatpak run --devel --command=sh org.yuzu_emu.yuzu`
4. Type `gdb /app/bin/yuzu` in the coming up prompt and wait for the `(gdb)` prompt to show up
5. Type <kbd>r</kbd> and hit <kbd>Enter</kbd> to launch yuzu under the debugger
6. **Before loading your game**:
- Go to `Emulation` -> `Configure ...` menu: ![yuzu settings 0](./assets/yuzu-settings-0.png)
- Choose `General` on the left-sidebar, then choose `Debug` tab on the right panel. And then, select the `CPU` tab on the second-level panel, you will see the `Toggle CPU optimizations` options. Please **uncheck both** the **Enable Host MMU Emulation (general memory instructions)** and **Enable Host MMU Emulation (exclusive memory instructions)** checkboxes (as those would interfere with the debugger) ![yuzu settings 1](./assets/yuzu-settings-1.png)
- Then go to the `Debug` tab and **check** the `Enable CPU Debugging` checkbox ![yuzu settings 2](./assets/yuzu-settings-2.png) and click the `Confirm` button at the buttom of the dialog.
7. Load the game that caused the crash and repeat the steps you think that may have crashed or freezed yuzu
8. When the crash or freeze happens, switch back to the terminal and type `bt` at the `(gdb)` prompt
9. If `gdb` asks `--Type <RET> for more, q to quit, c to continue without paging--`, type <kbd>c</kbd> to show all the output
10. Copy and paste all the output to a new text file, and attach this file to your report
11. Type <kbd>q</kbd> to kill both the debugger and crashed yuzu
12. (Optional) You might want to undo step (6) to avoid performance penalty after this process

BIN
assets/yuzu-settings-0.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

BIN
assets/yuzu-settings-1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 126 KiB

BIN
assets/yuzu-settings-2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 144 KiB

1
compatibility_list.json Normal file

File diff suppressed because one or more lines are too long

2
flathub.json Normal file
View file

@ -0,0 +1,2 @@
{
}

View file

@ -0,0 +1,10 @@
[Flatpak Ref]
Title=org.suyu_emu.suyu Flatpak
Name=org.suyu_emu.suyu
Branch=master
Url=https://suyu-emu.gitlab.io/linux-package-sources/flatpak
SuggestRemoteName=suyu-flatpak
Homepage=https://suyu.dev
RuntimeRepo=https://dl.flathub.org/repo/flathub.flatpakrepo
IsRuntime=false
GPGKey=mDMEZepKDBYJKwYBBAHaRw8BAQdA6kWOBS3T6TjNN/ixJCKV5aTiNkhUUNWMHjAY5/V7hoO0ZVN1eXUgRmxhdHBhayBQYWNrYWdlcyBTaWduaW5nIEtleSAoUEdQIFVzZWQgZm9yIHRoZSBGbGF0cGFrIFJlcG9zaXRvcnkgb2Ygc3V5dS1lbXUpIDxzdXl1QG5hZGVrby5uZXQ+iJkEExYKAEEWIQQ25DGyzBRYAWMblMjvrhxHHr1UUQUCZepKDAIbAwUJAO1OAAULCQgHAgIiAgYVCgkICwIEFgIDAQIeBwIXgAAKCRDvrhxHHr1UUZKPAQD6/7kU+UthA52dnYmROBI2sxYtZKueddebPVUHlPuLhAD5AdWrXMvaVfA0D2AnVqD7xdu3UEFDAgWZWz2cowequgS4OARl6koMEgorBgEEAZdVAQUBAQdA1qbSuEyO/VknR2oodTKGOPlcDDM4qWf8bxVBMZKBnnoDAQgHiH4EGBYKACYWIQQ25DGyzBRYAWMblMjvrhxHHr1UUQUCZepKDAIbDAUJAO1OAAAKCRDvrhxHHr1UUZTqAQDGCir12Q0EBaCT/SeXe0XaK+ILiWOG1baCRaHZmwYUfQEAjYNZaAwgIgEEuiqqG2XZACyGVgOvq5OxFYU2VwpUng4=

333
org.suyu_emu.suyu.json Normal file
View file

@ -0,0 +1,333 @@
{
"app-id": "org.suyu_emu.suyu",
"runtime": "org.kde.Platform",
"runtime-version": "5.15-23.08",
"sdk": "org.kde.Sdk",
"base": "io.qt.qtwebengine.BaseApp",
"base-version": "5.15-23.08",
"command": "suyu-launcher",
"finish-args": [
"--device=all",
"--socket=fallback-x11",
"--socket=wayland",
"--socket=pulseaudio",
"--share=network",
"--share=ipc",
"--filesystem=xdg-run/app/com.discordapp.Discord:ro",
"--filesystem=home:ro",
"--filesystem=/run/media:ro",
"--talk-name=org.freedesktop.login1.Manager",
"--env=QTWEBENGINEPROCESS_PATH=/app/bin/QtWebEngineProcess"
],
"cleanup": [
"/include",
"/bin/glslang",
"/bin/glslangValidator",
"/bin/zip*",
"/bin/zstd*",
"/bin/spirv-*",
"/bin/sdl2-config",
"/lib/pkgconfig",
"/lib/cmake",
"/share/doc",
"/share/man",
"/src",
"*.a",
"*.la"
],
"cleanup-commands": [
"/app/cleanup-BaseApp.sh"
],
"modules": [
"shared-modules/libusb/libusb.json",
{
"name": "libzip",
"buildsystem": "cmake-ninja",
"config-opts": [
"-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON",
"-DCMAKE_BUILD_TYPE=RelWithDebInfo"
],
"sources": [
{
"type": "archive",
"url": "https://github.com/nih-at/libzip/archive/v1.10.1.tar.gz",
"sha256": "d56d857d1c3ad4a7f3a4c01a51c6a6e5530e35ab93503f62276e8ba2b306186a",
"x-checker-data": {
"type": "anitya",
"project-id": 10649,
"url-template": "https://github.com/nih-at/libzip/archive/v$version.tar.gz"
}
}
]
},
{
"name": "zstd",
"buildsystem": "meson",
"subdir": "build/meson",
"config-opts": [
"-Dbin_programs=false",
"-Dbin_contrib=false"
],
"sources": [
{
"type": "archive",
"url": "https://github.com/facebook/zstd/releases/download/v1.5.5/zstd-1.5.5.tar.gz",
"sha256": "9c4396cc829cfae319a6e2615202e82aad41372073482fce286fac78646d3ee4",
"x-checker-data": {
"type": "anitya",
"project-id": 12083,
"stable-only": true,
"url-template": "https://github.com/facebook/zstd/releases/download/v$version/zstd-$version.tar.gz"
}
}
]
},
{
"name": "fmt",
"buildsystem": "cmake-ninja",
"config-opts": [
"-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON",
"-DFMT_TEST=OFF"
],
"sources": [
{
"type": "archive",
"url": "https://github.com/fmtlib/fmt/releases/download/10.2.1/fmt-10.2.1.zip",
"sha256": "312151a2d13c8327f5c9c586ac6cf7cddc1658e8f53edae0ec56509c8fa516c9",
"x-checker-data": {
"type": "anitya",
"project-id": 11526,
"versions": {
"<": "11.0.0"
},
"url-template": "https://github.com/fmtlib/fmt/releases/download/$version/fmt-$version.zip"
}
}
]
},
{
"name": "glslang",
"buildsystem": "cmake-ninja",
"config-opts": [
"-DCMAKE_BUILD_TYPE=Release"
],
"sources": [
{
"type": "archive",
"url": "https://github.com/KhronosGroup/glslang/archive/14.0.0.tar.gz",
"sha256": "80bbb916a23e94ea9cbfb1acb5d1a44a7e0c9613bcf5b5947c03f2273bdc92b0",
"x-checker-data": {
"type": "anitya",
"stable-only": true,
"project-id": 205796,
"url-template": "https://github.com/KhronosGroup/glslang/archive/$version.tar.gz"
}
},
{
"type": "archive",
"url": "https://github.com/KhronosGroup/SPIRV-Tools/archive/refs/tags/sdk-1.3.261.1.tar.gz",
"sha256": "ead95c626ad482882a141d1aa0ce47b9453871f72c42c0b28d39c82f60a52008",
"dest": "External/spirv-tools",
"x-checker-data": {
"type": "anitya",
"stable-only": true,
"project-id": 334920,
"url-template": "https://github.com/KhronosGroup/SPIRV-Tools/archive/refs/tags/sdk-$version.tar.gz"
}
},
{
"type": "archive",
"url": "https://github.com/KhronosGroup/SPIRV-Headers/archive/refs/tags/sdk-1.3.261.1.tar.gz",
"sha256": "32b4c6ae6a2fa9b56c2c17233c8056da47e331f76e117729925825ea3e77a739",
"dest": "External/spirv-tools/external/spirv-headers",
"x-checker-data": {
"type": "anitya",
"stable-only": true,
"project-id": 334920,
"url-template": "https://github.com/KhronosGroup/SPIRV-Headers/archive/refs/tags/sdk-$version.tar.gz"
}
}
]
},
{
"name": "catch2",
"buildsystem": "cmake-ninja",
"config-opts": [
"-DCMAKE_BUILD_TYPE=Release",
"-DCATCH_INSTALL_EXTRAS=ON",
"-DCATCH_BUILD_TESTING=OFF"
],
"builddir": true,
"sources": [
{
"type": "archive",
"url": "https://github.com/catchorg/Catch2/archive/v3.5.3.tar.gz",
"sha256": "8d723b0535c94860ef8cf6231580fa47d67a3416757ecb10639e40d748ab6c71",
"x-checker-data": {
"type": "anitya",
"stable-only": true,
"versions": {
"<": "4.0.0"
},
"project-id": 7680,
"url-template": "https://github.com/catchorg/Catch2/archive/v$version.tar.gz"
}
}
]
},
{
"name": "nlohmann-json",
"buildsystem": "cmake-ninja",
"config-opts": [
"-DCMAKE_BUILD_TYPE=Release",
"-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON",
"-DJSON_BuildTests=OFF"
],
"sources": [
{
"type": "archive",
"url": "https://github.com/nlohmann/json/archive/v3.11.3.tar.gz",
"sha256": "0d8ef5af7f9794e3263480193c491549b2ba6cc74bb018906202ada498a79406",
"x-checker-data": {
"type": "anitya",
"project-id": 11152,
"url-template": "https://github.com/nlohmann/json/archive/v$version.tar.gz"
}
}
]
},
{
"name": "boost",
"buildsystem": "simple",
"build-commands": [
"./bootstrap.sh --with-libraries=context,container,system,headers",
"./b2 -j $FLATPAK_BUILDER_N_JOBS install --prefix=/app"
],
"sources": [
{
"type": "archive",
"url": "https://boostorg.jfrog.io/artifactory/main/release/1.84.0/source/boost_1_84_0.tar.bz2",
"sha256": "cc4b893acf645c9d4b698e9a0f08ca8846aa5d6c68275c14c3e7949c24109454",
"x-checker-data": {
"type": "anitya",
"project-id": 6845,
"url-template": "https://boostorg.jfrog.io/artifactory/main/release/$version/source/boost_${version0}_${version1}_${version2}.tar.bz2"
}
}
]
},
{
"name": "nv-codec-headers",
"make-install-args": [
"PREFIX=/app"
],
"no-autogen": true,
"cleanup": [
"*"
],
"sources": [
{
"type": "git",
"url": "https://git.videolan.org/git/ffmpeg/nv-codec-headers.git",
"tag": "n12.1.14.0",
"commit": "1889e62e2d35ff7aa9baca2bceb14f053785e6f1",
"x-checker-data": {
"type": "git",
"tag-pattern": "^n([\\d.]+)$"
}
}
]
},
{
"name": "gamemode",
"buildsystem": "meson",
"config-opts": [
"-Dwith-sd-bus-provider=no-daemon",
"-Dwith-examples=false"
],
"sources": [
{
"type": "archive",
"url": "https://github.com/FeralInteractive/gamemode/releases/download/1.8.1/gamemode-1.8.1.tar.xz",
"sha256": "cdb117d05d65dbd03c0bd2104df874a1f878db8f23cc4d55bfa44e832482269e",
"x-checker-data": {
"type": "anitya",
"project-id": 17418,
"stable-only": true,
"url-template": "https://github.com/FeralInteractive/gamemode/releases/download/$version/gamemode-$version.tar.xz"
}
}
]
},
{
"name": "suyu",
"buildsystem": "cmake-ninja",
"builddir": true,
"config-opts": [
"-DCMAKE_BUILD_TYPE=RelWithDebInfo",
"-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON",
"-DENABLE_QT_TRANSLATION=ON",
"-DYUZU_ENABLE_COMPATIBILITY_REPORTING=ON",
"-DENABLE_COMPATIBILITY_LIST_DOWNLOAD=OFF",
"-DYUZU_USE_QT_WEB_ENGINE=ON",
"-DYUZU_USE_BUNDLED_FFMPEG=ON",
"-DDISPLAY_VERSION=1734",
"-DBUILD_TAG=master",
"-DBUILD_REPOSITORY=suyu-emu/suyu"
],
"build-options": {
"env": {
"TITLEBARFORMATIDLE": "suyu {}",
"TITLEBARFORMATRUNNING": "suyu {} | {}"
},
"arch": {
"aarch64": {
"config-opts": [
"-DENABLE_OPENGL=OFF"
]
}
}
},
"cleanup": [
"/share/man",
"/share/pixmaps"
],
"post-install": [
"install -Dm755 ../suyu-launcher.sh /app/bin/suyu-launcher",
"install -Dm644 ../org.suyu_emu.suyu.metainfo.xml /app/share/metainfo/org.suyu_emu.suyu.metainfo.xml",
"install -Dm644 ../org.suyu_emu.suyu.svg /app/share/icons/hicolor/scalable/apps/org.suyu_emu.suyu.svg",
"desktop-file-edit --set-key StartupWMClass --set-value suzu --set-key Exec --set-value suyu-launcher /app/share/applications/org.suyu_emu.suyu.desktop",
"rm -rf /app/share/appdata"
],
"sources": [
{
"type": "git",
"url": "https://gitlab.com/suyu-emu/suyu.git",
"tag": "dev",
"disable-shallow-clone": true,
"x-checker-data": {
"type": "git",
"tag-pattern": "^(mainline-0-\\d+)$"
}
},
{
"type": "file",
"path": "org.suyu_emu.suyu.metainfo.xml"
},
{
"type": "file",
"path": "org.suyu_emu.suyu.svg"
},
{
"type": "file",
"path": "suyu-launcher.sh"
},
{
"type": "file",
"path": "compatibility_list.json",
"dest": "dist/compatibility_list"
}
]
}
]
}

View file

@ -0,0 +1,475 @@
<?xml version="1.0" encoding="UTF-8"?>
<component type="desktop-application">
<id>org.suyu_emu.suyu</id>
<metadata_license>CC0-1.0</metadata_license>
<name>suyu</name>
<summary>Nintendo Switch emulator</summary>
<description>
<p>suyu, pronounced "sue-you" (wink wink) is the continuation of the world's most popular, open-source, Nintendo Switch emulator.</p>
<p>The emulator is capable of running most commercial games at full speed, provided you meet the necessary hardware requirements.</p>
<p>For a full list of games yuzu support, please visit our Compatibility page.</p>
<p>Check out our website for the latest news on exciting features, monthly progress reports, and more!</p>
</description>
<categories>
<category>Game</category>
<category>Emulator</category>
</categories>
<keywords>
<keyword>switch</keyword>
<keyword>emulator</keyword>
</keywords>
<url type="homepage">https://yuzu-emu.org/</url>
<url type="bugtracker">https://gitlab.com/suyu-emu/suyu/-/issues</url>
<!-- <url type="faq">https://yuzu-emu.org/wiki/faq/</url> -->
<!-- <url type="help">https://yuzu-emu.org/wiki/home/</url> -->
<!-- <url type="donation">https://yuzu-emu.org/donate/</url> -->
<!-- <url type="translate">https://www.transifex.com/yuzu-emulator/yuzu/</url> -->
<!-- <url type="contact">https://community.citra-emu.org/</url> -->
<url type="vcs-browser">https://gitlab.com/suyu-emu/suyu/</url>
<!-- <url type="contribute">https://github.com/yuzu-emu/yuzu/wiki/Contributing#contributing</url> -->
<launchable type="desktop-id">org.suyu_emu.suyu.desktop</launchable>
<provides>
<binary>yuzu</binary>
<binary>yuzu-cmd</binary>
</provides>
<requires>
<memory>8192</memory>
</requires>
<recommends>
<memory>16384</memory>
</recommends>
<project_license>GPL-3.0-or-later</project_license>
<developer_name>yuzu Emulator Team</developer_name>
<content_rating type="oars-1.0"/>
<screenshots>
<screenshot type="default"><image>https://raw.githubusercontent.com/yuzu-emu/yuzu-emu.github.io/master/images/screenshots/001-Super%20Mario%20Odyssey%20.png</image></screenshot>
<screenshot><image>https://raw.githubusercontent.com/yuzu-emu/yuzu-emu.github.io/master/images/screenshots/004-The%20Legend%20of%20Zelda%20Skyward%20Sword%20HD.png</image></screenshot>
<screenshot><image>https://raw.githubusercontent.com/yuzu-emu/yuzu-emu.github.io/master/images/screenshots/007-Pokemon%20Sword.png</image></screenshot>
<screenshot><image>https://raw.githubusercontent.com/yuzu-emu/yuzu-emu.github.io/master/images/screenshots/010-Hyrule%20Warriors%20Age%20of%20Calamity.png</image></screenshot>
<screenshot><image>https://raw.githubusercontent.com/yuzu-emu/yuzu-emu.github.io/master/images/screenshots/039-Pok%C3%A9mon%20Mystery%20Dungeon%20Rescue%20Team%20DX.png.png.png</image></screenshot>
</screenshots>
<releases>
<release version="mainline-0-1734" date="2024-03-04"/>
<release version="mainline-0-1733" date="2024-03-03"/>
<release version="mainline-0-1732" date="2024-03-02"/>
<release version="mainline-0-1731" date="2024-03-01"/>
<release version="mainline-0-1730" date="2024-02-29"/>
<release version="mainline-0-1729" date="2024-02-28"/>
<release version="mainline-0-1728" date="2024-02-27"/>
<release version="mainline-0-1727" date="2024-02-26"/>
<release version="mainline-0-1726" date="2024-02-25"/>
<release version="mainline-0-1725" date="2024-02-24"/>
<release version="mainline-0-1724" date="2024-02-23"/>
<release version="mainline-0-1723" date="2024-02-22"/>
<release version="mainline-0-1720" date="2024-02-19"/>
<release version="mainline-0-1719" date="2024-02-19"/>
<release version="mainline-0-1717" date="2024-02-18"/>
<release version="mainline-0-1716" date="2024-02-16"/>
<release version="mainline-0-1715" date="2024-02-16"/>
<release version="mainline-0-1714" date="2024-02-14"/>
<release version="mainline-0-1713" date="2024-02-13"/>
<release version="mainline-0-1712" date="2024-02-12"/>
<release version="mainline-0-1711" date="2024-02-11"/>
<release version="mainline-0-1710" date="2024-02-11"/>
<release version="mainline-0-1709" date="2024-02-10"/>
<release version="mainline-0-1708" date="2024-02-09"/>
<release version="mainline-0-1707" date="2024-02-08"/>
<release version="mainline-0-1706" date="2024-02-07"/>
<release version="mainline-0-1705" date="2024-02-06"/>
<release version="mainline-0-1704" date="2024-02-05"/>
<release version="mainline-0-1703" date="2024-02-04"/>
<release version="mainline-0-1702" date="2024-02-03"/>
<release version="mainline-0-1701" date="2024-02-02"/>
<release version="mainline-0-1700" date="2024-02-01"/>
<release version="mainline-0-1699" date="2024-01-31"/>
<release version="mainline-0-1698" date="2024-01-30"/>
<release version="mainline-0-1697" date="2024-01-29"/>
<release version="mainline-0-1696" date="2024-01-28"/>
<release version="mainline-0-1695" date="2024-01-27"/>
<release version="mainline-0-1694" date="2024-01-26"/>
<release version="mainline-0-1693" date="2024-01-26"/>
<release version="mainline-0-1692" date="2024-01-24"/>
<release version="mainline-0-1691" date="2024-01-23"/>
<release version="mainline-0-1690" date="2024-01-22"/>
<release version="mainline-0-1689" date="2024-01-21"/>
<release version="mainline-0-1688" date="2024-01-20"/>
<release version="mainline-0-1687" date="2024-01-19"/>
<release version="mainline-0-1686" date="2024-01-19"/>
<release version="mainline-0-1685" date="2024-01-18"/>
<release version="mainline-0-1680" date="2024-01-13"/>
<release version="mainline-0-1679" date="2024-01-12"/>
<release version="mainline-0-1676" date="2024-01-08"/>
<release version="mainline-0-1675" date="2024-01-07"/>
<release version="mainline-0-1674" date="2024-01-06"/>
<release version="mainline-0-1673" date="2024-01-05"/>
<release version="mainline-0-1672" date="2024-01-04"/>
<release version="mainline-0-1671" date="2024-01-03"/>
<release version="mainline-0-1670" date="2024-01-02"/>
<release version="mainline-0-1669" date="2024-01-01"/>
<release version="mainline-0-1668" date="2023-12-31"/>
<release version="mainline-0-1667" date="2023-12-30"/>
<release version="mainline-0-1666" date="2023-12-29"/>
<release version="mainline-0-1665" date="2023-12-28"/>
<release version="mainline-0-1664" date="2023-12-27"/>
<release version="mainline-0-1663" date="2023-12-26"/>
<release version="mainline-0-1662" date="2023-12-25"/>
<release version="mainline-0-1661" date="2023-12-24"/>
<release version="mainline-0-1660" date="2023-12-23"/>
<release version="mainline-0-1659" date="2023-12-22"/>
<release version="mainline-0-1658" date="2023-12-21"/>
<release version="mainline-0-1657" date="2023-12-20"/>
<release version="mainline-0-1656" date="2023-12-19"/>
<release version="mainline-0-1655" date="2023-12-18"/>
<release version="mainline-0-1654" date="2023-12-17"/>
<release version="mainline-0-1653" date="2023-12-16"/>
<release version="mainline-0-1652" date="2023-12-15"/>
<release version="mainline-0-1651" date="2023-12-14"/>
<release version="mainline-0-1650" date="2023-12-13"/>
<release version="mainline-0-1649" date="2023-12-12"/>
<release version="mainline-0-1648" date="2023-12-11"/>
<release version="mainline-0-1647" date="2023-12-10"/>
<release version="mainline-0-1646" date="2023-12-09"/>
<release version="mainline-0-1645" date="2023-12-08"/>
<release version="mainline-0-1644" date="2023-12-07"/>
<release version="mainline-0-1643" date="2023-12-06"/>
<release version="mainline-0-1642" date="2023-12-05"/>
<release version="mainline-0-1641" date="2023-12-04"/>
<release version="mainline-0-1640" date="2023-12-03"/>
<release version="mainline-0-1639" date="2023-12-02"/>
<release version="mainline-0-1638" date="2023-12-01"/>
<release version="mainline-0-1636" date="2023-11-30"/>
<release version="mainline-0-1635" date="2023-11-28"/>
<release version="mainline-0-1634" date="2023-11-27"/>
<release version="mainline-0-1633" date="2023-11-26"/>
<release version="mainline-0-1632" date="2023-11-25"/>
<release version="mainline-0-1631" date="2023-11-24"/>
<release version="mainline-0-1630" date="2023-11-23"/>
<release version="mainline-0-1629" date="2023-11-22"/>
<release version="mainline-0-1628" date="2023-11-21"/>
<release version="mainline-0-1627" date="2023-11-20"/>
<release version="mainline-0-1626" date="2023-11-19"/>
<release version="mainline-0-1625" date="2023-11-18"/>
<release version="mainline-0-1624" date="2023-11-17"/>
<release version="mainline-0-1622" date="2023-11-16"/>
<release version="mainline-0-1621" date="2023-11-15"/>
<release version="mainline-0-1620" date="2023-11-15"/>
<release version="mainline-0-1619" date="2023-11-13"/>
<release version="mainline-0-1618" date="2023-11-13"/>
<release version="mainline-0-1617" date="2023-11-12"/>
<release version="mainline-0-1616" date="2023-11-10"/>
<release version="mainline-0-1615" date="2023-11-09"/>
<release version="mainline-0-1614" date="2023-11-08"/>
<release version="mainline-0-1613" date="2023-11-07"/>
<release version="mainline-0-1612" date="2023-11-06"/>
<release version="mainline-0-1611" date="2023-11-05"/>
<release version="mainline-0-1610" date="2023-11-04"/>
<release version="mainline-0-1609" date="2023-11-03"/>
<release version="mainline-0-1608" date="2023-11-02"/>
<release version="mainline-0-1607" date="2023-11-01"/>
<release version="mainline-0-1606" date="2023-11-01"/>
<release version="mainline-0-1605" date="2023-10-30"/>
<release version="mainline-0-1604" date="2023-10-29"/>
<release version="mainline-0-1603" date="2023-10-28"/>
<release version="mainline-0-1602" date="2023-10-27"/>
<release version="mainline-0-1601" date="2023-10-26"/>
<release version="mainline-0-1600" date="2023-10-25"/>
<release version="mainline-0-1599" date="2023-10-24"/>
<release version="mainline-0-1598" date="2023-10-23"/>
<release version="mainline-0-1596" date="2023-10-21"/>
<release version="mainline-0-1595" date="2023-10-20"/>
<release version="mainline-0-1593" date="2023-10-19"/>
<release version="mainline-0-1592" date="2023-10-19"/>
<release version="mainline-0-1591" date="2023-10-17"/>
<release version="mainline-0-1590" date="2023-10-16"/>
<release version="mainline-0-1589" date="2023-10-15"/>
<release version="mainline-0-1588" date="2023-10-14"/>
<release version="mainline-0-1587" date="2023-10-13"/>
<release version="mainline-0-1586" date="2023-10-13"/>
<release version="mainline-0-1585" date="2023-10-11"/>
<release version="mainline-0-1584" date="2023-10-10"/>
<release version="mainline-0-1583" date="2023-10-10"/>
<release version="mainline-0-1582" date="2023-10-09"/>
<release version="mainline-0-1581" date="2023-10-09"/>
<release version="mainline-0-1577" date="2023-10-04"/>
<release version="mainline-0-1576" date="2023-10-03"/>
<release version="mainline-0-1575" date="2023-10-02"/>
<release version="mainline-0-1574" date="2023-10-01"/>
<release version="mainline-0-1573" date="2023-10-01"/>
<release version="mainline-0-1572" date="2023-09-29"/>
<release version="mainline-0-1571" date="2023-09-28"/>
<release version="mainline-0-1570" date="2023-09-27"/>
<release version="mainline-0-1569" date="2023-09-26"/>
<release version="mainline-0-1568" date="2023-09-25"/>
<release version="mainline-0-1567" date="2023-09-24"/>
<release version="mainline-0-1566" date="2023-09-23"/>
<release version="mainline-0-1565" date="2023-09-22"/>
<release version="mainline-0-1564" date="2023-09-20"/>
<release version="mainline-0-1563" date="2023-09-19"/>
<release version="mainline-0-1562" date="2023-09-18"/>
<release version="mainline-0-1561" date="2023-09-17"/>
<release version="mainline-0-1560" date="2023-09-16"/>
<release version="mainline-0-1559" date="2023-09-15"/>
<release version="mainline-0-1558" date="2023-09-14"/>
<release version="mainline-0-1557" date="2023-09-13"/>
<release version="mainline-0-1556" date="2023-09-12"/>
<release version="mainline-0-1555" date="2023-09-11"/>
<release version="mainline-0-1554" date="2023-09-10"/>
<release version="mainline-0-1553" date="2023-09-09"/>
<release version="mainline-0-1552" date="2023-09-08"/>
<release version="mainline-0-1551" date="2023-09-07"/>
<release version="mainline-0-1550" date="2023-09-07"/>
<release version="mainline-0-1549" date="2023-09-06"/>
<release version="mainline-0-1546" date="2023-09-03"/>
<release version="mainline-0-1545" date="2023-09-02"/>
<release version="mainline-0-1544" date="2023-09-01"/>
<release version="mainline-0-1543" date="2023-08-31"/>
<release version="mainline-0-1542" date="2023-08-30"/>
<release version="mainline-0-1541" date="2023-08-29"/>
<release version="mainline-0-1540" date="2023-08-28"/>
<release version="mainline-0-1539" date="2023-08-27"/>
<release version="mainline-0-1538" date="2023-08-26"/>
<release version="mainline-0-1537" date="2023-08-25"/>
<release version="mainline-0-1536" date="2023-08-24"/>
<release version="mainline-0-1535" date="2023-08-23"/>
<release version="mainline-0-1534" date="2023-08-22"/>
<release version="mainline-0-1533" date="2023-08-21"/>
<release version="mainline-0-1532" date="2023-08-21"/>
<release version="mainline-0-1531" date="2023-08-19"/>
<release version="mainline-0-1530" date="2023-08-19"/>
<release version="mainline-0-1529" date="2023-08-18"/>
<release version="mainline-0-1528" date="2023-08-17"/>
<release version="mainline-0-1527" date="2023-08-16"/>
<release version="mainline-0-1526" date="2023-08-16"/>
<release version="mainline-0-1525" date="2023-08-16"/>
<release version="mainline-0-1524" date="2023-08-15"/>
<release version="mainline-0-1523" date="2023-08-14"/>
<release version="mainline-0-1522" date="2023-08-13"/>
<release version="mainline-0-1521" date="2023-08-12"/>
<release version="mainline-0-1520" date="2023-08-10"/>
<release version="mainline-0-1518" date="2023-08-06"/>
<release version="mainline-0-1517" date="2023-08-04"/>
<release version="mainline-0-1516" date="2023-08-03"/>
<release version="mainline-0-1515" date="2023-08-02"/>
<release version="mainline-0-1514" date="2023-08-01"/>
<release version="mainline-0-1513" date="2023-07-31"/>
<release version="mainline-0-1512" date="2023-07-30"/>
<release version="mainline-0-1511" date="2023-07-29"/>
<release version="mainline-0-1510" date="2023-07-28"/>
<release version="mainline-0-1509" date="2023-07-27"/>
<release version="mainline-0-1508" date="2023-07-26"/>
<release version="mainline-0-1507" date="2023-07-25"/>
<release version="mainline-0-1505" date="2023-07-24"/>
<release version="mainline-0-1504" date="2023-07-23"/>
<release version="mainline-0-1503" date="2023-07-22"/>
<release version="mainline-0-1502" date="2023-07-21"/>
<release version="mainline-0-1501" date="2023-07-20"/>
<release version="mainline-0-1499" date="2023-07-17"/>
<release version="mainline-0-1498" date="2023-07-16"/>
<release version="mainline-0-1497" date="2023-07-15"/>
<release version="mainline-0-1496" date="2023-07-14"/>
<release version="mainline-0-1495" date="2023-07-13"/>
<release version="mainline-0-1494" date="2023-07-12"/>
<release version="mainline-0-1493" date="2023-07-11"/>
<release version="mainline-0-1492" date="2023-07-10"/>
<release version="mainline-0-1491" date="2023-07-09"/>
<release version="mainline-0-1490" date="2023-07-08"/>
<release version="mainline-0-1489" date="2023-07-07"/>
<release version="mainline-0-1487" date="2023-07-05"/>
<release version="mainline-0-1485" date="2023-07-03"/>
<release version="mainline-0-1484" date="2023-07-02"/>
<release version="mainline-0-1483" date="2023-07-01"/>
<release version="mainline-0-1482" date="2023-06-30"/>
<release version="mainline-0-1481" date="2023-06-29"/>
<release version="mainline-0-1480" date="2023-06-28"/>
<release version="mainline-0-1479" date="2023-06-27"/>
<release version="mainline-0-1478" date="2023-06-24"/>
<release version="mainline-0-1477" date="2023-06-23"/>
<release version="mainline-0-1476" date="2023-06-22"/>
<release version="mainline-0-1475" date="2023-06-21"/>
<release version="mainline-0-1474" date="2023-06-19"/>
<release version="mainline-0-1473" date="2023-06-18"/>
<release version="mainline-0-1472" date="2023-06-17"/>
<release version="mainline-0-1471" date="2023-06-16"/>
<release version="mainline-0-1470" date="2023-06-15"/>
<release version="mainline-0-1469" date="2023-06-14"/>
<release version="mainline-0-1468" date="2023-06-13"/>
<release version="mainline-0-1467" date="2023-06-12"/>
<release version="mainline-0-1465" date="2023-06-12"/>
<release version="mainline-0-1458" date="2023-06-04"/>
<release version="mainline-0-1457" date="2023-06-03"/>
<release version="mainline-0-1456" date="2023-06-02"/>
<release version="mainline-0-1455" date="2023-06-01"/>
<release version="mainline-0-1454" date="2023-06-01"/>
<release version="mainline-0-1453" date="2023-05-31"/>
<release version="mainline-0-1452" date="2023-05-30"/>
<release version="mainline-0-1451" date="2023-05-29"/>
<release version="mainline-0-1450" date="2023-05-28"/>
<release version="mainline-0-1448" date="2023-05-27"/>
<release version="mainline-0-1447" date="2023-05-27"/>
<release version="mainline-0-1444" date="2023-05-25"/>
<release version="mainline-0-1443" date="2023-05-24"/>
<release version="mainline-0-1442" date="2023-05-24"/>
<release version="mainline-0-1441" date="2023-05-23"/>
<release version="mainline-0-1440" date="2023-05-21"/>
<release version="mainline-0-1439" date="2023-05-19"/>
<release version="mainline-0-1438" date="2023-05-18"/>
<release version="mainline-0-1437" date="2023-05-17"/>
<release version="mainline-0-1436" date="2023-05-16"/>
<release version="mainline-0-1435" date="2023-05-15"/>
<release version="mainline-0-1434" date="2023-05-15"/>
<release version="mainline-0-1433" date="2023-05-14"/>
<release version="mainline-0-1432" date="2023-05-14"/>
<release version="mainline-0-1431" date="2023-05-13"/>
<release version="mainline-0-1430" date="2023-05-13"/>
<release version="mainline-0-1429" date="2023-05-12"/>
<release version="mainline-0-1428" date="2023-05-11"/>
<release version="mainline-0-1426" date="2023-05-10"/>
<release version="mainline-0-1425" date="2023-05-09"/>
<release version="mainline-0-1424" date="2023-05-08"/>
<release version="mainline-0-1423" date="2023-05-07"/>
<release version="mainline-0-1422" date="2023-05-06"/>
<release version="mainline-0-1421" date="2023-05-05"/>
<release version="mainline-0-1420" date="2023-05-04"/>
<release version="mainline-0-1419" date="2023-05-03"/>
<release version="mainline-0-1418" date="2023-05-03"/>
<release version="mainline-0-1417" date="2023-05-03"/>
<release version="mainline-0-1416" date="2023-05-01"/>
<release version="mainline-0-1415" date="2023-04-30"/>
<release version="mainline-0-1414" date="2023-04-29"/>
<release version="mainline-0-1413" date="2023-04-28"/>
<release version="mainline-0-1412" date="2023-04-27"/>
<release version="mainline-0-1403" date="2023-04-14"/>
<release version="mainline-0-1402" date="2023-04-13"/>
<release version="mainline-0-1401" date="2023-04-12"/>
<release version="mainline-0-1400" date="2023-04-11"/>
<release version="mainline-0-1399" date="2023-04-10"/>
<release version="mainline-0-1398" date="2023-04-09"/>
<release version="mainline-0-1397" date="2023-04-08"/>
<release version="mainline-0-1396" date="2023-04-07"/>
<release version="mainline-0-1395" date="2023-04-06"/>
<release version="mainline-0-1394" date="2023-04-05"/>
<release version="mainline-0-1393" date="2023-04-04"/>
<release version="mainline-0-1392" date="2023-04-03"/>
<release version="mainline-0-1391" date="2023-04-02"/>
<release version="mainline-0-1390" date="2023-04-01"/>
<release version="mainline-0-1389" date="2023-03-31"/>
<release version="mainline-0-1388" date="2023-03-30"/>
<release version="mainline-0-1387" date="2023-03-29"/>
<release version="mainline-0-1386" date="2023-03-28"/>
<release version="mainline-0-1385" date="2023-03-27"/>
<release version="mainline-0-1383" date="2023-03-26"/>
<release version="mainline-0-1381" date="2023-03-25"/>
<release version="mainline-0-1380" date="2023-03-24"/>
<release version="mainline-0-1379" date="2023-03-23"/>
<release version="mainline-0-1378" date="2023-03-22"/>
<release version="mainline-0-1377" date="2023-03-21"/>
<release version="mainline-0-1375" date="2023-03-19"/>
<release version="mainline-0-1374" date="2023-03-18"/>
<release version="mainline-0-1373" date="2023-03-16"/>
<release version="mainline-0-1372" date="2023-03-15"/>
<release version="mainline-0-1371" date="2023-03-15"/>
<release version="mainline-0-1370" date="2023-03-14"/>
<release version="mainline-0-1369" date="2023-03-13"/>
<release version="mainline-0-1368" date="2023-03-12"/>
<release version="mainline-0-1367" date="2023-03-11"/>
<release version="mainline-0-1366" date="2023-03-10"/>
<release version="mainline-0-1365" date="2023-03-09"/>
<release version="mainline-0-1364" date="2023-03-08"/>
<release version="mainline-0-1363" date="2023-03-07"/>
<release version="mainline-0-1362" date="2023-03-06"/>
<release version="mainline-0-1361" date="2023-03-05"/>
<release version="mainline-0-1360" date="2023-03-04"/>
<release version="mainline-0-1359" date="2023-03-03"/>
<release version="mainline-0-1356" date="2023-03-01"/>
<release version="mainline-0-1355" date="2023-02-28"/>
<release version="mainline-0-1354" date="2023-02-27"/>
<release version="mainline-0-1353" date="2023-02-27"/>
<release version="mainline-0-1352" date="2023-02-26"/>
<release version="mainline-0-1351" date="2023-02-25"/>
<release version="mainline-0-1350" date="2023-02-25"/>
<release version="mainline-0-1349" date="2023-02-23"/>
<release version="mainline-0-1348" date="2023-02-22"/>
<release version="mainline-0-1347" date="2023-02-21"/>
<release version="mainline-0-1346" date="2023-02-20"/>
<release version="mainline-0-1345" date="2023-02-19"/>
<release version="mainline-0-1344" date="2023-02-18"/>
<release version="mainline-0-1343" date="2023-02-17"/>
<release version="mainline-0-1342" date="2023-02-16"/>
<release version="mainline-0-1341" date="2023-02-15"/>
<release version="mainline-0-1340" date="2023-02-14"/>
<release version="mainline-0-1339" date="2023-02-13"/>
<release version="mainline-0-1338" date="2023-02-12"/>
<release version="mainline-0-1337" date="2023-02-11"/>
<release version="mainline-0-1335" date="2023-02-09"/>
<release version="mainline-0-1333" date="2023-02-08"/>
<release version="mainline-0-1332" date="2023-02-07"/>
<release version="mainline-0-1331" date="2023-02-06"/>
<release version="mainline-0-1330" date="2023-02-05"/>
<release version="mainline-0-1329" date="2023-02-04"/>
<release version="mainline-0-1327" date="2023-02-02"/>
<release version="mainline-0-1326" date="2023-01-31"/>
<release version="mainline-0-1325" date="2023-01-30"/>
<release version="mainline-0-1324" date="2023-01-29"/>
<release version="mainline-0-1323" date="2023-01-28"/>
<release version="mainline-0-1322" date="2023-01-27"/>
<release version="mainline-0-1321" date="2023-01-27"/>
<release version="mainline-0-1316" date="2023-01-22"/>
<release version="mainline-0-1315" date="2023-01-21"/>
<release version="mainline-0-1314" date="2023-01-20"/>
<release version="mainline-0-1313" date="2023-01-19"/>
<release version="mainline-0-1312" date="2023-01-18"/>
<release version="mainline-0-1311" date="2023-01-17"/>
<release version="mainline-0-1310" date="2023-01-16"/>
<release version="mainline-0-1309" date="2023-01-16"/>
<release version="mainline-0-1307" date="2023-01-14"/>
<release version="mainline-0-1306" date="2023-01-13"/>
<release version="mainline-0-1305" date="2023-01-13"/>
<release version="mainline-0-1304" date="2023-01-12"/>
<release version="mainline-0-1303" date="2023-01-10"/>
<release version="mainline-0-1302" date="2023-01-10"/>
<release version="mainline-0-1301" date="2023-01-09"/>
<release version="mainline-0-1300" date="2023-01-08"/>
<release version="mainline-0-1299" date="2023-01-07"/>
<release version="mainline-0-1298" date="2023-01-06"/>
<release version="mainline-0-1296" date="2023-01-06"/>
<release version="mainline-0-1295" date="2023-01-06"/>
<release version="mainline-0-1294" date="2023-01-04"/>
<release version="mainline-0-1293" date="2023-01-03"/>
<release version="mainline-0-1292" date="2023-01-02"/>
<release version="mainline-0-1291" date="2023-01-01"/>
<release version="mainline-0-1290" date="2022-12-31"/>
<release version="mainline-0-1289" date="2022-12-30"/>
<release version="mainline-0-1288" date="2022-12-29"/>
<release version="mainline-0-1287" date="2022-12-29"/>
<release version="mainline-0-1286" date="2022-12-28"/>
<release version="mainline-0-1285" date="2022-12-27"/>
<release version="mainline-0-1284" date="2022-12-26"/>
<release version="mainline-0-1283" date="2022-12-26"/>
<release version="mainline-0-1282" date="2022-12-25"/>
<release version="mainline-0-1281" date="2022-12-24"/>
<release version="mainline-0-1280" date="2022-12-23"/>
<release version="mainline-0-1279" date="2022-12-22"/>
<release version="mainline-0-1278" date="2022-12-21"/>
<release version="mainline-0-1277" date="2022-12-20"/>
<release version="mainline-0-1276" date="2022-12-19"/>
<release version="mainline-0-1275" date="2022-12-18"/>
<release version="mainline-0-1274" date="2022-12-18"/>
<release version="mainline-0-1273" date="2022-12-17"/>
<release version="mainline-0-1272" date="2022-12-16"/>
<release version="mainline-0-1271" date="2022-12-15"/>
<release version="mainline-0-1270" date="2022-12-15"/>
<release version="mainline-0-1269" date="2022-12-13"/>
<release version="mainline-0-1268" date="2022-12-12"/>
<release version="mainline-0-1267" date="2022-12-11"/>
<release version="mainline-0-1266" date="2022-12-10"/>
<release version="mainline-0-1265" date="2022-12-09"/>
<release version="mainline-0-1264" date="2022-12-08"/>
<release version="mainline-0-1263" date="2022-12-07"/>
<release version="mainline-0-1262" date="2022-12-06"/>
<release version="mainline-0-1261" date="2022-12-05"/>
<release version="mainline-0-1260" date="2022-12-04"/>
<release version="mainline-0-1259" date="2022-12-03"/>
<release version="mainline-0-1258" date="2022-12-02"/>
<release version="mainline-0-1257" date="2022-12-01"/>
</releases>
</component>

4
org.suyu_emu.suyu.svg Normal file
View file

@ -0,0 +1,4 @@
<svg width="512" height="512" viewBox="0 0 512 512" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M394.633 471.208C407.342 448.401 414.583 422.138 414.583 394.194C414.583 306.657 343.529 235.612 255.992 235.612C190.969 235.612 138.192 182.835 138.192 117.806C138.192 52.7762 190.969 0 255.992 0C397.313 0 512 114.688 512 256C512 346.235 465.227 425.613 394.633 471.208ZM255.992 52.7613C244.032 52.7613 234.316 62.4761 234.316 74.4429C234.316 86.4084 244.032 96.1245 255.992 96.1245C267.969 96.1245 277.673 86.4084 277.673 74.4429C277.673 62.4761 267.969 52.7613 255.992 52.7613ZM299.355 96.1245C287.391 96.1245 277.673 105.839 277.673 117.806C277.673 129.772 287.391 139.488 299.355 139.488C311.332 139.488 321.036 129.772 321.036 117.806C321.036 105.839 311.332 96.1245 299.355 96.1245ZM212.634 96.1245C200.669 96.1245 190.954 105.839 190.954 117.806C190.954 129.772 200.669 139.488 212.634 139.488C224.601 139.488 234.316 129.772 234.316 117.806C234.316 105.839 224.601 96.1245 212.634 96.1245ZM255.992 139.488C244.032 139.488 234.316 149.203 234.316 161.168C234.316 173.135 244.032 182.85 255.992 182.85C267.969 182.85 277.673 173.135 277.673 161.168C277.673 149.203 267.969 139.488 255.992 139.488Z" fill="#FF3554"/>
<path d="M117.361 40.7917C104.657 63.5994 97.4173 89.8623 97.4173 117.806C97.4173 205.343 168.461 276.388 255.992 276.388C321.022 276.388 373.805 329.165 373.805 394.194C373.805 459.222 321.022 512 255.992 512C114.687 512 0 397.312 0 256C0 165.766 46.7638 86.3854 117.361 40.7917ZM255.992 329.149C244.032 329.149 234.316 338.865 234.316 350.831C234.316 362.798 244.032 372.512 255.992 372.512C267.969 372.512 277.673 362.798 277.673 350.831C277.673 338.865 267.969 329.149 255.992 329.149ZM299.355 372.512C287.391 372.512 277.673 382.227 277.673 394.194C277.673 406.161 287.391 415.876 299.355 415.876C311.332 415.876 321.036 406.161 321.036 394.194C321.036 382.227 311.332 372.512 299.355 372.512ZM255.992 415.876C244.032 415.876 234.316 425.59 234.316 437.557C234.316 449.523 244.032 459.239 255.992 459.239C267.969 459.239 277.673 449.523 277.673 437.557C277.673 425.59 267.969 415.876 255.992 415.876ZM212.635 372.512C200.669 372.512 190.955 382.227 190.955 394.194C190.955 406.161 200.669 415.876 212.635 415.876C224.601 415.876 234.316 406.161 234.316 394.194C234.316 382.227 224.601 372.512 212.635 372.512Z" fill="#3A99FF"/>
</svg>

After

Width:  |  Height:  |  Size: 2.3 KiB

1
org.yuzu_emu.yuzu.svg Normal file
View file

@ -0,0 +1 @@
<svg id="svg815" version="1.1" width="682.67" height="682.67" xmlns="http://www.w3.org/2000/svg"><defs id="defs7"><clipPath id="clip-path"><path id="rect4" fill="none" d="M-43-46.67h699.6v777.33H-43z"/></clipPath><style id="style2">.cls-2{clip-path:url(#clip-path)}</style></defs><g id="g823" transform="translate(34)"><g id="right"><g class="cls-2" clip-path="url(#clip-path)" id="g14"><g id="g827"><g id="g833"><path id="path835" d="M340.81 138v544.08c150.26 0 272.06-121.81 272.06-272.06S491.07 138 340.81 138M394 197.55a219.06 219.06 0 010 424.94V197.55" fill="#ff3c28"/></g></g></g></g><g id="left"><g class="cls-2" clip-path="url(#clip-path)" id="g20"><g id="g839"><g id="g845"><path id="path847" d="M272.79 1.92C122.53 1.92.73 123.73.73 274c0 150.27 121.8 272.07 272.06 272.07zm-53.14 59.59v425A219 219 0 01118 119.18a217.51 217.51 0 01101.65-57.67" fill="#0ab9e6"/></g></g></g></g></g></svg>

After

Width:  |  Height:  |  Size: 899 B

25
shared-modules/CODEOWNERS Normal file
View file

@ -0,0 +1,25 @@
# Fallback on Flathub admins for unowned shared modules
* @flathub/reviewers
/dbus-glib/ @TingPing
/clutter/ @A6GibKm
/gtk2/ @TingPing
/gudev/ @Erick555
/intltool/ @TingPing
/libappindicator/ @TingPing
/libcanberra/ @hadess
/libdecor/ @orowith2os
/SDL2/ @orowith2os
/libsecret/ @Lctrs
/libusb/ @A6GibKm
/openjpeg/ @mbridon
/physfs/ @Mailaender
/python2.7/ @bilelmoussaoui
/linux-audio/ @hfiguiere
/libsoup/ @hfiguiere
/lua5.1/ @Unrud
/mac/ @enzo1982 @Eonfge
/pygtk/ @Eonfge
/gzdoom/ @Eonfge
/vorbisgain/ @Eonfge
/luajit/ @ranisalt

49
shared-modules/README.md Normal file
View file

@ -0,0 +1,49 @@
This repository contains commonly shared modules and is intended to be used as a git submodule.
Each submodule may include additional instructions to be used properly. Please check the folder containing that module to see if anything extra needs to be done.
To use shared modules for packaging an application, add the submodule:
```
git submodule add https://github.com/flathub/shared-modules.git
```
Then modules from this repository can be specified in a JSON manifest file like this:
```json
"modules": [
"shared-modules/SDL/SDL-1.2.15.json",
{
"name": "foo"
}
]
```
And for a YAML manifest:
```YAML
modules:
- shared-modules/SDL/SDL-1.2.15.json
- name: foo
```
To update the submodule:
```
git submodule update --remote --merge
```
To remove the submodule:
```
git submodule deinit -f -- shared-modules
rm -rf .git/modules/shared-modules
git rm -f shared-modules
rm .gitmodules
```
Please do not request adding modules unless they have many users in the Flathub repository.
All shared modules manifests in this repository are, and need to be, in the JSON format,
which is supported by both Flatpak manifest formats, JSON and YAML.

View file

@ -0,0 +1,3 @@
This submodule contains the manifests and several patches for SDL1 and its compatibility layer.
If using the compatibility layer, please add the SDL2 submodule as a dependency as well to benefit from the latest bug fixes.

View file

@ -0,0 +1,40 @@
{
"name": "SDL1",
"rm-configure": true,
"config-opts": ["--disable-static"],
"cleanup": [
"/bin",
"/share/man",
"/share/aclocal",
"/include",
"/lib/pkgconfig",
"/lib/*.la",
"/lib/*.a"
],
"sources": [
{
"type": "archive",
"url": "https://www.libsdl.org/release/SDL-1.2.15.tar.gz",
"sha256": "d6d316a793e5e348155f0dd93b979798933fb98aa1edebcc108829d6474aad00"
},
{
"type": "patch",
"path": "sdl-libx11-build.patch"
},
{
"type": "patch",
"path": "sdl-check-for-SDL_VIDEO_X11_BACKINGSTORE.patch"
},
{
"type": "script",
"dest-filename": "autogen.sh",
"commands": [
"sed -i -e 's/.*AM_PATH_ESD.*//' configure.in",
"cp -p /usr/share/automake-*/config.{sub,guess} build-scripts",
"aclocal",
"libtoolize",
"autoconf"
]
}
]
}

View file

@ -0,0 +1,118 @@
diff -Naupr SDL_Pango-0.1.2.orig/src/SDL_Pango.c SDL_Pango-0.1.2/src/SDL_Pango.c
--- SDL_Pango-0.1.2.orig/src/SDL_Pango.c 2004-12-10 10:06:33.000000000 +0100
+++ SDL_Pango-0.1.2/src/SDL_Pango.c 2006-09-29 17:42:09.000000000 +0200
@@ -723,13 +723,8 @@ SDLPango_CopyFTBitmapToSurface(
SDL_UnlockSurface(surface);
}
-/*!
- Create a context which contains Pango objects.
-
- @return A pointer to the context as a SDLPango_Context*.
-*/
SDLPango_Context*
-SDLPango_CreateContext()
+SDLPango_CreateContext_GivenFontDesc(const char* font_desc)
{
SDLPango_Context *context = g_malloc(sizeof(SDLPango_Context));
G_CONST_RETURN char *charset;
@@ -743,8 +738,7 @@ SDLPango_CreateContext()
pango_context_set_language (context->context, pango_language_from_string (charset));
pango_context_set_base_dir (context->context, PANGO_DIRECTION_LTR);
- context->font_desc = pango_font_description_from_string(
- MAKE_FONT_NAME (DEFAULT_FONT_FAMILY, DEFAULT_FONT_SIZE));
+ context->font_desc = pango_font_description_from_string(font_desc);
context->layout = pango_layout_new (context->context);
@@ -762,6 +756,17 @@ SDLPango_CreateContext()
}
/*!
+ Create a context which contains Pango objects.
+
+ @return A pointer to the context as a SDLPango_Context*.
+*/
+SDLPango_Context*
+SDLPango_CreateContext()
+{
+ SDLPango_CreateContext_GivenFontDesc(MAKE_FONT_NAME(DEFAULT_FONT_FAMILY, DEFAULT_FONT_SIZE));
+}
+
+/*!
Free a context.
@param *context [i/o] Context to be free
@@ -1053,6 +1058,20 @@ SDLPango_SetMarkup(
pango_layout_set_font_description (context->layout, context->font_desc);
}
+void
+SDLPango_SetText_GivenAlignment(
+ SDLPango_Context *context,
+ const char *text,
+ int length,
+ SDLPango_Alignment alignment)
+{
+ pango_layout_set_attributes(context->layout, NULL);
+ pango_layout_set_text (context->layout, text, length);
+ pango_layout_set_auto_dir (context->layout, TRUE);
+ pango_layout_set_alignment (context->layout, alignment);
+ pango_layout_set_font_description (context->layout, context->font_desc);
+}
+
/*!
Set plain text to context.
Text must be utf-8.
@@ -1067,11 +1086,7 @@ SDLPango_SetText(
const char *text,
int length)
{
- pango_layout_set_attributes(context->layout, NULL);
- pango_layout_set_text (context->layout, text, length);
- pango_layout_set_auto_dir (context->layout, TRUE);
- pango_layout_set_alignment (context->layout, PANGO_ALIGN_LEFT);
- pango_layout_set_font_description (context->layout, context->font_desc);
+ SDLPango_SetText_GivenAlignment(context, text, length, SDLPANGO_ALIGN_LEFT);
}
/*!
diff -Naupr SDL_Pango-0.1.2.orig/src/SDL_Pango.h SDL_Pango-0.1.2/src/SDL_Pango.h
--- SDL_Pango-0.1.2.orig/src/SDL_Pango.h 2004-12-10 10:06:33.000000000 +0100
+++ SDL_Pango-0.1.2/src/SDL_Pango.h 2006-09-29 17:42:09.000000000 +0200
@@ -109,12 +109,20 @@ typedef enum {
SDLPANGO_DIRECTION_NEUTRAL /*! Neutral */
} SDLPango_Direction;
-
+/*!
+ Specifies alignment of text. See Pango reference for detail
+*/
+typedef enum {
+ SDLPANGO_ALIGN_LEFT,
+ SDLPANGO_ALIGN_CENTER,
+ SDLPANGO_ALIGN_RIGHT
+} SDLPango_Alignment;
extern DECLSPEC int SDLCALL SDLPango_Init();
extern DECLSPEC int SDLCALL SDLPango_WasInit();
+extern DECLSPEC SDLPango_Context* SDLCALL SDLPango_CreateContext_GivenFontDesc(const char* font_desc);
extern DECLSPEC SDLPango_Context* SDLCALL SDLPango_CreateContext();
extern DECLSPEC void SDLCALL SDLPango_FreeContext(
@@ -157,6 +165,12 @@ extern DECLSPEC void SDLCALL SDLPango_Se
const char *markup,
int length);
+extern DECLSPEC void SDLCALL SDLPango_SetText_GivenAlignment(
+ SDLPango_Context *context,
+ const char *text,
+ int length,
+ SDLPango_Alignment alignment);
+
extern DECLSPEC void SDLCALL SDLPango_SetText(
SDLPango_Context *context,
const char *markup,

View file

@ -0,0 +1,25 @@
{
"name": "SDL_image",
"config-opts": ["--disable-static"],
"rm-configure": true,
"cleanup": [
"/include",
"/lib/pkgconfig",
"*.la",
"*.a"
],
"sources": [
{
"type": "archive",
"url": "https://www.libsdl.org/projects/SDL_image/release/SDL_image-1.2.12.tar.gz",
"sha256": "0b90722984561004de84847744d566809dbb9daf732a9e503b91a1b5a84e5699"
},
{
"type": "script",
"dest-filename": "autogen.sh",
"commands": [
"AUTOMAKE=\"automake --foreign\" autoreconf -vfi"
]
}
]
}

View file

@ -0,0 +1,27 @@
{
"name": "SDL_mixer",
"config-opts": ["--disable-static"],
"cleanup": [
"/include",
"/lib/pkgconfig",
"/lib/*.la"
],
"rm-configure": true,
"sources": [
{
"type": "archive",
"url": "https://www.libsdl.org/projects/SDL_mixer/release/SDL_mixer-1.2.12.tar.gz",
"sha256": "1644308279a975799049e4826af2cfc787cad2abb11aa14562e402521f86992a"
},
{
"type": "script",
"dest-filename": "autogen.sh",
"commands": [
"rm acinclude/libtool.m4",
"rm acinclude/lt*",
"AUTOMAKE=\"automake --foreign\" autoreconf -vfi -I acinclude",
"cp -p /usr/share/automake-*/config.{sub,guess} build-scripts"
]
}
]
}

View file

@ -0,0 +1,19 @@
{
"name": "SDL_net",
"config-opts": ["--disable-static"],
"rm-configure": true,
"sources": [
{
"type": "archive",
"url": "https://www.libsdl.org/projects/SDL_net/release/SDL_net-1.2.8.tar.gz",
"sha256": "5f4a7a8bb884f793c278ac3f3713be41980c5eedccecff0260411347714facb4"
},
{
"type": "script",
"dest-filename": "autogen.sh",
"commands": [
"AUTOMAKE=\"automake --foreign\" autoreconf -vfi"
]
}
]
}

View file

@ -0,0 +1,23 @@
{
"name": "SDL_pango",
"config-opts": ["--disable-static"],
"rm-configure": true,
"sources": [
{
"type": "archive",
"url": "https://downloads.sourceforge.net/project/sdlpango/SDL_Pango/0.1.2/SDL_Pango-0.1.2.tar.gz",
"sha256": "7f75d3b97acf707c696ea126424906204ebfa07660162de925173cdd0257eba4"
},
{
"type": "patch",
"path": "SDL_Pango-0.1.2-API-adds.patch"
},
{
"type": "script",
"dest-filename": "autogen.sh",
"commands": [
"autoreconf -vfi"
]
}
]
}

View file

@ -0,0 +1,28 @@
{
"name": "SDL_ttf",
"config-opts": ["--disable-static"],
"rm-configure": true,
"config-opts": [
"ac_cv_path_FREETYPE_CONFIG=pkg-config freetype2"
],
"cleanup": [
"/include",
"/lib/pkgconfig",
"*.la",
"*.a"
],
"sources": [
{
"type": "archive",
"url": "https://www.libsdl.org/projects/SDL_ttf/release/SDL_ttf-2.0.11.tar.gz",
"sha256": "724cd895ecf4da319a3ef164892b72078bd92632a5d812111261cde248ebcdb7"
},
{
"type": "script",
"dest-filename": "autogen.sh",
"commands": [
"AUTOMAKE=\"automake --foreign\" autoreconf -vfi"
]
}
]
}

View file

@ -0,0 +1,24 @@
Description: Do not harness backing store by default
xorg-server 1.15 enables backing store if composite extension is enabled
(default settings). Harnessing backing store through compositor leads to
tearing effect.
This patch reverts default harnessing backing store to conditional use if
SDL_VIDEO_X11_BACKINGSTORE environment variable exists.
Origin: https://bugs.launchpad.net/ubuntu/+source/libsdl1.2/+bug/1280665/comments/1
Bug: https://bugzilla.libsdl.org/show_bug.cgi?id=2383
Bug-Debian: https://bugs.debian.org/747168
--- a/src/video/x11/SDL_x11video.c
+++ b/src/video/x11/SDL_x11video.c
@@ -1088,10 +1088,8 @@
}
}
-#if 0 /* This is an experiment - are the graphics faster now? - nope. */
if ( SDL_getenv("SDL_VIDEO_X11_BACKINGSTORE") )
-#endif
- /* Cache the window in the server, when possible */
+ /* Cache the window in the server when possible, on request */
{
Screen *xscreen;
XSetWindowAttributes a;

View file

@ -0,0 +1,59 @@
# HG changeset patch
# User Azamat H. Hackimov <azamat.hackimov@gmail.com>
# Date 1370184533 -21600
# Node ID 91ad7b43317a6387e115ecdf63a49137f47e42c8
# Parent f7fd5c3951b9ed922fdf696f7182e71b58a13268
Fix compilation with libX11 >= 1.5.99.902.
These changes fixes bug #1769 for SDL 1.2
(http://bugzilla.libsdl.org/show_bug.cgi?id=1769).
diff -r f7fd5c3951b9 -r 91ad7b43317a configure.in
--- a/configure.in Wed Apr 17 00:56:53 2013 -0700
+++ b/configure.in Sun Jun 02 20:48:53 2013 +0600
@@ -1169,6 +1169,17 @@
if test x$definitely_enable_video_x11_xrandr = xyes; then
AC_DEFINE(SDL_VIDEO_DRIVER_X11_XRANDR)
fi
+ AC_MSG_CHECKING(for const parameter to _XData32)
+ have_const_param_xdata32=no
+ AC_TRY_COMPILE([
+ #include <X11/Xlibint.h>
+ extern int _XData32(Display *dpy,register _Xconst long *data,unsigned len);
+ ],[
+ ],[
+ have_const_param_xdata32=yes
+ AC_DEFINE(SDL_VIDEO_DRIVER_X11_CONST_PARAM_XDATA32)
+ ])
+ AC_MSG_RESULT($have_const_param_xdata32)
fi
fi
}
diff -r f7fd5c3951b9 -r 91ad7b43317a include/SDL_config.h.in
--- a/include/SDL_config.h.in Wed Apr 17 00:56:53 2013 -0700
+++ b/include/SDL_config.h.in Sun Jun 02 20:48:53 2013 +0600
@@ -283,6 +283,7 @@
#undef SDL_VIDEO_DRIVER_WINDIB
#undef SDL_VIDEO_DRIVER_WSCONS
#undef SDL_VIDEO_DRIVER_X11
+#undef SDL_VIDEO_DRIVER_X11_CONST_PARAM_XDATA32
#undef SDL_VIDEO_DRIVER_X11_DGAMOUSE
#undef SDL_VIDEO_DRIVER_X11_DYNAMIC
#undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT
diff -r f7fd5c3951b9 -r 91ad7b43317a src/video/x11/SDL_x11sym.h
--- a/src/video/x11/SDL_x11sym.h Wed Apr 17 00:56:53 2013 -0700
+++ b/src/video/x11/SDL_x11sym.h Sun Jun 02 20:48:53 2013 +0600
@@ -165,7 +165,11 @@
*/
#ifdef LONG64
SDL_X11_MODULE(IO_32BIT)
+#if SDL_VIDEO_DRIVER_X11_CONST_PARAM_XDATA32
+SDL_X11_SYM(int,_XData32,(Display *dpy,register _Xconst long *data,unsigned len),(dpy,data,len),return)
+#else
SDL_X11_SYM(int,_XData32,(Display *dpy,register long *data,unsigned len),(dpy,data,len),return)
+#endif
SDL_X11_SYM(void,_XRead32,(Display *dpy,register long *data,long len),(dpy,data,len),)
#endif

View file

@ -0,0 +1,17 @@
{
"name": "sdl12-compat",
"buildsystem": "cmake-ninja",
"cleanup": [
"bin/sdl-config"
],
"sources": [
{
"type": "archive",
"url": "https://github.com/libsdl-org/sdl12-compat/archive/refs/tags/release-1.2.68.tar.gz",
"sha256": "63c6e4dcc1154299e6f363c872900be7f3dcb3e42b9f8f57e05442ec3d89d02d"
}
],
"modules": [
"../glu/glu-9.json"
]
}

View file

@ -0,0 +1,15 @@
This SDL2 module is intended for use with flatpaks that rely on SDL2.
If your app or game wants to use a newer version of SDL2, or default to Wayland, you can use this. Set the following permissions for using Wayland:
```
socket=wayland
socket=fallback-x11
share=ipc
```
This SDL2 module contains two manifests; one containing SDL2 without libdecor, and the other with.
If your application utilizes SDL2 but doesn't work on Wayland, even with libdecor, you might opt for the `-no-libdecor` manifest, and disable Wayland support.
Otherwise, flatpak maintainers can use the `-with-libdecor` manifest.

View file

@ -0,0 +1,22 @@
{
"name": "SDL2",
"buildsystem": "autotools",
"config-opts": ["--disable-static"],
"sources": [
{
"type": "archive",
"url": "https://github.com/libsdl-org/SDL/releases/download/release-2.28.5/SDL2-2.28.5.tar.gz",
"sha256": "332cb37d0be20cb9541739c61f79bae5a477427d79ae85e352089afdaf6666e4"
}
],
"cleanup": [ "/bin/sdl2-config",
"/include",
"/lib/libSDL2.la",
"/lib/libSDL2main.a",
"/lib/libSDL2main.la",
"/lib/libSDL2_test.a",
"/lib/libSDL2_test.la",
"/lib/cmake",
"/share/aclocal",
"/lib/pkgconfig"]
}

View file

@ -0,0 +1,23 @@
{
"name": "SDL2",
"buildsystem": "autotools",
"config-opts": ["--disable-static"],
"sources": [
{
"type": "archive",
"url": "https://github.com/libsdl-org/SDL/releases/download/release-2.28.5/SDL2-2.28.5.tar.gz",
"sha256": "332cb37d0be20cb9541739c61f79bae5a477427d79ae85e352089afdaf6666e4"
}
],
"cleanup": [ "/bin/sdl2-config",
"/include",
"/lib/libSDL2.la",
"/lib/libSDL2main.a",
"/lib/libSDL2main.la",
"/lib/libSDL2_test.a",
"/lib/libSDL2_test.la",
"/lib/cmake",
"/share/aclocal",
"/lib/pkgconfig"],
"modules": [ "../libdecor/libdecor-0.2.0.json" ]
}

View file

@ -0,0 +1,155 @@
cmake_minimum_required(VERSION 2.8)
project (cld2)
enable_language(CXX)
set (VERSION "0.0.197")
set (common_SOURCE_FILES
internal/cldutil.cc
internal/cldutil_shared.cc
internal/compact_lang_det.cc
internal/compact_lang_det_hint_code.cc
internal/compact_lang_det_impl.cc
internal/debug.cc
internal/fixunicodevalue.cc
internal/generated_entities.cc
internal/generated_language.cc
internal/generated_ulscript.cc
internal/getonescriptspan.cc
internal/lang_script.cc
internal/offsetmap.cc
internal/scoreonescriptspan.cc
internal/tote.cc
internal/utf8statetable.cc
)
set (cld2_SOURCE_FILES
internal/generated_distinct_bi_0.cc
internal/cld_generated_cjk_uni_prop_80.cc
internal/cld2_generated_cjk_compatible.cc
internal/cld_generated_cjk_delta_bi_4.cc
internal/cld2_generated_quadchrome_2.cc
internal/cld2_generated_deltaoctachrome.cc
internal/cld2_generated_distinctoctachrome.cc
internal/cld_generated_score_quad_octa_2.cc
)
set (cld2_full_SOURCE_FILES
internal/generated_distinct_bi_0.cc
internal/cld_generated_cjk_uni_prop_80.cc
internal/cld2_generated_cjk_compatible.cc
internal/cld_generated_cjk_delta_bi_32.cc
internal/cld2_generated_quad0122.cc
internal/cld2_generated_deltaocta0122.cc
internal/cld2_generated_distinctocta0122.cc
internal/cld_generated_score_quad_octa_0122.cc
)
set (cld2_dynamic_SOURCE_FILES
internal/cld2_dynamic_data.cc
internal/cld2_dynamic_data_loader.cc
)
add_library(cld2 SHARED ${common_SOURCE_FILES} ${cld2_SOURCE_FILES})
set_target_properties(cld2 PROPERTIES
ENABLE_EXPORTS On
OUTPUT_NAME cld2
VERSION ${VERSION}
SOVERSION 0
)
add_library(cld2_full SHARED ${cld2_full_SOURCE_FILES})
set_target_properties(cld2_full PROPERTIES
ENABLE_EXPORTS On
OUTPUT_NAME cld2_full
VERSION ${VERSION}
SOVERSION 0
)
add_library(cld2_dynamic SHARED ${cld2_dynamic_SOURCE_FILES})
set_target_properties(cld2_dynamic PROPERTIES
ENABLE_EXPORTS On
OUTPUT_NAME cld2_dynamic
VERSION ${VERSION}
SOVERSION 0
COMPILE_FLAGS "-DCLD2_DYNAMIC_MODE"
)
install(TARGETS cld2 DESTINATION lib/${CMAKE_LIBRARY_ARCHITECTURE})
install(TARGETS cld2_full DESTINATION lib/${CMAKE_LIBRARY_ARCHITECTURE})
install(TARGETS cld2_dynamic DESTINATION lib/${CMAKE_LIBRARY_ARCHITECTURE})
set (cld2_internal_HEADERS
internal/cld2_dynamic_compat.h
internal/cld2_dynamic_data_extractor.h
internal/cld2_dynamic_data.h
internal/cld2_dynamic_data_loader.h
internal/cld2tablesummary.h
internal/cldutil.h
internal/cldutil_offline.h
internal/cldutil_shared.h
internal/compact_lang_det_hint_code.h
internal/compact_lang_det_impl.h
internal/debug.h
internal/fixunicodevalue.h
internal/generated_language.h
internal/generated_ulscript.h
internal/getonescriptspan.h
internal/integral_types.h
internal/lang_script.h
internal/langspan.h
internal/offsetmap.h
internal/port.h
internal/scoreonescriptspan.h
internal/stringpiece.h
internal/tote.h
internal/unittest_data.h
internal/utf8acceptinterchange.h
internal/utf8prop_lettermarkscriptnum.h
internal/utf8repl_lettermarklower.h
internal/utf8scannot_lettermarkspecial.h
internal/utf8statetable.h
)
install(FILES ${cld2_internal_HEADERS} DESTINATION include/cld2/internal)
set (cld2_public_HEADERS
public/compact_lang_det.h
public/encodings.h
)
install(FILES ${cld2_public_HEADERS} DESTINATION include/cld2/public)
set (full_SOURCE_FILES
internal/cld_generated_cjk_uni_prop_80.cc
internal/cld2_generated_cjk_compatible.cc
internal/cld_generated_cjk_delta_bi_32.cc
internal/generated_distinct_bi_0.cc
internal/cld2_generated_quad0122.cc
internal/cld2_generated_deltaocta0122.cc
internal/cld2_generated_distinctocta0122.cc
internal/cld_generated_score_quad_octa_0122.cc
)
add_executable(compact_lang_det_test_full ${full_SOURCE_FILES} internal/compact_lang_det_test.cc)
add_executable(cld2_unittest_full ${full_SOURCE_FILES} internal/cld2_unittest_full.cc)
add_executable(cld2_unittest_full_avoid ${full_SOURCE_FILES} internal/cld2_unittest_full.cc)
set_target_properties(cld2_unittest_full_avoid PROPERTIES COMPILE_FLAGS "-Davoid_utf8_string_constants")
add_executable(cld2_dynamic_data_tool internal/cld2_dynamic_data_extractor.cc internal/cld2_dynamic_data_tool.cc)
add_executable(compact_lang_det_dynamic_test_chrome ${common_SOURCE_FILES} internal/cld2_dynamic_data_extractor.cc internal/compact_lang_det_test.cc)
add_executable(cld2_dynamic_unittest ${common_SOURCE_FILES} internal/cld2_unittest.cc)
set_target_properties(compact_lang_det_dynamic_test_chrome PROPERTIES COMPILE_FLAGS "-DCLD2_DYNAMIC_MODE")
set_target_properties(cld2_dynamic_unittest PROPERTIES COMPILE_FLAGS "-DCLD2_DYNAMIC_MODE")
add_executable(compact_lang_det_test_chrome_2 internal/compact_lang_det_test.cc)
add_executable(compact_lang_det_test_chrome_16 internal/compact_lang_det_test.cc)
add_executable(cld2_unittest_chrome_2 internal/cld2_unittest.cc)
add_executable(cld2_unittest_avoid_chrome_2 internal/cld2_unittest.cc)
set_target_properties(cld2_unittest_avoid_chrome_2 PROPERTIES COMPILE_FLAGS "-Davoid_utf8_string_constants")
target_link_libraries(compact_lang_det_test_full cld2)
target_link_libraries(cld2_unittest_full cld2)
target_link_libraries(cld2_unittest_full_avoid cld2)
target_link_libraries(cld2_dynamic_data_tool cld2 cld2_dynamic)
target_link_libraries(compact_lang_det_dynamic_test_chrome cld2_dynamic)
target_link_libraries(cld2_dynamic_unittest cld2_dynamic)
target_link_libraries(compact_lang_det_test_chrome_2 cld2)
target_link_libraries(compact_lang_det_test_chrome_16 cld2)
target_link_libraries(cld2_unittest_chrome_2 cld2)
target_link_libraries(cld2_unittest_avoid_chrome_2 cld2)

View file

@ -0,0 +1,24 @@
{
"name": "cld2",
"buildsystem": "simple",
"build-options": {
"cxxflags": "-std=c++98"
},
"build-commands": [
"cp CMakeLists.txt ./cld2",
"cd cld2 && mkdir build && cd build && cmake .. -DCMAKE_INSTALL_PREFIX=/app -DCMAKE_BUILD_TYPE=Release",
"cd cld2/build && make && make install"
],
"sources":[
{
"type": "git",
"url": "https://github.com/CLD2Owners/cld2.git",
"commit": "84b58a5d7690ebf05a91406f371ce00c3daf31c0",
"dest": "cld2"
},
{
"type": "file",
"path": "CMakeLists.txt"
}
]
}

View file

@ -0,0 +1,69 @@
{
"name": "clutter-gtk",
"cleanup": [
"/share/gtk-doc"
],
"sources": [
{
"type": "archive",
"url": "https://download.gnome.org/sources/clutter-gtk/1.8/clutter-gtk-1.8.4.tar.xz",
"sha256": "521493ec038973c77edcb8bc5eac23eed41645117894aaee7300b2487cb42b06"
}
],
"modules": [
{
"name": "cogl",
"config-opts": [
"--disable-cogl-gst",
"--disable-gtk-doc",
"--enable-xlib-egl-platform",
"--enable-wayland-egl-platform"
],
"cleanup": [
"/share/gtk-doc",
"/share/cogl/examples-data"
],
"sources": [
{
"type": "archive",
"url": "https://download.gnome.org/sources/cogl/1.22/cogl-1.22.8.tar.xz",
"sha256": "a805b2b019184710ff53d0496f9f0ce6dcca420c141a0f4f6fcc02131581d759"
}
]
},
{
"name": "clutter",
"config-opts": [
"--disable-gtk-doc",
"--enable-egl-backend",
"--enable-wayland-backend"
],
"cleanup": [
"/share/gtk-doc"
],
"sources": [
{
"type": "archive",
"url": "https://download.gnome.org/sources/clutter/1.26/clutter-1.26.4.tar.xz",
"sha256": "8b48fac159843f556d0a6be3dbfc6b083fc6d9c58a20a49a6b4919ab4263c4e6"
}
]
},
{
"name": "clutter-gst",
"config-opts": [
"--disable-gtk-doc"
],
"cleanup": [
"/share/gtk-doc"
],
"sources": [
{
"type": "archive",
"url": "https://download.gnome.org/sources/clutter-gst/3.0/clutter-gst-3.0.27.tar.xz",
"sha256": "fe69bd6c659d24ab30da3f091eb91cd1970026d431179b0724f13791e8ad9f9d"
}
]
}
]
}

View file

@ -0,0 +1,23 @@
{
"name": "dbus-glib",
"cleanup": [
"*.la",
"/bin",
"/etc",
"/include",
"/libexec",
"/share/gtk-doc",
"/share/man"
],
"config-opts": [
"--disable-static",
"--disable-gtk-doc"
],
"sources": [
{
"type": "archive",
"url": "https://dbus.freedesktop.org/releases/dbus-glib/dbus-glib-0.112.tar.gz",
"sha256": "7d550dccdfcd286e33895501829ed971eeb65c614e73aadb4a08aeef719b143a"
}
]
}

View file

@ -0,0 +1,30 @@
{
"name": "glew",
"no-autogen": true,
"make-args": [
"GLEW_PREFIX=${FLATPAK_DEST}",
"GLEW_DEST=${FLATPAK_DEST}",
"LIBDIR=${FLATPAK_DEST}/lib",
"CFLAGS.EXTRA:=${CFLAGS} -fPIC",
"LDFLAGS.EXTRA=${LDFLAGS}"
],
"make-install-args": [
"GLEW_PREFIX=${FLATPAK_DEST}",
"GLEW_DEST=${FLATPAK_DEST}",
"LIBDIR=${FLATPAK_DEST}/lib",
"CFLAGS.EXTRA:=${CFLAGS} -fPIC",
"LDFLAGS.EXTRA=${LDFLAGS}"
],
"sources": [
{
"type": "archive",
"url": "https://downloads.sourceforge.net/project/glew/glew/2.2.0/glew-2.2.0.tgz",
"sha256": "d4fc82893cfb00109578d0a1a2337fb8ca335b3ceccf97b97e5cc7f08e4353e1"
}
],
"cleanup": [
"/include",
"/lib/pkgconfig",
"/lib/*.a"
]
}

View file

@ -0,0 +1,12 @@
{
"name": "glu",
"buildsystem": "meson",
"sources": [
{
"type": "archive",
"url": "https://archive.mesa3d.org/glu/glu-9.0.3.tar.xz",
"sha256": "bd43fe12f374b1192eb15fe20e45ff456b9bc26ab57f0eee919f96ca0f8a330f"
}
],
"cleanup": [ "/include", "/lib/*.a", "/lib/*.la", "/lib/pkgconfig" ]
}

View file

@ -0,0 +1,180 @@
From d5e0034183564df5fec8e4dde1705116c7b38021 Mon Sep 17 00:00:00 2001
From: Patrick Griffis <tingping@tingping.se>
Date: Sat, 16 May 2020 18:00:36 -0700
Subject: [PATCH] Replace Inkscape dependency with rsvg-convert
rsvg-convert is a *much* smaller dependency that all systems with
a functioning GTK installation should have easy access to.
---
common/gtk-2.0/Makefile.am | 6 +-----
common/gtk-2.0/render-asset.sh | 16 ++++++++--------
common/gtk-3.0/common.am | 12 ++----------
common/xfwm4/Makefile.am | 6 +-----
common/xfwm4/render-asset.sh | 16 ++++++++--------
configure.ac | 8 ++------
6 files changed, 22 insertions(+), 42 deletions(-)
diff --git a/common/gtk-2.0/Makefile.am b/common/gtk-2.0/Makefile.am
index 010823a..873013a 100644
--- a/common/gtk-2.0/Makefile.am
+++ b/common/gtk-2.0/Makefile.am
@@ -35,11 +35,7 @@ $(light): $(srcdir)/light/assets.svg | light/assets
$(dark): $(srcdir)/dark/assets.svg | dark/assets
$(light) $(dark):
-if INKSCAPE_1_0_OR_NEWER
- $(INKSCAPE) --export-id-only --export-filename="$@" --export-id="$(basename $(notdir $@))" --export-dpi=$(if $(filter $(OPTION_GTK2_HIDPI),true),192,96) "$<" >/dev/null
-else !INKSCAPE_1_0_OR_NEWER
- $(INKSCAPE) --export-id-only --export-png="$@" --export-id="$(basename $(notdir $@))" --export-dpi=$(if $(filter $(OPTION_GTK2_HIDPI),true),192,96) "$<" >/dev/null
-endif
+ $(RSVG_CONVERT) --format=png --output="$@" --export-id="$(basename $(notdir $@))" --dpi-x=$(if $(filter $(OPTION_GTK2_HIDPI),true),192,96) --dpi-y=$(if $(filter $(OPTION_GTK2_HIDPI),true),192,96) "$<" >/dev/null
$(OPTIPNG) -o7 --quiet "$@"
menubar-toolbar/%-dark.png: dark/assets/%.png | menubar-toolbar
diff --git a/common/gtk-2.0/render-asset.sh b/common/gtk-2.0/render-asset.sh
index 6685414..f6198af 100755
--- a/common/gtk-2.0/render-asset.sh
+++ b/common/gtk-2.0/render-asset.sh
@@ -1,7 +1,7 @@
#!/bin/bash
set -ueo pipefail
-INKSCAPE="$(which inkscape)"
+RSVG_CONVERT="$(which rsvg-convert)"
OPTIPNG="$(which optipng)"
ASSETS_DIR="$1"
@@ -14,9 +14,9 @@ if [[ -f "${result_file}" ]] ; then
echo "${result_file} already exists."
else
echo "Rendering '${result_file}'"
- "$INKSCAPE" --export-id="$i" \
- --export-id-only \
- --export-png="${result_file}" "$SRC_FILE" >/dev/null \
+ "$RSVG_CONVERT" --export-id="$i" \
+ --format=png
+ --output="${result_file}" "$SRC_FILE" >/dev/null \
&& "$OPTIPNG" -o7 --quiet "${result_file}"
fi
@@ -26,10 +26,10 @@ if [[ "$OPTION_GTK2_HIDPI" == "true" ]]; then
echo "${result_file_hidpi} already exists."
else
echo "Rendering '${result_file_hidpi}'"
- "$INKSCAPE" --export-id="$i" \
- --export-id-only \
- --export-dpi=192 \
- --export-png="${result_file_hidpi}" "$SRC_FILE" >/dev/null \
+ "$RSVG_CONVERT" --export-id="$i" \
+ --dpi-x=192 --dpi-y=192 \
+ --format=png
+ --output="${result_file_hidpi}" "$SRC_FILE" >/dev/null \
&& "$OPTIPNG" -o7 --quiet "${result_file_hidpi}"
fi
fi
diff --git a/common/gtk-3.0/common.am b/common/gtk-3.0/common.am
index a93d01d..9e4b102 100644
--- a/common/gtk-3.0/common.am
+++ b/common/gtk-3.0/common.am
@@ -14,19 +14,11 @@ clean:
rm -rf assets/ light/ dark/ darker/ lighter/
$(normal): $(srcdir)/assets.svg | assets
-if INKSCAPE_1_0_OR_NEWER
- $(INKSCAPE) --export-id-only --export-filename="$@" --export-id="$(basename $(notdir $@))" --export-dpi=96 "$<" >/dev/null
-else !INKSCAPE_1_0_OR_NEWER
- $(INKSCAPE) --export-id-only --export-png="$@" --export-id="$(basename $(notdir $@))" --export-dpi=96 "$<" >/dev/null
-endif
+ $(RSVG_CONVERT) --format=png --output="$@" --export-id="$(basename $(notdir $@))" --dpi-y=96 --dpi-x=96 "$<" >/dev/null
$(OPTIPNG) -o7 --quiet "$@"
$(hidpi): $(srcdir)/assets.svg | assets
-if INKSCAPE_1_0_OR_NEWER
- $(INKSCAPE) --export-id-only --export-filename="$@" --export-id="$(patsubst %@2,%,$(basename $(notdir $@)))" --export-dpi=192 "$<" >/dev/null
-else !INKSCAPE_1_0_OR_NEWER
- $(INKSCAPE) --export-id-only --export-png="$@" --export-id="$(patsubst %@2,%,$(basename $(notdir $@)))" --export-dpi=192 "$<" >/dev/null
-endif
+ $(RSVG_CONVERT) --format=png --output="$@" --export-id="$(patsubst %@2,%,$(basename $(notdir $@)))" --dpi-y=192 --dpi-x=192 "$<" >/dev/null
$(OPTIPNG) -o7 --quiet "$@"
.PHONY: normal hidpi clean
diff --git a/common/xfwm4/Makefile.am b/common/xfwm4/Makefile.am
index e5fbdc5..1f21183 100644
--- a/common/xfwm4/Makefile.am
+++ b/common/xfwm4/Makefile.am
@@ -17,11 +17,7 @@ $(light): $(srcdir)/light/assets.svg | light/assets
$(dark): $(srcdir)/dark/assets.svg | dark/assets
$(light) $(dark):
-if INKSCAPE_1_0_OR_NEWER
- $(INKSCAPE) --export-id-only --export-filename="$@" --export-id="$(basename $(notdir $@))" --export-dpi=$(if $(filter $(OPTION_GTK2_HIDPI),true),192,96) "$<" >/dev/null
-else !INKSCAPE_1_0_OR_NEWER
- $(INKSCAPE) --export-id-only --export-png="$@" --export-id="$(basename $(notdir $@))" --export-dpi=$(if $(filter $(OPTION_GTK2_HIDPI),true),192,96) "$<" >/dev/null
-endif
+ $(RSVG_CONVERT) --format=png --output="$@" --export-id="$(basename $(notdir $@))" --dpi-y=$(if $(filter $(OPTION_GTK2_HIDPI),true),192,96) --dpi-x=$(if $(filter $(OPTION_GTK2_HIDPI),true),192,96) "$<" >/dev/null
$(OPTIPNG) -o7 --quiet "$@"
.PHONY: light dark clean
diff --git a/common/xfwm4/render-asset.sh b/common/xfwm4/render-asset.sh
index 6685414..f6198af 100755
--- a/common/xfwm4/render-asset.sh
+++ b/common/xfwm4/render-asset.sh
@@ -1,7 +1,7 @@
#!/bin/bash
set -ueo pipefail
-INKSCAPE="$(which inkscape)"
+RSVG_CONVERT="$(which rsvg-convert)"
OPTIPNG="$(which optipng)"
ASSETS_DIR="$1"
@@ -14,9 +14,9 @@ if [[ -f "${result_file}" ]] ; then
echo "${result_file} already exists."
else
echo "Rendering '${result_file}'"
- "$INKSCAPE" --export-id="$i" \
- --export-id-only \
- --export-png="${result_file}" "$SRC_FILE" >/dev/null \
+ "$RSVG_CONVERT" --export-id="$i" \
+ --format=png
+ --output="${result_file}" "$SRC_FILE" >/dev/null \
&& "$OPTIPNG" -o7 --quiet "${result_file}"
fi
@@ -26,10 +26,10 @@ if [[ "$OPTION_GTK2_HIDPI" == "true" ]]; then
echo "${result_file_hidpi} already exists."
else
echo "Rendering '${result_file_hidpi}'"
- "$INKSCAPE" --export-id="$i" \
- --export-id-only \
- --export-dpi=192 \
- --export-png="${result_file_hidpi}" "$SRC_FILE" >/dev/null \
+ "$RSVG_CONVERT" --export-id="$i" \
+ --dpi-x=192 --dpi-y=192 \
+ --format=png
+ --output="${result_file_hidpi}" "$SRC_FILE" >/dev/null \
&& "$OPTIPNG" -o7 --quiet "${result_file_hidpi}"
fi
fi
diff --git a/configure.ac b/configure.ac
index f0725f1..1a52cc7 100644
--- a/configure.ac
+++ b/configure.ac
@@ -48,12 +48,8 @@ AM_CONDITIONAL([GNOME_SHELL_3_32_OR_NEWER], [test "0$GNOME_SHELL_VERSMNR" -ge 31
AS_IF([test "x$ENABLE_CINNAMON" != xno], [ARC_CINNAMON])
AS_IF([test "x$ENABLE_GTK2" != xno -o "x$ENABLE_GTK3" != xno -o "x$ENABLE_XFWM" != xno], [
- AC_PATH_PROG([INKSCAPE], [inkscape])
- AS_IF([test "x$ac_cv_path_INKSCAPE" = x], [AC_MSG_ERROR([inkscape not found])])
- AS_IF([test "x$ac_cv_path_INKSCAPE" != x],
- [INKSCAPE_VERSMJR=`inkscape --version 2> /dev/null | cut -d' ' -f2 | cut -d'.' -f1`]
- AM_CONDITIONAL([INKSCAPE_1_0_OR_NEWER], [test "x$INKSCAPE_VERSMJR" = x1])
- )
+ AC_PATH_PROG([RSVG_CONVERT], [rsvg-convert])
+ AS_IF([test "x$ac_cv_path_RSVG_CONVERT" = x], [AC_MSG_ERROR([rsvg-convert not found])])
AC_PATH_PROG([OPTIPNG], [optipng])
AS_IF([test "x$ac_cv_path_OPTIPNG" = x], [AC_MSG_ERROR([optipng not found])])
])
--
2.26.0

View file

@ -0,0 +1,287 @@
{
"name": "gtk2-common-themes",
"buildsystem": "simple",
"build-commands": [],
"modules": [
{
"name": "sassc",
"// NOTE": "This is used by Yaru, Greybird, and Materia",
"cleanup": ["*"],
"sources": [
{
"type": "archive",
"url": "https://github.com/sass/sassc/archive/3.5.0.tar.gz",
"sha256": "26f54e31924b83dd706bc77df5f8f5553a84d51365f0e3c566df8de027918042"
},
{
"type": "script",
"commands": ["autoreconf -si"]
}
],
"modules": [
{
"name": "libsass",
"cleanup": ["*"],
"sources": [
{
"type": "archive",
"url": "https://github.com/sass/libsass/archive/3.5.4.tar.gz",
"sha256": "5f61cbcddaf8e6ef7a725fcfa5d05297becd7843960f245197ebb655ff868770"
},
{
"type": "script",
"commands": ["autoreconf -si"]
}
]
}
]
},
{
"name": "gtk2-murrine-engine",
"rm-configure": true,
"// NOTE": "Used by Arc and CrosAdapta",
"cleanup": [
"*.la"
],
"sources": [
{
"type": "archive",
"url": "https://download.gnome.org/sources/murrine/0.98/murrine-0.98.2.tar.xz",
"sha256": "e9c68ae001b9130d0f9d1b311e8121a94e5c134b82553ba03971088e57d12c89"
},
{
"type": "patch",
"path": "murrine-engine-fix-crash.patch"
},
{
"type": "script",
"commands": [
"rm config.guess",
"autoreconf -si"
]
}
]
},
{
"name": "cros-adapta-gtk2-theme",
"// NOTE": "This is used by Chrome OS",
"buildsystem": "simple",
"build-commands": [
"install -Dm644 index.theme ${FLATPAK_DEST}/share/themes/CrosAdapta/index.theme",
"cp -r gtk-2.0 ${FLATPAK_DEST}/share/themes/CrosAdapta"
],
"sources": [
{
"type": "git",
"url": "https://chromium.googlesource.com/chromiumos/third_party/cros-adapta",
"commit": "eb6d8c1832b9181926df107faf41a80887fd982c"
}
]
},
{
"name": "arc-gtk2-theme",
"// NOTE": "This is used by Solus and is popular",
"// FIXME": "This has a dependency on inkscape and my patch isn't quite good enough sadly",
"disabled": true,
"config-opts": [
"--disable-gnome-shell",
"--disable-cinnamon",
"--disable-gtk3",
"--disable-metacity",
"--disable-xfwm",
"--disable-plank",
"--disable-openbox",
"--disable-unity"
],
"sources": [
{
"type": "archive",
"url": "https://github.com/jnsh/arc-theme/releases/download/20200513/arc-theme-20200513.tar.xz",
"sha256": "cd268b878d6ad7c81b7acc0f89b66e26ee9a9a92eafb03b792318d51707f1962"
},
{
"type": "patch",
"path": "arc-gtk2-theme-Replace-Inkscape-dependency-with-rsvg-convert.patch"
},
{
"type": "shell",
"commands": ["sed -i 's|\"$srcdir/configure\" $@||' autogen.sh"]
}
],
"modules": [
{
"name": "optipng",
"cleanup": ["*"],
"sources": [
{
"type": "archive",
"url": "https://prdownloads.sourceforge.net/optipng/optipng-0.7.7.tar.gz",
"sha256": "4f32f233cef870b3f95d3ad6428bfe4224ef34908f1b42b0badf858216654452"
}
]
}
]
},
{
"name": "breeze-gtk2-theme",
"// NOTE": "This is used by KDE by default.",
"buildsystem": "simple",
"build-commands": [
"find breeze-gtk/src -name '*.scss' -print -execdir sed -i 's#\\.\\./assets/#./assets/#' {} \\;",
"cd breeze-gtk/src && sed -i 's/@PYTHON_EXECUTABLE@/python3/g' build_theme.sh.cmake && ./build_theme.sh.cmake -c BreezeLight -t ${FLATPAK_BUILDER_BUILDDIR}/Breeze -r ${FLATPAK_BUILDER_BUILDDIR}/breeze/colors",
"mkdir -p ${FLATPAK_DEST}/share/themes/Breeze/",
"cp -rv --no-preserve=ownership ${FLATPAK_BUILDER_BUILDDIR}/Breeze/gtk-2.0 ${FLATPAK_DEST}/share/themes/Breeze/",
"cp -rv --no-preserve=ownership ${FLATPAK_BUILDER_BUILDDIR}/Breeze/assets ${FLATPAK_DEST}/share/themes/Breeze/"
],
"sources": [
{
"type": "archive",
"url": "https://download.kde.org/stable/plasma/5.27.6/breeze-gtk-5.27.6.tar.xz",
"sha256": "ac2aab13b9224ddea6560fdbac9fe9d93a08a86787f95b95c43a95b134836bda",
"dest": "breeze-gtk",
"x-checker-data": {
"type": "anitya",
"project-id": 8761,
"stable-only": true,
"url-template": "https://download.kde.org/stable/plasma/$version/breeze-gtk-$version.tar.xz"
}
},
{
"type": "archive",
"url": "https://download.kde.org/stable/plasma/5.27.6/breeze-5.27.6.tar.xz",
"sha256": "5d9a8d7e5b061ce4183c4f842b0e82e6132b6c8e7ebc2c1d579baa066ffa6c6c",
"dest": "breeze",
"x-checker-data": {
"type": "anitya",
"project-id": 8761,
"stable-only": true,
"url-template": "https://download.kde.org/stable/plasma/$version/breeze-$version.tar.xz"
}
}
],
"modules": [
{
"name": "python3-cairo",
"cleanup": ["*"],
"buildsystem": "simple",
"build-commands": [
"pip3 install --exists-action=i --no-index --find-links=\"file://${PWD}\" --prefix=\"${FLATPAK_DEST}\" pycairo"
],
"sources": [
{
"type": "file",
"url": "https://files.pythonhosted.org/packages/69/ca/9e9fa2e8be0876a9bbf046a1be7ee33e61d4fdfbd1fd25c76c1bdfddf8c4/pycairo-1.23.0.tar.gz",
"sha256": "9b61ac818723adc04367301317eb2e814a83522f07bbd1f409af0dada463c44c",
"x-checker-data": {
"type": "pypi",
"name": "pycairo"
}
},
{
"type": "file",
"url": "https://files.pythonhosted.org/packages/25/f3/d68c20919bc774c6cb127f1762f2f2f999d700a58198556e883dd3700e58/setuptools-67.6.0.tar.gz",
"sha256": "2ee892cd5f29f3373097f5a814697e397cf3ce313616df0af11231e2ad118077",
"x-checker-data": {
"type": "pypi",
"name": "setuptools"
}
},
{
"type": "file",
"url": "https://files.pythonhosted.org/packages/a2/b8/6a06ff0f13a00fc3c3e7d222a995526cbca26c1ad107691b6b1badbbabf1/wheel-0.38.4.tar.gz",
"sha256": "965f5259b566725405b05e7cf774052044b1ed30119b5d586b2703aafe8719ac",
"x-checker-data": {
"type": "pypi",
"name": "wheel"
}
}
]
}
]
},
{
"name": "elementary-gtk2-theme",
"// NOTE": "This is used by Elementary OS",
"buildsystem": "meson",
"cleanup": [
"/share/themes/elementary/gtk-3.0",
"/share/themes/elementary/plank",
"/share/plank"
],
"sources": [
{
"type": "archive",
"url": "https://github.com/elementary/stylesheet/archive/5.4.2.tar.gz",
"sha256": "3bc37723daf4ce0b7c9ce4c125ef0055affe8d6654981388ec87d4a23a1ae0ec"
}
]
},
{
"name": "yaru-gtk2-theme",
"// NOTE": "This is used by Ubuntu",
"buildsystem": "meson",
"config-opts": [
"-Dicons=false",
"-Dsounds=false",
"-Dgnome-shell=false",
"-Dsessions=false"
],
"cleanup": [
"/share/themes/Yaru*/gtk-3.0",
"/share/themes/Yaru*/gtk-3.20",
"/share/themes/Yaru*/unity"
],
"sources": [
{
"type": "archive",
"url": "https://github.com/ubuntu/yaru/archive/20.10.1.tar.gz",
"sha256": "9da2605088674edf2694a8215b7344fb5209b308dd8220ea21667a914dc8c55d"
}
]
},
{
"name": "greybird-gtk2-theme",
"// NOTE": "This is used by many XFCE distros",
"buildsystem": "meson",
"cleanup": [
"/share/themes/Greybird*/xfwm4",
"/share/themes/Greybird*/gnome-shell",
"/share/themes/Greybird*/gtk-3.0",
"/share/themes/Greybird*/metacity-1",
"/share/themes/Greybird*/xfce-notify-4.0",
"/share/themes/Greybird*/plank",
"/share/themes/Greybird*/unity",
"/share/themes/Greybird*/*.emerald"
],
"sources": [
{
"type": "archive",
"url": "https://github.com/shimmerproject/Greybird/archive/v3.22.12.tar.gz",
"sha256": "410804cd5daca33cbc5c7c4a179f3a334ced87f408e515fc5d9c083a04bec4bc"
}
]
},
{
"name": "materia-gtk2-theme",
"// NOTE": "This is used by Ubuntu Studio",
"buildsystem": "meson",
"cleanup": [
"/share/themes/Materia*/xfwm4",
"/share/themes/Materia*/gnome-shell",
"/share/themes/Materia*/gtk-3.0",
"/share/themes/Materia*/metacity-1",
"/share/themes/Materia*/cinnamon",
"/share/themes/Materia*/chrome",
"/share/themes/Materia*/plank",
"/share/themes/Materia*/unity"
],
"sources": [
{
"type": "git",
"url": "https://github.com/nana-4/materia-theme.git",
"commit": "b36b379c9256b67e5f63a60c6faf6912f1845b66"
}
]
}
]
}

View file

@ -0,0 +1,30 @@
From 536da7a15c1737bc63c8ecba5ccac40cc2170860 Mon Sep 17 00:00:00 2001
From: Matthias Clasen <mclasen@redhat.com>
Date: Mon, 19 Apr 2021 16:39:53 -0400
Subject: [PATCH] Fix a possible crash in gtk_show_uri
g_file_get_basename can return NULL.
Deal with it somehow.
Fixes: #3883
---
gdk/x11/gdkapplaunchcontext-x11.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/gdk/x11/gdkapplaunchcontext-x11.c b/gdk/x11/gdkapplaunchcontext-x11.c
index 8051229ba5..2341bb2e1f 100644
--- a/gdk/x11/gdkapplaunchcontext-x11.c
+++ b/gdk/x11/gdkapplaunchcontext-x11.c
@@ -45,6 +45,9 @@ get_display_name (GFile *file,
if (name == NULL)
{
name = g_file_get_basename (file);
+ if (name == NULL)
+ name = g_file_get_uri (file);
+
if (!g_utf8_validate (name, -1, NULL))
{
tmp = name;
--
GitLab

View file

@ -0,0 +1,80 @@
diff --git a/gdk/x11/gdkevents-x11.c b/gdk/x11/gdkevents-x11.c
index 186a8f5cb2..f5c39b5afe 100644
--- a/gdk/x11/gdkevents-x11.c
+++ b/gdk/x11/gdkevents-x11.c
@@ -3000,6 +3000,50 @@ check_transform (const gchar *xsettings_name,
return TRUE;
}
+static gchar *
+gtk_rc_get_theme_dir (void)
+{
+ const gchar *var;
+ gchar *path;
+
+ var = g_getenv ("GTK_DATA_PREFIX");
+
+ if (var)
+ path = g_build_filename (var, "share", "themes", NULL);
+ else
+ path = g_build_filename ("/app", "share", "themes", NULL);
+
+ return path;
+}
+
+static gboolean
+theme_name_valid (XSettingsSetting *setting)
+{
+ gboolean res = FALSE;
+
+ if (setting->type == XSETTINGS_TYPE_STRING)
+ {
+ char *theme_name = setting->data.v_string;
+ gchar *theme_dir = gtk_rc_get_theme_dir ();
+ gchar *path = g_build_filename (theme_dir, theme_name, "gtk-2.0", "gtkrc", NULL);
+
+ if (g_file_test (path, G_FILE_TEST_EXISTS))
+ res = TRUE;
+ else if (g_str_has_suffix (theme_name, "-Dark") ||
+ g_str_has_suffix (theme_name, "-dark"))
+ {
+ setting->data.v_string = g_strdup ("Adwaita-dark");
+ g_free (theme_name);
+ res = TRUE;
+ }
+
+ g_free (theme_dir);
+ g_free (path);
+ }
+
+ return res;
+}
+
/**
* gdk_screen_get_setting:
* @screen: the #GdkScreen where the setting is located
@@ -3050,6 +3094,11 @@ gdk_screen_get_setting (GdkScreen *screen,
if (result != XSETTINGS_SUCCESS)
goto out;
+ if (strcmp (name, "gtk-theme-name") == 0 &&
+ (setting->type != XSETTINGS_TYPE_STRING ||
+ !theme_name_valid (setting)))
+ goto out;
+
switch (setting->type)
{
case XSETTINGS_TYPE_INT:
diff --git a/gtk/gtksettings.c b/gtk/gtksettings.c
index 3fbbf00548..5c0a4b33d2 100644
--- a/gtk/gtksettings.c
+++ b/gtk/gtksettings.c
@@ -312,7 +312,7 @@ gtk_settings_class_init (GtkSettingsClass *class)
#ifdef G_OS_WIN32
"MS-Windows",
#else
- "Raleigh",
+ "Adwaita",
#endif
GTK_PARAM_READWRITE),
NULL);

View file

@ -0,0 +1,112 @@
{
"name": "gnome-themes-extra",
"rm-configure": true,
"config-opts": [
"--disable-dependency-tracking",
"--disable-gtk3-engine"
],
"cleanup": [
"/share/themes/Adwaita/gtk-3.0",
"/share/themes/Adwaita-dark/gtk-3.0",
"/share/themes/HighContrast/gtk-3.0",
"*.la"
],
"sources": [
{
"type": "archive",
"url": "https://download.gnome.org/sources/gnome-themes-extra/3.28/gnome-themes-extra-3.28.tar.xz",
"sha256": "7c4ba0bff001f06d8983cfc105adaac42df1d1267a2591798a780bac557a5819"
},
{
"type": "shell",
"//": "We want to avoid generating icons as its 99% of the build time and gnome runtime has it",
"commands": [
"sed -i 's/icons//' themes/HighContrast/Makefile.am"
]
},
{
"type": "script",
"commands": [
"autoreconf -fsi"
]
}
],
"modules": [
"../intltool/intltool-0.51.json",
{
"name": "gtk2",
"cleanup": [
"/bin",
"/share/gtk-2.0",
"/share/aclocal",
"/share/gtk-doc",
"/lib/pkgconfig",
"/lib/gtk-2.0/include",
"/include",
"*.la"
],
"x-cpe": {
"product": "gtk+"
},
"config-opts": [
"--disable-dependency-tracking",
"--disable-gtk-doc-html",
"--disable-introspection",
"--with-xinput=xfree"
],
"sources": [
{
"type": "archive",
"url": "https://download.gnome.org/sources/gtk+/2.24/gtk+-2.24.33.tar.xz",
"sha256": "ac2ac757f5942d318a311a54b0c80b5ef295f299c2a73c632f6bfb1ff49cc6da"
},
{
"type": "patch",
"path": "gtk2-use-adwaita-theme.patch"
},
{
"type": "patch",
"path": "gtk2-fix-crash-in-show-uri.patch"
}
]
},
{
"name": "ibus-gtk2",
"config-opts": [
"--disable-xim",
"--disable-dconf",
"--disable-gconf",
"--disable-memconf",
"--disable-schemas-compile",
"--disable-schemas-install",
"--disable-gtk3",
"--disable-setup",
"--disable-ui",
"--disable-engine",
"--disable-python-library",
"--disable-libnotify",
"--disable-emoji-dict",
"--disable-appindicator",
"--disable-glibtest",
"--disable-tests",
"--disable-unicode-dict",
"--disable-introspection",
"--disable-python2"
],
"make-install-args": [
"-C", "client/gtk2"
],
"post-install": [
"gtk-query-immodules-2.0 > immodules.cache",
"install immodules.cache -t $(pkg-config --variable=libdir gtk+-2.0)/gtk-2.0/2.10.0/"
],
"sources": [
{
"type": "archive",
"url": "https://github.com/ibus/ibus/releases/download/1.5.23/ibus-1.5.23.tar.gz",
"sha256": "b7e8d5bdb7d71a5ba4ee43cdf374675f77121a71c1679c9b9e7e02875bd0e150"
}
]
}
]
}

View file

@ -0,0 +1,12 @@
Index: gtk2-engines-murrine-0.98.2/src/murrine_style.c
===================================================================
--- gtk2-engines-murrine-0.98.2.orig/src/murrine_style.c
+++ gtk2-engines-murrine-0.98.2/src/murrine_style.c
@@ -2171,6 +2171,7 @@ murrine_style_draw_layout (GtkStyle
cairo_t *cr;
cr = murrine_begin_paint (window, area);
cairo_translate (cr, x+xos, y+yos);
+ pango_cairo_update_layout (cr, layout);
pango_cairo_layout_path (cr, layout);
murrine_set_color_rgba (cr, &temp, 0.5);
cairo_stroke (cr);

View file

@ -0,0 +1,10 @@
This directory contains two manifests:
- `gtk2.json`
This contains a build of GTK2, the ibus input module, and the Adwaita and HighContrast themes.
- `gtk2-common-themes.json`
This contains a collection of commonly used GTK2 themes that users might have. This is optional as it does build a few things.
Without the matching theme the build of GTK2 here will always default to Adwaita.

View file

@ -0,0 +1,33 @@
{
"name": "gudev",
"buildsystem": "meson",
"config-opts": [
"-Dtests=disabled",
"-Dvapi=disabled",
"-Dintrospection=disabled",
"-Dgtk_doc=false"
],
"cleanup": [
"/include",
"/etc",
"/libexec",
"/sbin",
"/lib/pkgconfig",
"/lib/systemd",
"/man",
"/share/aclocal",
"/share/doc",
"/share/gtk-doc",
"/share/man",
"/share/pkgconfig",
"*.la",
"*.a"
],
"sources": [
{
"type": "archive",
"url": "https://download.gnome.org/sources/libgudev/238/libgudev-238.tar.xz",
"sha256": "61266ab1afc9d73dbc60a8b2af73e99d2fdff47d99544d085760e4fa667b5dd1"
}
]
}

View file

@ -0,0 +1,18 @@
diff --git a/src/d_iwad.cpp b/src/d_iwad.cpp
index b421b1b35..9f0b16948 100644
--- a/src/d_iwad.cpp
+++ b/src/d_iwad.cpp
@@ -683,9 +683,10 @@ int FIWadManager::IdentifyVersion (TArray<FString> &wadfiles, const char *iwad,
"2. Edit your ~/Library/Preferences/" GAMENAMELOWERCASE ".ini and add the directories\n"
"of your iwads to the list beneath [IWADSearch.Directories]");
#else
- "1. Place one or more of these wads in ~/.config/" GAMENAMELOWERCASE "/.\n"
- "2. Edit your ~/.config/" GAMENAMELOWERCASE "/" GAMENAMELOWERCASE ".ini and add the directories of your\n"
- "iwads to the list beneath [IWADSearch.Directories]");
+ "1. Place one or more of these wads in ~/.var/app/org.zdoom.GZDoom/.config/" GAMENAMELOWERCASE "/\n"
+ "2. Edit your ~/.var/app/org.zdoom.GZDoom/.config/" GAMENAMELOWERCASE "/" GAMENAMELOWERCASE ".ini and\n"
+ " add the directories of your iwads to the list beneath [IWADSearch.Directories]\n"
+ "3. Validate your Flatpak permissions, so that Flatpak has access to your directories with wads");
#endif
}
int pick = 0;

View file

@ -0,0 +1,100 @@
{
"name": "gzdoom",
"buildsystem": "cmake-ninja",
"config-opts": [
"-DCMAKE_BUILD_TYPE=RelWithDebInfo"
],
"cleanup": [
"/lib/*.a",
"/lib/*.la",
"/lib/pkgconfig",
"/include"
],
"sources": [
{
"type": "git",
"url": "https://github.com/zdoom/gzdoom.git",
"tag": "g4.11.3",
"commit": "6ce809efe2902e43ceaa7031b875225d3a0367de",
"x-checker-data": {
"type": "anitya",
"project-id": 17531,
"stable-only": true,
"tag-template": "g$version"
}
},
{
"type": "file",
"url": "https://github.com/zdoom/gzdoom/raw/g4.11.3/soundfont/gzdoom.sf2",
"sha256": "a9058609b07c1f0e0c1f420e76c2e80ba78136e6173e836caab51ffb13e552f1"
},
{
"type": "patch",
"path": "description.patch"
}
],
"post-install": [
"install -Dm 644 gzdoom.sf2 /app/share/sounds/sf2/gzdoom.sf2"
],
"modules": [
"../linux-audio/libinstpatch.json",
"../linux-audio/fluidsynth2.json",
{
"name": "libsndfile",
"buildsystem": "autotools",
"sources": [
{
"type": "archive",
"url": "https://github.com/libsndfile/libsndfile/releases/download/1.2.2/libsndfile-1.2.2.tar.xz",
"sha256": "3799ca9924d3125038880367bf1468e53a1b7e3686a934f098b7e1d286cdb80e",
"x-checker-data": {
"type": "anitya",
"project-id": 13277,
"stable-only": true,
"url-template": "https://github.com/libsndfile/libsndfile/releases/download/$version/libsndfile-$version.tar.xz"
}
}
]
},
{
"name": "game-music-emu",
"buildsystem": "cmake-ninja",
"config-opts": [
"-DCMAKE_BUILD_TYPE=RelWithDebInfo"
],
"sources": [
{
"type": "archive",
"url": "https://bitbucket.org/mpyne/game-music-emu/downloads/game-music-emu-0.6.3.tar.gz",
"sha256": "626e8a104e0dadd10ef6519a67aca880c7b40f81471659f1935b61754e12fc7b",
"x-checker-data": {
"type": "anitya",
"project-id": 866,
"stable-only": true,
"url-template": "https://bitbucket.org/mpyne/game-music-emu/downloads/game-music-emu-$version.tar.gz"
}
}
]
},
{
"name": "zmusic",
"buildsystem": "cmake-ninja",
"config-opts": [
"-DCMAKE_BUILD_TYPE=RelWithDebInfo"
],
"sources": [
{
"type": "archive",
"url": "https://github.com/zdoom/ZMusic/archive/1.1.12.tar.gz",
"sha256": "da818594b395aa9174561a36362332b0ab8e7906d2e556ec47669326e67613d4",
"x-checker-data": {
"type": "anitya",
"project-id": 153600,
"stable-only": true,
"url-template": "https://github.com/zdoom/ZMusic/archive/$version.tar.gz"
}
}
]
}
]
}

View file

@ -0,0 +1,15 @@
{
"name": "intltool",
"cleanup": [ "*" ],
"sources": [
{
"type": "archive",
"url": "https://launchpad.net/intltool/trunk/0.51.0/+download/intltool-0.51.0.tar.gz",
"sha256": "67c74d94196b153b774ab9f89b2fa6c6ba79352407037c8c14d5aeb334e959cd"
},
{
"type": "patch",
"path": "intltool-perl5.26-regex-fixes.patch"
}
]
}

View file

@ -0,0 +1,59 @@
Description: Escape "{", to prevent complaints from perl 5.22 and 5.26
Author: Roderich Schupp <roderich.schupp@gmail.com>
Author: gregor herrmann <gregoa@debian.org>
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=788705
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=826471
Bug-Upstream: https://bugs.launchpad.net/intltool/+bug/1490906
Index: intltool-0.51.0/intltool-update.in
===================================================================
--- intltool-0.51.0.orig/intltool-update.in 2017-07-23 17:24:35.113169465 +0200
+++ intltool-0.51.0/intltool-update.in 2017-07-23 17:24:35.109169052 +0200
@@ -1062,13 +1062,13 @@
}
}
- if ($str =~ /^(.*)\${?([A-Z_]+)}?(.*)$/)
+ if ($str =~ /^(.*)\$\{?([A-Z_]+)}?(.*)$/)
{
my $rest = $3;
my $untouched = $1;
my $sub = "";
# Ignore recursive definitions of variables
- $sub = $varhash{$2} if defined $varhash{$2} and $varhash{$2} !~ /\${?$2}?/;
+ $sub = $varhash{$2} if defined $varhash{$2} and $varhash{$2} !~ /\$\{?$2}?/;
return SubstituteVariable ("$untouched$sub$rest");
}
@@ -1190,10 +1190,10 @@
$name =~ s/\(+$//g;
$version =~ s/\(+$//g;
- $varhash{"PACKAGE_NAME"} = $name if (not $name =~ /\${?AC_PACKAGE_NAME}?/);
- $varhash{"PACKAGE"} = $name if (not $name =~ /\${?PACKAGE}?/);
- $varhash{"PACKAGE_VERSION"} = $version if (not $name =~ /\${?AC_PACKAGE_VERSION}?/);
- $varhash{"VERSION"} = $version if (not $name =~ /\${?VERSION}?/);
+ $varhash{"PACKAGE_NAME"} = $name if (not $name =~ /\$\{?AC_PACKAGE_NAME}?/);
+ $varhash{"PACKAGE"} = $name if (not $name =~ /\$\{?PACKAGE}?/);
+ $varhash{"PACKAGE_VERSION"} = $version if (not $name =~ /\$\{?AC_PACKAGE_VERSION}?/);
+ $varhash{"VERSION"} = $version if (not $name =~ /\$\{?VERSION}?/);
}
if ($conf_source =~ /^AC_INIT\(([^,\)]+),([^,\)]+)[,]?([^,\)]+)?/m)
@@ -1219,11 +1219,11 @@
$version =~ s/\(+$//g;
$bugurl =~ s/\(+$//g if (defined $bugurl);
- $varhash{"PACKAGE_NAME"} = $name if (not $name =~ /\${?AC_PACKAGE_NAME}?/);
- $varhash{"PACKAGE"} = $name if (not $name =~ /\${?PACKAGE}?/);
- $varhash{"PACKAGE_VERSION"} = $version if (not $name =~ /\${?AC_PACKAGE_VERSION}?/);
- $varhash{"VERSION"} = $version if (not $name =~ /\${?VERSION}?/);
- $varhash{"PACKAGE_BUGREPORT"} = $bugurl if (defined $bugurl and not $bugurl =~ /\${?\w+}?/);
+ $varhash{"PACKAGE_NAME"} = $name if (not $name =~ /\$\{?AC_PACKAGE_NAME}?/);
+ $varhash{"PACKAGE"} = $name if (not $name =~ /\$\{?PACKAGE}?/);
+ $varhash{"PACKAGE_VERSION"} = $version if (not $name =~ /\$\{?AC_PACKAGE_VERSION}?/);
+ $varhash{"VERSION"} = $version if (not $name =~ /\$\{?VERSION}?/);
+ $varhash{"PACKAGE_BUGREPORT"} = $bugurl if (defined $bugurl and not $bugurl =~ /\$\{?\w+}?/);
}
# \s makes this not work, why?

View file

@ -0,0 +1,37 @@
{
"name": "lame",
"rm-configure": true,
"config-opts": ["--disable-static"],
"sources": [
{
"type": "archive",
"url": "https://downloads.sourceforge.net/lame/lame-3.99.5.tar.gz",
"sha256": "24346b4158e4af3bd9f2e194bb23eb473c75fb7377011523353196b19b9a23ff"
},
{
"type": "patch",
"path": "lame-msse.patch"
},
{
"type": "patch",
"path": "lame-gtk1-ac-directives.patch"
},
{
"type": "patch",
"path": "lame-ansi2knr2devnull.patch"
},
{
"type": "patch",
"path": "lame-tinfo.patch",
"strip-components": 0
},
{
"type": "script",
"dest-filename": "autogen.sh",
"commands": [
"autoreconf -vfi"
]
}
],
"cleanup": ["/bin", "/include", "/share/doc", "/share/man", "*.la"]
}

View file

@ -0,0 +1,43 @@
Description: Patch out remaining ansi2knr.
Author: Dimitri John Ledkov <xnox@ubuntu.com>
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=755111
--- a/configure.in
+++ b/configure.in
@@ -78,7 +78,6 @@
fi
dnl more automake stuff
-AM_C_PROTOTYPES
AC_CHECK_HEADER(dmalloc.h)
if test "${ac_cv_header_dmalloc_h}" = "yes"; then
--- a/doc/man/Makefile.am
+++ b/doc/man/Makefile.am
@@ -1,6 +1,6 @@
## $Id: Makefile.am,v 1.1 2000/10/22 11:39:44 aleidinger Exp $
-AUTOMAKE_OPTIONS = foreign ansi2knr
+AUTOMAKE_OPTIONS = foreign
man_MANS = lame.1
EXTRA_DIST = ${man_MANS}
--- a/libmp3lame/i386/Makefile.am
+++ b/libmp3lame/i386/Makefile.am
@@ -1,6 +1,6 @@
## $Id: Makefile.am,v 1.26 2011/04/04 09:42:34 aleidinger Exp $
-AUTOMAKE_OPTIONS = foreign $(top_srcdir)/ansi2knr
+AUTOMAKE_OPTIONS = foreign
DEFS = @DEFS@ @CONFIG_DEFS@
--- a/doc/html/Makefile.am
+++ b/doc/html/Makefile.am
@@ -1,6 +1,6 @@
## $Id: Makefile.am,v 1.7 2010/09/30 20:58:40 jaz001 Exp $
-AUTOMAKE_OPTIONS = foreign ansi2knr
+AUTOMAKE_OPTIONS = foreign
docdir = $(datadir)/doc
pkgdocdir = $(docdir)/$(PACKAGE)

View file

@ -0,0 +1,205 @@
Description: Include GTK-1 autoconf directives in build system.
Origin: http://anonscm.debian.org/gitweb/?p=pkg-multimedia/lame.git;a=tree;f=debian/patches
Forwarded: yes
Applied-Upstream: http://lame.cvs.sf.net/viewvc/lame/lame/acinclude.m4?revision=1.6
--- a/acinclude.m4
+++ b/acinclude.m4
@@ -85,4 +85,197 @@
[AC_MSG_WARN(can't check for IEEE854 compliant 80 bit floats)]
)])]) # alex_IEEE854_FLOAT80
+# Configure paths for GTK+
+# Owen Taylor 97-11-3
+dnl AM_PATH_GTK([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND [, MODULES]]]])
+dnl Test for GTK, and define GTK_CFLAGS and GTK_LIBS
+dnl
+AC_DEFUN([AM_PATH_GTK],
+[dnl
+dnl Get the cflags and libraries from the gtk-config script
+dnl
+AC_ARG_WITH(gtk-prefix,[ --with-gtk-prefix=PFX Prefix where GTK is installed (optional)],
+ gtk_config_prefix="$withval", gtk_config_prefix="")
+AC_ARG_WITH(gtk-exec-prefix,[ --with-gtk-exec-prefix=PFX Exec prefix where GTK is installed (optional)],
+ gtk_config_exec_prefix="$withval", gtk_config_exec_prefix="")
+AC_ARG_ENABLE(gtktest, [ --disable-gtktest Do not try to compile and run a test GTK program],
+ , enable_gtktest=yes)
+
+ for module in . $4
+ do
+ case "$module" in
+ gthread)
+ gtk_config_args="$gtk_config_args gthread"
+ ;;
+ esac
+ done
+
+ if test x$gtk_config_exec_prefix != x ; then
+ gtk_config_args="$gtk_config_args --exec-prefix=$gtk_config_exec_prefix"
+ if test x${GTK_CONFIG+set} != xset ; then
+ GTK_CONFIG=$gtk_config_exec_prefix/bin/gtk-config
+ fi
+ fi
+ if test x$gtk_config_prefix != x ; then
+ gtk_config_args="$gtk_config_args --prefix=$gtk_config_prefix"
+ if test x${GTK_CONFIG+set} != xset ; then
+ GTK_CONFIG=$gtk_config_prefix/bin/gtk-config
+ fi
+ fi
+
+ AC_PATH_PROG(GTK_CONFIG, gtk-config, no)
+ min_gtk_version=ifelse([$1], ,0.99.7,$1)
+ AC_MSG_CHECKING(for GTK - version >= $min_gtk_version)
+ no_gtk=""
+ if test "$GTK_CONFIG" = "no" ; then
+ no_gtk=yes
+ else
+ GTK_CFLAGS=`$GTK_CONFIG $gtk_config_args --cflags`
+ GTK_LIBS=`$GTK_CONFIG $gtk_config_args --libs`
+ gtk_config_major_version=`$GTK_CONFIG $gtk_config_args --version | \
+ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
+ gtk_config_minor_version=`$GTK_CONFIG $gtk_config_args --version | \
+ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
+ gtk_config_micro_version=`$GTK_CONFIG $gtk_config_args --version | \
+ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
+ if test "x$enable_gtktest" = "xyes" ; then
+ ac_save_CFLAGS="$CFLAGS"
+ ac_save_LIBS="$LIBS"
+ CFLAGS="$CFLAGS $GTK_CFLAGS"
+ LIBS="$GTK_LIBS $LIBS"
+dnl
+dnl Now check if the installed GTK is sufficiently new. (Also sanity
+dnl checks the results of gtk-config to some extent
+dnl
+ rm -f conf.gtktest
+ AC_TRY_RUN([
+#include <gtk/gtk.h>
+#include <stdio.h>
+#include <stdlib.h>
+
+int
+main ()
+{
+ int major, minor, micro;
+ char *tmp_version;
+
+ system ("touch conf.gtktest");
+
+ /* HP/UX 9 (%@#!) writes to sscanf strings */
+ tmp_version = g_strdup("$min_gtk_version");
+ if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, &micro) != 3) {
+ printf("%s, bad version string\n", "$min_gtk_version");
+ exit(1);
+ }
+
+ if ((gtk_major_version != $gtk_config_major_version) ||
+ (gtk_minor_version != $gtk_config_minor_version) ||
+ (gtk_micro_version != $gtk_config_micro_version))
+ {
+ printf("\n*** 'gtk-config --version' returned %d.%d.%d, but GTK+ (%d.%d.%d)\n",
+ $gtk_config_major_version, $gtk_config_minor_version, $gtk_config_micro_version,
+ gtk_major_version, gtk_minor_version, gtk_micro_version);
+ printf ("*** was found! If gtk-config was correct, then it is best\n");
+ printf ("*** to remove the old version of GTK+. You may also be able to fix the error\n");
+ printf("*** by modifying your LD_LIBRARY_PATH enviroment variable, or by editing\n");
+ printf("*** /etc/ld.so.conf. Make sure you have run ldconfig if that is\n");
+ printf("*** required on your system.\n");
+ printf("*** If gtk-config was wrong, set the environment variable GTK_CONFIG\n");
+ printf("*** to point to the correct copy of gtk-config, and remove the file config.cache\n");
+ printf("*** before re-running configure\n");
+ }
+#if defined (GTK_MAJOR_VERSION) && defined (GTK_MINOR_VERSION) && defined (GTK_MICRO_VERSION)
+ else if ((gtk_major_version != GTK_MAJOR_VERSION) ||
+ (gtk_minor_version != GTK_MINOR_VERSION) ||
+ (gtk_micro_version != GTK_MICRO_VERSION))
+ {
+ printf("*** GTK+ header files (version %d.%d.%d) do not match\n",
+ GTK_MAJOR_VERSION, GTK_MINOR_VERSION, GTK_MICRO_VERSION);
+ printf("*** library (version %d.%d.%d)\n",
+ gtk_major_version, gtk_minor_version, gtk_micro_version);
+ }
+#endif /* defined (GTK_MAJOR_VERSION) ... */
+ else
+ {
+ if ((gtk_major_version > major) ||
+ ((gtk_major_version == major) && (gtk_minor_version > minor)) ||
+ ((gtk_major_version == major) && (gtk_minor_version == minor) && (gtk_micro_version >= micro)))
+ {
+ return 0;
+ }
+ else
+ {
+ printf("\n*** An old version of GTK+ (%d.%d.%d) was found.\n",
+ gtk_major_version, gtk_minor_version, gtk_micro_version);
+ printf("*** You need a version of GTK+ newer than %d.%d.%d. The latest version of\n",
+ major, minor, micro);
+ printf("*** GTK+ is always available from ftp://ftp.gtk.org.\n");
+ printf("***\n");
+ printf("*** If you have already installed a sufficiently new version, this error\n");
+ printf("*** probably means that the wrong copy of the gtk-config shell script is\n");
+ printf("*** being found. The easiest way to fix this is to remove the old version\n");
+ printf("*** of GTK+, but you can also set the GTK_CONFIG environment to point to the\n");
+ printf("*** correct copy of gtk-config. (In this case, you will have to\n");
+ printf("*** modify your LD_LIBRARY_PATH enviroment variable, or edit /etc/ld.so.conf\n");
+ printf("*** so that the correct libraries are found at run-time))\n");
+ }
+ }
+ return 1;
+}
+],, no_gtk=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"])
+ CFLAGS="$ac_save_CFLAGS"
+ LIBS="$ac_save_LIBS"
+ fi
+ fi
+ if test "x$no_gtk" = x ; then
+ AC_MSG_RESULT(yes)
+ ifelse([$2], , :, [$2])
+ else
+ AC_MSG_RESULT(no)
+ if test "$GTK_CONFIG" = "no" ; then
+ echo "*** The gtk-config script installed by GTK could not be found"
+ echo "*** If GTK was installed in PREFIX, make sure PREFIX/bin is in"
+ echo "*** your path, or set the GTK_CONFIG environment variable to the"
+ echo "*** full path to gtk-config."
+ else
+ if test -f conf.gtktest ; then
+ :
+ else
+ echo "*** Could not run GTK test program, checking why..."
+ CFLAGS="$CFLAGS $GTK_CFLAGS"
+ LIBS="$LIBS $GTK_LIBS"
+ AC_TRY_LINK([
+#include <gtk/gtk.h>
+#include <stdio.h>
+], [ return ((gtk_major_version) || (gtk_minor_version) || (gtk_micro_version)); ],
+ [ echo "*** The test program compiled, but did not run. This usually means"
+ echo "*** that the run-time linker is not finding GTK or finding the wrong"
+ echo "*** version of GTK. If it is not finding GTK, you'll need to set your"
+ echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point"
+ echo "*** to the installed location Also, make sure you have run ldconfig if that"
+ echo "*** is required on your system"
+ echo "***"
+ echo "*** If you have an old version installed, it is best to remove it, although"
+ echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"
+ echo "***"
+ echo "*** If you have a RedHat 5.0 system, you should remove the GTK package that"
+ echo "*** came with the system with the command"
+ echo "***"
+ echo "*** rpm --erase --nodeps gtk gtk-devel" ],
+ [ echo "*** The test program failed to compile or link. See the file config.log for the"
+ echo "*** exact error that occured. This usually means GTK was incorrectly installed"
+ echo "*** or that you have moved GTK since it was installed. In the latter case, you"
+ echo "*** may want to edit the gtk-config script: $GTK_CONFIG" ])
+ CFLAGS="$ac_save_CFLAGS"
+ LIBS="$ac_save_LIBS"
+ fi
+ fi
+ GTK_CFLAGS=""
+ GTK_LIBS=""
+ ifelse([$3], , :, [$3])
+ fi
+ AC_SUBST(GTK_CFLAGS)
+ AC_SUBST(GTK_LIBS)
+ rm -f conf.gtktest
+])

View file

@ -0,0 +1,17 @@
Description: Build xmm_quantize_sub.c with -msse
Author: Sebastian Ramacher <sramacher@debian.org>
Bug: http://sourceforge.net/p/lame/bugs/443/
Bug-Debian: https://bugs.debian.org/760047
Forwarded: http://sourceforge.net/p/lame/bugs/443/
Last-Update: 2014-08-31
--- lame-3.99.5+repack1.orig/libmp3lame/vector/Makefile.am
+++ lame-3.99.5+repack1/libmp3lame/vector/Makefile.am
@@ -20,6 +20,7 @@ xmm_sources = xmm_quantize_sub.c
if WITH_XMM
liblamevectorroutines_la_SOURCES = $(xmm_sources)
+liblamevectorroutines_la_CFLAGS = -msse
endif
noinst_HEADERS = lame_intrin.h

View file

@ -0,0 +1,23 @@
initscr is not used anywhere in lame sourcetree, check for used tgetent instead
check for separate tinfo library optionally built out from libncurses source tree,
like used in debian and gentoo
- ssuominen@g.o
http://bugs.gentoo.org/454322
--- configure.in
+++ configure.in
@@ -372,9 +372,10 @@
AC_CHECK_HEADERS(termcap.h)
AC_CHECK_HEADERS(ncurses/termcap.h)
-AC_CHECK_LIB(termcap, initscr, HAVE_TERMCAP="termcap")
-AC_CHECK_LIB(curses, initscr, HAVE_TERMCAP="curses")
-AC_CHECK_LIB(ncurses, initscr, HAVE_TERMCAP="ncurses")
+AC_CHECK_LIB(termcap, tgetent, HAVE_TERMCAP="termcap")
+AC_CHECK_LIB(curses, tgetent, HAVE_TERMCAP="curses")
+AC_CHECK_LIB(ncurses, tgetent, HAVE_TERMCAP="ncurses")
+AC_CHECK_LIB(tinfo, tgetent, HAVE_TERMCAP="tinfo")
AM_ICONV

View file

@ -0,0 +1,10 @@
all: libappindicator-gtk3-introspection-12.10.json libappindicator-gtk3-12.10.json libappindicator-gtk2-12.10.json
libappindicator-gtk3-introspection-12.10.json: libappindicator.json.in
sed -e 's/@GTK_VER@/3/g' -e 's/@INTROSPECTION@/yes/g' $< > $@
libappindicator-gtk3-12.10.json: libappindicator.json.in
sed -e 's/@GTK_VER@/3/g' -e 's/@INTROSPECTION@/no/g' $< > $@
libappindicator-gtk2-12.10.json: libappindicator.json.in
sed -e 's/@GTK_VER@/2/g' -e 's/@INTROSPECTION@/no/g' $< > $@

View file

@ -0,0 +1,74 @@
--- libappindicator-12.10.0/src/app-indicator.c 2012-07-11 13:28:34.415113869 -0400
+++ wrk/src/app-indicator.c 2020-03-19 12:14:47.813191652 -0400
@@ -443,7 +443,7 @@
G_STRUCT_OFFSET (AppIndicatorClass, new_icon),
NULL, NULL,
g_cclosure_marshal_VOID__VOID,
- G_TYPE_NONE, 0, G_TYPE_NONE);
+ G_TYPE_NONE, 0);
/**
* AppIndicator::new-attention-icon:
@@ -457,7 +457,7 @@
G_STRUCT_OFFSET (AppIndicatorClass, new_attention_icon),
NULL, NULL,
g_cclosure_marshal_VOID__VOID,
- G_TYPE_NONE, 0, G_TYPE_NONE);
+ G_TYPE_NONE, 0);
/**
* AppIndicator::new-status:
@@ -505,7 +505,7 @@
G_STRUCT_OFFSET (AppIndicatorClass, connection_changed),
NULL, NULL,
g_cclosure_marshal_VOID__BOOLEAN,
- G_TYPE_NONE, 1, G_TYPE_BOOLEAN, G_TYPE_NONE);
+ G_TYPE_NONE, 1, G_TYPE_BOOLEAN);
/**
* AppIndicator::new-icon-theme-path:
@@ -1175,7 +1175,7 @@
gchar * guide = priv->label_guide != NULL ? priv->label_guide : "";
g_signal_emit(G_OBJECT(self), signals[NEW_LABEL], 0,
- label, guide, TRUE);
+ label, guide);
if (priv->dbus_registration != 0 && priv->connection != NULL) {
GError * error = NULL;
@@ -1490,7 +1490,7 @@
static void
theme_changed_cb (GtkIconTheme * theme, gpointer user_data)
{
- g_signal_emit (user_data, signals[NEW_ICON], 0, TRUE);
+ g_signal_emit (user_data, signals[NEW_ICON], 0);
AppIndicator * self = (AppIndicator *)user_data;
AppIndicatorPrivate *priv = self->priv;
@@ -1904,7 +1904,7 @@
}
if (changed) {
- g_signal_emit (self, signals[NEW_ATTENTION_ICON], 0, TRUE);
+ g_signal_emit (self, signals[NEW_ATTENTION_ICON], 0);
if (self->priv->dbus_registration != 0 && self->priv->connection != NULL) {
GError * error = NULL;
@@ -1982,7 +1982,7 @@
}
if (changed) {
- g_signal_emit (self, signals[NEW_ICON], 0, TRUE);
+ g_signal_emit (self, signals[NEW_ICON], 0);
if (self->priv->dbus_registration != 0 && self->priv->connection != NULL) {
GError * error = NULL;
@@ -2048,7 +2048,7 @@
self->priv->icon_theme_path = g_strdup(icon_theme_path);
- g_signal_emit (self, signals[NEW_ICON_THEME_PATH], 0, self->priv->icon_theme_path, TRUE);
+ g_signal_emit (self, signals[NEW_ICON_THEME_PATH], 0, self->priv->icon_theme_path);
if (self->priv->dbus_registration != 0 && self->priv->connection != NULL) {
GError * error = NULL;

View file

@ -0,0 +1,11 @@
--- libappindicator-12.10.0/src/app-indicator.c
+++ libappindicator-12.10.0/src/app-indicator.c
@@ -1606,7 +1606,7 @@ status_icon_changes (AppIndicator * self, gpointer data)
gint n_elements, i;
gboolean found=FALSE;
gtk_icon_theme_get_search_path(icon_theme, &path, &n_elements);
- for (i=0; i< n_elements || path[i] == NULL; i++) {
+ for (i=0; i< n_elements; i++) {
if(g_strcmp0(path[i], self->priv->icon_theme_path) == 0) {
found=TRUE;
break;

View file

@ -0,0 +1,20 @@
From: Olivier Tilloy <olivier.tilloy@canonical.com>
Date: Tue 2018-03-20 12:47:56 +0000
Subject: [PATCH] libappindicator FTBFS on bionic
Fix build failures on bionic,
and update Vcs-* fields in debian/control. (LP: #1757121)
Approved by: Marco Trevisan (Treviño)
---
--- libappindicator-12.10.0/src/app-indicator.c 2017-02-15 14:10:41 +0000
+++ libappindicator-12.10.0/src/app-indicator.c 2018-03-20 12:38:59 +0000
@@ -2196,7 +2196,7 @@ app_indicator_set_secondary_activate_tar
g_return_if_fail (GTK_IS_WIDGET (menuitem));
- priv->sec_activate_target = g_object_ref(G_OBJECT(menuitem));
+ priv->sec_activate_target = g_object_ref(menuitem);
priv->sec_activate_enabled = widget_is_menu_child(self, menuitem);
g_signal_connect(menuitem, "parent-set", G_CALLBACK(sec_activate_target_parent_changed), self);
}

View file

@ -0,0 +1,130 @@
{
"name": "libappindicator",
"build-options": {
"cflags": "-Wno-error",
"make-args": [ "-j1" ]
},
"rm-configure": true,
"config-opts": [
"--disable-static",
"--disable-gtk-doc",
"--disable-tests",
"--disable-mono-tests",
"--enable-introspection=no",
"--with-gtk=2"
],
"cleanup": [
"/include",
"/lib/pkgconfig",
"/lib/*.la",
"/share/gtk-doc",
"/share/gir-1.0"
],
"sources": [
{
"type": "archive",
"url": "https://launchpad.net/libappindicator/12.10/12.10.0/+download/libappindicator-12.10.0.tar.gz",
"sha256": "d5907c1f98084acf28fd19593cb70672caa0ca1cf82d747ba6f4830d4cc3b49f"
},
{
"type": "patch",
"path": "libappindicator-ftbfs.patch"
},
{
"type": "patch",
"path": "libappindicator-no-python.patch"
},
{
"type": "patch",
"path": "libappindicator-fix-crash-from-incorrect-signal-emission.patch"
},
{
"type": "patch",
"path": "libappindicator-fix-crash-iterating-icon-themes.patch"
},
{
"type": "script",
"commands": ["autoreconf -sfi"],
"dest-filename": "autogen.sh"
}
],
"modules": [
"../intltool/intltool-0.51.json",
"../dbus-glib/dbus-glib.json",
{
"name": "libdbusmenu",
"build-options": {
"cflags": "-Wno-error",
"env": {
"HAVE_VALGRIND_FALSE": "#",
"HAVE_VALGRIND_TRUE": ""
}
},
"cleanup": [
"/include",
"/libexec",
"/lib/pkgconfig",
"/lib/*.la",
"/share/doc",
"/share/libdbusmenu",
"/share/gtk-doc",
"/share/gir-1.0"
],
"config-opts": [
"--disable-static",
"--disable-gtk-doc",
"--enable-introspection=no",
"--disable-vala",
"--disable-dumper",
"--disable-tests",
"--with-gtk=2"
],
"sources": [
{
"type": "archive",
"url": "https://launchpad.net/libdbusmenu/16.04/16.04.0/+download/libdbusmenu-16.04.0.tar.gz",
"sha256": "b9cc4a2acd74509435892823607d966d424bd9ad5d0b00938f27240a1bfa878a"
}
]
},
{
"name": "libindicator",
"build-options": {
"cflags": "-Wno-error"
},
"cleanup": [
"/include",
"/libexec",
"/lib/pkgconfig",
"/lib/*.la",
"/share/libindicator",
"/share/gtk-doc",
"/share/gir-1.0"
],
"config-opts": [
"--disable-static",
"--disable-tests",
"--with-gtk=2"
],
"sources": [
{
"type": "archive",
"url": "https://launchpad.net/libindicator/12.10/12.10.1/+download/libindicator-12.10.1.tar.gz",
"sha256": "b2d2e44c10313d5c9cd60db455d520f80b36dc39562df079a3f29495e8f9447f"
},
{
"type": "shell",
"commands": [
"# FTBFS fix",
"sed -e '/LIBINDICATOR_LIBS/ s/\\$LIBM/ $LIBM/' -i configure.ac"
]
},
{
"type": "script",
"commands": ["autoreconf -sfi"],
"dest-filename": "autogen.sh"
}
]
}
]
}

View file

@ -0,0 +1,130 @@
{
"name": "libappindicator",
"build-options": {
"cflags": "-Wno-error",
"make-args": [ "-j1" ]
},
"rm-configure": true,
"config-opts": [
"--disable-static",
"--disable-gtk-doc",
"--disable-tests",
"--disable-mono-tests",
"--enable-introspection=no",
"--with-gtk=3"
],
"cleanup": [
"/include",
"/lib/pkgconfig",
"/lib/*.la",
"/share/gtk-doc",
"/share/gir-1.0"
],
"sources": [
{
"type": "archive",
"url": "https://launchpad.net/libappindicator/12.10/12.10.0/+download/libappindicator-12.10.0.tar.gz",
"sha256": "d5907c1f98084acf28fd19593cb70672caa0ca1cf82d747ba6f4830d4cc3b49f"
},
{
"type": "patch",
"path": "libappindicator-ftbfs.patch"
},
{
"type": "patch",
"path": "libappindicator-no-python.patch"
},
{
"type": "patch",
"path": "libappindicator-fix-crash-from-incorrect-signal-emission.patch"
},
{
"type": "patch",
"path": "libappindicator-fix-crash-iterating-icon-themes.patch"
},
{
"type": "script",
"commands": ["autoreconf -sfi"],
"dest-filename": "autogen.sh"
}
],
"modules": [
"../intltool/intltool-0.51.json",
"../dbus-glib/dbus-glib.json",
{
"name": "libdbusmenu",
"build-options": {
"cflags": "-Wno-error",
"env": {
"HAVE_VALGRIND_FALSE": "#",
"HAVE_VALGRIND_TRUE": ""
}
},
"cleanup": [
"/include",
"/libexec",
"/lib/pkgconfig",
"/lib/*.la",
"/share/doc",
"/share/libdbusmenu",
"/share/gtk-doc",
"/share/gir-1.0"
],
"config-opts": [
"--disable-static",
"--disable-gtk-doc",
"--enable-introspection=no",
"--disable-vala",
"--disable-dumper",
"--disable-tests",
"--with-gtk=3"
],
"sources": [
{
"type": "archive",
"url": "https://launchpad.net/libdbusmenu/16.04/16.04.0/+download/libdbusmenu-16.04.0.tar.gz",
"sha256": "b9cc4a2acd74509435892823607d966d424bd9ad5d0b00938f27240a1bfa878a"
}
]
},
{
"name": "libindicator",
"build-options": {
"cflags": "-Wno-error"
},
"cleanup": [
"/include",
"/libexec",
"/lib/pkgconfig",
"/lib/*.la",
"/share/libindicator",
"/share/gtk-doc",
"/share/gir-1.0"
],
"config-opts": [
"--disable-static",
"--disable-tests",
"--with-gtk=3"
],
"sources": [
{
"type": "archive",
"url": "https://launchpad.net/libindicator/12.10/12.10.1/+download/libindicator-12.10.1.tar.gz",
"sha256": "b2d2e44c10313d5c9cd60db455d520f80b36dc39562df079a3f29495e8f9447f"
},
{
"type": "shell",
"commands": [
"# FTBFS fix",
"sed -e '/LIBINDICATOR_LIBS/ s/\\$LIBM/ $LIBM/' -i configure.ac"
]
},
{
"type": "script",
"commands": ["autoreconf -sfi"],
"dest-filename": "autogen.sh"
}
]
}
]
}

View file

@ -0,0 +1,130 @@
{
"name": "libappindicator",
"build-options": {
"cflags": "-Wno-error",
"make-args": [ "-j1" ]
},
"rm-configure": true,
"config-opts": [
"--disable-static",
"--disable-gtk-doc",
"--disable-tests",
"--disable-mono-tests",
"--enable-introspection=yes",
"--with-gtk=3"
],
"cleanup": [
"/include",
"/lib/pkgconfig",
"/lib/*.la",
"/share/gtk-doc",
"/share/gir-1.0"
],
"sources": [
{
"type": "archive",
"url": "https://launchpad.net/libappindicator/12.10/12.10.0/+download/libappindicator-12.10.0.tar.gz",
"sha256": "d5907c1f98084acf28fd19593cb70672caa0ca1cf82d747ba6f4830d4cc3b49f"
},
{
"type": "patch",
"path": "libappindicator-ftbfs.patch"
},
{
"type": "patch",
"path": "libappindicator-no-python.patch"
},
{
"type": "patch",
"path": "libappindicator-fix-crash-from-incorrect-signal-emission.patch"
},
{
"type": "patch",
"path": "libappindicator-fix-crash-iterating-icon-themes.patch"
},
{
"type": "script",
"commands": ["autoreconf -sfi"],
"dest-filename": "autogen.sh"
}
],
"modules": [
"../intltool/intltool-0.51.json",
"../dbus-glib/dbus-glib.json",
{
"name": "libdbusmenu",
"build-options": {
"cflags": "-Wno-error",
"env": {
"HAVE_VALGRIND_FALSE": "#",
"HAVE_VALGRIND_TRUE": ""
}
},
"cleanup": [
"/include",
"/libexec",
"/lib/pkgconfig",
"/lib/*.la",
"/share/doc",
"/share/libdbusmenu",
"/share/gtk-doc",
"/share/gir-1.0"
],
"config-opts": [
"--disable-static",
"--disable-gtk-doc",
"--enable-introspection=yes",
"--disable-vala",
"--disable-dumper",
"--disable-tests",
"--with-gtk=3"
],
"sources": [
{
"type": "archive",
"url": "https://launchpad.net/libdbusmenu/16.04/16.04.0/+download/libdbusmenu-16.04.0.tar.gz",
"sha256": "b9cc4a2acd74509435892823607d966d424bd9ad5d0b00938f27240a1bfa878a"
}
]
},
{
"name": "libindicator",
"build-options": {
"cflags": "-Wno-error"
},
"cleanup": [
"/include",
"/libexec",
"/lib/pkgconfig",
"/lib/*.la",
"/share/libindicator",
"/share/gtk-doc",
"/share/gir-1.0"
],
"config-opts": [
"--disable-static",
"--disable-tests",
"--with-gtk=3"
],
"sources": [
{
"type": "archive",
"url": "https://launchpad.net/libindicator/12.10/12.10.1/+download/libindicator-12.10.1.tar.gz",
"sha256": "b2d2e44c10313d5c9cd60db455d520f80b36dc39562df079a3f29495e8f9447f"
},
{
"type": "shell",
"commands": [
"# FTBFS fix",
"sed -e '/LIBINDICATOR_LIBS/ s/\\$LIBM/ $LIBM/' -i configure.ac"
]
},
{
"type": "script",
"commands": ["autoreconf -sfi"],
"dest-filename": "autogen.sh"
}
]
}
]
}

View file

@ -0,0 +1,888 @@
diff --git a/bindings/Makefile.am b/bindings/Makefile.am
index d1f6d73..dccca6c 100644
--- a/bindings/Makefile.am
+++ b/bindings/Makefile.am
@@ -3,7 +3,6 @@ SUBDIRS = \
vala
else
SUBDIRS = \
- python \
vala
endif
diff --git a/bindings/python/Makefile.am b/bindings/python/Makefile.am
deleted file mode 100644
index fe95c02..0000000
--- a/bindings/python/Makefile.am
+++ /dev/null
@@ -1,39 +0,0 @@
-defsdir = $(datadir)/pygtk/2.0/defs
-defs_DATA = appindicator.defs
-
-#CFLAGS = -Wall -Werror
-INCLUDES = \
- -I$(top_srcdir)/src \
- -DG_LOG_DOMAIN=\"appindicator-python\" \
- -DDATADIR=\"$(datadir)\" \
- -DLIBDIR=\"$(libdir)\" \
- $(APPINDICATOR_PYTHON_CFLAGS) \
- $(PYTHON_INCLUDES)
-
-pkgpythondir = $(pyexecdir)
-pkgpyexecdir = $(pyexecdir)
-
-pkgappindicatordir = $(pkgpythondir)/appindicator
-pkgappindicator_PYTHON = __init__.py
-
-appindicatordir = $(pkgpyexecdir)/appindicator
-appindicator_LTLIBRARIES = _appindicator.la
-
-_appindicator_la_LDFLAGS = -module -avoid-version -export-symbols-regex init_appindicator
-_appindicator_la_LIBADD = $(APPINDICATOR_PYTHON_LIBS) -L$(top_builddir)/src/.libs -lappindicator
-_appindicator_la_SOURCES = appindicatormodule.c
-nodist__appindicator_la_SOURCES = appindicator.c
-
-CLEANFILES = appindicator.c
-EXTRA_DIST = appindicator.override.in appindicator-arg-types.py $(defs_DATA)
-appindicator.c: $(defs_DATA) appindicator.override
-
-%.c: %.defs
- ($(PYGTK_CODEGEN) \
- --register $(PYGTK_DEFSDIR)/gtk-types.defs \
- --register $(PYGTK_DEFSDIR)/gdk-types.defs \
- --load-types $(srcdir)/appindicator-arg-types.py \
- --override $*.override \
- --prefix py$* $(srcdir)/$*.defs) > gen-$*.c \
- && cp gen-$*.c $*.c \
- && rm -f gen-$*.c
diff --git a/bindings/python/__init__.py b/bindings/python/__init__.py
deleted file mode 100644
index 20e2140..0000000
--- a/bindings/python/__init__.py
+++ /dev/null
@@ -1,27 +0,0 @@
-# Python bindings for libappindicator.
-#
-# Copyright 2009 Canonical Ltd.
-#
-# Authors:
-# Eitan Isaacson <eitan@ascender.com>
-# Neil Jagdish Patel <neil.patel@canonical.com>
-#
-# This program is free software: you can redistribute it and/or modify it
-# under the terms of either or both of the following licenses:
-#
-# 1) the GNU Lesser General Public License version 3, as published by the
-# Free Software Foundation; and/or
-# 2) the GNU Lesser General Public License version 2.1, as published by
-# the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranties of
-# MERCHANTABILITY, SATISFACTORY QUALITY or FITNESS FOR A PARTICULAR
-# PURPOSE. See the applicable version of the GNU Lesser General Public
-# License for more details.
-#
-# You should have received a copy of both the GNU Lesser General Public
-# License version 3 and version 2.1 along with this program. If not, see
-# <http://www.gnu.org/licenses/>
-
-from _appindicator import *
diff --git a/bindings/python/appindicator-arg-types.py b/bindings/python/appindicator-arg-types.py
deleted file mode 100644
index 9d74aa0..0000000
--- a/bindings/python/appindicator-arg-types.py
+++ /dev/null
@@ -1,27 +0,0 @@
-# Python bindings for libappindicator.
-#
-# Copyright 2009 Canonical Ltd.
-#
-# Authors:
-# Eitan Isaacson <eitan@ascender.com>
-#
-# This program is free software: you can redistribute it and/or modify it
-# under the terms of either or both of the following licenses:
-#
-# 1) the GNU Lesser General Public License version 3, as published by the
-# Free Software Foundation; and/or
-# 2) the GNU Lesser General Public License version 2.1, as published by
-# the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranties of
-# MERCHANTABILITY, SATISFACTORY QUALITY or FITNESS FOR A PARTICULAR
-# PURPOSE. See the applicable version of the GNU Lesser General Public
-# License for more details.
-#
-# You should have received a copy of both the GNU Lesser General Public
-# License version 3 and version 2.1 along with this program. If not, see
-# <http://www.gnu.org/licenses/>
-
-import argtypes
-
diff --git a/bindings/python/appindicator.defs b/bindings/python/appindicator.defs
deleted file mode 100644
index 4fcc2d5..0000000
--- a/bindings/python/appindicator.defs
+++ /dev/null
@@ -1,200 +0,0 @@
-;; -*- scheme -*-
-; object definitions ...
-(define-object Indicator
- (in-module "App")
- (parent "GObject")
- (c-name "AppIndicator")
- (gtype-id "APP_TYPE_INDICATOR")
-)
-
-;; Enumerations and flags ...
-
-(define-enum IndicatorCategory
- (in-module "App")
- (c-name "AppIndicatorCategory")
- (gtype-id "APP_INDICATOR_TYPE_INDICATOR_CATEGORY")
- (values
- '("ApplicationStatus" "APP_INDICATOR_CATEGORY_APPLICATION_STATUS")
- '("Communications" "APP_INDICATOR_CATEGORY_COMMUNICATIONS")
- '("SystemServices" "APP_INDICATOR_CATEGORY_SYSTEM_SERVICES")
- '("Hardware" "APP_INDICATOR_CATEGORY_HARDWARE")
- '("Other" "APP_INDICATOR_CATEGORY_OTHER")
- )
-)
-
-(define-enum IndicatorStatus
- (in-module "App")
- (c-name "AppIndicatorStatus")
- (gtype-id "APP_INDICATOR_TYPE_INDICATOR_STATUS")
- (values
- '("Passive" "APP_INDICATOR_STATUS_PASSIVE")
- '("Active" "APP_INDICATOR_STATUS_ACTIVE")
- '("NeedsAttention" "APP_INDICATOR_STATUS_ATTENTION")
- )
-)
-
-;; From app-indicator.h
-
-(define-function app_indicator_get_type
- (c-name "app_indicator_get_type")
- (return-type "GType")
-)
-
-(define-function app_indicator_new_with_path
- (c-name "app_indicator_new_with_path")
- (is-constructor-of "AppIndicator")
- (return-type "AppIndicator*")
- (parameters
- '("const-gchar*" "id")
- '("const-gchar*" "icon_name")
- '("AppIndicatorCategory" "category")
- '("const-gchar*" "icon_theme_path" (null-ok) (default "NULL"))
- )
-)
-
-(define-method set_status
- (of-object "AppIndicator")
- (c-name "app_indicator_set_status")
- (return-type "none")
- (parameters
- '("AppIndicatorStatus" "status")
- )
-)
-
-(define-method set_attention_icon
- (of-object "AppIndicator")
- (c-name "app_indicator_set_attention_icon_full")
- (return-type "none")
- (parameters
- '("const-gchar*" "icon_name")
- '("const-gchar*" "icon_desc" (null-ok) (default "NULL"))
- )
-)
-
-(define-method set_menu
- (of-object "AppIndicator")
- (c-name "app_indicator_set_menu")
- (return-type "none")
- (parameters
- '("GtkMenu*" "menu")
- )
-)
-
-(define-method set_icon
- (of-object "AppIndicator")
- (c-name "app_indicator_set_icon_full")
- (return-type "none")
- (parameters
- '("const-gchar*" "icon_name")
- '("const-gchar*" "icon_desc" (null-ok) (default "NULL"))
- )
-)
-
-(define-method set_label
- (of-object "AppIndicator")
- (c-name "app_indicator_set_label")
- (return-type "none")
- (parameters
- '("const-gchar*" "label" (null-ok))
- '("const-gchar*" "guide" (null-ok) (default "NULL"))
- )
-)
-
-(define-method set_ordering_index
- (of-object "AppIndicator")
- (c-name "app_indicator_set_ordering_index")
- (parameters
- '("guint32" "ordering_index")
- )
-)
-
-(define-method set_icon_theme_path
- (of-object "AppIndicator")
- (c-name "app_indicator_set_icon_theme_path")
- (return-type "none")
- (parameters
- '("const-gchar*" "icon_theme_path" (null-ok))
- )
-)
-
-(define-method get_id
- (of-object "AppIndicator")
- (c-name "app_indicator_get_id")
- (return-type "const-gchar*")
-)
-
-(define-method get_category
- (of-object "AppIndicator")
- (c-name "app_indicator_get_category")
- (return-type "AppIndicatorCategory")
-)
-
-(define-method get_status
- (of-object "AppIndicator")
- (c-name "app_indicator_get_status")
- (return-type "AppIndicatorStatus")
-)
-
-(define-method get_icon
- (of-object "AppIndicator")
- (c-name "app_indicator_get_icon")
- (return-type "const-gchar*")
-)
-
-(define-method get_icon_desc
- (of-object "AppIndicator")
- (c-name "app_indicator_get_icon_desc")
- (return-type "const-gchar*")
-)
-
-(define-method get_icon_theme_path
- (of-object "AppIndicator")
- (c-name "app_indicator_get_icon_theme_path")
- (return-type "const-gchar*")
-)
-
-(define-method get_attention_icon
- (of-object "AppIndicator")
- (c-name "app_indicator_get_attention_icon")
- (return-type "const-gchar*")
-)
-
-(define-method get_attention_icon_desc
- (of-object "AppIndicator")
- (c-name "app_indicator_get_attention_icon_desc")
- (return-type "const-gchar*")
-)
-
-(define-method get_menu
- (of-object "AppIndicator")
- (c-name "app_indicator_get_menu")
- (return-type "GtkMenu*")
-)
-
-(define-method get_label
- (of-object "AppIndicator")
- (c-name "app_indicator_get_label")
- (return-type "const-gchar*")
-)
-
-(define-method get_label_guide
- (of-object "AppIndicator")
- (c-name "app_indicator_get_label_guide")
- (return-type "const-gchar*")
-)
-
-(define-method get_ordering_index
- (of-object "AppIndicator")
- (c-name "app_indicator_get_ordering_index")
- (return-type "guint32")
-)
-
-(define-method build_menu_from_desktop
- (of-object "AppIndicator")
- (c-name "app_indicator_build_menu_from_desktop")
- (return-type "none")
- (parameters
- '("const-gchar*" "desktop_file")
- '("const-gchar*" "desktop_profile")
- )
-)
diff --git a/bindings/python/appindicator.override.in b/bindings/python/appindicator.override.in
deleted file mode 100644
index 84d3159..0000000
--- a/bindings/python/appindicator.override.in
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
-Python bindings for libappindicator.
-
-Copyright 2009 Canonical Ltd.
-
-Authors:
- Eitan Isaacson <eitan@ascender.com> (original)
- Neil Jagdish Patel <neil.patel@canonical.com>
-
-This program is free software: you can redistribute it and/or modify it
-under the terms of either or both of the following licenses:
-
-1) the GNU Lesser General Public License version 3, as published by the
-Free Software Foundation; and/or
-2) the GNU Lesser General Public License version 2.1, as published by
-the Free Software Foundation.
-
-This program is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranties of
-MERCHANTABILITY, SATISFACTORY QUALITY or FITNESS FOR A PARTICULAR
-PURPOSE. See the applicable version of the GNU Lesser General Public
-License for more details.
-
-You should have received a copy of both the GNU Lesser General Public
-License version 3 and version 2.1 along with this program. If not, see
-<http://www.gnu.org/licenses/>
-*/
-%%
-headers
-#include <Python.h>
-#include "@top_srcdir@/src/app-indicator.h"
-#include "@top_builddir@/src/app-indicator-enum-types.h"
-#include <glib.h>
-#include "pygobject.h"
-#include "pyglib.h"
-#include <pygtk/pygtk.h>
-
-typedef PyObject* (*to_pyobject_func) (gpointer data);
-
-#define APP_TYPE_INDICATOR APP_INDICATOR_TYPE
-
-void
-_appindicator_add_constants(PyObject *module, const gchar *strip_prefix)
-{
-#ifdef VERSION
- PyModule_AddStringConstant(module, "__version__", VERSION);
-#endif
- pyg_enum_add(module,
- "IndicatorCategory",
- strip_prefix,
- APP_INDICATOR_TYPE_INDICATOR_CATEGORY);
-
- pyg_enum_add(module,
- "IndicatorStatus",
- strip_prefix,
- APP_INDICATOR_TYPE_INDICATOR_STATUS);
-
- if (PyErr_Occurred())
- PyErr_Print();
-}
-%%
-modulename appindicator
-%%
-import gobject.GObject as PyGObject_Type
-import gtk.Menu as PyGtkMenu_Type
diff --git a/bindings/python/appindicatormodule.c b/bindings/python/appindicatormodule.c
deleted file mode 100644
index b66639c..0000000
--- a/bindings/python/appindicatormodule.c
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
-Python bindings for libappindicator.
-
-Copyright 2009 Canonical Ltd.
-
-Authors:
- Eitan Isaacson <eitan@ascender.com>
- Neil Jagdish Patel <neil.patel@canonical.com>
-
-This program is free software: you can redistribute it and/or modify it
-under the terms of either or both of the following licenses:
-
-1) the GNU Lesser General Public License version 3, as published by the
-Free Software Foundation; and/or
-2) the GNU Lesser General Public License version 2.1, as published by
-the Free Software Foundation.
-
-This program is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranties of
-MERCHANTABILITY, SATISFACTORY QUALITY or FITNESS FOR A PARTICULAR
-PURPOSE. See the applicable version of the GNU Lesser General Public
-License for more details.
-
-You should have received a copy of both the GNU Lesser General Public
-License version 3 and version 2.1 along with this program. If not, see
-<http://www.gnu.org/licenses/>
-*/
-#include <pygobject.h>
-
-void pyappindicator_register_classes (PyObject *d);
-extern PyMethodDef pyappindicator_functions[];
-
-DL_EXPORT(void)
-init_appindicator(void)
-{
- PyObject *m, *d;
-
- init_pygobject ();
-
- m = Py_InitModule ("_appindicator", pyappindicator_functions);
- d = PyModule_GetDict (m);
-
- pyappindicator_register_classes (d);
-
- _appindicator_add_constants (m, "APP_INDICATOR_");
- if (PyErr_Occurred ()) {
- Py_FatalError ("can't initialise module appindicator");
- }
-}
diff --git a/configure b/configure
index 5174b3f..8ff732c 100755
--- a/configure
+++ b/configure
@@ -13703,363 +13703,6 @@ else
fi
-###########################
-# Python
-###########################
-
-PYGTK_REQUIRED=2.14.0
-PYGOBJECT_REQUIRED=0.22
-
-
-
-
-
- if test -n "$PYTHON"; then
- # If the user set $PYTHON, use it and don't search something else.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $PYTHON version >= 2.3.5" >&5
-$as_echo_n "checking whether $PYTHON version >= 2.3.5... " >&6; }
- prog="import sys, string
-# split strings by '.' and convert to numeric. Append some zeros
-# because we need at least 4 digits for the hex conversion.
-minver = map(int, string.split('2.3.5', '.')) + [0, 0, 0]
-minverhex = 0
-for i in xrange(0, 4): minverhex = (minverhex << 8) + minver[i]
-sys.exit(sys.hexversion < minverhex)"
- if { echo "$as_me:$LINENO: $PYTHON -c "$prog"" >&5
- ($PYTHON -c "$prog") >&5 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-else
- as_fn_error $? "too old" "$LINENO" 5
-fi
- am_display_PYTHON=$PYTHON
- else
- # Otherwise, try each interpreter until we find one that satisfies
- # VERSION.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a Python interpreter with version >= 2.3.5" >&5
-$as_echo_n "checking for a Python interpreter with version >= 2.3.5... " >&6; }
-if ${am_cv_pathless_PYTHON+:} false; then :
- $as_echo_n "(cached) " >&6
-else
-
- for am_cv_pathless_PYTHON in python python2 python2.4 python2.3 python2.2 python2.1 python2.0 python1.6 python1.5 none; do
- test "$am_cv_pathless_PYTHON" = none && break
- prog="import sys, string
-# split strings by '.' and convert to numeric. Append some zeros
-# because we need at least 4 digits for the hex conversion.
-minver = map(int, string.split('2.3.5', '.')) + [0, 0, 0]
-minverhex = 0
-for i in xrange(0, 4): minverhex = (minverhex << 8) + minver[i]
-sys.exit(sys.hexversion < minverhex)"
- if { echo "$as_me:$LINENO: $am_cv_pathless_PYTHON -c "$prog"" >&5
- ($am_cv_pathless_PYTHON -c "$prog") >&5 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; then :
- break
-fi
- done
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_pathless_PYTHON" >&5
-$as_echo "$am_cv_pathless_PYTHON" >&6; }
- # Set $PYTHON to the absolute path of $am_cv_pathless_PYTHON.
- if test "$am_cv_pathless_PYTHON" = none; then
- PYTHON=:
- else
- # Extract the first word of "$am_cv_pathless_PYTHON", so it can be a program name with args.
-set dummy $am_cv_pathless_PYTHON; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PYTHON+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- case $PYTHON in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_PYTHON="$PYTHON" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_path_PYTHON="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-PYTHON=$ac_cv_path_PYTHON
-if test -n "$PYTHON"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PYTHON" >&5
-$as_echo "$PYTHON" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- fi
- am_display_PYTHON=$am_cv_pathless_PYTHON
- fi
-
-
- if test "$PYTHON" = :; then
- as_fn_error $? "no suitable Python interpreter found" "$LINENO" 5
- else
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON version" >&5
-$as_echo_n "checking for $am_display_PYTHON version... " >&6; }
-if ${am_cv_python_version+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- am_cv_python_version=`$PYTHON -c "import sys; print sys.version[:3]"`
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_version" >&5
-$as_echo "$am_cv_python_version" >&6; }
- PYTHON_VERSION=$am_cv_python_version
-
-
-
- PYTHON_PREFIX='${prefix}'
-
- PYTHON_EXEC_PREFIX='${exec_prefix}'
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON platform" >&5
-$as_echo_n "checking for $am_display_PYTHON platform... " >&6; }
-if ${am_cv_python_platform+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- am_cv_python_platform=`$PYTHON -c "import sys; print sys.platform"`
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_platform" >&5
-$as_echo "$am_cv_python_platform" >&6; }
- PYTHON_PLATFORM=$am_cv_python_platform
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON script directory" >&5
-$as_echo_n "checking for $am_display_PYTHON script directory... " >&6; }
-if ${am_cv_python_pythondir+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- am_cv_python_pythondir=`$PYTHON -c "from distutils import sysconfig; print sysconfig.get_python_lib(0,0,prefix='$PYTHON_PREFIX')" 2>/dev/null ||
- echo "$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages"`
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pythondir" >&5
-$as_echo "$am_cv_python_pythondir" >&6; }
- pythondir=$am_cv_python_pythondir
-
-
-
- pkgpythondir=\${pythondir}/$PACKAGE
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON extension module directory" >&5
-$as_echo_n "checking for $am_display_PYTHON extension module directory... " >&6; }
-if ${am_cv_python_pyexecdir+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- am_cv_python_pyexecdir=`$PYTHON -c "from distutils import sysconfig; print sysconfig.get_python_lib(1,0,prefix='$PYTHON_EXEC_PREFIX')" 2>/dev/null ||
- echo "${PYTHON_EXEC_PREFIX}/lib/python${PYTHON_VERSION}/site-packages"`
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pyexecdir" >&5
-$as_echo "$am_cv_python_pyexecdir" >&6; }
- pyexecdir=$am_cv_python_pyexecdir
-
-
-
- pkgpyexecdir=\${pyexecdir}/$PACKAGE
-
-
-
- fi
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for headers required to compile python extensions" >&5
-$as_echo_n "checking for headers required to compile python extensions... " >&6; }
-py_prefix=`$PYTHON -c "import sys; print sys.prefix"`
-py_exec_prefix=`$PYTHON -c "import sys; print sys.exec_prefix"`
-PYTHON_INCLUDES="-I${py_prefix}/include/python${PYTHON_VERSION}"
-if test "$py_prefix" != "$py_exec_prefix"; then
- PYTHON_INCLUDES="$PYTHON_INCLUDES -I${py_exec_prefix}/include/python${PYTHON_VERSION}"
-fi
-
-save_CPPFLAGS="$CPPFLAGS"
-CPPFLAGS="$CPPFLAGS $PYTHON_INCLUDES"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <Python.h>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
-$as_echo "found" >&6; }
-
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
-$as_echo "not found" >&6; }
-as_fn_error $? "could not find Python headers" "$LINENO" 5
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-CPPFLAGS="$save_CPPFLAGS"
-
-
-
-pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for APPINDICATOR_PYTHON" >&5
-$as_echo_n "checking for APPINDICATOR_PYTHON... " >&6; }
-
-if test -n "$APPINDICATOR_PYTHON_CFLAGS"; then
- pkg_cv_APPINDICATOR_PYTHON_CFLAGS="$APPINDICATOR_PYTHON_CFLAGS"
- elif test -n "$PKG_CONFIG"; then
- if test -n "$PKG_CONFIG" && \
- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"
- pygtk-2.0 >= \$PYGTK_REQUIRED
- gtk+-2.0 >= \$GTK_REQUIRED_VERSION
- pygobject-2.0 >= \$PYGOBJECT_REQUIRED
- \""; } >&5
- ($PKG_CONFIG --exists --print-errors "
- pygtk-2.0 >= $PYGTK_REQUIRED
- gtk+-2.0 >= $GTK_REQUIRED_VERSION
- pygobject-2.0 >= $PYGOBJECT_REQUIRED
- ") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- pkg_cv_APPINDICATOR_PYTHON_CFLAGS=`$PKG_CONFIG --cflags "
- pygtk-2.0 >= $PYGTK_REQUIRED
- gtk+-2.0 >= $GTK_REQUIRED_VERSION
- pygobject-2.0 >= $PYGOBJECT_REQUIRED
- " 2>/dev/null`
- test "x$?" != "x0" && pkg_failed=yes
-else
- pkg_failed=yes
-fi
- else
- pkg_failed=untried
-fi
-if test -n "$APPINDICATOR_PYTHON_LIBS"; then
- pkg_cv_APPINDICATOR_PYTHON_LIBS="$APPINDICATOR_PYTHON_LIBS"
- elif test -n "$PKG_CONFIG"; then
- if test -n "$PKG_CONFIG" && \
- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"
- pygtk-2.0 >= \$PYGTK_REQUIRED
- gtk+-2.0 >= \$GTK_REQUIRED_VERSION
- pygobject-2.0 >= \$PYGOBJECT_REQUIRED
- \""; } >&5
- ($PKG_CONFIG --exists --print-errors "
- pygtk-2.0 >= $PYGTK_REQUIRED
- gtk+-2.0 >= $GTK_REQUIRED_VERSION
- pygobject-2.0 >= $PYGOBJECT_REQUIRED
- ") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then
- pkg_cv_APPINDICATOR_PYTHON_LIBS=`$PKG_CONFIG --libs "
- pygtk-2.0 >= $PYGTK_REQUIRED
- gtk+-2.0 >= $GTK_REQUIRED_VERSION
- pygobject-2.0 >= $PYGOBJECT_REQUIRED
- " 2>/dev/null`
- test "x$?" != "x0" && pkg_failed=yes
-else
- pkg_failed=yes
-fi
- else
- pkg_failed=untried
-fi
-
-
-
-if test $pkg_failed = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
- _pkg_short_errors_supported=yes
-else
- _pkg_short_errors_supported=no
-fi
- if test $_pkg_short_errors_supported = yes; then
- APPINDICATOR_PYTHON_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "
- pygtk-2.0 >= $PYGTK_REQUIRED
- gtk+-2.0 >= $GTK_REQUIRED_VERSION
- pygobject-2.0 >= $PYGOBJECT_REQUIRED
- " 2>&1`
- else
- APPINDICATOR_PYTHON_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "
- pygtk-2.0 >= $PYGTK_REQUIRED
- gtk+-2.0 >= $GTK_REQUIRED_VERSION
- pygobject-2.0 >= $PYGOBJECT_REQUIRED
- " 2>&1`
- fi
- # Put the nasty error message in config.log where it belongs
- echo "$APPINDICATOR_PYTHON_PKG_ERRORS" >&5
-
- as_fn_error $? "Package requirements (
- pygtk-2.0 >= $PYGTK_REQUIRED
- gtk+-2.0 >= $GTK_REQUIRED_VERSION
- pygobject-2.0 >= $PYGOBJECT_REQUIRED
- ) were not met:
-
-$APPINDICATOR_PYTHON_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-Alternatively, you may set the environment variables APPINDICATOR_PYTHON_CFLAGS
-and APPINDICATOR_PYTHON_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details." "$LINENO" 5
-elif test $pkg_failed = untried; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-Alternatively, you may set the environment variables APPINDICATOR_PYTHON_CFLAGS
-and APPINDICATOR_PYTHON_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.
-See \`config.log' for more details" "$LINENO" 5; }
-else
- APPINDICATOR_PYTHON_CFLAGS=$pkg_cv_APPINDICATOR_PYTHON_CFLAGS
- APPINDICATOR_PYTHON_LIBS=$pkg_cv_APPINDICATOR_PYTHON_LIBS
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for pygtk defs" >&5
-$as_echo_n "checking for pygtk defs... " >&6; }
-PYGTK_DEFSDIR=`$PKG_CONFIG --variable=defsdir pygtk-2.0`
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $PYGTK_DEFSDIR" >&5
-$as_echo "$PYGTK_DEFSDIR" >&6; }
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for pygtk codegen" >&5
-$as_echo_n "checking for pygtk codegen... " >&6; }
-PYGTK_CODEGEN="$PYTHON `$PKG_CONFIG --variable=codegendir pygtk-2.0`/codegen.py"
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $PYGTK_CODEGEN" >&5
-$as_echo "$PYGTK_CODEGEN" >&6; }
#########################
# Check if build tests
@@ -14358,7 +14001,7 @@ fi
# Files
###########################
-ac_config_files="$ac_config_files Makefile src/Makefile src/appindicator-0.1.pc src/appindicator3-0.1.pc bindings/Makefile bindings/python/Makefile bindings/python/appindicator.override bindings/vala/Makefile bindings/vala/examples/Makefile tests/Makefile example/Makefile docs/Makefile docs/reference/Makefile docs/reference/version.xml docs/reference/libappindicator-docs.sgml"
+ac_config_files="$ac_config_files Makefile src/Makefile src/appindicator-0.1.pc src/appindicator3-0.1.pc bindings/Makefile bindings/vala/Makefile bindings/vala/examples/Makefile tests/Makefile example/Makefile docs/Makefile docs/reference/Makefile docs/reference/version.xml docs/reference/libappindicator-docs.sgml"
if test "x$has_mono" = "xtrue" ; then
@@ -15437,8 +15080,6 @@ do
"src/appindicator-0.1.pc") CONFIG_FILES="$CONFIG_FILES src/appindicator-0.1.pc" ;;
"src/appindicator3-0.1.pc") CONFIG_FILES="$CONFIG_FILES src/appindicator3-0.1.pc" ;;
"bindings/Makefile") CONFIG_FILES="$CONFIG_FILES bindings/Makefile" ;;
- "bindings/python/Makefile") CONFIG_FILES="$CONFIG_FILES bindings/python/Makefile" ;;
- "bindings/python/appindicator.override") CONFIG_FILES="$CONFIG_FILES bindings/python/appindicator.override" ;;
"bindings/vala/Makefile") CONFIG_FILES="$CONFIG_FILES bindings/vala/Makefile" ;;
"bindings/vala/examples/Makefile") CONFIG_FILES="$CONFIG_FILES bindings/vala/examples/Makefile" ;;
"tests/Makefile") CONFIG_FILES="$CONFIG_FILES tests/Makefile" ;;
diff --git a/configure.ac b/configure.ac
index ee03390..4713b22 100644
--- a/configure.ac
+++ b/configure.ac
@@ -181,33 +181,6 @@ AM_CONDITIONAL(BUILD_MONO_TEST, test x${have_nunit} = xyes)
with_localinstall="no"
AC_ARG_ENABLE(localinstall, AS_HELP_STRING([--enable-localinstall], [install all of the files localy instead of system directories (for distcheck)]), with_localinstall=$enableval, with_localinstall=no)
-###########################
-# Python
-###########################
-
-PYGTK_REQUIRED=2.14.0
-PYGOBJECT_REQUIRED=0.22
-
-AM_PATH_PYTHON(2.3.5)
-AM_CHECK_PYTHON_HEADERS(,[AC_MSG_ERROR(could not find Python headers)])
-
-PKG_CHECK_MODULES(APPINDICATOR_PYTHON,
- [
- pygtk-2.0 >= $PYGTK_REQUIRED
- gtk+-2.0 >= $GTK_REQUIRED_VERSION
- pygobject-2.0 >= $PYGOBJECT_REQUIRED
- ])
-
-AC_MSG_CHECKING(for pygtk defs)
-PYGTK_DEFSDIR=`$PKG_CONFIG --variable=defsdir pygtk-2.0`
-AC_SUBST(PYGTK_DEFSDIR)
-AC_MSG_RESULT($PYGTK_DEFSDIR)
-
-AC_MSG_CHECKING(for pygtk codegen)
-PYGTK_CODEGEN="$PYTHON `$PKG_CONFIG --variable=codegendir pygtk-2.0`/codegen.py"
-AC_SUBST(PYGTK_CODEGEN)
-AC_MSG_RESULT($PYGTK_CODEGEN)
-
#########################
# Check if build tests
#########################
@@ -239,8 +212,6 @@ src/Makefile
src/appindicator-0.1.pc
src/appindicator3-0.1.pc
bindings/Makefile
-bindings/python/Makefile
-bindings/python/appindicator.override
bindings/vala/Makefile
bindings/vala/examples/Makefile
tests/Makefile

View file

@ -0,0 +1,130 @@
{
"name": "libappindicator",
"build-options": {
"cflags": "-Wno-error",
"make-args": [ "-j1" ]
},
"rm-configure": true,
"config-opts": [
"--disable-static",
"--disable-gtk-doc",
"--disable-tests",
"--disable-mono-tests",
"--enable-introspection=@INTROSPECTION@",
"--with-gtk=@GTK_VER@"
],
"cleanup": [
"/include",
"/lib/pkgconfig",
"/lib/*.la",
"/share/gtk-doc",
"/share/gir-1.0"
],
"sources": [
{
"type": "archive",
"url": "https://launchpad.net/libappindicator/12.10/12.10.0/+download/libappindicator-12.10.0.tar.gz",
"sha256": "d5907c1f98084acf28fd19593cb70672caa0ca1cf82d747ba6f4830d4cc3b49f"
},
{
"type": "patch",
"path": "libappindicator-ftbfs.patch"
},
{
"type": "patch",
"path": "libappindicator-no-python.patch"
},
{
"type": "patch",
"path": "libappindicator-fix-crash-from-incorrect-signal-emission.patch"
},
{
"type": "patch",
"path": "libappindicator-fix-crash-iterating-icon-themes.patch"
},
{
"type": "script",
"commands": ["autoreconf -sfi"],
"dest-filename": "autogen.sh"
}
],
"modules": [
"../intltool/intltool-0.51.json",
"../dbus-glib/dbus-glib.json",
{
"name": "libdbusmenu",
"build-options": {
"cflags": "-Wno-error",
"env": {
"HAVE_VALGRIND_FALSE": "#",
"HAVE_VALGRIND_TRUE": ""
}
},
"cleanup": [
"/include",
"/libexec",
"/lib/pkgconfig",
"/lib/*.la",
"/share/doc",
"/share/libdbusmenu",
"/share/gtk-doc",
"/share/gir-1.0"
],
"config-opts": [
"--disable-static",
"--disable-gtk-doc",
"--enable-introspection=@INTROSPECTION@",
"--disable-vala",
"--disable-dumper",
"--disable-tests",
"--with-gtk=@GTK_VER@"
],
"sources": [
{
"type": "archive",
"url": "https://launchpad.net/libdbusmenu/16.04/16.04.0/+download/libdbusmenu-16.04.0.tar.gz",
"sha256": "b9cc4a2acd74509435892823607d966d424bd9ad5d0b00938f27240a1bfa878a"
}
]
},
{
"name": "libindicator",
"build-options": {
"cflags": "-Wno-error"
},
"cleanup": [
"/include",
"/libexec",
"/lib/pkgconfig",
"/lib/*.la",
"/share/libindicator",
"/share/gtk-doc",
"/share/gir-1.0"
],
"config-opts": [
"--disable-static",
"--disable-tests",
"--with-gtk=@GTK_VER@"
],
"sources": [
{
"type": "archive",
"url": "https://launchpad.net/libindicator/12.10/12.10.1/+download/libindicator-12.10.1.tar.gz",
"sha256": "b2d2e44c10313d5c9cd60db455d520f80b36dc39562df079a3f29495e8f9447f"
},
{
"type": "shell",
"commands": [
"# FTBFS fix",
"sed -e '/LIBINDICATOR_LIBS/ s/\\$LIBM/ $LIBM/' -i configure.ac"
]
},
{
"type": "script",
"commands": ["autoreconf -sfi"],
"dest-filename": "autogen.sh"
}
]
}
]
}

View file

@ -0,0 +1,123 @@
From d6dd5cdf45c1aac6c0519c8a4f5f89321770fb53 Mon Sep 17 00:00:00 2001
From: Michael Meeks <michael.meeks@suse.com>
Date: Fri, 9 Nov 2012 16:16:40 +0000
Subject: [PATCH] gtk: Don't assume all GdkDisplays are GdkX11Displays:
broadway/wayland
Co-Authored-By: Bastien Nocera <hadess@hadess.net>
---
src/canberra-gtk-module.c | 15 +++++++++++++++
src/canberra-gtk.c | 28 ++++++++++++++++++++++------
2 files changed, 37 insertions(+), 6 deletions(-)
diff --git a/src/canberra-gtk-module.c b/src/canberra-gtk-module.c
index 67791f0..c1532ab 100644
--- a/src/canberra-gtk-module.c
+++ b/src/canberra-gtk-module.c
@@ -307,6 +307,11 @@ static gint window_get_desktop(GdkDisplay *d, GdkWindow *w) {
guchar *data = NULL;
gint ret = -1;
+#ifdef GDK_IS_X11_DISPLAY
+ if (!GDK_IS_X11_DISPLAY(d))
+ return 0;
+#endif
+
if (XGetWindowProperty(GDK_DISPLAY_XDISPLAY(d), GDK_WINDOW_XID(w),
gdk_x11_get_xatom_by_name_for_display(d, "_NET_WM_DESKTOP"),
0, G_MAXLONG, False, XA_CARDINAL, &type_return,
@@ -335,6 +340,11 @@ static gint display_get_desktop(GdkDisplay *d) {
guchar *data = NULL;
gint ret = -1;
+#ifdef GDK_IS_X11_DISPLAY
+ if (!GDK_IS_X11_DISPLAY(d))
+ return 0;
+#endif
+
if (XGetWindowProperty(GDK_DISPLAY_XDISPLAY(d), DefaultRootWindow(GDK_DISPLAY_XDISPLAY(d)),
gdk_x11_get_xatom_by_name_for_display(d, "_NET_CURRENT_DESKTOP"),
0, G_MAXLONG, False, XA_CARDINAL, &type_return,
@@ -365,6 +375,11 @@ static gboolean window_is_xembed(GdkDisplay *d, GdkWindow *w) {
gboolean ret = FALSE;
Atom xembed;
+#ifdef GDK_IS_X11_DISPLAY
+ if (!GDK_IS_X11_DISPLAY(d))
+ return FALSE;
+#endif
+
/* Gnome Panel applets are XEMBED windows. We need to make sure we
* ignore them */
diff --git a/src/canberra-gtk.c b/src/canberra-gtk.c
index 34446f5..47285f8 100644
--- a/src/canberra-gtk.c
+++ b/src/canberra-gtk.c
@@ -185,6 +185,11 @@ static gint window_get_desktop(GdkDisplay *d, GdkWindow *w) {
guchar *data = NULL;
gint ret = -1;
+#ifdef GDK_IS_X11_DISPLAY
+ if (!GDK_IS_X11_DISPLAY(d))
+ return 0;
+#endif
+
if (XGetWindowProperty(GDK_DISPLAY_XDISPLAY(d), GDK_WINDOW_XID(w),
gdk_x11_get_xatom_by_name_for_display(d, "_NET_WM_DESKTOP"),
0, G_MAXLONG, False, XA_CARDINAL, &type_return,
@@ -254,18 +259,28 @@ int ca_gtk_proplist_set_for_widget(ca_proplist *p, GtkWidget *widget) {
if (gtk_widget_get_realized(GTK_WIDGET(w))) {
GdkWindow *dw = NULL;
+#ifdef GDK_IS_X11_DISPLAY
GdkScreen *screen = NULL;
+#endif
GdkDisplay *display = NULL;
gint x = -1, y = -1, width = -1, height = -1, screen_width = -1, screen_height = -1;
- if ((dw = gtk_widget_get_window(GTK_WIDGET(w))))
- if ((ret = ca_proplist_setf(p, CA_PROP_WINDOW_X11_XID, "%lu", (unsigned long) GDK_WINDOW_XID(dw))) < 0)
- return ret;
+ if ((dw = gtk_widget_get_window(GTK_WIDGET(w)))) {
+#ifdef GDK_IS_X11_DISPLAY
+ if (GDK_IS_X11_DISPLAY(display)) {
+ if ((ret = ca_proplist_setf(p, CA_PROP_WINDOW_X11_XID, "%lu", (unsigned long) GDK_WINDOW_XID(dw))) < 0)
+ return ret;
+ }
+#endif
+ }
if ((display = gtk_widget_get_display(GTK_WIDGET(w)))) {
- if ((t = gdk_display_get_name(display)))
+#ifdef GDK_IS_X11_DISPLAY
+ if (GDK_IS_X11_DISPLAY(display) && (t = gdk_display_get_name(display))) {
if ((ret = ca_proplist_sets(p, CA_PROP_WINDOW_X11_DISPLAY, t)) < 0)
return ret;
+ }
+#endif
if (dw) {
gint desktop = window_get_desktop(display, dw);
@@ -276,7 +291,8 @@ int ca_gtk_proplist_set_for_widget(ca_proplist *p, GtkWidget *widget) {
}
}
- if ((screen = gtk_widget_get_screen(GTK_WIDGET(w)))) {
+#ifdef GDK_IS_X11_DISPLAY
+ if (GDK_IS_X11_DISPLAY(display) && (screen = gtk_widget_get_screen(GTK_WIDGET(w)))) {
if ((ret = ca_proplist_setf(p, CA_PROP_WINDOW_X11_SCREEN, "%i", gdk_screen_get_number(screen))) < 0)
return ret;
@@ -285,7 +301,7 @@ int ca_gtk_proplist_set_for_widget(ca_proplist *p, GtkWidget *widget) {
if ((ret = ca_proplist_setf(p, CA_PROP_WINDOW_X11_MONITOR, "%i", gdk_screen_get_monitor_at_window(screen, dw))) < 0)
return ret;
}
-
+#endif
/* FIXME, this might cause a round trip */
if (dw) {
--
2.34.1

View file

@ -0,0 +1,42 @@
{
"name": "libcanberra",
"cleanup": [
"*.la",
"/bin",
"/etc",
"/include",
"/lib/gnome-settings-daemon-3.0",
"/lib/gtk-3.0",
"/lib/pkgconfig",
"/libexec",
"/share/doc",
"/share/gdm",
"/share/gnome",
"/share/gtk-doc",
"/share/man",
"/share/vala"
],
"config-opts": [
"--disable-static",
"--disable-gtk-doc",
"--disable-oss",
"--enable-pulse",
"--disable-udev",
"--disable-gtk",
"--enable-gtk3",
"--disable-lynx"
],
"sources": [
{
"type": "archive",
"url": "http://0pointer.de/lennart/projects/libcanberra/libcanberra-0.30.tar.xz",
"sha256": "c2b671e67e0c288a69fc33dc1b6f1b534d07882c2aceed37004bf48c601afa72",
"git-init" : true
},
{
"type": "patch",
"path": "0001-gtk-Don-t-assume-all-GdkDisplays-are-GdkX11Displays-.patch",
"use-git-am": true
}
]
}

View file

@ -0,0 +1,6 @@
This is a shared module for libdecoration, used by several applications and utilities to get window decorations on Wayland compositors that might not implement server-side decorations.
This will contain the latest versioned release of libdecor; if newer (devel) versions are desired, please manually add it to your flatpak manifest.
The freedesktop runtime already bundles GTK3, so you don't need to do any more work to get native-looking CSDs on GNOME with libdecor versions newer than 0.1.1.
If it can't load the GTK3 plugin, it will fallback to Cairo.

View file

@ -0,0 +1,18 @@
{
"name": "libdecor",
"buildsystem": "meson",
"config-opts": [
"-Ddemo=false"
],
"sources": [
{
"type": "archive",
"url": "https://gitlab.freedesktop.org/libdecor/libdecor/-/archive/0.2.0/libdecor-0.2.0.tar.gz",
"sha256": "455acc1e1af43657fadbc79a9bac41e2d465ad1abdf1a6f8405e461350046f22"
}
],
"cleanup": [
"/include",
"/lib/pkgconfig"
]
}

View file

@ -0,0 +1,34 @@
From: Dave Martin
Subject: "rsc" doesnt exist anymore in thumb2
diff --git a/fixed.h b/fixed.h
index 4b58abf..ba4bc26 100644
--- a/fixed.h
+++ b/fixed.h
@@ -275,12 +275,25 @@ mad_fixed_t mad_f_mul_inline(mad_fixed_t x, mad_fixed_t y)
: "+r" (lo), "+r" (hi) \
: "%r" (x), "r" (y))
+#ifdef __thumb__
+/* In Thumb-2, the RSB-immediate instruction is only allowed with a zero
+ operand. If needed this code can also support Thumb-1
+ (simply append "s" to the end of the second two instructions). */
+# define MAD_F_MLN(hi, lo) \
+ asm ("rsbs %0, %0, #0\n\t" \
+ "sbc %1, %1, %1\n\t" \
+ "sub %1, %1, %2" \
+ : "+&r" (lo), "=&r" (hi) \
+ : "r" (hi) \
+ : "cc")
+#else /* ! __thumb__ */
# define MAD_F_MLN(hi, lo) \
asm ("rsbs %0, %2, #0\n\t" \
"rsc %1, %3, #0" \
- : "=r" (lo), "=r" (hi) \
+ : "=&r" (lo), "=r" (hi) \
: "0" (lo), "1" (hi) \
: "cc")
+#endif /* __thumb__ */
# define mad_f_scale64(hi, lo) \
({ mad_fixed_t __result; \

View file

@ -0,0 +1,12 @@
diff -Naur libmad-0.15.1b-orig/configure.ac libmad-0.15.1b/configure.ac
--- libmad-0.15.1b-orig/configure.ac 2007-07-01 12:58:13.000000000 -0600
+++ libmad-0.15.1b/configure.ac 2007-07-01 12:59:13.000000000 -0600
@@ -105,7 +105,7 @@
shift
;;
-O2)
- optimize="-O"
+ optimize="-O2"
shift
;;
-fomit-frame-pointer)

View file

@ -0,0 +1,146 @@
diff -Naur libmad-0.15.1b-orig/configure.ac libmad-0.15.1b/configure.ac
--- libmad-0.15.1b-orig/configure.ac 2007-06-30 20:22:31.000000000 -0600
+++ libmad-0.15.1b/configure.ac 2007-06-30 20:25:31.000000000 -0600
@@ -122,74 +122,74 @@
esac
done
-if test "$GCC" = yes
-then
- if test -z "$arch"
- then
- case "$host" in
- i386-*) ;;
- i?86-*) arch="-march=i486" ;;
- arm*-empeg-*) arch="-march=armv4 -mtune=strongarm1100" ;;
- armv4*-*) arch="-march=armv4 -mtune=strongarm" ;;
- powerpc-*) ;;
- mips*-agenda-*) arch="-mcpu=vr4100" ;;
- mips*-luxsonor-*) arch="-mips1 -mcpu=r3000 -Wa,-m4010" ;;
- esac
- fi
-
- case "$optimize" in
- -O|"-O "*)
- optimize="-O"
- optimize="$optimize -fforce-mem"
- optimize="$optimize -fforce-addr"
- : #x optimize="$optimize -finline-functions"
- : #- optimize="$optimize -fstrength-reduce"
- optimize="$optimize -fthread-jumps"
- optimize="$optimize -fcse-follow-jumps"
- optimize="$optimize -fcse-skip-blocks"
- : #x optimize="$optimize -frerun-cse-after-loop"
- : #x optimize="$optimize -frerun-loop-opt"
- : #x optimize="$optimize -fgcse"
- optimize="$optimize -fexpensive-optimizations"
- optimize="$optimize -fregmove"
- : #* optimize="$optimize -fdelayed-branch"
- : #x optimize="$optimize -fschedule-insns"
- optimize="$optimize -fschedule-insns2"
- : #? optimize="$optimize -ffunction-sections"
- : #? optimize="$optimize -fcaller-saves"
- : #> optimize="$optimize -funroll-loops"
- : #> optimize="$optimize -funroll-all-loops"
- : #x optimize="$optimize -fmove-all-movables"
- : #x optimize="$optimize -freduce-all-givs"
- : #? optimize="$optimize -fstrict-aliasing"
- : #* optimize="$optimize -fstructure-noalias"
-
- case "$host" in
- arm*-*)
- optimize="$optimize -fstrength-reduce"
- ;;
- mips*-*)
- optimize="$optimize -fstrength-reduce"
- optimize="$optimize -finline-functions"
- ;;
- i?86-*)
- optimize="$optimize -fstrength-reduce"
- ;;
- powerpc-apple-*)
- # this triggers an internal compiler error with gcc2
- : #optimize="$optimize -fstrength-reduce"
-
- # this is really only beneficial with gcc3
- : #optimize="$optimize -finline-functions"
- ;;
- *)
- # this sometimes provokes bugs in gcc 2.95.2
- : #optimize="$optimize -fstrength-reduce"
- ;;
- esac
- ;;
- esac
-fi
+#if test "$GCC" = yes
+#then
+# if test -z "$arch"
+# then
+# case "$host" in
+# i386-*) ;;
+# i?86-*) arch="-march=i486" ;;
+# arm*-empeg-*) arch="-march=armv4 -mtune=strongarm1100" ;;
+# armv4*-*) arch="-march=armv4 -mtune=strongarm" ;;
+# powerpc-*) ;;
+# mips*-agenda-*) arch="-mcpu=vr4100" ;;
+# mips*-luxsonor-*) arch="-mips1 -mcpu=r3000 -Wa,-m4010" ;;
+# esac
+# fi
+#
+# case "$optimize" in
+# -O|"-O "*)
+# optimize="-O"
+# optimize="$optimize -fforce-mem"
+# optimize="$optimize -fforce-addr"
+# : #x optimize="$optimize -finline-functions"
+# : #- optimize="$optimize -fstrength-reduce"
+# optimize="$optimize -fthread-jumps"
+# optimize="$optimize -fcse-follow-jumps"
+# optimize="$optimize -fcse-skip-blocks"
+# : #x optimize="$optimize -frerun-cse-after-loop"
+# : #x optimize="$optimize -frerun-loop-opt"
+# : #x optimize="$optimize -fgcse"
+# optimize="$optimize -fexpensive-optimizations"
+# optimize="$optimize -fregmove"
+# : #* optimize="$optimize -fdelayed-branch"
+# : #x optimize="$optimize -fschedule-insns"
+# optimize="$optimize -fschedule-insns2"
+# : #? optimize="$optimize -ffunction-sections"
+# : #? optimize="$optimize -fcaller-saves"
+# : #> optimize="$optimize -funroll-loops"
+# : #> optimize="$optimize -funroll-all-loops"
+# : #x optimize="$optimize -fmove-all-movables"
+# : #x optimize="$optimize -freduce-all-givs"
+# : #? optimize="$optimize -fstrict-aliasing"
+# : #* optimize="$optimize -fstructure-noalias"
+#
+# case "$host" in
+# arm*-*)
+# optimize="$optimize -fstrength-reduce"
+# ;;
+# mips*-*)
+# optimize="$optimize -fstrength-reduce"
+# optimize="$optimize -finline-functions"
+# ;;
+# i?86-*)
+# optimize="$optimize -fstrength-reduce"
+# ;;
+# powerpc-apple-*)
+# # this triggers an internal compiler error with gcc2
+# : #optimize="$optimize -fstrength-reduce"
+#
+# # this is really only beneficial with gcc3
+# : #optimize="$optimize -finline-functions"
+# ;;
+# *)
+# # this sometimes provokes bugs in gcc 2.95.2
+# : #optimize="$optimize -fstrength-reduce"
+# ;;
+# esac
+# ;;
+# esac
+#fi
case "$host" in
mips*-agenda-*)

View file

@ -0,0 +1,37 @@
diff -up libmad-0.15.1b/Makefile.am.orig libmad-0.15.1b/Makefile.am
--- libmad-0.15.1b/Makefile.am.orig 2009-01-25 14:35:56.000000000 +0200
+++ libmad-0.15.1b/Makefile.am 2009-01-25 18:35:07.000000000 +0200
@@ -110,15 +110,28 @@ mad.h: config.status config.h Makefile.a
echo "# ifdef __cplusplus"; \
echo 'extern "C" {'; \
echo "# endif"; echo; \
- if [ ".$(FPM)" != "." ]; then \
- echo ".$(FPM)" | sed -e 's|^\.-D|# define |'; echo; \
- fi; \
+ echo "# ifdef __i386__"; \
+ echo "# define FPM_INTEL"; \
+ echo "# define SIZEOF_LONG 4"; \
+ echo "# endif"; \
+ echo "#ifdef __x86_64__";\
+ echo "# define FPM_64BIT"; \
+ echo "# define SIZEOF_LONG 8"; \
+ echo "# endif"; \
+ echo "#ifdef __powerpc__"; \
+ echo "#define FPM_PPC"; \
+ echo "#define SIZEOF_LONG 4"; \
+ echo "#endif"; \
+ echo "#ifdef __powerpc64__"; \
+ echo "#define FPM_PPC"; \
+ echo "#define SIZEOF_LONG 8"; \
+ echo "#endif"; echo; \
sed -ne 's/^# *define *\(HAVE_.*_ASM\).*/# define \1/p' \
config.h; echo; \
sed -ne 's/^# *define *OPT_\(SPEED\|ACCURACY\).*/# define OPT_\1/p' \
config.h; echo; \
- sed -ne 's/^# *define *\(SIZEOF_.*\)/# define \1/p' \
- config.h; echo; \
+ echo "# define SIZEOF_INT 4"; \
+ echo "# define SIZEOF_LONG_LONG 8"; echo; \
for header in $(exported_headers); do \
echo; \
sed -n -f $(srcdir)/mad.h.sed $(srcdir)/$$header; \

View file

@ -0,0 +1,13 @@
--- libmad-0.15.1b/fixed.h~ 2004-02-17 02:02:03.000000000 +0000
+++ libmad-0.15.1b/fixed.h 2009-07-19 13:03:08.000000000 +0100
@@ -379,8 +379,8 @@ mad_fixed_t mad_f_mul_inline(mad_fixed_t
asm ("addc %0,%2,%3\n\t" \
"adde %1,%4,%5" \
: "=r" (lo), "=r" (hi) \
- : "%r" (lo), "r" (__lo), \
- "%r" (hi), "r" (__hi) \
+ : "0" (lo), "r" (__lo), \
+ "1" (hi), "r" (__hi) \
: "xer"); \
})
# endif

View file

@ -0,0 +1,49 @@
{
"name" : "libmad",
"post-install": [
"install -d $FLATPAK_DEST/lib/pkgconfig",
"install -Dm644 -t $FLATPAK_DEST/lib/pkgconfig mad.pc"
],
"sources" : [
{
"type" : "archive",
"url" : "https://downloads.sourceforge.net/project/mad/libmad/0.15.1b/libmad-0.15.1b.tar.gz",
"sha256" : "bbfac3ed6bfbc2823d3775ebb931087371e142bb0e9bb1bee51a76a6e0078690"
},
{
"type": "patch",
"path": "libmad-0.15.1b-multiarch.patch"
},
{
"type": "patch",
"path": "libmad-0.15.1b-ppc.patch"
},
{
"type": "patch",
"path": "Provide-Thumb-2-alternative-code-for-MAD_F_MLN.diff"
},
{
"type": "patch",
"path": "libmad.thumb.diff"
},
{
"type": "patch",
"path": "libmad-0.15.1b-cflags.patch"
},
{
"type": "patch",
"path": "libmad-0.15.1b-cflags-O2.patch"
},
{
"type": "file",
"path": "mad.pc"
},
{
"type": "shell",
"commands": [
"cp /usr/share/gnu-config/config.sub .",
"cp /usr/share/gnu-config/config.guess ."
]
}
]
}

View file

@ -0,0 +1,12 @@
--- ./imdct_l_arm.S.orig 2010-02-25 13:25:23.000000000 +0100
+++ ./imdct_l_arm.S 2010-02-25 13:27:26.000000000 +0100
@@ -468,7 +468,7 @@
@----
- add r2, pc, #(imdct36_long_karray-.-8) @ r2 = base address of Knn array (PIC safe ?)
+ adr r2, imdct36_long_karray
loop:

View file

@ -0,0 +1,11 @@
prefix=/app
exec_prefix=/app
libdir=/app/lib
includedir=/app/include
Name: mad
Description: MPEG Audio Decoder
Requires:
Version: 0.15.1b
Libs: -L/app/lib} -lmad -lm
Cflags: -I/app/include

View file

@ -0,0 +1,23 @@
{
"name": "libsecret",
"buildsystem": "meson",
"config-opts": [
"-Dmanpage=false",
"-Dvapi=false",
"-Dgtk_doc=false",
"-Dintrospection=false"
],
"cleanup": [
"/bin",
"/include",
"/lib/pkgconfig",
"/share/man"
],
"sources": [
{
"type": "archive",
"url": "https://download.gnome.org/sources/libsecret/0.20/libsecret-0.20.5.tar.xz",
"sha256": "3fb3ce340fcd7db54d87c893e69bfc2b1f6e4d4b279065ffe66dac9f0fd12b4d"
}
]
}

View file

@ -0,0 +1,14 @@
{
"name": "libsoup-2.4",
"buildsystem": "meson",
"config-opts": [
"-Dtests=false"
],
"sources": [
{
"type": "archive",
"url": "https://download.gnome.org/sources/libsoup/2.74/libsoup-2.74.3.tar.xz",
"sha256": "e4b77c41cfc4c8c5a035fcdc320c7bc6cfb75ef7c5a034153df1413fa1d92f13"
}
]
}

View file

@ -0,0 +1,19 @@
{
"name": "libusb",
"config-opts": [ "--disable-static" ],
"cleanup": [
"/lib/*.la",
"/lib/pkgconfig",
"/include"
],
"sources": [
{
"type": "archive",
"url": "https://github.com/libusb/libusb/releases/download/v1.0.26/libusb-1.0.26.tar.bz2",
"sha256": "12ce7a61fc9854d1d2a1ffe095f7b5fac19ddba095c259e6067a46500381b5a5"
}
],
"post-install": [
"install -Dm644 COPYING ${FLATPAK_DEST}/share/licenses/libusb/COPYING"
]
}

View file

@ -0,0 +1,29 @@
{
"name": "dssi",
"rm-configure": true,
"config-opts": [
"--disable-static"
],
"cleanup": [
"/bin",
"/include",
"/lib/dssi",
"/lib/pkgconfig",
"/share/man",
"*.la"
],
"sources": [
{
"type": "archive",
"url": "http://download.sf.net/sourceforge/dssi/dssi-1.1.1.tar.gz",
"sha256": "f2c82b073a947c8255284249097667f9b14e660bf86186f3fcd3b3b3e087814e"
},
{
"type": "script",
"commands": [
"autoreconf -fiv"
],
"dest-filename": "autogen.sh"
}
]
}

View file

@ -0,0 +1,44 @@
{
"name": "fftw3f",
"config-opts": [
"--enable-threads",
"--enable-static",
"--disable-shared",
"--enable-float"
],
"build-options": {
"cflags": "-fPIC",
"arch": {
"x86_64": {
"config-opts": [
"--enable-sse2",
"--enable-avx",
"--enable-avx-128-fma"
]
},
"aarch64": {
"config-opts": [
"--enable-neon"
]
}
}
},
"sources": [
{
"type": "archive",
"url": "https://www.fftw.org/fftw-3.3.10.tar.gz",
"sha256": "56c932549852cddcfafdab3820b0200c7742675be92179e59e6215b340e26467"
}
],
"cleanup": [
"/bin",
"/include",
"/lib/cmake",
"/lib/pkgconfig",
"/share/info",
"/share/man",
"*.a",
"*.la",
"*.so"
]
}

View file

@ -0,0 +1,42 @@
{
"name": "fftw3f",
"config-opts": [
"--enable-threads",
"--enable-shared",
"--disable-static",
"--enable-float"
],
"build-options": {
"arch": {
"x86_64": {
"config-opts": [
"--enable-sse2",
"--enable-avx",
"--enable-avx-128-fma"
]
},
"aarch64": {
"config-opts": [
"--enable-neon"
]
}
}
},
"sources": [
{
"type": "archive",
"url": "https://www.fftw.org/fftw-3.3.10.tar.gz",
"sha256": "56c932549852cddcfafdab3820b0200c7742675be92179e59e6215b340e26467"
}
],
"cleanup": [
"/bin",
"/include",
"/lib/cmake",
"/lib/pkgconfig",
"/share/man",
"/share/info",
"*.la",
"*.so"
]
}

View file

@ -0,0 +1,29 @@
{
"name": "fluidsynth",
"buildsystem": "cmake-ninja",
"build-options": {
"cflags": "-fPIC",
"cxxflags": "-fPIC"
},
"config-opts": [
"-DBUILD_SHARED_LIBS=OFF",
"-Denable-jack=OFF",
"-Denable-pipewire=OFF"
],
"cleanup": [
"/bin",
"/include",
"/lib/cmake",
"/lib/pkgconfig",
"/share/man",
"*.so",
"*.a"
],
"sources": [
{
"type": "archive",
"url": "https://github.com/FluidSynth/fluidsynth/archive/v2.3.3.tar.gz",
"sha256": "321f7d3f72206b2522f30a1cb8ad1936fd4533ffc4d29dd335b1953c9fb371e6"
}
]
}

View file

@ -0,0 +1,19 @@
{
"name": "fluidsynth",
"buildsystem": "cmake-ninja",
"cleanup": [
"/bin",
"/include",
"/lib/cmake",
"/lib/pkgconfig",
"/share/man",
"*.so"
],
"sources": [
{
"type": "archive",
"url": "https://github.com/FluidSynth/fluidsynth/archive/v2.3.4.tar.gz",
"sha256": "1529ef5bc3b9ef3adc2a7964505912f7305103e269e50cc0316f500b22053ac9"
}
]
}

View file

@ -0,0 +1,20 @@
{
"name": "ladspa",
"no-autogen": true,
"subdir": "src",
"make-install-args": [
"INSTALL_PLUGINS_DIR=/app/lib/ladspa",
"INSTALL_INCLUDE_DIR=/app/include",
"INSTALL_BINARY_DIR=/app/bin"
],
"cleanup": [
"/include"
],
"sources": [
{
"type": "archive",
"url": "http://www.ladspa.org/download/ladspa_sdk_1.17.tgz",
"sha256": "27d24f279e4b81bd17ecbdcc38e4c42991bb388826c0b200067ce0eb59d3da5b"
}
]
}

View file

@ -0,0 +1,46 @@
{
"name": "lash",
"rm-configure": true,
"config-opts": [
"--disable-static",
"--disable-serv-inst",
"CFLAGS=-D_GNU_SOURCE"
],
"cleanup": [
"/include",
"/lib/pkgconfig",
"*.la"
],
"sources": [
{
"type": "archive",
"url": "https://download.savannah.gnu.org/releases/lash/lash-0.5.4.tar.gz",
"sha256": "105a7da84415c4725c6bcad28e70f23aeb4534f94fc80ca262b6a2cef2226c16"
},
{
"type": "patch",
"strip-components": 0,
"path": "patches/lash-0.5.3-no-static-lib.patch"
},
{
"type": "patch",
"path": "patches/lash-gcc47.patch"
},
{
"type": "patch",
"path": "patches/lash-linking.patch"
},
{
"type": "patch",
"strip-components": 0,
"path": "patches/lash-configure.patch"
},
{
"type": "script",
"commands": [
"autoreconf -fiv"
],
"dest-filename": "autogen.sh"
}
]
}

View file

@ -0,0 +1,19 @@
{
"name": "libinstpatch",
"buildsystem": "cmake-ninja",
"config-opts": [
"-DLIB_SUFFIX="
],
"cleanup": [
"/include",
"/lib/pkgconfig",
"/share/doc"
],
"sources": [
{
"type": "archive",
"url": "https://github.com/swami/libinstpatch/archive/v1.1.6.tar.gz",
"sha256": "8e9861b04ede275d712242664dab6ffa9166c7940fea3b017638681d25e10299"
}
]
}

View file

@ -0,0 +1,25 @@
{
"name": "liblo",
"cleanup": [
"/bin",
"/include",
"/lib/pkgconfig",
"*.la",
"*.a",
"*.so"
],
"build-options": {
"cflags": "-fPIC -Wno-error=use-after-free"
},
"config-opts": [
"--enable-static",
"--disable-shared"
],
"sources": [
{
"type": "archive",
"url": "http://download.sf.net/sourceforge/liblo/liblo-0.31.tar.gz",
"sha256": "2b4f446e1220dcd624ecd8405248b08b7601e9a0d87a0b94730c2907dbccc750"
}
]
}

View file

@ -0,0 +1,20 @@
{
"name": "liblo",
"build-options": {
"cflags": "-Wno-error=use-after-free"
},
"cleanup": [
"/bin",
"/include",
"/lib/pkgconfig",
"*.la",
"*.so"
],
"sources": [
{
"type": "archive",
"url": "http://download.sf.net/sourceforge/liblo/liblo-0.31.tar.gz",
"sha256": "2b4f446e1220dcd624ecd8405248b08b7601e9a0d87a0b94730c2907dbccc750"
}
]
}

View file

@ -0,0 +1,82 @@
{
"name": "lilv",
"buildsystem": "meson",
"modules": [
{
"name": "serd",
"buildsystem": "meson",
"sources": [
{
"type": "archive",
"url": "https://download.drobilla.net/serd-0.30.16.tar.xz",
"sha256": "f50f486da519cdd8d03b20c9e42414e459133f5a244411d8e63caef8d9ac9146"
}
],
"post-install": [
"install -Dm644 -t $FLATPAK_DEST/share/licenses/serd ../COPYING"
],
"cleanup": [
"/bin",
"/include",
"/lib/pkgconfig",
"/share/man"
]
},
{
"name": "sord",
"buildsystem": "meson",
"sources": [
{
"type": "archive",
"url": "https://download.drobilla.net/sord-0.16.14.tar.xz",
"sha256": "220fd97d5fcb216e7b85db66f685bfdaad7dc58a50d1f96dfb2558dbc6c4731b"
}
],
"post-install": [
"install -Dm644 -t $FLATPAK_DEST/share/licenses/sord ../COPYING"
],
"cleanup": [
"/bin",
"/include",
"/lib/pkgconfig",
"/share/doc",
"/share/man"
]
},
{
"name": "sratom",
"buildsystem": "meson",
"cleanup": [
"/include",
"/lib/pkgconfig"
],
"sources": [
{
"type": "archive",
"url": "https://download.drobilla.net/sratom-0.6.14.tar.xz",
"sha256": "9982faf40db83aedd9b3850e499fecd6852b8b4ba6dede514013655cffaca1e6"
}
],
"post-install": [
"install -Dm644 -t $FLATPAK_DEST/share/licenses/sratom ../COPYING"
]
}
],
"sources": [
{
"type": "archive",
"url": "https://download.drobilla.net/lilv-0.24.20.tar.xz",
"sha256": "4fb082b9b8b286ea92bbb71bde6b75624cecab6df0cc639ee75a2a096212eebc"
}
],
"post-install": [
"install -Dm644 -t $FLATPAK_DEST/share/licenses/lilv ../COPYING"
],
"cleanup": [
"/bin",
"/etc",
"/include",
"/lib/pkgconfig",
"/share/man"
]
}

View file

@ -0,0 +1,57 @@
{
"name": "lrdf",
"rm-configure": true,
"cleanup": [
"/include",
"/lib/pkgconfig",
"*.so",
"*.la",
"/share/man"
],
"config-opts": [
"--disable-static"
],
"modules": [
"ladspa.json",
{
"name": "raptor2",
"cleanup": [
"/include",
"/lib/pkgconfig",
"*.la",
"/share/gtk-doc",
"*.so",
"/share/man"
],
"config-opts": [
"--disable-static"
],
"sources": [
{
"type": "archive",
"url": "https://download.librdf.org/source/raptor2-2.0.16.tar.gz",
"sha256": "089db78d7ac982354bdbf39d973baf09581e6904ac4c92a98c5caadb3de44680"
},
{
"type": "patch",
"path": "patches/raptor-libxml.patch"
}
]
}
],
"sources": [
{
"type": "archive",
"url": "https://github.com/swh/LRDF/tarball/0.5.0",
"dest-filename": "swh-LRDF-0.5.0-0-g7ebc032.tar.gz",
"sha256": "013002b91ef209827fe99552b8c7f0b569cddb3d6f1439bedbd8bafe1956a93c"
},
{
"type": "script",
"commands": [
"autoreconf -fiv"
],
"dest-filename": "autogen.sh"
}
]
}

View file

@ -0,0 +1,21 @@
{
"name": "lv2",
"buildsystem": "meson",
"cleanup": [
"/bin",
"/include",
"/lib/pkgconfig",
"/share"
],
"sources": [
{
"type": "archive",
"url": "https://lv2plug.in/spec/lv2-1.18.10.tar.xz",
"sha256": "78c51bcf21b54e58bb6329accbb4dae03b2ed79b520f9a01e734bd9de530953f"
}
],
"post-install": [
"install -Dm644 -t $FLATPAK_DEST/share/licenses/lv2 ../COPYING",
"ln -sf lv2.pc $FLATPAK_DEST/lib/pkgconfig/lv2core.pc"
]
}

View file

@ -0,0 +1,10 @@
--- lash-1.0.pc.in~ 2007-10-07 06:33:27.000000000 -0700
+++ lash-1.0.pc.in 2007-10-07 06:35:00.000000000 -0700
@@ -7,6 +7,5 @@
Description: Audio session management
Requires: @PC_REQUIRES@
Version: @PACKAGE_VERSION@
-Libs: -llash
-Libs.static: -lpthread -luuid
+Libs: -llash -lpthread -luuid
Cflags: -I${includedir}/lash-1.0

View file

@ -0,0 +1,11 @@
--- configure.ac 2007-11-14 16:58:51.000000000 -0500
+++ configure.ac.new 2019-01-24 13:48:46.284377086 -0500
@@ -2,7 +2,7 @@
AC_CONFIG_SRCDIR([lash/types.h])
AC_CONFIG_HEADER([config.h])
AM_INIT_AUTOMAKE
-AM_ACLOCAL_INCLUDE([m4])
+dnl AM_ACLOCAL_INCLUDE([m4])
### Check for programs ###
AC_LANG([C])

View file

@ -0,0 +1,11 @@
diff -rupN lash-0.5.4.old/liblash/lash.c lash-0.5.4/liblash/lash.c
--- lash-0.5.4.old/liblash/lash.c 2007-03-09 10:34:40.000000000 -0500
+++ lash-0.5.4/liblash/lash.c 2012-07-22 18:17:46.003963521 -0400
@@ -22,6 +22,7 @@
#include <string.h>
#include <strings.h>
#include <pthread.h>
+#include <sys/resource.h>
#include <sys/types.h>
#include <sys/wait.h>
#include <sys/socket.h>

View file

@ -0,0 +1,90 @@
diff -rupN lash-0.5.4.old/clients/control/Makefile.am lash-0.5.4/clients/control/Makefile.am
--- lash-0.5.4.old/clients/control/Makefile.am 2007-01-13 13:20:03.000000000 -0500
+++ lash-0.5.4/clients/control/Makefile.am 2010-02-10 03:08:04.000000000 -0500
@@ -18,6 +18,6 @@ lash_control_CFLAGS = $(LASH_CFLAGS)
lash_control_LDADD = \
$(top_builddir)/liblash/liblash.la \
- $(LASH_LIBS) @READLINE_LIBS@
+ $(LASH_LIBS) @READLINE_LIBS@ -luuid
endif
diff -rupN lash-0.5.4.old/clients/control/Makefile.in lash-0.5.4/clients/control/Makefile.in
--- lash-0.5.4.old/clients/control/Makefile.in 2007-11-14 17:00:09.000000000 -0500
+++ lash-0.5.4/clients/control/Makefile.in 2010-02-10 03:09:26.000000000 -0500
@@ -236,7 +236,7 @@ AM_CPPFLAGS = -I$(top_srcdir)
@HAVE_READLINE_TRUE@lash_control_CFLAGS = $(LASH_CFLAGS)
@HAVE_READLINE_TRUE@lash_control_LDADD = \
@HAVE_READLINE_TRUE@ $(top_builddir)/liblash/liblash.la \
-@HAVE_READLINE_TRUE@ $(LASH_LIBS) @READLINE_LIBS@
+@HAVE_READLINE_TRUE@ $(LASH_LIBS) @READLINE_LIBS@ -luuid
all: all-am
diff -rupN lash-0.5.4.old/clients/panel/Makefile.am lash-0.5.4/clients/panel/Makefile.am
--- lash-0.5.4.old/clients/panel/Makefile.am 2005-09-13 01:22:59.000000000 -0400
+++ lash-0.5.4/clients/panel/Makefile.am 2010-02-10 03:17:10.000000000 -0500
@@ -13,7 +13,7 @@ lash_panel_CFLAGS = \
lash_panel_LDADD = \
$(top_builddir)/liblash/liblash.la \
- $(GTK2_LIBS)
+ $(GTK2_LIBS) -luuid
if HAVE_GTK2
bin_PROGRAMS = lash_panel
diff -rupN lash-0.5.4.old/clients/panel/Makefile.in lash-0.5.4/clients/panel/Makefile.in
--- lash-0.5.4.old/clients/panel/Makefile.in 2007-11-14 17:00:09.000000000 -0500
+++ lash-0.5.4/clients/panel/Makefile.in 2010-02-10 03:17:23.000000000 -0500
@@ -230,7 +230,7 @@ lash_panel_CFLAGS = \
lash_panel_LDADD = \
$(top_builddir)/liblash/liblash.la \
- $(GTK2_LIBS)
+ $(GTK2_LIBS) -luuid
all: all-am
diff -rupN lash-0.5.4.old/clients/synth/Makefile.am lash-0.5.4/clients/synth/Makefile.am
--- lash-0.5.4.old/clients/synth/Makefile.am 2005-09-13 01:22:59.000000000 -0400
+++ lash-0.5.4/clients/synth/Makefile.am 2010-02-10 03:22:39.000000000 -0500
@@ -20,4 +20,4 @@ lash_synth_LDADD = \
$(JACK_LIBS) \
$(ALSA_LIBS) \
$(GTK2_LIBS) \
- -lpthread
+ -lpthread -lm
diff -rupN lash-0.5.4.old/clients/synth/Makefile.in lash-0.5.4/clients/synth/Makefile.in
--- lash-0.5.4.old/clients/synth/Makefile.in 2007-11-14 17:00:10.000000000 -0500
+++ lash-0.5.4/clients/synth/Makefile.in 2010-02-10 03:22:51.000000000 -0500
@@ -238,7 +238,7 @@ lash_synth_LDADD = \
$(JACK_LIBS) \
$(ALSA_LIBS) \
$(GTK2_LIBS) \
- -lpthread
+ -lpthread -lm
all: all-am
diff -rupN lash-0.5.4.old/lashd/Makefile.am lash-0.5.4/lashd/Makefile.am
--- lash-0.5.4.old/lashd/Makefile.am 2006-09-16 16:27:46.000000000 -0400
+++ lash-0.5.4/lashd/Makefile.am 2010-07-23 15:13:59.000000000 -0400
@@ -32,6 +32,7 @@ lashd_LDADD = \
$(ALSA_LIBS) \
$(XML2_LIBS) \
$(UUID_LIBS) \
+ -lpthread \
$(top_builddir)/liblash/liblash.la
lashd_CFLAGS = \
diff -rupN lash-0.5.4.old/lashd/Makefile.in lash-0.5.4/lashd/Makefile.in
--- lash-0.5.4.old/lashd/Makefile.in 2007-11-14 17:00:10.000000000 -0500
+++ lash-0.5.4/lashd/Makefile.in 2010-07-23 15:14:29.000000000 -0400
@@ -262,6 +262,7 @@ lashd_LDADD = \
$(ALSA_LIBS) \
$(XML2_LIBS) \
$(UUID_LIBS) \
+ -lpthread \
$(top_builddir)/liblash/liblash.la
lashd_CFLAGS = \

View file

@ -0,0 +1,31 @@
From 4dbc4c1da2a033c497d84a1291c46f416a9cac51 Mon Sep 17 00:00:00 2001
From: David Anes <david.anes@suse.com>
Date: Thu, 4 May 2023 11:54:02 +0200
Subject: [PATCH] Remove the access to entities 'checked' private symbol for
libxml2 2.11.0
Since version 2.11.0, some private symbols that were never intended
as public API/ABI have been removed from libxml2, therefore the field
'checked' is no longer present and raptor fails to build in this
scenario.
---
src/raptor_libxml.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/raptor_libxml.c b/src/raptor_libxml.c
index 538c2c8e..8bcee139 100644
--- a/src/raptor_libxml.c
+++ b/src/raptor_libxml.c
@@ -246,10 +246,11 @@ raptor_libxml_getEntity(void* user_data, const xmlChar *name)
ret->owner = 1;
-#if LIBXML_VERSION >= 20627
+#if LIBXML_VERSION >= 20627 && LIBXML_VERSION < 21100
/* Checked field was released in 2.6.27 on 2006-10-25
* http://git.gnome.org/browse/libxml2/commit/?id=a37a6ad91a61d168ecc4b29263def3363fff4da6
*
+ * and was later removed in version 2.11.0
*/
/* Mark this entity as having been checked - never do this again */

View file

@ -0,0 +1,54 @@
INCLUDE_DIR=/app/include
DATA_DIR=/app/share
LIB_DIR=/app/lib
BIN_DIR=/app/bin
install -Dm644 -t $INCLUDE_DIR/stk include/*
install -Dm644 -t $LIB_DIR src/libstk.*
install -Dm644 -t $DATA_DIR/stk/rawwaves rawwaves/*.raw
#cp -pr projects/demo/tcl $DATA_DIR/stk/demo
#cp -pr projects/demo/scores $DATA_DIR/stk/demo
#cp -p projects/demo/demo $BIN_DIR/stk-demo
#cp -p projects/demo/Md2Skini $BIN_DIR/Md2Skini
#for f in Banded Drums Modal Physical Shakers StkDemo Voice ; do
# chmod +x projects/demo/$f
# sed -e 's,\./demo,$BIN_DIR/stk-demo,' -e '1i#! /bin/sh' \
# -i projects/demo/$f
# cp -p projects/demo/$f $DATA_DIR/stk/demo
#done
#cp -pr projects/examples/midifiles $DATA_DIR/stk/examples
#cp -pr projects/examples/rawwaves $DATA_DIR/stk/examples
#cp -pr projects/examples/scores $DATA_DIR/stk/examples
#for f in sine sineosc foursine audioprobe midiprobe duplex play \
# record inetIn inetOut rtsine crtsine bethree controlbee \
# threebees playsmf grains ; do
# cp -p projects/examples/$f $BIN_DIR/stk-$f
# # absolute links, will be shortened later
# ln -s $BIN_DIR/stk-$f $DATA_DIR/stk/examples/$f
#done
install -Dm644 -t $DATA_DIR/stk/effects projects/effects/tcl
install -Dm644 -t $BIN_DIR/stk-effects projects/effects/effects
sed -e 's,\./effects,$BIN_DIR/stk-effects,' -e '1i#! /bin/sh' \
-i projects/effects/StkEffects
install -Dm644 -t $DATA_DIR/stk/effects projects/effects/StkEffects
install -Dm644 -t $DATA_DIR/stk/ragamatic projects/ragamatic/tcl
install -Dm644 -t $DATA_DIR/stk/ragamatic projects/ragamatic/rawwaves
install -Dm644 -t $BIN_DIR/stk-ragamat projects/ragamatic/ragamat
sed -e 's,\./ragamat,$BIN_DIR/stk-ragamat,' -e '1i#! /bin/sh' \
-i projects/ragamatic/Raga
install -Dm644 -t $DATA_DIR/stk/ragamatic projects/ragamatic/Raga
install -Dm644 -t $DATA_DIR/stk/eguitar projects/eguitar/tcl
install -Dm644 -t $DATA_DIR/stk/eguitar projects/eguitar/scores
install -Dm644 -t $BIN_DIR/stk-eguitar projects/eguitar/eguitar
sed -e 's,\./eguitar,$BIN_DIR/stk-eguitar,' -e '1i#! /bin/sh' \
-i projects/eguitar/ElectricGuitar
install -Dm644 -t $DATA_DIR/stk/eguitar projects/eguitar/ElectricGuitar

View file

@ -0,0 +1,28 @@
{
"name": "stk",
"build-commands": [
"make -j $FLATPAK_BUILDER_N_JOBS -C src",
"make -j $FLATPAK_BUILDER_N_JOBS -C projects/effects libeffects",
"make -j $FLATPAK_BUILDER_N_JOBS -C projects/ragamatic libragamat",
"make -j $FLATPAK_BUILDER_N_JOBS -C projects/eguitar libeguitar"
],
"post-install": [
"sh ./stk-install.sh"
],
"cleanup": [
"/bin/*",
"/include",
"*.a"
],
"sources": [
{
"type": "archive",
"url": "http://ccrma.stanford.edu/software/stk/release/stk-4.6.1.tar.gz",
"sha256": "e77ba3c80cdd93ca02c34098b9b7f918df3d648c87f1ed5d94fe854debd6d101"
},
{
"type": "file",
"path": "patches/stk-install.sh"
}
]
}

View file

@ -0,0 +1,43 @@
diff -ur lua-5.1.4/src/Makefile lua-5.1.4-new/src/Makefile
--- lua-5.1.4/src/Makefile 2008-01-19 20:37:58.000000000 +0100
+++ lua-5.1.4-new/src/Makefile 2012-02-23 18:26:43.000000000 +0100
@@ -23,6 +23,7 @@
PLATS= aix ansi bsd freebsd generic linux macosx mingw posix solaris
LUA_A= liblua.a
+LUA_SO= liblua.so
CORE_O= lapi.o lcode.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o lmem.o \
lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o ltm.o \
lundump.o lvm.o lzio.o
@@ -36,7 +37,7 @@
LUAC_O= luac.o print.o
ALL_O= $(CORE_O) $(LIB_O) $(LUA_O) $(LUAC_O)
-ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T)
+ALL_T= $(LUA_A) $(LUA_SO) $(LUA_T) $(LUAC_T)
ALL_A= $(LUA_A)
default: $(PLAT)
@@ -51,6 +52,11 @@
$(AR) $@ $?
$(RANLIB) $@
+$(LUA_SO): $(CORE_O) $(LIB_O)
+ $(CC) -shared -ldl -Wl,-soname,$(LUA_SO).$(V) -o $@.$(R) $? -lm $(MYLDFLAGS)
+ ln -sf $(LUA_SO).$(R) $(LUA_SO).$(V)
+ ln -sf $(LUA_SO).$(R) $(LUA_SO)
+
$(LUA_T): $(LUA_O) $(LUA_A)
$(CC) -o $@ $(MYLDFLAGS) $(LUA_O) $(LUA_A) $(LIBS)
--- lua-5.1.4/Makefile 2008-08-12 02:40:48.000000000 +0200
+++ lua-5.1.4-new/Makefile 2012-02-23 19:06:32.000000000 +0100
@@ -53,7 +53,7 @@
all: $(PLAT)
$(PLATS) clean:
- cd src && $(MAKE) $@
+ cd src && $(MAKE) $@ V=$(V) R=$(R)
test: dummy
src/lua test/hello.lua

View file

@ -0,0 +1,38 @@
{
"name": "lua-5.1",
"buildsystem": "simple",
"build-commands": [
"make -j $FLATPAK_BUILDER_N_JOBS CFLAGS=\"$CFLAGS -fPIC -DLUA_USE_LINUX\" linux",
"make INSTALL_TOP=$FLATPAK_DEST TO_LIB='liblua.a liblua.so.5.1.5' install",
"ln -sf liblua.so.5.1.5 $FLATPAK_DEST/lib/liblua.so",
"ln -sf liblua.so.5.1.5 $FLATPAK_DEST/lib/liblua.so.5.1",
"install -Dm0644 etc/lua.pc $FLATPAK_DEST/lib/pkgconfig/lua.pc",
"ln -sf lua.pc $FLATPAK_DEST/lib/pkgconfig/lua51.pc",
"ln -sf lua.pc $FLATPAK_DEST/lib/pkgconfig/lua5.1.pc",
"ln -sf lua.pc $FLATPAK_DEST/lib/pkgconfig/lua-5.1.pc"
],
"sources": [
{
"type": "archive",
"url": "https://www.lua.org/ftp/lua-5.1.5.tar.gz",
"sha256": "2640fc56a795f29d28ef15e13c34a47e223960b0240e8cb0a82d9b0738695333"
},
{
"type": "patch",
"path": "lua-5.1.5-so.patch"
},
{
"type": "shell",
"commands": [
"sed -i \"s|/usr/local|$FLATPAK_DEST|\" etc/lua.pc src/luaconf.h"
]
}
],
"cleanup": [
"*.a",
"/bin",
"/include",
"/lib/pkgconfig",
"/man"
]
}

View file

@ -0,0 +1,46 @@
{
"name": "lua-5.3",
"buildsystem": "simple",
"build-commands": [
"make -j $FLATPAK_BUILDER_N_JOBS CFLAGS=\"$CFLAGS -fPIC -DLUA_USE_LINUX\" linux",
"make TO_LIB=liblua.so.5.3.5 INSTALL_TOP=$FLATPAK_DEST install",
"ln -sf liblua.so.5.3.5 $FLATPAK_DEST/lib/liblua.so",
"ln -sf liblua.so.5.3.5 $FLATPAK_DEST/lib/liblua.so.5.3",
"make INSTALL_TOP=${FLATPAK_DEST} pc > lua.pc",
"cat lua.pc.in >> lua.pc",
"install -Dm644 lua.pc $FLATPAK_DEST/lib/pkgconfig/lua.pc",
"ln -sf lua.pc $FLATPAK_DEST/lib/pkgconfig/lua53.pc",
"ln -sf lua.pc $FLATPAK_DEST/lib/pkgconfig/lua5.3.pc",
"ln -sf lua.pc $FLATPAK_DEST/lib/pkgconfig/lua-5.3.pc"
],
"sources": [
{
"type": "archive",
"url": "https://www.lua.org/ftp/lua-5.3.5.tar.gz",
"sha256": "0c2eed3f960446e1a3e4b9a1ca2f3ff893b6ce41942cf54d5dd59ab4b3b058ac"
},
{
"type": "patch",
"path": "makefile-add-liblua.so-rule.patch"
},
{
"type": "file",
"path": "lua.pc.in"
},
{
"type": "shell",
"commands": [
"sed -i \"s|/usr/local/|$FLATPAK_DEST/|;s|LUA_IDSIZE 60|LUA_IDSIZE 512|\" src/luaconf.h",
"# Lua 5.3.5 has wrong release version in its Makefile. Fix it.",
"sed 's/^R= \$V.4/R= \$V.5/' -i Makefile",
"sed -i '12 a\\\\n#define LUA_COMPAT_5_1\\n#define LUA_COMPAT_5_2' src/luaconf.h"
]
}
],
"cleanup": [
"/bin",
"/include",
"/lib/pkgconfig",
"/man"
]
}

View file

@ -0,0 +1,8 @@
exec_prefix=${prefix}
Name: Lua
Description: An Extensible Extension Language
Version: ${version}
Requires:
Libs: -L${libdir} -llua -lm
Cflags: -I${includedir}

View file

@ -0,0 +1,47 @@
diff --git a/Makefile b/Makefile
index 7fa91c8..dccf485 100644
--- a/Makefile
+++ b/Makefile
@@ -52,7 +52,7 @@ R= $V.0
all: $(PLAT)
$(PLATS) clean:
- cd src && $(MAKE) $@
+ cd src && $(MAKE) $@ V=$(V) R=$(R)
test: dummy
src/lua -v
diff --git a/src/Makefile b/src/Makefile
index 2e7a412..fa5769f 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -29,6 +29,7 @@ MYOBJS=
PLATS= aix bsd c89 freebsd generic linux macosx mingw posix solaris
LUA_A= liblua.a
+LUA_SO= liblua.so
CORE_O= lapi.o lcode.o lctype.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o \
lmem.o lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o \
ltm.o lundump.o lvm.o lzio.o
@@ -43,7 +44,7 @@ LUAC_T= luac
LUAC_O= luac.o
ALL_O= $(BASE_O) $(LUA_O) $(LUAC_O)
-ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T)
+ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T) $(LUA_SO)
ALL_A= $(LUA_A)
# Targets start here.
@@ -59,6 +60,12 @@ $(LUA_A): $(BASE_O)
$(AR) $@ $(BASE_O)
$(RANLIB) $@
+$(LUA_SO): $(CORE_O) $(LIB_O)
+ $(CC) -shared -ldl -Wl,-soname,$(LUA_SO).$(V) -o $@.$(R) $? -lm $(MYLDFLAGS)
+ ln -sf $(LUA_SO).$(R) $(LUA_SO).$(V)
+ ln -sf $(LUA_SO).$(R) $(LUA_SO)
+
+
$(LUA_T): $(LUA_O) $(LUA_A)
$(CC) -o $@ $(LDFLAGS) $(LUA_O) $(LUA_A) $(LIBS)

Some files were not shown because too many files have changed in this diff Show more