New port questions dtlvnative, javacpp
Markus Graf <[email protected]>
| Newsgroups | gmane.os.freebsd.devel.ports |
|---|---|
| Message-ID | <[email protected]> |
Hi all, until recently Datalevin, a database in the Clojure ecosystem, used databases/lmdb under the hood. Clojure runs on the JVM. Until now it was enough to tweak it to use the lmdb from ports. The creator of Datalevin has recently forked lmdb using javacpp to create the jni bindings to create a java library with the native parts called dtlnative. I have spend the last week porting this to FreeBSD. Changes to USearch, javacpp and dtlvnative to work on FreeBSD have been accepted upstream. Now I want to bring it into ports. The new port databases/dtlvnative depends on - USearch, new port math/USearch - dlmdb, new port, fork of databases/lmdb - javacpp, new port, java/javacpp I have a running poudriere jail and the ports build. The biggest questions I have are around testing and stubs. Testing I have build the Makefiles so tests run in do-build: and BUILD_DEPENDS contain, in one case, junit. When I but these into TEST_DEPENDS and do-test: "poudriere testport" will not run them. If I make do-install: depend on test poudriere complains about the dependencies not being in BUILD_DEPENS, so I could leave the tests in do-build:. One of the reasons I want this in ports and not .so files in jars from maven is that I know the tests have run on FreeBSD. Should I just leave tests in do-build: and BUILD_DEPENDS? Stubs JavaCPP requires OSGi and slf5j. I do not want to pull these in for a library/buildtool. To get it to work without these dependencies I create stubs by ECHO_CMD to Java files. What is the canonical way of going about this? An extra stubs.jar? Should I not do stubbing? Should I put the stubs eg. in the files directory instead? If so what is the canonical way of using these from the Makefile? I have no experience submitting ports so any extra advice is welcome Best regards Markus -- Markus Graf Tel.: +49 172 840 26 08 Email: [email protected]