package mandelbrot.ocamljava_maven_plugin; import java.util.Set; import com.google.common.collect.ImmutableSet; /*** * Various constants specific to the ocamljava library. * @author Carmelo Piccione * */ public class OcamlJavaConstants { public static final String IMPL_SOURCE_EXTENSION = "ml"; public static final String INTERFACE_SOURCE_EXTENSION = "mli"; public static final String DOT = "."; public static final String COMPILED_IMPL_JAVA_EXTENSION = "cmj"; public static final String COMPILED_IMPL_OCAML_EXTENSION = "cmo"; public static final String COMPILED_INTERFACE_EXTENSION = "cmi"; public static final String OBJECT_BINARY_EXTENSION = "jo"; public static final String JSON_EXTENSION = "json"; public static final Set<String> OCAML_SOURCE_FILE_EXTENSIONS = ImmutableSet .of(IMPL_SOURCE_EXTENSION, INTERFACE_SOURCE_EXTENSION); public static final Set<String> OCAML_COMPILED_SOURCE_FILE_EXTENSIONS = ImmutableSet .of(COMPILED_IMPL_JAVA_EXTENSION, COMPILED_INTERFACE_EXTENSION, OBJECT_BINARY_EXTENSION); public static final String COMPILE_SOURCES_OPTION = "-c"; public static final String ADD_TO_JAR_SOURCES_OPTION = "-o"; public static final String RECORD_DEBUGGING_INFO_OPTION = "-g"; public static final String ADDITIONAL_JAR_OPTION = "-additional-jar"; public static final String CLASSPATH_OPTION = "-cp"; // Usage: ocamlwrap.jar <options> <files> // Options are: // -class-name-prefix <string> Set prefix for class names // -class-name-suffix <string> Set suffix for class names // -I <string> Add to search path // -library-args <string> Arguments passed for library initialization // -library-init {explicit|static} Set initialization mode // -library-package <string> Set library package // -no-warnings Disable warnings // -package <string> Set package name // -string-mapping {java-string|ocamlstring|byte-array} Set mapping for strings // -verbose Enable verbose mode // -help Display this list of options // --help Display this list of options public static final String LIBRARY_PACKAGE_OPTION = "-library-package"; public static final String LIBRARY_INIT_OPTION = "-library-init"; public static final String LIBRARY_ARGS_OPTION = "-library-args"; public static final String STRING_MAPPING_OPTION = "-string-mapping"; public static final String VERBOSE_OPTION = "-verbose"; public static final String NO_WARNINGS_OPTION = "-no-warnings"; public static final String CLASS_NAME_PREFIX_OPTION = "-class-name-prefix"; public static final String CLASS_NAME_SUFFIX_OPTION = "-class-name-suffix"; public static final String PACKAGE_OPTION = "-package"; public static final String JAVA_PACKAGE_OPTION = "-java-package"; public static final String INCLUDE_DIR_OPTION = "-I"; public static final String COMPACT_OPTION = "-compact"; public static final String JAVA_EXTENSIONS_OPTION = "-java-extensions"; public static final String JAVA_ONLY_OPTION = "-java"; public static final String SORT_OPTION = "-sort"; public static final String ALL_OPTION = "-all"; public static final String JAVA_EXTENSION = ".java"; public static String dependencyGoal() { return "mandelbrot:ocamljava-dep-maven-plugin:dep"; } public static String wrapGoal() { return "mandelbrot:ocamljava-wrap-maven-plugin:wrap"; } }