genode/repos/libports/ports/e2fsprogs-lib.port
Josef Söntgen d9f6882a2a libports: update e2fsprogs to 1.46.5
Brings in Ext4 support.

Fixes #4524.
2022-08-10 13:32:57 +02:00

88 lines
3.1 KiB
Plaintext

LICENSE := GPLv2
VERSION := 1.46.5
DOWNLOADS := e2fsprogs.git
E2FSPROGS_DIR := src/lib/e2fsprogs
URL(e2fsprogs) := https://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git
REV(e2fsprogs) := v$(VERSION)
DIR(e2fsprogs) := $(E2FSPROGS_DIR)
PATCHES := src/lib/e2fsprogs/patches/*.patch
INCLUDE_DIR := include/e2fsprogs
DIRS := $(INCLUDE_DIR)
# arbitrary dummy header to keep the ports tool happy
DIR_CONTENT($(INCLUDE_DIR)) := \
$(addprefix $(E2FSPROGS_DIR)/lib/ext2fs/,ext2fs.h)
#
# Generate header files
#
BLKID_HEADER := $(INCLUDE_DIR)/blkid/blkid.h
EXT2FS_HEADER := $(INCLUDE_DIR)/ext2fs/ext2_types.h
UUID_HEADER := $(INCLUDE_DIR)/uuid/uuid.h
DEFAULT_PROFILE_C := $(addsuffix /misc/default_profile.c, $(E2FSPROGS_DIR))
_dirs: \
$(BLKID_HEADER) \
$(EXT2FS_HEADER) \
$(UUID_HEADER) \
$(DEFAULT_PROFILE_C)
$(BLKID_HEADER):
@$(MSG_GENERATE)$(notdir $@)
$(VERBOSE)mkdir -p $(dir $@)
$(VERBOSE)cp $(E2FSPROGS_DIR)/lib/blkid/blkid.h.in $@
$(VERBOSE)sed -e 's,@''SIZEOF_INT''@,__SIZEOF_INT__,g' \
-e 's,@''SIZEOF_LONG''@,__SIZEOF_LONG__,g' \
-e 's,@''SIZEOF_LONG_LONG''@,__SIZEOF_LONG_LONG__,g' \
-e 's,@''SIZEOF_SHORT''@,__SIZEOF_SHORT__,g' \
-e 's,@''ASM_TYPES_HEADER''@,,g' \
< $(E2FSPROGS_DIR)/lib/blkid/blkid_types.h.in > $(dir $@)/blkid_types.h
$(UUID_HEADER):
@$(MSG_GENERATE)$(notdir $@)
$(VERBOSE)mkdir -p $(dir $@)
$(VERBOSE)cp $(E2FSPROGS_DIR)/lib/uuid/uuid.h.in $@
$(VERBOSE)sed -e 's,@''SIZEOF_INT''@,__SIZEOF_INT__,g' \
-e 's,@''SIZEOF_LONG''@,__SIZEOF_LONG__,g' \
-e 's,@''SIZEOF_LONG_LONG''@,__SIZEOF_LONG_LONG__,g' \
-e 's,@''SIZEOF_SHORT''@,__SIZEOF_SHORT__,g' \
< $(E2FSPROGS_DIR)/lib/uuid/uuid_types.h.in > $(dir $@)/uuid_types.h
$(EXT2FS_HEADER):
$(VERBOSE)sed -e 's,@''E2FSPROGS_VERSION''@,$(VERSION),g' \
< $(E2FSPROGS_DIR)/lib/ext2fs/ext2_err.et.in \
> $(E2FSPROGS_DIR)/lib/ext2fs/ext2_err.et && \
for file in lib/ext2fs/ext2_err lib/support/prof_err; do \
$(MSG_GENERATE)$${file}.h && \
gawk -f $(E2FSPROGS_DIR)/lib/et/et_h.awk \
"outfile=$(E2FSPROGS_DIR)/$${file}.h" \
$(E2FSPROGS_DIR)/$${file}.et && \
$(MSG_GENERATE)$${file}.c && \
gawk -f $(E2FSPROGS_DIR)/lib/et/et_c.awk \
"outfile=$(E2FSPROGS_DIR)/$${file}.c" \
$(E2FSPROGS_DIR)/$${file}.et; \
done
@$(MSG_GENERATE)$(notdir $@)
$(VERBOSE)mkdir -p $(dir $@)
$(VERBOSE)sed -e 's,@''SIZEOF_INT''@,__SIZEOF_INT__,g' \
-e 's,@''SIZEOF_LONG''@,__SIZEOF_LONG__,g' \
-e 's,@''SIZEOF_LONG_LONG''@,__SIZEOF_LONG_LONG__,g' \
-e 's,@''SIZEOF_SHORT''@,__SIZEOF_SHORT__,g' \
-e 's,@''ASM_TYPES_HEADER''@,,g' \
-e 's,@''PUBLIC_CONFIG_HEADER''@,,g' \
< $(E2FSPROGS_DIR)/lib/ext2fs/ext2_types.h.in > $@
@echo '#define HAVE_SYS_TYPES_H 1' >> $@
@echo '#undef WORDS_BIGENDIAN' >> $@
$(DEFAULT_PROFILE_C):
@$(MSG_GENERATE)$(notdir $@)
@gawk -f $(E2FSPROGS_DIR)/misc/profile-to-c.awk \
< $(E2FSPROGS_DIR)/misc/mke2fs.conf.in \
> $@