p≡p for Java
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
heck c0e2a91578 CodeGen: New enhanced enums, now all enums got .toString(), all enums can have .getInternalStringValue() (This was needed to avoid mapping table in the app, for "casting" Ratings to Engine internal string values for X-Opts .e.g) 1 year ago
android JNI-106 Android build: update to use current Makefile and api. 1 year ago
androidTests Update gradle versions and engine version 3 years ago
doc/doxygen Added doc/ dir, added Doxygen fox c++ and java. use "make doxy-all" 2 years ago
src CodeGen: New enhanced enums, now all enums got .toString(), all enums can have .getInternalStringValue() (This was needed to avoid mapping table in the app, for "casting" Ratings to Engine internal string values for X-Opts .e.g) 1 year ago
test Add Java Remote Debugger to tests. 1 year ago
utils CodeGen: New enhanced enums, now all enums got .toString(), all enums can have .getInternalStringValue() (This was needed to avoid mapping table in the app, for "casting" Ratings to Engine internal string values for X-Opts .e.g) 1 year ago
.hgignore merge in default branch 1 year ago
LICENSE.txt switching to AGPL 5 years ago
Makefile add Makefile targets install/uninstall (to $PREFIX) 1 year ago
Makefile.conf And suddenly my linux box javac needs "-encoding UTF-8", well, cant hurtbeing explicit about that in general. 1 year ago
README.md Build config, added foo_PATH vars, for more flexible reuse of paths 2 years ago
local.conf.example sensible build defaults 1 year ago

README.md

p≡p JNI Adapter

More complete developer instructions can be found here: https://dev.pep.foundation/JNI%20Adapter/Tutorial.

Prerequisites

yml2

To set up yml2 properly, consult the documentation of pEp Engine (linked below). yml2 is a build dependency of pEp Engine.

C and C++ compiler

Any gcc or clang distribution offered by your OS is fine.

pEp Engine

Instructions for obtaining the pEp Engine can be found on https://pep.foundation/dev/repos/pEpEngine/file/.

libpEpAdapter

Instructions for obtaining libpEpAdapter can be found on https://pep.foundation/dev/repos/libpEpAdapter/file/.

Java 8 (or newer) JDK

Download Oracle Java from https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html.

OpenJDK can be installed from macports on macOS with one of the following commands:

sudo port install openjdk8
sudo port install openjdk11

Building

Build configuration will be the result of including these files in the following order:

  • Makefile.conf - Defaults
  • local.conf - optional cfg (overwrites existing values)
  • src/local.conf- optional cfg for src dir (overwrites existing values)

An example local.conf looks like this:

JAVA_HOME=/Library/Java/JavaVirtualMachines/openjdk8/Contents/Home

YML2_PATH=$(HOME)/code/yml2

ENGINE_INC_PATH=$(HOME)/code/engine/build/include
ENGINE_LIB_PATH=$(HOME)/code/engine/build/lib

AD_INC_PATH=$(HOME)/code/libad/build/include
AD_LIB_PATH=$(HOME)/code/libad/build/lib

The the foo_PATH variables will be turned into compiler directives (-I / -L), which can be directly set by just omitting "_PATH" (e.g. ENGINE_INC). They will take priority.

Depending on what is already set in your environment, or can be found in your default include/library paths, setting any of these variables may be optional on your platform.

Now, build the Adapter with

On Linux:

make src

On macOS:

make src

(The GNU Make distributed with macOS might be too old, in this case install GNU Make "gmake" from macPorts).