aboutsummaryrefslogtreecommitdiff
path: root/devel
diff options
context:
space:
mode:
authorJuergen Lock <nox@FreeBSD.org>2014-03-18 19:50:47 +0000
committerJuergen Lock <nox@FreeBSD.org>2014-03-18 19:50:47 +0000
commitae2627214285c05a4104fd9c6bf51e63af066bd0 (patch)
tree0011a6ac3384ddc550be9c5ad10505f223fe9c6e /devel
parent483f554b0cb564e051b19d1f25c66f18a0df93fa (diff)
Notes
Diffstat (limited to 'devel')
-rw-r--r--devel/Makefile1
-rw-r--r--devel/linux_libusb/Makefile85
-rw-r--r--devel/linux_libusb/distinfo2
-rw-r--r--devel/linux_libusb/pkg-descr12
4 files changed, 100 insertions, 0 deletions
diff --git a/devel/Makefile b/devel/Makefile
index 8f647ade4016..bbdc8ddd915d 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -1163,6 +1163,7 @@
SUBDIR += linux-f10-sdl12
SUBDIR += linux-kmod-compat
SUBDIR += linux_kdump
+ SUBDIR += linux_libusb
SUBDIR += lion
SUBDIR += llnextgen
SUBDIR += llvm-devel
diff --git a/devel/linux_libusb/Makefile b/devel/linux_libusb/Makefile
new file mode 100644
index 000000000000..5c2ffc417654
--- /dev/null
+++ b/devel/linux_libusb/Makefile
@@ -0,0 +1,85 @@
+# Created by: nox@FreeBSD.org
+# $FreeBSD$
+
+PORTNAME= linux_libusb
+PORTVERSION= 11.0r${FSVN_REV}
+PORTREVISION= 1
+CATEGORIES= devel linux
+MASTER_SITES= LOCAL/nox
+
+MAINTAINER= emulation@FreeBSD.org
+COMMENT= Linux-compatibility libusb
+
+#BUILD_DEPENDS= ${LINUXBASE}/usr/bin/gcc:${PORTSDIR}/emulators/linux_base-gentoo-stage3
+BUILD_DEPENDS= ${LINUXBASE}/usr/bin/gcc:${PORTSDIR}/devel/linux-f10-devtools
+
+USES= tar:bzip2
+ONLY_FOR_ARCHS= i386 amd64
+USE_LINUX_PREFIX= yes
+PLIST_FILES= usr/lib/libusb.so \
+ usr/lib/libusb-0.1.so.4 \
+ "@exec ${LDCONFIG_CMD}" \
+ "@unexec ${LDCONFIG_CMD}"
+CC= ${LINUXBASE}/usr/bin/gcc
+CFLAGS+= -I${WRKDIR}/sys
+MAKE_ARGS+= LIBUSB_GLOBAL_INCLUDE_FILE=libusb_global_linux.h
+MAKE_ARGS+= PTHREAD_LIBS="-lpthread -lrt"
+# XXX ${LINUXBASE}/usr/bin/ld is a broken link with gentoo atm?
+#MAKE_ENV+= COMPILER_PATH=/usr/i486-pc-linux-gnu/binutils-bin/2.22
+
+# see: sysutils/pc-sysinstall/Makefile
+FSVN_REV= 261448
+FSVNPATH?= http://svn.freebsd.org/base/head
+FSVNDIR= lib/libusb
+
+.include <bsd.port.pre.mk>
+
+.if ${ARCH} == "amd64"
+MAKE_ARGS+= COMPAT_32BIT=YES
+.endif
+
+pre-everything::
+ @${ECHO_MSG} '===> Using the FreeBSD source tree under ${SRC_BASE}'
+ @${ECHO_MSG} '===> Set SRC_BASE to use an alternate source tree'
+
+.if ${OSVERSION} < 1000000
+IGNORE= doesn't build on < 10.x
+.endif
+.if !exists(${SRC_BASE}/sys/i386/linux/syscalls.master)
+IGNORE= requires kernel source present in ${SRC_BASE}/sys
+.endif
+#.if !exists(${SRC_BASE}/lib/libusb/Makefile)
+#IGNORE= requires libusb source present in ${SRC_BASE}/lib/libusb
+#.endif
+#.if exists(${LINUXBASE}/etc/fedora-release)
+#IGNORE= does not build with the default linux base, use the package instead
+#.endif
+
+post-patch:
+ ${MKDIR} ${WRKDIR}/sys
+ ${LN} -s ${SRC_BASE}/sys/compat ${SRC_BASE}/sys/dev ${WRKDIR}/sys
+
+# XXX: Due to problems with ports/ infrastructure, we don't seem to be able
+# to symlink files. I provide hardlink instead. If fixed, remember to remove
+# link name from PLIST_FILES.
+do-install:
+ ${MKDIR} ${STAGEDIR}${PREFIX}/usr/lib
+ ${INSTALL_DATA} ${WRKSRC}/libusb.so ${STAGEDIR}${PREFIX}/usr/lib
+# Xilinx ISE requirement.
+ ${LN} -f ${STAGEDIR}${PREFIX}/usr/lib/libusb.so ${STAGEDIR}${PREFIX}/usr/lib/libusb-0.1.so.4
+
+.if defined(BOOTSTRAP) || defined(SVN_FETCH)
+#FETCH_DEPENDS+= svn:${PORTSDIR}/devel/subversion
+SVN?= svnlite
+
+do-fetch:
+ ${MKDIR} ${WRKDIR}
+ ${SVN} export -r ${FSVN_REV} ${FSVNPATH}/${FSVNDIR} ${WRKDIR}/${DISTNAME}
+ cd ${WRKDIR}; tar cvfy ${DISTDIR}/${DISTNAME}.tar.bz2 ${DISTNAME}
+.if ${USER} == noxNOTYET
+ scp ${DISTDIR}/${DISTNAME}.tar.bz2 \
+ nox@freefall.freebsd.org:public_distfiles/
+.endif
+.endif
+
+.include <bsd.port.post.mk>
diff --git a/devel/linux_libusb/distinfo b/devel/linux_libusb/distinfo
new file mode 100644
index 000000000000..d0d3519ff6ab
--- /dev/null
+++ b/devel/linux_libusb/distinfo
@@ -0,0 +1,2 @@
+SHA256 (linux_libusb-11.0r261448.tar.bz2) = e1013ccd0181e00a55bb786be54d125b71462492442122350d820b98fef97f81
+SIZE (linux_libusb-11.0r261448.tar.bz2) = 45739
diff --git a/devel/linux_libusb/pkg-descr b/devel/linux_libusb/pkg-descr
new file mode 100644
index 000000000000..ba773069aa58
--- /dev/null
+++ b/devel/linux_libusb/pkg-descr
@@ -0,0 +1,12 @@
+linux-libusb takes advantage of FreeBSD libusb(8) library, which got
+prepared to work correctly within linux(4) emulation layer. It lets
+you to take Linux binary linked with libusb.so and use it on
+FreeBSD.
+
+Additional information: This port has been prepared under FreeBSD
+with kern.osreldate = 1000510. It relies on the fact the libusb(8)
+API seems to be stable and no changes have been made to internal API
+for a long time. If this assumption isn't true, port won't work.
+Please submit bug report to the port maintainter in that case.
+
+WWW: http://lists.freebsd.org/pipermail/freebsd-usb/2014-March/012854.html