Index: devel/libepoll-shim/Makefile =================================================================== --- devel/libepoll-shim/Makefile (revision 525670) +++ devel/libepoll-shim/Makefile (working copy) @@ -2,34 +2,32 @@ # $FreeBSD$ PORTNAME= libepoll-shim -PORTVERSION= 0.0.20190311 +PORTVERSION= 0.0.20191117 CATEGORIES= devel MAINTAINER= x11@FreeBSD.org -COMMENT= epoll shim implemented using kevent +COMMENT= Small epoll implementation using kqueue LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE +USES= cmake compiler:c11 +USE_LDCONFIG= yes USE_GITHUB= yes -GH_ACCOUNT= FreeBSDDesktop +GH_ACCOUNT= jiixyj GH_PROJECT= epoll-shim -GH_TAGNAME= 1d1135384395dbf38eea00680ca28ead04f8dce2 +GH_TAGNAME= 1f003fa40f8ac3858dcc474b96cc4aee5820dcd2 -USE_LDCONFIG= yes +do-test: + # Exclude certain tests in resource restricted environments + @(if [ `ulimit -n` -lt 20100 ]; then \ + SKIP_TESTS="-E ^(perf-many-fds.perf_many_fds__perf"; \ + if [ `ulimit -n` -lt 1100 ]; then \ + SKIP_TESTS=$$SKIP_TESTS"|timerfd-test.timerfd__many_timers"; \ + fi; \ + SKIP_TESTS=$$SKIP_TESTS")$$"; \ + fi; \ + cd ${TEST_WRKSRC} && \ + ${SETENV} ${TEST_ENV} ctest -C ${CMAKE_BUILD_TYPE} $$SKIP_TESTS) -USES= compiler uidfix -MAKE_ARGS= WITHOUT_PROFILE=yes - -.include - -post-patch: - @${REINPLACE_CMD} -e 's,/usr/local,${PREFIX},' ${WRKSRC}/Makefile -.if "${CHOSEN_COMPILER_TYPE}" == "gcc" - @${REINPLACE_CMD} -e 's|Wno-missing-variable-declarations|Wno-missing-declarations|' \ - -e 's|-Wno-thread-safety-analysis||' ${WRKSRC}/Makefile -.endif - -pre-install: - @${MKDIR} ${STAGEDIR}/${PREFIX}/include/libepoll-shim/sys - -.include +.include Index: devel/libepoll-shim/distinfo =================================================================== --- devel/libepoll-shim/distinfo (revision 525670) +++ devel/libepoll-shim/distinfo (working copy) @@ -1,3 +1,3 @@ -TIMESTAMP = 1554794906 -SHA256 (FreeBSDDesktop-epoll-shim-0.0.20190311-1d1135384395dbf38eea00680ca28ead04f8dce2_GH0.tar.gz) = 689aaf4a6f8f14a715986f03c283cbabf404a2ac5370ad6430f28cc8e101b554 -SIZE (FreeBSDDesktop-epoll-shim-0.0.20190311-1d1135384395dbf38eea00680ca28ead04f8dce2_GH0.tar.gz) = 16341 +TIMESTAMP = 1577836295 +SHA256 (jiixyj-epoll-shim-0.0.20191117-1f003fa40f8ac3858dcc474b96cc4aee5820dcd2_GH0.tar.gz) = 30b8804f4ef26b0a67967f00824cb5e922721165219ece2069a48ccc10977903 +SIZE (jiixyj-epoll-shim-0.0.20191117-1f003fa40f8ac3858dcc474b96cc4aee5820dcd2_GH0.tar.gz) = 39514 Index: devel/libepoll-shim/files/patch-test_epoll-test.c =================================================================== --- devel/libepoll-shim/files/patch-test_epoll-test.c (nonexistent) +++ devel/libepoll-shim/files/patch-test_epoll-test.c (working copy) @@ -0,0 +1,18 @@ +https://github.com/jiixyj/epoll-shim/pull/14 +--- test/epoll-test.c.orig 2019-11-17 16:39:19 UTC ++++ test/epoll-test.c +@@ -222,12 +222,9 @@ ATF_TC_WITHOUT_HEAD(epoll__event_size); + ATF_TC_BODY_FD_LEAKCHECK(epoll__event_size, tc) + { + struct epoll_event event; +-#if defined(__amd64__) ++ // this check works on 32bit _and_ 64bit, since ++ // sizeof(epoll_event) == sizeof(uint32_t) + sizeof(uint64_t) + ATF_REQUIRE(sizeof(event) == 12); +-#else +- // TODO(jan): test for other architectures +- abort(); +-#endif + } + + static void Property changes on: devel/libepoll-shim/files/patch-test_epoll-test.c ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: devel/libepoll-shim/files/patch-test_tst-eventfd.c =================================================================== --- devel/libepoll-shim/files/patch-test_tst-eventfd.c (nonexistent) +++ devel/libepoll-shim/files/patch-test_tst-eventfd.c (working copy) @@ -0,0 +1,14 @@ +https://github.com/jiixyj/epoll-shim/pull/14 +--- test/tst-eventfd.c.orig 2019-11-17 16:39:19 UTC ++++ test/tst-eventfd.c +@@ -351,8 +351,8 @@ int poll_test(void) + /* write to event and check read poll */ + c = 1; + s = write(efd, &c, sizeof(c)); +- if (s != sizeof(s)) { +- handle_error(""); ++ if (s != sizeof(c)) { ++ handle_error("failed to write event."); + } + + #ifndef __FreeBSD__ Property changes on: devel/libepoll-shim/files/patch-test_tst-eventfd.c ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: devel/libepoll-shim/pkg-descr =================================================================== --- devel/libepoll-shim/pkg-descr (revision 525670) +++ devel/libepoll-shim/pkg-descr (working copy) @@ -1 +1,5 @@ -epoll shim implemented using kevent. +epoll-shim is a small library that implements epoll on top of kqueue. It +has been successfully used to port libinput, libevdev, Wayland and more +software to FreeBSD. + +WWW: https://github.com/jiixyj/epoll-shim Index: devel/libepoll-shim/pkg-plist =================================================================== --- devel/libepoll-shim/pkg-plist (revision 525670) +++ devel/libepoll-shim/pkg-plist (working copy) @@ -1,7 +1,10 @@ include/libepoll-shim/sys/epoll.h +include/libepoll-shim/sys/eventfd.h include/libepoll-shim/sys/signalfd.h include/libepoll-shim/sys/timerfd.h -lib/libepoll-shim.a +lib/cmake/epoll-shim/epoll-shim-config.cmake +lib/cmake/epoll-shim/epoll-shim-targets-%%CMAKE_BUILD_TYPE%%.cmake +lib/cmake/epoll-shim/epoll-shim-targets.cmake lib/libepoll-shim.so lib/libepoll-shim.so.0 libdata/pkgconfig/epoll-shim.pc