# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

LDFLAGS += -luuid -static
BUILD_ROOT := ${BUILD}/cgpt

INCLUDES = -I$(FWDIR)/lib/cgptlib/include -I$(FWDIR)/include
LIBS = ${HOSTLIB}

DESTDIR ?= /usr/bin

PROGNAME = ${BUILD_ROOT}/cgpt

LIB_CGPT_CC = ${BUILD_ROOT}/libcgpt-cc.a

ALL_SRCS = \
	cgpt.c \
	cgpt_create.c \
	cgpt_add.c \
	cgpt_boot.c \
	cgpt_show.c \
	cgpt_repair.c \
	cgpt_prioritize.c \
	cgpt_find.c \
	cmd_show.c \
	cmd_repair.c \
	cmd_create.c \
	cmd_add.c \
	cmd_boot.c \
	cmd_find.c \
	cmd_prioritize.c \
	cgpt_common.c

LIB_CGPT_CC_SRCS = \
	CgptManager.cc \
	cgpt_create.c \
	cgpt_add.c \
	cgpt_boot.c \
	cgpt_show.c \
	cgpt_repair.c \
	cgpt_prioritize.c \
	cgpt_common.c \
	../firmware/lib/cgptlib/crc32.c \
	../firmware/lib/cgptlib/cgptlib_internal.c \
	../firmware/stub/utility_stub.c

main: $(PROGNAME)

include ../common.mk

LIB_CGPT_CC_OBJS = $(LIB_CGPT_CC_SRCS:%.c=${BUILD_ROOT}/%.o) $(LIB_CGPT_CC_SRCS:%.cc=${BUILD_ROOT}/%.o)
LIB_CGPT_CC_DEPS = $(LIB_CGPT_CC_OBJS:%.o=%.o.d)

libcgpt_cc: $(LIB_CGPT_CC)

$(LIB_CGPT_CC): $(LIB_CGPT_CC_OBJS)
	rm -f $@
	ar qc $@ $^

$(PROGNAME): $(ALL_OBJS) $(LIBS)
	$(CC) -o $(PROGNAME) $(CFLAGS) $^ $(LDFLAGS)

install: $(PROGNAME)
	mkdir -p $(DESTDIR)
	cp -f $^ $(DESTDIR)
	chmod a+rx $(patsubst ${BUILD_ROOT}/%,$(DESTDIR)/%,$^)

.PHONY: all install

