Compare commits

...

304 commits

Author SHA1 Message Date
tobtoht
f73940891a
depends: qt: update to 6.9.0 2025-04-03 10:05:33 +02:00
tobtoht
c97dbbba98
guix: add workarounds for distro issues 2025-04-01 16:23:42 +02:00
tobtoht
e9df4a9fcb
revuo: add separator between section 2025-04-01 10:42:30 +02:00
tobtoht
3c7d768f08
guix: explicitely enable CET 2025-03-31 15:11:15 +02:00
tobtoht
d6a87ea85a
release: bump version to 2.8.0 2025-03-28 10:02:30 +01:00
tobtoht
ab4f0fa02e
update monero submodule for v0.18.4.0 [2] 2025-03-28 06:43:12 +01:00
tobtoht
424edf07e8
wizard: cleanup main menu 2025-03-28 06:29:08 +01:00
tobtoht
82212f4982
cmake: remove feather-config.h 2025-03-27 11:28:33 +01:00
tobtoht
2f0bccf124
cmake: update copyright year 2025-03-27 11:09:10 +01:00
tobtoht
0784092697
assets: add some shoutouts 2025-03-27 09:32:39 +01:00
tobtoht
95c8b494f4
ui: consistent search placeholder 2025-03-27 09:24:00 +01:00
tobtoht
9e39482fbb
ui: consistent layout spacing between search bar 2025-03-27 09:20:18 +01:00
tobtoht
ce2f332114
subaddress: cleanup 2025-03-27 09:17:38 +01:00
tobtoht
45f3d89dd3
contacts: move import/export to tool button 2025-03-27 06:06:13 +01:00
tobtoht
b27d724a5b
depends: qt: update to 6.8.3 2025-03-27 04:26:59 +01:00
tobtoht
fea39b1929
subaddress: ensure at least one unused subaddress is available 2025-03-26 16:00:31 +01:00
tobtoht
d68e327178
menu: make view tabs checkable 2025-03-26 10:16:31 +01:00
tobtoht
19b78b9c70
add notes tab 2025-03-26 10:06:48 +01:00
tobtoht
480ebc29ba
remove references to lemmy 2025-03-26 07:42:41 +01:00
tobtoht
c51671fb6c
Send: clarify pay to options 2025-03-26 07:28:14 +01:00
tobtoht
69419171b7
move contacts to separate tab 2025-03-26 07:21:01 +01:00
tobtoht
1a402d2a05
ci: add macos build 2025-03-26 06:08:36 +01:00
tobtoht
cdc7918825
history: add options button 2025-03-26 05:51:46 +01:00
tobtoht
48cc0f0aad
wallet: clear coin control on account switch 2025-03-26 05:20:48 +01:00
tobtoht
2b347c3ef2
ci: add signpath 2025-03-25 18:05:40 +01:00
tobtoht
f3eabe3245
update monero submodule for v0.18.4.0 2025-03-25 05:51:11 +01:00
tobtoht
ce95959c1d
tails: write to persistent storage for system packages 2025-03-24 09:55:38 +01:00
tobtoht
7da4e90593
depends: expat: update to 2.7.0 2025-03-24 07:00:10 +01:00
tobtoht
df44ecf98e
depends: libxkbcommon: update to 1.8.1 2025-03-24 06:34:24 +01:00
tobtoht
249183f0c1
seed: check legacy checksum 2025-03-24 05:50:32 +01:00
tobtoht
897afaaabb
remove prestium integration 2025-03-18 15:31:05 +01:00
tobtoht
2a9af40ece
Tails: persist desktop entry 2025-03-18 13:53:19 +01:00
tobtoht
45ea707c0c
getAddressSafe: check torsion 2025-03-18 10:11:33 +01:00
tobtoht
c34ad819a6
AddressChecker: add torsion check 2025-03-18 08:35:02 +01:00
tobtoht
1c6bd9815b
mining: add deprecation notice 2025-03-18 08:34:56 +01:00
tobtoht
0c4aa8c1fb
Merge pull request from sorenstoutner/CRLF
Convert CRLF files to LF.
2025-03-18 05:33:11 +00:00
Soren Stoutner
ddbfa46a87 Convert CRLF files to LF. 2025-03-17 21:21:13 -07:00
tobtoht
003009d607
TransactionHistory: remove unused function 2025-03-12 21:06:22 +01:00
tobtoht
e25c315226
Coins: remove redundant functions 2025-03-12 21:01:18 +01:00
tobtoht
de499b2386
Coins: remove unused function 2025-03-12 14:34:22 +01:00
tobtoht
c5aef15bb0
Receive: don't refresh model on new block 2025-03-12 14:23:39 +01:00
tobtoht
2c5f766a7b
libwalletqt: cleanup 2025-03-12 11:23:03 +01:00
tobtoht
4f28d83ac3
History: cleanup 2025-03-12 10:04:33 +01:00
tobtoht
1219bfc3a7
Ring/Transfer: cleanup 2025-03-11 22:53:19 +01:00
tobtoht
f7d11e8ffe
Coins: add tool button 2025-03-11 22:05:39 +01:00
tobtoht
c5f010bd3c
Coins: cleanup 2025-03-11 21:45:38 +01:00
tobtoht
4aa571454b
Subaddress: cleanup 2025-03-11 20:45:34 +01:00
tobtoht
c10190ea2e
SubaddressAccount: cleanup 2025-03-11 16:05:43 +01:00
tobtoht
de37f9a8b7
AddressBook: cleanup 2025-03-11 15:21:09 +01:00
tobtoht
055b898c85
history: rework csv export 2025-03-05 13:21:57 +01:00
tobtoht
4bcd397aad
receive: fix pinned address sort 2025-03-04 20:18:47 +01:00
tobtoht
2e344cfa94
send: add placeholder text 2025-03-04 18:49:33 +01:00
tobtoht
bb1015731f
settings: add option to minimize to tray 2025-03-04 15:31:34 +01:00
tobtoht
e55afe9429
always display restore dates next to restore heights 2025-03-04 14:54:04 +01:00
tobtoht
8f3205d632
PaymentRequest: add fiat conversion 2025-03-04 13:51:49 +01:00
tobtoht
e7a6e4f16a
balance: add fiat balance 2025-03-04 11:01:17 +01:00
tobtoht
88ab38a193
settings: add option to hide tray icon 2025-03-04 10:09:25 +01:00
tobtoht
3fa9240c0b
wizard: improve restore keys error handling 2025-03-04 08:30:15 +01:00
tobtoht
fb0564f7a1
assets: update nodes 2025-03-03 18:19:18 +01:00
tobtoht
c49917f2ae
depends: tor: update to 0.4.8.14 2025-02-24 06:56:17 +01:00
tobtoht
5c8485eac6
depends: remove utf8proc 2025-02-24 06:51:38 +01:00
tobtoht
465576aa5a
guix: clean up manifest 2025-02-23 09:28:05 +01:00
tobtoht
e2f790d86a
guix: remove zig 2025-02-23 08:57:56 +01:00
tobtoht
7559736de0
guix: remove gettext-minimal 2025-02-22 20:56:30 +01:00
tobtoht
841c6812db
depends: remove eudev 2025-02-22 20:28:56 +01:00
tobtoht
a0834cece5
guix: use gcc 13.3.0 2025-02-22 12:03:58 +01:00
tobtoht
e5e7300c39
guix: remove xcb libs 2025-02-22 12:02:29 +01:00
tobtoht
f73efb7e8d
guix: add bison note 2025-02-22 10:55:10 +01:00
tobtoht
e4f7493271
guix: remove autoconf, automake, libtool 2025-02-22 10:43:18 +01:00
tobtoht
649ba5c58a
depends: don't run autoreconf anywhere 2025-02-22 10:43:02 +01:00
tobtoht
fad3eb259c
depends: libusb: build with cmake 2025-02-22 09:10:29 +01:00
tobtoht
e84661f758
guix: clean up manifest 2025-02-22 08:39:04 +01:00
tobtoht
d9aa9a9682
depends: don't use bzip2 2025-02-22 08:38:58 +01:00
tobtoht
673b511a99
ci: disable guix commit authentication 2025-02-22 08:38:51 +01:00
tobtoht
678b0c1133
Merge pull request from stig-atle/master
Update info about building on Redhat 9 based distro
2025-02-22 04:59:47 +00:00
Stig Atle Steffensen
dbdaff70a5 Update info about building on Redhat 9 based distro 2025-02-21 21:36:44 +01:00
tobtoht
1ba584153f
guix: remove moreutils 2025-02-21 20:55:44 +01:00
tobtoht
dfec4c8da2
guix: remove unused patch 2025-02-21 20:47:54 +01:00
tobtoht
2449b44885
guix: fix verify script 2025-02-21 20:26:37 +01:00
tobtoht
51ea7e381a
guix: update docs 2025-02-21 20:24:30 +01:00
tobtoht
e6967fa9d2
ci: inline guix apparmor workaround 2025-02-21 20:13:00 +01:00
tobtoht
1b8761f3cb
ci: containerize ubuntu build 2025-02-21 20:11:24 +01:00
tobtoht
a84c552d43
ci: add arch linux build 2025-02-21 20:09:05 +01:00
tobtoht
078bcc29bd
depends: zstd: update to 1.5.7 2025-02-21 19:23:49 +01:00
tobtoht
7fd116b725
guix: set repo to monero-project/guix 2025-02-21 13:00:51 +01:00
tobtoht
22ce2011a7
guix: remove githash.txt 2025-02-21 12:59:03 +01:00
tobtoht
e66886832a
config: remove melo.tools block explorer 2025-02-21 12:54:04 +01:00
tobtoht
cc693a33cb
readme: add signpath 2025-02-21 10:22:02 +01:00
tobtoht
13daf73c03
build: set -DOFFICIAL_BUILD 2025-02-21 10:07:59 +01:00
tobtoht
8adbf7eaad
cmake: remove GenVersion.cmake 2025-02-21 09:06:15 +01:00
tobtoht
280a7db065
cmake: remove Version.cmake 2025-02-21 09:02:33 +01:00
tobtoht
7992d7be9b
macos: fix Tor startup 2025-02-21 08:57:11 +01:00
tobtoht
dff4752e82
update copyright for 2025 2025-02-20 18:52:03 +01:00
tobtoht
c47314d99d
build: macos codesigning 2025-02-20 18:38:56 +01:00
tobtoht
f447b78f4a
MainWindow: improve tx history export error handling 2025-02-16 11:52:59 +01:00
tobtoht
6a9a564664
TxConfAdv: fix setting description 2025-02-16 11:18:30 +01:00
tobtoht
3973b1ece7
flatpak: fix icons on wayland 2025-02-16 09:38:49 +01:00
tobtoht
244121b124
update monero submodule for v0.18.3.4 2025-02-15 08:00:29 +01:00
tobtoht
078d19dbd8
depends: native_libffi: update to 3.4.7 2025-02-15 07:29:11 +01:00
tobtoht
c667f0c5be
depends: abseil: update to 20250127.0 2025-02-13 12:13:00 +01:00
tobtoht
d0b6ac1364
depends: libxkbcommon: update to 1.8.0 2025-02-13 12:04:33 +01:00
tobtoht
bad9544bbc
depends: libffi: fix hash 2025-02-13 11:50:22 +01:00
tobtoht
f84ec87b9e
depends: libffi: update to 3.4.7 2025-02-13 11:48:48 +01:00
tobtoht
5fae2a2b25
depends: libzip: update to 1.11.3 2025-02-13 11:47:06 +01:00
tobtoht
177e390f4a
depends: openssl: update to 3.4.1 2025-02-12 04:06:08 +01:00
tobtoht
7827b865b1
depends: qt: update to 6.8.2 2025-02-04 07:46:36 +01:00
tobtoht
019d87c5a6
guix: add missing patch 2024-12-20 23:24:32 +01:00
tobtoht
41d6fdbf69
guix: macos: use clang-toolchain-18 2024-12-20 15:18:36 +01:00
tobtoht
9cac42e556
guix: macos: replace ldid with python-signapple 2024-12-20 14:54:03 +01:00
tobtoht
6ed5ed23a5
build: macos: replace bind_at_load with fixup_chains 2024-12-20 14:50:58 +01:00
tobtoht
f423059b30
ledger: show reconnect dialog if ledger is locked during sync 2024-12-19 00:37:01 +01:00
tobtoht
1e3bc6615c
Revert "guix: bump time-machine to 6c86ae62a0ea12e49eddaa3b541340d1ec8e56a2"
This reverts commit e2138d4755.
2024-12-18 23:02:33 +01:00
tobtoht
cd51bc72d7
receive: hide address as soon as its use is detected in the tx pool 2024-12-18 19:10:10 +01:00
tobtoht
147e8c04f6
AccountSwitcherDialog: don't select account on opening 2024-12-18 18:35:19 +01:00
tobtoht
117c6b9763
monero: Replace in-tree MD5 with OpenSSL 2024-12-18 16:54:02 +01:00
tobtoht
e2138d4755
guix: bump time-machine to 6c86ae62a0ea12e49eddaa3b541340d1ec8e56a2 2024-12-18 02:51:28 +01:00
tobtoht
2e20526e03
Revert "readme: add signpath"
This reverts commit 1ec55e148d.
2024-12-18 02:22:28 +01:00
tobtoht
03dbd9628c
Revert "ci: integrate signpath"
This reverts commit c033718956.

Revert until the SignPath GitHub app does not require admin
permissions.
2024-12-18 02:19:52 +01:00
tobtoht
5a5602e288
depends: libXau: update to 1.0.12 2024-12-17 23:41:43 +01:00
tobtoht
f17c92df84
depends: minor fixes 2024-12-17 22:25:53 +01:00
tobtoht
efc0546600
depends: protobuf: update to 29.1 2024-12-07 18:25:26 +01:00
tobtoht
3aa0985425
depends: libzip: update to 1.11.2 2024-12-07 18:16:56 +01:00
tobtoht
3649147ae6
depends: libffi: update to 3.4.6 2024-12-07 18:16:40 +01:00
tobtoht
b808324469
depends: native_expat: update to 2.6.4 2024-12-07 18:00:07 +01:00
tobtoht
375c6dbe52
depends: qt: update to 6.8.1 2024-12-07 17:57:46 +01:00
tobtoht
758af9f0ef
polyseed: update submodule 2024-11-13 15:13:57 +01:00
tobtoht
2c040099a0
monero: remove unneeded libraries 2024-11-13 12:37:13 +01:00
tobtoht
c48e6adf3a
Merge pull request from sorenstoutner/icons
Install all app icon sizes on Linux.
2024-11-13 11:02:00 +00:00
Soren Stoutner
f223034aef Install all app icon sizes on Linux. 2024-11-12 21:49:04 -07:00
tobtoht
c403d80779
Merge pull request from sorenstoutner/typos
Fix typos.
2024-11-12 11:37:23 +00:00
Soren Stoutner
765bdb1f2c Fix typos. 2024-11-11 17:34:56 -07:00
tobtoht
d8aa157565
Merge pull request from sorenstoutner/keywords
Add .desktop file keywords entries.
2024-11-09 16:15:43 +00:00
Soren Stoutner
e475bebe2f Add .desktop file keywords entries. 2024-11-09 09:12:59 -07:00
tobtoht
53e9465d42
Merge pull request from sorenstoutner/appstream
Add an AppStream MetaInfo file.
2024-11-09 11:17:46 +00:00
Soren Stoutner
672b4644c0 Add an AppStream MetaInfo file. 2024-11-08 16:53:38 -07:00
tobtoht
b26d1d0dee
depends: expat: update to 2.6.4 2024-11-07 18:33:15 +01:00
tobtoht
725ad63210
build: add make convenience wrapper for guix scripts 2024-11-04 18:19:56 +01:00
tobtoht
d877523cce
build: windows codesigning 2024-11-04 17:29:03 +01:00
tobtoht
c033718956
ci: integrate signpath 2024-11-04 14:35:48 +01:00
tobtoht
1ec55e148d
readme: add signpath 2024-11-04 13:58:55 +01:00
tobtoht
48f3ef4c3e
flatpak: fix socket permissions for wayland 2024-11-03 19:58:24 +01:00
tobtoht
6fe43167a9
ci: use explicit ubuntu version 2024-11-03 19:55:34 +01:00
tobtoht
a3d36c6122
ci: fix ubuntu dependencies 2024-11-03 19:49:48 +01:00
tobtoht
91cfdd6df8
build: wayland support 2024-11-03 17:42:34 +01:00
tobtoht
0195bdc59c
guix: fix riscv64-linux-gnu build 2024-11-03 01:17:05 +01:00
tobtoht
1df5842ea3
guix: bump time-machine to 639f79952e51a58b7fbca2a826dcc3df162300c1 2024-11-03 00:04:46 +01:00
tobtoht
fe6cdf8d63
build: drop i686-linux-gnu target 2024-11-02 23:31:21 +01:00
tobtoht
06a34c6612
depends: qt: update to 6.8.0 2024-11-02 19:58:13 +01:00
tobtoht
3b9412fece
guix: use llvm17 toolchain for macos 2024-11-02 18:55:52 +01:00
tobtoht
6561b6d979
depends: tor_linux: update to 0.4.8.13 2024-10-28 13:46:35 +01:00
tobtoht
60124a6b44
main: don't attempt to restart on crash 2024-10-28 13:36:53 +01:00
tobtoht
8a2326089e
depends: protobuf: update to 28.3 2024-10-25 00:00:33 +02:00
tobtoht
e50a764937
readme: fix typo 2024-10-24 01:20:59 +02:00
tobtoht
08462f54c0
cmake: fix macos build issue 2024-10-24 01:11:12 +02:00
tobtoht
eb483f33ec
depends: openssl: update to 3.4.0 2024-10-23 19:40:12 +02:00
tobtoht
d4b5153093
depends: unbound: update to 1.22.0 2024-10-18 15:05:05 +02:00
tobtoht
c48726d7a3
guix: add osslsigncode 2024-10-17 22:39:50 +02:00
tobtoht
9d9413c4cc
ci: fix ref_name 2024-10-17 21:32:34 +02:00
tobtoht
9fde18717d
ci: get tag for tag build 2024-10-17 20:59:19 +02:00
tobtoht
534649a0af
ci: don't run virustotal scan if key is missing [2] 2024-10-17 14:01:00 +02:00
tobtoht
4330a18464
ci: don't run virustotal scan if key is missing 2024-10-17 13:38:58 +02:00
tobtoht
849269f53f
wizard: don't add space if there is already one, never insert tab 2024-10-14 23:56:11 +02:00
tobtoht
5acbd9a20f
wizard: add space when autocompleting words 2024-10-14 22:46:59 +02:00
tobtoht
2707a26d3c
guix: update mingw-w64 to 12.0.0 2024-10-11 11:24:13 +02:00
tobtoht
fdc7a09c6c
coins: don't refresh for each freeze/thaw 2024-10-10 14:22:47 +02:00
tobtoht
796d4dd3f0
send: fix uri handling from scanned QR code 2024-10-10 14:03:46 +02:00
tobtoht
c2b5c051da
crowdfunding: update magic grants url 2024-10-09 22:51:45 +02:00
tobtoht
d1f4dfb0b8
DocsDialog: don't close on pressing enter 2024-10-09 19:52:23 +02:00
tobtoht
1ac76ddcee
wizard: menu: auto-focus next button 2024-10-09 19:47:21 +02:00
tobtoht
52546c5660
updater: fix status text 2024-10-09 19:14:59 +02:00
tobtoht
2e91a0dc9f
update MAINTENANCE.md 2024-10-09 15:46:51 +02:00
tobtoht
130432fd23
SECURITY.md: add clarification on binary exploitation 2024-10-08 19:15:55 +02:00
tobtoht
c600e4d376
release: bump version to 2.7.0 2024-10-07 21:19:28 +02:00
tobtoht
78c4aac58a
update feather-docs submodule 2024-10-07 21:16:12 +02:00
tobtoht
8eb8d9fc34
revuo: fix bounds check 2024-10-07 19:15:48 +02:00
tobtoht
90505aaa32
assets: update restore heights 2024-10-07 18:02:00 +02:00
tobtoht
5ddf31a58b
mainwindow: fix hide balance if fiat is enabled 2024-10-07 17:44:01 +02:00
tobtoht
e721e74b6e
mainwindow: improve donation reminder 2024-10-07 17:36:33 +02:00
tobtoht
2f11cf2710
revuo: add upcoming events 2024-10-07 17:22:45 +02:00
tobtoht
6aa661d7ba
history: import descriptions from CSV 2024-10-07 15:34:27 +02:00
tobtoht
b7ef31610e
Revert "build: replace AppImage runtime with UPX" 2024-10-07 04:25:22 +02:00
tobtoht
c14333cdc3
main: fix application name
this is used for config path on windows and macos
2024-10-07 01:51:18 +02:00
tobtoht
ec8d3bff57
windowmanager: properly exit app on close if wallet failed to open 2024-10-07 00:22:12 +02:00
tobtoht
e350af3492
windowmanager: improve error message if cache file can't be read 2024-10-06 23:47:41 +02:00
tobtoht
9a37d4789f
wallet: show notification on mining payment 2024-10-06 22:43:37 +02:00
tobtoht
c355370c0f
guix: fix riscv64 builds, remove squashfs-tools 2024-10-06 21:57:18 +02:00
tobtoht
f3cd346723
build: replace AppImage runtime with UPX 2024-10-06 20:28:19 +02:00
tobtoht
b0a64231b9
txinfo: warn if integrated address is missing 2024-10-06 17:43:02 +02:00
tobtoht
da0d7e7100
settings: add option to show fiat balance in statusbar 2024-10-04 16:08:51 +02:00
tobtoht
00915ee8a0
depends: cleanup toolchain 2024-10-04 15:28:08 +02:00
tobtoht
352ae7fa69
depends: unbound: patch for CVE-2024-8508 2024-10-04 13:31:15 +02:00
tobtoht
19bb1c0d99
README: fix link 2024-10-03 18:16:40 +02:00
tobtoht
5dee7b3e1d
README: fix links, add RSK 2024-10-03 18:08:44 +02:00
tobtoht
eb31fca27e
guix: readme: improve quick setup 2024-10-03 17:57:26 +02:00
tobtoht
0555b6ab54
guix: update readme 2024-10-03 17:43:28 +02:00
tobtoht
0149b0ae9c
guix: readme: add quick setup guide 2024-10-03 17:23:37 +02:00
tobtoht
21315e3334
guix: update README.md 2024-10-03 17:06:42 +02:00
tobtoht
2764cd0cdd
guix: update README.md 2024-10-03 16:39:06 +02:00
tobtoht
7c1f43ce7c
update HACKING.md 2024-10-03 16:28:34 +02:00
tobtoht
bd0d1cfe76
update README.md 2024-10-03 15:22:00 +02:00
tobtoht
39434708d6
remove more unused includes 2024-10-03 01:02:39 +02:00
tobtoht
8deae7398d
build: fix WITH_SCANNER=OFF 2024-10-02 00:06:14 +02:00
tobtoht
8e31b2b5ee
cmake: cleanup linking 2024-10-01 23:25:31 +02:00
tobtoht
8ab420b802
cleanup includes 2024-10-01 22:17:54 +02:00
tobtoht
a1836a64b2
websocket: cleanup before quit 2024-10-01 16:36:47 +02:00
tobtoht
c31b351b17
fix a few memory leaks 2024-10-01 05:47:57 +02:00
tobtoht
37aa04e3e5
firehose application shutdown 2024-10-01 05:45:21 +02:00
tobtoht
4b197dd49c
remove SingleApplication 2024-10-01 04:21:42 +02:00
tobtoht
a53f6d4b2c
main: cleanup argument parsing 2024-10-01 02:17:51 +02:00
tobtoht
23208d98a6
wizard: fix lookahead validation 2024-09-29 22:01:04 +02:00
tobtoht
b64089091c
nodes: add plowsof i2p 2024-09-29 17:58:04 +02:00
tobtoht
17a7ac26d3
build: remove libiconv 2024-09-29 15:27:43 +02:00
tobtoht
ef8db19c94
send: improve split tx error message 2024-09-29 14:38:42 +02:00
tobtoht
cbbc9526a5
wizard: don't enumerate supported devices 2024-09-29 14:28:56 +02:00
tobtoht
2a1ac4afa0
guix: remap guix store on mingw 2024-09-29 13:48:58 +02:00
tobtoht
23d794469f
.gitignore: add cmake-build-release 2024-09-29 13:38:38 +02:00
tobtoht
a6289021a3
cmake: fix find protobuf 2024-09-29 13:00:22 +02:00
tobtoht
70402bb55e
ci: properly format hashes 2024-09-29 12:53:32 +02:00
tobtoht
1a11090962
depends: libfuse: don't build examples 2024-09-29 12:46:38 +02:00
tobtoht
1719df36de
depends: protobuf: fix riscv64 build 2024-09-29 12:41:52 +02:00
tobtoht
9a78ede9d6
cmake: trezor-common no longer exists 2024-09-29 10:49:53 +02:00
tobtoht
6cf0362ae3
depends: protobuf: update to 28.2 2024-09-29 10:20:49 +02:00
tobtoht
0634845cb9
depends: libgcrypt: update to 1.11.0 2024-09-28 19:52:13 +02:00
tobtoht
d600fdbedb
depends: libgpg-error: update to 1.50 2024-09-28 19:16:15 +02:00
tobtoht
f9473dd74f
depends: qt: update to 6.7.3 2024-09-27 12:55:40 +02:00
tobtoht
0ee51777cf
minor edits 2024-09-25 22:52:56 +02:00
tobtoht
325d57cc29
add initial bug bounty program 2024-09-25 19:33:59 +02:00
tobtoht
e4e246fc8a
update MAINTENANCE.md 2024-09-25 13:36:42 +02:00
tobtoht
249e31f5fa
depends: utf8proc: update to 2.9.0 2024-09-25 00:58:07 +02:00
tobtoht
89f40389b1
depends: freetype: update to 2.13.3 2024-09-24 15:25:22 +02:00
tobtoht
90689980de
depends: libxcb_util_cursor: update to 0.1.5 2024-09-24 15:14:36 +02:00
tobtoht
9449552d0e
depends: expat: update to 2.6.3 2024-09-24 14:51:18 +02:00
tobtoht
bb5c855902
depends: libzip: update to 1.11.1 2024-09-24 14:11:46 +02:00
tobtoht
aedb555ceb
wizard: mention official site on menu 2024-09-22 21:19:20 +02:00
tobtoht
d67d54cd6c
nodes: remove dead nodes 2024-09-22 19:12:49 +02:00
tobtoht
26f303ea47
macos: disable SingleApplication 2024-09-22 13:57:43 +02:00
tobtoht
60dde9b9ee
nodes: remove dead i2p nodes, add ofrnxmr 2024-09-21 21:46:19 +02:00
tobtoht
bff194a211
node: consider .local tld local 2024-09-19 14:01:19 +02:00
tobtoht
f9c55f82aa
ci: print hashes, draft release 2024-09-17 16:11:01 +02:00
tobtoht
5453936abd
nodes: remove hashvault 2024-09-05 13:25:45 +02:00
tobtoht
c53f35fc8b
depends: unbound: update to 1.21.0 2024-09-04 18:44:46 +02:00
tobtoht
669bf0caa7
depends: openssl: update to 3.3.2 2024-09-04 16:16:08 +02:00
tobtoht
d245c4d125
coins: send to self should send to current account 2024-09-03 19:58:30 +02:00
tobtoht
ba6113d9c0
ci: add virustotal scan for windows exe 2024-08-16 14:01:58 +02:00
tobtoht
8e991f21b1
flatpak: fix zoneinfo 2024-08-15 22:24:39 +02:00
tobtoht
7c4bffe5dd
contacts: fill description on pay to 2024-08-15 20:12:54 +02:00
tobtoht
f58f8b66a5
release: bump version to 2.6.8 2024-08-14 23:45:01 +02:00
tobtoht
9d234ac458
assets: update restore heights 2024-08-14 23:27:43 +02:00
tobtoht
a204ff9eaa
update monero submodule for v0.18.3.4 2024-08-14 23:02:21 +02:00
tobtoht
288ea37df4
Revert "guix: bump time-machine to 7bf1d7aeaffba15c4f680f93ae88fbef25427252"
This reverts commit 5d9f12a899.

Windows defender hits us with a Trojan:Win32/ClipBanker.GA!MTB
2024-08-14 22:51:25 +02:00
tobtoht
109c378044
depends: qt: patch for CVE-2024-39936 2024-08-14 21:11:53 +02:00
tobtoht
3a5630d3ff
ci: remove ci.guix.gnu.org substitute
Causes 403 forbidden errors on GitHub CI.
2024-08-09 15:44:22 +02:00
tobtoht
719e328a14
ci: purge apparmor 2024-08-09 13:24:47 +02:00
tobtoht
e06e8aaf9b
ci: install apparmor-utils 2024-08-09 13:15:12 +02:00
tobtoht
02ce121029
ci: fix apparmor for 24.04 2024-08-09 13:10:26 +02:00
tobtoht
6a1d5f05c3
ci: bump ubuntu to 24.04 2024-08-09 11:16:23 +02:00
tobtoht
fc30f71170
ci: add substitute server 2024-08-09 10:03:03 +02:00
tobtoht
5d9f12a899
guix: bump time-machine to 7bf1d7aeaffba15c4f680f93ae88fbef25427252 2024-08-09 01:41:53 +02:00
tobtoht
f59ba3f3c9
guix: bump minimum glibc to 2.31 2024-08-08 13:43:05 +02:00
tobtoht
c0a5a549f4
depends: boost: update to 1.85.0 2024-07-02 12:35:27 +02:00
tobtoht
38751587d9
depends: libgpg-error: update to 1.49 2024-06-19 14:14:58 +02:00
tobtoht
f441bd3818
depends: openssl: update to 3.3.1 2024-06-19 13:58:19 +02:00
tobtoht
ba88145b08
depends: tor_linux: update to 0.4.8.12 2024-06-19 13:50:18 +02:00
tobtoht
8ca0c98ced
depends: libsodium: update to 1.0.20 2024-06-19 13:33:27 +02:00
tobtoht
0419546ab8
depends: unbound: update to 1.20.0 2024-06-19 13:06:50 +02:00
tobtoht
14d5ccbc91
depends: qt: update to 6.7.2 2024-06-19 11:59:18 +02:00
tobtoht
db77dba83c
guix: bump timemachine to f0bb724211872cd6158fce6162e0b8c73efed126 2024-06-18 14:47:42 +02:00
tobtoht
fd008c5634
depends: openssl: update to 3.2.2 2024-06-18 14:33:06 +02:00
tobtoht
edac95c346
depends: qt: update to 6.7.1 2024-05-21 12:14:43 +02:00
tobtoht
d375484c2f
windowmanager: store seed attributes immediately 2024-05-08 18:58:29 +02:00
tobtoht
c2701c00dd
plugins: remove reddit 2024-05-07 21:45:57 +02:00
tobtoht
8d814a16b3
plugins: remove localmonero
Thank you Alex for all you've done for the community over the years.
2024-05-07 21:32:08 +02:00
tobtoht
af9d9ddc21
WindowManager: improve wallet cache corruption error handling 2024-05-07 14:40:49 +02:00
tobtoht
87ee96cb9a
wizard: don't allow illegal chars in wallet name 2024-05-03 23:23:15 +02:00
tobtoht
5ba53a3702
send: set pay to many output limit to 15 2024-05-03 21:32:26 +02:00
tobtoht
69977e38b2
windows: fix darkmode 2024-05-03 18:59:35 +02:00
tobtoht
478248f99c
updater: fix button focus 2024-05-03 17:30:40 +02:00
tobtoht
e2eb8e4ed3
send, coins: don't allow tx construction during blockchain sync 2024-05-03 12:15:51 +02:00
tobtoht
8b0013496c
TxPoolViewer: fix sort 2024-05-03 11:34:46 +02:00
tobtoht
9483325a68
settings: fix proxy switch crash 2024-05-03 01:26:03 +02:00
tobtoht
b030c7d032
trezor: re-enable bridge transport, prioritize webusb 2024-05-03 00:14:35 +02:00
tobtoht
7d693d86d5
release: bump version to 2.6.7 2024-04-29 04:37:24 +02:00
tobtoht
26420efbfd
build: fix libgcc_s.so.1 issue 2024-04-29 04:36:06 +02:00
tobtoht
c5b46211b8
fix bounds check 2024-04-29 04:12:20 +02:00
tobtoht
2d609ebad5
release: bump version to 2.6.6 2024-04-28 21:29:07 +02:00
tobtoht
deb9d7ff63
manual input selection, subtract fee from amount 2024-04-28 21:28:09 +02:00
tobtoht
0da98d2003
trezor: disable bridge transport, improve error messages 2024-04-19 13:14:29 +02:00
tobtoht
485913c7fc
depends: libxcb, xcb_proto: update to 1.17.0 2024-04-16 22:08:42 +02:00
tobtoht
91552a48fb
fix crash on exit 2024-04-03 01:50:51 +02:00
tobtoht
e1e7a46b77
contrib: depends: update to 6.7.0 2024-04-02 23:13:56 +02:00
tobtoht
762ba03c8c
depends: xorgproto: update to 2024.1 2024-04-02 12:27:08 +02:00
tobtoht
e721ddade1
Merge pull request from rbrunner7/monero-variables
Make 3 Monero variables more available to the Feather makefile
2024-03-29 17:07:42 +00:00
rbrunner7
402ef14b79 Make 3 Monero variables more available to the Feather makefile 2024-03-29 16:39:56 +01:00
tobtoht
1a8409bd4e
depends: zstd: update to 1.5.6 2024-03-27 12:49:47 +01:00
tobtoht
9dd4404111
depends: libxkbcommon: update to 1.7.0 2024-03-26 14:00:54 +01:00
tobtoht
4f49d75eda
wallet: don't require device interaction for getAddressSafe 2024-03-23 23:16:57 +01:00
tobtoht
72941f517c
guix: bump time-machine (2024-03-12) 2024-03-23 23:00:45 +01:00
tobtoht
007933f2e0
guix: remove unused patch 2024-03-19 09:17:51 +01:00
tobtoht
41aebef145
guix: fix flatpak sha256sums.part 2024-03-19 09:08:03 +01:00
tobtoht
918aee140e
remove references to cryptonote 2024-03-18 22:49:05 +01:00
tobtoht
aca3f064f3
guix: use gcc 12.3.0 for linux, windows targets 2024-03-18 13:10:30 +01:00
tobtoht
113fcb00bd
depends: unbound: update to 1.19.3 2024-03-14 13:23:32 +01:00
tobtoht
92207b2e15
depends: expat: update to 2.6.2 2024-03-14 13:22:34 +01:00
tobtoht
64e77d397e
guix: temp fix attest script for flatpak 2024-03-13 20:36:44 +01:00
563 changed files with 8243 additions and 8098 deletions
.github/workflows
.gitignore.gitmodulesCMakeLists.txtHACKING.mdLICENSEMAINTENANCE.mdMakefileREADME.mdSECURITY.md
cmake
contrib
depends
flatpak/icons/gnome

View file

@ -4,21 +4,59 @@ on: [push, pull_request]
jobs:
build-ubuntu-without-scanner:
name: "Ubuntu 24.04 (no scanner)"
runs-on: ubuntu-latest
container:
image: ubuntu:24.04
steps:
- name: update apt
run: apt update
- name: install dependencies
run: apt -y install git cmake build-essential ccache libssl-dev libunbound-dev libboost-all-dev
libqrencode-dev qt6-base-dev qt6-svg-dev qt6-websockets-dev qt6-multimedia-dev
qt6-wayland-dev libzip-dev libsodium-dev libgcrypt20-dev libx11-xcb-dev
protobuf-compiler libprotobuf-dev libhidapi-dev libzxing-dev libusb-dev
libusb-1.0-0-dev
- name: configure git
run: git config --global --add safe.directory '*'
- uses: actions/checkout@v4
with:
submodules: recursive
- name: update apt
run: sudo apt update
- name: install dependencies
run: sudo apt -y install git cmake build-essential ccache libssl-dev libunbound-dev libboost-all-dev
libqrencode-dev qt6-base-dev libgl1-mesa-dev libqt6svg6-dev libqt6websockets6-dev
qt6-multimedia-dev libzip-dev libsodium-dev libgcrypt-dev libx11-xcb-dev
libprotobuf-dev libhidapi-dev libzxingcore-dev
- name: build
run: |
mkdir build
cd build
cmake -DWITH_SCANNER=OFF ..
cmake --build . -j $(nproc)
build-arch:
name: 'Arch Linux'
runs-on: ubuntu-latest
container:
image: archlinux:latest
steps:
- name: install dependencies
run: pacman -Syyu --noconfirm git cmake base-devel unbound boost qrencode qt6-base qt6-svg qt6-websockets qt6-wayland qt6-multimedia libzip hidapi protobuf zxing-cpp
- name: configure git
run: git config --global --add safe.directory '*'
- uses: actions/checkout@v4
with:
submodules: recursive
- name: build
run: |
cmake -S . -B build
cmake --build build -j $(nproc)
build-macos:
name: 'macOS (brew)'
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- name: install dependencies
run: HOMEBREW_NO_AUTO_UPDATE=1 brew install qt libsodium libzip qrencode unbound cmake boost hidapi openssl expat libunwind-headers protobuf pkgconfig
- name: build
run: |
cmake -S . -B build -DWITH_SCANNER=Off
cmake --build build -j $(nproc)

View file

@ -4,7 +4,7 @@ on: [push, pull_request]
jobs:
cache-sources:
runs-on: ubuntu-latest
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
with:
@ -20,7 +20,7 @@ jobs:
run: make -C contrib/depends download
build-guix:
runs-on: ubuntu-latest
runs-on: ubuntu-24.04
needs: [cache-sources]
strategy:
fail-fast: false
@ -32,18 +32,24 @@ jobs:
- target: "aarch64-linux-gnu"
- target: "arm-linux-gnueabihf"
- target: "riscv64-linux-gnu"
- target: "i686-linux-gnu"
- target: "x86_64-w64-mingw32"
- target: "x86_64-w64-mingw32.installer"
- target: "x86_64-apple-darwin"
- target: "arm64-apple-darwin"
outputs:
WIN_INSTALLER_ARTIFACT_ID: ${{ steps.win-installer.outputs.WIN_INSTALLER_ARTIFACT_ID }}
WIN_EXECUTABLE_ARTIFACT_ID: ${{ steps.win-executable.outputs.WIN_EXECUTABLE_ARTIFACT_ID }}
name: ${{ matrix.toolchain.target }}
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
ref: ${{ github.ref }}
submodules: recursive
# https://github.com/actions/checkout/issues/1467
- name: git fetch tags
run: git fetch --tags
- name: remove bundled packages
run: sudo rm -rf /usr/local
- name: depends sources cache
@ -52,24 +58,101 @@ jobs:
path: contrib/depends/sources
key: sources-${{ hashFiles('contrib/depends/packages/*') }}
- name: install dependencies
run: sudo apt update; sudo apt -y install guix git ca-certificates
run: sudo apt update; sudo apt -y install guix git ca-certificates apparmor-utils osslsigncode
- name: apparmor workaround
# https://bugs.launchpad.net/ubuntu/+source/guix/+bug/2064115
run: |
sudo tee /etc/apparmor.d/guix << EOF
abi <abi/4.0>,
include <tunables/global>
profile guix /usr/bin/guix flags=(unconfined) {
userns,
include if exists <local/guix>
}
EOF
sudo /etc/init.d/apparmor reload
sudo aa-enforce guix || true
sudo apt purge apparmor
- name: build
run: SUBSTITUTE_URLS='http://ci.guix.gnu.org' HOSTS="${{ matrix.toolchain.target }}" ./contrib/guix/guix-build
run: ADDITIONAL_GUIX_TIMEMACHINE_FLAGS="--disable-authentication" SUBSTITUTE_URLS='http://bordeaux.guix.gnu.org' HOSTS="${{ matrix.toolchain.target }}" ./contrib/guix/guix-build
- name: virustotal scan
env:
VT_API_KEY: ${{ secrets.VT_API_KEY }}
if: ${{ matrix.toolchain.target == 'x86_64-w64-mingw32' && env.VT_API_KEY != '' }}
uses: crazy-max/ghaction-virustotal@v4
with:
vt_api_key: ${{ secrets.VT_API_KEY }}
files: |
guix/guix-build-*/build/distsrc-*/build/bin/feather.exe
- uses: actions/upload-artifact@v4
id: upload-artifact
with:
name: ${{ matrix.toolchain.target }}
path: |
guix/guix-build-*/output/${{ matrix.toolchain.target }}/*
guix/guix-build-*/logs/${{ matrix.toolchain.target }}/*
- if: ${{ matrix.toolchain.target == 'x86_64-w64-mingw32.installer' }}
id: win-installer
run: echo "WIN_INSTALLER_ARTIFACT_ID=${{ steps.upload-artifact.outputs.artifact-id }}" >> "$GITHUB_OUTPUT"
- if: ${{ matrix.toolchain.target == 'x86_64-w64-mingw32' }}
id: win-executable
run: echo "WIN_EXECUTABLE_ARTIFACT_ID=${{ steps.upload-artifact.outputs.artifact-id }}" >> "$GITHUB_OUTPUT"
bundle-logs:
runs-on: ubuntu-latest
runs-on: ubuntu-24.04
needs: [build-guix]
steps:
- uses: actions/download-artifact@v4
with:
merge-multiple: true
- name: print hashes
run: |
echo '```' >> $GITHUB_STEP_SUMMARY
uname --machine && find **/output/ -type f -print0 | env LC_ALL=C sort -z | xargs -r0 sha256sum >> $GITHUB_STEP_SUMMARY
echo '```' >> $GITHUB_STEP_SUMMARY
- uses: actions/upload-artifact@v4
with:
name: "logs"
path: '**/logs/**'
codesigning:
runs-on: ubuntu-24.04
needs: [build-guix, bundle-logs]
if: startsWith(github.ref, 'refs/tags/') && contains(github.ref, '-rc')
strategy:
fail-fast: false
matrix:
toolchain:
- target: "x86_64-w64-mingw32"
- target: "x86_64-w64-mingw32.installer"
steps:
- name: install dependencies
run: sudo apt update; sudo apt -y install osslsigncode
- name: "set artifact id"
run: |
if [ "${{ matrix.toolchain.target }}" == "x86_64-w64-mingw32" ]; then
echo "ARTIFACT_ID=${{ needs.build-guix.outputs.WIN_EXECUTABLE_ARTIFACT_ID }}" >> $GITHUB_ENV
echo "ARTIFACT_SLUG=executable" >> $GITHUB_ENV
elif [ "${{ matrix.toolchain.target }}" == "x86_64-w64-mingw32.installer" ]; then
echo "ARTIFACT_ID=${{ needs.build-guix.outputs.WIN_INSTALLER_ARTIFACT_ID }}" >> $GITHUB_ENV
echo "ARTIFACT_SLUG=installer" >> $GITHUB_ENV
fi
- uses: signpath/github-action-submit-signing-request@v1
name: "request signature"
with:
api-token: '${{ secrets.SIGNPATH_API_KEY }}'
organization-id: 'd3e94749-9c69-44e9-82de-c65cb3832869'
project-slug: 'feather'
signing-policy-slug: 'release-signing'
artifact-configuration-slug: ${{ env.ARTIFACT_SLUG }}
github-artifact-id: ${{ env.ARTIFACT_ID }}
wait-for-completion: true
output-artifact-directory: codesigning/
- name: "extract signature"
run: osslsigncode extract-signature -in codesigning/guix-build-*/output/${{ matrix.toolchain.target }}/*.exe -out codesigning/${{ matrix.toolchain.target }}.pem
- uses: actions/upload-artifact@v4
name: "upload signature"
with:
name: ${{ matrix.toolchain.target }}.pem
path: |
codesigning/${{ matrix.toolchain.target }}.pem

2
.gitignore vendored
View file

@ -1,6 +1,7 @@
.DS_Store
lib/*
cmake-build-debug/*
cmake-build-release/*
.idea
*.user
*.stash
@ -11,7 +12,6 @@ CMakeFiles
cmake_install.cmake
feather_autogen/
feather.cbp
src/config-feather.h
src/assets_tor.qrc
src/assets_docs.qrc
feather.AppDir/*

9
.gitmodules vendored
View file

@ -1,12 +1,15 @@
[submodule "monero"]
path = monero
url = https://github.com/feather-wallet/monero.git
[submodule "src/third-party/singleapplication"]
path = src/third-party/singleapplication
url = https://github.com/itay-grudev/SingleApplication.git
[submodule "src/third-party/polyseed"]
path = src/third-party/polyseed
url = https://github.com/tevador/polyseed.git
[submodule "external/feather-docs"]
path = external/feather-docs
url = https://github.com/feather-wallet/feather-docs.git
[submodule "external/feather-sigs"]
path = external/feather-sigs
url = https://github.com/feather-wallet/feather-sigs.git
[submodule "external/feather-codesigning"]
path = external/feather-codesigning
url = https://github.com/feather-wallet/feather-codesigning.git

View file

@ -1,7 +1,7 @@
cmake_minimum_required(VERSION 3.18)
project(feather
VERSION "2.6.5"
VERSION "2.8.0"
DESCRIPTION "A free Monero desktop wallet"
LANGUAGES CXX C ASM
)
@ -12,9 +12,11 @@ set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(PACKAGE_NAME ${PROJECT_NAME})
set(PACKAGE_BUGREPORT "https://github.com/feather-wallet/feather/issues")
set(PACKAGE_URL "https://featherwallet.org/")
set(COPYRIGHT_YEAR "2024")
set(COPYRIGHT_YEAR "2025")
set(COPYRIGHT_HOLDERS "The Monero Project")
cmake_policy(SET CMP0074 NEW)
# Configurable options
option(STATIC "Link libraries statically, requires static Qt" OFF)
option(SELF_CONTAINED "Disable when building Feather for packages" OFF)
@ -26,16 +28,16 @@ option(DONATE_BEG "Prompt donation window every once in a while" OFF)
option(WITH_SCANNER "Enable webcam QR scanner" ON)
option(STACK_TRACE "Dump stack trace on crash (Linux only)" OFF)
# internal configuration options
option(TOR_INSTALLED "Is Tor installed on the filesystem?" OFF)
# Plugins
option(WITH_PLUGIN_HOME "Include Home tab plugin" ON)
option(WITH_PLUGIN_TICKERS "Include Tickers Home plugin" ON)
option(WITH_PLUGIN_CROWDFUNDING "Include Crowdfunding Home plugin" ON)
option(WITH_PLUGIN_BOUNTIES "Include Bounties Home plugin" ON)
option(WITH_PLUGIN_REDDIT "Include Reddit Home plugin" ON)
option(WITH_PLUGIN_REVUO "Include Revuo Home plugin" ON)
option(WITH_PLUGIN_CALC "Include Calc tab plugin" ON)
option(WITH_PLUGIN_EXCHANGE "Include Exchange tab plugin" ON)
option(WITH_PLUGIN_LOCALMONERO "Include LocalMonero plugin" ON)
option(WITH_PLUGIN_XMRIG "Include XMRig plugin" ON)
list(INSERT CMAKE_MODULE_PATH 0 "${CMAKE_SOURCE_DIR}/cmake")
@ -65,7 +67,6 @@ if(STATIC)
endif()
include(CMakePackageConfigHelpers)
include(VersionFeather)
#### Dependencies ####
# Monero
@ -73,26 +74,16 @@ if (NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/monero/CMakeLists.txt")
message(FATAL_ERROR "'monero/CMakeLists.txt' does not exist, did you forget to:\ngit submodule update --init --recursive --progress")
endif()
add_subdirectory(monero EXCLUDE_FROM_ALL)
set_property(TARGET wallet_merged PROPERTY FOLDER "monero")
get_directory_property(ARCH_WIDTH DIRECTORY "monero" DEFINITION ARCH_WIDTH)
get_directory_property(UNBOUND_LIBRARY DIRECTORY "monero" DEFINITION UNBOUND_LIBRARY)
get_directory_property(DEVICE_TREZOR_READY DIRECTORY "monero" DEFINITION DEVICE_TREZOR_READY)
get_directory_property(TREZOR_DEP_LIBS DIRECTORY "monero" DEFINITION TREZOR_DEP_LIBS)
# libXau
# workaround for: undefined reference to `XauGetBestAuthByAddr'
if (DEPENDS AND UNIX AND NOT APPLE)
find_library(LIBXAU_LIBRARY Xau)
message(STATUS "libXau: libraries at ${LIBXAU_LIBRARY}")
endif()
get_directory_property(OPENBSD DIRECTORY "monero" DEFINITION OPENBSD)
get_directory_property(FREEBSD DIRECTORY "monero" DEFINITION FREEBSD)
get_directory_property(DRAGONFLY DIRECTORY "monero" DEFINITION DRAGONFLY)
# pthread
find_package(Threads REQUIRED)
# Sodium
find_library(SODIUM_LIBRARY sodium)
message(STATUS "libsodium: libraries at ${SODIUM_LIBRARY}")
# QrEncode
find_package(QREncode REQUIRED)
@ -134,27 +125,12 @@ if(MINGW)
set(MINGW_FLAG "${MINGW_FLAG} -DWIN32_LEAN_AND_MEAN")
set(Boost_THREADAPI win32)
endif()
set(BOOST_COMPONENTS
system
filesystem
thread
date_time
chrono
regex
serialization
program_options
locale
)
set(Boost_USE_MULTITHREADED ON)
if(STACK_TRACE AND UNIX AND NOT APPLE)
list(APPEND BOOST_COMPONENTS
stacktrace_basic)
find_package(Boost 1.58 REQUIRED COMPONENTS stacktrace_basic)
endif()
set(Boost_USE_MULTITHREADED ON)
find_package(Boost 1.58 REQUIRED COMPONENTS ${BOOST_COMPONENTS})
if(UNIX AND NOT APPLE)
if (NOT CMAKE_BUILD_TYPE STREQUAL "Debug")
# https://github.com/monero-project/monero-gui/issues/3142#issuecomment-705940446
@ -172,7 +148,6 @@ if(TOR_DIR)
endif()
message(STATUS "Embedded Tor version: ${TOR_VERSION}")
configure_file("cmake/config-feather.h.cmake" "${CMAKE_CURRENT_SOURCE_DIR}/src/config-feather.h")
# Always copy Tor when doing a reproducible build to prevent old versions from getting included
if (REPRODUCIBLE)
@ -248,16 +223,9 @@ if (NOT WIN32 AND NOT OPENBSD AND NOT "${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang"
add_cxx_flag_if_supported(-fstack-clash-protection CXX_SECURITY_FLAGS)
endif()
# -mmitigate-rop
# removed in GCC 9.1 (or before ?), but still accepted, so spams the output
if (NOT (CMAKE_C_COMPILER_ID STREQUAL "GNU" AND NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 9.1))
add_c_flag_if_supported(-mmitigate-rop C_SECURITY_FLAGS)
add_cxx_flag_if_supported(-mmitigate-rop CXX_SECURITY_FLAGS)
endif()
# linker
if (APPLE)
add_linker_flag_if_supported(-Wl,-bind_at_load LD_SECURITY_FLAGS)
add_linker_flag_if_supported(-Wl,-fixup_chains LD_SECURITY_FLAGS)
add_linker_flag_if_supported(-Wl,-dead_strip LD_SECURITY_FLAGS)
add_linker_flag_if_supported(-Wl,-dead_strip_dylibs LD_SECURITY_FLAGS)
endif()
@ -284,18 +252,23 @@ if (WIN32)
endif()
if(STATIC)
# add_linker_flag_if_supported(-static-libgcc STATIC_FLAGS)
# add_linker_flag_if_supported(-static-libstdc++ STATIC_FLAGS)
if(MINGW)
add_linker_flag_if_supported(-static STATIC_FLAGS)
elseif (NOT (APPLE OR FREEBSD OR OPENBSD OR DRAGONFLY))
if(NOT "${ARCH}" STREQUAL "armv7-a")
add_linker_flag_if_supported(-static-libgcc STATIC_FLAGS)
add_linker_flag_if_supported(-static-libstdc++ STATIC_FLAGS)
endif()
endif()
endif()
add_c_flag_if_supported(-fPIC C_SECURITY_FLAGS)
add_cxx_flag_if_supported(-fPIC CXX_SECURITY_FLAGS)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${MINGW_FLAG} -std=c11 ${C_SECURITY_FLAGS}")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${MINGW_FLAG} ${CXX_SECURITY_FLAGS}")
set(ANTI_AV_FLAGS "-Dcryptonote=MWYSUTPAXIBT")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${MINGW_FLAG} -std=c11 ${C_SECURITY_FLAGS} ${ANTI_AV_FLAGS}")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${MINGW_FLAG} ${CXX_SECURITY_FLAGS} ${ANTI_AV_FLAGS}")
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${LD_SECURITY_FLAGS} ${STATIC_FLAGS}")
add_subdirectory(src)

View file

@ -1,37 +1,43 @@
# Documentation for developers
Feather is developed primarily on Linux, but can also be built and debugged on macOS. Development on Windows is not
currently supported.
Feather is developed primarily on Linux, but can also be built on macOS. Development on Windows is not currently supported.
We support development on rolling release distributions and the latest version of Ubuntu. Building on older stable distributions is not guaranteed to work.
## Setting up a development environment
### Dependencies
Note: Feather requires Qt 6.3 or later. Make sure your distro's package manager provides this version.
If not, it is recommended that you install Qt manually using the online installer, which can be found here:
https://www.qt.io/download (under open-source).
#### Arch Linux
```bash
pacman -S git cmake base-devel ccache unbound boost qrencode qt6-base qt6-svg qt6-websockets qt6-multimedia libzip hidapi protobuf zxing-cpp
pacman -S git cmake base-devel ccache unbound boost qrencode qt6-base qt6-svg qt6-websockets qt6-wayland qt6-multimedia libzip hidapi protobuf zxing-cpp
```
#### Ubuntu 22.04
#### Ubuntu 24.04
```bash
apt update
apt install git cmake build-essential ccache libssl-dev libunbound-dev libboost-all-dev libqrencode-dev \
qt6-base-dev libgl1-mesa-dev libqt6svg6-dev libqt6websockets6-dev libzip-dev libsodium-dev libgcrypt-dev \
libx11-xcb-dev libprotobuf-dev libhidapi-dev libzxing-dev
apt install git cmake build-essential ccache libssl-dev libunbound-dev libboost-all-dev \
libqrencode-dev qt6-base-dev qt6-svg-dev qt6-websockets-dev qt6-multimedia-dev \
qt6-wayland-dev libzip-dev libsodium-dev libgcrypt20-dev libx11-xcb-dev \
libprotobuf-dev libhidapi-dev libzxing-dev libusb-1.0-0-dev
```
#### Rhel 9 / Alma / Rocky
```bash
sudo dnf install epel-release -y
sudo dnf groupinstall "Development Tools" -y
sudo dnf install unbound-devel boost-devel qrencode-devel zxing-cpp-devel qt6-qtbase-devel qt6-qtsvg-devel qt6-qtwebsockets-devel qt6-qtmultimedia-devel qt6-qtwayland-devel libsodium-devel
```
#### Void Linux
```bash
xbps-install -S base-devel cmake boost-devel openssl-devel unbound-devel libsodium-devel zlib-devel qt6-base-devel \
qt6-svg-devel qt6-websockets-devel qt6-multimedia-devel libgcrypt-devel libzip-devel hidapi-devel protobuf \
protobuf-devel qrencode-devel zxing-cpp-devel
qt6-svg-devel qt6-websockets-devel qt6-multimedia-devel qt6-wayland-devel libgcrypt-devel libzip-devel \
hidapi-devel protobuf protobuf-devel qrencode-devel zxing-cpp-devel
```
#### macOS
@ -92,9 +98,8 @@ git submodule update --init --recursive
We recommend using Jetbrains Clion for Feather development. It integrates nicely with CMake and comes with a built-in
debugger.
To pass CMake flags to CLion, go to `File->Settings->Build->CMake`, set Build Type to `Debug` and set your
preferred CMake options. If you installed Qt using the online installer you may have to add
`-DCMAKE_PREFIX_PATH=/path/to/qt/installation` in the CMake options. More CMake options are documented below.
To pass CMake flags to CLion, go to `File -> Settings -> Build -> CMake`, set Build Type to `Debug` and set your
preferred CMake options. More CMake options are documented below.
Run CMake (`View -> Tool Windows -> CMake`). Click on the 🔃 (`Reload CMake Project`) button.

View file

@ -1,4 +1,4 @@
Copyright (c) 2020-2024, The Monero Project
Copyright (c) 2020-2025, The Monero Project
All rights reserved.

View file

@ -13,20 +13,36 @@ This document is written for developers and users interested in learning how Fea
- Review the diff of any altered package to mitigate the risk of supply chain attacks
- Update compilers and security flags for better binary security
- Reduce the number of third-party dependencies
- Keep the website VPS up-to-date and secure
- Further harden the [release process](RELEASE.md)
- Keep the [website](https://github.com/feather-wallet/feather-site/blob/master/mirrors.txt) VPS up-to-date and secure
- Contact relevant authorities to take [phishing sites](https://gist.github.com/tobtoht/4039fa3cf922d4fe8bca2f8e3ddac63b) offline
- Make improvements to the [release process](RELEASE.md)
Goals:
- Set up a bug bounty program for issues that affect privacy or security
- Set up a status page with information about project health
- Set up a feed for security bulletins
- Sandbox components that handle untrusted input (e.g. QR code scanner)
- Create a package manager for secure distribution of portable binaries
- `-static-pie` release binaries for Linux targets
Security issues that affect Feather always warrant a new release as soon as possible.
### 2. Reproducibility
### 2. Continuity
- Improve and maintain tools to check for reproducibility defects
- Keep the website and services online
- Keep source repositories accessible
- Make sure that running release builds is easy to set up and reproducible in time
Goals:
- Make sure the project is transmissible
- Make sure that setting up release infrastructure, release engineering, and maintenance are extensively documented
- Make the websocket server repository public
### 3. Reproducibility
- Improve and maintain tools to check for non-determinism
- Ensure releases are reproducible and stay that way
- Upload source archives to the fallback mirror
@ -36,31 +52,32 @@ To learn more about Feather's build system, see: [`contrib/guix/README.md`](http
Our Guix time-machine is currently pinned at a commit which implements the
[Full-Source Bootstrap](https://guix.gnu.org/en/blog/2023/the-full-source-bootstrap-building-from-source-all-the-way-down/).
### 3. Bugs
### 4. Bugs
- Fix reproducible bugs and crashes
- Fix bugs and crashes
To report a bug, please see: https://docs.featherwallet.org/guides/report-an-issue
### 4. Tests
### 5. Tests
- Improve test coverage
- Write more test cases
Feather does not currently have a test suite (apart from the tests in the Monero submodule), this is a WIP.
### 5. Documentation
### 6. Documentation
- Make sure the documentation accurately reflects the latest release
- Add troubleshooting guides for common problems
- Ideally, most support questions can be answered with a link to the documentation
Goals:
- Most support questions can be answered with a link to the documentation
- Reconsider and document default settings
- Write a document on threat modeling
Documentation is available at https://docs.featherwallet.org
### 6. Improvements
### 7. Improvements
- Improve existing features
- Improve UI/UX
@ -68,19 +85,15 @@ Documentation is available at https://docs.featherwallet.org
Feather should first and foremost be a good __wallet__.
Improving features that are closer to this end should have priority.
### 7. Packaging
### 8. Platform Support
- Add support for more architectures and operating systems
- Drop support for End-of-Life distributions
Goals:
- Debian and Guix packages
- Create a document with guidelines for packagers
- Add support for new hardware wallets
See: https://docs.featherwallet.org/guides/supported-operating-systems
### 8. Optimization, cleanup and continuity
### 9. Optimization
Miscellaneous maintenance tasks.
@ -98,9 +111,9 @@ Miscellaneous maintenance tasks.
Goals:
- Make sure Feather is ready for the migration to [Seraphis](https://github.com/seraphis-migration/wallet3)
- Make sure Feather is ready for the migration to [FCMP++](https://www.getmonero.org/2024/04/27/fcmps.html)
### 9. Features
### 10. Features
- Implement new features
- Allow Feather to be used or configured for higher, esoteric or new threat models
@ -112,7 +125,7 @@ compared to its expected maintenance and support burden.
For a non-exhaustive list of potentially new features, see: https://featherwallet.org/ideas
### 10. Upstreaming
### 11. Upstreaming
- Upstream tried and tested features, bugfixes and useful patches
- Bugfixes should be upstreamed without delay

16
Makefile Normal file
View file

@ -0,0 +1,16 @@
build:
@./contrib/guix/guix-build
attest:
@./contrib/guix/guix-attest
verify:
@./contrib/guix/guix-verify
clean:
@./contrib/guix/guix-clean
DEFAULT_GOAL := default
default: build
.PHONY: default build attest verify clean

View file

@ -1,38 +1,68 @@
# Feather Wallet
Feather is a free, open-source Monero wallet for Linux, Tails, macOS and Windows. It is written in C++ with the Qt framework.
Feather is a free Monero desktop wallet for Linux, Tails, macOS and Windows. It is written in C++ with the Qt framework.
Copyright (c) 2020-2024, The Monero Project.
- **easy-to-use**, **small** and **fast** - Feather runs well on any modern hardware, including virtual machines and live operating systems.
- **beginner friendly**, but also caters to advanced Monero users by providing a [feature set](https://docs.featherwallet.org/guides/features) that is on par with the official CLI.
- ships with **sane defaults** that suit most users, but can also be configured for high or uncommon threat models.
- serves as a testing grounds for **experimental features** that may later be adopted in the reference wallets.
## Download
You can download Feather from **[featherwallet.org](https://featherwallet.org/download/)** or **[GitHub](https://github.com/feather-wallet/feather/releases)**.
If you need help installing Feather, check the [installation documentation](https://docs.featherwallet.org/).
We recommend that you verify downloads with GPG. Releases are signed with our [release signing key](https://docs.featherwallet.org/guides/release-signing-key). The fingerprint is:
```
8185 E158 A333 30C7 FD61 BC0D 1F76 E155 CEFB A71C
```
Windows releases are code-signed for free by [SignPath.io](https://about.signpath.io/), certificate by [SignPath Foundation](https://signpath.org/).
## Resources
* Web: [featherwallet.org](https://featherwallet.org)
* Docs: [docs.featherwallet.org](https://docs.featherwallet.org)
* Git: [github.com/feather-wallet/feather](https://github.com/feather-wallet/feather)
* Reddit: [/r/FeatherWallet](https://old.reddit.com/r/FeatherWallet)
* Lemmy: [monero.town/c/featherwallet](https://monero.town/c/featherwallet)
* Mail: dev@featherwallet.org
* [Official Site](https://featherwallet.org)
* [Documentation](https://docs.featherwallet.org)
* [Git Repository](https://github.com/feather-wallet/feather)
* [Matrix](https://matrix.to/#/#feather:monero.social)
* IRC: `#feather` on [OFTC](https://www.oftc.net/)
* Matrix: [matrix.to/#/#feather:monero.social](https://matrix.to/#/#feather:monero.social)
* Mail: dev@featherwallet.org
**Download** the latest release [here](https://featherwallet.org/download).
If you need help with your wallet, please contact us via Matrix or IRC.
If you don't have an IRC client, you can join the room via [webchat](https://webchat.oftc.net/?randomnick=1&channels=feather).
If you dont receive a response immediately please idle in the room.
## Supporting the project
## Release Builds
Feather is a 100% community-sponsored project. If you want to join our efforts, the easiest thing you can do is support the project financially.
To learn how to run a bootstrappable release build, see: [contrib/guix/README.md](https://github.com/feather-wallet/feather/blob/master/contrib/guix/README.md)
Donations help pay for hosting, build servers, domain names, e-mail and other recurring costs. Any amount helps.
For release attestations, see the [feather-sigs](http://github.com/feather-wallet/feather-sigs) repo.
`47ntfT2Z5384zku39pTM6hGcnLnvpRYW2Azm87GiAAH2bcTidtq278TL6HmwyL8yjMeERqGEBs3cqC8vvHPJd1cWQrGC65f`
## Deterministic builds
See [contrib/guix/README.md](https://github.com/feather-wallet/feather/blob/master/contrib/guix/README.md) for more information.
For release policy, see: [RELEASE.md](https://github.com/feather-wallet/feather/blob/master/RELEASE.md)
## Development
If you are looking to set up a development environment for Feather, see [HACKING.md](https://github.com/feather-wallet/feather/blob/master/HACKING.md).
It is highly recommended that you join the `#feather` IRC channel on [OFTC](https://www.oftc.net/) or [`#feather:monero.social`](https://matrix.to/#/#feather:monero.social) on Matrix if you
are hacking on Feather. Due to the nature of this open source software project, idling in this channel is the best
way to stay updated on best practices and new developments.
It is highly recommended that you join our Matrix or IRC channel if you are hacking on Feather.
Idling in this channel is the best way to stay updated on best practices and new developments.
For information on how Feather is maintained, see: [MAINTENANCE.md](https://github.com/feather-wallet/feather/blob/master/MAINTENANCE.md)
To report a security vulnerability, see: [SECURITY.md](https://github.com/feather-wallet/feather/blob/master/SECURITY.md)
## Support
Feather is funded entirely through donations. We don't take a cut from transaction fees and make no money from exchange integrations.
Donations help pay for hosting, build servers, domain names, e-mail and other recurring costs. Any amount helps.
`47ntfT2Z5384zku39pTM6hGcnLnvpRYW2Azm87GiAAH2bcTidtq278TL6HmwyL8yjMeERqGEBs3cqC8vvHPJd1cWQrGC65f`
## License
Feather is free and open-source software, [licensed under BSD-3](https://raw.githubusercontent.com/feather-wallet/feather/master/LICENSE).
Copyright (c) 2020-2025, The Monero Project

View file

@ -13,3 +13,32 @@ The following keys may be used to communicate sensitive information to developer
| tobtoht | E87B D921 CDD8 85C9 D78A 38C5 E45B 10DD 027D 2472 |
Public keys can be found in [`utils/pubkeys`](utils/pubkeys).
## Bug Bounty Program
A bounty may be rewarded to a vulnerability report **if and only if** the issue can result in **a loss of funds**.
You must describe a **plausible scenario** in which a loss of funds can occur (or has occurred) that **isn't solely attributable to user error**.
Only **the code** of the **latest tagged release** of **[this repository](https://github.com/feather-wallet/feather/)** is in scope.
**The bounty can only be rewarded in XMR**. The bounty amount for your report is determined by the maintainers and ranges from USD 150 to USD 3000 (in terms of XMR) and depends on the severity of the issue and other factors.
Clarifications on scope:
- The issue **must be present in a [signed](https://docs.featherwallet.org/guides/release-signing-key) [release build](https://github.com/feather-wallet/feather/blob/master/contrib/guix/README.md)**. Custom builds, including distribution packages, are out of scope.
- The developers **must be able to reproduce and fix the issue**. If the issue cannot be fixed **in our code** for any reason, it is out of scope.
- The live [websites](https://github.com/feather-wallet/feather-site/blob/master/mirrors.txt) and their repositories are out of scope.
- Loss of funds due to malware on the user's machine is out of scope.
- Memory imaging, including cold boot attacks, is out of scope.
- Social engineering against users is out of scope. This includes messages received from the [websocket server](https://docs.featherwallet.org/guides/websocket).
- Any form of coercion, physical or psychological, is out of scope.
- Vulnerabilities that are attributable to hardware are out of scope.
- If the issue was fixed in the `master` branch before we receive your report, it is invalid and not eligible for a bounty from this program.
- If the vulnerability involves binary exploitation, we may ask you to provide a proof of concept of secret key exfiltration.
- Vulnerabilities that are present in the monero submodule but were not introduced in patches made by the Feather developers must
be reported [upstream](https://github.com/monero-project/meta/blob/master/VULNERABILITY_RESPONSE_PROCESS.md) and are not eligible for a bounty from this program.
- Vulnerabilities that are present in any of our third-party dependencies must be reported upstream and are not eligible for a bounty from this program.
- Vulnerabilities that are present in [supported hardware wallets](https://docs.featherwallet.org/guides/hardware-wallet-support) must be reported upstream and are not eligible for a bounty from this program.
- A bounty will not be awarded if the reported vulnerability was already known. We may make an exception if you demonstrate that the severity of the issue was underestimated and no immediate fix was planned.
- If, during your research, you disrupt Feather's release infrastructure or services, or attempt to coerce its developers, you will not be awarded a bounty.

View file

@ -1,291 +0,0 @@
# Written in 2016 by Henrik Steffen Gaßmann <henrik@gassmann.onl>
#
# To the extent possible under law, the author(s) have dedicated all copyright
# and related and neighboring rights to this software to the public domain
# worldwide. This software is distributed without any warranty.
#
# You should have received a copy of the CC0 Public Domain Dedication along with
# this software. If not, see
#
# http://creativecommons.org/publicdomain/zero/1.0/
#
# ##############################################################################
# Tries to find the local libsodium installation.
#
# On Windows the sodium_DIR environment variable is used as a default hint which
# can be overridden by setting the corresponding cmake variable.
#
# Once done the following variables will be defined:
#
# sodium_FOUND sodium_INCLUDE_DIR sodium_LIBRARY_DEBUG sodium_LIBRARY_RELEASE
# sodium_VERSION_STRING
#
# Furthermore an imported "sodium" target is created.
#
if(CMAKE_C_COMPILER_ID STREQUAL "GNU" OR CMAKE_C_COMPILER_ID STREQUAL "Clang")
set(_GCC_COMPATIBLE 1)
endif()
# static library option
if(NOT DEFINED sodium_USE_STATIC_LIBS)
option(sodium_USE_STATIC_LIBS "enable to statically link against sodium" OFF)
endif()
if(NOT (sodium_USE_STATIC_LIBS EQUAL sodium_USE_STATIC_LIBS_LAST))
unset(sodium_LIBRARY CACHE)
unset(sodium_LIBRARY_DEBUG CACHE)
unset(sodium_LIBRARY_RELEASE CACHE)
unset(sodium_DLL_DEBUG CACHE)
unset(sodium_DLL_RELEASE CACHE)
set(sodium_USE_STATIC_LIBS_LAST
${sodium_USE_STATIC_LIBS}
CACHE INTERNAL "internal change tracking variable")
endif()
# ##############################################################################
# UNIX
if(UNIX)
# import pkg-config
find_package(PkgConfig QUIET)
if(PKG_CONFIG_FOUND)
pkg_check_modules(sodium_PKG QUIET libsodium)
endif()
if(sodium_USE_STATIC_LIBS)
if(sodium_PKG_STATIC_LIBRARIES)
foreach(_libname ${sodium_PKG_STATIC_LIBRARIES})
if(NOT _libname MATCHES "^lib.*\\.a$") # ignore strings already ending
# with .a
list(INSERT sodium_PKG_STATIC_LIBRARIES 0 "lib${_libname}.a")
endif()
endforeach()
list(REMOVE_DUPLICATES sodium_PKG_STATIC_LIBRARIES)
else()
# if pkgconfig for libsodium doesn't provide static lib info, then
# override PKG_STATIC here..
set(sodium_PKG_STATIC_LIBRARIES libsodium.a)
endif()
set(XPREFIX sodium_PKG_STATIC)
else()
if(sodium_PKG_LIBRARIES STREQUAL "")
set(sodium_PKG_LIBRARIES sodium)
endif()
set(XPREFIX sodium_PKG)
endif()
find_path(sodium_INCLUDE_DIR sodium.h HINTS ${${XPREFIX}_INCLUDE_DIRS})
find_library(sodium_LIBRARY_DEBUG
NAMES ${${XPREFIX}_LIBRARIES}
HINTS ${${XPREFIX}_LIBRARY_DIRS})
find_library(sodium_LIBRARY_RELEASE
NAMES ${${XPREFIX}_LIBRARIES}
HINTS ${${XPREFIX}_LIBRARY_DIRS})
# ############################################################################
# Windows
elseif(WIN32)
set(sodium_DIR "$ENV{sodium_DIR}" CACHE FILEPATH "sodium install directory")
mark_as_advanced(sodium_DIR)
find_path(sodium_INCLUDE_DIR sodium.h
HINTS ${sodium_DIR}
PATH_SUFFIXES include)
if(MSVC)
# detect target architecture
file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/arch.c" [=[
#if defined _M_IX86
#error ARCH_VALUE x86_32
#elif defined _M_X64
#error ARCH_VALUE x86_64
#endif
#error ARCH_VALUE unknown
]=])
try_compile(_UNUSED_VAR "${CMAKE_CURRENT_BINARY_DIR}"
"${CMAKE_CURRENT_BINARY_DIR}/arch.c"
OUTPUT_VARIABLE _COMPILATION_LOG)
string(REGEX
REPLACE ".*ARCH_VALUE ([a-zA-Z0-9_]+).*"
"\\1"
_TARGET_ARCH
"${_COMPILATION_LOG}")
# construct library path
if(_TARGET_ARCH STREQUAL "x86_32")
string(APPEND _PLATFORM_PATH "Win32")
elseif(_TARGET_ARCH STREQUAL "x86_64")
string(APPEND _PLATFORM_PATH "x64")
else()
message(
FATAL_ERROR
"the ${_TARGET_ARCH} architecture is not supported by Findsodium.cmake."
)
endif()
string(APPEND _PLATFORM_PATH "/$$CONFIG$$")
if(MSVC_VERSION LESS 1900)
math(EXPR _VS_VERSION "${MSVC_VERSION} / 10 - 60")
else()
math(EXPR _VS_VERSION "${MSVC_VERSION} / 10 - 50")
endif()
string(APPEND _PLATFORM_PATH "/v${_VS_VERSION}")
if(sodium_USE_STATIC_LIBS)
string(APPEND _PLATFORM_PATH "/static")
else()
string(APPEND _PLATFORM_PATH "/dynamic")
endif()
string(REPLACE "$$CONFIG$$"
"Debug"
_DEBUG_PATH_SUFFIX
"${_PLATFORM_PATH}")
string(REPLACE "$$CONFIG$$"
"Release"
_RELEASE_PATH_SUFFIX
"${_PLATFORM_PATH}")
find_library(sodium_LIBRARY_DEBUG libsodium.lib
HINTS ${sodium_DIR}
PATH_SUFFIXES ${_DEBUG_PATH_SUFFIX})
find_library(sodium_LIBRARY_RELEASE libsodium.lib
HINTS ${sodium_DIR}
PATH_SUFFIXES ${_RELEASE_PATH_SUFFIX})
if(NOT sodium_USE_STATIC_LIBS)
set(CMAKE_FIND_LIBRARY_SUFFIXES_BCK ${CMAKE_FIND_LIBRARY_SUFFIXES})
set(CMAKE_FIND_LIBRARY_SUFFIXES ".dll")
find_library(sodium_DLL_DEBUG libsodium
HINTS ${sodium_DIR}
PATH_SUFFIXES ${_DEBUG_PATH_SUFFIX})
find_library(sodium_DLL_RELEASE libsodium
HINTS ${sodium_DIR}
PATH_SUFFIXES ${_RELEASE_PATH_SUFFIX})
set(CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES_BCK})
endif()
elseif(_GCC_COMPATIBLE)
if(sodium_USE_STATIC_LIBS)
find_library(sodium_LIBRARY_DEBUG libsodium.a
HINTS ${sodium_DIR}
PATH_SUFFIXES lib)
find_library(sodium_LIBRARY_RELEASE libsodium.a
HINTS ${sodium_DIR}
PATH_SUFFIXES lib)
else()
find_library(sodium_LIBRARY_DEBUG libsodium.dll.a
HINTS ${sodium_DIR}
PATH_SUFFIXES lib)
find_library(sodium_LIBRARY_RELEASE libsodium.dll.a
HINTS ${sodium_DIR}
PATH_SUFFIXES lib)
file(GLOB _DLL
LIST_DIRECTORIES false
RELATIVE "${sodium_DIR}/bin"
"${sodium_DIR}/bin/libsodium*.dll")
find_library(sodium_DLL_DEBUG ${_DLL} libsodium
HINTS ${sodium_DIR}
PATH_SUFFIXES bin)
find_library(sodium_DLL_RELEASE ${_DLL} libsodium
HINTS ${sodium_DIR}
PATH_SUFFIXES bin)
endif()
else()
message(FATAL_ERROR "this platform is not supported by FindSodium.cmake")
endif()
# ############################################################################
# unsupported
else()
message(FATAL_ERROR "this platform is not supported by FindSodium.cmake")
endif()
# ##############################################################################
# common stuff
# extract sodium version
if(sodium_INCLUDE_DIR)
set(_VERSION_HEADER "${sodium_INCLUDE_DIR}/sodium/version.h")
if(EXISTS "${_VERSION_HEADER}")
file(READ "${_VERSION_HEADER}" _VERSION_HEADER_CONTENT)
string(REGEX
REPLACE ".*define[ \t]+SODIUM_VERSION_STRING[^\"]+\"([^\"]+)\".*"
"\\1"
sodium_VERSION_STRING
"${_VERSION_HEADER_CONTENT}")
set(sodium_VERSION_STRING "${sodium_VERSION_STRING}")
endif()
endif()
# communicate results
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(sodium
REQUIRED_VARS
sodium_LIBRARY_RELEASE
sodium_LIBRARY_DEBUG
sodium_INCLUDE_DIR
VERSION_VAR
sodium_VERSION_STRING)
# mark file paths as advanced
mark_as_advanced(sodium_INCLUDE_DIR)
mark_as_advanced(sodium_LIBRARY_DEBUG)
mark_as_advanced(sodium_LIBRARY_RELEASE)
if(WIN32)
mark_as_advanced(sodium_DLL_DEBUG)
mark_as_advanced(sodium_DLL_RELEASE)
endif()
# create imported target
if(sodium_USE_STATIC_LIBS)
set(_LIB_TYPE STATIC)
else()
set(_LIB_TYPE SHARED)
endif()
add_library(sodium ${_LIB_TYPE} IMPORTED)
set_target_properties(sodium
PROPERTIES INTERFACE_INCLUDE_DIRECTORIES
"${sodium_INCLUDE_DIR}"
IMPORTED_LINK_INTERFACE_LANGUAGES
"C")
if(sodium_USE_STATIC_LIBS)
set_target_properties(sodium
PROPERTIES INTERFACE_COMPILE_DEFINITIONS
"SODIUM_STATIC"
IMPORTED_LOCATION
"${sodium_LIBRARY_RELEASE}"
IMPORTED_LOCATION_DEBUG
"${sodium_LIBRARY_DEBUG}")
else()
if(UNIX)
set_target_properties(sodium
PROPERTIES IMPORTED_LOCATION
"${sodium_LIBRARY_RELEASE}"
IMPORTED_LOCATION_DEBUG
"${sodium_LIBRARY_DEBUG}")
elseif(WIN32)
set_target_properties(sodium
PROPERTIES IMPORTED_IMPLIB
"${sodium_LIBRARY_RELEASE}"
IMPORTED_IMPLIB_DEBUG
"${sodium_LIBRARY_DEBUG}")
if(NOT (sodium_DLL_DEBUG MATCHES ".*-NOTFOUND"))
set_target_properties(sodium
PROPERTIES IMPORTED_LOCATION_DEBUG
"${sodium_DLL_DEBUG}")
endif()
if(NOT (sodium_DLL_RELEASE MATCHES ".*-NOTFOUND"))
set_target_properties(sodium
PROPERTIES IMPORTED_LOCATION_RELWITHDEBINFO
"${sodium_DLL_RELEASE}"
IMPORTED_LOCATION_MINSIZEREL
"${sodium_DLL_RELEASE}"
IMPORTED_LOCATION_RELEASE
"${sodium_DLL_RELEASE}")
endif()
endif()
endif()

View file

@ -1,65 +0,0 @@
# Copyright (c) 2014-2019, The Monero Project
#
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without modification, are
# permitted provided that the following conditions are met:
#
# 1. Redistributions of source code must retain the above copyright notice, this list of
# conditions and the following disclaimer.
#
# 2. Redistributions in binary form must reproduce the above copyright notice, this list
# of conditions and the following disclaimer in the documentation and/or other
# materials provided with the distribution.
#
# 3. Neither the name of the copyright holder nor the names of its contributors may be
# used to endorse or promote products derived from this software without specific
# prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
# THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
# THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#
# Parts of this file are originally copyright (c) 2012-2013 The Cryptonote developers
# Check what commit we're on
execute_process(COMMAND "${GIT}" rev-parse --short=9 HEAD RESULT_VARIABLE RET OUTPUT_VARIABLE COMMIT OUTPUT_STRIP_TRAILING_WHITESPACE)
if(RET)
# Something went wrong, set the version tag to -unknown
message(WARNING "Cannot determine current commit. Make sure that you are building either from a Git working tree or from a source archive.")
set(VERSIONTAG "unknown")
set(VERSION_IS_RELEASE "false")
configure_file("monero/src/version.cpp.in" "${TO}")
else()
string(SUBSTRING ${COMMIT} 0 9 COMMIT)
message(STATUS "You are currently on commit ${COMMIT}")
# Get all the tags
execute_process(COMMAND "${GIT}" rev-list --tags --max-count=1 --abbrev-commit RESULT_VARIABLE RET OUTPUT_VARIABLE TAGGEDCOMMIT OUTPUT_STRIP_TRAILING_WHITESPACE)
if(NOT TAGGEDCOMMIT)
message(WARNING "Cannot determine most recent tag. Make sure that you are building either from a Git working tree or from a source archive.")
set(VERSIONTAG "${COMMIT}")
set(VERSION_IS_RELEASE "false")
else()
message(STATUS "The most recent tag was at ${TAGGEDCOMMIT}")
# Check if we're building that tagged commit or a different one
if(COMMIT STREQUAL TAGGEDCOMMIT)
message(STATUS "You are building a tagged release")
set(VERSIONTAG "release")
set(VERSION_IS_RELEASE "true")
else()
message(STATUS "You are ahead of or behind a tagged release")
set(VERSIONTAG "${COMMIT}")
set(VERSION_IS_RELEASE "false")
endif()
endif()
configure_file("monero/src/version.cpp.in" "${TO}")
endif()

View file

@ -1,3 +1,5 @@
set(QRC_LIST)
if (TOR_DIR)
FILE(GLOB TOR_FILES LIST_DIRECTORIES false ${TOR_DIR}/*)

View file

@ -1,53 +0,0 @@
# Copyright (c) 2014-2017, The Monero Project
#
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without modification, are
# permitted provided that the following conditions are met:
#
# 1. Redistributions of source code must retain the above copyright notice, this list of
# conditions and the following disclaimer.
#
# 2. Redistributions in binary form must reproduce the above copyright notice, this list
# of conditions and the following disclaimer in the documentation and/or other
# materials provided with the distribution.
#
# 3. Neither the name of the copyright holder nor the names of its contributors may be
# used to endorse or promote products derived from this software without specific
# prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
# THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
# THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
function (write_static_version_header hash)
set(VERSIONTAG "${hash}")
configure_file("${CMAKE_SOURCE_DIR}/monero/src/version.cpp.in" "${CMAKE_BINARY_DIR}/version.cpp")
endfunction ()
find_package(Git QUIET)
if ("$Format:$" STREQUAL "")
# We're in a tarball; use hard-coded variables.
write_static_version_header("release")
elseif (GIT_FOUND OR Git_FOUND)
add_custom_command(
OUTPUT "${CMAKE_BINARY_DIR}/version.cpp"
COMMAND "${CMAKE_COMMAND}"
"-D" "GIT=${GIT_EXECUTABLE}"
"-D" "TO=${CMAKE_BINARY_DIR}/version.cpp"
"-P" "cmake/GenVersion.cmake"
WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}")
else()
message(STATUS "WARNING: Git was not found!")
write_static_version_header("unknown")
endif ()
add_custom_target(genversion ALL
DEPENDS "${CMAKE_BINARY_DIR}/version.cpp")

View file

@ -1,27 +0,0 @@
# SPDX-License-Identifier: BSD-3-Clause
# SPDX-FileCopyrightText: 2020-2023 The Monero Project
find_package(Git QUIET)
# Sets FEATHER_COMMIT to the first 9 chars of the current commit hash.
if (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/githash.txt")
# This file added in source archives where the .git folder has been removed to optimize for space.
file(READ "githash.txt" COMMIT)
string(SUBSTRING ${COMMIT} 0 9 COMMIT)
message(STATUS "You are currently on commit ${COMMIT}")
set(FEATHER_COMMIT "${COMMIT}")
else()
execute_process(COMMAND "${GIT_EXECUTABLE}" rev-parse --short=9 HEAD RESULT_VARIABLE RET OUTPUT_VARIABLE COMMIT OUTPUT_STRIP_TRAILING_WHITESPACE)
if(RET)
message(WARNING "Cannot determine current commit. Make sure that you are building either from a Git working tree or from a source archive.")
set(FEATHER_COMMIT "unknown")
else()
string(SUBSTRING ${COMMIT} 0 9 COMMIT)
message(STATUS "You are currently on commit ${COMMIT}")
set(FEATHER_COMMIT "${COMMIT}")
endif()
endif()
configure_file("cmake/config-feather.h.cmake" "${CMAKE_CURRENT_SOURCE_DIR}/src/config-feather.h")

View file

@ -1,11 +0,0 @@
#ifndef FEATHER_VERSION_H
#define FEATHER_VERSION_H
#define FEATHER_VERSION "@PROJECT_VERSION@"
#define FEATHER_COMMIT "@FEATHER_COMMIT@"
#define TOR_VERSION "@TOR_VERSION@"
#define FEATHER_TARGET_TRIPLET "@FEATHER_TARGET_TRIPLET@"
#endif //FEATHER_VERSION_H

View file

@ -1,36 +1,27 @@
OSX_MIN_VERSION=10.14
OSX_MIN_VERSION=11.0
OSX_SDK_VERSION=11.0
XCODE_VERSION=12.2
XCODE_BUILD_ID=12B45b
LD64_VERSION=609
LD64_VERSION=711
OSX_SDK=$(host_prefix)/native/SDK
darwin_native_binutils=native_cctools
darwin_native_toolchain=darwin_sdk
# We can't just use $(shell command -v clang) because GNU Make handles builtins
# in a special way and doesn't know that `command` is a POSIX-standard builtin
# prior to 1af314465e5dfe3e8baa839a32a72e83c04f26ef, first released in v4.2.90.
# At the time of writing, GNU Make v4.2.1 is still being used in supported
# distro releases.
#
# Source: https://lists.gnu.org/archive/html/bug-make/2017-11/msg00017.html
clang_prog=$(shell $(SHELL) $(.SHELLFLAGS) "command -v clang")
clangxx_prog=$(shell $(SHELL) $(.SHELLFLAGS) "command -v clang++")
clang_resource_dir=$(shell clang -print-resource-dir)
clang_prog=clang
clangxx_prog=clang++
llvm_config_prog=llvm-config
cctools_TOOLS=AR RANLIB STRIP NM LIBTOOL OTOOL INSTALL_NAME_TOOL DSYMUTIL
llvm_lib_dir=$(shell $(llvm_config_prog) --libdir)
# Make-only lowercase function
lc = $(subst A,a,$(subst B,b,$(subst C,c,$(subst D,d,$(subst E,e,$(subst F,f,$(subst G,g,$(subst H,h,$(subst I,i,$(subst J,j,$(subst K,k,$(subst L,l,$(subst M,m,$(subst N,n,$(subst O,o,$(subst P,p,$(subst Q,q,$(subst R,r,$(subst S,s,$(subst T,t,$(subst U,u,$(subst V,v,$(subst W,w,$(subst X,x,$(subst Y,y,$(subst Z,z,$1))))))))))))))))))))))))))
# For well-known tools provided by cctools, make sure that their well-known
# variable is set to the full path of the tool, just like how AC_PATH_{TOO,PROG}
# would.
$(foreach TOOL,$(cctools_TOOLS),$(eval darwin_$(TOOL) = $$(build_prefix)/bin/$$(host)-$(call lc,$(TOOL))))
darwin_AR=llvm-ar
darwin_DSYMUTIL=dsymutil
darwin_NM=llvm-nm
darwin_OBJDUMP=llvm-objdump
darwin_RANLIB=llvm-ranlib
darwin_STRIP=llvm-strip
darwin_LIBTOOL=llvm-libtool-darwin
# Flag explanations:
#
@ -55,9 +46,7 @@ $(foreach TOOL,$(cctools_TOOLS),$(eval darwin_$(TOOL) = $$(build_prefix)/bin/$$(
# Adds the desired paths from the SDK
#
darwin_CC_=--target=$(host) -mmacosx-version-min=$(OSX_MIN_VERSION) \
-B$(build_prefix)/bin -mlinker-version=$(LD64_VERSION) \
-isysroot$(OSX_SDK) \
darwin_CC_=--target=$(host) \
-isysroot$(OSX_SDK) -nostdlibinc \
-iwithsysroot/usr/include -iframeworkwithsysroot/System/Library/Frameworks
darwin_CC=env -u C_INCLUDE_PATH -u CPLUS_INCLUDE_PATH \
@ -65,18 +54,18 @@ darwin_CC=env -u C_INCLUDE_PATH -u CPLUS_INCLUDE_PATH \
-u LIBRARY_PATH \
$(clang_prog) $(darwin_CC_)
darwin_CXX_=--target=$(host) -mmacosx-version-min=$(OSX_MIN_VERSION) \
-B$(build_prefix)/bin -mlinker-version=$(LD64_VERSION) \
-isysroot$(OSX_SDK) -nostdlibinc \
-iwithsysroot/usr/include/c++/v1 \
-iwithsysroot/usr/include -iframeworkwithsysroot/System/Library/Frameworks
darwin_CXX_=--target=$(host) \
-isysroot$(OSX_SDK) -nostdlibinc \
-iwithsysroot/usr/include/c++/v1 \
-iwithsysroot/usr/include -iframeworkwithsysroot/System/Library/Frameworks
darwin_CXX=env -u C_INCLUDE_PATH -u CPLUS_INCLUDE_PATH \
-u OBJC_INCLUDE_PATH -u OBJCPLUS_INCLUDE_PATH -u CPATH \
-u LIBRARY_PATH \
$(clangxx_prog) $(darwin_CXX_)
darwin_CFLAGS=-pipe
darwin_CXXFLAGS=-pipe -std=$(CXX_STANDARD)
darwin_CFLAGS=-pipe -mmacosx-version-min=$(OSX_MIN_VERSION) -mlinker-version=$(LD64_VERSION)
darwin_CXXFLAGS=-pipe -mmacosx-version-min=$(OSX_MIN_VERSION) -mlinker-version=$(LD64_VERSION)
darwin_LDFLAGS=-Wl,-platform_version,macos,$(OSX_MIN_VERSION),$(OSX_SDK_VERSION) -fuse-ld=lld
darwin_ARFLAGS=cr
darwin_release_CFLAGS=-O2

View file

@ -0,0 +1,28 @@
package=abseil
$(package)_version=$(native_$(package)_version)
$(package)_download_path=$(native_$(package)_download_path)
$(package)_download_file=$(native_$(package)_download_file)
$(package)_file_name=$(native_$(package)_file_name)
$(package)_sha256_hash=$(native_$(package)_sha256_hash)
$(package)_patches=no_librt.patch
define $(package)_set_vars
$(package)_cxxflags+=-std=c++17
endef
define $(package)_preprocess_cmds
patch -p1 -i $($(package)_patch_dir)/no_librt.patch && \
rm -rf absl/time/internal/cctz/testdata
endef
define $(package)_config_cmds
$($(package)_cmake)
endef
define $(package)_build_cmds
$(MAKE)
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install
endef

View file

@ -1,8 +1,8 @@
package=appimage_runtime
$(package)_version=c9553b05938b22849ac3255ac923bf8e775ce539
$(package)_version=f6c0b18d42eb4aa629cc6a18d08c20cc67c80af8
$(package)_download_path=https://github.com/AppImage/type2-runtime/archive/
$(package)_file_name=$($(package)_version).tar.gz
$(package)_sha256_hash=4a27451013b571cf9f5a13660719d091cc79f2344aafa2e48578ddc0e4618af1
$(package)_sha256_hash=746c2110049c4092dab9d8b788e2a9e98ec77ff9b8b09be844fce1dcdeb4c328
$(package)_dependencies=libsquashfuse zstd
$(package)_patches=depends-fix.patch
@ -13,11 +13,11 @@ endef
define $(package)_build_cmds
cd src/runtime && \
export host_prefix="$(host_prefix)" && \
$(MAKE) runtime-fuse3 -e CC=$($(package)_cc) LDLAGS="$($(package)_ldflags)" && \
"${HOST}-strip" runtime-fuse3
$(MAKE) runtime -e CC=$($(package)_cc) LDLAGS="$($(package)_ldflags)" && \
"${HOST}-strip" runtime
endef
define $(package)_stage_cmds
cd src/runtime && \
cp -a runtime-fuse3 $($(package)_staging_prefix_dir)/runtime
endef
cp -a runtime $($(package)_staging_prefix_dir)/runtime
endef

View file

@ -1,10 +1,9 @@
package=boost
$(package)_version=1.84.0
$(package)_download_path=https://downloads.sourceforge.net/project/boost/boost/$($(package)_version)/
$(package)_file_name=$(package)_$(subst .,_,$($(package)_version)).tar.bz2
$(package)_sha256_hash=cc4b893acf645c9d4b698e9a0f08ca8846aa5d6c68275c14c3e7949c24109454
$(package)_dependencies=libiconv
$(package)_patches=disable_addr2line.patch
$(package)_version=1.85.0
$(package)_download_path=https://archives.boost.io/release/$($(package)_version)/source/
$(package)_file_name=$(package)_$(subst .,_,$($(package)_version)).tar.gz
$(package)_sha256_hash=be0d91732d5b0cc6fbb275c7939974457e79b54d6f07ce2e3dfdd68bef883b0b
$(package)_patches=disable_addr2line.patch filesystem_macos_sdk.patch
define $(package)_set_vars
$(package)_config_opts=variant=release
@ -21,7 +20,8 @@ $(package)_toolset_$(host_os)=gcc
$(package)_archiver_$(host_os)=$($(package)_ar)
$(package)_toolset_darwin=darwin
$(package)_archiver_darwin=$($(package)_libtool)
$(package)_config_libraries=chrono,filesystem,program_options,system,thread,test,date_time,regex,serialization,locale,stacktrace
$(package)_config_libraries_$(host_os)="chrono,filesystem,program_options,system,thread,test,date_time,regex,serialization,stacktrace"
$(package)_config_libraries_mingw32="chrono,filesystem,program_options,system,thread,test,date_time,regex,serialization,stacktrace,locale"
$(package)_cxxflags=-std=c++17
$(package)_cxxflags_linux=-fPIC
$(package)_cxxflags_freebsd=-fPIC
@ -29,11 +29,12 @@ endef
define $(package)_preprocess_cmds
patch -p1 -i $($(package)_patch_dir)/disable_addr2line.patch && \
patch -p1 -i $($(package)_patch_dir)/filesystem_macos_sdk.patch && \
echo "using $(boost_toolset_$(host_os)) : : $($(package)_cxx) : <cxxflags>\"$($(package)_cxxflags) $($(package)_cppflags)\" <linkflags>\"$($(package)_ldflags)\" <archiver>\"$(boost_archiver_$(host_os))\" <arflags>\"$($(package)_arflags)\" <striper>\"$(host_STRIP)\" <ranlib>\"$(host_RANLIB)\" <rc>\"$(host_WINDRES)\" : ;" > user-config.jam
endef
define $(package)_config_cmds
./bootstrap.sh --without-icu --with-libraries=$(boost_config_libraries)
./bootstrap.sh --without-icu --with-libraries=$(boost_config_libraries_$(host_os))
endef
define $(package)_build_cmds

View file

@ -1,8 +1,8 @@
package=darwin_sdk
$(package)_version=12.2
$(package)_download_path=https://featherwallet.org/files/sources/
$(package)_file_name=Xcode-12.2-12B45b-extracted-SDK-with-libcxx-headers.tar.gz
$(package)_sha256_hash=332477876917786b26dd7c3fc1665d2c5cdca81c72755e6a9754f308de77d33b
$(package)_version=15.0
$(package)_download_path=https://bitcoincore.org/depends-sources/sdks
$(package)_file_name=Xcode-15.0-15A240d-extracted-SDK-with-libcxx-headers.tar.gz
$(package)_sha256_hash=c0c2e7bb92c1fee0c4e9f3a485e4530786732d6c6dd9e9f418c282aa6892f55d
define $(package)_stage_cmds
mkdir -p $($(package)_staging_dir)/$(host_prefix)/native/SDK &&\

View file

@ -1,29 +0,0 @@
package=eudev
$(package)_version=3.2.14
$(package)_download_path=https://github.com/eudev-project/eudev/releases/download/v$($(package)_version)/
$(package)_file_name=eudev-$($(package)_version).tar.gz
$(package)_sha256_hash=8da4319102f24abbf7fff5ce9c416af848df163b29590e666d334cc1927f006f
define $(package)_set_vars
$(package)_config_opts=--disable-gudev --disable-introspection --disable-hwdb --disable-manpages --disable-shared
endef
define $(package)_config_cmds
$($(package)_autoconf)
endef
define $(package)_build_cmd
$(MAKE)
endef
define $(package)_preprocess_cmds
cd $($(package)_build_subdir); autoreconf -f -i
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install
endef
define $(package)_postprocess_cmds
rm lib/*.la
endef

View file

@ -1,21 +1,20 @@
package=expat
$(package)_version=2.6.1
$(package)_version=2.7.0
$(package)_download_path=https://github.com/libexpat/libexpat/releases/download/R_$(subst .,_,$($(package)_version))/
$(package)_file_name=$(package)-$($(package)_version).tar.xz
$(package)_sha256_hash=0c00d2760ad12efef6e26efc8b363c8eb28eb8c8de719e46d5bb67b40ba904a3
$(package)_file_name=$(package)-$($(package)_version).tar.gz
$(package)_sha256_hash=362e89ca6b8a0d46fc5740a917eb2a8b4d6356edbe016eee09f49c0781215844
$(package)_build_subdir=build
# -D_DEFAULT_SOURCE defines __USE_MISC, which exposes additional
# definitions in endian.h, which are required for a working
# endianess check in configure when building with -flto.
define $(package)_set_vars
$(package)_config_opts=--disable-shared --without-docbook --without-tests --without-examples
$(package)_config_opts += --disable-dependency-tracking --enable-option-checking
$(package)_config_opts += --without-xmlwf --with-pic
$(package)_cppflags += -D_DEFAULT_SOURCE
$(package)_config_opts := -DEXPAT_BUILD_TOOLS=OFF
$(package)_config_opts += -DEXPAT_BUILD_EXAMPLES=OFF
$(package)_config_opts += -DEXPAT_BUILD_TESTS=OFF
$(package)_config_opts += -DBUILD_SHARED_LIBS=OFF
$(package)_config_opts += -DCMAKE_POSITION_INDEPENDENT_CODE=ON
endef
define $(package)_config_cmds
$($(package)_autoconf)
$($(package)_cmake) -S .. -B .
endef
define $(package)_build_cmds
@ -27,5 +26,5 @@ define $(package)_stage_cmds
endef
define $(package)_postprocess_cmds
rm -rf share lib/cmake lib/*.la
endef
rm -rf share lib/cmake
endef

View file

@ -3,12 +3,17 @@ $(package)_version=a148fb86c30968eeb30dc6ac3384ad2a16690520
$(package)_download_path=https://github.com/tobtoht/ln-guix-store/archive/
$(package)_file_name=$($(package)_version).tar.gz
$(package)_sha256_hash=e9694fcda4f9fcb00374da7a439b881296c0ce67ea98ca44bf2830d1a364365b
$(package)_patches=main.c main.S
define $(package)_preprocess_cmds
cp -f $($(package)_patch_dir)/main.c $($(package)_patch_dir)/main.S .
endef
define $(package)_build_cmds
zig build-exe ln-guix-store.zig -target x86_64-linux-none -OReleaseSmall
$($(package)_cc) -nostdlib -fno-unwind-tables -fno-asynchronous-unwind-tables -fdata-sections -Wl,--gc-sections -Wa,--noexecstack -fno-builtin -fno-stack-protector -static -o startup main.c main.S
endef
define $(package)_stage_cmds
mkdir -p $($(package)_staging_prefix_dir)/bin && \
cp ln-guix-store $($(package)_staging_prefix_dir)/bin/startup
cp startup $($(package)_staging_prefix_dir)/bin/
endef

View file

@ -1,8 +1,8 @@
package=fontconfig
$(package)_version=2.12.6
$(package)_download_path=https://www.freedesktop.org/software/fontconfig/release/
$(package)_file_name=fontconfig-$($(package)_version).tar.bz2
$(package)_sha256_hash=cf0c30807d08f6a28ab46c61b8dbd55c97d2f292cf88f3a07d3384687f31f017
$(package)_file_name=fontconfig-$($(package)_version).tar.gz
$(package)_sha256_hash=064b9ebf060c9e77011733ac9dc0e2ce92870b574cca2405e11f5353a683c334
$(package)_dependencies=freetype expat
$(package)_patches=gperf_header_regen.patch

View file

@ -1,18 +1,20 @@
package=freetype
$(package)_version=2.13.2
$(package)_version=2.13.3
$(package)_download_path=https://sourceforge.net/projects/freetype/files/freetype2/$($(package)_version)/
$(package)_file_name=freetype-$($(package)_version).tar.xz
$(package)_sha256_hash=12991c4e55c506dd7f9b765933e62fd2be2e06d421505d7950a132e4f1bb484d
$(package)_file_name=freetype-$($(package)_version).tar.gz
$(package)_sha256_hash=5c3a8e78f7b24c20b25b54ee575d6daa40007a5f4eea2845861c3409b3021747
define $(package)_set_vars
$(package)_config_opts = --without-zlib --without-png --without-harfbuzz --without-bzip2 --enable-static --disable-shared
$(package)_config_opts := --without-zlib --without-png --without-harfbuzz --without-bzip2 --enable-static --disable-shared
$(package)_config_opts += --enable-option-checking --without-brotli
$(package)_config_opts += --with-pic
endef
define $(package)_preprocess_cmds
rm -rf docs
endef
define $(package)_config_cmds
printenv && \
echo "$($(package)_autoconf)" && \
$($(package)_autoconf)
endef

View file

@ -3,10 +3,16 @@ $(package)_version=0.14.0
$(package)_download_path=https://github.com/libusb/hidapi/archive/refs/tags
$(package)_file_name=$(package)-$($(package)_version).tar.gz
$(package)_sha256_hash=a5714234abe6e1f53647dd8cba7d69f65f71c558b7896ed218864ffcf405bcbd
$(package)_linux_dependencies=libusb eudev
$(package)_linux_dependencies=libusb
$(package)_patches=cmake-fix-libusb.patch
define $(package)_set_vars
$(package)_config_opts+=-DBUILD_SHARED_LIBS=OFF
$(package)_config_opts := -DBUILD_SHARED_LIBS=OFF
$(package)_config_opts += -DHIDAPI_WITH_HIDRAW=OFF
endef
define $(package)_preprocess_cmds
patch -p1 < $($(package)_patch_dir)/cmake-fix-libusb.patch
endef
define $(package)_config_cmds

View file

@ -1,34 +1,37 @@
package=libXau
$(package)_version=1.0.11
$(package)_version=1.0.12
$(package)_download_path=https://xorg.freedesktop.org/releases/individual/lib/
$(package)_file_name=libXau-$($(package)_version).tar.xz
$(package)_sha256_hash=f3fa3282f5570c3f6bd620244438dbfbdd580fc80f02f549587a0f8ab329bbeb
$(package)_file_name=libXau-$($(package)_version).tar.gz
$(package)_sha256_hash=2402dd938da4d0a332349ab3d3586606175e19cb32cb9fe013c19f1dc922dcee
$(package)_dependencies=xorgproto
# When updating this package, check the default value of
# --disable-xthreads. It is currently enabled.
define $(package)_set_vars
$(package)_config_opts=--disable-shared --disable-lint-library --without-lint
$(package)_config_opts += --disable-dependency-tracking --enable-option-checking
$(package)_config_opts += --with-pic
endef
$(package)_patches=toolchain.txt
define $(package)_preprocess_cmds
cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub .
rm Makefile.in aclocal.m4 compile config.guess config.h.in config.sub configure depcomp \
install-sh ltmain.sh missing test-driver man/Makefile.in && \
rm -rf m4 && \
cp $($(package)_patch_dir)/toolchain.txt toolchain.txt && \
sed -i -e 's|@host_prefix@|$(host_prefix)|' \
-e 's|@cc@|$($(package)_cc)|' \
-e 's|@cxx@|$($(package)_cxx)|' \
-e 's|@ar@|$($(package)_ar)|' \
-e 's|@strip@|$(host_STRIP)|' \
-e 's|@arch@|$(host_arch)|' \
toolchain.txt
endef
define $(package)_config_cmds
$($(package)_autoconf)
meson setup --cross-file toolchain.txt build
endef
define $(package)_build_cmds
$(MAKE)
ninja -C build
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install
DESTDIR=$($(package)_staging_dir) ninja -C build install
endef
define $(package)_postprocess_cmds
rm -rf share lib/*.la
sed -i 's/Requires: xproto//g' lib/pkgconfig/xau.pc
endef

View file

@ -0,0 +1,27 @@
package=libffi
$(package)_version=3.4.7
$(package)_download_path := https://github.com/libffi/$(package)/releases/download/v$($(package)_version)
$(package)_file_name := libffi-$($(package)_version).tar.gz
$(package)_sha256_hash := 138607dee268bdecf374adf9144c00e839e38541f75f24a1fcf18b78fda48b2d
define $(package)_set_vars
$(package)_config_opts := --enable-option-checking --disable-dependency-tracking
$(package)_config_opts += --disable-shared --enable-static --disable-docs
$(package)_config_opts += --disable-multi-os-directory
endef
define $(package)_config_cmds
$($(package)_autoconf)
endef
define $(package)_build_cmds
$(MAKE)
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install
endef
define $(package)_postprocess_cmds
rm -rf share
endef

View file

@ -1,28 +1,23 @@
package=libgcrypt
$(package)_version=1.10.3
$(package)_version=1.11.0
$(package)_download_path=https://www.gnupg.org/ftp/gcrypt/libgcrypt/
$(package)_file_name=libgcrypt-$($(package)_version).tar.bz2
$(package)_sha256_hash=8b0870897ac5ac67ded568dcfadf45969cfa8a6beb0fd60af2a9eadc2a3272aa
$(package)_file_name=libgcrypt-$($(package)_version).tar.gz
$(package)_sha256_hash=2382891207d3b000b20c81dbf2036516a535d31abd80f57d455e711e1dde5ff5
$(package)_dependencies=libgpg-error
$(package)_patches=no-programs.patch
define $(package)_set_vars
$(package)_build_opts=CFLAGS="-fPIE"
endef
define $(package)_preprocess_cmds
patch -p1 < $($(package)_patch_dir)/no-programs.patch && \
cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub build-aux
endef
# TODO: building on linux with $($(package)_autoconf) fails for mysterious reasons
ifeq ($(host_os),linux)
define $(package)_config_cmds
CFLAGS='-fPIE' CXXFLAGS='-fPIE' ./configure --host=$(host) --enable-digests="sha256 blake2" --enable-ciphers="aes chacha20" --disable-amd64-as-feature-detection --disable-asm --disable-avx-support --disable-avx2-support --disable-sse41-support --disable-shared --enable-static --disable-doc --with-libgpg-error-prefix=$(host_prefix) --prefix=$(host_prefix)
$($(package)_autoconf) --disable-shared --enable-static --disable-tests --disable-doc --disable-asm --with-libgpg-error-prefix=$(host_prefix)
endef
else
define $(package)_config_cmds
$($(package)_autoconf) --disable-shared --enable-static --disable-doc --disable-asm --with-libgpg-error-prefix=$(host_prefix)
endef
endif
define $(package)_build_cmds
$(MAKE) $($(package)_build_opts)

View file

@ -1,25 +1,31 @@
package=libgpg-error
$(package)_version=1.48
$(package)_version=1.50
$(package)_download_path=https://www.gnupg.org/ftp/gcrypt/libgpg-error/
$(package)_file_name=libgpg-error-$($(package)_version).tar.bz2
$(package)_sha256_hash=89ce1ae893e122924b858de84dc4f67aae29ffa610ebf668d5aa539045663d6f
$(package)_file_name=libgpg-error-$($(package)_version).tar.gz
$(package)_sha256_hash=34a3b36ec8ad830f8f3ceb5db583d1f6dc8ae4c31d04f6da18ea18dd95396ab0
$(package)_patches=declare_environ_macos.patch no-programs.patch
define $(package)_set_vars
$(package)_build_opts=CFLAGS="-fPIE"
$(package)_config_opts := --enable-static --disable-shared
$(package)_config_opts += --disable-doc --disable-tests
$(package)_config_opts += --enable-install-gpg-error-config
$(package)_build_opts := CFLAGS="-fPIE"
endef
define $(package)_preprocess_cmds
patch -p1 < $($(package)_patch_dir)/declare_environ_macos.patch && \
patch -p1 < $($(package)_patch_dir)/no-programs.patch && \
cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub build-aux
endef
define $(package)_config_cmds
$($(package)_autoconf) --enable-static --disable-shared --enable-install-gpg-error-config
$($(package)_autoconf)
endef
define $(package)_build_cmds
$(MAKE) $($(package)_build_opts)
$(MAKE) $($(package)_build_opts)
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install
$(MAKE) DESTDIR=$($(package)_staging_dir) install
endef

View file

@ -1,29 +0,0 @@
package=libiconv
$(package)_version=1.17
$(package)_download_path=https://ftp.gnu.org/gnu/libiconv
$(package)_file_name=libiconv-$($(package)_version).tar.gz
$(package)_sha256_hash=8f74213b56238c85a50a5329f77e06198771e70dd9a739779f4c02f65d971313
define $(package)_set_vars
$(package)_config_opts=--disable-nls
$(package)_config_opts=--enable-static
$(package)_config_opts=--disable-shared
$(package)_config_opts_linux=--with-pic
$(package)_config_opts_freebsd=--with-pic
endef
define $(package)_config_cmds
$($(package)_autoconf) AR_FLAGS=$($(package)_arflags)
endef
define $(package)_build_cmds
$(MAKE)
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install
endef
define $(package)_postprocess_cmds
rm lib/*.la
endef

View file

@ -1,8 +1,8 @@
package=sodium
$(package)_version=1.0.19
package=libsodium
$(package)_version=1.0.20
$(package)_download_path=https://download.libsodium.org/libsodium/releases/
$(package)_file_name=libsodium-$($(package)_version).tar.gz
$(package)_sha256_hash=018d79fe0a045cca07331d37bd0cb57b2e838c51bc48fd837a1472e50068bbea
$(package)_sha256_hash=ebb65ef6ca439333c2bb41a0c1990587288da07f6c7fd07cb3a18cc18d30ce19
$(package)_patches += fix-blake2b-symbol-naming.patch
define $(package)_set_vars
@ -11,9 +11,9 @@ define $(package)_set_vars
endef
define $(package)_preprocess_cmds
rm -rf builds/msvc &&\
cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub build-aux/ && \
patch -p1 -i $($(package)_patch_dir)/fix-blake2b-symbol-naming.patch && \
autoconf
patch -p1 -i $($(package)_patch_dir)/fix-blake2b-symbol-naming.patch
endef
define $(package)_config_cmds

View file

@ -1,14 +1,10 @@
package=libsquashfuse
$(package)_version=e51978cd6bb5c4d16fae9eee43d0b258f570bb0f
$(package)_download_path=https://github.com/vasi/squashfuse/archive/
$(package)_file_name=$($(package)_version).tar.gz
$(package)_sha256_hash=f544029ad30d8fbde4e4540c574b8cdc6d38b94df025a98d8551a9441f07d341
$(package)_version=0.5.2
$(package)_download_path=https://github.com/vasi/squashfuse/releases/download/$($(package)_version)
$(package)_file_name=squashfuse-$($(package)_version).tar.gz
$(package)_sha256_hash=54e4baaa20796e86a214a1f62bab07c7c361fb7a598375576d585712691178f5
$(package)_dependencies=libfuse zstd
define $(package)_preprocess_cmds
./autogen.sh
endef
define $(package)_config_cmds
$($(package)_autoconf) --with-zstd=$(host_prefix) --without-zlib CFLAGS=-no-pie LDFLAGS=-static
endef

View file

@ -1,23 +1,23 @@
package=libusb
$(package)_version=1.0.27
$(package)_download_path=https://github.com/libusb/libusb/releases/download/v$($(package)_version)
$(package)_file_name=$(package)-$($(package)_version).tar.bz2
$(package)_sha256_hash=ffaa41d741a8a3bee244ac8e54a72ea05bf2879663c098c82fc5757853441575
$(package)_download_path=https://github.com/libusb/libusb/archive/refs/tags
$(package)_download_file=v$($(package)_version).tar.gz
$(package)_file_name=$(package)-$($(package)_version).tar.gz
$(package)_sha256_hash=e8f18a7a36ecbb11fb820bd71540350d8f61bcd9db0d2e8c18a6fb80b214a3de
$(package)_patches=CMakeLists.txt config.h.in
define $(package)_preprocess_cmds
cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub . && \
autoreconf -i
cp -f $($(package)_patch_dir)/CMakeLists.txt . && \
cp -f $($(package)_patch_dir)/config.h.in .
endef
define $(package)_set_vars
$(package)_config_opts=--disable-shared
$(package)_config_opts_linux=--with-pic --disable-udev
$(package)_config_opts_mingw32=--disable-udev
$(package)_config_opts_darwin=--disable-udev
$(package)_config_opts := -DBUILD_SHARED_LIBS=OFF
$(package)_config_opts_linux += -DLIBUSB_ENABLE_UDEV=OFF
endef
define $(package)_config_cmds
$($(package)_autoconf)
$($(package)_cmake) .
endef
define $(package)_build_cmd
@ -27,7 +27,3 @@ endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install
endef
define $(package)_postprocess_cmds
cp -f lib/libusb-1.0.a lib/libusb.a
endef

View file

@ -1,8 +1,8 @@
package=libxcb
$(package)_version=1.16.1
$(package)_version=1.17.0
$(package)_download_path=https://xcb.freedesktop.org/dist
$(package)_file_name=libxcb-$($(package)_version).tar.xz
$(package)_sha256_hash=f24d187154c8e027b358fc7cb6588e35e33e6a92f11c668fe77396a7ae66e311
$(package)_file_name=libxcb-$($(package)_version).tar.gz
$(package)_sha256_hash=2c69287424c9e2128cb47ffe92171e10417041ec2963bceafb65cb3fcf8f0b85
$(package)_dependencies=xcb_proto libXau
$(package)_patches = remove_pthread_stubs.patch

View file

@ -1,12 +1,12 @@
package=libxcb_util_cursor
$(package)_version=0.1.4
$(package)_version=0.1.5
$(package)_download_path=https://xcb.freedesktop.org/dist
$(package)_file_name=xcb-util-cursor-$($(package)_version).tar.gz
$(package)_sha256_hash=cc8608ebb695742b6cf84712be29b2b66aa5f6768039528794fca0fa283022bf
$(package)_sha256_hash=0e9c5446dc6f3beb8af6ebfcc9e27bcc6da6fe2860f7fc07b99144dfa568e93b
$(package)_dependencies=libxcb libxcb_util_render libxcb_util_image
define $(package)_set_vars
$(package)_config_opts=--disable-shared --disable-devel-docs --without-doxygen
$(package)_config_opts := --disable-shared --disable-devel-docs --without-doxygen
$(package)_config_opts += --disable-dependency-tracking --enable-option-checking
endef

View file

@ -12,9 +12,9 @@ $(package)_config_opts+= --disable-dependency-tracking --enable-option-checking
endef
define $(package)_preprocess_cmds
rm -rf test && \
cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub . && \
patch -p1 -i $($(package)_patch_dir)/no-tests.patch && \
autoreconf -i
patch -p1 -i $($(package)_patch_dir)/no-tests.patch
endef
define $(package)_config_cmds

View file

@ -1,8 +1,8 @@
package=libxkbcommon
$(package)_version=1.6.0
$(package)_download_path=https://xkbcommon.org/download/
$(package)_file_name=libxkbcommon-$($(package)_version).tar.xz
$(package)_sha256_hash=0edc14eccdd391514458bc5f5a4b99863ed2d651e4dd761a90abf4f46ef99c2b
$(package)_version=1.8.1
$(package)_download_path=https://github.com/xkbcommon/libxkbcommon/archive/refs/tags
$(package)_file_name=xkbcommon-$($(package)_version).tar.gz
$(package)_sha256_hash=c65c668810db305c4454ba26a10b6d84a96b5469719fe3c729e1c6542b8d0d87
$(package)_dependencies=libxcb
$(package)_patches=no-test-x11.patch toolchain.txt
@ -19,7 +19,7 @@ define $(package)_preprocess_cmds
endef
define $(package)_config_cmds
meson setup --cross-file toolchain.txt build
meson setup --cross-file toolchain.txt build -Dxkb-config-root=/usr/share/X11/xkb -Dxkb-config-extra-path=/app/share/X11/xkb
endef
define $(package)_build_cmds

View file

@ -1,17 +1,33 @@
package=libzip
$(package)_version=1.10.1
$(package)_version=1.11.3
$(package)_download_path=https://libzip.org/download/
$(package)_file_name=$(package)-$($(package)_version).tar.xz
$(package)_sha256_hash=dc3c8d5b4c8bbd09626864f6bcf93de701540f761d76b85d7c7d710f4bd90318
$(package)_file_name=$(package)-$($(package)_version).tar.gz
$(package)_sha256_hash=76653f135dde3036036c500e11861648ffbf9e1fc5b233ff473c60897d9db0ea
$(package)_dependencies=zlib
$(package)_patches += no-clonefile.patch
define $(package)_set_vars
$(package)_config_opts := -DENABLE_BZIP2=OFF
$(package)_config_opts += -DENABLE_LZMA=OFF
$(package)_config_opts += -DENABLE_ZSTD=OFF
$(package)_config_opts += -DENABLE_COMMONCRYPTO=OFF
$(package)_config_opts += -DENABLE_GNUTLS=OFF
$(package)_config_opts += -DENABLE_MBEDTLS=OFF
$(package)_config_opts += -DENABLE_OPENSSL=OFF
$(package)_config_opts += -DENABLE_WINDOWS_CRYPTO=OFF
$(package)_config_opts += -DBUILD_SHARED_LIBS=OFF
$(package)_config_opts += -DBUILD_TOOLS=OFF
$(package)_config_opts += -DBUILD_REGRESS=OFF
$(package)_config_opts += -DBUILD_OSSFUZZ=OFF
$(package)_config_opts += -DBUILD_EXAMPLES=OFF
$(package)_config_opts += -DBUILD_DOC=OFF
endef
define $(package)_preprocess_cmds
patch -p1 < $($(package)_patch_dir)/no-clonefile.patch
rm -rf regress ossfuzz
endef
define $(package)_config_cmds
$($(package)_cmake) -DZLIB_ROOT=$(host_prefix) -DENABLE_BZIP2=Off -DBUILD_SHARED_LIBS=OFF -DCMAKE_INSTALL_PREFIX=$(host_prefix) .
$($(package)_cmake) .
endef
define $(package)_build_cmds
@ -20,4 +36,4 @@ endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install
endef
endef

View file

@ -0,0 +1,22 @@
package=native_abseil
$(package)_version=20250127.0
$(package)_download_path=https://github.com/abseil/abseil-cpp/archive/refs/tags/
$(package)_download_file=$($(package)_version).tar.gz
$(package)_file_name=abseil-$($(package)_version).tar.gz
$(package)_sha256_hash=16242f394245627e508ec6bb296b433c90f8d914f73b9c026fddb905e27276e8
define $(package)_config_cmds
$($(package)_cmake)
endef
define $(package)_preprocess_cmds
rm -rf absl/time/internal/cctz/testdata
endef
define $(package)_build_cmds
$(MAKE)
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install
endef

View file

@ -1,36 +0,0 @@
package=native_cctools
$(package)_version=2ef2e931cf641547eb8a68cfebde61003587c9fd
$(package)_download_path=https://github.com/tpoechtrager/cctools-port/archive
$(package)_file_name=$($(package)_version).tar.gz
$(package)_sha256_hash=6b73269efdf5c58a070e7357b66ee760501388549d6a12b423723f45888b074b
$(package)_build_subdir=cctools
$(package)_dependencies=native_libtapi
$(package)_patches=no-build-date.patch
define $(package)_set_vars
$(package)_config_opts=--target=$(host)
$(package)_ldflags+=-Wl,-rpath=\\$$$$$$$$\$$$$$$$$ORIGIN/../lib
$(package)_cc=$(clang_prog)
$(package)_cxx=$(clangxx_prog)
endef
define $(package)_preprocess_cmds
patch -p1 < $($(package)_patch_dir)/no-build-date.patch && \
cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub cctools
endef
define $(package)_config_cmds
$($(package)_autoconf)
endef
define $(package)_build_cmds
$(MAKE)
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install
endef
define $(package)_postprocess_cmds
rm -rf share
endef

View file

@ -0,0 +1,30 @@
package=native_expat
$(package)_version=2.7.0
$(package)_download_path=https://github.com/libexpat/libexpat/releases/download/R_$(subst .,_,$($(package)_version))/
$(package)_file_name=expat-$($(package)_version).tar.gz
$(package)_sha256_hash=362e89ca6b8a0d46fc5740a917eb2a8b4d6356edbe016eee09f49c0781215844
$(package)_build_subdir=build
define $(package)_set_vars
$(package)_config_opts := -DEXPAT_BUILD_TOOLS=OFF
$(package)_config_opts += -DEXPAT_BUILD_EXAMPLES=OFF
$(package)_config_opts += -DEXPAT_BUILD_TESTS=OFF
$(package)_config_opts += -DBUILD_SHARED_LIBS=OFF
$(package)_config_opts += -DCMAKE_POSITION_INDEPENDENT_CODE=ON
endef
define $(package)_config_cmds
$($(package)_cmake) -S .. -B .
endef
define $(package)_build_cmds
$(MAKE)
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install
endef
define $(package)_postprocess_cmds
rm -rf share lib/cmake
endef

View file

@ -0,0 +1,27 @@
package=native_libffi
$(package)_version=3.4.7
$(package)_download_path := https://github.com/libffi/libffi/releases/download/v$($(package)_version)
$(package)_file_name := libffi-$($(package)_version).tar.gz
$(package)_sha256_hash := 138607dee268bdecf374adf9144c00e839e38541f75f24a1fcf18b78fda48b2d
define $(package)_set_vars
$(package)_config_opts := --enable-option-checking --disable-dependency-tracking
$(package)_config_opts += --enable-shared --disable-static --disable-docs
$(package)_config_opts += --disable-multi-os-directory
endef
define $(package)_config_cmds
$($(package)_autoconf)
endef
define $(package)_build_cmds
$(MAKE)
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install
endef
define $(package)_postprocess_cmds
rm -rf share
endef

View file

@ -1,20 +0,0 @@
package=native_libtapi
$(package)_version=664b8414f89612f2dfd35a9b679c345aa5389026
$(package)_download_path=https://github.com/tpoechtrager/apple-libtapi/archive
$(package)_file_name=$($(package)_version).tar.gz
$(package)_sha256_hash=62e419c12d1c9fad67cc1cd523132bc00db050998337c734c15bc8d73cc02b61
$(package)_patches=no_embed_git_rev.patch
define $(package)_preprocess_cmds
patch -p1 -i $($(package)_patch_dir)/no_embed_git_rev.patch
endef
define $(package)_build_cmds
CC=$(clang_prog) CXX=$(clangxx_prog) INSTALLPREFIX=$($(package)_staging_prefix_dir) ./build.sh
endef
define $(package)_stage_cmds
./install.sh && \
mkdir -p $($(package)_staging_prefix_dir)/include/llvm-c && \
cp src/llvm/include/llvm-c/lto.h $($(package)_staging_prefix_dir)/include/llvm-c
endef

View file

@ -1,27 +1,34 @@
package=native_protobuf
$(package)_version=3.21.12
$(package)_download_path=https://github.com/protocolbuffers/protobuf/releases/download/v21.12/
$(package)_file_name=protobuf-cpp-$($(package)_version).tar.gz
$(package)_sha256_hash=4eab9b524aa5913c6fffb20b2a8abf5ef7f95a80bc0701f3a6dbb4c607f73460
$(package)_cxxflags=-std=c++11
$(package)_version=29.1
$(package)_download_path=https://github.com/protocolbuffers/protobuf/releases/download/v$($(package)_version)
$(package)_file_name=protobuf-$($(package)_version).tar.gz
$(package)_sha256_hash=3d32940e975c4ad9b8ba69640e78f5527075bae33ca2890275bf26b853c0962c
$(package)_dependencies=native_abseil
define $(package)_set_vars
$(package)_config_opts=--disable-shared --prefix=$(build_prefix)
$(package)_config_opts_linux=--with-pic
$(package)_cxxflags+=-std=c++17
$(package)_config_opts=-Dprotobuf_BUILD_TESTS=OFF
$(package)_config_opts+=-Dprotobuf_ABSL_PROVIDER=package
$(package)_config_opts+=-Dprotobuf_BUILD_SHARED_LIBS=OFF
$(package)_config_opts+=-Dprotobuf_WITH_ZLIB=OFF
endef
define $(package)_preprocess_cmds
rm -rf examples docs php/src/GPBMetadata compatibility objectivec/Tests csharp/keys php/tests src/google/protobuf/testdata csharp/src/Google.Protobuf.Test
endef
define $(package)_config_cmds
$($(package)_autoconf)
$($(package)_cmake)
endef
define $(package)_build_cmds
$(MAKE) -C src protoc
$(MAKE)
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) -C src install-binPROGRAMS install-nobase_dist_protoDATA
$(MAKE) DESTDIR=$($(package)_staging_dir) install
endef
define $(package)_postprocess_cmds
rm -rf lib/
rm -rf lib64
endef

View file

@ -1,33 +1,37 @@
package=native_qt
$(package)_version=6.6.2
$(package)_download_path=https://download.qt.io/official_releases/qt/6.6/$($(package)_version)/submodules
$(package)_version=6.9.0
$(package)_download_path=https://download.qt.io/official_releases/qt/6.9/$($(package)_version)/submodules
$(package)_suffix=everywhere-src-$($(package)_version).tar.xz
$(package)_file_name=qtbase-$($(package)_suffix)
$(package)_sha256_hash=b89b426b9852a17d3e96230ab0871346574d635c7914480a2a27f98ff942677b
$(package)_sha256_hash=c1800c2ea835801af04a05d4a32321d79a93954ee3ae2172bbeacf13d1f0598c
$(package)_linux_dependencies=native_wayland
$(package)_qt_libs=corelib network widgets gui plugins testlib
$(package)_patches = dont_hardcode_pwd.patch
$(package)_patches += fast_fixed_dtoa_no_optimize.patch
$(package)_patches = fast_fixed_dtoa_no_optimize.patch
$(package)_patches += guix_cross_lib_path.patch
$(package)_patches += qtbase-moc-ignore-gcc-macro.patch
$(package)_patches += rcc_hardcode_timestamp.patch
$(package)_patches += root_CMakeLists.txt
$(package)_qttools_file_name=qttools-$($(package)_suffix)
$(package)_qttools_sha256_hash=e6d49e9f52111287f77878ecb8b708cce682f10b03ba2476d9247603bc6c4746
$(package)_qttools_sha256_hash=fa645589cc3f939022401a926825972a44277dead8ec8607d9f2662e6529c9a4
$(package)_qtsvg_file_name=qtsvg-$($(package)_suffix)
$(package)_qtsvg_sha256_hash=5a231d59ef1b42bfbaa5174d4ff39f8e1b4ba070ef984a70b069b4b2576d8181
$(package)_qtsvg_sha256_hash=ec359d930c95935ea48af58b100c2f5d0d275968ec8ca1e0e76629b7159215fc
$(package)_qtmultimedia_file_name=qtmultimedia-$($(package)_suffix)
$(package)_qtmultimedia_sha256_hash=e2942599ba0ae106ab3e4f82d6633e8fc1943f8a35d91f99d1fca46d251804ec
$(package)_qtmultimedia_sha256_hash=995c3b194f3de3e1929280639642f7661d94aa57523c459dbbf2f71dbdcaa18c
$(package)_qtshadertools_file_name=qtshadertools-$($(package)_suffix)
$(package)_qtshadertools_sha256_hash=628bead7ff4e7f42cb910f47d2adefbdea0d8c71a0234baef8ca709bf467b92f
$(package)_qtshadertools_sha256_hash=916c40281ac3dee23b163f6ca73fb5bdeee344838b9a922b6f36269642d6f4bb
$(package)_qtwayland_file_name=qtwayland-$($(package)_suffix)
$(package)_qtwayland_sha256_hash=503416fcb04db503bd130e6a49c45e3e546f091e83406f774a0c703130c91805
$(package)_extra_sources += $($(package)_qttools_file_name)
$(package)_extra_sources += $($(package)_qtsvg_file_name)
$(package)_extra_sources += $($(package)_qtmultimedia_file_name)
$(package)_extra_sources += $($(package)_qtshadertools_file_name)
$(package)_extra_sources += $($(package)_qtwayland_file_name)
define $(package)_set_vars
$(package)_config_opts_release = -release
@ -101,6 +105,7 @@ $(package)_config_opts += -no-openssl
$(package)_config_opts += -no-openvg
$(package)_config_opts += -no-pch
$(package)_config_opts += -no-reduce-relocations
$(package)_config_opts += -no-sbom
$(package)_config_opts += -no-schannel
$(package)_config_opts += -no-sctp
$(package)_config_opts += -no-securetransport
@ -112,6 +117,9 @@ $(package)_config_opts += -no-zstd
ifneq ($(LTO),)
$(package)_config_opts += -ltcg
endif
$(package)_config_env := CC="$$($(package)_cc)"
$(package)_config_env += CXX="$$($(package)_cxx)"
endef
define $(package)_fetch_cmds
@ -119,7 +127,8 @@ $(call fetch_file,$(package),$($(package)_download_path),$($(package)_download_f
$(call fetch_file,$(package),$($(package)_download_path),$($(package)_qttools_file_name),$($(package)_qttools_file_name),$($(package)_qttools_sha256_hash)) && \
$(call fetch_file,$(package),$($(package)_download_path),$($(package)_qtsvg_file_name),$($(package)_qtsvg_file_name),$($(package)_qtsvg_sha256_hash)) && \
$(call fetch_file,$(package),$($(package)_download_path),$($(package)_qtmultimedia_file_name),$($(package)_qtmultimedia_file_name),$($(package)_qtmultimedia_sha256_hash)) && \
$(call fetch_file,$(package),$($(package)_download_path),$($(package)_qtshadertools_file_name),$($(package)_qtshadertools_file_name),$($(package)_qtshadertools_sha256_hash))
$(call fetch_file,$(package),$($(package)_download_path),$($(package)_qtshadertools_file_name),$($(package)_qtshadertools_file_name),$($(package)_qtshadertools_sha256_hash)) && \
$(call fetch_file,$(package),$($(package)_download_path),$($(package)_qtwayland_file_name),$($(package)_qtwayland_file_name),$($(package)_qtwayland_sha256_hash))
endef
define $(package)_extract_cmds
@ -129,6 +138,7 @@ define $(package)_extract_cmds
echo "$($(package)_qtsvg_sha256_hash) $($(package)_source_dir)/$($(package)_qtsvg_file_name)" >> $($(package)_extract_dir)/.$($(package)_file_name).hash && \
echo "$($(package)_qtmultimedia_sha256_hash) $($(package)_source_dir)/$($(package)_qtmultimedia_file_name)" >> $($(package)_extract_dir)/.$($(package)_file_name).hash && \
echo "$($(package)_qtshadertools_sha256_hash) $($(package)_source_dir)/$($(package)_qtshadertools_file_name)" >> $($(package)_extract_dir)/.$($(package)_file_name).hash && \
echo "$($(package)_qtwayland_sha256_hash) $($(package)_source_dir)/$($(package)_qtwayland_file_name)" >> $($(package)_extract_dir)/.$($(package)_file_name).hash && \
$(build_SHA256SUM) -c $($(package)_extract_dir)/.$($(package)_file_name).hash && \
mkdir qtbase && \
$(build_TAR) --no-same-owner --strip-components=1 -xf $($(package)_source) -C qtbase && \
@ -139,12 +149,13 @@ define $(package)_extract_cmds
mkdir qtmultimedia && \
$(build_TAR) --no-same-owner --strip-components=1 -xf $($(package)_source_dir)/$($(package)_qtmultimedia_file_name) -C qtmultimedia && \
mkdir qtshadertools && \
$(build_TAR) --no-same-owner --strip-components=1 -xf $($(package)_source_dir)/$($(package)_qtshadertools_file_name) -C qtshadertools
$(build_TAR) --no-same-owner --strip-components=1 -xf $($(package)_source_dir)/$($(package)_qtshadertools_file_name) -C qtshadertools && \
mkdir qtwayland && \
$(build_TAR) --no-same-owner --strip-components=1 -xf $($(package)_source_dir)/$($(package)_qtwayland_file_name) -C qtwayland
endef
define $(package)_preprocess_cmds
cp $($(package)_patch_dir)/root_CMakeLists.txt CMakeLists.txt && \
patch -p1 -i $($(package)_patch_dir)/dont_hardcode_pwd.patch && \
patch -p1 -i $($(package)_patch_dir)/qtbase-moc-ignore-gcc-macro.patch && \
patch -p1 -i $($(package)_patch_dir)/rcc_hardcode_timestamp.patch && \
patch -p1 -i $($(package)_patch_dir)/fast_fixed_dtoa_no_optimize.patch && \
@ -156,7 +167,6 @@ define $(package)_config_cmds
export PKG_CONFIG_LIBDIR=$(build_prefix)/lib/pkgconfig && \
export QT_MAC_SDK_NO_VERSION_CHECK=1 && \
unset CMAKE_PREFIX_PATH && \
export CMAKE_PREFIX_PATH="$(QT_LIBS)" && \
cd qtbase && \
./configure -top-level $($(package)_config_opts)
endef

View file

@ -0,0 +1,18 @@
package=native_wayland
$(package)_version=1.23.1
$(package)_download_path := https://gitlab.freedesktop.org/wayland/wayland/-/releases/$($(package)_version)/downloads/
$(package)_file_name := wayland-$($(package)_version).tar.xz
$(package)_sha256_hash := 864fb2a8399e2d0ec39d56e9d9b753c093775beadc6022ce81f441929a81e5ed
$(package)_dependencies := native_expat native_libffi
define $(package)_config_cmds
meson setup build -Dprefix="$(build_prefix)" -Ddtd_validation=false -Ddocumentation=false -Dtests=false
endef
define $(package)_build_cmds
ninja -C build
endef
define $(package)_stage_cmds
DESTDIR=$($(package)_staging_dir) ninja -C build install
endef

View file

@ -1,14 +1,15 @@
package=openssl
$(package)_version=3.2.1
$(package)_download_path=https://www.openssl.org/source
$(package)_version=3.4.1
$(package)_download_path=https://github.com/openssl/openssl/releases/download/openssl-$($(package)_version)
$(package)_file_name=$(package)-$($(package)_version).tar.gz
$(package)_sha256_hash=83c7329fe52c850677d75e5d0b0ca245309b97e8ecbcfdc1dfdc4ab9fac35b39
$(package)_sha256_hash=002a2d6b30b58bf4bea46c43bdd96365aaf8daa6c428782aa4feee06da197df3
define $(package)_set_vars
$(package)_config_env=AR="$($(package)_ar)" ARFLAGS=$($(package)_arflags) RANLIB="$($(package)_ranlib)" CC="$($(package)_cc)"
$(package)_config_env_android=ANDROID_NDK_ROOT="$(host_prefix)/native" PATH="$(host_prefix)/native/bin" CC=clang AR=ar RANLIB=ranlib
$(package)_build_env_android=ANDROID_NDK_ROOT="$(host_prefix)/native"
$(package)_config_opts=--prefix=$(host_prefix) --openssldir=$(host_prefix)/etc/openssl --libdir=$(host_prefix)/lib
$(package)_config_opts+=no-apps
$(package)_config_opts+=no-capieng
$(package)_config_opts+=no-dso
$(package)_config_opts+=no-dtls1
@ -49,7 +50,8 @@ $(package)_config_opts_x86_64_freebsd=BSD-x86_64
endef
define $(package)_preprocess_cmds
sed -i.old 's|crypto ssl apps util tools fuzz providers doc|crypto ssl util tools providers|' build.info
sed -i.old 's|crypto ssl apps util tools fuzz providers doc|crypto ssl util tools providers|' build.info &&\
rm -rf doc demos apps test
endef
define $(package)_config_cmds

View file

@ -1,13 +1,13 @@
packages := boost openssl libiconv unbound qrencode sodium polyseed hidapi protobuf libusb zlib libgpg-error libgcrypt expat libzip zxing-cpp
native_packages := native_qt native_protobuf
packages := boost openssl unbound qrencode libsodium polyseed hidapi abseil protobuf libusb zlib libgpg-error libgcrypt expat libzip zxing-cpp
native_packages := native_qt native_abseil native_protobuf
linux_packages := eudev libfuse libsquashfuse zstd appimage_runtime
linux_native_packages =
linux_packages := libfuse libsquashfuse zstd appimage_runtime wayland libffi
linux_native_packages := native_expat native_libffi native_wayland
x86_64_linux_packages := flatstart
darwin_packages :=
darwin_native_packages = darwin_sdk native_cctools native_libtapi
darwin_native_packages = darwin_sdk
mingw32_packages =
mingw32_native_packages =
@ -18,4 +18,4 @@ qt_mingw32_packages := qt
tor_linux_packages := libevent tor_linux
tor_darwin_packages := tor_darwin
tor_mingw32_packages := tor_mingw32
tor_mingw32_packages := tor_mingw32

View file

@ -3,27 +3,30 @@ $(package)_version=$(native_$(package)_version)
$(package)_download_path=$(native_$(package)_download_path)
$(package)_file_name=$(native_$(package)_file_name)
$(package)_sha256_hash=$(native_$(package)_sha256_hash)
$(package)_dependencies=native_$(package)
$(package)_cxxflags=-std=c++11
$(package)_dependencies=abseil
define $(package)_set_vars
$(package)_config_opts=--disable-shared --with-protoc=$(build_prefix)/bin/protoc
$(package)_config_opts_linux=--with-pic
$(package)_cxxflags+=-std=c++17
$(package)_config_opts=-Dprotobuf_ABSL_PROVIDER=package
$(package)_config_opts+=-Dprotobuf_BUILD_TESTS=OFF
$(package)_config_opts+=-Dprotobuf_BUILD_SHARED_LIBS=OFF
$(package)_config_opts+=-Dprotobuf_BUILD_PROTOC_BINARIES=OFF
$(package)_config_opts+=-Dprotobuf_WITH_ZLIB=OFF
$(package)_config_opts+=-Dprotobuf_BUILD_LIBUPB=OFF
endef
define $(package)_preprocess_cmds
rm -rf docs php/src/GPBMetadata compatibility objectivec/Tests csharp/keys php/tests src/google/protobuf/testdata csharp/src/Google.Protobuf.Test
endef
define $(package)_config_cmds
cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub . && \
cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub ./third_party/googletest/googletest/build-aux/ && \
cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub ./third_party/googletest/googlemock/build-aux/ && \
$($(package)_autoconf)
$($(package)_cmake)
endef
define $(package)_build_cmds
$(MAKE) -C src libprotobuf.la
$(MAKE)
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) -C src install-nobase_includeHEADERS &&\
$(MAKE) DESTDIR=$($(package)_staging_dir) install-pkgconfigDATA &&\
cp -f src/.libs/libprotobuf.a $($(package)_staging_prefix_dir)/lib/
$(MAKE) DESTDIR=$($(package)_staging_dir) install
endef

View file

@ -1,8 +1,8 @@
package=qrencode
$(package)_version=4.1.1
$(package)_download_path=https://fukuchi.org/works/qrencode/
$(package)_file_name=$(package)-$($(package)_version).tar.bz2
$(package)_sha256_hash=e455d9732f8041cf5b9c388e345a641fd15707860f928e94507b1961256a6923
$(package)_file_name=$(package)-$($(package)_version).tar.gz
$(package)_sha256_hash=da448ed4f52aba6bcb0cd48cac0dd51b8692bccc4cd127431402fca6f8171e8e
define $(package)_set_vars
$(package)_config_opts=--disable-shared --without-tools --without-tests --disable-sdltest

View file

@ -1,12 +1,12 @@
package=qt
$(package)_version=6.6.2
$(package)_download_path=https://download.qt.io/official_releases/qt/6.6/$($(package)_version)/submodules
$(package)_version=6.9.0
$(package)_download_path=https://download.qt.io/official_releases/qt/6.9/$($(package)_version)/submodules
$(package)_suffix=everywhere-src-$($(package)_version).tar.xz
$(package)_file_name=qtbase-$($(package)_suffix)
$(package)_sha256_hash=b89b426b9852a17d3e96230ab0871346574d635c7914480a2a27f98ff942677b
$(package)_darwin_dependencies=native_cctools native_qt openssl
$(package)_sha256_hash=c1800c2ea835801af04a05d4a32321d79a93954ee3ae2172bbeacf13d1f0598c
$(package)_darwin_dependencies=openssl native_qt
$(package)_mingw32_dependencies=openssl native_qt
$(package)_linux_dependencies=openssl native_qt freetype fontconfig libxcb libxkbcommon libxcb_util libxcb_util_render libxcb_util_keysyms libxcb_util_image libxcb_util_wm libxcb_util_cursor dbus
$(package)_linux_dependencies=openssl native_qt freetype fontconfig libxcb libxkbcommon libxcb_util libxcb_util_render libxcb_util_keysyms libxcb_util_image libxcb_util_wm libxcb_util_cursor dbus wayland native_wayland
$(package)_patches += fast_fixed_dtoa_no_optimize.patch
$(package)_patches += guix_cross_lib_path.patch
$(package)_patches += qtbase-moc-ignore-gcc-macro.patch
@ -15,35 +15,41 @@ $(package)_patches += rcc_hardcode_timestamp.patch
$(package)_patches += root_CMakeLists.txt
$(package)_patches += v4l2.patch
$(package)_patches += windows_func_fix.patch
$(package)_patches += revert_f99ee441.patch
$(package)_patches += xcb-util-image-fix.patch
$(package)_patches += libxau-fix.patch
$(package)_patches += toolchain.cmake
$(package)_patches += revert-macOS-Silence-warning-about-supporting-secure.patch
$(package)_patches += no-resonance-audio.patch
$(package)_patches += fix_static_qt_darwin_camera_permissions.patch
$(package)_patches += macos-available-qtbase.patch
$(package)_patches += macos-available-qtmultimedia.patch
$(package)_patches += qtwayland-tabletevent-fix.patch
#$(package)_patches += fix-static-fontconfig-static-linking.patch
$(package)_qttools_file_name=qttools-$($(package)_suffix)
$(package)_qttools_sha256_hash=e6d49e9f52111287f77878ecb8b708cce682f10b03ba2476d9247603bc6c4746
$(package)_qttools_sha256_hash=fa645589cc3f939022401a926825972a44277dead8ec8607d9f2662e6529c9a4
$(package)_qtsvg_file_name=qtsvg-$($(package)_suffix)
$(package)_qtsvg_sha256_hash=5a231d59ef1b42bfbaa5174d4ff39f8e1b4ba070ef984a70b069b4b2576d8181
$(package)_qtsvg_sha256_hash=ec359d930c95935ea48af58b100c2f5d0d275968ec8ca1e0e76629b7159215fc
$(package)_qtwebsockets_file_name=qtwebsockets-$($(package)_suffix)
$(package)_qtwebsockets_sha256_hash=c0e6ea9bc8db4290bb43e683fb3d639055fe91258f357980eb6ef5abab4438f9
$(package)_qtwebsockets_sha256_hash=6b3add7cacf3a4e0b448d5e69d9dac42795fef63309038af1dc5a454ce514940
$(package)_qtmultimedia_file_name=qtmultimedia-$($(package)_suffix)
$(package)_qtmultimedia_sha256_hash=e2942599ba0ae106ab3e4f82d6633e8fc1943f8a35d91f99d1fca46d251804ec
$(package)_qtmultimedia_sha256_hash=995c3b194f3de3e1929280639642f7661d94aa57523c459dbbf2f71dbdcaa18c
$(package)_qtshadertools_file_name=qtshadertools-$($(package)_suffix)
$(package)_qtshadertools_sha256_hash=628bead7ff4e7f42cb910f47d2adefbdea0d8c71a0234baef8ca709bf467b92f
$(package)_qtshadertools_sha256_hash=916c40281ac3dee23b163f6ca73fb5bdeee344838b9a922b6f36269642d6f4bb
$(package)_qtwayland_file_name=qtwayland-$($(package)_suffix)
$(package)_qtwayland_sha256_hash=503416fcb04db503bd130e6a49c45e3e546f091e83406f774a0c703130c91805
$(package)_extra_sources += $($(package)_qttools_file_name)
$(package)_extra_sources += $($(package)_qtsvg_file_name)
$(package)_extra_sources += $($(package)_qtwebsockets_file_name)
$(package)_extra_sources += $($(package)_qtmultimedia_file_name)
$(package)_extra_sources += $($(package)_qtshadertools_file_name)
$(package)_extra_sources += $($(package)_qtwayland_file_name)
define $(package)_set_vars
$(package)_config_opts += -DQT_HOST_PATH=$(build_prefix)/qt-host
@ -53,91 +59,116 @@ $(package)_config_opts += -DCMAKE_INSTALL_PREFIX=$(host_prefix)
$(package)_config_opts += -DINSTALL_LIBEXECDIR=$(build_prefix)/bin
$(package)_config_opts += -DQT_BUILD_EXAMPLES=FALSE
$(package)_config_opts += -DQT_BUILD_TESTS=FALSE
$(package)_config_opts += -DQT_GENERATE_SBOM=OFF
$(package)_config_opts += -DCMAKE_TOOLCHAIN_FILE=toolchain.cmake
$(package)_config_opts += -DINPUT_cups=no
$(package)_config_opts += -DINPUT_egl=no
$(package)_config_opts += -DINPUT_eglfs=no
$(package)_config_opts += -DINPUT_evdev=no
$(package)_config_opts += -DINPUT_gif=no
$(package)_config_opts += -DINPUT_glib=no
$(package)_config_opts += -DINPUT_icu=no
$(package)_config_opts += -DINPUT_ico=no
$(package)_config_opts += -DINPUT_kms=no
$(package)_config_opts += -DINPUT_linuxfb=no
$(package)_config_opts += -DINPUT_libudev=no
$(package)_config_opts += -DINPUT_mtdev=no
$(package)_config_opts += -DINPUT_openssl=linked
$(package)_config_opts += -DINPUT_openvg=no
$(package)_config_opts += -DINPUT_permissions=yes
$(package)_config_opts += -DINPUT_reduce_relocations=no
$(package)_config_opts += -DINPUT_schannel=no
$(package)_config_opts += -DINPUT_sctp=no
$(package)_config_opts += -DINPUT_securetransport=no
$(package)_config_opts += -DINPUT_system_proxies=no
$(package)_config_opts += -DINPUT_use_gold_linker_alias=no
$(package)_config_opts += -DINPUT_zstd=no
$(package)_config_opts += -DINPUT_pkg_config=yes
$(package)_config_opts += -DINPUT_libpng=qt
$(package)_config_opts += -DINPUT_pcre=qt
$(package)_config_opts += -DINPUT_harfbuzz=qt
$(package)_config_opts += -DINPUT_system_zlib=no
$(package)_config_opts += -DINPUT_colordialog=no
$(package)_config_opts += -DINPUT_dial=no
$(package)_config_opts += -DINPUT_fontcombobox=no
$(package)_config_opts += -DINPUT_image_heuristic_mask=no
$(package)_config_opts += -DINPUT_keysequenceedit=no
$(package)_config_opts += -DINPUT_lcdnumber=no
$(package)_config_opts += -DINPUT_networkdiskcache=no
$(package)_config_opts += -DINPUT_pdf=no
$(package)_config_opts += -DINPUT_printdialog=no
$(package)_config_opts += -DINPUT_printer=no
$(package)_config_opts += -DINPUT_printpreviewdialog=no
$(package)_config_opts += -DINPUT_printpreviewwidget=no
$(package)_config_opts += -DINPUT_printsupport=no
$(package)_config_opts += -DINPUT_sessionmanager=no
$(package)_config_opts += -DINPUT_spatialaudio=no
$(package)_config_opts += -DINPUT_sql=no
$(package)_config_opts += -DINPUT_syntaxhighlighter=no
$(package)_config_opts += -DINPUT_textmarkdownwriter=no
$(package)_config_opts += -DINPUT_textodfwriter=no
$(package)_config_opts += -DINPUT_topleveldomain=no
$(package)_config_opts += -DINPUT_undocommand=no
$(package)_config_opts += -DINPUT_undogroup=no
$(package)_config_opts += -DINPUT_undostack=no
$(package)_config_opts += -DINPUT_undoview=no
$(package)_config_opts += -DINPUT_vnc=no
$(package)_config_opts += -DQT_FEATURE_cups=OFF
$(package)_config_opts += -DQT_FEATURE_qmake=OFF
$(package)_config_opts += -DQT_FEATURE_egl=OFF
$(package)_config_opts += -DQT_FEATURE_egl_x11=OFF
$(package)_config_opts += -DQT_FEATURE_xcb_egl_plugin=OFF
$(package)_config_opts += -DQT_FEATURE_xcb_glx_plugin=OFF
$(package)_config_opts += -DQT_FEATURE_eglfs=OFF
$(package)_config_opts += -DQT_FEATURE_evdev=OFF
$(package)_config_opts += -DQT_FEATURE_gif=OFF
$(package)_config_opts += -DQT_FEATURE_glib=OFF
$(package)_config_opts += -DQT_FEATURE_icu=OFF
$(package)_config_opts += -DQT_FEATURE_ico=OFF
$(package)_config_opts += -DQT_FEATURE_kms=OFF
$(package)_config_opts += -DQT_FEATURE_linuxfb=OFF
$(package)_config_opts += -DQT_FEATURE_libudev=OFF
$(package)_config_opts += -DQT_FEATURE_mtdev=OFF
$(package)_config_opts += -DQT_FEATURE_openssl=ON
$(package)_config_opts += -DQT_FEATURE_openssl_linked=ON
$(package)_config_opts += -DQT_FEATURE_openvg=OFF
$(package)_config_opts += -DQT_FEATURE_permissions=ON
$(package)_config_opts += -DQT_FEATURE_reduce_relocations=OFF
$(package)_config_opts += -DQT_FEATURE_schannel=OFF
$(package)_config_opts += -DQT_FEATURE_sctp=OFF
$(package)_config_opts += -DQT_FEATURE_securetransport=OFF
$(package)_config_opts += -DQT_FEATURE_system_proxies=OFF
$(package)_config_opts += -DQT_FEATURE_use_gold_linker_alias=OFF
$(package)_config_opts += -DQT_FEATURE_zstd=OFF
$(package)_config_opts += -DQT_FEATURE_pkg_config=ON
$(package)_config_opts += -DQT_FEATURE_system_png=OFF
$(package)_config_opts += -DQT_FEATURE_system_pcre2=OFF
$(package)_config_opts += -DQT_FEATURE_system_harfbuzz=OFF
$(package)_config_opts += -DQT_FEATURE_system_zlib=OFF
$(package)_config_opts += -DQT_FEATURE_colordialog=OFF
$(package)_config_opts += -DQT_FEATURE_dial=OFF
$(package)_config_opts += -DQT_FEATURE_fontcombobox=OFF
$(package)_config_opts += -DQT_FEATURE_image_heuristic_mask=OFF
$(package)_config_opts += -DQT_FEATURE_keysequenceedit=OFF
$(package)_config_opts += -DQT_FEATURE_lcdnumber=OFF
$(package)_config_opts += -DQT_FEATURE_networkdiskcache=OFF
$(package)_config_opts += -DQT_FEATURE_pdf=OFF
$(package)_config_opts += -DQT_FEATURE_printdialog=OFF
$(package)_config_opts += -DQT_FEATURE_printer=OFF
$(package)_config_opts += -DQT_FEATURE_printpreviewdialog=OFF
$(package)_config_opts += -DQT_FEATURE_printpreviewwidget=OFF
$(package)_config_opts += -DQT_FEATURE_printsupport=OFF
$(package)_config_opts += -DQT_FEATURE_sessionmanager=OFF
$(package)_config_opts += -DQT_FEATURE_spatialaudio=OFF
$(package)_config_opts += -DQT_FEATURE_sql=OFF
$(package)_config_opts += -DQT_FEATURE_syntaxhighlighter=OFF
$(package)_config_opts += -DQT_FEATURE_tabletevent=OFF
$(package)_config_opts += -DQT_FEATURE_textmarkdownwriter=OFF
$(package)_config_opts += -DQT_FEATURE_textodfwriter=OFF
$(package)_config_opts += -DQT_FEATURE_topleveldomain=OFF
$(package)_config_opts += -DQT_FEATURE_undocommand=OFF
$(package)_config_opts += -DQT_FEATURE_undogroup=OFF
$(package)_config_opts += -DQT_FEATURE_undostack=OFF
$(package)_config_opts += -DQT_FEATURE_undoview=OFF
$(package)_config_opts += -DQT_FEATURE_vnc=OFF
$(package)_config_opts_linux += -DQT_QMAKE_TARGET_MKSPEC=linux-g++
$(package)_config_opts_linux += -DINPUT_xcb=yes
$(package)_config_opts_linux += -DINPUT_xcb_xlib=no
$(package)_config_opts_linux += -DINPUT_xlib=no
$(package)_config_opts_linux += -DINPUT_freetype=system
$(package)_config_opts_linux += -DINPUT_fontconfig=yes
$(package)_config_opts_linux += -DQT_FEATURE_xcb=ON
$(package)_config_opts_linux += -DQT_FEATURE_xcb_xlib=OFF
$(package)_config_opts_linux += -DQT_FEATURE_xlib=OFF
$(package)_config_opts_linux += -DQT_FEATURE_freetype=ON
$(package)_config_opts_linux += -DQT_FEATURE_system_freetype=ON
$(package)_config_opts_linux += -DQT_FEATURE_fontconfig=ON
$(package)_config_opts_linux += -DINPUT_opengl=no
$(package)_config_opts_linux += -DINPUT_vulkan=no
$(package)_config_opts_linux += -DINPUT_backtrace=no
$(package)_config_opts_linux += -DINPUT_dbus=linked
$(package)_config_opts_linux += -DQT_FEATURE_opengl=OFF
$(package)_config_opts_linux += -DQT_FEATURE_opengles2=OFF
$(package)_config_opts_linux += -DQT_FEATURE_opengles3=OFF
$(package)_config_opts_linux += -DQT_FEATURE_opengles31=OFF
$(package)_config_opts_linux += -DQT_FEATURE_opengles32=OFF
$(package)_config_opts_linux += -DQT_FEATURE_opengl_desktop=OFF
$(package)_config_opts_linux += -DQT_FEATURE_vulkan=OFF
$(package)_config_opts_linux += -DQT_FEATURE_backtrace=OFF
$(package)_config_opts_linux += -DQT_FEATURE_dbus=ON
$(package)_config_opts_linux += -DQT_FEATURE_dbus_linked=ON
$(package)_config_opts_linux += -DQT_FEATURE_wayland_client=ON
$(package)_config_opts_linux += -DQT_FEATURE_wayland_server=OFF
$(package)_config_opts_linux += -DQT_FEATURE_wayland_drm_egl_server_buffer=OFF
$(package)_config_opts_linux += -DQT_FEATURE_wayland-shm-emulation-server-buffer=OFF
$(package)_config_opts_linux += -DQT_FEATURE_wayland-client-fullscreen-shell-v1=OFF
$(package)_config_opts_linux += -DQT_FEATURE_wayland-client-ivi-shell=OFF
$(package)_config_opts_linux += -DQT_FEATURE_wayland-client-wl-shell=OFF
$(package)_config_opts_linux += -DQT_FEATURE_wayland-client-xdg-shell-v5=OFF
$(package)_config_opts_linux += -DQT_FEATURE_wayland-client-xdg-shell-v6=OFF
$(package)_config_opts_linux += -DBUILD_WITH_PCH=OFF
$(package)_config_opts_mingw32 += -DQT_QMAKE_TARGET_MKSPEC=win32-g++
$(package)_config_opts_mingw32 += -DINPUT_opengl=no
$(package)_config_opts_mingw32 += -DINPUT_dbus=no
$(package)_config_opts_mingw32 += -DINPUT_freetype=no
$(package)_config_opts_mingw32 += -DINPUT_ffmpeg=no
$(package)_config_opts_mingw32 += -DINPUT_wmf=yes
$(package)_config_opts_mingw32 += -DQT_FEATURE_dbus=OFF
$(package)_config_opts_mingw32 += -DQT_FEATURE_freetype=OFF
$(package)_config_opts_mingw32 += -DQT_FEATURE_ffmpeg=OFF
$(package)_config_opts_mingw32 += -DQT_FEATURE_wmf=ON
$(package)_config_opts_mingw32 += -DBUILD_WITH_PCH=ON
$(package)_config_opts_darwin += -DQT_QMAKE_TARGET_MKSPEC=macx-clang
# see #138
$(package)_config_opts_darwin += -DINPUT_accessibility=no
$(package)_config_opts_darwin += -DINPUT_dbus=no
$(package)_config_opts_darwin += -DINPUT_freetype=no
$(package)_config_opts_darwin += -DINPUT_ffmpeg=no
$(package)_config_opts_darwin += -DQT_FEATURE_accessibility=OFF
$(package)_config_opts_darwin += -DQT_FEATURE_dbus=OFF
$(package)_config_opts_darwin += -DQT_FEATURE_freetype=OFF
$(package)_config_opts_darwin += -DQT_FEATURE_ffmpeg=OFF
$(package)_config_opts_darwin += -DQMAKE_MACOSX_DEPLOYMENT_TARGET=11.0
$(package)_config_opts_darwin += -DBUILD_WITH_PCH=OFF
$(package)_config_opts_darwin += '-DQT_QMAKE_DEVICE_OPTIONS=MAC_SDK_PATH=$(host_prefix)/native/SDK;MAC_SDK_VERSION=$(OSX_SDK_VERSION);CROSS_COMPILE=$(host)-;MAC_TARGET=$(host);XCODE_VERSION=$(XCODE_VERSION)'
$(package)_config_opts_darwin += -DQT_NO_APPLE_SDK_AND_XCODE_CHECK=ON
# work around a build issue in qfutex_mac_p.h
$(package)_config_opts_darwin += -DQT_FEATURE_appstore_compliant=ON
$(package)_config_opts += -G Ninja
@ -151,7 +182,8 @@ $(call fetch_file,$(package),$($(package)_download_path),$($(package)_qttools_fi
$(call fetch_file,$(package),$($(package)_download_path),$($(package)_qtsvg_file_name),$($(package)_qtsvg_file_name),$($(package)_qtsvg_sha256_hash)) && \
$(call fetch_file,$(package),$($(package)_download_path),$($(package)_qtwebsockets_file_name),$($(package)_qtwebsockets_file_name),$($(package)_qtwebsockets_sha256_hash)) && \
$(call fetch_file,$(package),$($(package)_download_path),$($(package)_qtmultimedia_file_name),$($(package)_qtmultimedia_file_name),$($(package)_qtmultimedia_sha256_hash)) && \
$(call fetch_file,$(package),$($(package)_download_path),$($(package)_qtshadertools_file_name),$($(package)_qtshadertools_file_name),$($(package)_qtshadertools_sha256_hash))
$(call fetch_file,$(package),$($(package)_download_path),$($(package)_qtshadertools_file_name),$($(package)_qtshadertools_file_name),$($(package)_qtshadertools_sha256_hash)) && \
$(call fetch_file,$(package),$($(package)_download_path),$($(package)_qtwayland_file_name),$($(package)_qtwayland_file_name),$($(package)_qtwayland_sha256_hash))
endef
define $(package)_extract_cmds
@ -162,6 +194,7 @@ define $(package)_extract_cmds
echo "$($(package)_qtwebsockets_sha256_hash) $($(package)_source_dir)/$($(package)_qtwebsockets_file_name)" >> $($(package)_extract_dir)/.$($(package)_file_name).hash && \
echo "$($(package)_qtmultimedia_sha256_hash) $($(package)_source_dir)/$($(package)_qtmultimedia_file_name)" >> $($(package)_extract_dir)/.$($(package)_file_name).hash && \
echo "$($(package)_qtshadertools_sha256_hash) $($(package)_source_dir)/$($(package)_qtshadertools_file_name)" >> $($(package)_extract_dir)/.$($(package)_file_name).hash && \
echo "$($(package)_qtwayland_sha256_hash) $($(package)_source_dir)/$($(package)_qtwayland_file_name)" >> $($(package)_extract_dir)/.$($(package)_file_name).hash && \
$(build_SHA256SUM) -c $($(package)_extract_dir)/.$($(package)_file_name).hash && \
mkdir qtbase && \
$(build_TAR) --no-same-owner --strip-components=1 -xf $($(package)_source) -C qtbase && \
@ -174,7 +207,9 @@ define $(package)_extract_cmds
mkdir qtmultimedia && \
$(build_TAR) --no-same-owner --strip-components=1 -xf $($(package)_source_dir)/$($(package)_qtmultimedia_file_name) -C qtmultimedia && \
mkdir qtshadertools && \
$(build_TAR) --no-same-owner --strip-components=1 -xf $($(package)_source_dir)/$($(package)_qtshadertools_file_name) -C qtshadertools
$(build_TAR) --no-same-owner --strip-components=1 -xf $($(package)_source_dir)/$($(package)_qtshadertools_file_name) -C qtshadertools && \
mkdir qtwayland && \
$(build_TAR) --no-same-owner --strip-components=1 -xf $($(package)_source_dir)/$($(package)_qtwayland_file_name) -C qtwayland
endef
define $(package)_preprocess_cmds
@ -190,26 +225,30 @@ define $(package)_preprocess_cmds
-e 's|@host_prefix@|$(host_prefix)|' \
-e 's|@cmake_c_flags@|$(darwin_CC_)|' \
-e 's|@cmake_cxx_flags@|$(darwin_CXX_)|' \
-e 's|@cmake_ld_flags@|$(darwin_LDFLAGS)|'\
-e 's|@wmf_libs@|$(WMF_LIBS)|' \
toolchain.cmake && \
cd qtbase && \
patch -p1 -i $($(package)_patch_dir)/revert_f99ee441.patch && \
patch -p1 -i $($(package)_patch_dir)/xcb-util-image-fix.patch && \
patch -p1 -i $($(package)_patch_dir)/libxau-fix.patch && \
patch -p1 -i $($(package)_patch_dir)/revert-macOS-Silence-warning-about-supporting-secure.patch && \
patch -p1 -i $($(package)_patch_dir)/fix_static_qt_darwin_camera_permissions.patch && \
patch -p1 -i $($(package)_patch_dir)/macos-available-qtbase.patch && \
cd ../qtmultimedia && \
patch -p1 -i $($(package)_patch_dir)/qtmultimedia-fixes.patch && \
patch -p1 -i $($(package)_patch_dir)/v4l2.patch && \
patch -p1 -i $($(package)_patch_dir)/no-resonance-audio.patch
patch -p1 -i $($(package)_patch_dir)/macos-available-qtmultimedia.patch && \
cd ../qtwayland && \
patch -p1 -i $($(package)_patch_dir)/qtwayland-tabletevent-fix.patch
endef
define $(package)_config_cmds
export OPENSSL_LIBS=${$(package)_openssl_flags_$(host_os)} \
export PKG_CONFIG_SYSROOT_DIR=/ && \
export PKG_CONFIG_LIBDIR=$(host_prefix)/lib/pkgconfig && \
export QT_MAC_SDK_NO_VERSION_CHECK=1 && \
env -u C_INCLUDE_PATH -u CPLUS_INCLUDE_PATH -u OBJC_INCLUDE_PATH -u OBJCPLUS_INCLUDE_PATH -u CPATH -u LIBRARY_PATH cmake $($(package)_config_opts)
$($(package)_cmake)
endef
define $(package)_build_cmds

View file

@ -1,8 +1,8 @@
package=tor_linux
$(package)_version=0.4.8.10
$(package)_version=0.4.8.14
$(package)_download_path=https://dist.torproject.org/
$(package)_file_name=tor-$($(package)_version).tar.gz
$(package)_sha256_hash=e628b4fab70edb4727715b23cf2931375a9f7685ac08f2c59ea498a178463a86
$(package)_sha256_hash=5047e1ded12d9aac4eb858f7634a627714dd58ce99053d517691a4b304a66d10
$(package)_dependencies=libevent openssl zlib
define $(package)_set_vars
@ -17,6 +17,10 @@ define $(package)_set_vars
$(package)_ldflags+=$(guix_ldflags)
endef
define $(package)_preprocess_cmds
rm -rf doc/man
endef
define $(package)_config_cmds
$($(package)_autoconf) $($(package)_config_opts)
endef

View file

@ -1,10 +1,9 @@
package=unbound
$(package)_version=1.19.2
$(package)_version=1.22.0
$(package)_download_path=https://www.nlnetlabs.nl/downloads/$(package)/
$(package)_file_name=$(package)-$($(package)_version).tar.gz
$(package)_sha256_hash=cc560d345734226c1b39e71a769797e7fdde2265cbb77ebce542704bba489e55
$(package)_sha256_hash=c5dd1bdef5d5685b2cedb749158dd152c52d44f65529a34ac15cd88d4b1b3d43
$(package)_dependencies=openssl expat
$(package)_patches=disable-glibc-reallocarray.patch
define $(package)_set_vars
$(package)_config_opts=--disable-shared --enable-static --without-pyunbound --prefix=$(host_prefix)
@ -17,8 +16,8 @@ define $(package)_set_vars
endef
define $(package)_preprocess_cmds
patch -p1 < $($(package)_patch_dir)/disable-glibc-reallocarray.patch &&\
autoconf
rm doc/*.odp doc/*.pdf contrib/*.tar.gz contrib/*.tar.bz2 &&\
rm -rf testdata dnscrypt/testdata
endef
define $(package)_config_cmds
@ -32,3 +31,7 @@ endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install
endef
define $(package)_postprocess_cmds
rm -rf share
endef

View file

@ -1,28 +0,0 @@
package=utf8proc
$(package)_version=2.8.0
$(package)_download_path=https://github.com/JuliaStrings/utf8proc/archive/refs/tags/
$(package)_download_file=v$($(package)_version).tar.gz
$(package)_file_name=$(package)-$($(package)_version).tar.gz
$(package)_sha256_hash=a0a60a79fe6f6d54e7d411facbfcc867a6e198608f2cd992490e46f04b1bcecc
$(package)_patches=force_static.patch
define $(package)_preprocess_cmds
patch -p1 < $($(package)_patch_dir)/force_static.patch
endef
define $(package)_config_cmds
echo "$($(package)_cmake)" && \
mkdir build && \
cd build && \
$($(package)_cmake) ..
endef
define $(package)_build_cmds
cd build && \
$(MAKE)
endef
define $(package)_stage_cmds
cd build && \
$(MAKE) DESTDIR=$($(package)_staging_dir) install
endef

View file

@ -0,0 +1,31 @@
package=wayland
$(package)_version=1.23.1
$(package)_download_path := https://gitlab.freedesktop.org/wayland/wayland/-/releases/$($(package)_version)/downloads/
$(package)_file_name := wayland-$($(package)_version).tar.xz
$(package)_sha256_hash := 864fb2a8399e2d0ec39d56e9d9b753c093775beadc6022ce81f441929a81e5ed
$(package)_dependencies=native_wayland libffi expat
$(package)_patches = toolchain.txt
define $(package)_preprocess_cmds
cp $($(package)_patch_dir)/toolchain.txt toolchain.txt && \
sed -i -e 's|@host_prefix@|$(host_prefix)|' \
-e 's|@build_prefix@|$(build_prefix)|' \
-e 's|@cc@|$($(package)_cc)|' \
-e 's|@cxx@|$($(package)_cxx)|' \
-e 's|@ar@|$($(package)_ar)|' \
-e 's|@strip@|$(host_STRIP)|' \
-e 's|@arch@|$(host_arch)|' \
toolchain.txt
endef
define $(package)_config_cmds
PKG_CONFIG_LIBDIR="$(host_prefix)/lib/pkgconfig:$(build_prefix)/lib/pkgconfig" PKG_CONFIG_PATH="$(build_prefix)/lib/pkgconfig" meson setup --cross-file toolchain.txt build -Ddtd_validation=false -Ddocumentation=false -Dprefer_static=true -Ddefault_library=static -Dtests=false -Dscanner=false
endef
define $(package)_build_cmds
ninja -C build
endef
define $(package)_stage_cmds
DESTDIR=$($(package)_staging_dir) ninja -C build install
endef

View file

@ -1,8 +1,8 @@
package=xcb_proto
$(package)_version=1.16.0
$(package)_version=1.17.0
$(package)_download_path=https://xorg.freedesktop.org/archive/individual/proto
$(package)_file_name=xcb-proto-$($(package)_version).tar.xz
$(package)_sha256_hash=a75a1848ad2a89a82d841a51be56ce988ff3c63a8d6bf4383ae3219d8d915119
$(package)_file_name=xcb-proto-$($(package)_version).tar.gz
$(package)_sha256_hash=392d3c9690f8c8202a68fdb89c16fd55159ab8d65000a6da213f4a1576e97a16
define $(package)_config_cmds
$($(package)_autoconf)

View file

@ -1,8 +1,8 @@
package=xorgproto
$(package)_version=2023.2
$(package)_version=2024.1
$(package)_download_path=https://xorg.freedesktop.org/archive/individual/proto
$(package)_file_name=xorgproto-$($(package)_version).tar.xz
$(package)_sha256_hash=b61fbc7db82b14ce2dc705ab590efc32b9ad800037113d1973811781d5118c2c
$(package)_sha256_hash=372225fd40815b8423547f5d890c5debc72e88b91088fbfb13158c20495ccb59
define $(package)_set_vars
$(package)_config_opts=--without-fop --without-xmlto --without-xsltproc --disable-specs

View file

@ -3,23 +3,25 @@ $(package)_version=1.3.1
$(package)_download_path=https://github.com/madler/zlib/releases/download/v$($(package)_version)/
$(package)_file_name=$(package)-$($(package)_version).tar.xz
$(package)_sha256_hash=38ef96b8dfe510d42707d9c781877914792541133e1870841463bfa73f883e32
$(package)_patches=win-lib-name.patch
define $(package)_preprocess_cmds
patch -p1 < $($(package)_patch_dir)/win-lib-name.patch
endef
define $(package)_config_cmds
CC="$($(package)_cc)" \
CXX="$($(package)_cxx)" \
AR="$($(package)_ar)" \
RANLIB="$($(package)_ranlib)" \
LIBTOOL="$($(package)_libtool)" \
LDLAGS="$($(package)_ldflags)" \
CFLAGS="-fPIE" \
CXXFLAGS="-fPIE" \
./configure --static --prefix=$(host_prefix)
$($(package)_cmake) -DBUILD_SHARED_LIBS=OFF -DZLIB_BUILD_EXAMPLES=OFF
endef
define $(package)_build_cmds
$(MAKE)
$(MAKE)
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install
$(MAKE) DESTDIR=$($(package)_staging_dir) install
endef
define $(package)_postprocess_cmds
rm -f lib/libz.so* lib/libz.dll* && \
rm -rf bin
endef

View file

@ -1,8 +1,12 @@
package=zstd
$(package)_version=1.5.5
$(package)_version=1.5.7
$(package)_download_path=https://github.com/facebook/zstd/releases/download/v$($(package)_version)
$(package)_file_name=zstd-$($(package)_version).tar.gz
$(package)_sha256_hash=9c4396cc829cfae319a6e2615202e82aad41372073482fce286fac78646d3ee4
$(package)_sha256_hash=eb33e51f49a15e023950cd7825ca74a4a2b43db8354825ac24fc1b7ee09e6fa3
define $(package)_preprocess_cmds
rm -rf tests doc contrib/pzstd/images build/single_file_libs/examples
endef
define $(package)_build_cmds
$($(package)_cmake) -DCMAKE_INSTALL_PREFIX=$(host_prefix) -DHOST=$(host) -DZSTD_LEGACY_SUPPORT=OFF -B build-cmake-debug -S build/cmake && \

View file

@ -0,0 +1,12 @@
diff --git a/absl/base/CMakeLists.txt b/absl/base/CMakeLists.txt
index 97994fc6..06ab426c 100644
--- a/absl/base/CMakeLists.txt
+++ b/absl/base/CMakeLists.txt
@@ -240,7 +240,6 @@ absl_cc_library(
${ABSL_DEFAULT_COPTS}
LINKOPTS
${ABSL_DEFAULT_LINKOPTS}
- $<$<BOOL:${LIBRT}>:-lrt>
$<$<BOOL:${MINGW}>:-ladvapi32>
DEPS
absl::atomic_hook

View file

@ -1,30 +1,21 @@
diff --git a/src/runtime/Makefile b/src/runtime/Makefile
index d0cbf1f..905b130 100644
index 1776c19..6207731 100644
--- a/src/runtime/Makefile
+++ b/src/runtime/Makefile
@@ -1,21 +1,21 @@
CC = gcc
CFLAGS = -std=gnu99 -s -Os -D_FILE_OFFSET_BITS=64 -DGIT_COMMIT=\"${GIT_COMMIT}\" -T data_sections.ld -ffunction-sections -fdata-sections -Wl,--gc-sections -static
-LIBS = -lsquashfuse -lsquashfuse_ll -lzstd -lz
+LIBS = -lsquashfuse -lsquashfuse_ll -lzstd -lpthread
@@ -1,12 +1,12 @@
GIT_COMMIT := $(shell cat version)
-CC = clang
-CFLAGS = -std=gnu99 -Os -D_FILE_OFFSET_BITS=64 -DGIT_COMMIT=\"$(GIT_COMMIT)\" -T data_sections.ld -ffunction-sections -fdata-sections -Wl,--gc-sections -static -Wall -Werror -static-pie
-LIBS = -lsquashfuse -lsquashfuse_ll -lzstd -lz -lfuse3
+CC = gcc
+CFLAGS = -std=gnu99 -Os -D_FILE_OFFSET_BITS=64 -DGIT_COMMIT=\"$(GIT_COMMIT)\" -T data_sections.ld -ffunction-sections -fdata-sections -Wl,--gc-sections -static -Wall
+LIBS = -lsquashfuse -lsquashfuse_ll -lzstd -lfuse3 -lpthread
all: runtime-fuse3 runtime-fuse3
all: runtime
# Compile runtime
runtime-fuse3.o: runtime.c
- $(CC) -I/usr/local/include/squashfuse -I/usr/include/fuse -o runtime-fuse3.o -c $(CFLAGS) $^
+ $(CC) -I${host_prefix}/include -I${host_prefix}/include/squashfuse -I${host_prefix}/include/fuse -o runtime-fuse3.o -c $(CFLAGS) $^
runtime-fuse3: runtime-fuse3.o
$(CC) $(CFLAGS) $^ $(LIBS) -lfuse -o runtime-fuse3
runtime-fuse3.o: runtime.c
- $(CC) -I/usr/local/include/squashfuse -I/usr/include/fuse3 -o runtime-fuse3.o -c $(CFLAGS) $^
+ $(CC) -I${host_prefix}/include -I${host_prefix}/include/squashfuse -I${host_prefix}/include/fuse3 -o runtime-fuse3.o -c $(CFLAGS) $^
runtime-fuse3: runtime-fuse3.o
- $(CC) $(CFLAGS) $^ $(LIBS) -lfuse3 -o runtime-fuse3
+ $(CC) $(CFLAGS) $^ -L${host_prefix}/lib $(LIBS) -lfuse3 -lpthread -o runtime-fuse3
runtime: runtime.c
- $(CC) -I/usr/local/include/squashfuse -I/usr/include/fuse3 $(CFLAGS) $^ $(LIBS) -o $@
+ $(CC) -L${host_prefix}/lib -I${host_prefix}/include -I${host_prefix}/squashfuse -I${host_prefix}/include/fuse3 $(CFLAGS) $^ $(LIBS) -o $@
clean:
rm -f *.o runtime-fuse3 runtime-fuse3
rm -f runtime

View file

@ -4,20 +4,20 @@ diff --git a/libs/stacktrace/build/Jamfile.v2 b/libs/stacktrace/build/Jamfile.v2
index 230d5a8b4..d3d74599b 100644
--- a/libs/stacktrace/build/Jamfile.v2
+++ b/libs/stacktrace/build/Jamfile.v2
@@ -42,9 +42,6 @@ rule mp-run-simple ( sources + : args * : input-files * : requirements * : targe
@@ -48,9 +48,6 @@ rule mp-run-simple ( sources + : args * : input-files * : requirements * : targe
mp-run-simple has_backtrace.cpp : : : <library>backtrace : libbacktrace ;
explicit libbacktrace ;
-mp-run-simple has_addr2line.cpp : : : : addr2line ;
-explicit addr2line ;
-
mp-run-simple has_windbg.cpp : : : <library>Dbgeng <library>ole32 : WinDbg ;
explicit WinDbg ;
@@ -76,19 +73,6 @@ lib boost_stacktrace_backtrace
@@ -82,19 +79,6 @@ lib boost_stacktrace_backtrace
#<link>shared:<define>BOOST_STACKTRACE_DYN_LINK=1
;
-lib boost_stacktrace_addr2line
- : # sources
- ../src/addr2line.cpp
@ -34,9 +34,9 @@ index 230d5a8b4..d3d74599b 100644
lib boost_stacktrace_basic
: # sources
../src/basic.cpp
@@ -128,4 +112,4 @@ lib boost_stacktrace_windbg_cached
@@ -152,4 +136,4 @@ lib boost_stacktrace_from_exception
#<link>shared:<define>BOOST_STACKTRACE_DYN_LINK=1
;
-boost-install boost_stacktrace_noop boost_stacktrace_backtrace boost_stacktrace_addr2line boost_stacktrace_basic boost_stacktrace_windbg boost_stacktrace_windbg_cached ;
+boost-install boost_stacktrace_noop boost_stacktrace_backtrace boost_stacktrace_basic boost_stacktrace_windbg boost_stacktrace_windbg_cached ;
-boost-install boost_stacktrace_noop boost_stacktrace_backtrace boost_stacktrace_addr2line boost_stacktrace_basic boost_stacktrace_windbg boost_stacktrace_windbg_cached boost_stacktrace_from_exception ;
+boost-install boost_stacktrace_noop boost_stacktrace_backtrace boost_stacktrace_basic boost_stacktrace_windbg boost_stacktrace_windbg_cached boost_stacktrace_from_exception ;

View file

@ -0,0 +1,13 @@
diff --git a/libs/filesystem/src/directory.cpp b/libs/filesystem/src/directory.cpp
index 0cf5025..cd38e1b 100644
--- a/libs/filesystem/src/directory.cpp
+++ b/libs/filesystem/src/directory.cpp
@@ -279,7 +279,7 @@ inline system::error_code dir_itr_close(dir_itr_imp& imp) noexcept
// Obtains a file descriptor from the directory iterator
inline int dir_itr_fd(dir_itr_imp const& imp, system::error_code& ec)
{
- int fd = ::dirfd(static_cast< DIR* >(imp.handle));
+ int fd = dirfd(static_cast< DIR* >(imp.handle));
if (BOOST_UNLIKELY(fd < 0))
{
int err = errno;

View file

@ -0,0 +1,34 @@
.text
.global m_symlink
.global m_exit
.global m_mkdir
.global m_execve
.global _start
_start:
pop %rdi
mov %rsp, %rsi
lea 8(%rsi, %rdi, 8), %rdx
call start_c
mov $60, %rax
xor %rdi, %rdi
syscall
m_symlink:
mov $88, %rax
syscall
ret
m_mkdir:
mov $83, %rax
syscall
ret
m_execve:
mov $59, %rax
syscall
ret
m_exit:
mov $60, %rax
syscall

View file

@ -0,0 +1,31 @@
extern long m_symlink(const char *target, const char *linkpath);
extern long m_mkdir(const char *pathname, unsigned int mode);
extern long m_execve(const char *filename, char *const argv[], char *const envp[]);
extern void m_exit(int status);
void start_c(int argc, char **argv, char **envp) {
m_symlink("/app/gnu", "/gnu");
// Qt expects certs to be here, see: qtbase/src/network/ssl/qsslsocket.cpp
m_mkdir("/etc/ssl", 0755);
m_symlink("/app/profile/etc/ssl/certs", "/etc/ssl/certs");
// Stops Qt from complaining about not running in a utf-8 locale
m_mkdir("/run/current-system", 0755);
m_symlink("/app/profile/lib/locale", "/run/current-system/locale");
// Launch Feather
const char *exec_path = "/app/feather";
int new_argc = argc;
char *new_argv[new_argc + 1];
new_argv[0] = (char *)exec_path;
for (int i = 1; i < new_argc; i++) {
new_argv[i] = argv[i];
}
new_argv[new_argc] = 0;
long ret = m_execve(exec_path, new_argv, envp);
m_exit((int)ret);
}

View file

@ -0,0 +1,20 @@
diff --git a/libusb/CMakeLists.txt b/libusb/CMakeLists.txt
index 6cd48c4..9411468 100644
--- a/libusb/CMakeLists.txt
+++ b/libusb/CMakeLists.txt
@@ -11,9 +11,12 @@ target_link_libraries(hidapi_libusb PUBLIC hidapi_include)
if(TARGET usb-1.0)
target_link_libraries(hidapi_libusb PRIVATE usb-1.0)
else()
- include(FindPkgConfig)
- pkg_check_modules(libusb REQUIRED IMPORTED_TARGET libusb-1.0>=1.0.9)
- target_link_libraries(hidapi_libusb PRIVATE PkgConfig::libusb)
+ find_library(libusb-1.0 usb-1.0)
+ find_path(LIBUSB_INCLUDE_DIR
+ NAMES libusb.h
+ PATH_SUFFIXES libusb-1.0)
+ target_link_libraries(hidapi_libusb PRIVATE ${libusb-1.0})
+ include_directories(${LIBUSB_INCLUDE_DIR})
endif()
find_package(Threads REQUIRED)

View file

@ -0,0 +1,17 @@
[binaries]
c = '@cc@'
cpp = '@cxx@'
ar = '@ar@'
strip = '@strip@'
pkgconfig = '/home/user/.guix-profile/bin/pkg-config'
[host_machine]
system = 'linux'
cpu_family = '@arch@'
cpu = '@arch@'
endian = 'little'
[built-in options]
default_library = 'static'
prefer_static = true
prefix = '@host_prefix@'

View file

@ -13,6 +13,7 @@ endian = 'little'
[project options]
utils = false
examples = false
[built-in options]
default_library = 'static'

View file

@ -0,0 +1,37 @@
diff --git a/src/Makefile.in b/src/Makefile.in
index 48f08f0..92170ef 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -132,7 +132,7 @@ CONFIG_CLEAN_VPATH_FILES =
am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(libdir)" \
"$(DESTDIR)$(bindir)" "$(DESTDIR)$(m4datadir)" \
"$(DESTDIR)$(pkgconfigdir)" "$(DESTDIR)$(includedir)"
-PROGRAMS = $(bin_PROGRAMS)
+PROGRAMS =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
diff --git a/tests/Makefile.in b/tests/Makefile.in
index 27900c3..c9503dc 100644
--- a/tests/Makefile.in
+++ b/tests/Makefile.in
@@ -110,8 +110,8 @@ host_triplet = @host@
@USE_RSA_TRUE@am__append_1 = pkcs1v2 t-rsa-pss t-rsa-15 t-rsa-testparm
@USE_DSA_TRUE@am__append_2 = fips186-dsa dsa-rfc6979 t-dsa
@USE_ECC_TRUE@am__append_3 = curves t-ecdsa t-ed25519 t-cv25519 t-x448 t-ed448
-TESTS = $(am__EXEEXT_4) $(tests_sh) $(am__EXEEXT_5) $(tests_sh_last)
-EXTRA_PROGRAMS = testapi$(EXEEXT) pkbench$(EXEEXT)
+TESTS =
+EXTRA_PROGRAMS =
noinst_PROGRAMS = testdrv$(EXEEXT) $(am__EXEEXT_4) $(am__EXEEXT_5) \
fipsdrv$(EXEEXT) rsacvt$(EXEEXT) genhashdata$(EXEEXT) \
gchash$(EXEEXT)
@@ -147,7 +147,7 @@ am__EXEEXT_4 = version$(EXEEXT) t-secmem$(EXEEXT) mpitests$(EXEEXT) \
t-mlkem$(EXEEXT) $(am__EXEEXT_1) $(am__EXEEXT_2) \
$(am__EXEEXT_3)
am__EXEEXT_5 = benchmark$(EXEEXT) bench-slope$(EXEEXT)
-PROGRAMS = $(noinst_PROGRAMS)
+PROGRAMS =
aeswrap_SOURCES = aeswrap.c
aeswrap_OBJECTS = aeswrap.$(OBJEXT)
aeswrap_LDADD = $(LDADD)

View file

@ -0,0 +1,20 @@
Subject: [PATCH] core: Declare environ for macOS and others.
---
Index: src/spawn-posix.c
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/src/spawn-posix.c b/src/spawn-posix.c
--- a/src/spawn-posix.c (revision d18e28a948307fab016b1eed467a70653ca9576e)
+++ b/src/spawn-posix.c (revision a59e902b887fd92337c9728f668cf9c89da3957a)
@@ -57,6 +57,9 @@
#include "gpgrt-int.h"
+/* (Only glibc's unistd.h declares this iff _GNU_SOURCE is used.) */
+extern char **environ;
+
/* Definition for the gpgrt_spawn_actions_t. Note that there is a
* different one for Windows. */

View file

@ -0,0 +1,13 @@
diff --git a/src/Makefile.in b/src/Makefile.in
index 882f4ad..4c99ddc 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -154,7 +154,7 @@ CONFIG_CLEAN_VPATH_FILES =
am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(libdir)" \
"$(DESTDIR)$(bindir)" "$(DESTDIR)$(m4datadir)" \
"$(DESTDIR)$(pkgconfigdir)" "$(DESTDIR)$(includedir)"
-PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS)
+PROGRAMS =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \

View file

@ -1,13 +0,0 @@
diff --git a/preload/configure b/preload/configure
index aab5c77..e20b8f0 100755
--- a/preload/configure
+++ b/preload/configure
@@ -588,7 +588,7 @@ MAKEFLAGS=
PACKAGE_NAME='libiconv'
PACKAGE_TARNAME='libiconv'
PACKAGE_VERSION='0'
-PACKAGE_STRING='libiconv 0'
+PACKAGE_STRING='libiconv0'
PACKAGE_BUGREPORT=''
PACKAGE_URL=''

View file

@ -0,0 +1,238 @@
# From https://github.com/libusb/libusb-cmake/tree/main
cmake_minimum_required(VERSION 3.16)
get_filename_component(LIBUSB_ROOT "libusb" ABSOLUTE)
# Get the version information from version.h ignoring the nano version as it appears in version_nano.h and so we need it?
file(READ "${LIBUSB_ROOT}/version.h" VERSIONHEADERDATA)
string(REGEX MATCH "#define LIBUSB_MAJOR ([0-9]*)" _ ${VERSIONHEADERDATA})
set(LIBUSB_VERSION_MAJOR ${CMAKE_MATCH_1})
string(REGEX MATCH "#define LIBUSB_MINOR ([0-9]*)" _ ${VERSIONHEADERDATA})
set(LIBUSB_VERSION_MINOR ${CMAKE_MATCH_1})
string(REGEX MATCH "#define LIBUSB_MICRO ([0-9]*)" _ ${VERSIONHEADERDATA})
set(LIBUSB_VERSION_MICRO ${CMAKE_MATCH_1})
set(LIBUSB_VERSION "${LIBUSB_VERSION_MAJOR}.${LIBUSB_VERSION_MINOR}.${LIBUSB_VERSION_MICRO}")
project(usb-1.0
DESCRIPTION "A cross-platform library to access USB devices"
VERSION ${LIBUSB_VERSION}
LANGUAGES C
)
if(EMSCRIPTEN)
set(CMAKE_CXX_STANDARD 20)
enable_language(CXX)
endif()
# This function generates all the local variables what end up getting written to config.
# We use a function as any vars set in this context don't mess with the rest of the file.
# e.g. Logging LIBUSB_ENABLE_LOGGING mapps to ENABLE_LOGGING in the config, keeps it clean
function(generate_config_file)
include(CheckIncludeFiles)
include(CheckFunctionExists)
include(CheckSymbolExists)
include(CheckStructHasMember)
include(CheckCCompilerFlag)
check_function_exists(clock_gettime HAVE_CLOCK_GETTIME)
check_function_exists(pthread_condattr_setclock HAVE_PTHREAD_CONDATTR_SETCLOCK)
check_function_exists(pthread_setname_np HAVE_PTHREAD_SETNAME_NP)
check_function_exists(pthread_threadid_np HAVE_PTHREAD_THREADID_NP)
check_function_exists(eventfd HAVE_EVENTFD)
check_function_exists(pipe2 HAVE_PIPE2)
check_function_exists(syslog HAVE_SYSLOG)
check_include_files(asm/types.h HAVE_ASM_TYPES_H)
check_include_files(sys/eventfd.h HAVE_EVENTFD)
check_include_files(string.h HAVE_STRING_H)
check_include_files(sys/time.h HAVE_SYS_TIME_H)
check_symbol_exists(timerfd_create "sys/timerfd.h" HAVE_TIMERFD)
check_symbol_exists(nfds_t "poll.h" HAVE_NFDS_T)
check_struct_has_member("struct timespec" tv_sec time.h HAVE_STRUCT_TIMESPEC)
if(HAVE_VISIBILITY)
set(DEFAULT_VISIBILITY "__attribute__((visibility(\"default\")))")
else()
set(DEFAULT_VISIBILITY "" )
endif()
# Set vars that will be written into the config file.
if(WIN32)
set(PLATFORM_WINDOWS 1)
else()
set(PLATFORM_POSIX 1)
endif()
if(LIBUSB_ENABLE_LOGGING)
set(ENABLE_LOGGING ${LIBUSB_ENABLE_LOGGING})
endif()
if(LIBUSB_ENABLE_DEBUG_LOGGING)
set(ENABLE_DEBUG_LOGGING ${LIBUSB_ENABLE_DEBUG_LOGGING})
endif()
if(CMAKE_C_COMPILER_ID MATCHES "Clang" OR CMAKE_C_COMPILER_ID STREQUAL "GNU")
check_c_compiler_flag("-fvisibility=hidden" HAVE_VISIBILITY)
endif()
file(MAKE_DIRECTORY "${LIBUSB_GEN_INCLUDES}")
if(NOT MSVC)
set(_GNU_SOURCE TRUE)
endif()
configure_file(config.h.in "${LIBUSB_GEN_INCLUDES}/config.h" @ONLY)
endfunction()
if(BUILD_SHARED_LIBS)
set(LIBUSB_BUILD_SHARED_LIBS_DEFAULT ON)
else()
set(LIBUSB_BUILD_SHARED_LIBS_DEFAULT OFF)
endif()
option(LIBUSB_BUILD_SHARED_LIBS "Build Shared Libraries for libusb" ${LIBUSB_BUILD_SHARED_LIBS_DEFAULT})
option(LIBUSB_BUILD_TESTING "Build Tests" OFF)
if(LIBUSB_BUILD_TESTING)
enable_testing()
endif()
option(LIBUSB_BUILD_EXAMPLES "Build Example Applications" OFF)
option(LIBUSB_INSTALL_TARGETS "Install libusb targets" ON)
option(LIBUSB_TARGETS_INCLUDE_USING_SYSTEM "Make targets include paths System" ON)
option(LIBUSB_ENABLE_LOGGING "Enable Logging" ON)
option(LIBUSB_ENABLE_DEBUG_LOGGING "Enable Debug Logging" OFF)
if(CMAKE_SYSTEM_NAME MATCHES "Linux")
option(LIBUSB_ENABLE_UDEV "Enable udev backend for device enumeration" ON)
endif()
set(LIBUSB_GEN_INCLUDES "${CMAKE_CURRENT_BINARY_DIR}/gen_include")
generate_config_file()
if(LIBUSB_BUILD_SHARED_LIBS)
add_library(usb-1.0 SHARED)
else()
add_library(usb-1.0 STATIC)
endif()
set_target_properties(usb-1.0 PROPERTIES
PREFIX lib # to be consistent with mainline libusb build system(s)
)
# common sources
target_sources(usb-1.0 PRIVATE
"${LIBUSB_GEN_INCLUDES}/config.h"
"${LIBUSB_ROOT}/core.c"
"${LIBUSB_ROOT}/descriptor.c"
"${LIBUSB_ROOT}/hotplug.c"
"${LIBUSB_ROOT}/io.c"
"${LIBUSB_ROOT}/libusb.h"
"${LIBUSB_ROOT}/libusbi.h"
"${LIBUSB_ROOT}/strerror.c"
"${LIBUSB_ROOT}/sync.c"
"${LIBUSB_ROOT}/version.h"
"${LIBUSB_ROOT}/version_nano.h"
)
target_include_directories(usb-1.0
PRIVATE
"${LIBUSB_GEN_INCLUDES}"
"${LIBUSB_ROOT}/os"
)
if (LIBUSB_TARGETS_INCLUDE_USING_SYSTEM)
target_include_directories(usb-1.0 SYSTEM PUBLIC "${LIBUSB_ROOT}")
else()
target_include_directories(usb-1.0 PUBLIC "${LIBUSB_ROOT}")
endif()
if(WIN32)
target_sources(usb-1.0 PRIVATE
"${LIBUSB_ROOT}/libusb-1.0.def"
"${LIBUSB_ROOT}/os/events_windows.c"
"${LIBUSB_ROOT}/os/events_windows.h"
"${LIBUSB_ROOT}/os/threads_windows.c"
"${LIBUSB_ROOT}/os/threads_windows.h"
"${LIBUSB_ROOT}/os/windows_common.c"
"${LIBUSB_ROOT}/os/windows_common.h"
"${LIBUSB_ROOT}/os/windows_usbdk.c"
"${LIBUSB_ROOT}/os/windows_usbdk.h"
"${LIBUSB_ROOT}/os/windows_winusb.c"
"${LIBUSB_ROOT}/os/windows_winusb.h"
$<$<C_COMPILER_ID:MSVC>:${LIBUSB_ROOT}/libusb-1.0.rc>
)
target_compile_definitions(usb-1.0 PRIVATE $<$<C_COMPILER_ID:MSVC>:_CRT_SECURE_NO_WARNINGS=1>)
target_link_libraries(usb-1.0 PRIVATE windowsapp)
set_target_properties(usb-1.0 PROPERTIES UNITY_BUILD OFF)
else()
# common POSIX/non-Windows sources
target_sources(usb-1.0 PRIVATE
"${LIBUSB_ROOT}/os/events_posix.c"
"${LIBUSB_ROOT}/os/events_posix.h"
"${LIBUSB_ROOT}/os/threads_posix.c"
"${LIBUSB_ROOT}/os/threads_posix.h"
)
if(CMAKE_SYSTEM_NAME MATCHES "Linux")
target_sources(usb-1.0 PRIVATE
"${LIBUSB_ROOT}/os/linux_usbfs.c"
"${LIBUSB_ROOT}/os/linux_usbfs.h"
)
if(LIBUSB_ENABLE_UDEV)
target_sources(usb-1.0 PRIVATE
"${LIBUSB_ROOT}/os/linux_udev.c"
)
target_link_libraries(usb-1.0 PRIVATE udev)
target_compile_definitions(usb-1.0 PRIVATE HAVE_LIBUDEV=1)
else()
target_sources(usb-1.0 PRIVATE
"${LIBUSB_ROOT}/os/linux_netlink.c"
)
endif()
find_package(Threads REQUIRED)
target_link_libraries(usb-1.0 PRIVATE Threads::Threads)
elseif(ANDROID)
target_sources(usb-1.0 PRIVATE
"${LIBUSB_ROOT}/os/linux_netlink.c"
"${LIBUSB_ROOT}/os/linux_usbfs.c"
"${LIBUSB_ROOT}/os/linux_usbfs.h"
)
target_link_libraries(usb-1.0 PRIVATE android log)
elseif(APPLE)
target_sources(usb-1.0 PRIVATE
"${LIBUSB_ROOT}/os/darwin_usb.c"
"${LIBUSB_ROOT}/os/darwin_usb.h"
)
target_link_libraries(usb-1.0 PRIVATE
"-framework Foundation"
"-framework IOKit"
"-framework Security"
)
elseif(CMAKE_SYSTEM_NAME STREQUAL "NetBSD")
target_sources(usb-1.0 PRIVATE
"${LIBUSB_ROOT}/os/netbsd_usb.c"
)
elseif(CMAKE_SYSTEM_NAME STREQUAL "OpenBSD")
target_sources(usb-1.0 PRIVATE
"${LIBUSB_ROOT}/os/openbsd_usb.c"
)
elseif(EMSCRIPTEN)
target_sources(usb-1.0 PRIVATE
"${LIBUSB_ROOT}/os/emscripten_webusb.cpp"
)
target_compile_options(usb-1.0 PRIVATE -pthread)
else()
message(FATAL_ERROR "Unsupported target platform: ${CMAKE_SYSTEM_NAME}")
endif()
endif()
if(LIBUSB_BUILD_TESTING)
add_subdirectory(tests)
endif()
if(LIBUSB_BUILD_EXAMPLES)
add_subdirectory(examples)
endif()
if(LIBUSB_INSTALL_TARGETS)
install(TARGETS usb-1.0)
install(FILES "${LIBUSB_ROOT}/libusb.h" DESTINATION "include/libusb-1.0")
endif()

View file

@ -0,0 +1,75 @@
/* #define to the attribute for default visibility. */
#define DEFAULT_VISIBILITY @DEFAULT_VISIBILITY@
/* #define to 1 to start with debug message logging enabled. */
#cmakedefine ENABLE_DEBUG_LOGGING 1
/* #define to 1 to enable message logging. */
#cmakedefine ENABLE_LOGGING 1
/* #define to 1 if you have the <asm/types.h> header file. */
#cmakedefine HAVE_ASM_TYPES_H
/* #define to 1 if you have the `clock_gettime' function. */
#cmakedefine HAVE_CLOCK_GETTIME 1
/* #define to 1 if the system has eventfd functionality. */
#cmakedefine HAVE_EVENTFD 1
/* #define to 1 if the system has the type `nfds_t'. */
#cmakedefine HAVE_NFDS_T 1
/* #define to 1 if you have the `pipe2' function. */
#cmakedefine HAVE_PIPE2 1
/* #define to 1 if you have the `pthread_condattr_setclock' function. */
#cmakedefine HAVE_PTHREAD_CONDATTR_SETCLOCK 1
/* #define to 1 if you have the `pthread_setname_np' function. */
#cmakedefine HAVE_PTHREAD_SETNAME_NP 1
/* #define to 1 if you have the `pthread_threadid_np' function. */
#cmakedefine HAVE_PTHREAD_THREADID_NP 1
/* #define to 1 if you have the <string.h> header file. */
#cmakedefine HAVE_STRING_H 1
/* #define to 1 if the system has the type `struct timespec'. */
#cmakedefine HAVE_STRUCT_TIMESPEC 1
/* #define to 1 if you have the `syslog' function. */
#cmakedefine HAVE_SYSLOG 1
/* #define to 1 if you have the <sys/time.h> header file. */
#cmakedefine HAVE_SYS_TIME_H 1
/* #define to 1 if the system has timerfd functionality. */
#cmakedefine HAVE_TIMERFD 1
/* #define to 1 if compiling for a POSIX platform. */
#cmakedefine PLATFORM_POSIX 1
/* #define to 1 if compiling for a Windows platform. */
#cmakedefine PLATFORM_WINDOWS 1
#if defined(__GNUC__)
#define PRINTF_FORMAT(a, b) __attribute__ ((format (__printf__, a, b)))
#else
#define PRINTF_FORMAT(a, b)
#endif
/* #define to 1 if you have the ANSI C header files. */
#cmakedefine STDC_HEADERS 1
/* #define to 1 to output logging messages to the systemwide log. */
#cmakedefine USE_SYSTEM_LOGGING_FACILITY
/* Enable GNU extensions. */
#cmakedefine _GNU_SOURCE 1
/* Define to `__inline__' or `__inline' if that's what the C compiler
calls it, or to nothing if 'inline' is not supported under any name. */
#ifndef __cplusplus
/* #undef inline */
#endif

View file

@ -1,23 +1,34 @@
diff --git a/Makefile.am b/Makefile.am
index 23956fd..0f4c3c9 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -12,5 +12,5 @@ ChangeLog:
dist-hook: ChangeLog INSTALL
diff --git a/Makefile.in b/Makefile.in
index 03316e8..b5c6f49 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -361,7 +361,7 @@ top_srcdir = @top_srcdir@
xcbincludedir = @xcbincludedir@
ACLOCAL_AMFLAGS = -I m4
MAINTAINERCLEANFILES = ChangeLog INSTALL
-SUBDIRS = image test
+SUBDIRS = image
EXTRA_DIST = autogen.sh README.md
diff --git a/configure.ac b/configure.ac
index 9cf3f5a..0949d55 100644
--- a/configure.ac
+++ b/configure.ac
@@ -18,7 +18,6 @@ PKG_CHECK_MODULES(XCB_UTIL, xcb-util)
AC_CONFIG_FILES([
Makefile
image/Makefile
- test/Makefile
image/xcb-image.pc
])
AC_OUTPUT
all: config.h
$(MAKE) $(AM_MAKEFLAGS) all-recursive
diff --git a/configure b/configure
index 3756ffc..46fcbc4 100755
--- a/configure
+++ b/configure
@@ -19952,7 +19952,7 @@ printf "%s\n" "yes" >&6; }
fi
-ac_config_files="$ac_config_files Makefile image/Makefile test/Makefile image/xcb-image.pc"
+ac_config_files="$ac_config_files Makefile image/Makefile image/xcb-image.pc"
cat >confcache <<\_ACEOF
# This file is a shell script that caches the results of configure
@@ -20980,7 +20980,6 @@ do
"libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;;
"Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
"image/Makefile") CONFIG_FILES="$CONFIG_FILES image/Makefile" ;;
- "test/Makefile") CONFIG_FILES="$CONFIG_FILES test/Makefile" ;;
"image/xcb-image.pc") CONFIG_FILES="$CONFIG_FILES image/xcb-image.pc" ;;
*) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;

View file

@ -1,27 +1,33 @@
diff --git a/meson.build b/meson.build
index eaef4fb..1e31558 100644
index 8714ce4e..35691155 100644
--- a/meson.build
+++ b/meson.build
@@ -748,18 +748,6 @@ test(
@@ -893,24 +893,6 @@ test(
dependencies: test_dep),
env: test_env,
)
-if get_option('enable-x11')
- has_xvfb = find_program('Xvfb', required: false)
- if not has_xvfb.found()
- warning('Xvfb program not found, but is required to run X11 tests.')
- endif
- test(
- 'x11',
- executable('test-x11', 'test/x11.c', dependencies: x11_test_dep),
- executable('test-x11', 'test/x11.c', dependencies: x11_xvfb_test_dep),
- env: test_env,
- is_parallel : false,
- )
- test(
- 'x11comp',
- executable('test-x11comp', 'test/x11comp.c', dependencies: x11_test_dep),
- executable('test-x11comp', 'test/x11comp.c', dependencies: x11_xvfb_test_dep),
- env: test_env,
- is_parallel : false,
- )
-endif
if get_option('enable-xkbregistry')
test(
'registry',
@@ -844,13 +832,6 @@ benchmark(
@@ -1035,13 +1017,6 @@ benchmark(
executable('bench-atom', 'bench/atom.c', dependencies: test_dep),
env: bench_env,
)

View file

@ -1,10 +0,0 @@
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -99,7 +99,6 @@ check_function_exists(_strtoi64 HAVE__STRTOI64)
check_function_exists(_strtoui64 HAVE__STRTOUI64)
check_function_exists(_unlink HAVE__UNLINK)
check_function_exists(arc4random HAVE_ARC4RANDOM)
-check_function_exists(clonefile HAVE_CLONEFILE)
check_function_exists(explicit_bzero HAVE_EXPLICIT_BZERO)
check_function_exists(explicit_memset HAVE_EXPLICIT_MEMSET)
check_function_exists(fchmod HAVE_FCHMOD)

View file

@ -1,12 +0,0 @@
diff --git a/cctools/ld64/src/ld/Options.cpp b/cctools/ld64/src/ld/Options.cpp
index 3bb8324..033760d 100644
--- a/cctools/ld64/src/ld/Options.cpp
+++ b/cctools/ld64/src/ld/Options.cpp
@@ -4279,7 +4279,6 @@ void Options::buildSearchPaths(int argc, const char* argv[])
fVerbose = true;
extern const char ldVersionString[];
fprintf(stderr, "%s", ldVersionString);
- fprintf(stderr, "BUILD " __TIME__ " " __DATE__"\n");
fprintf(stderr, "configured to support archs: %s\n", ALL_SUPPORTED_ARCHS);
// if only -v specified, exit cleanly
if ( argc == 2 ) {

View file

@ -1,25 +0,0 @@
diff --git a/src/llvm/CMakeLists.txt b/src/llvm/CMakeLists.txt
index ab92717c8..dff3a292a 100644
--- a/src/llvm/CMakeLists.txt
+++ b/src/llvm/CMakeLists.txt
@@ -754,7 +754,6 @@ set(LLVM_SRPM_DIR "${CMAKE_CURRENT_BINARY_DIR}/srpm")
# SVN_REVISION and GIT_COMMIT get set by the call to add_version_info_from_vcs.
# DUMMY_VAR contains a version string which we don't care about.
-add_version_info_from_vcs(DUMMY_VAR)
if ( SVN_REVISION )
set(LLVM_RPM_SPEC_REVISION "r${SVN_REVISION}")
elseif ( GIT_COMMIT )
diff --git a/src/llvm/cmake/modules/GenerateVersionFromCVS.cmake b/src/llvm/cmake/modules/GenerateVersionFromCVS.cmake
index 6b1c71983..e16326ed6 100644
--- a/src/llvm/cmake/modules/GenerateVersionFromCVS.cmake
+++ b/src/llvm/cmake/modules/GenerateVersionFromCVS.cmake
@@ -24,7 +24,7 @@ include(VersionFromVCS)
set(ENV{TERM} "dumb")
function(append_info name path)
- add_version_info_from_vcs(REVISION ${path})
+ set(REVISION "git-0000000")
string(STRIP "${REVISION}" REVISION)
file(APPEND "${HEADER_FILE}.txt"
"#define ${name} \"${REVISION}\"\n")

View file

@ -1,16 +0,0 @@
diff --git a/qtbase/configure b/qtbase/configure
index e57707dc..d8f6c934 100755
--- a/qtbase/configure
+++ b/qtbase/configure
@@ -9,9 +9,9 @@
# the directory of this script is the "source tree"
relpath=`dirname "$0"`
-relpath=`(cd "$relpath"; /bin/pwd)`
+relpath=`(cd "$relpath"; pwd)`
# the current directory is the "build tree" or "object tree"
-outpath=`/bin/pwd`
+outpath=`pwd`
outpathPrefix=$outpath
# do this early so we don't store it in config.status

View file

@ -32,7 +32,7 @@ list(APPEND CMAKE_MODULE_PATH "${__qt6_qtbase_src_path}/cmake/3rdparty/kwin")
set(QT_NO_CREATE_TARGETS TRUE)
set(QT_SUPERBUILD TRUE)
set(QT_BUILD_SUBMODULES "qtbase;qtsvg;qtshadertools;qtmultimedia" CACHE STRING "Submodules to build")
set(QT_BUILD_SUBMODULES "qtbase;qtsvg;qtshadertools;qtmultimedia;qtwayland" CACHE STRING "Submodules to build")
foreach(module IN LISTS QT_BUILD_SUBMODULES)
message(NOTICE "Configuring '${module}'")

View file

@ -0,0 +1,20 @@
[binaries]
c = '@cc@'
cpp = '@cxx@'
ar = '@ar@'
strip = '@strip@'
pkgconfig = '/home/user/.guix-profile/bin/pkg-config'
[host_machine]
system = 'linux'
cpu_family = '@arch@'
cpu = '@arch@'
endian = 'little'
[project options]
tests = false
documentation = false
dtd_validation = false
[built-in options]
prefix = '@build_prefix@'

View file

@ -0,0 +1,47 @@
diff --git a/cmake/QtBaseHelpers.cmake b/cmake/QtBaseHelpers.cmake
index 4b48f8f176..63e445e346 100644
--- a/cmake/QtBaseHelpers.cmake
+++ b/cmake/QtBaseHelpers.cmake
@@ -212,7 +212,7 @@ macro(qt_internal_qtbase_build_repo)
endif()
if(NOT QT_INTERNAL_BUILD_STANDALONE_PARTS)
- if(QT_FEATURE_settings)
+ if(QT_WILL_BUILD_TOOLS AND QT_FEATURE_settings)
add_subdirectory(qmake)
endif()
diff --git a/qmake/CMakeLists.txt b/qmake/CMakeLists.txt
index 9334ca72ab..801b4f7647 100644
--- a/qmake/CMakeLists.txt
+++ b/qmake/CMakeLists.txt
@@ -112,19 +112,6 @@ qt_internal_add_tool(${target_name}
generators/win32/msvc_objectmodel.cpp # xml symbols clash with generators/win32/msbuild_objectmodel.cpp
library/qmakeparser.cpp # struct statics clashes with qmakeevaluator_p.h
)
-
-# When we don't build tools, we still want to be able to build the documentation.
-# Add a fake interface library to make sure the documentation target is created.
-# We use the direct name rather than ${target_name} to ensure the doc target keeps
-# the original name even when cross-building.
-if(NOT TARGET qmake)
- add_library(qmake INTERFACE)
-endif()
-
-qt_internal_add_docs(qmake
- doc/qmake.qdocconf
-)
-
qt_internal_return_unless_building_tools()
#### Keys ignored in scope 1:.:.:qmake.pro:<TRUE>:
@@ -154,3 +141,6 @@ set_target_properties(${target_name} PROPERTIES
qt_internal_apply_gc_binaries(${target_name} PRIVATE)
qt_skip_warnings_are_errors(${target_name})
+qt_internal_add_docs(${target_name}
+ doc/qmake.qdocconf
+)
--
2.46.2

View file

@ -0,0 +1,15 @@
diff --git a/src/gui/rhi/qrhimetal.mm b/src/gui/rhi/qrhimetal.mm
index 3046b76427..8c1e7fd13f 100644
--- a/src/gui/rhi/qrhimetal.mm
+++ b/src/gui/rhi/qrhimetal.mm
@@ -4710,10 +4710,6 @@ id<MTLLibrary> QRhiMetalData::createMetalLib(const QShader &shader, QShader::Var
QString *error, QByteArray *entryPoint, QShaderKey *activeKey)
{
QVarLengthArray<int, 8> versions;
- if (@available(macOS 13, iOS 16, *))
- versions << 30;
- if (@available(macOS 12, iOS 15, *))
- versions << 24;
versions << 23 << 22 << 21 << 20 << 12;
const QList<QShaderKey> shaders = shader.availableShaders();

View file

@ -0,0 +1,19 @@
diff --git a/src/plugins/multimedia/darwin/camera/qavfcamerabase.mm b/src/plugins/multimedia/darwin/camera/qavfcamerabase.mm
index 940a964b7..bab2cebe0 100644
--- a/src/plugins/multimedia/darwin/camera/qavfcamerabase.mm
+++ b/src/plugins/multimedia/darwin/camera/qavfcamerabase.mm
@@ -176,14 +176,6 @@ void QAVFVideoDevices::updateCameraDevices()
#endif
];
-#if QT_DARWIN_PLATFORM_SDK_EQUAL_OR_ABOVE(__MAC_14_0, __IPHONE_17_0, __TVOS_NA, __WATCHOS_NA)
- if (@available(macOS 14, iOS 17, *)) {
- discoveryDevices = [discoveryDevices arrayByAddingObjectsFromArray: @[
- AVCaptureDeviceTypeExternal,
- AVCaptureDeviceTypeContinuityCamera
- ]];
- } else
-#endif
{
#ifdef Q_OS_MACOS
QT_WARNING_PUSH

View file

@ -1,58 +1,41 @@
From 677c6d3e58064e9d10472e5ca75380b31631d12a Mon Sep 17 00:00:00 2001
From: tobtoht <tob@featherwallet.org>
Date: Tue, 3 Jan 2023 13:00:51 +0100
Subject: [PATCH] qtmultimedia fixes
---
src/multimedia/configure.cmake | 3 +--
src/multimedia/windows/qwindowsmediadevices.cpp | 2 +-
src/multimedia/windows/qwindowsresampler.cpp | 2 +-
src/plugins/multimedia/darwin/qdarwinintegration.mm | 3 +--
src/plugins/multimedia/windows/common/mfmetadata_p.h | 2 +-
.../windows/decoder/mfaudiodecodercontrol.cpp | 2 +-
.../windows/mediacapture/qwindowsmediadevicereader_p.h | 4 ++--
.../windows/mediacapture/qwindowsmediaencoder.cpp | 2 +-
.../multimedia/windows/player/mfplayercontrol_p.h | 2 +-
.../multimedia/windows/player/mfplayersession.cpp | 2 +-
src/plugins/multimedia/windows/player/mftvideo.cpp | 2 +-
.../multimedia/windows/qwindowsvideodevices.cpp | 4 ++--
13 files changed, 19 insertions(+), 21 deletions(-)
diff --git a/src/multimedia/configure.cmake b/src/multimedia/configure.cmake
index 609806507..40b1b9b36 100644
index fd69e8186..23657d9f5 100644
--- a/src/multimedia/configure.cmake
+++ b/src/multimedia/configure.cmake
@@ -24,7 +24,6 @@ qt_find_package(WrapPulseAudio PROVIDED_TARGETS WrapPulseAudio::WrapPulseAudio M
qt_find_package(WMF PROVIDED_TARGETS WMF::WMF MODULE_NAME multimedia QMAKE_LIB wmf)
qt_find_package(EGL)
-qt_find_package(FFmpeg OPTIONAL_COMPONENTS AVCODEC AVFORMAT AVUTIL SWRESAMPLE SWSCALE PROVIDED_TARGETS FFmpeg::avcodec FFmpeg::avformat FFmpeg::avutil FFmpeg::swresample FFmpeg::swscale MODULE_NAME multimedia QMAKE_LIB ffmpeg)
@@ -65,27 +65,6 @@ if(TARGET EGL::EGL)
endif()
qt_find_package(EGL PROVIDED_TARGETS EGL::EGL)
-# If FFMPEG_DIR is specified, we require FFmpeg to be present. This makes
-# configuration problems easier to detect, and reduces risk of silent
-# fallback to native backends.
-if (DEFINED FFMPEG_DIR)
- set(ffmpeg_required REQUIRED)
-endif()
-
-qt_find_package(FFmpeg OPTIONAL_COMPONENTS AVCODEC AVFORMAT AVUTIL SWRESAMPLE SWSCALE PROVIDED_TARGETS FFmpeg::avcodec FFmpeg::avformat FFmpeg::avutil FFmpeg::swresample FFmpeg::swscale MODULE_NAME multimedia QMAKE_LIB ffmpeg ${ffmpeg_required})
-qt_find_package_extend_sbom(
- TARGETS
- FFmpeg::avcodec
- FFmpeg::avformat
- FFmpeg::avutil
- FFmpeg::swresample
- FFmpeg::swscale
- ATTRIBUTION_FILE_DIR_PATHS
- # Need to pass an absolute path here, otherwise the file will be relative to the root of
- # the source tree, not the current dir, because system libraries are processed in the
- # source root directory.
- ${CMAKE_CURRENT_SOURCE_DIR}/../3rdparty/ffmpeg
-)
qt_find_package(PipeWire PROVIDED_TARGETS PipeWire::PipeWire MODULE_NAME multimedia QMAKE_LIB pipewire)
qt_find_package(VAAPI COMPONENTS VA DRM PROVIDED_TARGETS VAAPI::VAAPI MODULE_NAME multimedia QMAKE_LIB vaapi)
#### Tests
@@ -76,7 +75,7 @@ qt_feature("ffmpeg" PRIVATE
@@ -138,7 +117,7 @@ qt_feature("ffmpeg" PRIVATE
LABEL "FFmpeg"
ENABLE INPUT_ffmpeg STREQUAL 'yes'
DISABLE INPUT_ffmpeg STREQUAL 'no'
- CONDITION FFmpeg_FOUND AND (APPLE OR WIN32 OR ANDROID OR QNX OR QT_FEATURE_pulseaudio)
+ CONDITION UNIX OR WIN32
)
qt_feature("alsa" PUBLIC PRIVATE
LABEL "ALSA (experimental)"
diff --git a/src/plugins/multimedia/darwin/qdarwinintegration.mm b/src/plugins/multimedia/darwin/qdarwinintegration.mm
index 5e26fe5c4..3e82655b0 100644
--- a/src/plugins/multimedia/darwin/qdarwinintegration.mm
+++ b/src/plugins/multimedia/darwin/qdarwinintegration.mm
@@ -39,8 +39,7 @@ public:
QDarwinIntegration::QDarwinIntegration()
{
#if defined(Q_OS_MACOS) && QT_MACOS_PLATFORM_SDK_EQUAL_OR_ABOVE(__MAC_11_0)
- if (__builtin_available(macOS 11.0, *))
- VTRegisterSupplementalVideoDecoderIfAvailable(kCMVideoCodecType_VP9);
+ VTRegisterSupplementalVideoDecoderIfAvailable(kCMVideoCodecType_VP9);
#endif
m_videoDevices = new QAVFVideoDevices(this);
}
--
2.39.0
qt_feature("pipewire" PRIVATE
LABEL "PipeWire"

View file

@ -0,0 +1,15 @@
diff --git a/src/client/qwaylandinputdevice.cpp b/src/client/qwaylandinputdevice.cpp
index f435b953..068834c2 100644
--- a/src/client/qwaylandinputdevice.cpp
+++ b/src/client/qwaylandinputdevice.cpp
@@ -609,8 +609,10 @@ void QWaylandInputDevice::setCursor(const QCursor *cursor, const QSharedPointer<
if (mPointer)
mPointer->updateCursor();
+#if QT_CONFIG(tabletevent)
if (mTabletSeat)
mTabletSeat->updateCursor();
+#endif
}
#endif

View file

@ -1,51 +0,0 @@
diff --git a/src/widgets/CMakeLists.txt b/src/widgets/CMakeLists.txt
index aaa81286ab..39c197eeba 100644
--- a/src/widgets/CMakeLists.txt
+++ b/src/widgets/CMakeLists.txt
@@ -693,7 +693,7 @@ if(QT_FEATURE_wizard)
if(APPLE)
set_source_files_properties(dialogs/qwizard.cpp
PROPERTIES
- LANGUAGE OBJCXX
+ COMPILE_FLAGS "-x objective-c++"
SKIP_PRECOMPILE_HEADERS ON
)
endif()
diff --git a/tests/auto/corelib/io/qdebug/CMakeLists.txt b/tests/auto/corelib/io/qdebug/CMakeLists.txt
index c9fd9c6df8..cef57a2186 100644
--- a/tests/auto/corelib/io/qdebug/CMakeLists.txt
+++ b/tests/auto/corelib/io/qdebug/CMakeLists.txt
@@ -13,5 +13,5 @@ qt_internal_add_test(tst_qdebug
)
if (APPLE)
- set_source_files_properties(tst_qdebug.cpp PROPERTIES LANGUAGE OBJCXX)
+ target_compile_options(tst_qdebug PRIVATE -x objective-c++)
endif()
diff --git a/tests/auto/corelib/io/qfileinfo/CMakeLists.txt b/tests/auto/corelib/io/qfileinfo/CMakeLists.txt
index 4da51ce219..5fdc764e8a 100644
--- a/tests/auto/corelib/io/qfileinfo/CMakeLists.txt
+++ b/tests/auto/corelib/io/qfileinfo/CMakeLists.txt
@@ -48,5 +48,5 @@ qt_internal_extend_target(tst_qfileinfo CONDITION WIN32
)
if (APPLE)
- set_source_files_properties(tst_qfileinfo.cpp PROPERTIES LANGUAGE OBJCXX)
+ target_compile_options(tst_qfileinfo PRIVATE -x objective-c++)
endif()
diff --git a/tests/auto/gui/kernel/qwindow/CMakeLists.txt b/tests/auto/gui/kernel/qwindow/CMakeLists.txt
index 5ddda80c2a..605761622f 100644
--- a/tests/auto/gui/kernel/qwindow/CMakeLists.txt
+++ b/tests/auto/gui/kernel/qwindow/CMakeLists.txt
@@ -25,7 +25,7 @@ if(APPLE OR WIN32)
)
if(APPLE)
- set_source_files_properties(tst_foreignwindow.cpp PROPERTIES LANGUAGE OBJCXX)
+ target_compile_options(tst_foreignwindow PRIVATE -x objective-c++)
set_property(TARGET tst_foreignwindow PROPERTY PROPERTY MACOSX_BUNDLE TRUE)
endif()
endif()
--
2.40.1

View file

@ -32,7 +32,7 @@ list(APPEND CMAKE_MODULE_PATH "${__qt6_qtbase_src_path}/cmake/3rdparty/kwin")
set(QT_NO_CREATE_TARGETS TRUE)
set(QT_SUPERBUILD TRUE)
set(QT_BUILD_SUBMODULES "qtbase;qtsvg;qtwebsockets;qtshadertools;qtmultimedia" CACHE STRING "Submodules to build")
set(QT_BUILD_SUBMODULES "qtbase;qtsvg;qtwebsockets;qtshadertools;qtmultimedia;qtwayland" CACHE STRING "Submodules to build")
foreach(module IN LISTS QT_BUILD_SUBMODULES)
message(NOTICE "Configuring '${module}'")

View file

@ -9,6 +9,8 @@ set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
set(CMAKE_FIND_ROOT_PATH @host_prefix@)
if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
set(CMAKE_FIND_ROOT_PATH @host_prefix@;@wmf_libs@)
endif()
@ -25,6 +27,10 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
set(CMAKE_CXX_FLAGS "@cmake_cxx_flags@")
set(CMAKE_OBJC_FLAGS "@cmake_c_flags@")
set(CMAKE_OBJCXX_FLAGS "@cmake_cxx_flags@")
set(CMAKE_EXE_LINKER_FLAGS "@cmake_ld_flags@")
set(CMAKE_MODULE_LINKER_FLAGS "@cmake_ld_flags@")
set(CMAKE_SHARED_LINKER_FLAGS "@cmake_ld_flags@")
SET(CMAKE_OSX_DEPLOYMENT_TARGET "11.0")
set(CMAKE_INSTALL_NAME_TOOL @target@-install_name_tool)
endif()

View file

@ -1,15 +1,15 @@
diff --git a/src/plugins/multimedia/CMakeLists.txt b/src/plugins/multimedia/CMakeLists.txt
index 978710112..1cb2cc730 100644
index 5b163e98a..eac405570 100644
--- a/src/plugins/multimedia/CMakeLists.txt
+++ b/src/plugins/multimedia/CMakeLists.txt
@@ -2,7 +2,7 @@
# SPDX-License-Identifier: BSD-3-Clause
if (QT_FEATURE_ffmpeg)
if(QT_FEATURE_ffmpeg)
- add_subdirectory(ffmpeg)
+ add_subdirectory(v4l2)
endif ()
if (QT_FEATURE_gstreamer)
endif()
if(QT_FEATURE_gstreamer)
add_subdirectory(gstreamer)
diff --git a/src/plugins/multimedia/v4l2/CMakeLists.txt b/src/plugins/multimedia/v4l2/CMakeLists.txt
new file mode 100644
@ -672,10 +672,10 @@ index 000000000..e34005bbf
+#endif
diff --git a/src/plugins/multimedia/v4l2/qffmpegmediaintegration.cpp b/src/plugins/multimedia/v4l2/qffmpegmediaintegration.cpp
new file mode 100644
index 000000000..2dad447c9
index 000000000..63a8ff196
--- /dev/null
+++ b/src/plugins/multimedia/v4l2/qffmpegmediaintegration.cpp
@@ -0,0 +1,130 @@
@@ -0,0 +1,131 @@
+// Copyright (C) 2021 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
+
@ -724,6 +724,7 @@ index 000000000..2dad447c9
+};
+
+QFFmpegMediaIntegration::QFFmpegMediaIntegration()
+ : QPlatformMediaIntegration(QLatin1String("ffmpeg"))
+{
+#ifndef QT_NO_DEBUG
+ qDebug() << "Available HW decoding frameworks:";
@ -975,7 +976,7 @@ index 000000000..95b069b64
+#endif // QFFMPEGMEDIAMETADATA_H
diff --git a/src/plugins/multimedia/v4l2/qffmpegvideosink.cpp b/src/plugins/multimedia/v4l2/qffmpegvideosink.cpp
new file mode 100644
index 000000000..93e7ceeed
index 000000000..128ce2f56
--- /dev/null
+++ b/src/plugins/multimedia/v4l2/qffmpegvideosink.cpp
@@ -0,0 +1,17 @@
@ -990,18 +991,18 @@ index 000000000..93e7ceeed
+{
+}
+
+void QFFmpegVideoSink::setVideoFrame(const QVideoFrame &frame)
+void QFFmpegVideoSink::onVideoFrameChanged(const QVideoFrame &frame)
+{
+ QPlatformVideoSink::setVideoFrame(frame);
+
+}
+
+QT_END_NAMESPACE
diff --git a/src/plugins/multimedia/v4l2/qffmpegvideosink_p.h b/src/plugins/multimedia/v4l2/qffmpegvideosink_p.h
new file mode 100644
index 000000000..cbaa810d7
index 000000000..9eac79129
--- /dev/null
+++ b/src/plugins/multimedia/v4l2/qffmpegvideosink_p.h
@@ -0,0 +1,39 @@
@@ -0,0 +1,40 @@
+// Copyright (C) 2021 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
+
@ -1034,7 +1035,8 @@ index 000000000..cbaa810d7
+public:
+ QFFmpegVideoSink(QVideoSink *sink);
+
+ void setVideoFrame(const QVideoFrame &frame) override;
+protected:
+ void onVideoFrameChanged(const QVideoFrame &frame) override;
+};
+
+QT_END_NAMESPACE
@ -1043,7 +1045,7 @@ index 000000000..cbaa810d7
+#endif
diff --git a/src/plugins/multimedia/v4l2/qv4l2camera.cpp b/src/plugins/multimedia/v4l2/qv4l2camera.cpp
new file mode 100644
index 000000000..2086af10d
index 000000000..1ba05364d
--- /dev/null
+++ b/src/plugins/multimedia/v4l2/qv4l2camera.cpp
@@ -0,0 +1,707 @@
@ -1443,7 +1445,7 @@ index 000000000..2086af10d
+void QV4L2Camera::setCameraBusy()
+{
+ m_cameraBusy = true;
+ emit error(QCamera::CameraError, QLatin1String("Camera is in use"));
+ updateError(QCamera::CameraError, QLatin1String("Camera is in use"));
+}
+
+void QV4L2Camera::initV4L2Controls()
@ -1461,7 +1463,7 @@ index 000000000..2086af10d
+ qCWarning(qLcV4L2Camera) << "Unable to open the camera" << deviceName
+ << "for read to query the parameter info:"
+ << qt_error_string(errno);
+ emit error(QCamera::CameraError, QLatin1String("Cannot open camera"));
+ updateError(QCamera::CameraError, QLatin1String("Cannot open camera"));
+ return;
+ }
+
@ -1700,7 +1702,7 @@ index 000000000..2086af10d
+
+ if (!m_memoryTransfer) {
+ qCWarning(qLcV4L2Camera) << "Cannot init v4l2 memory transfer," << qt_error_string(errno);
+ emit error(QCamera::CameraError, QLatin1String("Cannot init V4L2 memory transfer"));
+ updateError(QCamera::CameraError, QLatin1String("Cannot init V4L2 memory transfer"));
+ }
+}
+
@ -1895,7 +1897,7 @@ index 000000000..79cc3cfa9
+#endif // QV4L2CAMERA_H
diff --git a/src/plugins/multimedia/v4l2/qv4l2cameradevices.cpp b/src/plugins/multimedia/v4l2/qv4l2cameradevices.cpp
new file mode 100644
index 000000000..44abde914
index 000000000..c89ff69c6
--- /dev/null
+++ b/src/plugins/multimedia/v4l2/qv4l2cameradevices.cpp
@@ -0,0 +1,168 @@
@ -1940,7 +1942,7 @@ index 000000000..44abde914
+ doCheckCameras();
+}
+
+QList<QCameraDevice> QV4L2CameraDevices::videoDevices() const
+QList<QCameraDevice> QV4L2CameraDevices::findVideoInputs() const
+{
+ return m_cameras;
+}
@ -1948,7 +1950,7 @@ index 000000000..44abde914
+void QV4L2CameraDevices::checkCameras()
+{
+ if (doCheckCameras())
+ emit videoInputsChanged();
+ onVideoInputsChanged();
+}
+
+bool QV4L2CameraDevices::doCheckCameras()
@ -2069,10 +2071,10 @@ index 000000000..44abde914
+#include "moc_qv4l2cameradevices_p.cpp"
diff --git a/src/plugins/multimedia/v4l2/qv4l2cameradevices_p.h b/src/plugins/multimedia/v4l2/qv4l2cameradevices_p.h
new file mode 100644
index 000000000..ce424d3b6
index 000000000..22ac44027
--- /dev/null
+++ b/src/plugins/multimedia/v4l2/qv4l2cameradevices_p.h
@@ -0,0 +1,46 @@
@@ -0,0 +1,47 @@
+// Copyright (C) 2023 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
+
@ -2103,11 +2105,12 @@ index 000000000..ce424d3b6
+public:
+ QV4L2CameraDevices(QPlatformMediaIntegration *integration);
+
+ QList<QCameraDevice> videoDevices() const override;
+
+public Q_SLOTS:
+ void checkCameras();
+
+protected:
+ QList<QCameraDevice> findVideoInputs() const override;
+
+private:
+ bool doCheckCameras();
+

View file

@ -1,14 +0,0 @@
diff --git a/configure.ac b/configure.ac
index 5c7da197..e2b25288 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1702,6 +1702,9 @@ AC_LINK_IFELSE([AC_LANG_SOURCE(AC_INCLUDES_DEFAULT
#ifndef _OPENBSD_SOURCE
#define _OPENBSD_SOURCE 1
#endif
+#ifdef __linux__
+# error reallocarray() is currently disabled on Linux to support glibc < 2.26
+#endif
#include <stdlib.h>
int main(void) {
void* p = reallocarray(NULL, 10, 100);

View file

@ -0,0 +1,15 @@
[binaries]
c = '@cc@'
cpp = '@cxx@'
ar = '@ar@'
strip = '@strip@'
pkgconfig = '/home/user/.guix-profile/bin/pkg-config'
[host_machine]
system = 'linux'
cpu_family = '@arch@'
cpu = '@arch@'
endian = 'little'
[built-in options]
prefix = '@host_prefix@'

View file

@ -0,0 +1,23 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 15ceebe..58414f6 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -167,15 +167,9 @@ if(NOT CYGWIN)
set_target_properties(zlib PROPERTIES VERSION ${ZLIB_FULL_VERSION})
endif()
-if(UNIX)
- # On unix-like platforms the library is almost always called libz
- set_target_properties(zlib zlibstatic PROPERTIES OUTPUT_NAME z)
- if(NOT APPLE AND NOT(CMAKE_SYSTEM_NAME STREQUAL AIX))
- set_target_properties(zlib PROPERTIES LINK_FLAGS "-Wl,--version-script,\"${CMAKE_CURRENT_SOURCE_DIR}/zlib.map\"")
- endif()
-elseif(BUILD_SHARED_LIBS AND WIN32)
- # Creates zlib1.dll when building shared library version
- set_target_properties(zlib PROPERTIES SUFFIX "1.dll")
+set_target_properties(zlib zlibstatic PROPERTIES OUTPUT_NAME z)
+if(NOT APPLE AND NOT(CMAKE_SYSTEM_NAME STREQUAL AIX))
+ set_target_properties(zlib PROPERTIES LINK_FLAGS "-Wl,--version-script,\"${CMAKE_CURRENT_SOURCE_DIR}/zlib.map\"")
endif()
if(NOT SKIP_INSTALL_LIBRARIES AND NOT SKIP_INSTALL_ALL )

View file

@ -37,6 +37,9 @@ SET(Terminfo_LIBRARY @prefix@/lib/libtinfo.a)
SET(UNBOUND_INCLUDE_DIR @prefix@/include)
SET(UNBOUND_LIBRARIES @prefix@/lib/libunbound.a)
SET(CMAKE_FIND_USE_PACKAGE_ROOT_PATH ON)
SET(absl_ROOT @prefix@)
SET(NATIVE_BIN_PATH @prefix@/native/bin CACHE FILEPATH "path to native binaries" FORCE)
SET(LRELEASE_PATH @prefix@/native/bin CACHE FILEPATH "path to lrelease" FORCE)
@ -49,17 +52,10 @@ if(NOT CMAKE_SYSTEM_NAME STREQUAL "FreeBSD")
SET(LIBUSB-1.0_LIBRARY @prefix@/lib/libusb-1.0.a)
SET(LIBUDEV_LIBRARY @prefix@/lib/libudev.a)
SET(Protobuf_FOUND 1)
SET(Protobuf_PROTOC_EXECUTABLE @prefix@/native/bin/protoc CACHE FILEPATH "Path to the native protoc")
SET(Protobuf_INCLUDE_DIR @prefix@/include CACHE PATH "Protobuf include dir")
SET(Protobuf_INCLUDE_DIRS @prefix@/include CACHE PATH "Protobuf include dir")
SET(Protobuf_LIBRARY @prefix@/lib/libprotobuf.a CACHE FILEPATH "Protobuf library")
endif()
endif()
set(ICONV_LIBRARIES @prefix@/lib/libiconv.a)
SET(ZMQ_INCLUDE_PATH @prefix@/include)
SET(ZMQ_LIB @prefix@/lib/libzmq.a)
@ -98,44 +94,30 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
SET(BUILD_TAG "mac-x64")
SET(CMAKE_OSX_ARCHITECTURES "x86_64")
endif()
SET(CMAKE_SYSTEM_VERSION 20.1)
SET(_CMAKE_TOOLCHAIN_PREFIX @prefix@/native/bin/${CONF_TRIPLE}-)
SET(CMAKE_C_COMPILER @CC@)
SET(CMAKE_C_COMPILER_TARGET ${CLANG_TARGET})
SET(CMAKE_C_FLAGS_INIT -B${_CMAKE_TOOLCHAIN_PREFIX})
SET(CMAKE_CXX_COMPILER @CXX@ -stdlib=libc++ )
SET(CMAKE_CXX_COMPILER_TARGET ${CLANG_TARGET})
SET(CMAKE_CXX_FLAGS_INIT -B${_CMAKE_TOOLCHAIN_PREFIX})
SET(CMAKE_C_FLAGS "@CFLAGS@")
SET(CMAKE_CXX_COMPILER @CXX@ -stdlib=libc++)
SET(CMAKE_CXX_FLAGS "@CXXFLAGS@")
SET(CMAKE_EXE_LINKER_FLAGS "@LDFLAGS@")
SET(CMAKE_MODULE_LINKER_FLAGS "@LDFLAGS@")
SET(CMAKE_SHARED_LINKER_FLAGS "@LDFLAGS@")
SET(CMAKE_INSTALL_NAME_TOOL llvm-install-name-tool)
SET(CMAKE_ASM_COMPILER clang)
SET(CMAKE_ASM-ATT_COMPILER as)
SET(CMAKE_ASM-ATT_COMPILER llvm-as)
SET(CMAKE_ASM_COMPILER_TARGET ${CLANG_TARGET})
SET(CMAKE_ASM-ATT_COMPILER_TARGET ${CLANG_TARGET})
SET(CMAKE_AR @prefix@/native/bin/${CLANG_TARGET}-ar)
SET(CMAKE_RANLIB @prefix@/native/bin/${CLANG_TARGET}-ranlib)
SET(CMAKE_AR llvm-ar)
SET(CMAKE_RANLIB llvm-ranlib)
SET(APPLE True)
SET(BUILD_64 ON)
SET(BREW OFF)
SET(PORT OFF)
SET(CMAKE_OSX_SYSROOT "@prefix@/native/SDK")
SET(CMAKE_OSX_DEPLOYMENT_TARGET "10.14")
SET(CMAKE_OSX_DEPLOYMENT_TARGET "11.0")
SET(CMAKE_CXX_STANDARD 17)
SET(LLVM_ENABLE_PIC OFF)
SET(LLVM_ENABLE_PIE OFF)
elseif(CMAKE_SYSTEM_NAME STREQUAL "Android")
SET(ANDROID TRUE)
if(ARCHITECTURE STREQUAL "arm")
SET(CMAKE_ANDROID_ARCH_ABI "armeabi-v7a")
SET(CMAKE_SYSTEM_PROCESSOR "armv7-a")
SET(CMAKE_ANDROID_ARM_MODE ON)
SET(CMAKE_C_COMPILER_TARGET arm-linux-androideabi)
SET(CMAKE_CXX_COMPILER_TARGET arm-linux-androideabi)
SET(_CMAKE_TOOLCHAIN_PREFIX arm-linux-androideabi-)
elseif(ARCHITECTURE STREQUAL "aarch64")
SET(CMAKE_ANDROID_ARCH_ABI "arm64-v8a")
SET(CMAKE_SYSTEM_PROCESSOR "aarch64")
endif()
SET(CMAKE_ANDROID_STANDALONE_TOOLCHAIN @prefix@/native)
SET(CMAKE_C_COMPILER "${_CMAKE_TOOLCHAIN_PREFIX}clang")
SET(CMAKE_CXX_COMPILER "${_CMAKE_TOOLCHAIN_PREFIX}clang++")
else()
SET(CMAKE_C_COMPILER @CC@)
SET(CMAKE_CXX_COMPILER @CXX@)
@ -170,16 +152,6 @@ if(ARCHITECTURE STREQUAL "riscv64")
set(ARCH "rv64imafdc")
endif()
if(ARCHITECTURE STREQUAL "i686")
SET(ARCH_ID "i386")
if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
set(BUILD_TAG "linux-x86")
SET(LINUX_32 ON)
elseif(CMAKE_SYSTEM_NAME STREQUAL "Windows")
set(BUILD_TAG "win-x32")
endif()
endif()
if(ARCHITECTURE STREQUAL "x86_64")
if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
set(BUILD_TAG "linux-x64")

View file

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="16" height="16" xmlns="http://www.w3.org/2000/svg">
<path d="M4 4h1.031c.255.011.51.129.688.313L8 6.592l2.312-2.28c.266-.231.447-.306.688-.313h1v1c0 .286-.034.55-.25.75L9.469 8.031l2.25 2.25c.188.188.281.454.281.719v1h-1c-.265 0-.53-.093-.719-.281L8 9.438l-2.281 2.28A1.015 1.015 0 015 12H4v-1c0-.265.093-.53.281-.719l2.281-2.25-2.28-2.281A.909.909 0 014 5z" color="#bebebe" fill="#2e3436" font-family="Andale Mono" font-weight="400" overflow="visible" style="text-decoration-line:none;text-indent:0;text-transform:none"/>
</svg>

After

(image error) Size: 582 B

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