aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGavin Andresen <gavinandresen@gmail.com>2012-07-09 11:03:38 -0400
committerGavin Andresen <gavinandresen@gmail.com>2012-07-09 11:03:38 -0400
commit4060d64fc9de6f11ae69f3961d4f1f0450dd8286 (patch)
tree791ae9e95fda2595ea1fabce490aa71a53da009d
parentea53f183fce65619dbedca54c1aa7e4dba1daa32 (diff)
Fix Qt build on OSX
Compiling boost::interprocess::message_queue against boost 1.50 macports with -arch i386 (how releases are built, for minimum download size and maximum compatibility) is failing: src/qt/qtipcserver.cpp:37: error: no matching function for call to ‘boost::interprocess::message_queue_t<boost::interprocess::offset_ptr<void, int, long unsigned int, 0u> >::timed_receive(char (*)[257], long unsigned int, size_t&, unsigned int&, boost::posix_time::ptime&)’ This is probably a boost or macports bug, but since interprocess::message_queue is only used for URI support, which isn't implemented on OSX anyway, I fixed the build by #ifdef'ing out that code.
-rw-r--r--src/qt/bitcoin.cpp7
-rw-r--r--src/qt/qtipcserver.cpp15
2 files changed, 16 insertions, 6 deletions
diff --git a/src/qt/bitcoin.cpp b/src/qt/bitcoin.cpp
index 803baf92ed..55b5f74c3b 100644
--- a/src/qt/bitcoin.cpp
+++ b/src/qt/bitcoin.cpp
@@ -116,6 +116,8 @@ static void handleRunawayException(std::exception *e)
#ifndef BITCOIN_QT_TEST
int main(int argc, char *argv[])
{
+// TODO: implement URI support on the Mac.
+#if !defined(MAC_OSX)
// Do this early as we don't want to bother initializing if we are just calling IPC
for (int i = 1; i < argc; i++)
{
@@ -134,6 +136,7 @@ int main(int argc, char *argv[])
}
}
}
+#endif
// Internal string conversion is all UTF-8
QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8"));
@@ -258,6 +261,8 @@ int main(int argc, char *argv[])
{
window.show();
}
+// TODO: implement URI support on the Mac.
+#if !defined(MAC_OSX)
// Place this here as guiref has to be defined if we dont want to lose URIs
ipcInit();
@@ -276,7 +281,7 @@ int main(int argc, char *argv[])
}
}
}
-
+#endif
app.exec();
window.hide();
diff --git a/src/qt/qtipcserver.cpp b/src/qt/qtipcserver.cpp
index a887456855..5ff00451e5 100644
--- a/src/qt/qtipcserver.cpp
+++ b/src/qt/qtipcserver.cpp
@@ -20,6 +20,14 @@ using namespace boost::posix_time;
using namespace boost;
using namespace std;
+#ifdef MAC_OSX
+// URI handling not implemented on OSX yet
+
+void ipcInit() { }
+void ipcShutdown() { }
+
+#else
+
void ipcShutdown()
{
message_queue::remove(BITCOINURI_QUEUE_NAME);
@@ -50,11 +58,6 @@ void ipcThread(void* parg)
void ipcInit()
{
-#ifdef MAC_OSX
- // TODO: implement bitcoin: URI handling the Mac Way
- return;
-#endif
-
message_queue* mq;
char strBuf[257];
size_t nSize;
@@ -86,3 +89,5 @@ void ipcInit()
delete mq;
}
}
+
+#endif