macOS: Apple's ancient linker doesn't have --as-needed or --gc-sections.
diff --git a/configure b/configure
index 58e754a..06d7cba 100755
--- a/configure
+++ b/configure
@@ -22,7 +22,11 @@
 [ -z "$OPTIMIZE" ] && OPTIMIZE="-Os -ffunction-sections -fdata-sections -fno-asynchronous-unwind-tables -fno-strict-aliasing"
 
 # We accept LDFLAGS, but by default don't have anything in it
-[ -z "$LDOPTIMIZE" ] && LDOPTIMIZE="-Wl,--gc-sections"
+if [ "$(uname)" != "Darwin" ]
+then
+  [ -z "$LDOPTIMIZE" ] && LDOPTIMIZE="-Wl,--gc-sections"
+  LDASNEEDED="-Wl,--as-needed"
+fi
 
 # The makefile provides defaults for these, so this only gets used if
 # you call scripts/make.sh and friends directly.