2020-11-25 08:19:00 -08:00
|
|
|
#-*-mode:makefile-gmake;indent-tabs-mode:t;tab-width:8;coding:utf-8-*-┐
|
2023-12-16 23:07:10 -05:00
|
|
|
#── vi: set noet ft=make ts=8 sw=8 fenc=utf-8 :vi ────────────────────┘
|
2020-11-25 08:19:00 -08:00
|
|
|
|
2023-06-08 06:44:54 -07:00
|
|
|
ifneq ($(MODE), dbg)
|
|
|
|
ifneq ($(MODE), asan)
|
2023-05-14 09:32:15 -07:00
|
|
|
ifeq ($(ARCH), x86_64)
|
|
|
|
|
2022-09-13 01:46:29 -07:00
|
|
|
o/$(MODE)/test/libc/release/cosmopolitan.zip: private .UNSANDBOXED = 1
|
2022-08-13 15:06:00 -07:00
|
|
|
o/$(MODE)/test/libc/release/cosmopolitan.zip: \
|
|
|
|
o/cosmopolitan.h \
|
2023-08-14 22:22:58 -07:00
|
|
|
o/$(MODE)/ape/ape.lds \
|
2022-08-13 15:06:00 -07:00
|
|
|
o/$(MODE)/libc/crt/crt.o \
|
|
|
|
o/$(MODE)/ape/ape.o \
|
2022-08-18 18:16:53 -07:00
|
|
|
o/$(MODE)/ape/ape-copy-self.o \
|
2022-08-13 15:06:00 -07:00
|
|
|
o/$(MODE)/ape/ape-no-modify-self.o \
|
2022-09-08 02:48:17 -07:00
|
|
|
o/$(MODE)/cosmopolitan.a \
|
|
|
|
o/$(MODE)/third_party/zip/zip.com
|
|
|
|
@$(COMPILE) -AZIP -T$@ \
|
|
|
|
o/$(MODE)/third_party/zip/zip.com \
|
|
|
|
-b$(TMPDIR) -qj $@ \
|
2022-08-13 15:06:00 -07:00
|
|
|
o/cosmopolitan.h \
|
2023-08-14 22:22:58 -07:00
|
|
|
o/$(MODE)/ape/ape.lds \
|
2022-08-13 15:06:00 -07:00
|
|
|
o/$(MODE)/libc/crt/crt.o \
|
|
|
|
o/$(MODE)/ape/ape.o \
|
2022-08-18 18:16:53 -07:00
|
|
|
o/$(MODE)/ape/ape-copy-self.o \
|
2022-08-13 15:06:00 -07:00
|
|
|
o/$(MODE)/ape/ape-no-modify-self.o \
|
2022-05-22 04:51:02 -07:00
|
|
|
o/$(MODE)/cosmopolitan.a
|
2020-11-25 08:19:00 -08:00
|
|
|
|
2022-06-20 04:32:25 -07:00
|
|
|
o/$(MODE)/test/libc/release/smoke.o: \
|
|
|
|
test/libc/release/smoke.c \
|
|
|
|
o/cosmopolitan.h
|
|
|
|
@$(COMPILE) -ACC $(CC) \
|
|
|
|
-o $@ \
|
|
|
|
-c \
|
|
|
|
-Os \
|
|
|
|
-fno-pie \
|
|
|
|
-nostdinc \
|
2023-07-01 05:10:12 -07:00
|
|
|
-Wl,--gc-sections \
|
2022-06-20 04:32:25 -07:00
|
|
|
-fno-omit-frame-pointer \
|
|
|
|
-include o/cosmopolitan.h \
|
2023-07-01 05:10:12 -07:00
|
|
|
-Wl,-z,max-page-size=0x1000 \
|
|
|
|
-Wl,-z,common-page-size=0x1000 \
|
2022-06-20 04:32:25 -07:00
|
|
|
$<
|
2021-01-16 12:05:41 -08:00
|
|
|
|
2022-06-20 04:32:25 -07:00
|
|
|
o/$(MODE)/test/libc/release/smoke.com.dbg: \
|
|
|
|
o/$(MODE)/test/libc/release/smoke.o \
|
2023-08-14 22:22:58 -07:00
|
|
|
o/$(MODE)/ape/ape.lds \
|
2022-06-20 04:32:25 -07:00
|
|
|
o/$(MODE)/libc/crt/crt.o \
|
|
|
|
o/$(MODE)/ape/ape.o \
|
2020-11-25 08:19:00 -08:00
|
|
|
o/$(MODE)/cosmopolitan.a
|
2022-06-20 04:32:25 -07:00
|
|
|
@$(COMPILE) -ALD $(LD) \
|
|
|
|
-static \
|
|
|
|
-no-pie \
|
|
|
|
-nostdlib \
|
2023-07-01 05:10:12 -07:00
|
|
|
--gc-sections \
|
|
|
|
-z max-page-size=0x1000 \
|
|
|
|
-z common-page-size=0x1000 \
|
2023-08-14 22:22:58 -07:00
|
|
|
-T o/$(MODE)/ape/ape.lds \
|
2022-06-20 04:32:25 -07:00
|
|
|
o/$(MODE)/test/libc/release/smoke.o \
|
|
|
|
o/$(MODE)/libc/crt/crt.o \
|
|
|
|
o/$(MODE)/ape/ape.o \
|
|
|
|
o/$(MODE)/cosmopolitan.a \
|
|
|
|
-o $@
|
2020-11-25 08:19:00 -08:00
|
|
|
|
2022-06-20 04:32:25 -07:00
|
|
|
o/$(MODE)/test/libc/release/smoke-nms.com.dbg: \
|
|
|
|
o/$(MODE)/test/libc/release/smoke.o \
|
2023-08-14 22:22:58 -07:00
|
|
|
o/$(MODE)/ape/ape.lds \
|
2022-06-20 04:32:25 -07:00
|
|
|
o/$(MODE)/libc/crt/crt.o \
|
|
|
|
o/$(MODE)/ape/ape-no-modify-self.o \
|
2021-04-07 21:01:57 -07:00
|
|
|
o/$(MODE)/cosmopolitan.a
|
2022-06-20 04:32:25 -07:00
|
|
|
@$(COMPILE) -ALD $(LD) \
|
|
|
|
-static \
|
|
|
|
-no-pie \
|
|
|
|
-nostdlib \
|
2023-07-01 05:10:12 -07:00
|
|
|
--gc-sections \
|
|
|
|
-z max-page-size=0x1000 \
|
|
|
|
-z common-page-size=0x1000 \
|
2023-08-14 22:22:58 -07:00
|
|
|
-T o/$(MODE)/ape/ape.lds \
|
2022-06-20 04:32:25 -07:00
|
|
|
o/$(MODE)/test/libc/release/smoke.o \
|
|
|
|
o/$(MODE)/libc/crt/crt.o \
|
|
|
|
o/$(MODE)/ape/ape-no-modify-self.o \
|
|
|
|
o/$(MODE)/cosmopolitan.a \
|
|
|
|
-o $@
|
2021-04-07 21:01:57 -07:00
|
|
|
|
2022-06-20 04:32:25 -07:00
|
|
|
o/$(MODE)/test/libc/release/smoke-chibicc.com.dbg: \
|
|
|
|
o/$(MODE)/test/libc/release/smoke-chibicc.o \
|
2023-08-14 22:22:58 -07:00
|
|
|
o/$(MODE)/ape/ape.lds \
|
2022-06-20 04:32:25 -07:00
|
|
|
o/$(MODE)/libc/crt/crt.o \
|
|
|
|
o/$(MODE)/ape/ape-no-modify-self.o \
|
|
|
|
o/$(MODE)/cosmopolitan.a \
|
|
|
|
o/$(MODE)/third_party/chibicc/chibicc.com
|
|
|
|
@$(COMPILE) -ALD $(LD) \
|
|
|
|
-static \
|
|
|
|
-no-pie \
|
|
|
|
-nostdlib \
|
2023-07-01 05:10:12 -07:00
|
|
|
--gc-sections \
|
|
|
|
-z max-page-size=0x1000 \
|
|
|
|
-z common-page-size=0x1000 \
|
2023-08-14 22:22:58 -07:00
|
|
|
-T o/$(MODE)/ape/ape.lds \
|
2022-06-20 04:32:25 -07:00
|
|
|
o/$(MODE)/test/libc/release/smoke-chibicc.o \
|
|
|
|
o/$(MODE)/libc/crt/crt.o \
|
|
|
|
o/$(MODE)/ape/ape-no-modify-self.o \
|
|
|
|
o/$(MODE)/cosmopolitan.a \
|
|
|
|
-o $@
|
2021-02-01 04:04:44 -08:00
|
|
|
|
2022-06-20 04:32:25 -07:00
|
|
|
o/$(MODE)/test/libc/release/smoke-chibicc.o: \
|
|
|
|
test/libc/release/smoke.c \
|
|
|
|
o/cosmopolitan.h \
|
|
|
|
o/$(MODE)/third_party/chibicc/chibicc.com
|
2022-08-10 22:08:43 -07:00
|
|
|
@$(COMPILE) -wACHIBICC \
|
2022-06-20 04:32:25 -07:00
|
|
|
o/$(MODE)/third_party/chibicc/chibicc.com \
|
|
|
|
$(CHIBICC_FLAGS) \
|
|
|
|
-o $@ \
|
|
|
|
-c \
|
|
|
|
-Os \
|
|
|
|
-static \
|
|
|
|
-fno-pie \
|
|
|
|
-nostdlib \
|
|
|
|
-nostdinc \
|
|
|
|
-mno-red-zone \
|
|
|
|
-fno-omit-frame-pointer \
|
|
|
|
-include o/cosmopolitan.h \
|
|
|
|
$<
|
2021-02-01 04:04:44 -08:00
|
|
|
|
2022-06-20 04:32:25 -07:00
|
|
|
o/$(MODE)/test/libc/release/smokecxx.com.dbg: \
|
|
|
|
o/$(MODE)/test/libc/release/smokecxx.o \
|
2023-08-14 22:22:58 -07:00
|
|
|
o/$(MODE)/ape/ape.lds \
|
2022-06-20 04:32:25 -07:00
|
|
|
o/$(MODE)/libc/crt/crt.o \
|
|
|
|
o/$(MODE)/ape/ape.o \
|
2023-05-09 12:14:57 -07:00
|
|
|
o/$(MODE)/cosmopolitan.a \
|
|
|
|
o/$(MODE)/third_party/libcxx/libcxx.a
|
2022-06-20 04:32:25 -07:00
|
|
|
@$(COMPILE) -ALD $(LD) \
|
|
|
|
-static \
|
|
|
|
-no-pie \
|
|
|
|
-nostdlib \
|
2023-07-01 05:10:12 -07:00
|
|
|
--gc-sections \
|
|
|
|
-z max-page-size=0x1000 \
|
|
|
|
-z common-page-size=0x1000 \
|
2023-08-14 22:22:58 -07:00
|
|
|
-T o/$(MODE)/ape/ape.lds \
|
2022-06-20 04:32:25 -07:00
|
|
|
o/$(MODE)/test/libc/release/smokecxx.o \
|
|
|
|
o/$(MODE)/libc/crt/crt.o \
|
|
|
|
o/$(MODE)/ape/ape.o \
|
2023-05-09 12:14:57 -07:00
|
|
|
o/$(MODE)/third_party/libcxx/libcxx.a \
|
2022-06-20 04:32:25 -07:00
|
|
|
o/$(MODE)/cosmopolitan.a \
|
|
|
|
-o $@
|
|
|
|
|
|
|
|
o/$(MODE)/test/libc/release/smokecxx.o: \
|
|
|
|
test/libc/release/smokecxx.cc \
|
|
|
|
o/cosmopolitan.h
|
|
|
|
@$(COMPILE) -ACXX $(CXX) \
|
|
|
|
-o $@ \
|
|
|
|
-c \
|
|
|
|
-Os \
|
|
|
|
-fno-pie \
|
|
|
|
-nostdinc \
|
2023-07-01 05:10:12 -07:00
|
|
|
-Wl,--gc-sections \
|
2022-06-20 04:32:25 -07:00
|
|
|
-fno-omit-frame-pointer \
|
2023-07-01 05:10:12 -07:00
|
|
|
-z max-page-size=0x1000 \
|
|
|
|
-z common-page-size=0x1000 \
|
2022-06-20 04:32:25 -07:00
|
|
|
-include o/cosmopolitan.h \
|
|
|
|
test/libc/release/smokecxx.cc
|
|
|
|
|
|
|
|
o/$(MODE)/test/libc/release/smokeansi.com.dbg: \
|
|
|
|
o/$(MODE)/test/libc/release/smokeansi.o \
|
2023-08-14 22:22:58 -07:00
|
|
|
o/$(MODE)/ape/ape.lds \
|
2022-06-20 04:32:25 -07:00
|
|
|
o/$(MODE)/libc/crt/crt.o \
|
|
|
|
o/$(MODE)/ape/ape.o \
|
2021-02-03 17:48:59 -08:00
|
|
|
o/$(MODE)/cosmopolitan.a
|
2022-06-20 04:32:25 -07:00
|
|
|
@$(COMPILE) -ALD $(LD) \
|
|
|
|
-static \
|
|
|
|
-no-pie \
|
|
|
|
-nostdlib \
|
2023-07-01 05:10:12 -07:00
|
|
|
--gc-sections \
|
|
|
|
-z max-page-size=0x1000 \
|
|
|
|
-z common-page-size=0x1000 \
|
2023-08-14 22:22:58 -07:00
|
|
|
-T o/$(MODE)/ape/ape.lds \
|
2022-06-20 04:32:25 -07:00
|
|
|
o/$(MODE)/test/libc/release/smokeansi.o \
|
|
|
|
o/$(MODE)/libc/crt/crt.o \
|
|
|
|
o/$(MODE)/ape/ape.o \
|
|
|
|
o/$(MODE)/cosmopolitan.a \
|
|
|
|
-o $@
|
|
|
|
|
|
|
|
o/$(MODE)/test/libc/release/smokeansi.o: \
|
|
|
|
test/libc/release/smoke.c \
|
|
|
|
o/cosmopolitan.h
|
|
|
|
@$(COMPILE) -AANSI $(CC) \
|
|
|
|
-o $@ \
|
|
|
|
-c \
|
|
|
|
-Os \
|
|
|
|
-ansi \
|
|
|
|
-static \
|
|
|
|
-fno-pie \
|
|
|
|
-nostdinc \
|
2023-07-01 05:10:12 -07:00
|
|
|
-Wl,--gc-sections \
|
2022-06-20 04:32:25 -07:00
|
|
|
-fno-omit-frame-pointer \
|
|
|
|
-include o/cosmopolitan.h \
|
2023-07-01 05:10:12 -07:00
|
|
|
-Wl,-z,max-page-size=0x1000 \
|
|
|
|
-Wl,-z,common-page-size=0x1000 \
|
2022-06-20 04:32:25 -07:00
|
|
|
test/libc/release/smoke.c
|
2021-02-03 17:48:59 -08:00
|
|
|
|
2022-05-25 11:31:08 -07:00
|
|
|
# TODO(jart): Rewrite these shell scripts as C code.
|
2022-06-20 04:32:25 -07:00
|
|
|
# o/$(MODE)/test/libc/release/metal.ok: \
|
|
|
|
# test/libc/release/metal.sh \
|
|
|
|
# o/$(MODE)/examples/hello.com \
|
2022-05-25 11:31:08 -07:00
|
|
|
# o/$(MODE)/tool/build/blinkenlights.com.dbg
|
|
|
|
# @$(COMPILE) -ASHTEST -tT$@ $<
|
|
|
|
# o/$(MODE)/test/libc/release/emulate.ok: \
|
2022-06-20 04:32:25 -07:00
|
|
|
# test/libc/release/emulate.sh \
|
|
|
|
# o/$(MODE)/examples/hello.com \
|
2022-05-25 11:31:08 -07:00
|
|
|
# o/$(MODE)/tool/build/blinkenlights.com.dbg
|
|
|
|
# @$(COMPILE) -ASHTEST -tT$@ $<
|
2021-02-08 09:19:00 -08:00
|
|
|
|
2020-11-25 08:19:00 -08:00
|
|
|
.PHONY: o/$(MODE)/test/libc/release
|
2022-06-20 04:32:25 -07:00
|
|
|
o/$(MODE)/test/libc/release: \
|
|
|
|
o/$(MODE)/test/libc/release/smoke.com \
|
|
|
|
o/$(MODE)/test/libc/release/smoke.com.runs \
|
|
|
|
o/$(MODE)/test/libc/release/smoke-nms.com \
|
|
|
|
o/$(MODE)/test/libc/release/smoke-nms.com.runs \
|
|
|
|
o/$(MODE)/test/libc/release/smoke-chibicc.com \
|
|
|
|
o/$(MODE)/test/libc/release/smoke-chibicc.com.runs \
|
|
|
|
o/$(MODE)/test/libc/release/smokecxx.com \
|
|
|
|
o/$(MODE)/test/libc/release/smokecxx.com.runs \
|
|
|
|
o/$(MODE)/test/libc/release/smokeansi.com \
|
2022-05-25 11:31:08 -07:00
|
|
|
o/$(MODE)/test/libc/release/smokeansi.com.runs
|
2023-05-14 09:32:15 -07:00
|
|
|
|
|
|
|
endif
|
2023-06-08 06:44:54 -07:00
|
|
|
endif
|
|
|
|
endif
|
2023-05-14 09:32:15 -07:00
|
|
|
|
|
|
|
.PHONY: o/$(MODE)/test/libc/release
|
|
|
|
o/$(MODE)/test/libc/release:
|