summaryrefslogtreecommitdiff
path: root/filesystems/lkl
diff options
context:
space:
mode:
Diffstat (limited to 'filesystems/lkl')
-rw-r--r--filesystems/lkl/Makefile42
-rw-r--r--filesystems/lkl/distinfo3
-rw-r--r--filesystems/lkl/files/patch-Makefile15
-rw-r--r--filesystems/lkl/files/patch-Targets18
-rw-r--r--filesystems/lkl/pkg-descr1
5 files changed, 79 insertions, 0 deletions
diff --git a/filesystems/lkl/Makefile b/filesystems/lkl/Makefile
new file mode 100644
index 000000000000..c56be9005f7e
--- /dev/null
+++ b/filesystems/lkl/Makefile
@@ -0,0 +1,42 @@
+PORTNAME= lkl
+DISTVERSION= 4.16.g20180628
+PORTREVISION= 4
+CATEGORIES= filesystems
+PKGNAMEPREFIX= fusefs-
+
+MAINTAINER= cem@FreeBSD.org
+COMMENT= Full-featured Linux BTRFS, Ext4, XFS as a FUSE module
+WWW= https://github.com/lkl/linux/
+
+LICENSE= GPLv2
+
+BUILD_DEPENDS= gnubc>0:math/gnubc \
+ gnustat:sysutils/coreutils \
+ gsed:textproc/gsed
+
+USES= bison:build fuse gmake python:build shebangfix
+SHEBANG_FILES= ../../arch/lkl/scripts/headers_install.py
+BINARY_ALIAS= sed=gsed \
+ stat=gnustat
+USE_BINUTILS= yes:build
+USE_GCC= yes:build
+USE_GITHUB= yes
+GH_PROJECT= linux
+GH_TAGNAME= 86dd3afb590eccc1903611bdaa8bac87757eb80d
+
+ONLY_FOR_ARCHS= amd64
+ONLY_FOR_ARCHS_REASON=ld formats not available for other architectures
+
+WRKSRC_SUBDIR= tools/lkl
+MAKE_JOBS_UNSAFE=yes
+MAKE_ARGS+= V=1
+# Need ports versions of 'bc', 'ld' to build!
+MAKE_ARGS+= PATH="${LOCALBASE}/bin:${PATH}" CC="${CC}" HOSTCC="${CC}"
+
+PLIST_FILES= bin/lklfuse lib/liblkl.a
+
+do-install:
+ ${INSTALL_PROGRAM} ${WRKSRC}/lklfuse ${STAGEDIR}${PREFIX}/bin
+ ${INSTALL_DATA} ${WRKSRC}/liblkl.a ${STAGEDIR}${PREFIX}/lib
+
+.include <bsd.port.mk>
diff --git a/filesystems/lkl/distinfo b/filesystems/lkl/distinfo
new file mode 100644
index 000000000000..3a765d45de46
--- /dev/null
+++ b/filesystems/lkl/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1530225787
+SHA256 (lkl-linux-4.16.g20180628-86dd3afb590eccc1903611bdaa8bac87757eb80d_GH0.tar.gz) = d63cccf64ab8938389b0054e3e68ee467100bfc98475b1864ab7dac542d51317
+SIZE (lkl-linux-4.16.g20180628-86dd3afb590eccc1903611bdaa8bac87757eb80d_GH0.tar.gz) = 164254140
diff --git a/filesystems/lkl/files/patch-Makefile b/filesystems/lkl/files/patch-Makefile
new file mode 100644
index 000000000000..09b164e2c5f6
--- /dev/null
+++ b/filesystems/lkl/files/patch-Makefile
@@ -0,0 +1,15 @@
+--- Makefile.orig 2018-06-12 22:43:19 UTC
++++ Makefile
+@@ -61,10 +61,10 @@ endif
+
+ # rule to build lkl.o
+ $(OUTPUT)lib/lkl.o: bin/stat
+- $(Q)$(MAKE) -C ../.. ARCH=lkl $(KOPT) $(KCONFIG)
++ $(Q)$(MAKE) -C ../.. ARCH=lkl LDFLAGS= $(KOPT) $(KCONFIG)
+ # this workaround is for arm32 linker (ld.gold)
+ $(Q)export PATH=$(srctree)/tools/lkl/bin/:${PATH} ;\
+- $(MAKE) -C ../.. ARCH=lkl $(KOPT) install INSTALL_PATH=$(OUTPUT)
++ $(MAKE) -C ../.. ARCH=lkl LDFLAGS= $(KOPT) install INSTALL_PATH=$(OUTPUT)
+
+ # rules to link libs
+ $(OUTPUT)%$(SOSUF): LDFLAGS += -shared
diff --git a/filesystems/lkl/files/patch-Targets b/filesystems/lkl/files/patch-Targets
new file mode 100644
index 000000000000..e1fe24075c09
--- /dev/null
+++ b/filesystems/lkl/files/patch-Targets
@@ -0,0 +1,18 @@
+--- Targets.orig 2018-06-12 22:43:19 UTC
++++ Targets
+@@ -10,15 +10,6 @@ LDLIBS_lib/hijack/liblkl-hijack-$(LKL_HOST_CONFIG_ANDR
+ progs-$(LKL_HOST_CONFIG_FUSE) += lklfuse
+ LDLIBS_lklfuse-y := -lfuse
+
+-progs-$(LKL_HOST_CONFIG_ARCHIVE) += fs2tar
+-LDLIBS_fs2tar-y := -larchive
+-LDLIBS_fs2tar-$(LKL_HOST_CONFIG_NEEDS_LARGP) += -largp
+-
+-
+-progs-$(LKL_HOST_CONFIG_ARCHIVE) += cptofs
+-LDLIBS_cptofs-y := -larchive
+-LDLIBS_cptofs-$(LKL_HOST_CONFIG_NEEDS_LARGP) += -largp
+-
+ progs-y += tests/boot
+ progs-y += tests/disk
+ progs-y += tests/net-test
diff --git a/filesystems/lkl/pkg-descr b/filesystems/lkl/pkg-descr
new file mode 100644
index 000000000000..bee83838ac5e
--- /dev/null
+++ b/filesystems/lkl/pkg-descr
@@ -0,0 +1 @@
+Linux as a library; and BTRFS, Ext4, and XFS for FUSE.