Sort out some more compile flags for Mac
diff --git a/Makefile b/Makefile
index 28bb81b..f88e579 100644
--- a/Makefile
+++ b/Makefile
@@ -2,6 +2,14 @@
# This currently builds C and C++ code.
+
+# Basic platform detection
+HOST_SYSTEM = $(shell uname | cut -f 1 -d_)
+ifeq ($(SYSTEM),)
+SYSTEM = $(HOST_SYSTEM)
+endif
+
+
# Configurations
VALID_CONFIG_opt = 1
@@ -115,10 +123,15 @@
CFLAGS += -std=c89 -pedantic
CXXFLAGS += -std=c++11
CPPFLAGS += -g -fPIC -Wall -Werror -Wno-long-long
-LDFLAGS += -g -pthread -fPIC
+LDFLAGS += -g -fPIC
INCLUDES = . include gens
+ifeq ($(SYSTEM),Darwin)
+LIBS = m z
+else
LIBS = rt m z pthread
+LDFLAGS += -pthread
+endif
LIBSXX = protobuf
LIBS_PROTOC = protoc protobuf
@@ -156,11 +169,6 @@
# These are automatically computed variables.
# There shouldn't be any need to change anything from now on.
-HOST_SYSTEM = $(shell uname | cut -f 1 -d_)
-ifeq ($(SYSTEM),)
-SYSTEM = $(HOST_SYSTEM)
-endif
-
ifeq ($(SYSTEM),MINGW32)
SHARED_EXT = dll
endif
diff --git a/templates/Makefile.template b/templates/Makefile.template
index beb3a66..b80e80c 100644
--- a/templates/Makefile.template
+++ b/templates/Makefile.template
@@ -19,6 +19,14 @@
return 'gens/' + m.group(1) + '.pb.cc'
%>
+
+# Basic platform detection
+HOST_SYSTEM = $(shell uname | cut -f 1 -d_)
+ifeq ($(SYSTEM),)
+SYSTEM = $(HOST_SYSTEM)
+endif
+
+
# Configurations
VALID_CONFIG_opt = 1
@@ -132,10 +140,15 @@
CFLAGS += -std=c89 -pedantic
CXXFLAGS += -std=c++11
CPPFLAGS += -g -fPIC -Wall -Werror -Wno-long-long
-LDFLAGS += -g -pthread -fPIC
+LDFLAGS += -g -fPIC
INCLUDES = . include gens
+ifeq ($(SYSTEM),Darwin)
+LIBS = m z
+else
LIBS = rt m z pthread
+LDFLAGS += -pthread
+endif
LIBSXX = protobuf
LIBS_PROTOC = protoc protobuf
@@ -173,11 +186,6 @@
# These are automatically computed variables.
# There shouldn't be any need to change anything from now on.
-HOST_SYSTEM = $(shell uname | cut -f 1 -d_)
-ifeq ($(SYSTEM),)
-SYSTEM = $(HOST_SYSTEM)
-endif
-
ifeq ($(SYSTEM),MINGW32)
SHARED_EXT = dll
endif