/cadical4j

Accessing the native CaDiCaL SAT solver throught IPASIR interface and its Java binding

Primary LanguageMakefileApache License 2.0Apache-2.0

License Build Status Build status

cadical4j

Accessing the native CaDiCaL SAT solver through IPASIR interface and its Java binding

This project packages native shared libraries of the CaDiCaL SAT solver so that they can be used in Apache Maven projects.

Overview and usage

This project consists of two modules:

See src/test/test for examples on how to use this library. The native library cadical for the current platform will be automatically added as a compile/runtime dependency. To include the library dependencies for all available platforms set a system property multi-platform, e.g., by adding a switch -Dmulti-platform to the maven command. This may be desirable, e.g., for creating platform-independent "standalone" jars.

To use snapshots versions of this library (if not compiled from sources), please add the sonatype snapshot repository either to your pom.xml or settings.xml:

<repositories>
  <repository>
    <id>ossrh</id>
    <url>https://oss.sonatype.org/content/repositories/snapshots</url>
    <snapshots>
      <enabled>true</enabled>
    </snapshots>			
  </repository>
</repositories>

Compiling from sources

To compile this software, one has to install Apache Maven version 3 or higher and standard development tools such as Make and GCC. To build all modules, issue the following command from this folder:

mvn clean install

License

All sources of this project are available under the terms of the Apache License 2.0 (see the file LICENSE.txt).

In addition, the sources of the module cadical are available under the terms of the MIT license, so that it is compatible to the license of the CaDiCaL solver (see the file cadical/LICENSE).