]> git.mdlowis.com Git - archive/tide-ocaml.git/commitdiff
added linker optimizations for smaller executables
authorMichael D. Lowis <mike@mdlowis.com>
Wed, 23 Aug 2017 01:46:28 +0000 (21:46 -0400)
committerMichael D. Lowis <mike@mdlowis.com>
Wed, 23 Aug 2017 01:46:28 +0000 (21:46 -0400)
.gitignore
Makefile
tide.ml

index 4bc34cfbefd6257843a5c3a1a5b7b763471fe220..dfd218eb1bce365354e0f3c21f74cd74d18138b1 100644 (file)
@@ -4,3 +4,4 @@
 *.cma
 *.cmxa
 *.cmi
+*.a
index 553d4836797c0db00988bc642b4db9c2e99bd2d0..c60b9ed8b5a7a07eed9382a33bf2ded6ce53e0be 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -3,11 +3,12 @@
 # -nostdlib - Reimplement the Pervasives module to not suck.
 ifeq ($(NATIVE), 1)
     OC         = ocamlopt
-    OCFLAGS    =
+    OCFLAGS    = -compact
     MKLIB      = ocamlmklib
     MKLIBFLAGS = -custom
     OBJEXT     = cmx
     LIBEXT     = cmxa
+    OLDFLAGS   = -compact -ccopt -dead_strip
 else
     OC         = ocamlc
     OCFLAGS    =
@@ -15,6 +16,7 @@ else
     MKLIBFLAGS = -custom
     OBJEXT     = cmo
     LIBEXT     = cma
+    OLDFLAGS   =
 endif
 
 # Target Definitions
@@ -32,7 +34,7 @@ tide: env.$(LIBEXT) tide.$(OBJEXT)
 # Implicit Rule Definitions
 #-------------------------------------------------------------------------------
 %:
-       $(OC) $(OCFLAGS) -o $@ $^ -I .
+       $(OC) $(OCFLAGS) $(OLDFLAGS) -o $@ $^ -I .
 
 %.$(LIBEXT):
        $(MKLIB) $(MKLIBFLAGS) $(OCFLAGS) -o $* $^
diff --git a/tide.ml b/tide.ml
index 72b725790ce85cc96fb8fa697eb3dbeb46cd32d9..9aa5e5c927cebd4f93e7d8617ec55368520e2755 100644 (file)
--- a/tide.ml
+++ b/tide.ml
@@ -3,4 +3,4 @@ open Env
 let () =
   let foo = Env.set "foo" "bar" in
   let bar = Env.get "foo" in
-  ()
+  print_string "foo\n"