moved src/math/linreg.[ch] to src/math
[pspp-builds.git] / src / ui / gui / automake.mk
index d7a81dc9b378a7b6d9c6c926bb0b935f2553e84b..8130f5cf42087876484d05662fb19c8ed38b4f42 100644 (file)
@@ -1,7 +1,5 @@
 ## Process this file with automake to produce Makefile.in  -*- makefile -*-
 
-
-
 bin_PROGRAMS += src/ui/gui/psppire 
 
 src_ui_gui_psppire_CFLAGS = $(GTK_CFLAGS) $(GLADE_CFLAGS) -Wall \
@@ -9,8 +7,8 @@ src_ui_gui_psppire_CFLAGS = $(GTK_CFLAGS) $(GLADE_CFLAGS) -Wall \
 
 
 src_ui_gui_psppire_LDFLAGS = \
-       $(PG_LDFLAGS) \
-       -export-dynamic
+       $(PG_LDFLAGS)
+
 
 
 if RELOCATABLE_VIA_LD
@@ -20,22 +18,46 @@ src_ui_gui_psppire_LDFLAGS += -rpath $(pkglibdir)
 endif
 
 
-pkglib_LTLIBRARIES = src/ui/gui/libpsppire.la
+# The library libpsppire contains a single function to register our custom widgets with libglade.
+# This library is dynamically loaded by libglade.   On w32 platforms, dynamic libraries simply 
+# can't be created unless all of the symbols can be resolved at link time.  Thus, all the custom 
+# widgets have to be available.  
+# But they can't appear in the library AND the binary, otherwise glib complains about them already
+# existing (and its a waste of space).  So we have a seperate shared library (statically loaded) 
+# libpsppwidgets which contains our custom widgets.
+
+pkglib_LTLIBRARIES = src/ui/gui/libpsppwidgets.la src/ui/gui/libpsppire.la 
+
+src_ui_gui_libpsppwidgets_la_CFLAGS = $(GTK_CFLAGS)
+src_ui_gui_libpsppwidgets_la_LDFLAGS = -no-undefined
+src_ui_gui_libpsppwidgets_la_LIBADD = $(GTK_LIBS)
+
+src_ui_gui_libpsppwidgets_la_SOURCES = \
+       src/ui/gui/psppire-dialog.c \
+       src/ui/gui/psppire-keypad.c \
+       src/ui/gui/psppire-selector.c \
+       src/ui/gui/psppire-buttonbox.c \
+       src/ui/gui/psppire-hbuttonbox.c \
+       src/ui/gui/psppire-vbuttonbox.c \
+       src/ui/gui/psppire-acr.c 
+
 
 src_ui_gui_libpsppire_la_CFLAGS = $(GLADE_CFLAGS) 
+src_ui_gui_libpsppire_la_LDFLAGS = -no-undefined
+src_ui_gui_libpsppire_la_LIBADD = $(GLADE_LIBS) src/ui/gui/libpsppwidgets.la
 
 src_ui_gui_libpsppire_la_SOURCES = \
        src/ui/gui/glade-register.c
 
 src_ui_gui_psppire_LDADD = \
        -dlopen src/ui/gui/libpsppire.la \
+       src/ui/gui/libpsppwidgets.la \
        lib/gtksheet/libgtksheet.a \
        src/language/liblanguage.a \
        src/ui/libuicommon.a \
        src/output/charts/libcharts.a \
        src/output/liboutput.a \
        src/math/libpspp_math.a  \
-       src/math/linreg/libpspp_linreg.a  \
        lib/linreg/liblinreg.a  \
        lib/gsl-extras/libgsl-extras.a  \
        src/data/libdata.a \
@@ -124,13 +146,9 @@ src_ui_gui_psppire_SOURCES = \
         src/ui/gui/oneway-anova-dialog.h \
        src/ui/gui/output-viewer.c \
        src/ui/gui/output-viewer.h \
-       src/ui/gui/psppire-acr.c \
        src/ui/gui/psppire-acr.h \
-       src/ui/gui/psppire-buttonbox.c \
        src/ui/gui/psppire-buttonbox.h \
-       src/ui/gui/psppire-hbuttonbox.c \
        src/ui/gui/psppire-hbuttonbox.h \
-       src/ui/gui/psppire-vbuttonbox.c \
        src/ui/gui/psppire-vbuttonbox.h \
        src/ui/gui/psppire-case-file.c \
        src/ui/gui/psppire-case-file.h \
@@ -138,13 +156,10 @@ src_ui_gui_psppire_SOURCES = \
        src/ui/gui/psppire-data-editor.h \
        src/ui/gui/psppire-data-store.c \
        src/ui/gui/psppire-data-store.h \
-       src/ui/gui/psppire-dialog.c \
        src/ui/gui/psppire-dialog.h \
        src/ui/gui/psppire-dict.c \
        src/ui/gui/psppire-dict.h \
-       src/ui/gui/psppire-keypad.c \
        src/ui/gui/psppire-keypad.h \
-       src/ui/gui/psppire-selector.c \
        src/ui/gui/psppire-selector.h \
        src/ui/gui/psppire-var-ptr.c \
        src/ui/gui/psppire-var-ptr.h \
@@ -195,4 +210,13 @@ src_ui_gui_psppire_SOURCES = \
        src/ui/gui/window-manager.c \
        src/ui/gui/window-manager.h
 
-
+yelp-check:
+       @if ! yelp --version > /dev/null 2>&1 ; then \
+               echo    ; \
+               echo '    The Yelp document viewer does not seem to be installed on the system.' ; \
+               echo '    If Yelp is not available at run time, then the PSPPIRE online reference' ; \
+               echo '    manual will not be available.' ; \
+               echo '    Yelp is available from the GNOME project.  ftp://ftp.gnome.org/pub/gnome/sources/yelp' ; \
+               echo ; \
+       fi
+.PHONY: yelp-check