1*4f2df630SAndroid Build Coastguard Worker# Copyright 2024 The ChromiumOS Authors 2*4f2df630SAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license that can be 3*4f2df630SAndroid Build Coastguard Worker# found in the LICENSE file. 4*4f2df630SAndroid Build Coastguard Worker 5*4f2df630SAndroid Build Coastguard WorkerCC ?= gcc 6*4f2df630SAndroid Build Coastguard WorkerPROGRAM := test_boot_param 7*4f2df630SAndroid Build Coastguard WorkerLIBS := -lcrypto 8*4f2df630SAndroid Build Coastguard WorkerCFLAGS += -std=gnu99 \ 9*4f2df630SAndroid Build Coastguard Worker -g \ 10*4f2df630SAndroid Build Coastguard Worker -Wall \ 11*4f2df630SAndroid Build Coastguard Worker -Werror \ 12*4f2df630SAndroid Build Coastguard Worker -Wpointer-arith \ 13*4f2df630SAndroid Build Coastguard Worker -Wcast-align \ 14*4f2df630SAndroid Build Coastguard Worker -Wundef \ 15*4f2df630SAndroid Build Coastguard Worker -Wsign-compare \ 16*4f2df630SAndroid Build Coastguard Worker -Wredundant-decls \ 17*4f2df630SAndroid Build Coastguard Worker -Wmissing-declarations 18*4f2df630SAndroid Build Coastguard WorkerRESULT_FILES := test_boot_param.cbor test_dice_chain.cbor 19*4f2df630SAndroid Build Coastguard WorkerPCR0_OPTION := normal 20*4f2df630SAndroid Build Coastguard WorkerPROGRAM_OPTIONS := $(RESULT_FILES) $(PCR0_OPTION) 21*4f2df630SAndroid Build Coastguard Worker 22*4f2df630SAndroid Build Coastguard Workerifneq ($(DEBUG),) 23*4f2df630SAndroid Build Coastguard WorkerCFLAGS += -O0 24*4f2df630SAndroid Build Coastguard Workerelse 25*4f2df630SAndroid Build Coastguard WorkerCFLAGS += -O3 26*4f2df630SAndroid Build Coastguard Workerendif 27*4f2df630SAndroid Build Coastguard Worker 28*4f2df630SAndroid Build Coastguard Workerifneq ($(DICE_DEBUG),) 29*4f2df630SAndroid Build Coastguard WorkerCFLAGS += -DDICE_DEBUG 30*4f2df630SAndroid Build Coastguard Workerendif 31*4f2df630SAndroid Build Coastguard Worker 32*4f2df630SAndroid Build Coastguard Workerall: test 33*4f2df630SAndroid Build Coastguard Worker 34*4f2df630SAndroid Build Coastguard Workertest: $(PROGRAM) 35*4f2df630SAndroid Build Coastguard Worker ./$(PROGRAM) $(PROGRAM_OPTIONS) 36*4f2df630SAndroid Build Coastguard Worker 37*4f2df630SAndroid Build Coastguard WorkerSOURCES := test.c boot_param.c boot_param_platform_host.c 38*4f2df630SAndroid Build Coastguard WorkerOBJS := $(patsubst %.c,%.o,$(SOURCES)) 39*4f2df630SAndroid Build Coastguard WorkerDEPS := $(patsubst %.c,%.d,$(SOURCES)) 40*4f2df630SAndroid Build Coastguard Worker 41*4f2df630SAndroid Build Coastguard Worker$(PROGRAM): $(OBJS) Makefile 42*4f2df630SAndroid Build Coastguard Worker $(CC) $(CFLAGS) $(OBJS) $(LDFLAGS) $(LIBS) -o $@ 43*4f2df630SAndroid Build Coastguard Worker 44*4f2df630SAndroid Build Coastguard Worker%.o: %.c Makefile 45*4f2df630SAndroid Build Coastguard Worker $(CC) $(CFLAGS) $(CPPFLAGS) -c -MMD -MF $(basename $@).d -o $@ $< 46*4f2df630SAndroid Build Coastguard Worker 47*4f2df630SAndroid Build Coastguard Worker.PHONY: clean 48*4f2df630SAndroid Build Coastguard Workerclean: 49*4f2df630SAndroid Build Coastguard Worker rm -rf $(PROGRAM) *~ *.o *.d $(RESULT_FILES) 50*4f2df630SAndroid Build Coastguard Worker 51*4f2df630SAndroid Build Coastguard Worker-include $(DEPS) 52