glib/gobject/tests/Makefile.am
Dan Winship 0d62eb467f gobject: forbid finalization-during-construction
If a constructor() implementation created an object but then unreffed
it rather than returning it, that object would get left on the
construction_objects list, which would cause problems later when that
memory location got reused by another object.

"Fix" this by making it fail intentionally, and add a test for it (and
for the normal, working singleton case).

https://bugzilla.gnome.org/show_bug.cgi?id=661576
2013-10-22 11:01:15 -04:00

52 lines
1.5 KiB
Makefile

include $(top_srcdir)/glib-tap.mk
LDADD = ../libgobject-2.0.la $(top_builddir)/glib/libglib-2.0.la
AM_CPPFLAGS = -g $(gobject_INCLUDES) $(GLIB_DEBUG_FLAGS)
DEFS = -DG_LOG_DOMAIN=\"GLib-GObject\"
AM_CFLAGS = $(GLIB_WARN_CFLAGS)
# -----------------------------------------------------------------------------
test_programs = \
qdata \
boxed \
enums \
param \
threadtests \
dynamictests \
binding \
properties \
reference \
valuearray \
type \
private \
closure \
object \
$(NULL)
# -----------------------------------------------------------------------------
test_programs += ifaceproperties
ifaceproperties_SOURCES = ifaceproperties.c testcommon.h
# -----------------------------------------------------------------------------
test_programs += signals
signals_SOURCES = signals.c
nodist_signals_SOURCES = marshalers.c marshalers.h
signals.o: marshalers.h
CLEANFILES += marshalers.h marshalers.c
EXTRA_DIST += marshalers.list
if CROSS_COMPILING
glib_genmarshal=$(GLIB_GENMARSHAL)
else
glib_genmarshal=$(top_builddir)/gobject/glib-genmarshal
endif
marshalers.h: Makefile.am marshalers.list
$(AM_V_GEN) $(glib_genmarshal) --prefix=test $(srcdir)/marshalers.list --header --valist-marshallers > marshalers.h
marshalers.c: Makefile.am marshalers.h marshalers.list
$(AM_V_GEN) (echo "#include \"marshalers.h\""; $(glib_genmarshal) --prefix=test $(srcdir)/marshalers.list --body --valist-marshallers) > $@.tmp && mv $@.tmp $@