Some Mac OS X specific things
authorp2k <patrick.p2k.schneider@gmail.com>
Sun, 11 Sep 2011 15:42:20 +0000 (17:42 +0200)
committerp2k <patrick.p2k.schneider@gmail.com>
Sun, 11 Sep 2011 15:42:20 +0000 (17:42 +0200)
* Added application icon for Mac OS X * Added instructions for compiling
under Mac OS X * Added Portfile for compiling miniupnpc with MacPorts

.gitignore
README.rst
bitcoin-qt.pro
contrib/miniupnpc/Portfile [new file with mode: 0644]
src/qt/res/icons/bitcoin.icns [new file with mode: 0644]

index 29c781c..a5f96ba 100644 (file)
@@ -18,3 +18,7 @@ Makefile
 bitcoin-qt
 #resources cpp
 qrc_*.cpp
+#qt creator
+*.pro.user
+#mac specific
+.DS_Store
index e5d1f82..c13134a 100644 (file)
@@ -79,6 +79,27 @@ Windows build instructions:
 .. [#] PGP signature: https://download.visucore.com/bitcoin/qtgui_deps_1.zip.sig (signed with RSA key ID `610945D0`_)
 .. _`610945D0`: http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x610945D0
 
+
+Mac OS X
+--------
+
+- Download and install the `Qt Mac OS X SDK`_. It is recommended to also install Apple's Xcode with UNIX tools.
+
+- Download and install `MacPorts`_.
+
+- Execute the following commands in a terminal to get the dependencies:
+
+::
+
+       sudo port selfupdate
+       sudo port install boost db48
+
+- Open the .pro file in Qt Creator and build as normal (cmd-B)
+
+.. _`Qt Mac OS X SDK`: http://qt.nokia.com/downloads/sdk-mac-os-cpp
+.. _`MacPorts`: http://www.macports.org/install.php
+
+
 Build configuration options
 ============================
 
@@ -94,18 +115,26 @@ To use UPnP for port forwarding behind a NAT router (recommended, as more connec
 (in **Qt Creator**, you can find the setting for additional qmake arguments under "Projects" -> "Build Settings" -> "Build Steps", then click "Details" next to **qmake**)
 
 This requires miniupnpc for UPnP port mapping.  It can be downloaded from
-http://miniupnp.tuxfamily.org/files/.  UPnP support is not compiled in by default.  
+http://miniupnp.tuxfamily.org/files/.  UPnP support is not compiled in by default.
 
 Set USE_UPNP to a different value to control this:
 
 +------------+--------------------------------------------------------------+
-| USE_UPNP=  | (the default) no UPnP support, miniupnp not required;        |
+| USE_UPNP=  | (the default) no UPnP support, miniupnpc not required;       |
 +------------+--------------------------------------------------------------+
 | USE_UPNP=0 | UPnP support turned off by default at runtime;               |
 +------------+--------------------------------------------------------------+
 | USE_UPNP=1 | UPnP support turned on by default at runtime.                |
 +------------+--------------------------------------------------------------+
 
+Mac OS X users: miniupnpc is currently outdated on MacPorts. An updated Portfile is provided in contrib/miniupnpc within this project.
+You can execute the following commands in a terminal to install it:
+
+::
+
+       cd <location of bitcoin-qt>/contrib/miniupnpc
+       sudo port install
+
 Notification support for recent (k)ubuntu versions
 ---------------------------------------------------
 
index 053dc70..8c58cd4 100644 (file)
@@ -174,3 +174,14 @@ CODECFORTR = UTF-8
 # for lrelease/lupdate
 TRANSLATIONS = src/qt/locale/bitcoin_nl.ts src/qt/locale/bitcoin_de.ts \
                src/qt/locale/bitcoin_ru.ts
+
+OTHER_FILES += \
+    README.rst
+
+# For use with MacPorts
+macx:INCLUDEPATH += /opt/local/include /opt/local/include/db48
+macx:LIBS += -L/opt/local/lib -L/opt/local/lib/db48
+
+# Additional Mac options
+macx:ICON = src/qt/res/icons/bitcoin.icns
+macx:TARGET = "Bitcoin Qt"
diff --git a/contrib/miniupnpc/Portfile b/contrib/miniupnpc/Portfile
new file mode 100644 (file)
index 0000000..133aee5
--- /dev/null
@@ -0,0 +1,43 @@
+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:filetype=tcl:et:sw=4:ts=4:sts=4
+# $Id$
+
+PortSystem          1.0
+
+name                miniupnpc
+epoch               2
+version             1.6
+revision            2
+categories          net
+platforms           darwin
+license             BSD
+maintainers         singingwolfboy openmaintainer
+description         Lightweight client for UPnP protocol
+long_description    \
+    ${description}
+    
+homepage            http://miniupnp.free.fr/
+master_sites        http://miniupnp.free.fr/files/download.php?file=${distname}${extract.suffix}&dummy=
+checksums           md5     88055f2d4a061cfd4cfe25a9eae22f67 \
+                    sha1    ef8f2edb17f2e7c5b8dc67ee80a65c199d823e0a \
+                    rmd160  d86b75b331a3fb5525c71708548f311977c0598f
+
+use_configure       no
+
+variant universal {}
+if {[variant_isset universal]} {
+    set archflags ${configure.universal_cflags}
+} else {
+    set archflags ${configure.cc_archflags}
+}
+
+build.args-append   CC="${configure.cc} ${archflags}"
+
+post-patch {
+    reinplace "s|-Wl,-install_name,|-Wl,-install_name,${prefix}/lib/|" ${worksrcpath}/Makefile
+}
+
+destroot.destdir    PREFIX=${prefix} INSTALLPREFIX=${destroot}${prefix}
+
+livecheck.type      regex
+livecheck.url       http://miniupnp.free.fr/files/
+livecheck.regex     ${name}-(\\d+(\\.\\d{1,4})+)${extract.suffix}
diff --git a/src/qt/res/icons/bitcoin.icns b/src/qt/res/icons/bitcoin.icns
new file mode 100644 (file)
index 0000000..3c75708
Binary files /dev/null and b/src/qt/res/icons/bitcoin.icns differ