Projects
Mega:24.03:SP1:Everything
native-platform
_service:tar_scm:native-platform-0.7-Makefile
Sign Up
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File _service:tar_scm:native-platform-0.7-Makefile of Package native-platform
# Description: Use make as buildsystem instead of Gradle to # avoid a circular dependencies between gradle and native-platform. # This is very minimalistic Makefile so it will only work for # Debian use case for now. # Author: Damien Raude-Morvan <drazzib@debian.org> # Adapted for Fedora by: gil cattaneo <puntogil@libero.it> CXX=g++ STRIP=strip # which is the best solution? JOPT_JAR=$(shell build-classpath jopt-simple) #JOPT_JAR=$(shell locate jopt-simple.jar) IDIR=src/shared/headers SRCDIR=src/main/cpp #SRCSHAREDIR=src/shared/cpp #SRCCURSESDIR=src/curses/cpp JSRCDIR=src/main/java BUILD=build IGEN=$(BUILD)/headers JCLASSESDIR=$(BUILD)/classes JDOCDIR=$(BUILD)/docs/javadoc ODIR=$(BUILD)/binaries JAR=$(BUILD)/native-platform.jar known_os_archs := JAR_ARCH=$(BUILD)/native-platform-linux.jar JTARGET=1.5 JSOURCE=1.5 INCLUDE=-I$(IDIR) -I$(IGEN) -I/usr/include -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/linux #LDLIBS=-lncurses _OBJ_STD = generic.o generic_posix.o linux.o osx.o posix.o win.o unix_strings.o _OBJ_CURSES = generic.o generic_posix.o curses.o unix_strings.o OBJ_STD = $(patsubst %,$(ODIR)/%,$(_OBJ_STD)) OBJ_CURSES = $(patsubst %,$(ODIR)/%,$(_OBJ_CURSES)) _JAVA = $(shell find $(JSRCDIR) -name "*.java" -print) .PHONY: clean jar javadoc build: $(ODIR)/libnative-platform.so $(ODIR)/libnative-platform-curses.so jar javadoc arch-jar $(ODIR)/libnative-platform.so: $(OBJ_STD) $(CXX) -shared -fPIC $(CFLAGS) $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $@ $^ $(STRIP) $@ $(ODIR)/libnative-platform-curses.so: $(OBJ_CURSES) $(CXX) $(CFLAGS) $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS) -lcurses -shared -fPIC -o $@ $^ $(STRIP) $@ $(JCLASSESDIR)/%.class: javafiles-list mkdir -p $(JCLASSESDIR) $(JAVA_HOME)/bin/javac -source $(JTARGET) -target $(JSOURCE) -d $(JCLASSESDIR) -classpath $(JOPT_JAR) @javafiles-list javafiles-list: $(_JAVA) echo $^ > javafiles-list javadoc: javafiles-list mkdir -p $(JDOCDIR) $(JAVA_HOME)/bin/javadoc -d $(JDOCDIR) -classpath $(JOPT_JAR) @javafiles-list jar: $(JCLASSESDIR)/%.class mkdir -p $(JDOCDIR) (cd $(JCLASSESDIR) ; $(JAVA_HOME)/bin/jar cf ../../$(JAR) .) arch-jar: $(ODIR)/libnative-platform.so $(ODIR)/libnative-platform-curses.so (cd $(ODIR) ; $(JAVA_HOME)/bin/jar cf ../../$(JAR_ARCH) *.so) $(ODIR)/%.o: $(SRCDIR)/%.cpp $(IGEN)/native.h mkdir -p $(ODIR) $(CXX) $(CFLAGS) $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS) $(INCLUDE) -fPIC -c -o $@ $< $(IGEN)/native.h: $(JCLASSESDIR)/%.class mkdir -p $(IGEN) $(JAVA_HOME)/bin/javah -o $(IGEN)/native.h -classpath $(JCLASSESDIR) \ net.rubygrapefruit.platform.internal.jni.NativeLibraryFunctions \ net.rubygrapefruit.platform.internal.jni.PosixFileFunctions \ net.rubygrapefruit.platform.internal.jni.PosixFileSystemFunctions \ net.rubygrapefruit.platform.internal.jni.PosixProcessFunctions \ net.rubygrapefruit.platform.internal.jni.PosixTerminalFunctions \ net.rubygrapefruit.platform.internal.jni.TerminfoFunctions \ net.rubygrapefruit.platform.internal.jni.WindowsConsoleFunctions \ net.rubygrapefruit.platform.internal.jni.WindowsHandleFunctions \ net.rubygrapefruit.platform.internal.jni.WindowsRegistryFunctions clean: -rm javafiles-list -rm -Rf $(BUILD)
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.
浙ICP备2022010568号-2