Permalink
Browse files

smartos-live#2 Fixed identation, spaces should be tabs

smartos-live#51 No symlink for libusb.so to libusb.so.1 for -lusb
smartos-live#86 'make clean' fails if Node.js hasn't been built
smartos-live#91 make world fails on trying to include zlib.h
OS-1301 smartos-live subprojects should be told about the proto area
OS-1302 smartos-live should offer a way to bootstrap illumos-extra
OS-1303 smartos-live src_addon can die
OS-1304 smartos-live src build should not use node-waf
OS-1305 illumos-extra should not put libuuid.a into the proto area, ever
OS-1306 non-bootstrappable runtime dependencies should be isolated
OS-1310 smartos-live build doesn't fail even if kvm-cmd completely bombs out
OS-1312 smartos-live makefiles must fit in 80 columns
OS-1317 GZ crle configuration pollution
  • Loading branch information...
1 parent 6453dd1 commit fa1dcf1bfad181ac47ea8db51541f71f08b10e21 @wesolows wesolows committed May 15, 2012
Showing with 724 additions and 99,408 deletions.
  1. +6 −19 .gitignore
  2. +150 −75 Makefile
  3. +0 −75 README
  4. +173 −0 README.md
  5. +23 −7 configure
  6. +0 −5 overlay/generic/manifest
  7. BIN overlay/generic/var/ld/amd64/ld.config
  8. BIN overlay/generic/var/ld/ld.config
  9. +1 −1 sample.configure.smartos
  10. +266 −102 src/Makefile
  11. +82 −0 src/Makefile.defs
  12. +6 −0 src/Makefile.targ
  13. +1 −1 src/bootparams.c
  14. +1 −0 src/diskinfo.c
  15. +0 −1 src/manifest
  16. +3 −3 src/removable_disk.c
  17. +5 −3 {src_addon/on-tty → src}/sdc-on-tty.c
  18. +0 −42 src_addon/Makefile
  19. +0 −59 src_addon/bind/Makefile
  20. BIN src_addon/bind/bind-9.8.0.tar.gz
  21. +0 −38 src_addon/bind/install-joyent
  22. +0 −34 src_addon/cpp/Makefile
  23. +0 −1,627 src_addon/cpp/cpp.c
  24. +0 −46 src_addon/cpp/cpp.h
  25. +0 −150 src_addon/cpp/cpy.y
  26. +0 −165 src_addon/cpp/yylex.c
  27. +0 −62 src_addon/ipmi/Makefile
  28. +0 −39 src_addon/ipmi/install-joyent
  29. BIN src_addon/ipmi/ipmitool-1.8.11.tar.gz
  30. +0 −810 src_addon/libreadline/CHANGELOG
  31. +0 −792 src_addon/libreadline/CHANGES
  32. +0 −339 src_addon/libreadline/COPYING
  33. +0 −273 src_addon/libreadline/INSTALL
  34. +0 −134 src_addon/libreadline/MANIFEST
  35. +0 −526 src_addon/libreadline/Makefile
  36. +0 −534 src_addon/libreadline/Makefile.in
  37. +0 −55 src_addon/libreadline/NEWS
  38. +0 −172 src_addon/libreadline/README
  39. +0 −37 src_addon/libreadline/USAGE
  40. +0 −3,913 src_addon/libreadline/aclocal.m4
  41. +0 −54 src_addon/libreadline/ansi_stdlib.h
  42. +0 −2,223 src_addon/libreadline/bind.c
  43. +0 −156 src_addon/libreadline/callback.c
  44. +0 −163 src_addon/libreadline/chardefs.h
  45. +0 −113 src_addon/libreadline/compat.c
  46. +0 −2,190 src_addon/libreadline/complete.c
  47. +0 −218 src_addon/libreadline/config.h
  48. +0 −217 src_addon/libreadline/config.h.in
  49. +0 −1,868 src_addon/libreadline/config.log
  50. +0 −8,176 src_addon/libreadline/configure
  51. +0 −215 src_addon/libreadline/configure.in
  52. +0 −2,282 src_addon/libreadline/display.c
  53. +0 −252 src_addon/libreadline/doc/Makefile
  54. +0 −252 src_addon/libreadline/doc/Makefile.in
  55. +0 −452 src_addon/libreadline/doc/fdl.texi
  56. +0 −488 src_addon/libreadline/doc/history.0
  57. +0 −663 src_addon/libreadline/doc/history.3
  58. BIN src_addon/libreadline/doc/history.dvi
  59. +0 −2,270 src_addon/libreadline/doc/history.html
  60. +0 −1,317 src_addon/libreadline/doc/history.info
  61. BIN src_addon/libreadline/doc/history.pdf
  62. BIN src_addon/libreadline/doc/history.ps
  63. +0 −104 src_addon/libreadline/doc/history.texi
  64. BIN src_addon/libreadline/doc/history_3.ps
  65. +0 −573 src_addon/libreadline/doc/hstech.texi
  66. +0 −457 src_addon/libreadline/doc/hsuser.texi
  67. +0 −914 src_addon/libreadline/doc/readline.0
  68. +0 −1,287 src_addon/libreadline/doc/readline.3
  69. BIN src_addon/libreadline/doc/readline.dvi
  70. +0 −6,656 src_addon/libreadline/doc/readline.html
  71. +0 −4,209 src_addon/libreadline/doc/readline.info
  72. BIN src_addon/libreadline/doc/readline.pdf
  73. BIN src_addon/libreadline/doc/readline.ps
  74. BIN src_addon/libreadline/doc/readline_3.ps
  75. +0 −101 src_addon/libreadline/doc/rlman.texi
  76. +0 −2,259 src_addon/libreadline/doc/rltech.texi
  77. +0 −1,824 src_addon/libreadline/doc/rluser.texi
  78. BIN src_addon/libreadline/doc/rluserman.dvi
  79. +0 −2,778 src_addon/libreadline/doc/rluserman.html
  80. +0 −1,731 src_addon/libreadline/doc/rluserman.info
  81. BIN src_addon/libreadline/doc/rluserman.pdf
  82. BIN src_addon/libreadline/doc/rluserman.ps
  83. +0 −88 src_addon/libreadline/doc/rluserman.texi
  84. +0 −660 src_addon/libreadline/doc/texi2dvi
  85. +0 −5,429 src_addon/libreadline/doc/texi2html
  86. +0 −6,688 src_addon/libreadline/doc/texinfo.tex
  87. +0 −10 src_addon/libreadline/doc/version.texi
  88. +0 −873 src_addon/libreadline/emacs_keymap.c
  89. +0 −81 src_addon/libreadline/examples/Inputrc
  90. +0 −104 src_addon/libreadline/examples/Makefile
  91. +0 −104 src_addon/libreadline/examples/Makefile.in
  92. +0 −188 src_addon/libreadline/examples/excallback.c
  93. +0 −485 src_addon/libreadline/examples/fileman.c
  94. +0 −122 src_addon/libreadline/examples/histexamp.c
  95. +0 −112 src_addon/libreadline/examples/manexamp.c
  96. +0 −139 src_addon/libreadline/examples/readlinebuf.h
  97. +0 −374 src_addon/libreadline/examples/rl-fgets.c
  98. +0 −151 src_addon/libreadline/examples/rl.c
  99. +0 −174 src_addon/libreadline/examples/rlcat.c
  100. +0 −1,042 src_addon/libreadline/examples/rlfe.c
  101. +0 −87 src_addon/libreadline/examples/rltest.c
  102. +0 −43 src_addon/libreadline/examples/rlversion.c
  103. +0 −254 src_addon/libreadline/funmap.c
  104. +0 −1,591 src_addon/libreadline/histexpand.c
  105. +0 −542 src_addon/libreadline/histfile.c
  106. +0 −82 src_addon/libreadline/histlib.h
  107. +0 −443 src_addon/libreadline/history.c
  108. +0 −266 src_addon/libreadline/history.h
  109. +0 −195 src_addon/libreadline/histsearch.c
  110. +0 −560 src_addon/libreadline/input.c
  111. +0 −560 src_addon/libreadline/isearch.c
  112. +0 −149 src_addon/libreadline/keymaps.c
  113. +0 −103 src_addon/libreadline/keymaps.h
  114. +0 −693 src_addon/libreadline/kill.c
  115. +0 −262 src_addon/libreadline/macro.c
  116. +0 −348 src_addon/libreadline/mbutil.c
  117. +0 −508 src_addon/libreadline/misc.c
  118. +0 −252 src_addon/libreadline/nls.c
  119. +0 −183 src_addon/libreadline/parens.c
  120. +0 −61 src_addon/libreadline/posixdir.h
  121. +0 −40 src_addon/libreadline/posixjmp.h
  122. +0 −142 src_addon/libreadline/posixstat.h
  123. +0 −998 src_addon/libreadline/readline.c
  124. +0 −836 src_addon/libreadline/readline.h
  125. +0 −60 src_addon/libreadline/rlconf.h
  126. +0 −156 src_addon/libreadline/rldefs.h
  127. +0 −121 src_addon/libreadline/rlmbutil.h
  128. +0 −288 src_addon/libreadline/rlprivate.h
  129. +0 −34 src_addon/libreadline/rlshell.h
  130. +0 −45 src_addon/libreadline/rlstdc.h
  131. +0 −970 src_addon/libreadline/rltty.c
  132. +0 −82 src_addon/libreadline/rltty.h
  133. +0 −94 src_addon/libreadline/rltypedefs.h
  134. +0 −57 src_addon/libreadline/rlwinsize.h
  135. +0 −37 src_addon/libreadline/savestring.c
  136. +0 −475 src_addon/libreadline/search.c
  137. +0 −200 src_addon/libreadline/shell.c
  138. +0 −447 src_addon/libreadline/shlib/Makefile
  139. +0 −447 src_addon/libreadline/shlib/Makefile.in
  140. +0 −404 src_addon/libreadline/signals.c
  141. +0 −1 src_addon/libreadline/stamp-h
  142. +0 −1,403 src_addon/libreadline/support/config.guess
  143. +0 −548 src_addon/libreadline/support/config.rpath
  144. +0 −1,470 src_addon/libreadline/support/config.sub
  145. +0 −247 src_addon/libreadline/support/install.sh
  146. +0 −48 src_addon/libreadline/support/mkdirs
  147. +0 −120 src_addon/libreadline/support/mkdist
  148. +0 −111 src_addon/libreadline/support/mkinstalldirs
  149. +0 −169 src_addon/libreadline/support/shlib-install
  150. +0 −466 src_addon/libreadline/support/shobj-conf
  151. +0 −236 src_addon/libreadline/support/wcwidth.c
  152. +0 −60 src_addon/libreadline/tcap.h
  153. +0 −658 src_addon/libreadline/terminal.c
  154. +0 −1,547 src_addon/libreadline/text.c
  155. +0 −458 src_addon/libreadline/tilde.c
  156. +0 −78 src_addon/libreadline/tilde.h
  157. +0 −263 src_addon/libreadline/undo.c
  158. +0 −338 src_addon/libreadline/util.c
  159. +0 −877 src_addon/libreadline/vi_keymap.c
  160. +0 −1,505 src_addon/libreadline/vi_mode.c
  161. +0 −88 src_addon/libreadline/xmalloc.c
  162. +0 −46 src_addon/libreadline/xmalloc.h
  163. +0 −39 src_addon/libusb/Makefile
  164. +0 −58 src_addon/libusb/libusb.mapfile
  165. +0 −332 src_addon/libusb/usb.h
  166. +0 −1,458 src_addon/libusb/wr_libusb.c
  167. +0 −208 src_addon/libusb/wr_libusb.h
  168. +0 −32 src_addon/on-tty/Makefile
  169. +1 −1 tools/sorter
  170. +6 −3 tools/update_base
View
@@ -3,6 +3,7 @@
/output
/projects
/proto
+/proto.strap
/log
/src/*.o
/src/bootparams
@@ -29,39 +30,25 @@
/tools/javascriptlint/build
/tools/javascriptlint/spidermonkey/src/build
/0-*-stamp
+/1-*-stamp
/manifest.new
/illumos-extra-*.tgz
+/illumos-adjunct*.tgz
zonestat.1
zonestatd.1m
ronn-format.7
man/man/man1m/vfsstat.1m
man/man/man1m/ziostat.1m
+man/man/man1m/dsadm.1m
+man/man/man1m/imgadm.1m
man/man/man1m/vmadm.1m
man/man/man1m/vmadmd.1m
-src/marco
-src/polo
src/diskinfo
src/node-zsock/.lock-wscript
src/node-zsock/build/
src/node-zutil/.lock-wscript
src/node-zutil/build/
-src_addon/bind/bind-9.8.0/
-src_addon/ipmi/ipmitool-1.8.11/
-src_addon/libreadline/config.log
-src_addon/libreadline/config.status
-src_addon/libreadline/*.o
-src_addon/libreadline/*.a
-src_addon/libreadline/shlib/*.so
-src_addon/libusb/*.1
-src_addon/cpp/cpp
-src_addon/cpp/cpp.o
-src_addon/cpp/y.tab.c
-src_addon/cpp/y.tab.o
-src_addon/libreadline/shlib/libhistory.so.5
-src_addon/libreadline/shlib/libreadline.so.5
-src_addon/libusb/wr_libusb.o
-src_addon/on-tty/sdc-on-tty
-src_addon/on-tty/sdc-on-tty.o
+src/sdc-on-tty
tools/pwgen-2.06/Makefile
tools/pwgen-2.06/autom4te.cache
manifest.gen
View
225 Makefile
@@ -1,102 +1,171 @@
-# Copyright (c) 2010-2012 Joyent Inc., All rights reserved.
-
-ROOT=$(PWD)
-PROTO=$(ROOT)/proto
-MPROTO=$(ROOT)/manifest.d
-PATH=/opt/gcc/4.4.4/bin:/opt/local/bin:/opt/local/sbin:/usr/bin:/usr/sbin:/usr/sfw/bin:/usr/ccs/bin
-LOCAL_SUBDIRS:=$(shell ls projects/local)
-MANIFEST=manifest.gen
-OVERLAYS:=$(shell cat overlay/order)
-JSSTYLE=$(ROOT)/tools/jsstyle/jsstyle
-JSLINT=$(ROOT)/tools/javascriptlint/build/install/jsl
-CSTYLE=$(ROOT)/tools/cstyle
-ifeq ($(EXTRA_TARBALL),)
-EXTRA_TARBALL:=$(shell ls `pwd`/illumos-extra*.tgz 2> /dev/null | tail -n1 && echo $?)
-endif
-world: 0-illumos-stamp 0-extra-stamp 0-livesrc-stamp 0-local-stamp \
- 0-tools-stamp 0-man-stamp 0-devpro-stamp
+#
+# Copyright (c) 2012, Joyent, Inc. All rights reserved.
+#
+
+ROOT = $(PWD)
+PROTO = $(ROOT)/proto
+STRAP_PROTO = $(ROOT)/proto.strap
+MPROTO = $(ROOT)/manifest.d
+PATH = /usr/bin:/usr/sbin:/sbin:/opt/local/bin
+
+LOCAL_SUBDIRS := $(shell ls projects/local)
+OVERLAYS := $(shell cat overlay/order)
+MANIFEST = manifest.gen
+JSSTYLE = $(ROOT)/tools/jsstyle/jsstyle
+JSLINT = $(ROOT)/tools/javascriptlint/build/install/jsl
+CSTYLE = $(ROOT)/tools/cstyle
+
+ADJUNCT_TARBALL := $(shell ls `pwd`/illumos-adjunct*.tgz 2>/dev/null \
+ | tail -n1 && echo $?)
+
+VMTESTS := $(ROOT)/src/vm/tests.tar.gz
+BUILDSTAMP := $(ROOT)/proto/buildstamp
+
+WORLD_MANIFESTS := \
+ $(MPROTO)/illumos.manifest \
+ $(MPROTO)/live.manifest \
+ $(MPROTO)/illumos-extra.manifest
+
+SUBDIR_MANIFESTS := $(LOCAL_SUBDIRS:%=$(MPROTO)/%.sd.manifest)
+OVERLAY_MANIFESTS := $(OVERLAYS:$(ROOT)/overlay/%=$(MPROTO)/%.ov.manifest)
+
+world: 0-extra-stamp 0-illumos-stamp 1-extra-stamp 0-livesrc-stamp \
+ 0-local-stamp 0-tools-stamp 0-man-stamp 0-devpro-stamp
live: world manifest
- (cd $(ROOT)/src_addon && gmake DESTDIR=$(PROTO) install)
+ @echo $(OVERLAY_MANIFESTS)
+ @echo $(SUBDIR_MANIFESTS)
mkdir -p ${ROOT}/log
- (cd $(ROOT) && pfexec ./tools/build_live $(ROOT)/$(MANIFEST) $(ROOT)/output $(OVERLAYS) $(ROOT)/proto $(ROOT)/man/man)
- if [[ -f $(ROOT)/src/vm/tests.tar.gz && -f $(ROOT)/proto/buildstamp ]]; then \
- pfexec cp $(ROOT)/src/vm/tests.tar.gz $(ROOT)/output/vmtests-$$(cat $(ROOT)/proto/buildstamp).tgz ; \
+ (cd $(ROOT) && \
+ pfexec ./tools/build_live $(ROOT)/$(MANIFEST) $(ROOT)/output \
+ $(OVERLAYS) $(ROOT)/proto $(ROOT)/man/man)
+ if [[ -f $(VMTESTS) && -f $(BUILDSTAMP) ]]; then \
+ pfexec cp $(VMTESTS) \
+ $(ROOT)/output/vmtests-$$(cat $(BUILDSTAMP)).tgz ; \
fi
-manifest:
- rm -f $(MANIFEST) $(MPROTO)/*
- -[ ! -d $(MPROTO) ] && mkdir $(MPROTO)
+#
+# Manifest construction. There are 5 sources for manifests we need to collect
+# in $(MPROTO) before running the manifest tool. One each comes from
+# illumos, illumos-extra, and the root of live (covering mainly what's in src).
+# Additional manifests come from each of $(LOCAL_SUBDIRS), which may choose
+# to construct them programmatically, and $(OVERLAYS), which must be static.
+# These all end up in $(MPROTO), where we tell tools/build_manifest to look;
+# it will pick up every file in that directory and treat it as a manifest.
+#
+# Look ma, no for loops in these shell fragments!
+#
+manifest: $(MANIFEST)
+
+$(MPROTO):
+ mkdir -p $(MPROTO)
+
+$(MPROTO)/live.manifest: $(MPROTO) src/manifest
cp src/manifest $(MPROTO)/live.manifest
+
+$(MPROTO)/illumos.manifest: $(MPROTO) projects/illumos/manifest
cp projects/illumos/manifest $(MPROTO)/illumos.manifest
-ifeq ($(EXTRA_TARBALL),)
- gmake DESTDIR=$(MPROTO) DESTNAME=illumos-extra.manifest -C projects/illumos-extra manifest
-else
- gtar -Ozxf $(EXTRA_TARBALL) manifest > $(MPROTO)/illumos-extra.manifest
-endif
- [ ! -d projects/local ] || for dir in $(LOCAL_SUBDIRS); do \
- cd $(ROOT)/projects/local/$${dir}; \
- if [[ -f Makefile.joyent ]]; then \
- gmake DESTDIR=$(MPROTO) DESTNAME=$${dir}.manifest -f Makefile.joyent \
- manifest; else gmake DESTDIR=$(MPROTO) DESTNAME=$${dir}.manifest manifest; fi; done
- for dir in $(OVERLAYS); do cp $${dir}/manifest $(MPROTO)/overlay-$$(basename $${dir}).manifest; done
- ./tools/build_manifest
- ./tools/sorter manifest.gen > manifest.gen.sorted && mv manifest.gen.sorted manifest.gen
-update:
+$(MPROTO)/illumos-extra.manifest: $(MPROTO) 1-extra-stamp
+ gmake DESTDIR=$(MPROTO) DESTNAME=illumos-extra.manifest \
+ -C projects/illumos-extra manifest; \
+
+.PHONY: $(MPROTO)/%.sd.manifest
+$(MPROTO)/%.sd.manifest:
+ cd $(ROOT)/projects/local/$* && \
+ if [[ -f Makefile.joyent ]]; then \
+ gmake DESTDIR=$(MPROTO) DESTNAME=$*.sd.manifest \
+ -f Makefile.joyent manifest; \
+ else \
+ gmake DESTDIR=$(MPROTO) DESTNAME=$*.sd.manifest \
+ manifest; \
+ fi
+
+$(MPROTO)/%.ov.manifest: $(MPROTO) $(ROOT)/overlay/%/manifest
+ cp $(ROOT)/overlay/$*/manifest $@
+
+$(MANIFEST): $(WORLD_MANIFESTS) $(SUBDIR_MANIFESTS) $(OVERLAY_MANIFESTS)
+ -rm -f $(MANIFEST)
+ ./tools/build_manifest
+ ./tools/sorter manifest.gen > manifest.gen.sorted && \
+ mv manifest.gen.sorted $@
+
+#
+# Update source code from parent repositories. We do this for each local
+# project as well as for illumos, illumos-extra, and illumos-live via the
+# update_base tool.
+#
+update: update-base $(LOCAL_SUBDIRS:%=%.update)
+ -rm -f 0-local-stamp
+
+.PHONY: update-base
+update-base:
./tools/update_base
- [ ! -d projects/local ] || for dir in $(LOCAL_SUBDIRS); do \
- cd $(ROOT)/projects/local/$${dir}; \
- if [[ -f Makefile.joyent ]]; then \
- gmake -f Makefile.joyent update; else gmake update; fi; done
-0-local-stamp:
- [ ! -d projects/local ] || for dir in $(LOCAL_SUBDIRS); do \
- cd $(ROOT)/projects/local/$${dir}; \
- if [[ -f Makefile.joyent ]]; then \
- gmake -f Makefile.joyent world; else gmake world; fi; \
- if [[ -f Makefile.joyent ]]; then \
- gmake -f Makefile.joyent SMARTOS=true DESTDIR=$(PROTO) install; \
- else \
- gmake SMARTOS=true DESTDIR=$(PROTO) install; \
- fi; \
- done
+.PHONY: %.update
+%.update:
+ cd $(ROOT)/projects/local/$* && \
+ if [[ -f Makefile.joyent ]]; then \
+ gmake -f Makefile.joyent update; \
+ else \
+ gmake update; \
+ fi
+ -rm -f 0-subdir-$*-stamp
+
+0-local-stamp: $(LOCAL_SUBDIRS:%=0-subdir-%-stamp)
+ touch $@
+
+0-subdir-%-stamp:
+ cd "$(ROOT)/projects/local/$*" && \
+ if [[ -f Makefile.joyent ]]; then \
+ gmake -f Makefile.joyent DESTDIR=$(PROTO) world install; \
+ else \
+ gmake DESTDIR=$(PROTO) world install; \
+ fi
+ touch $@
0-devpro-stamp:
[ ! -d projects/devpro ] || \
- (cd projects/devpro && gmake DESTDIR=$(PROTO) install)
+ (cd projects/devpro && gmake DESTDIR=$(PROTO) install)
+ touch $@
-0-illumos-stamp:
+0-illumos-stamp: 0-extra-stamp
(cd $(ROOT) && ./tools/build_illumos)
- touch 0-illumos-stamp
+ touch $@
0-extra-stamp:
-ifeq ($(EXTRA_TARBALL),)
- (cd $(ROOT)/projects/illumos-extra && gmake DESTDIR=$(PROTO) install)
-else
-ifneq ($(NO_EXTRA_TARBALL),)
- (cd $(ROOT)/projects/illumos-extra && gmake DESTDIR=$(PROTO) install)
-else
- (cd $(PROTO)/../ && gtar -zxf $(EXTRA_TARBALL) proto/)
-endif
-endif
- touch 0-extra-stamp
+ (cd $(ROOT)/projects/illumos-extra && \
+ gmake DESTDIR=$(STRAP_PROTO) install_strap)
+ (cd $(STRAP_PROTO) && gtar xzf $(ADJUNCT_TARBALL))
+ touch $@
+
+1-extra-stamp: 0-illumos-stamp
+ (cd $(ROOT)/projects/illumos-extra && \
+ gmake DESTDIR=$(PROTO) install)
+ touch $@
0-livesrc-stamp: src/bootparams.c
- (cd $(ROOT)/src && gmake DESTDIR=$(PROTO) && gmake DESTDIR=$(PROTO) install)
+ (cd $(ROOT)/src && \
+ gmake DESTDIR=$(PROTO) && \
+ gmake DESTDIR=$(PROTO) install)
+ touch $@
0-man-stamp:
(cd $(ROOT)/man/src && gmake clean && gmake)
+ touch $@
0-tools-stamp: 0-builder-stamp 0-pwgen-stamp tools/cryptpass
(cp ${ROOT}/tools/cryptpass $(PROTO)/usr/lib)
+ touch $@
0-builder-stamp:
(cd $(ROOT)/tools/builder && gmake builder)
+ touch $@
0-pwgen-stamp:
- (cd ${ROOT}/tools/pwgen-* && autoconf && ./configure \
- && make && cp pwgen ${ROOT}/tools)
+ (cd ${ROOT}/tools/pwgen-* && autoconf && ./configure && \
+ make && cp pwgen ${ROOT}/tools)
+ touch $@
tools/cryptpass: tools/cryptpass.c
(cd ${ROOT}/tools && gcc -Wall -W -O2 -o cryptpass cryptpass.c)
@@ -113,13 +182,19 @@ clean:
rm -f $(MANIFEST)
rm -rf $(ROOT)/$(MPROTO)/*
(cd $(ROOT)/src && gmake clean)
- [ ! -d $(ROOT)/projects/illumos-extra ] || (cd $(ROOT)/projects/illumos-extra && gmake clean)
+ [ ! -d $(ROOT)/projects/illumos-extra ] || \
+ (cd $(ROOT)/projects/illumos-extra && gmake clean)
[ ! -d projects/local ] || for dir in $(LOCAL_SUBDIRS); do \
- cd $(ROOT)/projects/local/$${dir}; \
- if [[ -f Makefile.joyent ]]; then \
- gmake -f Makefile.joyent clean; else gmake clean; fi; done
+ cd $(ROOT)/projects/local/$${dir} && \
+ if [[ -f Makefile.joyent ]]; then \
+ gmake -f Makefile.joyent clean; \
+ else \
+ gmake clean; \
+ fi; \
+ done
(cd $(ROOT) && rm -rf $(PROTO))
- (cd $(ROOT) && mkdir -p $(PROTO))
- rm -f 0-*-stamp
+ (cd $(ROOT) && rm -rf $(STRAP_PROTO))
+ (cd $(ROOT) && mkdir -p $(PROTO) $(STRAP_PROTO))
+ rm -f 0-*-stamp 1-*-stamp
.PHONY: manifest check jsl
View
75 README
@@ -1,75 +0,0 @@
-
-Quickstart:
-
- * run configure
- * gmake world
- * gmake live
-
-The configure script sets everything up for building including:
-
- * ensuring system has required packages installed (and is running on Solaris!)
- * ensuring SUNWspro is installed in /opt/SUNWspro
- * ensures the projects/illumos exists and updates the illumos.sh there
- * ensures the projects/illumos-extras exists
- * downloads the opensolaris manpages
-
-The "make world" works as follows (using the tools/build_illumos script):
-
- * The illumos source in projects/illumos (can be a link) is build and
- installed into the proto area pointed to <illumos-live DIR>/proto
-
- * The illumos-extras are built and installed into the proto area pointed
- to <illumos-live DIR>/proto
-
- * The local sources in <illumos-live DIR>/src are built and installed
- into <illumos-live DIR>/proto
-
-The "make live" process works as follows (using the tools/build_live script):
-
- * The manifest is used, directories and links are created and files are taken:
- * first from the <illumos-live DIR>/overlay directory if they exist
- there; or if not
- * next from the <illumos-live DIR>/projects/opensolaris-man directory if
- they exist there; or if not
- * next from the <illumos-live DIR>/overlay directory if they exist there;
- or if not
- * next from the running system rooted at / if they exist there
-
- * Once the files are copied in, the tools/customize script is run which also
- sources tools/customize.* if they exist
-
- * Then the image is packed up and put in output with an expanded directory and
- a platform-<BUILDSTAMP>.tgz
-
- * A log of the live image creation is written to <illumos-live DIR>/build
- directory where entries look like:
-
- * OK - DIR: indicating a directory that was created
- * OK - LINK: indicating a hard link that was created
- * OK - SYMLINK: indicating a symbolic link that was created
- * OK[A] - FILE: indicating a file that was copied from
- the <illumos-live DIR>/overlay directory
- * OK[P] - FILE: indicating a file that was copied from
- the <illumos-live DIR>/proto directory
- * OK[M] - FILE: indicating a file that was copied from
- the <illumos-live DIR>/projects/opensolaris-man directory
- * OK[S] - FILE: indicating a file that was copied from the running system
- * *FAILED* - indicating a file that was not found in any of the above
-
-Contributing:
- In order to accept patches, Joyent requires contributors to sign
- a Contributor agreement, available at:
- https://download.joyent.com/pub/cla_smartos.pdf
- Please fill out this form and email to smartos@joyent.com prior to sending
- pull requests or patches
-
-Other notes:
-
- * The resulting image requires a 64-bit machine
- * The BUILDSTAMP is available in the live image in /etc/joyent_buildstamp
- * There is a manifest created:
-
- output/platform-<BUILDSTAMP>/i86pc/amd64/boot_archive.manifest
-
- which contains a list of all files/links in the image + md5sums of files and
- is also available in the live image itself in /var/log/manifest
Oops, something went wrong.

0 comments on commit fa1dcf1

Please sign in to comment.