| # |
| # Copyright (C) 2014 Trevor Drake |
| # |
| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| # |
| # |
| |
| |
| # A bit of a non-standard LOCAL_PATH declaration here |
| # The Android.mk lives below the top source directory |
| # but LOCAL_PATH needs to point to the top of the module |
| # source tree to maintain the integrity of the intermediates |
| # directories |
| LOCAL_PATH := $(subst /contrib/android,,$(call my-dir)) |
| |
| libarchive_target_config := contrib/android/config/android.h |
| |
| libarchive_src_files := libarchive/archive_acl.c \ |
| libarchive/archive_check_magic.c \ |
| libarchive/archive_cmdline.c \ |
| libarchive/archive_cryptor.c \ |
| libarchive/archive_digest.c \ |
| libarchive/archive_entry.c \ |
| libarchive/archive_entry_copy_stat.c \ |
| libarchive/archive_entry_link_resolver.c \ |
| libarchive/archive_entry_sparse.c \ |
| libarchive/archive_entry_stat.c \ |
| libarchive/archive_entry_strmode.c \ |
| libarchive/archive_entry_xattr.c \ |
| libarchive/archive_getdate.c \ |
| libarchive/archive_hmac.c \ |
| libarchive/archive_match.c \ |
| libarchive/archive_options.c \ |
| libarchive/archive_pack_dev.c \ |
| libarchive/archive_pathmatch.c \ |
| libarchive/archive_ppmd7.c \ |
| libarchive/archive_random.c \ |
| libarchive/archive_rb.c \ |
| libarchive/archive_read.c \ |
| libarchive/archive_read_add_passphrase.c \ |
| libarchive/archive_read_append_filter.c \ |
| libarchive/archive_read_data_into_fd.c \ |
| libarchive/archive_read_disk_entry_from_file.c \ |
| libarchive/archive_read_disk_posix.c \ |
| libarchive/archive_read_disk_set_standard_lookup.c \ |
| libarchive/archive_read_extract.c \ |
| libarchive/archive_read_extract2.c \ |
| libarchive/archive_read_open_fd.c \ |
| libarchive/archive_read_open_file.c \ |
| libarchive/archive_read_open_filename.c \ |
| libarchive/archive_read_open_memory.c \ |
| libarchive/archive_read_set_format.c \ |
| libarchive/archive_read_set_options.c \ |
| libarchive/archive_read_support_filter_all.c \ |
| libarchive/archive_read_support_filter_bzip2.c \ |
| libarchive/archive_read_support_filter_compress.c \ |
| libarchive/archive_read_support_filter_grzip.c \ |
| libarchive/archive_read_support_filter_gzip.c \ |
| libarchive/archive_read_support_filter_lrzip.c \ |
| libarchive/archive_read_support_filter_lz4.c \ |
| libarchive/archive_read_support_filter_lzop.c \ |
| libarchive/archive_read_support_filter_none.c \ |
| libarchive/archive_read_support_filter_program.c \ |
| libarchive/archive_read_support_filter_rpm.c \ |
| libarchive/archive_read_support_filter_uu.c \ |
| libarchive/archive_read_support_filter_xz.c \ |
| libarchive/archive_read_support_format_7zip.c \ |
| libarchive/archive_read_support_format_all.c \ |
| libarchive/archive_read_support_format_ar.c \ |
| libarchive/archive_read_support_format_by_code.c \ |
| libarchive/archive_read_support_format_cab.c \ |
| libarchive/archive_read_support_format_cpio.c \ |
| libarchive/archive_read_support_format_empty.c \ |
| libarchive/archive_read_support_format_iso9660.c \ |
| libarchive/archive_read_support_format_lha.c \ |
| libarchive/archive_read_support_format_mtree.c \ |
| libarchive/archive_read_support_format_rar.c \ |
| libarchive/archive_read_support_format_raw.c \ |
| libarchive/archive_read_support_format_tar.c \ |
| libarchive/archive_read_support_format_warc.c \ |
| libarchive/archive_read_support_format_xar.c \ |
| libarchive/archive_read_support_format_zip.c \ |
| libarchive/archive_string.c \ |
| libarchive/archive_string_sprintf.c \ |
| libarchive/archive_util.c \ |
| libarchive/archive_virtual.c \ |
| libarchive/archive_write.c \ |
| libarchive/archive_write_disk_acl.c \ |
| libarchive/archive_write_disk_posix.c \ |
| libarchive/archive_write_disk_set_standard_lookup.c \ |
| libarchive/archive_write_open_fd.c \ |
| libarchive/archive_write_open_file.c \ |
| libarchive/archive_write_open_filename.c \ |
| libarchive/archive_write_open_memory.c \ |
| libarchive/archive_write_add_filter.c \ |
| libarchive/archive_write_add_filter_b64encode.c \ |
| libarchive/archive_write_add_filter_by_name.c \ |
| libarchive/archive_write_add_filter_bzip2.c \ |
| libarchive/archive_write_add_filter_compress.c \ |
| libarchive/archive_write_add_filter_grzip.c \ |
| libarchive/archive_write_add_filter_gzip.c \ |
| libarchive/archive_write_add_filter_lrzip.c \ |
| libarchive/archive_write_add_filter_lz4.c \ |
| libarchive/archive_write_add_filter_lzop.c \ |
| libarchive/archive_write_add_filter_none.c \ |
| libarchive/archive_write_add_filter_program.c \ |
| libarchive/archive_write_add_filter_uuencode.c \ |
| libarchive/archive_write_add_filter_xz.c \ |
| libarchive/archive_write_set_format.c \ |
| libarchive/archive_write_set_format_7zip.c \ |
| libarchive/archive_write_set_format_ar.c \ |
| libarchive/archive_write_set_format_by_name.c \ |
| libarchive/archive_write_set_format_cpio.c \ |
| libarchive/archive_write_set_format_cpio_newc.c \ |
| libarchive/archive_write_set_format_iso9660.c \ |
| libarchive/archive_write_set_format_mtree.c \ |
| libarchive/archive_write_set_format_pax.c \ |
| libarchive/archive_write_set_format_raw.c \ |
| libarchive/archive_write_set_format_shar.c \ |
| libarchive/archive_write_set_format_ustar.c \ |
| libarchive/archive_write_set_format_v7tar.c \ |
| libarchive/archive_write_set_format_gnutar.c \ |
| libarchive/archive_write_set_format_warc.c \ |
| libarchive/archive_write_set_format_xar.c \ |
| libarchive/archive_write_set_format_zip.c \ |
| libarchive/archive_write_set_options.c \ |
| libarchive/archive_write_set_passphrase.c \ |
| libarchive/filter_fork_posix.c \ |
| libarchive/xxhash.c |
| |
| ifeq ($(HOST_OS),windows) |
| libarchive_host_src_files := \ |
| libarchive/archive_entry_copy_bhfi.c \ |
| libarchive/archive_read_disk_windows.c \ |
| libarchive/archive_write_disk_windows.c \ |
| libarchive/filter_fork_windows.c \ |
| libarchive/archive_windows.c |
| else |
| libarchive_host_src_files := |
| endif |
| |
| libarchive_fe_src_files := libarchive_fe/err.c \ |
| libarchive_fe/line_reader.c \ |
| libarchive_fe/passphrase.c |
| |
| bsdtar_src_files := tar/bsdtar.c \ |
| tar/bsdtar_windows.c \ |
| tar/cmdline.c \ |
| tar/creation_set.c \ |
| tar/read.c \ |
| tar/subst.c \ |
| tar/util.c \ |
| tar/write.c |
| |
| bsdcpio_src_files := cpio/cmdline.c \ |
| cpio/cpio.c |
| |
| bsdcat_src_files := cat/cmdline.c \ |
| cat/bsdcat.c |
| |
| |
| ifeq ($(HOST_OS),darwin) |
| $(warning Host : $(HOST_OS) Not Supported. Host Build Will Be Skipped ) |
| else |
| libarchive_host_config := contrib/android/config/$(HOST_OS)_host.h |
| |
| include $(CLEAR_VARS) |
| LOCAL_MODULE := libarchive |
| LOCAL_MODULE_TAGS := optional |
| LOCAL_SRC_FILES := $(libarchive_src_files) $(libarchive_host_src_files) |
| LOCAL_CFLAGS := -DPLATFORM_CONFIG_H=\"$(libarchive_host_config)\" |
| LOCAL_C_INCLUDES := $(LOCAL_PATH)/contrib/android/include |
| LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/libarchive |
| include $(BUILD_HOST_STATIC_LIBRARY) |
| |
| include $(CLEAR_VARS) |
| LOCAL_MODULE := libarchive |
| LOCAL_MODULE_TAGS := optional |
| LOCAL_CFLAGS := -DPLATFORM_CONFIG_H=\"$(libarchive_host_config)\" |
| LOCAL_SHARED_LIBRARIES := libz-host |
| LOCAL_WHOLE_STATIC_LIBRARIES := libarchive |
| LOCAL_C_INCLUDES := $(LOCAL_PATH)/contrib/android/include |
| LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/libarchive |
| include $(BUILD_HOST_SHARED_LIBRARY) |
| |
| include $(CLEAR_VARS) |
| LOCAL_MODULE := libarchive_fe |
| LOCAL_MODULE_TAGS := optional |
| LOCAL_CFLAGS := -DPLATFORM_CONFIG_H=\"$(libarchive_host_config)\" |
| LOCAL_SRC_FILES := $(libarchive_fe_src_files) |
| LOCAL_C_INCLUDES := $(LOCAL_PATH)/contrib/android/include |
| LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/libarchive_fe |
| include $(BUILD_HOST_STATIC_LIBRARY) |
| |
| endif |
| |
| |
| # Do not build target binaries if we are not targeting linux |
| # on the host |
| ifeq ($(HOST_OS),linux) |
| |
| include $(CLEAR_VARS) |
| LOCAL_MODULE := bsdtar |
| LOCAL_MODULE_TAGS := optional |
| LOCAL_CFLAGS := -DBSDTAR_VERSION_STRING=ARCHIVE_VERSION_ONLY_STRING -DPLATFORM_CONFIG_H=\"$(libarchive_host_config)\" |
| LOCAL_SHARED_LIBRARIES := libz-host |
| LOCAL_STATIC_LIBRARIES := libarchive libarchive_fe |
| LOCAL_SRC_FILES := $(bsdtar_src_files) |
| LOCAL_C_INCLUDES := $(LOCAL_PATH)/contrib/android/include |
| include $(BUILD_HOST_EXECUTABLE) |
| |
| include $(CLEAR_VARS) |
| LOCAL_MODULE := bsdcpio |
| LOCAL_MODULE_TAGS := optional |
| LOCAL_CFLAGS := -DBSDCPIO_VERSION_STRING=ARCHIVE_VERSION_ONLY_STRING -DPLATFORM_CONFIG_H=\"$(libarchive_host_config)\" |
| LOCAL_SHARED_LIBRARIES := libz-host |
| LOCAL_STATIC_LIBRARIES := libarchive libarchive_fe |
| LOCAL_SRC_FILES := $(bsdcpio_src_files) |
| LOCAL_C_INCLUDES := $(LOCAL_PATH)/contrib/android/include |
| include $(BUILD_HOST_EXECUTABLE) |
| |
| include $(CLEAR_VARS) |
| LOCAL_MODULE := bsdcat |
| LOCAL_MODULE_TAGS := optional |
| LOCAL_CFLAGS := -DBSDCAT_VERSION_STRING=ARCHIVE_VERSION_ONLY_STRING -DPLATFORM_CONFIG_H=\"$(libarchive_host_config)\" |
| LOCAL_SHARED_LIBRARIES := libz-host |
| LOCAL_STATIC_LIBRARIES := libarchive libarchive_fe |
| LOCAL_SRC_FILES := $(bsdcat_src_files) |
| LOCAL_C_INCLUDES := $(LOCAL_PATH)/contrib/android/include |
| include $(BUILD_HOST_EXECUTABLE) |
| |
| |
| |
| include $(CLEAR_VARS) |
| LOCAL_MODULE := libarchive |
| LOCAL_MODULE_TAGS := optional |
| LOCAL_SRC_FILES := $(libarchive_src_files) |
| LOCAL_STATIC_LIBRARIES := libz liblz4 |
| LOCAL_CFLAGS := -DPLATFORM_CONFIG_H=\"$(libarchive_target_config)\" |
| LOCAL_C_INCLUDES := $(LOCAL_PATH)/contrib/android/include |
| LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/libarchive |
| include $(BUILD_STATIC_LIBRARY) |
| |
| |
| include $(CLEAR_VARS) |
| LOCAL_MODULE := libarchive |
| LOCAL_MODULE_TAGS := optional |
| LOCAL_C_INCLUDES := |
| LOCAL_CFLAGS := -DPLATFORM_CONFIG_H=\"$(libarchive_target_config)\" |
| LOCAL_SHARED_LIBRARIES := libz |
| LOCAL_WHOLE_STATIC_LIBRARIES := libarchive |
| LOCAL_C_INCLUDES := $(LOCAL_PATH)/contrib/android/include |
| LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/libarchive |
| include $(BUILD_SHARED_LIBRARY) |
| |
| include $(CLEAR_VARS) |
| LOCAL_MODULE := libarchive_fe |
| LOCAL_MODULE_TAGS := optional |
| LOCAL_CFLAGS := -DPLATFORM_CONFIG_H=\"$(libarchive_target_config)\" |
| LOCAL_SRC_FILES := $(libarchive_fe_src_files) |
| LOCAL_C_INCLUDES := $(LOCAL_PATH)/contrib/android/include |
| LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/libarchive_fe |
| include $(BUILD_STATIC_LIBRARY) |
| |
| |
| include $(CLEAR_VARS) |
| LOCAL_MODULE := bsdtar |
| LOCAL_MODULE_TAGS := optional |
| LOCAL_CFLAGS := -DBSDTAR_VERSION_STRING=ARCHIVE_VERSION_ONLY_STRING -DPLATFORM_CONFIG_H=\"$(libarchive_target_config)\" |
| LOCAL_SHARED_LIBRARIES := libz |
| LOCAL_STATIC_LIBRARIES := libarchive libarchive_fe |
| LOCAL_SRC_FILES := $(bsdtar_src_files) |
| LOCAL_C_INCLUDES := $(LOCAL_PATH)/libarchive $(LOCAL_PATH)/libarchive_fe $(LOCAL_PATH)/contrib/android/include |
| include $(BUILD_EXECUTABLE) |
| |
| include $(CLEAR_VARS) |
| LOCAL_MODULE := bsdcpio |
| LOCAL_MODULE_TAGS := optional |
| LOCAL_CFLAGS := -DBSDCPIO_VERSION_STRING=ARCHIVE_VERSION_ONLY_STRING -DPLATFORM_CONFIG_H=\"$(libarchive_target_config)\" |
| LOCAL_SHARED_LIBRARIES := libz |
| LOCAL_STATIC_LIBRARIES := libarchive libarchive_fe |
| LOCAL_SRC_FILES := $(bsdcpio_src_files) |
| LOCAL_C_INCLUDES := $(LOCAL_PATH)/libarchive $(LOCAL_PATH)/libarchive_fe $(LOCAL_PATH)/contrib/android/include |
| include $(BUILD_EXECUTABLE) |
| |
| include $(CLEAR_VARS) |
| LOCAL_MODULE := bsdcat |
| LOCAL_MODULE_TAGS := optional |
| LOCAL_CFLAGS := -DBSDCAT_VERSION_STRING=ARCHIVE_VERSION_ONLY_STRING -DPLATFORM_CONFIG_H=\"$(libarchive_target_config)\" |
| LOCAL_SHARED_LIBRARIES := libz |
| LOCAL_STATIC_LIBRARIES := libarchive libarchive_fe |
| LOCAL_SRC_FILES := $(bsdcat_src_files) |
| LOCAL_C_INCLUDES := $(LOCAL_PATH)/libarchive $(LOCAL_PATH)/libarchive_fe $(LOCAL_PATH)/contrib/android/include |
| include $(BUILD_EXECUTABLE) |
| |
| endif |