Skip to main content
aboutsummaryrefslogtreecommitdiffstats
path: root/native
diff options
context:
space:
mode:
Diffstat (limited to 'native')
-rw-r--r--native/org.eclipse.cdt.native.serial/jni/Makefile18
-rw-r--r--native/org.eclipse.cdt.native.serial/pom.xml218
2 files changed, 232 insertions, 4 deletions
diff --git a/native/org.eclipse.cdt.native.serial/jni/Makefile b/native/org.eclipse.cdt.native.serial/jni/Makefile
index fb4cf6fcc41..19663384905 100644
--- a/native/org.eclipse.cdt.native.serial/jni/Makefile
+++ b/native/org.eclipse.cdt.native.serial/jni/Makefile
@@ -16,6 +16,8 @@ endif
OS_DIR = ../os
+CFLAGS += -fPIC -D_REENTRANT
+
UNAME = $(shell uname)
ifeq ($(UNAME),Linux)
LIBS = \
@@ -37,7 +39,7 @@ endif
all: $(LIBS)
clean :
- rm $(LIBS)
+ $(RM) $(LIBS)
rebuild: clean all
@@ -51,12 +53,20 @@ $(OS_DIR)/win32/x86_64/serial.dll: serial.c
$(OS_DIR)/linux/x86/libserial.so: serial.c
mkdir -p $(dir $@)
- gcc -m32 -fPIC -D_REENTRANT -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/linux -shared -o $@ serial.c
+ gcc -m32 $(CFLAGS) -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/linux $(LDFLAGS) -shared -o $@ serial.c
$(OS_DIR)/linux/x86_64/libserial.so: serial.c
mkdir -p $(dir $@)
- gcc -m64 -fPIC -D_REENTRANT -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/linux -shared -o $@ serial.c
+ gcc -m64 $(CFLAGS) -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/linux $(LDFLAGS) -shared -o $@ serial.c
+
+$(OS_DIR)/linux/ppc64/libserial.so: serial.c
+ mkdir -p $(dir $@)
+ gcc -m64 $(CFLAGS) -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/linux $(LDFLAGS) -shared -o $@ serial.c
+
+$(OS_DIR)/linux/ppc64le/libserial.so: serial.c
+ mkdir -p $(dir $@)
+ gcc -m64 -mcpu=power8 $(CFLAGS) -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/linux $(LDFLAGS) -shared -o $@ serial.c
$(OS_DIR)/macosx/x86_64/libserial.jnilib: serial.c
mkdir -p $(dir $@)
- clang -fPIC -D_REENTRANT -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/darwin -dynamiclib -o $@ serial.c
+ clang $(CFLAGS) -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/darwin $(LDFLAGS) -dynamiclib -o $@ serial.c
diff --git a/native/org.eclipse.cdt.native.serial/pom.xml b/native/org.eclipse.cdt.native.serial/pom.xml
new file mode 100644
index 00000000000..cbf4ae085b1
--- /dev/null
+++ b/native/org.eclipse.cdt.native.serial/pom.xml
@@ -0,0 +1,218 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2018 Red Hat, Inc. and others.
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Distribution License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/org/documents/edl-v10.php
+
+ Contributors:
+ Mat Booth (Red Hat) - initial implementation
+-->
+<project
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
+ xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.eclipse.cdt</groupId>
+ <artifactId>cdt-parent</artifactId>
+ <version>9.3.0-SNAPSHOT</version>
+ <relativePath>../../pom.xml</relativePath>
+ </parent>
+
+ <version>1.1.0-SNAPSHOT</version>
+ <artifactId>org.eclipse.cdt.native.serial</artifactId>
+ <packaging>eclipse-plugin</packaging>
+
+ <profiles>
+ <profile>
+ <id>build-native.linux.x86</id>
+ <activation>
+ <property>
+ <name>native</name>
+ <value>linux.x86</value>
+ </property>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>natives</id>
+ <phase>process-resources</phase>
+ <configuration>
+ <target>
+ <exec executable="make" newenvironment="false" dir="./jni">
+ <arg value="LIBS=../os/linux/x86/libserial.so" />
+ </exec>
+ </target>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ <execution>
+ <id>clean-natives</id>
+ <phase>clean</phase>
+ <configuration>
+ <target>
+ <exec executable="make" newenvironment="false" dir="./jni">
+ <arg value="LIBS=../os/linux/x86/libserial.so" />
+ <arg value="clean" />
+ </exec>
+ </target>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ <profile>
+ <id>build-native.linux.x86_64</id>
+ <activation>
+ <property>
+ <name>native</name>
+ <value>linux.x86_64</value>
+ </property>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>natives</id>
+ <phase>process-resources</phase>
+ <configuration>
+ <target>
+ <exec executable="make" newenvironment="false" dir="./jni">
+ <arg value="LIBS=../os/linux/x86_64/libserial.so" />
+ </exec>
+ </target>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ <execution>
+ <id>clean-natives</id>
+ <phase>clean</phase>
+ <configuration>
+ <target>
+ <exec executable="make" newenvironment="false" dir="./jni">
+ <arg value="LIBS=../os/linux/x86_64/libserial.so" />
+ <arg value="clean" />
+ </exec>
+ </target>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ <profile>
+ <id>build-native.linux.ppc64</id>
+ <activation>
+ <property>
+ <name>native</name>
+ <value>linux.ppc64</value>
+ </property>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>natives</id>
+ <phase>process-resources</phase>
+ <configuration>
+ <target>
+ <exec executable="make" newenvironment="false" dir="./jni">
+ <arg value="LIBS=../os/linux/ppc64/libserial.so" />
+ </exec>
+ </target>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ <execution>
+ <id>clean-natives</id>
+ <phase>clean</phase>
+ <configuration>
+ <target>
+ <exec executable="make" newenvironment="false" dir="./jni">
+ <arg value="LIBS=../os/linux/ppc64/libserial.so" />
+ <arg value="clean" />
+ </exec>
+ </target>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ <profile>
+ <id>build-native.linux.ppc64le</id>
+ <activation>
+ <property>
+ <name>native</name>
+ <value>linux.ppc64le</value>
+ </property>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>natives</id>
+ <phase>process-resources</phase>
+ <configuration>
+ <target>
+ <exec executable="make" newenvironment="false" dir="./jni">
+ <arg value="LIBS=../os/linux/ppc64le/libserial.so" />
+ </exec>
+ </target>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ <execution>
+ <id>clean-natives</id>
+ <phase>clean</phase>
+ <configuration>
+ <target>
+ <exec executable="make" newenvironment="false" dir="./jni">
+ <arg value="LIBS=../os/linux/ppc64le/libserial.so" />
+ <arg value="clean" />
+ </exec>
+ </target>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
+</project>

Back to the top