| # SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later | |
| CC = $(CROSS_COMPILE)gcc | |
| XSCOM_VERSION ?= $(shell ../../make_version.sh xscom-utils) | |
| CFLAGS += -O2 -g -Wall -m64 | |
| prefix = /usr/local/ | |
| sbindir = $(prefix)/sbin | |
| datadir = $(prefix)/share | |
| mandir = $(datadir)/man | |
| %.o: %.c | |
| $(Q_CC)$(COMPILE.c) $< -o $@ | |
| # Use make V=1 for a verbose build. | |
| ifndef V | |
| Q_CC= @echo ' CC ' $@; | |
| Q_LINK= @echo ' LINK ' $@; | |
| Q_LN= @echo ' LN ' $@; | |
| Q_MKDIR=@echo ' MKDIR ' $@; | |
| endif | |
| all: getscom putscom getsram | |
| getscom: getscom.o xscom.o version.o | |
| $(Q_LINK)$(LINK.o) -o $@ $^ | |
| getsram: getsram.o xscom.o sram.o version.o | |
| $(Q_LINK)$(LINK.o) -o $@ $^ | |
| putscom: putscom.o xscom.o version.o | |
| $(Q_LINK)$(LINK.o) -o $@ $^ | |
| install: all | |
| install -D getscom $(DESTDIR)$(sbindir)/getscom | |
| install -D putscom $(DESTDIR)$(sbindir)/putscom | |
| install -D getsram $(DESTDIR)$(sbindir)/getsram | |
| install -D -m 0644 getscom.1 $(DESTDIR)$(mandir)/man1/getscom.1 | |
| install -D -m 0644 putscom.1 $(DESTDIR)$(mandir)/man1/putscom.1 | |
| install -D -m 0644 getsram.1 $(DESTDIR)$(mandir)/man1/getsram.1 | |
| .PHONY: clean | |
| clean: | |
| rm -rf *.[od] getscom putscom getsram | |
| .PHONY: distclean | |
| distclean: clean | |
| rm -rf *.c~ *.h~ *.i *.s Makefile~ .version version.c | |
| version.c: ../../make_version.sh .version | |
| @(if [ "a$(XSCOM_VERSION)" = "a" ]; then \ | |
| echo "#error You need to set XSCOM_VERSION environment variable" > $@ ;\ | |
| else \ | |
| echo "const char version[] = \"$(XSCOM_VERSION)\";" ;\ | |
| fi) > $@ | |
| .PHONY: VERSION-always | |
| .version: VERSION-always | |
| @echo $(XSCOM_VERSION) > $@.tmp | |
| @cmp -s $@ $@.tmp || cp $@.tmp $@ | |
| @rm -f $@.tmp |