view keyring/src/main/native/libgnome-keyring/Makefile @ 1825:2ae8438ee9d2

Keyring service might block forever storing passwords on newer distributions Add a libsecret based JNI implementation which is preferred over an libgnome-keyring based one. The JNI build is now autotools based so as to be able to select an implementation at build time. PR2660 Reviewed-by: neugens, omajid Review-thread: http://icedtea.classpath.org/pipermail/thermostat/2015-October/016616.html Review-thread: http://icedtea.classpath.org/pipermail/thermostat/2015-October/016640.html
author Severin Gehwolf <sgehwolf@redhat.com>
date Mon, 05 Oct 2015 11:58:01 -0400
parents keyring/Makefile@e255ee1b2f90
children
line wrap: on
line source

CC         = gcc
JAVAH      = javah
MYCFLAGS   = -c -Wall -fPIC
MYLDFLAGS  = -fPIC -shared
COPY       = cp -a

CLASSPATH  = ../../../../target/classes/
TARGET_DIR = ../../../../target

INCLUDE    = -I $(TARGET_DIR) -I $(JAVA_HOME)/include/ -I $(JAVA_HOME)/include/linux
SOURCES    = GnomeKeyringLibraryNative.c
TARGET     = $(TARGET_DIR)/GnomeKeyringLibraryNative.c
OBJECTS    = $(TARGET:.c=.o)

EXECUTABLE = libGnomeKeyringWrapper.so

MYCFLAGS   += `pkg-config --cflags gnome-keyring-1`
MYLDFLAGS  += `pkg-config --libs gnome-keyring-1`

.PHONY:
JNI_LIST = com.redhat.thermostat.utils.keyring.impl.KeyringImpl

$(JNI_LIST):
	$(JAVAH) -force -classpath $(CLASSPATH) -d $(TARGET_DIR) $(JNI_LIST)

all: $(JNI_LIST) init $(SOURCES) $(EXECUTABLE)

.PHONY:
init:
	$(COPY) $(SOURCES) $(TARGET)

$(EXECUTABLE): $(OBJECTS)
	$(CC) $(OBJECTS) -o $(TARGET_DIR)/$@ $(MYLDFLAGS) $(LDFLAGS)

.c.o:
	$(CC) $(MYCFLAGS) $(CFLAGS) $(INCLUDE) $< -o $@

clean-lib:
	rm -f $(TARGET_DIR)/$(EXECUTABLE)
	
clean-obj:
	rm -f $(OBJECTS) $(TARGET)
	
clean: clean-obj clean-lib