From 7cc2c309f3615a365a0ce0f19d8dac1a42b34c4c Mon Sep 17 00:00:00 2001 From: vjpai Date: Wed, 18 Feb 2015 12:33:37 -0800 Subject: [PATCH] Mac-specific Makefile inclusions and installation instructions Not yet fully building due to some gtest anomalies on Mac. --- INSTALL | 38 +++++++++++++++++++++++++++++++++++++ Makefile | 2 ++ templates/Makefile.template | 2 ++ 3 files changed, 42 insertions(+) diff --git a/INSTALL b/INSTALL index d2f08ec677e..f1e7aa7bf43 100644 --- a/INSTALL +++ b/INSTALL @@ -95,6 +95,44 @@ will need clang and its instrumented libc++: # apt-get install clang libc++-dev +Mac-specific notes: +------------------- + +For a Mac system, git is not available by default. You will first need to +install Xcode from the Mac AppStore and then run the following command from a +terminal: + + $ sudo xcode-select --install + +You should also install "port" following the instructions at +https://www.macports.org . This will reside in /opt/local/bin/port for +most Mac installations. Do the "git submodule" command listed above. + +Then execute the following for all the needed build dependencies + + $ sudo /opt/local/bin/port install autoconf automake libtool gflags cmake + $ mkdir ~/gtest + $ svn checkout http://googletest.googlecode.com/svn/trunk/ gtest-svn + $ mkdir mybuild + $ cd mybuild + $ cmake ../gtest-svn + $ make + $ make gtest.a gtest_main.a + $ sudo cp libgtest.a libgtest_main.a /opt/local/lib + $ sudo mkdir /opt/local/include/gtest + $ sudo cp -pr ../gtest-svn/include/gtest /opt/local/include/gtest + +We will also need to make openssl and install it appropriately + + $ cd + $ cd third_party/openssl + $ sudo make install + $ cd ../../ + +If you are going to make changes and need to regenerate the projects file, +you will need to install certain modules for python. + + $ sudo easy_install simplejson mako A word on OpenSSL ----------------- diff --git a/Makefile b/Makefile index 485042b5b3e..97a00e0a1a1 100644 --- a/Makefile +++ b/Makefile @@ -177,7 +177,9 @@ LDFLAGS += -g -fPIC INCLUDES = . include $(GENDIR) ifeq ($(SYSTEM),Darwin) +INCLUDES += /usr/local/ssl/include /opt/local/include LIBS = m z +LDFLAGS += -L/usr/local/ssl/lib -L/opt/local/lib else LIBS = rt m z pthread LDFLAGS += -pthread diff --git a/templates/Makefile.template b/templates/Makefile.template index 3e0f77c0142..d107801e083 100644 --- a/templates/Makefile.template +++ b/templates/Makefile.template @@ -194,7 +194,9 @@ LDFLAGS += -g -fPIC INCLUDES = . include $(GENDIR) ifeq ($(SYSTEM),Darwin) +INCLUDES += /usr/local/ssl/include /opt/local/include LIBS = m z +LDFLAGS += -L/usr/local/ssl/lib -L/opt/local/lib else LIBS = rt m z pthread LDFLAGS += -pthread