-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi,
I have some unit tests building in sub directories. It took me a while to get them working (admittedly also due to my limited automake/autotools knowledge), but with subdir-objects enabled they won't run anymore and I'm uncertain what to do to make them work again. Makefile.am excerpt: # [...] source_code_files = audio.c audiomixer.c audiosourcefadepanvol.c audiosourceffmpeg.c audiosourceflac.c audiosourcefile.c audiosourceformatconvert.c audiosourceloop.c audiosourceogg.c audiosourceprereadcache.c audiosourceresample.c audiosourceresourcefile.c audiosourcewave.c avl-tree/avl-tree.c avl-tree-helpers.c connections.c file.c filelist.c diskcache.c graphics.c graphics2dsprites.c graphics2dspriteslist.c graphics2dspritestree.c graphicscamera.c graphicsnull.c graphicsnullrender.c graphicsnulltexture.c graphicsogre.cpp graphicsogrerender.cpp graphicssdl.c graphicssdlglext.c graphicssdlrender.c graphicssdltexture.c graphicstexturelist.c graphicstextureloader.c graphicstexturemanager.c graphicstexturemanagermembudget.c hash.c hostresolver.c ipcheck.c library.c listeners.c logging.c luaerror.c luafuncs.c luafuncs_debug.c luafuncs_graphics.c luafuncs_graphics_camera.c luafuncs_media_object.c luafuncs_net.c luafuncs_object.c luafuncs_objectgraphics.c luafuncs_objectphysics.c luafuncs_os.c luafuncs_physics.c luafuncs_rundelayed.c luafuncs_string.c luafuncs_vector.c luastate.c luastate_functionTables.c main.c mathhelpers.c orderedExecution.c osinfo.c physics.cpp physicsinternal.cpp poolAllocator.c signalhandling.c threading.c timefuncs.c win32console.c resources.c sockets.c zipdecryptionnone.c zipfile.c # [...] other omitted unrelated stuff # ------------- # Unit test section # ------------- TESTS= testd = ctests TEST_CFLAGS= $(AM_CFLAGS) -DUNITTEST # ------------- # C tests # ------------- check_PROGRAMS = $(testd)/test-imgloader $(testd)/test-texman-1 $(testd)/test-imgloader-colors __testd__test_imgloader_SOURCES = $(testd)/test-imgloader.c $(source_code_files) __testd__test_imgloader_LDFLAGS = $(FINAL_LD_FLAGS) __testd__test_imgloader_CFLAGS = $(TEST_CFLAGS) __testd__test_imgloader_colors_SOURCES = $(testd)/test-imgloader-colors.c $(source_code_files) __testd__test_imgloader_colors_LDFLAGS = $(FINAL_LD_FLAGS) __testd__test_imgloader_colors_CFLAGS = $(TEST_CFLAGS) __testd__test_texman_1_SOURCES = $(testd)/test-texman-1.c $(source_code_files) __testd__test_texman_1_LDFLAGS = $(FINAL_LD_FLAGS) __testd__test_texman_1_CFLAGS = $(TEST_CFLAGS) TESTS += $(testd)/test-imgloader $(testd)/test-texman-1 $(testd)/test-imgloader-colors Basically, I want to link the tests in the "ctests/" subdirectory (referenced with $(testd)/ in most places) together with the main object files of the main program (as listed in $source_code_files). That worked fine before, but with subdir-objects enabled, this happens: make[1]: Entering directory '/home/jonas/Develop/blitwizard/src' Makefile:1143: ctests/.deps/__testd__test_imgloader-test-imgloader.Po: No such file or directory Makefile:1144: ctests/.deps/__testd__test_imgloader_colors-test-imgloader-colors.Po: No such file or directory Makefile:1145: ctests/.deps/__testd__test_texman_1-test-texman-1.Po: No such file or directory make[1]: *** No rule to make target 'ctests/.deps/__testd__test_texman_1-test-texman-1.Po'. Stop. make[1]: Leaving directory '/home/jonas/Develop/blitwizard/src' The .Po files it searches are inside .deps/ not ctests/.deps/. So since those .Po files are in the wrong place, is that my fault? Why would automake place them in some other place than it expects them? What can I do to fix that? While I kind of understand the problem (files in wrong place), I have no idea what to do about it.. Regards, Jonas Thiem -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQIcBAEBAgAGBQJTSey2AAoJEBIDTbbx8YkeeDYP/2hXfrPked7MlCV7YRc3UgBi sRkZkRsutnam8+AbjE6Xbe9/ugl5kT7Et8/F0jG3ewTCQJ1KoqnqqNStHxD+BqT4 Ix/lWALpx2dNuBawL/GTElK+ib1YSgtqNN4dFO64Wtr9rlcrE6GpDUCy4+Uink8D HxuE6K351T0fx+heYvPLwQ7gqCblkiRE1QFRhkhfC5FDiS7EH/IbneQ1S4oYIYW6 zROk6Z7D53ZpjPDdvuVO6vwfWWRCxciQPVcNv4rdMLB+BvarWtn6g0D5vrlyZ/Dx 8d9XNNNQmX9VJabgtL3yLPazW78fiP3NFCtqMA4sQy+luVTItvcbyII304gLlg4B /8ab1iILBzXx3CsvONbDVIR+gETGoZq4/8b31hulU+gfyfuydh2qihW0RIOjj6vk Uu0kxLDWoKo/rePt+L2xEXmUAjoOnwPcGstcfjNij+rMACp4mqlBfo+lgM1yQqE5 RCtbcKwxqEYyoeQ8HmGX/Tht8vROU3J4yVsv/fpn57Et73ZlZNWm1bDNDR1Gp9rg sdwYxzbEe/PU+qgYMbz1OUYPtbFz6MxtVoZzOCbFGboBqVXhL7ZskBGWJKSZ5Ssn 154s7oQh5jkzz+AErt9DORqgO4JJ51K9SWUIft7cglTifau9U4ZStLCH8tyHPHL0 1sUR/G3+8zi2WCJquLkR =nSUZ -----END PGP SIGNATURE-----