1 ## Process this file with automake to produce Makefile.in
10 keybindingsprivate.h \
17 -I$(top_srcdir)/scintilla/include \
18 -I$(top_srcdir)/tagmanager/src \
21 -DG_LOG_DOMAIN=\""Geany"\" \
22 @GTK_CFLAGS@ @GTHREAD_CFLAGS@ \
23 $(MAC_INTEGRATION_CFLAGS)
26 lib_LTLIBRARIES = libgeany.la
28 geany_SOURCES = main.c
29 geany_LDADD = libgeany.la $(GTK_LIBS) $(GTHREAD_LIBS) $(INTLLIBS)
33 geany_LDFLAGS += -Wl,-rpath='$$ORIGIN/../lib'
36 geany_includedir = $(includedir)/geany
37 geany_include_HEADERS = \
67 libgeany_la_SOURCES = \
71 callbacks.c callbacks.h \
73 document.c document.h \
75 encodings.c encodings.h \
76 filetypes.c filetypes.h \
77 geanyentryaction.c geanyentryaction.h \
78 geanymenubuttonaction.c geanymenubuttonaction.h \
79 geanyobject.c geanyobject.h \
80 geanywraplabel.c geanywraplabel.h \
82 highlighting.c highlighting.h \
83 highlightingmappings.h \
84 keybindings.c keybindings.h \
87 libmain.c main.h geany.h \
88 msgwindow.c msgwindow.h \
89 navqueue.c navqueue.h \
90 notebook.c notebook.h \
92 pluginutils.c pluginutils.h \
94 printing.c printing.h \
96 sciwrappers.c sciwrappers.h \
102 symbols.c symbols.h \
103 templates.c templates.h \
104 toolbar.c toolbar.h \
106 sidebar.c sidebar.h \
107 ui_utils.c ui_utils.h \
111 libgeany_la_SOURCES += prefix.c prefix.h
114 if ENABLE_MAC_INTEGRATION
115 libgeany_la_SOURCES += osx.c osx.h
118 libgeany_la_CFLAGS = $(AM_CPPFLAGS) @LIBGEANY_CFLAGS@
119 libgeany_la_LDFLAGS = @LIBGEANY_LDFLAGS@
121 libgeany_la_LIBADD = \
122 $(top_builddir)/scintilla/libscintilla.la \
123 $(top_builddir)/tagmanager/ctags/libctags.la \
124 $(top_builddir)/tagmanager/mio/libmio.la \
125 $(top_builddir)/tagmanager/src/libtagmanager.la \
128 $(MAC_INTEGRATION_LIBS) \
131 # tell automake we have a C++ file so it uses the C++ linker we need for Scintilla
132 nodist_EXTRA_libgeany_la_SOURCES = dummy1.cxx
137 # build Geany for Windows (possibly on non-Windows systems -- cross-compile)
140 -DGEANY_DATADIR=\"data\" \
141 -DGEANY_DOCDIR=\"\" \
142 -DGEANY_LIBDIR=\"\" \
143 -DGEANY_LOCALEDIR=\"\" \
146 geany_LDADD += geany_private.res
148 WINDRES = $(host_alias)-windres
150 geany_private.res: $(top_srcdir)/geany_private.rc
151 $(WINDRES) -i $(top_srcdir)/geany_private.rc --input-format=rc -o $@ -O coff
153 libgeany_la_SOURCES += win32.c win32.h
154 libgeany_la_LIBADD += -lole32 -lwsock32 -lcomdlg32
155 libgeany_la_LDFLAGS += -Wl,-luuid -mwindows -mms-bitfields -no-undefined
156 geany_LDFLAGS += -mwindows -mms-bitfields
158 CLEANFILES += geany_private.res
161 # build Geany for all other platforms
164 -DGEANY_DATADIR=\""$(datadir)"\" \
165 -DGEANY_DOCDIR=\""$(docdir)"\" \
166 -DGEANY_LIBDIR=\""$(libdir)"\" \
167 -DGEANY_LOCALEDIR=\""$(localedir)"\" \
168 -DGEANY_PREFIX=\""$(prefix)"\"
170 libgeany_la_SOURCES += vte.c vte.h
174 callbacks.c: signallist.i
176 glade_file=$(top_srcdir)/data/geany.glade
178 signallist.i: $(glade_file) Makefile
180 echo '/* This file is auto-generated, do not edit. */' && \
181 $(SED) -n 's/^.*handler="\([^"]\{1,\}\)".*$$/ITEM(\1)/p' "$(glade_file)" \
182 | $(SORT) | $(UNIQ) \
183 ) > $@ || { $(RM) $@ && exit 1; }
185 CLEANFILES += signallist.i
187 # Ubuntu ld has a bug so that libtool sees /usr/local/lib as a system path so
188 # doesn't add RPATH, but ld requires explicit ldconfig there, unlike when
189 # installing in /usr/lib. So, workaround this by calling it explicitly when
190 # installing in /usr/local/lib and libgeany is not found by the linker.
192 if test "$(DESTDIR)$(libdir)" = /usr/local/lib && \
193 LANG=C ldd "$(DESTDIR)$(bindir)/geany" | grep -q 'libgeany.*not found' \
195 ldconfig "$(DESTDIR)$(libdir)"; \
198 install-exec-hook: fix-ubuntu-libdir