forked from bonsai/harakit
92 lines
2.5 KiB
Makefile
92 lines
2.5 KiB
Makefile
# Copyright (c) 2023–2024 Emma Tebibyte <emma@tebibyte.media>
|
||
# Copyright (c) 2023–2024 DTB <trinity@trinity.moe>
|
||
# Copyright (c) 2023 Sasha Koshka <sashakoshka@tebibyte.media>
|
||
# Copyright (c) 2024 Aaditya Aryal <aryalaadi123@gmail.com>
|
||
# SPDX-License-Identifier: FSFAP
|
||
#
|
||
# Copying and distribution of this file, with or without modification, are
|
||
# permitted in any medium without royalty provided the copyright notice and this
|
||
# notice are preserved. This file is offered as-is, without any warranty.
|
||
|
||
include ../config.mk
|
||
|
||
.PHONY: bin
|
||
bin: dj false fop hru intcmp mm npc rpn scrut str strcmp swab true
|
||
|
||
.PHONY: lib
|
||
|
||
# TODO: this does not have to be here
|
||
.PHONY: prepare
|
||
prepare:
|
||
# keep ..$(BUILD)/include until bindgen(1) has stdin support
|
||
# https://github.com/rust-lang/rust-bindgen/issues/2703
|
||
mkdir -p ../$(BUILD)/bin ../$(BUILD)/include ../$(BUILD)/lib
|
||
mkdir -p ../$(BUILD)/test ../$(BUILD)/o
|
||
|
||
.PHONY: dj
|
||
dj: ../$(BUILD)/bin/dj
|
||
../$(BUILD)/bin/dj: dj/dj.c prepare
|
||
$(CC) $(CFLAGS) -o $@ dj/dj.c
|
||
|
||
.PHONY: false
|
||
false: ../$(BUILD)/bin/false
|
||
../$(BUILD)/bin/false: false/false.c prepare
|
||
$(CC) $(CFLAGS) -o $@ false/false.c
|
||
|
||
.PHONY: fop
|
||
fop: ../$(BUILD)/bin/fop
|
||
../$(BUILD)/bin/fop: fop/fop.rs prepare lib
|
||
$(RUSTC) $(RUSTFLAGS) $(RUSTLIBS) -o $@ fop/fop.rs
|
||
|
||
.PHONY: hru
|
||
hru: ../$(BUILD)/bin/hru
|
||
../$(BUILD)/bin/hru: hru/hru.rs prepare lib
|
||
$(RUSTC) $(RUSTFLAGS) $(RUSTLIBS) -o $@ hru/hru.rs
|
||
|
||
.PHONY: intcmp
|
||
intcmp: ../$(BUILD)/bin/intcmp
|
||
../$(BUILD)/bin/intcmp: intcmp/intcmp.c prepare
|
||
$(CC) $(CFLAGS) -o $@ intcmp/intcmp.c
|
||
|
||
.PHONY: mm
|
||
mm: ../$(BUILD)/bin/mm
|
||
../$(BUILD)/bin/mm: mm/mm.c prepare
|
||
$(CC) $(CFLAGS) -o $@ mm/mm.c
|
||
|
||
.PHONY: npc
|
||
npc: ../$(BUILD)/bin/npc
|
||
../$(BUILD)/bin/npc: npc/npc.c prepare
|
||
$(CC) $(CFLAGAS) -o $@ npc/npc.c
|
||
|
||
.PHONY: rpn
|
||
rpn: ../$(BUILD)/bin/rpn
|
||
../$(BUILD)/bin/rpn: rpn/rpn.rs prepare lib
|
||
$(RUSTC) $(RUSTFLAGS) $(RUSTLIBS) -o $@ rpn/rpn.rs
|
||
|
||
.PHONY: scrut
|
||
scrut: ../$(BUILD)/bin/scrut
|
||
../$(BUILD)/bin/scrut: scrut/scrut.c prepare
|
||
$(CC) $(CFLAGS) -o $@ scrut/scrut.c
|
||
|
||
.PHONY: str
|
||
str: ../$(BUILD)/bin/str
|
||
../$(BUILD)/bin/str: str/str.c prepare
|
||
$(CC) $(CFLAGS) -o $@ str/str.c
|
||
|
||
.PHONY: strcmp
|
||
strcmp: ../$(BUILD)/bin/strcmp
|
||
../$(BUILD)/bin/strcmp: strcmp/strcmp.c prepare
|
||
$(CC) $(CFLAGS) -o $@ strcmp/strcmp.c
|
||
|
||
.PHONY: swab
|
||
swab: ../$(BUILD)/bin/swab
|
||
../$(BUILD)/bin/swab: swab/swab.rs prepare lib
|
||
$(RUSTC) $(RUSTFLAGS) --extern getopt=../$(BUILD)/o/libgetopt.rlib \
|
||
--extern sysexits=../$(BUILD)/o/libsysexits.rlib \
|
||
-o $@ swab/swab.rs
|
||
|
||
.PHONY: true
|
||
true: ../$(BUILD)/bin/true
|
||
../$(BUILD)/bin/true: true/true.c prepare
|
||
$(CC) $(CFLAGS) -o $@ true/true.c
|