From 12babeda63deaf8cd38a62bc2f3d3e3458b71d86 Mon Sep 17 00:00:00 2001 From: Romain Chantereay Date: Tue, 3 Aug 2004 15:12:45 +0000 Subject: New Autotools infrastructure. Don't hesitate to report bug (if any). Main changes: - No more, or so few AM_CONDITIONAL. - Binding compilation use AC_SUBST top level Makefile SUBDIRS. - Change order of AM Macro. - Added Macro. - Fix Windows Compilation. - New way to handle version number. - Use of lasso_config.h - more ? I do not remember. --- java/Makefile.am | 79 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 java/Makefile.am (limited to 'java/Makefile.am') diff --git a/java/Makefile.am b/java/Makefile.am new file mode 100644 index 00000000..815f3b66 --- /dev/null +++ b/java/Makefile.am @@ -0,0 +1,79 @@ +NULL = + +TARGET=target +#JAVAC=/usr/lib/kaffe/bin/javac +#JAVAH=/usr/lib/kaffe/bin/javah +#JAVAH_CLASSPATH_PREFIX=/usr/share/kaffe/Klasses.jar: +#JAR=/usr/lib/kaffe/bin/jar + + +JAVA_BUILD_DIR=${TARGET}/classes +JAVA_SOURCE_DIR=src/java +JAVA_PACKAGE=com.entrouvert.lasso +JAVA_SOURCE=${wildcard ${JAVA_SOURCE_DIR}/${subst .,/,${JAVA_PACKAGE}}/*.java} +JAVA_CLASSES=${addprefix ${JAVA_PACKAGE}., ${filter-out LassoTest, ${basename ${notdir ${JAVA_SOURCE}}}}} +LASSO_JAR=${TARGET}/lasso.jar + +C_SOURCE_DIR=src/c +C_BUILD_DIR=${C_SOURCE_DIR} +C_SOURCE=${wildcard ${C_SOURCE_DIR}/*.c} +C_OBJECT=${C_SOURCE:.c=.o} +if MINGW + LDFLAGS=-L/usr/local/lib -lgobject-2.0-0 -lglib-2.0-0 -llasso + LASSO_DLL=${TARGET}/jlasso.dll +else + LDFLAGS=-lgobject-2.0 -lglib-2.0 -llasso + LASSO_SO=${TARGET}/libjlasso.so +endif + +binary-java: + mkdir -p ${JAVA_BUILD_DIR} + ${JAVAC} ${JAVAC_FLAGS} -d ${JAVA_BUILD_DIR} ${JAVA_SOURCE} + ${JAR} cf ${LASSO_JAR} -C ${JAVA_BUILD_DIR} com + +generate-header: binary-java + ${JAVAH} ${JAVAH_FLAGS} -d ${C_SOURCE_DIR} -classpath ${JAVAH_CLASSPATH_PREFIX}${JAVA_BUILD_DIR} ${JAVA_CLASSES} + +if MINGW +binary-c: ${LASSO_DLL} +else +binary-c: ${LASSO_SO} +endif + +if MINGW +mylibs = -L../win32/.libs -llasso -L/usr/local/lib +${LASSO_DLL}: generate-header + gcc -mno-cygwin -shared -o ${TARGET}/jlasso.dll \ + -Wl,--out-implib=${TARGET}/jlasso.a \ + -Wl,--add-stdcall-alias \ + -Wl,--export-all-symbols \ + -Wl,--enable-auto-import \ + -Wl,--whole-archive ${C_OBJECT} \ + -Wl,--no-whole-archive -lgobject-2.0-0 -lglib-2.0-0 ${mylibs} +else +mylibs = ../lasso/.libs/liblasso.so +${LASSO_SO}: generate-header + $(CC) -shared -lgobject-2.0 -lglib-2.0 $(mylibs) ${C_OBJECT} -o $@ +endif + +lib_LTLIBRARIES = \ + libjlasso.la \ + $(NULL) + +libjlassoinclude_HEADERS = $(NULL) + +libjlasso_la_SOURCES = $(NULL) + +libjlasso_la_LIBADD = \ + binary-c \ + $(NULL) + +all-redirect: binary-c + +clean: + rm -fr ${TARGET} *~ *.log + + +EXTRA_DIST = $(NULL) +SUBDIRS = src $(NULL) + -- cgit