Re: Force a file to be compiled always
Hi Ralf, excuse me, I have sent this mail twice but in the mailing list the body seems to be empty. I will try it a last time with another method... >> your first suggestion (with the phony target) works great. The second one >> does not force compilation here (but that doesn't matter anymore since I >> use the phony target now). > Hmm, do you have a file named FORCE in source or build tree? No. >> As to the third suggestion: I use the __DATE__ and __TIME__ macros in my >> code as a kind of version information. Therefore the compilation result >> differs with every compilation, although my source file does not change. Is >> there yet a better method to store the compilation time stamp in a library >> without fiddling with make targets? > People do this, but I don't think storing the date and the time is the > most useful thing to do. How about a different suggestion: store > information generated from your version control repository? This would probably be the nicest thing to do. We will have to think about it... > Hope that, and the other comments posted, help. Yes, very much! Bye, Benjamin
Re: Force a file to be compiled always
Hi Ralf, excuse me, I have sent this mail twice but in the mailing list the body seems to be empty. I will try it a last time with another method... >> your first suggestion (with the phony target) works great. The second one >> does not force compilation here (but that doesn't matter anymore since I >> use the phony target now). > Hmm, do you have a file named FORCE in source or build tree? No. >> As to the third suggestion: I use the __DATE__ and __TIME__ macros in my >> code as a kind of version information. Therefore the compilation result >> differs with every compilation, although my source file does not change. Is >> there yet a better method to store the compilation time stamp in a library >> without fiddling with make targets? > People do this, but I don't think storing the date and the time is the > most useful thing to do. How about a different suggestion: store > information generated from your version control repository? This would probably be the nicest thing to do. We will have to think about it... > Hope that, and the other comments posted, help. Yes, very much! Bye, Benjamin
Re: Force a file to be compiled always
Re: Force a file to be compiled always
Re: Force a file to be compiled always
Hi Ralf, your first suggestion (with the phony target) works great. The second one does not force compilation here (but that doesn't matter anymore since I use the phony target now). As to the third suggestion: I use the __DATE__ and __TIME__ macros in my code as a kind of version information. Therefore the compilation result differs with every compilation, although my source file does not change. Is there yet a better method to store the compilation time stamp in a library without fiddling with make targets? Thank you very much and bye, Benjamin
Re: Force a file to be compiled always
Hi Ralf, your first suggestion (with the phony target) works great. The second one does not force compilation here (but that doesn't matter anymore since I use the phony target now). As to the third suggestion: I use the __DATE__ and __TIME__ macros in my code as a kind of version information. Therefore the compilation result differs with every compilation, although my source file does not change. Is there yet a better method to store the compilation time stamp in a library without fiddling with make targets? Thank you very much and bye, Benjamin
Force a file to be compiled always
Hello, almost ten years ago there was a question in this mailing list how to force a source file to be compiled always. http://lists.gnu.org/archive/html/automake/2002-02/msg00099.html Unfortunately the solutions mentioned there seem not to work with me. My Makefile.am looks like this: --- lib_LTLIBRARIES = libMyLibrary.la libMyLibrary_la_SOURCES = MySourceFile.cpp \ MySourceFile.h --- and when I add the .PHONY-line I get this Makefile.am: --- lib_LTLIBRARIES = libMyLibrary.la .PHONY : MySourceFile.cpp libMyLibrary_la_SOURCES = MySourceFile.cpp \ MySourceFile.h --- When executing make I receive this error message: --- Build of configuration Default for project MeshingLib make -j install Making install in src make[1]: Entering directory `/home/bbihler/StarTeam/Bibliotheken/C++/TWTMeshingLib/build/debug/src' cd ../../.. && /bin/sh /home/bbihler/StarTeam/Bibliotheken/C++/TWTMeshingLib/missing --run automake-1.9 --foreign src/Makefile cd .. && /bin/sh ./config.status src/Makefile depfiles config.status: creating src/Makefile config.status: executing depfiles commands make[1]: Leaving directory `/home/bbihler/StarTeam/Bibliotheken/C++/TWTMeshingLib/build/debug/src' make[1]: Entering directory `/home/bbihler/StarTeam/Bibliotheken/C++/TWTMeshingLib/build/debug/src' if /bin/sh ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I../../../src -I.. -I/home/bbihler/StarTeam/Bibliotheken/C++/Medina-Bibliotheken/include -I/home/bbihler/StarTeam/Bibliotheken/C++/Xerces/include -Wall -Wno-unknown-pragmas -fopenmp -g -O0 -DTWT_CHECKS -DTR1_CONTAINERS -MT MySourceFile.lo -MD -MP -MF ".deps/MySourceFile.Tpo" -c -o MySourceFile.lo MySourceFile.cpp; \ then mv -f ".deps/MySourceFile.Tpo" ".deps/MySourceFile.Plo"; else rm -f ".deps/MySourceFile.Tpo"; exit 1; fi g++ -DHAVE_CONFIG_H -I. -I../../../src -I.. -I/home/bbihler/StarTeam/Bibliotheken/C++/Medina-Bibliotheken/include -I/home/bbihler/StarTeam/Bibliotheken/C++/Xerces/include -Wall -Wno-unknown-pragmas -fopenmp -g -O0 -DTWT_CHECKS -DTR1_CONTAINERS -MT MySourceFile.lo -MD -MP -MF .deps/MySourceFile.Tpo -c MySourceFile.cpp -fPIC -DPIC -o .libs/MySourceFile.o g++: MySourceFile.cpp: Datei oder Verzeichnis nicht gefunden g++: no input files make[1]: *** [MySourceFile.lo] Fehler 1 make: *** [install-recursive] Fehler 1 make[1]: Leaving directory `/home/bbihler/StarTeam/Bibliotheken/C++/TWTMeshingLib/build/debug/src' --- "Datei oder Verzeichnis nicht gefunden" means "File or directory not found". Is there any easy solution? Or can someone tell me what I have done wrong? Thank you very much, Benjamin Bihler
Force a file to be compiled always
Hello, almost ten years ago there was a question in this mailing list how to force a source file to be compiled always. http://lists.gnu.org/archive/html/automake/2002-02/msg00099.html Unfortunately the solutions mentioned there seem not to work with me. My Makefile.am looks like this: --- lib_LTLIBRARIES = libMyLibrary.la libMyLibrary_la_SOURCES = MySourceFile.cpp \ MySourceFile.h --- and when I add the .PHONY-line I get this Makefile.am: --- lib_LTLIBRARIES = libMyLibrary.la .PHONY : MySourceFile.cpp libMyLibrary_la_SOURCES = MySourceFile.cpp \ MySourceFile.h --- When executing make I receive this error message: --- Build of configuration Default for project MeshingLib make -j install Making install in src make[1]: Entering directory `/home/bbihler/StarTeam/Bibliotheken/C++/TWTMeshingLib/build/debug/src' cd ../../.. && /bin/sh /home/bbihler/StarTeam/Bibliotheken/C++/TWTMeshingLib/missing --run automake-1.9 --foreign src/Makefile cd .. && /bin/sh ./config.status src/Makefile depfiles config.status: creating src/Makefile config.status: executing depfiles commands make[1]: Leaving directory `/home/bbihler/StarTeam/Bibliotheken/C++/TWTMeshingLib/build/debug/src' make[1]: Entering directory `/home/bbihler/StarTeam/Bibliotheken/C++/TWTMeshingLib/build/debug/src' if /bin/sh ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I../../../src -I.. -I/home/bbihler/StarTeam/Bibliotheken/C++/Medina-Bibliotheken/include -I/home/bbihler/StarTeam/Bibliotheken/C++/Xerces/include -Wall -Wno-unknown-pragmas -fopenmp -g -O0 -DTWT_CHECKS -DTR1_CONTAINERS -MT MySourceFile.lo -MD -MP -MF ".deps/MySourceFile.Tpo" -c -o MySourceFile.lo MySourceFile.cpp; \ then mv -f ".deps/MySourceFile.Tpo" ".deps/MySourceFile.Plo"; else rm -f ".deps/MySourceFile.Tpo"; exit 1; fi g++ -DHAVE_CONFIG_H -I. -I../../../src -I.. -I/home/bbihler/StarTeam/Bibliotheken/C++/Medina-Bibliotheken/include -I/home/bbihler/StarTeam/Bibliotheken/C++/Xerces/include -Wall -Wno-unknown-pragmas -fopenmp -g -O0 -DTWT_CHECKS -DTR1_CONTAINERS -MT MySourceFile.lo -MD -MP -MF .deps/MySourceFile.Tpo -c MySourceFile.cpp -fPIC -DPIC -o .libs/MySourceFile.o g++: MySourceFile.cpp: Datei oder Verzeichnis nicht gefunden g++: no input files make[1]: *** [MySourceFile.lo] Fehler 1 make: *** [install-recursive] Fehler 1 make[1]: Leaving directory `/home/bbihler/StarTeam/Bibliotheken/C++/TWTMeshingLib/build/debug/src' --- "Datei oder Verzeichnis nicht gefunden" means "File or directory not found". Is there any easy solution? Or can someone tell me what I have done wrong? Thank you very much, Benjamin Bihler