tinyoslib_PROGRAMS = @TOSCOMMLIB@
-EXTRA_PROGRAMS = libtoscomm-32.so libtoscomm-64.so toscomm.dll
+EXTRA_PROGRAMS = libtoscomm-32.so libtoscomm-64.so toscomm.dll libtoscomm.jnilib
# Compiling libtoscomm.so with -O2 generates bad code with gcc 4.1.x on x86_64
# (the -O1 code is slightly weird, but works at least ;-))
NativeSerial_win32.cpp \
TOSComm_wrap.cxx
+libtoscomm_jnilib_SOURCES = \
+ NativeSerialEnums.h \
+ NativeSerial_darwin.cpp \
+ TOSComm_wrap.cxx
+
+libtoscomm.jnilib: $(libtoscomm_jnilib_SOURCES)
+ $(CXX) -O2 -bundle "-I$(JDK)/Headers" \
+ -o $@ NativeSerial_darwin.cpp
+
libtoscomm-32.so: $(libtoscomm_so_SOURCES)
- $(CXX) -m32 $(SOFLAGS) -o $@ NativeSerial_linux.cpp
+ $(CXX) -m32 $(SOFLAGS) -o $@ NativeSerial_linux.cpp || \
+ (echo 32-bit libtoscomm.so NOT GENERATED - DO NOT USE THIS RUN TO BUILD AN RPM; echo Press return to continue; read; rm -f $@)
libtoscomm-64.so: $(libtoscomm_so_SOURCES)
@echo $(CXX) -m64 $(SOFLAGS) -o $@ NativeSerial_linux.cpp
@$(CXX) -m64 $(SOFLAGS) -o $@ NativeSerial_linux.cpp || \
- (echo 64-bit libtoscomm.so NOT GENERATED - DO NOT USE THIS RUN TO BUILD AN RPM; echo Press return to continue; read; rm -f libtoscomm-64.so)
+ (echo 64-bit libtoscomm.so NOT GENERATED - DO NOT USE THIS RUN TO BUILD AN RPM; echo Press return to continue; read; rm -f $@)
toscomm.dll: $(toscomm_dll_SOURCES)
$(CXX) -O2 -s -mno-cygwin -shared "-I$(JDK)/include" "-I$(JDK)/include/win32" -D_JNI_IMPLEMENTATION -Wl,--kill-at \