Commit Graph

179 Commits

Author SHA1 Message Date
Wladimir J. van der Laan
2df5e3427c Fix build time when building from tarball (now really)
Don't define BUILD_DATE at all when no git version information
is available. `version.cpp` will then define it for us correctly
to the last commit date.

This has been fixed and broken many times over 0.9 history
(21cc8bd, ef1e984), please don't touch this code unless you plan
on testing all possible scenarios including gitian builds.

Fixes #3570.
2014-01-30 11:54:19 +01:00
Wladimir J. van der Laan
fe14e8d790 build: Change package name to Bitcoin Core
Affects the name of the package as shown in installers
and such.

Also rebrand the windows installer.
2014-01-21 19:58:10 +01:00
Wladimir J. van der Laan
6c980c7d31 build: Package docs/ and don't package source.
No-one uses the installer then builds from source.
Closes #2819.
2014-01-21 18:29:04 +01:00
Wladimir J. van der Laan
39db27ca35 build: Add bitcoin-cli.exe to installer 2014-01-21 17:27:32 +01:00
Wladimir J. van der Laan
2f87b38e2e Adapt Windows installer for 64 bit 2014-01-21 15:25:25 +01:00
Wladimir J. van der Laan
b26de9d951
qt: Update remaining "The Bitcoin Core Developers" 2014-01-14 11:19:52 +01:00
Wladimir J. van der Laan
f10b2d70d0 qt: use series of pngs for spinner
Use a series of .png frames for the spinner instead of a .mng.
`mng` is an obscure image format and is not built by default into Qt5.

This appears to improve the crispness of the spinner as well.

Does not noticably increase the size (still ~27k) and the code
is not more complicated either.
2014-01-13 14:45:23 +01:00
Philip Kaufmann
84f8551f3a [Qt] misc small Mac related changes/cleanups
- cleanup Info.plist.in and specify high DPI mode enable command as per
  http://blog.qt.digia.com/blog/2013/04/25/retina-display-support-for-mac-os-ios-and-x11/
- move setting of QApplication::setAttribute() to bitcoin.cpp and add
  attribute for enabling use of high DPI pixmaps for Qt >= 5.1
- add missing setWindowTitle() on Mac
- cleanup Mac / non-Mac setup in bitcoingui.cpp
2013-12-09 15:24:45 +01:00
Sined
d6cb85d50d Lossless image optimization
less bytes, same images
2013-12-02 10:10:22 +01:00
Dmitry Smirnov
ef1e984ead Provide build time when building from tarball:
When building from tarball (i.g. not from git source tree or when git
 is not available) `genbuild.sh` write undefined $TIME to "build/build.h".

 Even worse, when TIME is set in the environment then its value
 is written instead of a date.

 For me this change fixed FTBFS which I got because I had
 TIME enviroment variable set with format for time(1) utility.
2013-11-21 11:43:00 +11:00
Brandon Dahler
51ed9ec971 Cleanup code using forward declarations.
Use misc methods of avoiding unnecesary header includes.
Replace int typedefs with int##_t from stdint.h.
Replace PRI64[xdu] with PRI[xdu]64 from inttypes.h.
Normalize QT_VERSION ifs where possible.
Resolve some indirect dependencies as direct ones.
Remove extern declarations from .cpp files.
2013-11-10 09:36:28 -06:00
Philip Kaufmann
01cbaeb62f fix extract_strings_qt.py
- a recent pull changed xgettext to gettext, this is reverted here
2013-09-19 14:59:45 +02:00
Cory Fields
f3f09462cd autotools: teach extract_strings_qt.py to respect the XGETTEXT env variable 2013-09-14 11:53:28 -04:00
Cory Fields
35b8af9226 autotools: switch to autotools buildsystem 2013-09-05 21:31:03 -04:00
Gavin Andresen
a41d5fe019 Payment Protocol: X509-validated payment requests
Add support for a Payment Protocol to Bitcoin-Qt.

Payment messages are protocol-buffer encoded and communicated over
http(s), so this adds a dependency on the Google protocol buffer
library, and requires Qt with OpenSSL support.
2013-08-22 16:18:25 +10:00
Timon Rapp
1df6a90a06 Added NSHighResolutionCapable flag to Info.plist for better font rendering on Retina displays. 2013-05-31 15:39:28 +02:00
Gavin Andresen
ef9acc5124 Bump build number to 0.8.2.2 for v0.8.2rc3 2013-05-24 16:11:44 -04:00
Gavin Andresen
8ab6d0a568 All-resolution pixmap, to make win32 builds determisitic again 2013-05-24 15:46:00 -04:00
Gavin Andresen
0c4434cf77 Merge pull request #2652 from gavinandresen/version_0.8.2_final
Set CLIENT_VERSION_IS_RELEASE, bump build to 0.8.2.1
2013-05-22 13:23:38 -07:00
Jonas Schnelli
d0d4080013 new icons for linux, etc.
- new xpm resources for different linux window managers
- new png files for autoresizing on different linux window managers
- favicon with new logo
- window .ico with new logo
- updated debian package script
- updated changelog
2013-05-13 20:18:35 +02:00
Gavin Andresen
8ae290d266 Set CLIENT_VERSION_IS_RELEASE, bump build to 0.8.2.1 2013-05-13 10:53:53 -04:00
Gavin Andresen
5b5d399593 Update version numbers for 0.8.2rc1 release 2013-05-10 09:50:33 -04:00
Jonas Schnelli
f95279ba79 fixes #2506: mac binary with proper version and copyright meta-informations (Info.plist)
Due a bug in QT (https://bugreports.qt-project.org/browse/QTBUG-21267), the mac binary of the last release contains bulk meta informations.

The url-handler (bitcoin://) is also not working in current release

Should be fixed with this commit.

Signed-off-by: Jonas Schnelli <jonas.schnelli@include7.ch>
2013-04-15 16:15:11 +02:00
Gavin Andresen
8269a0953e Reimplement click-to-pay links. Add OSX support.
Switch to using Qt's QLocalServer/QLocalSocket to handle bitcoin
payment links (bitcoin:... URIs)

Reason for switch: the boost::interprocess mechanism seemed flaky,
and doesn't mesh as well with "The Qt Way"

qtipcserver.cpp/h is replaced by paymentserver.cpp/h

Click-to-pay now also works on OSX, with a custom Info.plist
that registers Bitcoin-Qt as a handler for bitcoin: URLs and
an event listener on the main QApplication that handles
QFileOpenEvents (Qt translates 'url clicked' AppleEvents into
QFileOpenEvents automagically).
2013-02-12 15:41:31 -05:00
Gavin Andresen
d38c6488d0 Bump version numbers for 0.8 release
Version numbers changed from 0.7.99 to 0.8.0
Set CLIENT_VERSION_IS_RELEASE to remove pre-release warning
Updated copyright in COPYING and doc/READMEs to 2013
Updated doc/release-notes.txt
2013-01-30 14:19:09 -05:00
Gavin Andresen
db8ca3fc2e Code-signing certificates (no private keys) from Apple and Comodo 2013-01-18 10:08:28 -05:00
Pieter Wuille
fcfa7a588e Update version numbers to 0.7.99 2012-10-21 12:10:08 +02:00
Wladimir J. van der Laan
485d667748 Revert "Merge pull request #1931 from laanwj/2012_10_newicons"
This reverts commit 199d88cf90, reversing
changes made to 65bc1573e7.

License is worse instead of better. Will only accept public domain and
MIT-licensed icons from now on.
2012-10-14 20:49:06 +02:00
xanatos
b96238a9c9 Changed the spinner to a non-GPL one, added instructions on how to regenerate it, changed the assets attribution, removed old spinner + old spinner's sources. 2012-10-14 12:34:07 +02:00
Gavin Andresen
1d1f32d16d Bump versions for 0.7.1 release 2012-10-09 12:37:35 -04:00
Philip Kaufmann
c8bf315188 Windows: fix URI association setting in registry
- fix for #1877
- fix was reported to work via
  https://bitcointalk.org/index.php?topic=110243.msg1230418#msg1230418
2012-09-29 12:25:22 +02:00
Gavin Andresen
0a4e67afad Bump client version number for 0.7.0rc3 2012-09-12 14:07:22 -04:00
Gavin Andresen
8788221761 Bump version number for 0.7.0rc2 2012-09-05 12:38:37 -04:00
Gavin Andresen
03fa53a640 Version numbers -> 0.7.0 2012-08-27 14:20:56 -04:00
Luke Dashjr
90d95b6323 Replace all occurances of license.txt with COPYING, including naming the file COPYING.txt on Windows 2012-07-22 21:49:09 +00:00
Matt Corallo
ad5f29b743 Revert "Disable bitcoin: URI handling on Windows for the 0.6 release"
This reverts commit 7b90edb5a6.
2012-06-15 17:19:13 +02:00
Wladimir J. van der Laan
15094f7654 Update bitcoinstrings from core and English source translation file
This is necessary as any strings have changed since last time.

Also the python script used to extract bitcoinstrings.cpp, extract_strings_qt.py
now sorts the strings before generating the output file. This results in more
deterministic output and thus smaller diffs.
2012-06-13 18:19:16 +02:00
Gregory Maxwell
a5f95d75a1 Increase client version to 0.6.99 2012-05-08 15:22:02 -04:00
Gavin Andresen
397737b913 Bump version numbers for 0.6.1rc2 2012-05-04 10:22:26 -04:00
Gavin Andresen
2c31cfc271 Bump version numbers for 0.6.1rc1 2012-04-27 10:14:33 -04:00
Wladimir J. van der Laan
11cd416525 fix warnings: unused variable 'XX' [-Wunused-variable] 2012-04-15 13:40:14 +02:00
Wladimir J. van der Laan
6f6f524f1a Rename make_windows_icon.py to .sh as it is a shell script (fixes #1099) 2012-04-14 18:33:19 +02:00
Wladimir J. van der Laan
3fddc8effc Update translations for bitcoin core
- Move scripts/qt to share/qt, to clean up toplevel directories
- Update english ts file which is used to source messages for Transifex
- In extract_strings_qt.py use a glob *.h *.cpp, this is safe now that the Wx UI files are removed
2012-04-14 08:46:16 +02:00
Pieter Wuille
a20c0d0f67 Build identification strings
All client version information is moved to version.cpp, which optionally
(-DHAVE_BUILD_INFO) includes build.h. build.h is automatically generated
on supporting platforms via contrib/genbuild.sh, using git describe.

The git export-subst attribute is used to put the commit id statically
in version.cpp inside generated archives, and this value is used if no
build.h is present.

The gitian descriptors are modified to use git archive instead of a
copy, to create the src/ directory in the output. This way,
src/src/version.cpp will contain the static commit id. To prevent
gitian builds from getting the "-dirty" marker in their git-describe
generated identifiers, no touching of files or running sed on the
makefile is performed anymore. This does not seem to influence
determinism.
2012-04-10 18:16:53 +02:00
Gavin Andresen
f3da2a88c9 Bump version to 0.6.0.99 for 0.6.1 merge window 2012-04-02 10:03:26 -04:00
Gavin Andresen
f3f9da868e Bump version to 0.6.0rc6 2012-03-29 13:58:22 -04:00
Gavin Andresen
8d29329f93 Update version to 60005 (0.6.0rc5) 2012-03-26 15:42:06 -04:00
Gavin Andresen
be4502968e Merge pull request #992 from gavinandresen/remove_wxBitcoin
Remove wxWidgets .exe during setup
2012-03-26 12:33:02 -07:00
Gavin Andresen
a56881b005 Remove wxWidgets .exe and locales during setup 2012-03-26 14:14:45 -04:00
Gavin Andresen
7b90edb5a6 Disable bitcoin: URI handling on Windows for the 0.6 release 2012-03-26 12:18:24 -04:00
Matt Corallo
0ec76d834e Fix URI link to bitcoin-qt.exe instead of bitcoin.exe 2012-03-25 13:23:35 -04:00
Gavin Andresen
6bf4253a68 Increase client version to 0.6 2012-02-07 11:22:09 -05:00
Matt Corallo
7d145a0f59 Add support for opening bitcoin: URIs directly. 2012-01-05 00:29:28 -05:00
Gavin Andresen
8896c2d9d6 Bump version 0.5.99 (prep for pulling for version 0.6) 2011-12-16 12:31:59 -05:00
Gavin Andresen
67c454c67c Bump version to 0.5.1 2011-11-21 13:38:38 -05:00
Matt Corallo
2b814d6eb0 Re-add bitcoin(32&80).xpm 2011-11-08 11:43:37 -05:00
Matt Corallo
d1df571746 Update setup.nsi for bitcoin-qt. 2011-10-25 11:53:00 -04:00
Gavin Andresen
94eaab7710 Bump version to 0.5.0.0 2011-10-08 17:29:47 -04:00
Gavin Andresen
565c4771b6 Remove wxWidgets
Makefiles now build bitcoind only.
qmake/make in top-level directory is used to build Bitcoin QT
Deleted almost all #ifdef GUI from the code (left one possibly controversial one)
Deleted xpm/ files.
2011-09-26 10:04:04 -04:00
Gavin Andresen
6b8a5ab622 Bump version to 0.4.1 2011-09-26 09:16:56 -04:00
Matt Corallo
6083295f46 Update bitcoin icon to make nsis setup exe deterministic.
This adds a 32x32 16-bit icon to the bitcoin.ico file.
Though this realistically probably looks worse than the 32-bit
32x32 being displayed on a 16-bit monitor, it makes the nsis
setup exe deterministic in gitian output (go figure) which makes
the slight visual loss for users of very old monitors/computers
worth it.
2011-09-14 10:59:54 -04:00
Gavin Andresen
7464e647de Bumped version numbers to 0.4.0rc1 2011-09-02 13:34:56 -04:00
Matt Corallo
918150048a Make it clear that setting proxy requires restart to fully apply. 2011-08-03 21:02:07 +02:00
Jeff Garzik
24a0def8cd Bump version to 0.3.25
Yes, we might release as v0.4, but let's just do a simple increment
for now.
2011-07-13 01:19:26 -04:00
Jeff Garzik
61e3c011f5 Merge pull request #402 from jayschwa/hirez-icon
High resolution Windows icon
2011-07-12 19:18:52 -07:00
Jeff Garzik
696d34069a Merge pull request #396 from jayschwa/nsis-branding
Add bitcoin.org logos/branding to NSIS installer.
2011-07-12 19:18:21 -07:00
Jay Weisskopf
aaa468563b Increase resolution of Windows icon.
The .ico file has changed in the following ways:
* Added 64x64 layer (max size for "Classic Mode").
* Added 256x256 layer (max size for Vista and 7).
* Removed copies with no alpha channel:
  * Display depths lower than 32-bits are rare nowadays.
  * 8-bit alpha channels in icons has been supported since XP.
  * If the display depth is lowered, they look no better than the
    downsampled versions that Windows automatically generates.

Tested various sizes on both XP and Win 7. It looks fine
(unchanged) on XP and downright sexy on Win 7.
2011-07-12 20:13:44 -05:00
Matt Corallo
81598083e7 Dynamically remove/insert the Options for encryption in the menus. 2011-07-13 02:11:25 +02:00
Matt Corallo
4e87d341f7 Add wallet privkey encryption.
This commit adds support for ckeys, or enCrypted private keys, to the wallet.
All keys are stored in memory in their encrypted form and thus the passphrase
is required from the user to spend coins, or to create new addresses.

Keys are encrypted with AES-256-CBC using OpenSSL's EVP library. The key is
calculated via EVP_BytesToKey using SHA512 with (by default) 25000 rounds and
a random salt.

By default, the user's wallet remains unencrypted until they call the RPC
command encryptwallet <passphrase> or, from the GUI menu, Options->
Encrypt Wallet.

When the user is attempting to call RPC functions which require the password
to unlock the wallet, an error will be returned unless they call
walletpassphrase <passphrase> <time to keep key in memory> first.

A keypoolrefill command has been added which tops up the users keypool
(requiring the passphrase via walletpassphrase first).
keypoolsize has been added to the output of getinfo to show the user the
number of keys left before they need to specify their passphrase (and call
keypoolrefill).

Note that walletpassphrase will automatically fill keypool in a separate
thread which it spawns when the passphrase is set. This could cause some
delays in other threads waiting for locks on the wallet passphrase, including
one which could cause the passphrase to be stored longer than expected,
however it will not allow the passphrase to be used longer than expected as
ThreadCleanWalletPassphrase will attempt to get a lock on the key as soon
as the specified lock time has arrived.

When the keypool runs out (and wallet is locked) GetOrReuseKeyFromPool
returns vchDefaultKey, meaning miners may start to generate many blocks to
vchDefaultKey instead of a new key each time.

A walletpassphrasechange <oldpassphrase> <newpassphrase> has been added to
allow the user to change their password via RPC.

Whenever keying material (unencrypted private keys, the user's passphrase,
the wallet's AES key) is stored unencrypted in memory, any reasonable attempt
is made to mlock/VirtualLock that memory before storing the keying material.
This is not true in several (commented) cases where mlock/VirtualLocking the
memory is not possible.

Although encryption of private keys in memory can be very useful on desktop
systems (as some small amount of protection against stupid viruses), on an
RPC server, the password is entered fairly insecurely. Thus, the only main
advantage encryption has for RPC servers is for RPC servers that do not spend
coins, except in rare cases, eg. a webserver of a merchant which only receives
payment except for cases of manual intervention.

Thanks to jgarzik for the original patch and sipa, gmaxwell and many others
for all their input.

Conflicts:

	src/wallet.cpp
2011-07-13 02:11:25 +02:00
Jay Weisskopf
aa0bcaaf2b Remove NSIS branding from bottom divider. 2011-07-12 01:18:57 -05:00
Jay Weisskopf
230b894779 Set default compression for NSIS installer to LZMA.
Use of LZMA (versus the current zlib) shaves a few MB off the installer.
2011-07-11 17:44:44 -05:00
Jay Weisskopf
6c9498147f Add logos/branding currently found on bitcoin.org into NSIS installer. 2011-07-11 02:09:07 -05:00
Jeff Garzik
b4b536d782 Bump version to 0.3.24. 2011-07-02 16:55:11 -04:00
Jeff Garzik
6f07e22210 Bump version to 0.3.23. 2011-06-05 10:39:01 -04:00
Matt Corallo
0649b6af90 Update to openssl-1.0.0d and enable RPC-SSL on Win32 2011-05-27 02:53:13 +02:00
Matt Corallo
cbb2b59a90 Update NSIS Installer file to support the new directory structure. 2011-05-21 13:46:51 +02:00
Matt Corallo
bcb971f930 Fix MinGW build due to bad pointers to ui.rc pixmaps stuff. 2011-05-14 18:51:52 +02:00
Jeff Garzik
b17be7e14b Manual merge of jaromil's source tree reorg commit.
Conflicts:
	src/sha256.cpp
2011-05-09 14:00:14 -04:00
Jaromil
84c3fb07b0 directory re-organization (keeps the old build system)
there is no internal modification of any file in this commit

files are moved into directories according to established standards in
sourcecode distribution; these directories contain:

 src - Files that are used in constructing the executable binaries,
       but are not installed.

 doc - Files in HTML and text format that document usage, quirks of
       the implementation, and contributor checklists.

 locale - Files that contain human language translation of strings
          used in the program

 contrib - Files contributed from distributions or other third party
 	   implementing scripts and auxiliary programs
2011-04-23 12:10:25 +02:00