Age | Commit message (Collapse) | Author |
|
The explicit statement that an Apple Developer Account is required in
order to obtain the SDK is buried within the "Deterministic macOS DMG
Notes" section. It should be the first thing mentioned under the "SDK
Extraction" section. The reason to do this is to set expectations of
what is required before starting any steps or clicking on links.
This fixes the issue by doing just that; moving this information to the
"SDK Extraction" section. Now that the information is moved, this also
deletes unnecessary SDK related notes from the "Deterministic macOS DMG
Notes" section. It is not necessary to explain under what sub-directory
'most' of the important files are inside of the 'Xcode.app'.
|
|
This should be sufficient to support building for Apple ARM when
cross-compiling.
|
|
Co-authored-by: Pavol Rusnak <pavol@rusnak.io>
|
|
-BEGIN VERIFY SCRIPT-
./contrib/devtools/copyright_header.py update ./
-END VERIFY SCRIPT-
Commits of previous years:
* 2020: fa0074e2d82928016a43ca408717154a1c70a4db
* 2019: aaaaad6ac95b402fe18d019d67897ced6b316ee0
|
|
Fix the warning:
```
./contrib/macdeploy/gen-sdk:84: FutureWarning: GzipFile was opened for writing, but this will change in future Python releases. Specify the mode argument for opening it for writing.
```
|
|
|
|
|
|
The previous link wasn't accessible for me, this adds some instructions
given to me by Hebasto on #bitcoin-core-builds as well as a shasum for
the archive to quickly check the downloaded one is the right one before
processing with the entire Guix build.
This also corrects a link to an older version of the SDK currently in
use.
Signed-off-by: Antoine Poinsot <darosior@protonmail.com>
|
|
|
|
|
|
|
|
|
|
Unused since #20422, see: https://github.com/bitcoin/bitcoin/pull/20422#discussion_r534207899
|
|
|
|
|
|
|
|
|
|
|
|
xorriso and its mkisofs/genisoimage emulation alter-ego xorrisofs are
more maintained, and has the right toggles for us to achieve output
determinism without using blunt tools like faketime.
In this commit, we use xorrisofs from the build environment rather than
building it ourselves using depends. This is not necessary and can be
changed in the future.
From https://wiki.debian.org/genisoimage?action=recall&rev=11 :
> The classical command line interface for production of ISO 9660
> filesystem images is the option set established by program mkisofs.
> For reasons of licensing and other problems with its author, Debian
> ships a fork of mkisofs, called genisoimage, which was split off in
> 2006 and then developed independently.
>
> Meanwhile, genisoimage gets no new features and not even bug fixes. It
> is first choice only if its options -udf or -hfs are needed.
>
> Replacement in most uses cases, especially for bootable ISO 9660
> filesystems, archiving, and backup, is xorrisofs which starts the -as
> mkisofs emulation mode of program xorriso.
|
|
|
|
|
|
|
|
|
|
Rather than two lots of logic doing roughly the same thing, dependent on if
you're compiling on Linux or macOS, combine the .DS store generation into
macdeployqtplus.
This also removes the -fancy and -volname options.
|
|
We already require Python 3.5 or later
|
|
4 different levels of verbosity is overkill for a fairly simple script, which
was always being run at 2 in any case.
|
|
|
|
|
|
Rather than using OSX_QT_TRANSLATIONS which must be manually updated,
and we forget to update anyway, i.e: #19059, automatically find and copy
available translations from the translations directory.
|
|
native_ds_store now takes advantage of Pythons ability to decode binary
plists (since 3.4), so we can drop its biplist dependency.
The call to biplist.Data() in custom_dsstore doesn't seem to do anything,
and from what I can tell can just be removed.
|
|
See https://docs.python.org/3/library/plistlib.html.
The new API was added in 3.4 and old removed in 3.9.
|
|
This gets us a newer SDK with c++17 support and retains 10.12
back-compat.
Co-authored-by: Carl Dong <contact@carldong.me>
|
|
|
|
|
|
Previously, we did not include the macOS SDK libc++ headers in our SDK
creation process and instead used whichever libc++ headers shipped with
the clang package we downloaded in depends.
This change adds a script (which works on both GNU/Linux and macOS) to
correctly generate the macOS SDK including the libc++ headers. This can
be thought of as a simplified rewrite of tpoechtrager's script:
https://github.com/tpoechtrager/osxcross/blob/d3392f4eae78f3fa3f1fd065fa423f2712825102/tools/gen_sdk_package.sh
The location within the SDK where we place the libc++ headers is chosen
such that clang's search path detection logic for sysroots would pick up
the headers properly.
We also document this change.
|
|
eb37275a6f972c81caef010b4ee9c5dc88edc759 Fix naming of macOS SDK and clarify version (Andrew Chow)
Pull request description:
Fixes the `MacOSX10.14.sdk.tar.gz` creation command to have `MacOSX.sdk` be correctly named as `MacOSX10.14.sdk` and for the resulting file to be placed in the current directory. Gitian requires that `tar.gz` contains a folder named `MacOSX10.14.sdk` and the command did not do this originally. Having the file be placed in the current directory is a convenience so builders don't have to go find it.
Also clarifies which version of Xcode to download and where it can be downloaded.
ACKs for top commit:
fanquake:
ACK eb37275a6f972c81caef010b4ee9c5dc88edc759 - tested the macOS and Linux SDK extraction. Also noticed something seemingly broken with Apple `tar`, but will open an issue to follow up.
Sjors:
ACK eb37275 for the macOS instruction
Tree-SHA512: d691e14711cf195999291dd6fb7ffe552c86f8b30d2b1a77e88b4db6050dd817ba128b047cf36d29b0bb0d4183e709b7c03aa27f31b64e562ea8cd948434ca55
|
|
|
|
-BEGIN VERIFY SCRIPT-
./contrib/devtools/copyright_header.py update ./
-END VERIFY SCRIPT-
|
|
Co-Authored-By: Carl Dong <accounts@carldong.me>
|
|
-BEGIN VERIFY SCRIPT-
./contrib/devtools/copyright_header.py update ./
-END VERIFY SCRIPT-
|
|
-BEGIN VERIFY SCRIPT-
./contrib/devtools/copyright_header.py update ./
-END VERIFY SCRIPT-
|
|
`make deploy`
|
|
find_bdb48.m4
|
|
1ac7b7f66bd53d2d719377c7e0ab8b38e970c88f scripts: filter more qt plugins we don't use in macdeployqtplus (fanquake)
57cdd0697d5c8fdae4a4c1da1cfa092916be87e7 scripts: misc cleanups in macdeployqtplus (fanquake)
51729a4dfacb5b8d3945d39fa581eaaa9ac9603d scripts: use format() in macdeployqtplus (fanquake)
1c37e81694efb08fea889d9f5151c91dbb74d025 scripts: add type annotations to macdeployqtplus (fanquake)
Pull request description:
I frequently run `make deploy` while testing on macOS to get a properly light themed .app. With a brew installed Qt, this currently results in a pretty bloated executable:
| branch | .app size | .dmg size | `make deploy` time |
| ------- | --------- | --------- | --------------------- |
| master (febf3a856bcfb8fef2cb4ddcb8d1e0cab8a22580) | 235mb | 86mb | 38s |
| This PR (da98f6d470d236c027b7eb8b5f5552fdca04e803) | 51mb | 21mb | 22s |
Similar change to dd367ff8c93c2f9e112a324f5cd737c7fa7a2ffa.
```diff
'QtGui.framework'],
'pluginPath': '/usr/local/opt/qt/plugins',
'qtPath': '/usr/local/opt/qt'}
-[('platforminputcontexts', 'libqtvirtualkeyboardplugin.dylib'),
- ('geoservices', 'libqtgeoservices_esri.dylib'),
- ('geoservices', 'libqtgeoservices_mapboxgl.dylib'),
- ('geoservices', 'libqtgeoservices_nokia.dylib'),
- ('geoservices', 'libqtgeoservices_itemsoverlay.dylib'),
- ('geoservices', 'libqtgeoservices_osm.dylib'),
- ('geoservices', 'libqtgeoservices_mapbox.dylib'),
- ('sceneparsers', 'libgltfsceneexport.dylib'),
- ('sceneparsers', 'libgltfsceneimport.dylib'),
- ('platforms', 'libqwebgl.dylib'),
+[('platforms', 'libqwebgl.dylib'),
('platforms', 'libqoffscreen.dylib'),
('platforms', 'libqminimal.dylib'),
('platforms', 'libqcocoa.dylib'),
('platformthemes', 'libqxdgdesktopportal.dylib'),
- ('printsupport', 'libcocoaprintersupport.dylib'),
- ('webview', 'libqtwebview_webengine.dylib'),
- ('webview', 'libqtwebview_darwin.dylib'),
- ('geometryloaders', 'libdefaultgeometryloader.dylib'),
- ('geometryloaders', 'libgltfgeometryloader.dylib'),
('styles', 'libqmacstyle.dylib'),
- ('canbus', 'libqttinycanbus.dylib'),
- ('canbus', 'libqtpassthrucanbus.dylib'),
- ('canbus', 'libqtvirtualcanbus.dylib'),
- ('canbus', 'libqtpeakcanbus.dylib'),
('bearer', 'libqgenericbearer.dylib'),
- ('imageformats', 'libqgif.dylib'),
- ('imageformats', 'libqwbmp.dylib'),
- ('imageformats', 'libqwebp.dylib'),
- ('imageformats', 'libqico.dylib'),
- ('imageformats', 'libqmacheif.dylib'),
- ('imageformats', 'libqjpeg.dylib'),
- ('imageformats', 'libqtiff.dylib'),
- ('imageformats', 'libqicns.dylib'),
- ('imageformats', 'libqtga.dylib'),
- ('imageformats', 'libqmacjp2.dylib'),
- ('texttospeech', 'libqtexttospeech_speechosx.dylib'),
- ('generic', 'libqtuiotouchplugin.dylib'),
- ('renderplugins', 'libscene2d.dylib'),
- ('gamepads', 'libdarwingamepad.dylib'),
- ('virtualkeyboard', 'libqtvirtualkeyboard_thai.dylib'),
- ('virtualkeyboard', 'libqtvirtualkeyboard_openwnn.dylib'),
- ('virtualkeyboard', 'libqtvirtualkeyboard_hangul.dylib'),
- ('virtualkeyboard', 'libqtvirtualkeyboard_pinyin.dylib'),
- ('virtualkeyboard', 'libqtvirtualkeyboard_tcime.dylib')]
+ ('generic', 'libqtuiotouchplugin.dylib')]
```
ACKs for top commit:
laanwj:
ACK 1ac7b7f66bd53d2d719377c7e0ab8b38e970c88f (purely Python code review and the fact that this passes travis, cannot run this on a mac)
dongcarl:
tested ACK 1ac7b7f66bd53d2d719377c7e0ab8b38e970c88f
Tree-SHA512: 5974eeaf7229bb5bde2b283c1331ec57ee87f624db146401f6b77dee4ee5502e0bd669958a46205f10398a371f8e6c91ddacb9f0e1943f9f7d042fb6de7957a8
|
|
Flagged by flake8 v3.6.0, as W605, plus a few others identified
incidentally, e.g. 59ffecf66cf4d08c4b431e457b083878d66a3fd6.
Note that r"\n" matches to "\n" under re.match/search.
|
|
phonon is no longer a part of Qt as of version 5
|
|
|
|
|
|
|
|
Enabled ShellCheck rules:
SC1087
SC2001
SC2004
SC2005
SC2006
SC2016
SC2028
SC2048
SC2066 (note that IFS already contains only a line feed)
SC2116
SC2166
SC2181
SC2206
SC2207
SC2230
SC2236
|