Whilst not the cleanest and the headers could do with an update, this is a
short term solution to stop the warnings
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
Currently, node modules install under the current environment's
node install path. This happens even if cmake is passed a
CMAKE_INSTALL_PREFIX.
This change checks if a CMAKE_INSTALL_PREFIX has been provided,
in which case it prepens the install path to the NODE_MODULE_INSTALL_PATH.
If a CMAKE_INSTALL_PREFIX has NOT been provided, the the mraa node
modules get install according to the NODE_ROOT_DIR.
This fixes a problem with an install case where the caller does not
have write access to the NODE_ROOT_DIR.
Signed-off-by: Noel Eck <noel.eck@intel.com>
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
mraa_LIB_PLAT_SRCS_NOAUTO no longer used for firmata unlike USBPLAT but
mraa_LIB_SRCS_NOAUTO and this is now loaded before the standard src files for
mraa. The package still needs to be generated with IMRAA & FIRMATA enabled for
this to work.
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
This does now mean that modules won't go to /usr/local with the default prefix
but may instead try to install in /usr/lib. However if using nvm they should go
to the right place as long as NODE_ROOT_DIR is set correctly. This commit
changes NODE_ROOT_DIR to actually refer to the root directory of node rather
than the include dir which is what FindNodejs gets
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
Imraa allows the automatic flashing and setup of arduino101 subplatforms as
well as the initial setup of GPIO/i2c devices
Signed-off-by: Longwei Su <lsu@ics.com>
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
This fixes bugs when USBPLAT or FIRMATA is enabled when a NULL platform is
added or even a platform without ADC
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
INFO is not a valid cmake message mode, this commit cleans up a few messages to
use the correct cmake modes
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
Add pin commands. Old mraa_setup_mux_mapped style is used for other boards
(pincmd = PINCMD_UNDEFINED) where pincmds are not defined.Remove useless
pullup_enable code, Galileo Gen2: review all pin mux and add commands Galileo
Gen2: remove doubled functionality: mraa_intel_galileo_gen2_i2c_init_pre and
mraa_intel_galileo_gen2_uart_init_pre. Galileo Gen2: fix "Invalid AIO pin
specified - do you have an ADC?" error. Galileo Gen2: pullup/pulldown
resistors are disabled during UART/GPIO/SPI/I2C/UIO initialization. Use
mraa_gpio_mode to enable resistors.
Signed-off-by: Eugene Bolshakov <pub@relvarsoft.com>
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
We should throw exception but SWIG_Error causes a seg fault.
We should use syslog instead of stderr but syslog.h is not swigable
Signed-off-by: Henry Bruce <henry.bruce@intel.com>
To ensure backwards comptability MRAA_ERROR_PLATFORM_ALREADY_INITIALISED
remains as member of mraa_result_t but now has same code as MRAA_SUCCESS
Signed-off-by: Henry Bruce <henry.bruce@intel.com>
This is a partial replication of firmata branch commit 2f25468
as that patch would not apply to the javacheck2 branch
Signed-off-by: Henry Bruce <henry.bruce@intel.com>
This is a re-design of commit 0041801. mraa_lang_func_t structure has been
added (similar in design to mraa_adv_func_t) that points to JNI functions
implemented in src/java/mraajni.c. Functions are set by libmraajava.so,
see wrapper entry in src/java/mraajava.i. As gpio.c now uses these
functions, language specific #ifdef code has been removed as JNI code
is only called if functions are defined (i.e. not NULL)
Signed-off-by: Henry Bruce <henry.bruce@intel.com>
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
libmraajava.so was statically linking to mraa object files causing
duplicate mraa platform instances if a UPM Java module was also loaded.
JNI functionality has been moved into src/java/mraajni.c. JVM object is
now set when JVM is loaded; see updates to src/java/mraajava.i.
This was necessary as the JVM object cannot be directly referenced from
mraa as it will not be available when building C/C++ examples.
Signed-off-by: Henry Bruce <henry.bruce@intel.com>
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
mraa.node was statically linking to mraa object files causing duplicate
mraa platform instances if a upm node.js module was also loaded.
Signed-off-by: Henry Bruce <henry.bruce@intel.com>
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>