Thread: [Cppunit-devel] Patch for VC++ testrunner...
Brought to you by:
blep
From: Baptiste L. <bl...@cl...> - 2001-04-21 10:03:35
|
I finally made the patch. It's in the attached file. The bin-examples.tar.gz contains the binary files and should be unpacked above examples/. The patch includes Michael's Feather test runner (slightly modified to avoid conflict when compiling). I'll include my enhancement later, once I cleaned it a bit. It's also include the original sample application that show how to use the test runner. CppUnit extensions have also been added (include/cppunit/extensions). I also added the makefile.am in each new directory (hope I did not forget one), and added them to the SUBDIR variable. The dsp and dsw have been added to the EXTRA_DIST. Should the .cpp and .h be added to ? If so, could this be done using shell command (something akin to EXTRA_DIST = `ls *.h *.cpp *.ico *.rc *.bmp`) ? I played around with cvs. How to you get it to make a patch containing the binary file ? This is the command line I'd used (I didn't used it because of the EOL problem with the dsp/dsw, but once it is fixed I plan to use that): cvs rdiff -R -u -r tg-cppunitsf-sf-1 -r tg-cppunitsf-trunc-patch-testrunner sf/cppunit > testrunner.patch How do you get it to do: "for the binary file, I want you to include the version of the second revision if they are different." Same question using diff. Once all this is merged, could a tarball be generated so I can check if no file is missing ? Once this is validated, we could probably make a release. I think I'll write a small html page "build guide for win32". Baptiste. --- Baptiste Lepilleur <gai...@fr...> http://gaiacrtn.free.fr/index.html Author of The Text Reformatter, a tool for fanfiction readers and writers. Language: English, French (Well, I'm French). |
From: Bastiaan B. <bas...@li...> - 2001-04-22 12:17:32
|
Baptiste Lepilleur wrote: > I finally made the patch. It's in the attached file. The > bin-examples.tar.gz contains the binary files and should be unpacked above > examples/. > I see. One question: is the test runner MSVC++ specific per definition? If not, I'd prefer to put the files in a win32 sub directory, rather than 'msvc6'. People may want to compile under a different compiler than MSVC++. > > The patch includes Michael's Feather test runner (slightly modified to > avoid conflict when compiling). I'll include my enhancement later, once I > cleaned it a bit. It's also include the original sample application that > show how to use the test runner. CppUnit extensions have also been added > (include/cppunit/extensions). > > I also added the makefile.am in each new directory (hope I did not > forget one), and added them to the SUBDIR variable. The dsp and dsw have > been added to the EXTRA_DIST. Should the .cpp and .h be added to ? If so, > could this be done using shell command (something akin to EXTRA_DIST = `ls > *.h *.cpp *.ico *.rc *.bmp`) ? > I'm not sure if a shell command would work. I'll try to find out. > > I played around with cvs. How to you get it to make a patch containing > the binary file ? This is the command line I'd used (I didn't used it > because of the EOL problem with the dsp/dsw, but once it is fixed I plan to > use that): > > cvs rdiff -R -u -r tg-cppunitsf-sf-1 -r tg-cppunitsf-trunc-patch-testrunner > sf/cppunit > testrunner.patch > > How do you get it to do: "for the binary file, I want you to include the > version of the second revision if they are different." Same question using > diff. > According to the man/info pages, diff cannot output the contents of binary files. But again, I'll see if some solution is available. > > Once all this is merged, could a tarball be generated so I can check if > no file is missing ? Once this is validated, we could probably make a > release. I think I'll write a small html page "build guide for win32". > Once your patches have been merged, I'll put a tar ball in the projects FTP section. Could you send me the html page? Seems like a good addition in the doc dir. Bastiaan > > Baptiste. > --- > Baptiste Lepilleur <gai...@fr...> http://gaiacrtn.free.fr/index.html > Author of The Text Reformatter, a tool for fanfiction readers and writers. > Language: English, French (Well, I'm French). > > ------------------------------------------------------------------------ > Name: cppunit-testrunner-bin-examples.tar.gz > cppunit-testrunner-bin-examples.tar.gz Type: Unix Tape Archive (application/x-tar) > Encoding: base64 > Download Status: Not downloaded with message > > Name: cppunit-testrunner.patch.gz > cppunit-testrunner.patch.gz Type: application/x-compressed > Encoding: base64 > Download Status: Not downloaded with message |
From: Baptiste L. <bl...@cl...> - 2001-04-22 14:35:01
|
> > I see. > One question: is the test runner MSVC++ specific per definition? If not, I'd prefer to put the > files in a win32 sub directory, rather than 'msvc6'. People may want to compile under a different > compiler than MSVC++. It use MFC. I think it is possible to use MFC with other compiler but I'm not sure (the sure of the MFC use lot of compiler specific stuff). Borland comes with its one set of "gui" class, if I remember well. I'll try to check the borland version on xprogramming to see if anything was kept from the original GUI. Plus there is the fact that C++ dll produced by VC++ can only be linked with C++: Borland and VC++ do not decorate the name the same way :-(. > > I also added the makefile.am in each new directory (hope I did not > > forget one), and added them to the SUBDIR variable. The dsp and dsw have > > been added to the EXTRA_DIST. Should the .cpp and .h be added to ? If so, > > could this be done using shell command (something akin to EXTRA_DIST = `ls > > *.h *.cpp *.ico *.rc *.bmp`) ? > > > > I'm not sure if a shell command would work. I'll try to find out. Thanks. Baptiste. --- Baptiste Lepilleur <gai...@fr...> http://gaiacrtn.free.fr/index.html Author of The Text Reformatter, a tool for fanfiction readers and writers. Language: English, French (Well, I'm French). |
From: Bastiaan B. <bas...@li...> - 2001-04-22 21:31:28
|
Baptiste Lepilleur wrote: > > > > I see. > > One question: is the test runner MSVC++ specific per definition? If not, > I'd prefer to put the > > files in a win32 sub directory, rather than 'msvc6'. People may want to > compile under a different > > compiler than MSVC++. > It use MFC. I think it is possible to use MFC with other compiler but > I'm not sure (the sure of the MFC use lot of compiler specific stuff). > Borland comes with its one set of "gui" class, if I remember well. I'll try > to check the borland version on xprogramming to see if anything was kept > from the original GUI. Plus there is the fact that C++ dll produced by VC++ > can only be linked with C++: Borland and VC++ do not decorate the name the > same way :-(. > The different name mangling is intentional: with the same mangling scheme the apps would link, but crash due to incompatible implementions of exceptions, RTTI, etc. The borland port seems not to use MFC, indeed. But it looks like the msvc++ and borland versions share large parts of the code. Better to have that part in the tree only once, and abstract the GUI interface. So I still prefer a win32 subdir over an msvc one: when someone wants to support borland, s/he can start from there and split out the concrete GUI calls. > > > > I also added the makefile.am in each new directory (hope I did not > > > forget one), and added them to the SUBDIR variable. The dsp and dsw have > > > been added to the EXTRA_DIST. Should the .cpp and .h be added to ? If > so, > > > could this be done using shell command (something akin to EXTRA_DIST = > `ls > > > *.h *.cpp *.ico *.rc *.bmp`) ? > > > > > > > I'm not sure if a shell command would work. I'll try to find out. > > Thanks. > OK, it does not work. But I've found another way, which is more convenient: With the 'dist-hook' target one can specify commands to run after the dist dir has been created, but before it has been tarred. Here we can simply copy the msvc directories. No need for a separate Makefile.am in alls directories. Bastiaan > > Baptiste. > --- > Baptiste Lepilleur <gai...@fr...> http://gaiacrtn.free.fr/index.html > Author of The Text Reformatter, a tool for fanfiction readers and writers. > Language: English, French (Well, I'm French). > > _______________________________________________ > Cppunit-devel mailing list > Cpp...@li... > http://lists.sourceforge.net/lists/listinfo/cppunit-devel |
From: Baptiste L. <bl...@cl...> - 2001-04-23 18:56:41
|
> The borland port seems not to use MFC, indeed. But it looks like the msvc++ and > borland versions share large parts of the code. Better to have that part in > the tree only once, and abstract the GUI interface. > So I still prefer a win32 subdir over an msvc one: when someone wants to > support borland, s/he can start from there and split out the concrete GUI > calls. I gave it a quick look, and the closest common stuff I could find was the GUITestResult class, yet even the synchronization mecanism was removed (it look like the Borland version does not run the test in a separate thread). Not worth factoring out, since it would make it hard to change a project without impacting the other, therefore reducing the velocity of change. The test runner itself is pretty simple : 1 class for the dialog, 1 class that prograte result to the dialog, 1 class for the ActiveTest (threaded test), and a few other support class that don't to much. Each of this is compiler specific.... > OK, it does not work. But I've found another way, which is more convenient: > With the 'dist-hook' target one can specify commands to run after the dist dir > has been created, but before it has been tarred. Here we can simply copy the > msvc directories. No need for a separate Makefile.am in alls directories. Hmm, couldn't this be applied to everything, I mean I can't see a file in the CVS repository that should not be in the "release" tarball. Baptiste. --- Baptiste Lepilleur <gai...@fr...> http://gaiacrtn.free.fr/index.html Author of The Text Reformatter, a tool for fanfiction readers and writers. Language: English, French (Well, I'm French). |
From: Bastiaan B. <bas...@li...> - 2001-04-23 22:40:35
|
Baptiste Lepilleur wrote: > > The borland port seems not to use MFC, indeed. But it looks like the > msvc++ and > > borland versions share large parts of the code. Better to have that part > in > > the tree only once, and abstract the GUI interface. > > So I still prefer a win32 subdir over an msvc one: when someone wants to > > support borland, s/he can start from there and split out the concrete GUI > > calls. > I gave it a quick look, and the closest common stuff I could find was > the GUITestResult class, yet even the synchronization mecanism was removed > (it look like the Borland version does not run the test in a separate > thread). Not worth factoring out, since it would make it hard to change a > project without impacting the other, therefore reducing the velocity of > change. > The test runner itself is pretty simple : 1 class for the dialog, 1 > class that prograte result to the dialog, 1 class for the ActiveTest > (threaded test), and a few other support class that don't to much. Each of > this is compiler specific.... > OK, I just briefly glanced over it and saw that both had a lot of filenames in common, which hinted at a similar structure at least. Apparently it's not that simple :-( I'll let the portability issue rest until someone actually wants to spend effort into supporting borland or other compilers. > > > OK, it does not work. But I've found another way, which is more > convenient: > > With the 'dist-hook' target one can specify commands to run after the dist > dir > > has been created, but before it has been tarred. Here we can simply copy > the > > msvc directories. No need for a separate Makefile.am in alls directories. > Hmm, couldn't this be applied to everything, I mean I can't see a file > in the CVS repository that should not be in the "release" tarball. > Sometimes you may have files in the CVS repository you do not want in a release: e.g. new, immature classes that are not ready for release yet. But more importantly, make creates the dist tarball from a local checkout, after ./configure has run. At this time the dirtree contains localized generates files, like Makefiles, config.h and maybe other stuff as well. Furthermore all kind of other stuff generated during development, like core dumps, editor backups, patch rejects, etc., etc. occuppy the dir tree as well. So one would have to be selective about what to copy and what not, anyway. In general I think it's better if one consciously choose what goes in the dist and what not. Bastiaan > > Baptiste. > --- > Baptiste Lepilleur <gai...@fr...> http://gaiacrtn.free.fr/index.html > Author of The Text Reformatter, a tool for fanfiction readers and writers. > Language: English, French (Well, I'm French). > > _______________________________________________ > Cppunit-devel mailing list > Cpp...@li... > http://lists.sourceforge.net/lists/listinfo/cppunit-devel |
From: Baptiste L. <bl...@cl...> - 2001-04-24 06:51:13
|
> Sometimes you may have files in the CVS repository you do not want in a > release: e.g. new, immature classes that are not ready for release yet. Yes, that make sens. > But more importantly, make creates the dist tarball from a local checkout, > after ./configure has run. At this time the dirtree contains localized > generates files, like Makefiles, config.h and maybe other stuff as well. > Furthermore all kind of other stuff generated during development, like core > dumps, editor backups, patch rejects, etc., etc. occuppy the dir tree as well. > So one would have to be selective about what to copy and what not, anyway. > In general I think it's better if one consciously choose what goes in the dist > and what not. That match the way I'm doing my "dist" on windows: copy the directory tree, then run a "clean-up" batch file (It's easier to say what to clean up that to say what to keep). Baptiste. --- Baptiste Lepilleur <gai...@fr...> http://gaiacrtn.free.fr/index.html Author of The Text Reformatter, a tool for fanfiction readers and writers. Language: English, French (Well, I'm French). |