summaryrefslogtreecommitdiff
path: root/util/nvmutil/Makefile
blob: ba93d0ef69f400ba83e02c54204ad0d2da36d071 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
# SPDX-License-Identifier: MIT
# Copyright (c) 2022,2026 Leah Rowe <leah@libreboot.org>
# Copyright (c) 2023 Riku Viitanen <riku.viitanen@protonmail.com>

CC = cc
CFLAGS = -Os -Wall -Wextra -std=c99 -pedantic
LDFLAGS =
PREFIX = /usr/local
DESTDIR =
INSTALL = install

PROGS = nvmutil

LIB_OBJS = \
	lib/state.o \
	lib/file.o \
	lib/string.o \
	lib/usage.o \
	lib/command.o \
	lib/num.o \
	lib/io.o \
	lib/checksum.o \
	lib/word.o

OBJS_NVMUTIL = nvmutil.o $(LIB_OBJS)

all: $(PROGS)

nvmutil: $(OBJS_NVMUTIL)
	$(CC) $(CFLAGS) $(OBJS_NVMUTIL) -o $@ $(LDFLAGS)

.c.o:
	$(CC) $(CFLAGS) -c $< -o $@

install: $(PROGS)
	mkdir -p $(DESTDIR)$(PREFIX)/bin
	for p in $(PROGS); do \
		$(INSTALL) $$p $(DESTDIR)$(PREFIX)/bin/$$p; \
		chmod 755 $(DESTDIR)$(PREFIX)/bin/$$p; \
	done

uninstall:
	for p in $(PROGS); do \
		rm -f $(DESTDIR)$(PREFIX)/bin/$$p; \
	done

clean:
	rm -f $(PROGS) *.o lib/*.o

distclean: clean