summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/lib/math/Makefile47
-rw-r--r--src/lib/math/clean.bash2
-rw-r--r--src/lib/math/make.bash4
-rw-r--r--src/syscall/Makefile4
4 files changed, 52 insertions, 5 deletions
diff --git a/src/lib/math/Makefile b/src/lib/math/Makefile
new file mode 100644
index 000000000..f1f24263c
--- /dev/null
+++ b/src/lib/math/Makefile
@@ -0,0 +1,47 @@
+# Copyright 2009 The Go Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style
+# license that can be found in the LICENSE file.
+
+CFLAGS=
+O=6
+CC=$(O)c
+AS=$(O)a
+GC=$(O)g
+
+# TODO(r): building directly in the target makes internal dependencies self-consistent.
+# need to address this a better way.
+PKG=$(GOROOT)/pkg/math.a
+
+O1=\
+ atan.$O fabs.$O floor.$O fmod.$O hypot.$O log.$O pow10.$O sin.$O sqrt.$O tan.$O
+O2=\
+ asin.$O atan2.$O exp.$O
+O3=\
+ pow.$O sinh.$O
+O4=\
+ tanh.$O
+
+install: $(PKG)
+
+$(PKG): a1 a2 a3 a4
+
+a1: $(O1)
+ $(O)ar grc $(PKG) $(O1)
+
+a2: $(O2)
+ $(O)ar grc $(PKG) $(O2)
+
+a3: $(O3)
+ $(O)ar grc $(PKG) $(O3)
+
+a4: $(O4)
+ $(O)ar grc $(PKG) $(O4)
+
+nuke:
+ rm -f *.$(O) *.a $(PKG)
+
+clean:
+ rm -f *.$(O) *.a
+
+%.$O: %.go
+ $(GC) $<
diff --git a/src/lib/math/clean.bash b/src/lib/math/clean.bash
index 2cafa206d..9028ac2a3 100644
--- a/src/lib/math/clean.bash
+++ b/src/lib/math/clean.bash
@@ -4,4 +4,4 @@
#!/bin/bash
-rm -f 6.out *.6 math.a
+make nuke
diff --git a/src/lib/math/make.bash b/src/lib/math/make.bash
index 52d0727ad..cdc9a9268 100644
--- a/src/lib/math/make.bash
+++ b/src/lib/math/make.bash
@@ -4,6 +4,6 @@
#!/bin/bash
-# should probably just be a makefile
+make install
-bash g1 && cp math.a $GOROOT/pkg/math.a
+# old way: bash g1 && cp math.a $GOROOT/pkg/math.a
diff --git a/src/syscall/Makefile b/src/syscall/Makefile
index 7013eeee1..468909a10 100644
--- a/src/syscall/Makefile
+++ b/src/syscall/Makefile
@@ -18,13 +18,13 @@ OFILES=\
install: $(PKG)
- cp $(PKG) $(GOROOT)/pkg
+ cp $(PKG) $(GOROOT)/pkg/$(PKG)
$(PKG): $(OFILES)
$(O)ar grc $(PKG) $(OFILES)
nuke:
- rm -f *.$(O) *.a $(GOROOT)/lib/$(PKG)
+ rm -f *.$(O) *.a $(GOROOT)/pkg/$(PKG)
clean:
rm -f *.$(O) *.a