
Use the same approach as other generated headers (a temporary file, compare to the existing, then copy), to avoid touching st.h, so that other dependent objects are not rebuilt, if not needed. It should speed up building when switching git branches, as often config.status or automake are run, causing Makefiles to be recreated. https://bugzilla.gnome.org/show_bug.cgi?id=638453
180 lines
4.3 KiB
Plaintext
180 lines
4.3 KiB
Plaintext
st_cflags = \
|
|
-I$(top_srcdir)/src \
|
|
-DPREFIX=\""$(prefix)"\" \
|
|
-DLIBDIR=\""$(libdir)"\" \
|
|
-DG_DISABLE_DEPRECATED \
|
|
-DG_LOG_DOMAIN=\"St\" \
|
|
-DST_COMPILATION \
|
|
-DPACKAGE_DATA_DIR=\"$(pkgdatadir)\" \
|
|
$(ST_CFLAGS) \
|
|
$(NULL)
|
|
|
|
st_built_sources = \
|
|
st-enum-types.h \
|
|
st-enum-types.c \
|
|
st-marshal.h \
|
|
st-marshal.c
|
|
|
|
BUILT_SOURCES += $(st_built_sources)
|
|
|
|
EXTRA_DIST += \
|
|
st/test-theme.css \
|
|
st/st-marshal.list \
|
|
st/st-enum-types.h.in \
|
|
st/st-enum-types.c.in
|
|
|
|
CLEANFILES += stamp-st-marshal.h stamp-st-enum-types.h
|
|
|
|
st-marshal.h: stamp-st-marshal.h
|
|
@true
|
|
stamp-st-marshal.h: Makefile st/st-marshal.list
|
|
$(AM_V_GEN) $(GLIB_GENMARSHAL) \
|
|
--prefix=_st_marshal \
|
|
--header \
|
|
$(srcdir)/st/st-marshal.list > $@.tmp && \
|
|
(cmp -s $@.tmp st-marshal.h || cp -f $@.tmp st-marshal.h) && \
|
|
rm -f $@.tmp && \
|
|
echo timestamp > $(@F)
|
|
|
|
st-marshal.c: Makefile st/st-marshal.list
|
|
$(AM_V_GEN) (echo "#include \"st-marshal.h\"" ; \
|
|
$(GLIB_GENMARSHAL) \
|
|
--prefix=_st_marshal \
|
|
--body \
|
|
$(srcdir)/st/st-marshal.list ) > $@.tmp && \
|
|
cp -f $@.tmp st-marshal.c && \
|
|
rm -f $@.tmp
|
|
|
|
st-enum-types.h: stamp-st-enum-types.h Makefile
|
|
@true
|
|
stamp-st-enum-types.h: $(source_h) st/st-enum-types.h.in $(st_source_h)
|
|
$(AM_V_GEN) ( cd $(srcdir) && \
|
|
$(GLIB_MKENUMS) \
|
|
--template st/st-enum-types.h.in \
|
|
$(st_source_h) ) >> $@.tmp && \
|
|
(cmp -s $@.tmp st-enum-types.h || cp $@.tmp st-enum-types.h) && \
|
|
rm -f $@.tmp && \
|
|
echo timestamp > $(@F)
|
|
|
|
st-enum-types.c: stamp-st-enum-types.h st/st-enum-types.c.in
|
|
$(AM_V_GEN) ( cd $(srcdir) && \
|
|
$(GLIB_MKENUMS) \
|
|
--template st/st-enum-types.c.in \
|
|
$(st_source_h) ) >> $@.tmp && \
|
|
cp $@.tmp $@ && \
|
|
rm -f $@.tmp
|
|
|
|
# please, keep this sorted alphabetically
|
|
st_source_h = \
|
|
st/st-adjustment.h \
|
|
st/st-bin.h \
|
|
st/st-border-image.h \
|
|
st/st-box-layout.h \
|
|
st/st-box-layout-child.h \
|
|
st/st-button.h \
|
|
st/st-clickable.h \
|
|
st/st-clipboard.h \
|
|
st/st-container.h \
|
|
st/st-drawing-area.h \
|
|
st/st-entry.h \
|
|
st/st-focus-manager.h \
|
|
st/st-group.h \
|
|
st/st-icon.h \
|
|
st/st-icon-colors.h \
|
|
st/st-im-text.h \
|
|
st/st-label.h \
|
|
st/st-overflow-box.h \
|
|
st/st-private.h \
|
|
st/st-scrollable.h \
|
|
st/st-scroll-bar.h \
|
|
st/st-scroll-view.h \
|
|
st/st-shadow.h \
|
|
st/st-table.h \
|
|
st/st-table-child.h \
|
|
st/st-texture-cache.h \
|
|
st/st-theme.h \
|
|
st/st-theme-context.h \
|
|
st/st-theme-node.h \
|
|
st/st-tooltip.h \
|
|
st/st-types.h \
|
|
st/st-widget.h \
|
|
$(NULL)
|
|
|
|
st.h: stamp-st.h
|
|
@true
|
|
stamp-st.h: Makefile
|
|
$(AM_V_GEN) (echo "#define ST_H_INSIDE 1"; \
|
|
for name in $(st_source_h); do \
|
|
echo "#include <"$$name">"; \
|
|
done; echo "#undef ST_H_INSIDE") > $@.tmp && \
|
|
(cmp -s $@.tmp st.h || cp $@.tmp st.h) && \
|
|
rm -f $@.tmp && \
|
|
echo timestamp > $(@F)
|
|
|
|
BUILT_SOURCES += st.h
|
|
|
|
st_source_private_h = \
|
|
st/st-private.h \
|
|
st/st-table-private.h \
|
|
st/st-theme-private.h \
|
|
st/st-theme-node-private.h \
|
|
st/st-theme-node-transition.h
|
|
|
|
# please, keep this sorted alphabetically
|
|
st_source_c = \
|
|
st/st-adjustment.c \
|
|
st/st-bin.c \
|
|
st/st-border-image.c \
|
|
st/st-box-layout.c \
|
|
st/st-box-layout-child.c \
|
|
st/st-button.c \
|
|
st/st-clickable.c \
|
|
st/st-clipboard.c \
|
|
st/st-container.c \
|
|
st/st-drawing-area.c \
|
|
st/st-entry.c \
|
|
st/st-focus-manager.c \
|
|
st/st-group.c \
|
|
st/st-icon.c \
|
|
st/st-icon-colors.c \
|
|
st/st-im-text.c \
|
|
st/st-label.c \
|
|
st/st-overflow-box.c \
|
|
st/st-private.c \
|
|
st/st-scrollable.c \
|
|
st/st-scroll-bar.c \
|
|
st/st-scroll-view.c \
|
|
st/st-shadow.c \
|
|
st/st-table.c \
|
|
st/st-table-child.c \
|
|
st/st-texture-cache.c \
|
|
st/st-theme.c \
|
|
st/st-theme-context.c \
|
|
st/st-theme-node.c \
|
|
st/st-theme-node-drawing.c \
|
|
st/st-theme-node-transition.c \
|
|
st/st-tooltip.c \
|
|
st/st-widget.c \
|
|
$(NULL)
|
|
|
|
noinst_LTLIBRARIES += libst-1.0.la
|
|
|
|
libst_1_0_la_LIBADD = -lm $(ST_LIBS)
|
|
libst_1_0_la_SOURCES = \
|
|
$(st_source_c) \
|
|
$(st_source_private_h) \
|
|
$(st_source_private_c) \
|
|
$(st_source_h) \
|
|
st.h \
|
|
$(st_built_sources) \
|
|
$(NULL)
|
|
libst_1_0_la_CPPFLAGS = $(st_cflags)
|
|
libst_1_0_la_LDFLAGS = $(LDADD)
|
|
|
|
noinst_PROGRAMS += test-theme
|
|
|
|
test_theme_CPPFLAGS = $(st_cflags)
|
|
test_theme_LDADD = libst-1.0.la
|
|
|
|
test_theme_SOURCES = st/test-theme.c
|