# Copyright 2018 Google Inc. All Rights Reserved.

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)
LOCAL_MODULE := libuuid
LOCAL_MODULE_TAGS := optional

LOCAL_SRC_FILES :=  \
	src/uuidP.h \
	src/clear.c \
	src/compare.c \
	src/copy.c \
	src/gen_uuid.c \
	src/isnull.c \
	src/pack.c \
	src/parse.c \
	src/unpack.c \
	src/unparse.c \
	src/uuidd.h \
	src/uuid_time.c \
	src/predefined.c \
	../lib/randutils.c \
	../lib/md5.c \
	../lib/sha1.c

LOCAL_C_INCLUDES := \
	$(LOCAL_PATH)/src \
	$(LOCAL_PATH)/../include
LOCAL_CFLAGS := \
	-include $(LOCAL_PATH)/../config.h \
	-D_PATH_RUNSTATEDIR='"/tmp"'

LOCAL_TOOLCHAIN_PREBUILTS := \
	$(LOCAL_PATH)/src/uuid.h:usr/include/uuid/uuid.h

include $(BUILD_SHARED_LIBRARY)

include $(CLEAR_VARS)
LOCAL_MODULE := libuuid_host
LOCAL_MODULE_TAGS := optional

LOCAL_SRC_FILES :=  \
	src/uuidP.h \
	src/clear.c \
	src/compare.c \
	src/copy.c \
	src/gen_uuid.c \
	src/isnull.c \
	src/pack.c \
	src/parse.c \
	src/unpack.c \
	src/unparse.c \
	src/uuidd.h \
	src/uuid_time.c \
	src/predefined.c \
	../lib/randutils.c \
	../lib/md5.c \
	../lib/sha1.c

LOCAL_C_INCLUDES := \
	$(LOCAL_PATH)/src \
	$(LOCAL_PATH)/../include
LOCAL_CFLAGS := \
	-include $(LOCAL_PATH)/../config.h \
	-D_PATH_RUNSTATEDIR='"/tmp"'

LOCAL_TOOLCHAIN_PREBUILTS := \
	$(LOCAL_PATH)/src/uuid.h:usr/include/uuid/uuid.h

include $(BUILD_HOST_STATIC_LIBRARY)
