1
1
mirror of https://github.com/bitcoin/bitcoin synced 2025-10-06 02:42:50 +02:00

236 Commits

Author SHA1 Message Date
Hodlinator
79752b9c0b build(windows): Remove lingering registry entries and shortcuts upon install
Prior releases installed using these paths. Especially annoying was that the lingering registry entry for the uninstaller would show up as "Bitcoin Core (64-bit)" besides the current "Bitcoin Core" entry in the list of installed programs, and whichever was uninstalled last would fail to work as they would default to the same install directory.
2025-09-19 16:40:58 +02:00
Daniel Pfeifer
3c4a109aa8 cmake: Drop python dependency for translate
Resolves #33146
2025-08-19 10:00:05 +02:00
Daniel Pfeifer
05255d5d1e cmake: Drop dependency on sed for translate target 2025-08-18 09:03:34 +02:00
Daniel Pfeifer
d5054beca5 cmake: Introduce translate.cmake script for translate target
Using `file(GLOB)` in the generates step is discouraged because the
globbing result may be out of date when the target is built.
Performing the globbing in a script that is executed as the build
target means the result is always reproducable and the overhead
of globbing is only paid when used.

As a follow up, the dependency on `sed` may be removed by performing
the replacement with cmake. Also, the logic from extract_strings_qt.py
can be migrated to cmake.
2025-08-18 09:03:28 +02:00
Sjors Provoost
d2739d75c9 build: add bitcoin.exe to windows installer 2025-05-12 19:49:17 +01:00
Hennadii Stepanov
fb2b05b125 build: Remove bitness suffix from Windows installer
Since support for 32-bit Windows has been dropped, the suffix is no
longer necessary.
2025-03-24 14:19:11 +00:00
Hennadii Stepanov
332655cb52 build: Rename PACKAGE_* variables to CLIENT_*
The use of `PACKAGE_NAME` for the project's variable name is
problematic, as this name is commonly used in CMake's interface
variables. If third-party CMake code handles with scopes improperly,
our `PACKAGE_NAME` variable could end up with an unexpected value.

This change avoids such conflicts by renaming all `PACKAGE_*` variables
to `CLIENT_*`.
2024-10-28 12:35:55 +00:00
merge-script
684873931b Merge bitcoin/bitcoin#26334: Add Signet and testnet4 launch shortcuts for Windows
cfd03de965 Add Testnet4 launch shortcut for Windows (Sjors Provoost)
77b2923f87 Add Signet launch shortcut for Windows (Sjors Provoost)

Pull request description:

  This makes it easier to launch Signet and testnet4 on Windows. Follows the same pattern as testnet.

  Before:

  <img width="766" alt="testnet" src="https://user-images.githubusercontent.com/10217/196468934-ee29d129-871b-4612-bde4-842f191403a7.png">

  After:
  <img width="500" alt="signet1" src="https://user-images.githubusercontent.com/10217/220358057-d9efc532-272c-45e7-81fa-3a52f58a0f29.png">
  <img width="527" alt="signet2" src="https://user-images.githubusercontent.com/10217/220358067-62b3b76f-604a-4163-9d35-c903fff29df0.png">

  (the testnet4 icon is the same as testnet3, not in the above screenshot)

ACKs for top commit:
  achow101:
    ACK cfd03de965
  laanwj:
    ACK cfd03de965
  TheCharlatan:
    ACK cfd03de965

Tree-SHA512: 9a43ab55b341cacbfc4e891bf192946ee808f776c622906a2e5628e2b59cb3dd87b089dc3a8d08717d01ff136063ed35f3049d516c7f477047f8f3f620fc8b2e
2024-10-21 15:00:32 +01:00
Hennadii Stepanov
a0e089a71d build: Bump minimum supported macOS to 13.0
Running Bitcoin Core on unsupported OSes may expose users to security
issues.

macOS Monterey 12 received its final security update (12.7.6) on July
2024. Apple classifies the hardware that can run macOS 12 at most as
"obsolete worldwide".
2024-10-15 10:18:48 +01:00
kevkevinpal
a9964c0444 doc: Updating docs from autotools to cmake
replaced --enable-debug with -DCMAKE_BUILD_TYPE=Debug in developer-notes
replaced --enable-multiprocess with -DWITH_MULTIPROCESS=ON
replaced --disable-zmq with -DWITH_ZMQ=OFF
2024-09-18 11:04:52 -04:00
Sjors Provoost
cfd03de965 Add Testnet4 launch shortcut for Windows 2024-09-03 10:25:38 +02:00
Sjors Provoost
77b2923f87 Add Signet launch shortcut for Windows
cd src/qt/res/icons
convert bitcoin.png -modulate 100,87,119.4 -define icon:auto-resize="256,48,32,16" bitcoin_signet.ico

This commit also removes the 64-bit mention from testnet.
2024-09-03 09:30:19 +02:00
Hennadii Stepanov
d71ac76842 build: Remove Autotools-based build system 2024-08-30 21:31:39 +01:00
bstin
9adf949d2a contrib: rpcauth.py - Add new option (-j/--json) to output text in json format
-j/--json update and remove un-needed parens

Update README to reflect new -j/--json options
2024-04-25 08:32:28 -05:00
Cory Fields
fb61bc0c02 depends: Bump MacOS minimum runtime requirement to 11.0
This is necessary as the new fixup_chains linker behavior is only valid
when the runtime target is >=11.0.
2023-06-22 15:28:47 +00:00
Pieter Wuille
e4e17907b6 Modernize rpcauth.py and its tests 2023-02-13 17:11:15 -05:00
fanquake
495caa9a01 build: add example bitcoin conf to win installer
Addresses
https://github.com/bitcoin/bitcoin/pull/22235#discussion_r946359661.
2022-08-16 11:32:46 +01:00
fanquake
0eac1f7ba4 build: include share/rpcauth in tarball & installer
Fixes #19081.
2022-08-16 11:32:42 +01:00
fanquake
d755ffc327 build: package test_bitcoin in Windows installer 2022-08-09 09:13:23 +01:00
fanquake
aa30e046ac build: remove entire docs dir from Windows installer 2022-08-09 09:08:46 +01:00
josibake
b483084d86 doc: replace bitcoin.conf with placeholder file 2022-05-02 15:38:07 +02:00
Hennadii Stepanov
a5f67b4ca8 build: Fix make deploy for Windows when building out of source tree 2022-02-06 13:34:49 +02:00
fanquake
b3ccf26df4 build: force CRCCheck in Windows installer
Otherwise a user can pass /NCRC on the command line and bypass the
crc check, meaning they could install a potentially corrupted
installer.
2022-01-20 18:06:26 +08:00
Hennadii Stepanov
f47dda2c58 scripted-diff: Bump copyright headers
-BEGIN VERIFY SCRIPT-
./contrib/devtools/copyright_header.py update ./
-END VERIFY SCRIPT-

Commits of previous years:
* 2020: fa0074e2d8
* 2019: aaaaad6ac9
2021-12-30 19:36:57 +02:00
Hennadii Stepanov
9a1ad7bc0d test: Enable SC2086 shellcheck rule 2021-11-13 16:54:56 +02:00
Samuel Dobson
bccd1d942d Remove -rescan startup parameter 2021-09-30 12:06:27 +13:00
fanquake
a43b8e9555 build: set OSX_MIN_VERSION to 10.15
This is required to use std::filesystem on macOS as support for it only
landed in the libc++ dylib shipped with 10.15.

See also: https://developer.apple.com/documentation/xcode-release-notes/xcode-11-release-notes

Clang now supports the C++17 <filesystem> library for iOS 13, macOS 10.15, watchOS 6, and tvOS 13.
2021-09-16 17:50:19 +08:00
Jarol Rodriguez
3765c486ef qt: fix bitcoin-qt app categorization on apple silicon
On master, the deployed bitcoin-qt application is categorized as an IOS application.
This is obviously incorrect, and the built executable is not an IOS executable.
To fix this, we set the CFBundleSupportedPlatforms key in our info.plist
2021-09-13 05:17:18 -04:00
Zero-1729
021daedfa1 refactor: replace remaining binascii method calls 2021-08-16 19:30:56 +01:00
apitko
947f9734da doc: add maxuploadtarget to bitcoin.conf example
Introduce the maxuploadtarget option to the example bitcoin.conf file. This adds visibility for this option which is useful to those looking to configure bandwidth usage.
2021-05-28 12:53:17 -04:00
Hennadii Stepanov
55c012d20c qt: Extract translations correctly from UTF-8 formatted source 2021-05-17 13:21:13 +02:00
W. J. van der Laan
54617fad99 Merge bitcoin/bitcoin#21709: doc: update reduce-memory.md and bitcoin.conf -maxconnections info
300234ab66 doc: update bitcoin.conf maxconnections info (Jon Atack)
926827065f doc: update reduce-memory.md peer connections info (Jon Atack)

Pull request description:

  This patch updates the documentation in `doc/reduce-memory.md` and `share/examples/bitcoin.conf` regarding the peer connections limits and `-maxconnections`

ACKs for top commit:
  jarolrod:
    re-ACK 300234ab66
  laanwj:
    ACK 300234ab66
  prayank23:
    ACK 300234ab66

Tree-SHA512: 90f53626124afb50706e6a3b644bc7bb800bb7cf41ae7062c20c17b3d9bdf4a8d73b4cf188faec9113d772596f7e4bc36a4a69481cacb92cc55d5956181d0c31
2021-05-05 16:10:55 +02:00
Jon Atack
e041ee0a80 doc: add coinstatsindex to bitcoin.conf 2021-04-30 20:19:20 +02:00
Jon Atack
300234ab66 doc: update bitcoin.conf maxconnections info 2021-04-17 20:22:43 +02:00
MarcoFalke
3bcd278aa6 Merge bitcoin-core/gui#154: qt: Support macOS Dark mode
dc4551c22c remove incompatibility release note for darkmode on macos (Sylvain Goumy)
303cfc6227 allow darkmode on macos build (Sylvain Goumy)
78f75a2d60 Allow icon colorization on mac os to better support dark mode (Uplab)

Pull request description:

  Allow icons to be colorized on macOS to support native Dark mode color scheme.

  Rendering on macOS Big Sur before PR:
  ![macos-darkmode-before-pr](https://user-images.githubusercontent.com/5577626/102502739-43f3af80-407f-11eb-9263-5bbc27b371c2.png)

  Rendering on macOS Big Sur after PR:
  ![macos-darkmode-after-pr](https://user-images.githubusercontent.com/5577626/102502678-350cfd00-407f-11eb-8b98-e271f2688c36.png)

  Light mode stay visually unchanged.

  <del>Note, that this currently only affect the build from source, as the macos dmg includes an attributes to force light color scheme on macos windows (see https://github.com/bitcoin/bitcoin/pull/14593). </del>
  <del>But once all glitches are fixed, we will be able to remove this temporary fix. </del>
  Edit: this PR is know including the removal of `NSRequiresAquaSystemAppearance` on Info.plist file so that the color fix is apply to every build.

  Linked issues: #68 #136

ACKs for top commit:
  hebasto:
    re-ACK dc4551c22c
  jarolrod:
    ACK dc4551c22c

Tree-SHA512: 1c3a4dec796063e61fcaf80112afc2b15c8669a1cd30ebd537cea96647c20215f8f80289719f905820bb0c490c8c1f94bfae4bb32f9c6d1fdd4e8f199ebb559f
2021-03-29 11:17:19 +02:00
Jon Atack
21b6a23373 doc: add signet to share/examples/bitcoin.conf 2021-03-08 00:22:57 +01:00
fanquake
9086e0dd3c build: set Unicode true for NSIS installer
Now that we are using Focal for gitian builds, and have NSIS 3.0+
available (also in Guix), we can create installers that support unicode.

Unicode is only becoming the default beginning with the 3.07 release,
https://nsis.sourceforge.io/Docs/AppendixF.html#v3.07-cl,
so we need to set this attribute to get support.

Should close: #13817

Co-authored-by: Chun Kuan Lee <ken2812221@gmail.com>
2021-03-02 16:36:21 +08:00
Sylvain Goumy
303cfc6227 allow darkmode on macos build 2021-02-25 22:21:22 +01:00
Carl Dong
38b7b2ed72 genbuild: Specify rev-parse length 2021-01-08 11:40:01 -05:00
MarcoFalke
fa0074e2d8 scripted-diff: Bump copyright headers
-BEGIN VERIFY SCRIPT-
./contrib/devtools/copyright_header.py update ./
-END VERIFY SCRIPT-
2020-12-31 09:45:41 +01:00
Wladimir J. van der Laan
555b5d1bf9 Merge #20419: build: set minimum supported macOS to 10.14
a52ecc936a build: set minimum supported macOS to 10.14 (fanquake)

Pull request description:

  This is a requirement for C++17 support. See my comments [here](https://github.com/bitcoin/bitcoin/issues/16684#issuecomment-643722538):

  > You cannot use std::get with std::variant on macOS < 10.14, because Apples libc++ doesn't support the std::bad_variant_access exception. [Relevant comment](https://github.com/bitcoin/bitcoin/pull/19183#discussion_r439794318) in #19183.

  > While we could work around this in our own code, using std::get_if, this would still be a problem for 3rd-party dependencies.

  > I've been testing Qt 5.15LTS (we'll have to enable C++17 in qt, and may upgrade to a newer version at the same time), and you can't enable -std c++17, while targeting a macOS deployment version < 10.14, configuring will fail. They are making use of std::get with std::variant throughout their cocoa code.

  We would have to had to have bumped to at least 10.13 in any case, as Qt 5.15 (#19716) [requires 10.13+](https://doc.qt.io/qt-5/supported-platforms.html).

ACKs for top commit:
  hebasto:
    ACK a52ecc936a, I have reviewed the code and it looks OK, I agree it can be merged.

Tree-SHA512: f669b2fc777aeea1e9afdbbc7bd9afe3997418211db6ba53c934cae0e62a9b999603da539518c229f34961d275c9e2f315c7b022cf5fb97bd201a69c85d470cc
2020-11-23 14:24:58 +01:00
Andrew Chow
68c2ef13e9 Fix version string in Windows and Mac installers
Fixes some typos that cause gitian to fail to make the installers.
2020-11-21 14:12:08 -05:00
Andrew Chow
8f7b930475 Drop the leading 0 from the version number
Removes the leading 0 from the version number. The minor version, which
we had been using as the major version, is now the major version. The
revision, which we had been using as the minor version, is now the minor
version. The revision number is dropped. The build number is promoted to
being part of the version number. This also avoids issues where it was
accidentally not included in the version number.

The CLIENT_VERSION remains the same format as previous as previously,
the Major version was 0 so that was never a factor in CLIENT_VERSION.
2020-11-18 12:00:57 -05:00
fanquake
a52ecc936a build: set minimum supported macOS to 10.14 2020-11-18 21:46:09 +08:00
MarcoFalke
fab5586122 doc: Use precise permission flags where possible 2020-07-10 15:37:42 +02:00
Wladimir J. van der Laan
fc895d7700 Merge #18616: refactor: Cleanup clientversion.cpp
c269e618cf Drop unused GIT_COMMIT_DATE macro (Hennadii Stepanov)
8f9f4ba5e2 refactor: Remove duplicated code (Hennadii Stepanov)
35f1189ea7 build: Rename BUILD_* macros and the code self-descriptive (Hennadii Stepanov)
dc1fba9389 scripted-diff: Rename share/genbuild.sh macros to more meaningful ones (Hennadii Stepanov)
1e06bb68be Drop unused CLIENT_VERSION_SUFFIX macro (Hennadii Stepanov)

Pull request description:

  This PR:
  - removes unused macros and duplicated code
  - renames macros in a way, that makes the code self-descriptive.

ACKs for top commit:
  dongcarl:
    Yup! ACK c269e618cf

Tree-SHA512: c469f6269b578ccfae33d960e317eca8efaf27d49638f4c3830948c11b12ef728494d7e18c31e4a410945b7d83af5b246c7b83661b4eca17cf41ee4c4583649b
2020-05-13 20:14:51 +02:00
Hennadii Stepanov
8f9f4ba5e2 refactor: Remove duplicated code 2020-05-04 19:53:21 +03:00
Hennadii Stepanov
35f1189ea7 build: Rename BUILD_* macros and the code self-descriptive 2020-05-02 01:00:07 +03:00
Hennadii Stepanov
dc1fba9389 scripted-diff: Rename share/genbuild.sh macros to more meaningful ones
-BEGIN VERIFY SCRIPT-
sed -i 's/\bDESC\b/GIT_TAG/' share/genbuild.sh
sed -i 's/\bSUFFIX\b/GIT_COMMIT/g' share/genbuild.sh
-END VERIFY SCRIPT-
2020-05-02 00:59:20 +03:00
Carl Dong
fa791da02f nsis: Specify OutFile path only once
Previously, we would specify the makensis output file path twice:

  1. At the top of Makefile.am as BITCOIN_WIN_INSTALLER, and
  2. In share/setup.nsi.ini

This commit uses the -X flag of makensis to eliminate the need for the
second instance mentioned above, referring makensis directly to the
value of BITCOIN_WIN_INSTALLER
2020-04-28 10:36:38 -04:00