summaryrefslogtreecommitdiff
path: root/Makefile.am
diff options
context:
space:
mode:
authorAnthony G. Basile <blueness@gentoo.org>2012-11-15 20:18:22 -0500
committerAnthony G. Basile <blueness@gentoo.org>2012-11-15 20:18:22 -0500
commitc47f33a498f9c824a48c23987b312b3176602f7f (patch)
tree56d87b528c9149fbdcb6d286feb4a897a65b41cd /Makefile.am
parentb7b2cc298c71189c881150723708b49ca4c6112c (diff)
Second step of revamping the build system
The original Makefile.am was drawn to the top level. This commit breaks it out into the various directories with SUBDIRS connecting them. This makes each directory easier to maintain.
Diffstat (limited to 'Makefile.am')
-rw-r--r--Makefile.am620
1 files changed, 3 insertions, 617 deletions
diff --git a/Makefile.am b/Makefile.am
index de4c515f5c..08ac8bb57a 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,624 +1,10 @@
-
ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
+#SUBDIRS = docs keymaps keymaps-force-release man rules src test
-# And these are the special ones for /
-rootprefix=@rootprefix@
-rootbindir=$(rootprefix)/bin
-rootlibexecdir=$(rootprefix)/lib/systemd
-
-AM_CPPFLAGS = \
- -include $(top_builddir)/config.h \
- -DROOTPREFIX=\"$(rootprefix)\" \
- -I $(top_srcdir)/src/libudev \
- -I $(top_srcdir)/src/udev \
- $(OUR_CPPFLAGS)
-
-# ------------------------------------------------------------------------------
-
-if ENABLE_GTK_DOC
-SUBDIRS += \
- docs/libudev
-endif
-
-include_HEADERS += \
- src/libudev/libudev.h
-
-lib_LTLIBRARIES += \
- libudev.la
-
-libudev_la_SOURCES =\
- src/libudev/libudev-private.h \
- src/libudev/libudev.c \
- src/libudev/libudev-list.c \
- src/libudev/libudev-util.c \
- src/libudev/libudev-device.c \
- src/libudev/libudev-enumerate.c \
- src/libudev/libudev-monitor.c \
- src/libudev/libudev-queue.c \
- src/libudev/libudev-hwdb-def.h \
- src/libudev/libudev-hwdb.c
-
-libudev_la_CFLAGS = \
- $(AM_CFLAGS) \
- -fvisibility=hidden
-
-libudev_la_LDFLAGS = \
- $(AM_LDFLAGS) \
- -version-info $(LIBUDEV_CURRENT):$(LIBUDEV_REVISION):$(LIBUDEV_AGE) \
- -Wl,--version-script=$(top_srcdir)/src/libudev/libudev.sym
-
-pkgconfiglib_DATA += \
- src/libudev/libudev.pc
-
-EXTRA_DIST += \
- src/libudev/libudev.pc.in \
- src/libudev/libudev.sym
-
-CLEANFILES += \
- src/libudev/libudev.pc
-
-# move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
-libudev-install-move-hook:
- if test "$(libdir)" != "$(rootlibdir)"; then \
- $(MKDIR_P) $(DESTDIR)$(rootlibdir) && \
- so_img_name=$$(readlink $(DESTDIR)$(libdir)/libudev.so) && \
- so_img_rel_target_prefix=$$(echo $(libdir) | sed 's,\(^/\|\)[^/][^/]*,..,g') && \
- ln -sf $$so_img_rel_target_prefix$(rootlibdir)/$$so_img_name $(DESTDIR)$(libdir)/libudev.so && \
- mv $(DESTDIR)$(libdir)/libudev.so.* $(DESTDIR)$(rootlibdir); \
- fi
-
-libudev-uninstall-move-hook:
- rm -f $(DESTDIR)$(rootlibdir)/libudev.so*
-
-INSTALL_EXEC_HOOKS += libudev-install-move-hook
-UNINSTALL_EXEC_HOOKS += libudev-uninstall-move-hook
-
-# ------------------------------------------------------------------------------
-noinst_LTLIBRARIES += \
- libudev-private.la
-
-libudev_private_la_SOURCES =\
- $(libudev_la_SOURCES) \
- src/libudev/libudev-device-private.c \
- src/libudev/libudev-queue-private.c
-
-libudev_private_la_CFLAGS = \
- $(AM_CFLAGS) \
- -fvisibility=default
-
-libudev_private_la_LIBADD = \
- libsystemd-shared.la
-
-# ------------------------------------------------------------------------------
-MANPAGES += \
- man/udev.7 \
- man/udevadm.8 \
- man/systemd-udevd.service.8
-
-udev-confdirs:
- -$(MKDIR_P) $(DESTDIR)$(sysconfdir)/udev/rules.d
- -$(MKDIR_P) $(DESTDIR)$(sysconfdir)/udev/hwdb.d
-
-INSTALL_DATA_HOOKS += udev-confdirs
-
-dist_udevrules_DATA += \
- rules/99-systemd.rules \
- rules/42-usb-hid-pm.rules \
- rules/50-udev-default.rules \
- rules/60-persistent-storage-tape.rules \
- rules/60-persistent-serial.rules \
- rules/60-persistent-input.rules \
- rules/60-persistent-alsa.rules \
- rules/60-persistent-storage.rules \
- rules/64-btrfs.rules \
- rules/75-net-description.rules \
- rules/75-tty-description.rules \
- rules/78-sound-card.rules \
- rules/80-drivers.rules \
- rules/95-udev-late.rules
-
-dist_udevhwdb_DATA = \
- hwdb/20-pci-vendor-product.hwdb \
- hwdb/20-pci-classes.hwdb \
- hwdb/20-usb-vendor-product.hwdb \
- hwdb/20-usb-classes.hwdb \
- hwdb/20-acpi-vendor.hwdb \
- hwdb/20-OUI.hwdb
-
-udevconfdir = $(sysconfdir)/udev
-dist_udevconf_DATA = \
- src/udev/udev.conf
-
-sharepkgconfigdir = $(datadir)/pkgconfig
-sharepkgconfig_DATA = \
- src/udev/udev.pc
-
-EXTRA_DIST += \
- rules/99-systemd.rules.in \
- src/udev/udev.pc.in
-
-CLEANFILES += \
- rules/99-systemd.rules \
- src/udev/udev.pc
-
-bin_PROGRAMS += \
- udevadm
-
-libudev_core_la_SOURCES = \
- src/udev/udev.h \
- src/udev/udev-event.c \
- src/udev/udev-watch.c \
- src/udev/udev-node.c \
- src/udev/udev-rules.c \
- src/udev/udev-ctrl.c \
- src/udev/udev-builtin.c \
- src/udev/udev-builtin-blkid.c \
- src/udev/udev-builtin-btrfs.c \
- src/udev/udev-builtin-firmware.c \
- src/udev/udev-builtin-hwdb.c \
- src/udev/udev-builtin-input_id.c \
- src/udev/udev-builtin-kmod.c \
- src/udev/udev-builtin-net_id.c \
- src/udev/udev-builtin-path_id.c \
- src/udev/udev-builtin-usb_id.c
-
-libudev_core_la_CFLAGS = \
- $(AM_CFLAGS) \
- $(BLKID_CFLAGS) \
- $(KMOD_CFLAGS)
-
-libudev_core_la_LIBADD = \
- libudev-private.la \
- $(BLKID_LIBS) \
- $(KMOD_LIBS)
-
-libudev_core_la_CPPFLAGS = \
- $(AM_CPPFLAGS) \
- -DFIRMWARE_PATH="$(FIRMWARE_PATH)"
-
-if HAVE_ACL
-libudev_core_la_SOURCES += \
- src/udev/udev-builtin-uaccess.c
-endif
-
-systemd_udevd_SOURCES = \
- src/udev/udevd.c
-
-systemd_udevd_LDADD = \
- libudev-core.la
-
-udevadm_SOURCES = \
- src/udev/udevadm.c \
- src/udev/udevadm-info.c \
- src/udev/udevadm-control.c \
- src/udev/udevadm-monitor.c \
- src/udev/udevadm-hwdb.c \
- src/udev/udevadm-settle.c \
- src/udev/udevadm-trigger.c \
- src/udev/udevadm-test.c \
- src/udev/udevadm-test-builtin.c
-
-udevadm_LDADD = \
- libudev-core.la
-
-# ------------------------------------------------------------------------------
-TESTS += \
- test/udev-test.pl \
- test/rules-test.sh
-
-noinst_PROGRAMS += \
- test-libudev \
- test-udev
-
-test_libudev_SOURCES = \
- src/test/test-libudev.c
-
-test_libudev_LDADD = \
- libudev.la
-
-test_udev_SOURCES = \
- src/test/test-udev.c
-
-test_udev_LDADD = \
- libudev-core.la \
- $(BLKID_LIBS) \
- $(KMOD_LIBS) \
- $(SELINUX_LIBS)
-
-check_DATA += \
- test/sys
-
-# packed sysfs test tree
-test/sys:
- $(AM_V_at)$(MKDIR_P) $(dir $@)
- $(AM_V_GEN)tar -C test/ -xJf $(top_srcdir)/test/sys.tar.xz
-
-test-sys-distclean:
- -rm -rf test/sys
-DISTCLEAN_LOCAL_HOOKS += test-sys-distclean
-
-EXTRA_DIST += \
- test/sys.tar.xz \
- test/udev-test.pl \
- test/rules-test.sh \
- test/rule-syntax-check.py
-
-# ------------------------------------------------------------------------------
-ata_id_SOURCES = \
- src/udev/ata_id/ata_id.c
-
-ata_id_LDADD = \
- libudev-private.la
-
-udevlibexec_PROGRAMS += \
- ata_id
-
-# ------------------------------------------------------------------------------
-cdrom_id_SOURCES = \
- src/udev/cdrom_id/cdrom_id.c
-
-cdrom_id_LDADD = \
- libudev.la
-
-udevlibexec_PROGRAMS += \
- cdrom_id
-
-dist_udevrules_DATA += \
- rules/60-cdrom_id.rules
-
-# ------------------------------------------------------------------------------
-collect_SOURCES = \
- src/udev/collect/collect.c
-
-collect_LDADD = \
- libudev-private.la
-
-udevlibexec_PROGRAMS += \
- collect
-
-# ------------------------------------------------------------------------------
-scsi_id_SOURCES =\
- src/udev/scsi_id/scsi_id.c \
- src/udev/scsi_id/scsi_serial.c \
- src/udev/scsi_id/scsi.h \
- src/udev/scsi_id/scsi_id.h
-
-scsi_id_LDADD = \
- libudev-private.la
+SUBDIRS = keymaps keymaps-force-release
-udevlibexec_PROGRAMS += \
- scsi_id
-
-EXTRA_DIST += \
- src/udev/scsi_id/README
-
-# ------------------------------------------------------------------------------
-v4l_id_SOURCES = \
- src/udev/v4l_id/v4l_id.c
-
-v4l_id_LDADD = \
- libudev.la
-
-udevlibexec_PROGRAMS += \
- v4l_id
-
-dist_udevrules_DATA += \
- rules/60-persistent-v4l.rules
-
-# ------------------------------------------------------------------------------
-accelerometer_SOURCES = \
- src/udev/accelerometer/accelerometer.c
-
-accelerometer_LDADD = \
- libudev.la -lm
-
-udevlibexec_PROGRAMS += \
- accelerometer
-
-dist_udevrules_DATA += \
- rules/61-accelerometer.rules
-
-# ------------------------------------------------------------------------------
-if ENABLE_GUDEV
if ENABLE_GTK_DOC
SUBDIRS += \
- docs/gudev
-endif
-
-libgudev_includedir = \
- $(includedir)/gudev-1.0/gudev
-
-libgudev_include_HEADERS = \
- src/gudev/gudev.h \
- src/gudev/gudevenums.h \
- src/gudev/gudevenumtypes.h \
- src/gudev/gudevtypes.h \
- src/gudev/gudevclient.h \
- src/gudev/gudevdevice.h \
- src/gudev/gudevenumerator.h
-
-lib_LTLIBRARIES += libgudev-1.0.la
-
-pkgconfiglib_DATA += \
- src/gudev/gudev-1.0.pc
-
-CLEANFILES += \
- src/gudev/gudev-1.0.pc
-
-libgudev_1_0_la_SOURCES = \
- src/gudev/gudevenums.h \
- src/gudev/gudevenumtypes.h \
- src/gudev/gudevenumtypes.h\
- src/gudev/gudevtypes.h \
- src/gudev/gudevclient.h \
- src/gudev/gudevclient.c \
- src/gudev/gudevdevice.h \
- src/gudev/gudevdevice.c \
- src/gudev/gudevenumerator.h \
- src/gudev/gudevenumerator.c \
- src/gudev/gudevprivate.h
-
-nodist_libgudev_1_0_la_SOURCES = \
- src/gudev/gudevmarshal.h \
- src/gudev/gudevmarshal.c \
- src/gudev/gudevenumtypes.h \
- src/gudev/gudevenumtypes.c
-
-BUILT_SOURCES += \
- $(nodist_libgudev_1_0_la_SOURCES)
-
-libgudev_1_0_la_CPPFLAGS = \
- $(AM_CPPFLAGS) \
- -I$(top_builddir)/src\
- -I$(top_srcdir)/src\
- -I$(top_builddir)/src/gudev \
- -I$(top_srcdir)/src/gudev \
- -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT \
- -D_GUDEV_COMPILATION \
- -DG_LOG_DOMAIN=\"GUdev\"
-
-libgudev_1_0_la_CFLAGS = \
- $(AM_CFLAGS) \
- -fvisibility=default \
- $(GLIB_CFLAGS)
-
-libgudev_1_0_la_LIBADD = \
- libudev.la \
- $(GLIB_LIBS)
-
-libgudev_1_0_la_LDFLAGS = \
- $(AM_LDFLAGS) \
- -version-info $(LIBGUDEV_CURRENT):$(LIBGUDEV_REVISION):$(LIBGUDEV_AGE) \
- -export-dynamic -no-undefined \
- -export-symbols-regex '^g_udev_.*'
-
-src/gudev/gudevmarshal.h: src/gudev/gudevmarshal.list
- $(AM_V_at)$(MKDIR_P) $(dir $@)
- $(AM_V_GEN)glib-genmarshal $< --prefix=g_udev_marshal --header > $@
-
-src/gudev/gudevmarshal.c: src/gudev/gudevmarshal.list
- $(AM_V_at)$(MKDIR_P) $(dir $@)
- $(AM_V_GEN)echo '#include "gudevmarshal.h"' > $@ && \
- glib-genmarshal $< --prefix=g_udev_marshal --body >> $@
-
-src/gudev/gudevenumtypes.%: src/gudev/gudevenumtypes.%.template src/gudev/gudevenums.h
- $(AM_V_at)$(MKDIR_P) $(dir $@)
- $(AM_V_GEN)glib-mkenums --template $^ > $@
-
-if HAVE_INTROSPECTION
--include $(INTROSPECTION_MAKEFILE)
-
-src/gudev/GUdev-1.0.gir: libgudev-1.0.la
-
-src_gudev_GUdev_1_0_gir_INCLUDES = GObject-2.0
-
-src_gudev_GUdev_1_0_gir_CFLAGS = \
- $(INCLUDES) \
- -D_GUDEV_COMPILATION \
- -D_GUDEV_WORK_AROUND_DEV_T_BUG \
- -I$(top_srcdir)/src \
- -I$(top_builddir)/src \
- -I$(top_srcdir)/src/gdev \
- -I$(top_builddir)/src/gdev
-
-src_gudev_GUdev_1_0_gir_LIBS = libgudev-1.0.la
-
-src_gudev_GUdev_1_0_gir_SCANNERFLAGS = \
- --pkg-export=gudev-1.0 \
- --warn-all
-
-src_gudev_GUdev_1_0_gir_FILES = \
- src/gudev/gudev.h \
- src/gudev/gudevtypes.h \
- src/gudev/gudevenums.h \
- src/gudev/gudevenumtypes.h \
- src/gudev/gudevclient.h \
- src/gudev/gudevdevice.h \
- src/gudev/gudevenumerator.h \
- src/gudev/gudevclient.c \
- src/gudev/gudevdevice.c \
- src/gudev/gudevenumerator.c
-
-INTROSPECTION_GIRS = src/gudev/GUdev-1.0.gir
-INTROSPECTION_SCANNER_ARGS = --c-include=gudev/gudev.h
-
-girdir = $(datadir)/gir-1.0
-gir_DATA = \
- src/gudev/GUdev-1.0.gir
-
-typelibsdir = $(libdir)/girepository-1.0
-typelibs_DATA = \
- src/gudev/GUdev-1.0.typelib
-
-CLEANFILES += $(gir_DATA) $(typelibs_DATA)
-endif # HAVE_INTROSPECTION
-
-# move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
-libgudev-install-move-hook:
- if test "$(libdir)" != "$(rootlibdir)"; then \
- $(MKDIR_P) $(DESTDIR)$(rootlibdir) && \
- so_img_name=$$(readlink $(DESTDIR)$(libdir)/libgudev-1.0.so) && \
- so_img_rel_target_prefix=$$(echo $(libdir) | sed 's,\(^/\|\)[^/][^/]*,..,g') && \
- ln -sf $$so_img_rel_target_prefix$(rootlibdir)/$$so_img_name $(DESTDIR)$(libdir)/libgudev-1.0.so && \
- mv $(DESTDIR)$(libdir)/libgudev-1.0.so.* $(DESTDIR)$(rootlibdir); \
- fi
-
-libgudev-uninstall-move-hook:
- rm -f $(DESTDIR)$(rootlibdir)/libgudev-1.0.so*
-
-INSTALL_EXEC_HOOKS += libgudev-install-move-hook
-UNINSTALL_EXEC_HOOKS += libgudev-uninstall-move-hook
-endif
-
-EXTRA_DIST += \
- src/gudev/gudev-1.0.pc.in \
- src/gudev/gudevmarshal.list \
- src/gudev/gudevenumtypes.h.template \
- src/gudev/gudevenumtypes.c.template \
- src/gudev/gjs-example.js \
- src/gudev/seed-example-enum.js \
- src/gudev/seed-example.js
-
-
-# ------------------------------------------------------------------------------
-if ENABLE_KEYMAP
-keymap_SOURCES = \
- src/udev/keymap/keymap.c
-
-keymap_CPPFLAGS = \
- $(AM_CPPFLAGS) -I src/udev/keymap
-
-nodist_keymap_SOURCES = \
- src/udev/keymap/keys-from-name.h \
- src/udev/keymap/keys-to-name.h
-
-BUILT_SOURCES += \
- $(nodist_keymap_SOURCES)
-
-udevlibexec_PROGRAMS += \
- keymap
-
-dist_doc_DATA += \
- src/udev/keymap/README.keymap.txt
-
-dist_udevrules_DATA += \
- src/udev/keymap/95-keymap.rules \
- src/udev/keymap/95-keyboard-force-release.rules
-
-dist_udevhome_SCRIPTS = \
- src/udev/keymap/findkeyboards \
- src/udev/keymap/keyboard-force-release.sh
-
-TESTS += \
- src/udev/keymap/check-keymaps.sh
-
-CLEANFILES += \
- src/udev/keymap/keys.txt \
- src/udev/keymap/keys-from-name.gperf \
- src/udev/keymap/keyboard-force-release.sh
-
-udevkeymapdir = $(udevlibexecdir)/keymaps
-dist_udevkeymap_DATA = \
- keymaps/acer \
- keymaps/acer-aspire_5720 \
- keymaps/acer-aspire_8930 \
- keymaps/acer-aspire_5920g \
- keymaps/acer-aspire_6920 \
- keymaps/acer-travelmate_c300 \
- keymaps/asus \
- keymaps/compaq-e_evo \
- keymaps/dell \
- keymaps/dell-latitude-xt2 \
- keymaps/everex-xt5000 \
- keymaps/fujitsu-amilo_li_2732 \
- keymaps/fujitsu-amilo_pa_2548 \
- keymaps/fujitsu-amilo_pro_edition_v3505 \
- keymaps/fujitsu-amilo_pro_v3205 \
- keymaps/fujitsu-amilo_si_1520 \
- keymaps/fujitsu-esprimo_mobile_v5 \
- keymaps/fujitsu-esprimo_mobile_v6 \
- keymaps/genius-slimstar-320 \
- keymaps/hewlett-packard \
- keymaps/hewlett-packard-2510p_2530p \
- keymaps/hewlett-packard-compaq_elitebook \
- keymaps/hewlett-packard-pavilion \
- keymaps/hewlett-packard-presario-2100 \
- keymaps/hewlett-packard-tablet \
- keymaps/hewlett-packard-tx2 \
- keymaps/hewlett-packard_elitebook-8440p \
- keymaps/ibm-thinkpad-usb-keyboard-trackpoint \
- keymaps/inventec-symphony_6.0_7.0 \
- keymaps/lenovo-3000 \
- keymaps/lenovo-ideapad \
- keymaps/lenovo-thinkpad-usb-keyboard-trackpoint \
- keymaps/lenovo-thinkpad_x6_tablet \
- keymaps/lenovo-thinkpad_x200_tablet \
- keymaps/lg-x110 \
- keymaps/logitech-wave \
- keymaps/logitech-wave-cordless \
- keymaps/logitech-wave-pro-cordless \
- keymaps/maxdata-pro_7000 \
- keymaps/medion-fid2060 \
- keymaps/medionnb-a555 \
- keymaps/micro-star \
- keymaps/module-asus-w3j \
- keymaps/module-ibm \
- keymaps/module-lenovo \
- keymaps/module-sony \
- keymaps/module-sony-old \
- keymaps/module-sony-vgn \
- keymaps/module-sony-vpc \
- keymaps/olpc-xo \
- keymaps/onkyo \
- keymaps/oqo-model2 \
- keymaps/samsung-other \
- keymaps/samsung-90x3a \
- keymaps/samsung-sq1us \
- keymaps/samsung-sx20s \
- keymaps/toshiba-satellite_a100 \
- keymaps/toshiba-satellite_a110 \
- keymaps/toshiba-satellite_m30x \
- keymaps/zepto-znote
-
-udevkeymapforcereldir = $(udevlibexecdir)/keymaps/force-release
-dist_udevkeymapforcerel_DATA = \
- keymaps-force-release/dell-touchpad \
- keymaps-force-release/dell-xps \
- keymaps-force-release/hp-other \
- keymaps-force-release/samsung-other \
- keymaps-force-release/samsung-90x3a \
- keymaps-force-release/common-volume-keys
-
-src/udev/keymap/keys.txt: Makefile
- $(AM_V_at)$(MKDIR_P) $(dir $@)
- $(AM_V_GEN)$(CPP) $(CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) -dM -include linux/input.h - < /dev/null | $(AWK) '/^#define[ \t]+KEY_[^ ]+[ \t]+[0-9]/ { if ($$2 != "KEY_MAX") { print $$2 } }' | sed 's/^KEY_COFFEE$$/KEY_SCREENLOCK/' > $@
-
-src/udev/keymap/keys-from-name.gperf: src/udev/keymap/keys.txt Makefile
- $(AM_V_GEN)$(AWK) 'BEGIN{ print "struct key { const char* name; unsigned short id; };"; print "%null-strings"; print "%%";} { print $$1 ", " $$1 }' < $< > $@
-
-src/udev/keymap/keys-from-name.h: src/udev/keymap/keys-from-name.gperf Makefile
- $(AM_V_GEN)$(GPERF) -L ANSI-C -t --ignore-case -N lookup_key -H hash_key_name -p -C < $< > $@
-
-src/udev/keymap/keys-to-name.h: src/udev/keymap/keys.txt Makefile
- $(AM_V_GEN)$(AWK) 'BEGIN{ print "const char* const key_names[KEY_CNT] = { "} { print "[" $$1 "] = \"" $$1 "\"," } END{print "};"}' < $< > $@
+ docs/libudev
endif
-EXTRA_DIST += \
- src/udev/keymap/check-keymaps.sh \
- src/udev/keymap/keyboard-force-release.sh.in
-
-# ------------------------------------------------------------------------------
-mtd_probe_SOURCES = \
- src/udev/mtd_probe/mtd_probe.c \
- src/udev/mtd_probe/mtd_probe.h \
- src/udev/mtd_probe/probe_smartmedia.c
-
-mtd_probe_CPPFLAGS = \
- $(AM_CPPFLAGS)
-
-dist_udevrules_DATA += \
- rules/75-probe_mtd.rules
-
-udevlibexec_PROGRAMS += \
- mtd_probe
-