mirror of
https://github.com/reactos/reactos.git
synced 2024-12-26 09:04:39 +00:00
2003-12-07 Casper S. Hornstrup <chorns@users.sourceforge.net>
* regtests/Makefile: Generate regression test registrations. * regtests/kmregtests/.cvsignore: Ignore Makefile.tests. * regtests/win32base/.cvsignore: Ditto. * regtests/kmregtests/Makefile: Include Makefile.tests. * regtests/win32base/Makefile: Ditto. * regtests/kmregtests/tests: New directory. * regtests/win32base/tests: Ditto. * regtests/kmregtests/tests/.cvsignore: New file. * regtests/win32base/tests/.cvsignore: Ditto. * tools/helper.mk: Remove TARGET_GENREGTESTS. * tools/regtests.c: Generate makefile for regression tests. (change_extension): New function. * regtests/win32base/file-1.c: Move ... * regtests/win32base/tests/file-1.c: ... here. svn path=/trunk/; revision=6883
This commit is contained in:
parent
c22a7eb6ed
commit
3e8873192b
11 changed files with 133 additions and 54 deletions
|
@ -1,3 +1,20 @@
|
|||
2003-12-07 Casper S. Hornstrup <chorns@users.sourceforge.net>
|
||||
|
||||
* regtests/Makefile: Generate regression test registrations.
|
||||
* regtests/kmregtests/.cvsignore: Ignore Makefile.tests.
|
||||
* regtests/win32base/.cvsignore: Ditto.
|
||||
* regtests/kmregtests/Makefile: Include Makefile.tests.
|
||||
* regtests/win32base/Makefile: Ditto.
|
||||
* regtests/kmregtests/tests: New directory.
|
||||
* regtests/win32base/tests: Ditto.
|
||||
* regtests/kmregtests/tests/.cvsignore: New file.
|
||||
* regtests/win32base/tests/.cvsignore: Ditto.
|
||||
* tools/helper.mk: Remove TARGET_GENREGTESTS.
|
||||
* tools/regtests.c: Generate makefile for regression tests.
|
||||
(change_extension): New function.
|
||||
* regtests/win32base/file-1.c: Move ...
|
||||
* regtests/win32base/tests/file-1.c: ... here.
|
||||
|
||||
2003-12-06 Martin Fuchs <martin-fuchs@gmx.net>
|
||||
* Doxyfile, Makefile: initial doxygen configuration
|
||||
* drivers/Doxyfile, drivers/Makefile: Ditto.
|
||||
|
|
|
@ -1,6 +1,8 @@
|
|||
# $Id: Makefile,v 1.1 2003/07/11 18:13:57 chorns Exp $
|
||||
# $Id: Makefile,v 1.2 2003/12/07 11:34:41 chorns Exp $
|
||||
|
||||
all:
|
||||
PATH_TO_TOP = ..
|
||||
|
||||
all: registrations
|
||||
$(MAKE) -C shared all
|
||||
$(MAKE) -C win32base all
|
||||
$(MAKE) -C kmregtests all
|
||||
|
@ -8,11 +10,13 @@ all:
|
|||
$(MAKE) -C regtests all
|
||||
|
||||
clean:
|
||||
$(MAKE) -C shared clean
|
||||
$(MAKE) -C win32base clean
|
||||
$(MAKE) -C kmregtests clean
|
||||
$(MAKE) -C kmrtint clean
|
||||
$(MAKE) -C regtests clean
|
||||
- $(MAKE) -C shared clean
|
||||
- $(MAKE) -C win32base clean
|
||||
- $(MAKE) -C kmregtests clean
|
||||
- $(MAKE) -C kmrtint clean
|
||||
- $(MAKE) -C regtests clean
|
||||
- $(RM) ./kmregtests/_regtests.c ./kmregtests/Makefile.tests
|
||||
- $(RM) ./win32base/_regtests.c ./win32base/Makefile.tests
|
||||
|
||||
install:
|
||||
$(MAKE) -C shared install
|
||||
|
@ -21,5 +25,10 @@ install:
|
|||
$(MAKE) -C kmrtint install
|
||||
$(MAKE) -C regtests install
|
||||
|
||||
.PHONY: all clean install
|
||||
registrations:
|
||||
$(REGTESTS) ./kmregtests/tests ./kmregtests/_regtests.c ./kmregtests/Makefile.tests
|
||||
$(REGTESTS) ./win32base/tests ./win32base/_regtests.c ./win32base/Makefile.tests
|
||||
|
||||
.PHONY: all clean install registrations
|
||||
|
||||
include $(PATH_TO_TOP)/rules.mak
|
||||
|
|
|
@ -7,3 +7,4 @@
|
|||
*.map
|
||||
_regtests.c
|
||||
*.sys
|
||||
Makefile.tests
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# $Id: Makefile,v 1.2 2003/11/19 05:53:37 vizzini Exp $
|
||||
# $Id: Makefile,v 1.3 2003/12/07 11:34:41 chorns Exp $
|
||||
|
||||
PATH_TO_TOP = ../..
|
||||
|
||||
|
@ -12,14 +12,13 @@ TARGET_LIBS = $(SDK_PATH_LIB)/rtshared.a
|
|||
|
||||
TARGET_CFLAGS = -I../shared -Werror -Wall
|
||||
|
||||
TARGET_GENREGTESTS = yes
|
||||
include Makefile.tests
|
||||
|
||||
TARGET_OBJECTS = \
|
||||
_regtests.o \
|
||||
driver.o
|
||||
driver.o \
|
||||
$(addprefix tests/, $(TESTS))
|
||||
|
||||
include $(PATH_TO_TOP)/rules.mak
|
||||
|
||||
include $(TOOLS_PATH)/helper.mk
|
||||
|
||||
# EOF
|
||||
|
|
1
reactos/regtests/kmregtests/tests/.cvsignore
Normal file
1
reactos/regtests/kmregtests/tests/.cvsignore
Normal file
|
@ -0,0 +1 @@
|
|||
*.o
|
|
@ -5,3 +5,4 @@
|
|||
*.sym
|
||||
*.map
|
||||
_regtests.c
|
||||
Makefile.tests
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# $Id: Makefile,v 1.2 2003/11/19 05:53:38 vizzini Exp $
|
||||
# $Id: Makefile,v 1.3 2003/12/07 11:34:41 chorns Exp $
|
||||
|
||||
PATH_TO_TOP = ../..
|
||||
|
||||
|
@ -14,12 +14,12 @@ TARGET_CFLAGS = -I../shared -Wall -Werror
|
|||
|
||||
TARGET_BASE = 0x60000000
|
||||
|
||||
TARGET_GENREGTESTS = yes
|
||||
include Makefile.tests
|
||||
|
||||
TARGET_OBJECTS = \
|
||||
_regtests.o \
|
||||
driver.o \
|
||||
file-1.o
|
||||
$(addprefix tests/, $(TESTS))
|
||||
|
||||
include $(PATH_TO_TOP)/rules.mak
|
||||
|
||||
|
|
1
reactos/regtests/win32base/tests/.cvsignore
Normal file
1
reactos/regtests/win32base/tests/.cvsignore
Normal file
|
@ -0,0 +1 @@
|
|||
*.o
|
0
reactos/regtests/win32base/file-1.c → reactos/regtests/win32base/tests/file-1.c
Executable file → Normal file
0
reactos/regtests/win32base/file-1.c → reactos/regtests/win32base/tests/file-1.c
Executable file → Normal file
|
@ -1,4 +1,4 @@
|
|||
# $Id: helper.mk,v 1.46 2003/12/02 11:38:47 gvg Exp $
|
||||
# $Id: helper.mk,v 1.47 2003/12/07 11:34:41 chorns Exp $
|
||||
#
|
||||
# Helper makefile for ReactOS modules
|
||||
# Variables this makefile accepts:
|
||||
|
@ -45,7 +45,6 @@
|
|||
# $TARGET_PCH = Filename of header to use to generate a PCH if supported by the compiler (optional)
|
||||
# $TARGET_BOOTSTRAP = Whether this file is needed to bootstrap the installation (no,yes) (optional)
|
||||
# $TARGET_BOOTSTRAP_NAME = Name on the installation medium (optional)
|
||||
# $TARGET_GENREGTESTS = Generate regression test registrations (optional)
|
||||
# $WINE_MODE = Compile using WINE headers (no,yes) (optional)
|
||||
# $WINE_RC = Name of .rc file for WINE modules (optional)
|
||||
# $SUBDIRS = Subdirs in which to run make (optional)
|
||||
|
@ -557,21 +556,7 @@ $(MK_IMPLIBPATH)/$(MK_IMPLIB_FULLNAME): $(TARGET_OBJECTS) $(MK_DEFNAME)
|
|||
else # MK_IMPLIBONLY
|
||||
|
||||
|
||||
all: $(MK_GENREGTESTS) $(MK_FULLNAME) $(MK_NOSTRIPNAME) $(SUBDIRS:%=%_all)
|
||||
|
||||
|
||||
ifeq ($(TARGET_GENREGTESTS),yes)
|
||||
_regtests_phony:
|
||||
$(RM) _regtests.c
|
||||
.PHONY: _regtests_phony
|
||||
_regtests.c: _regtests_phony
|
||||
$(REGTESTS) . _regtests.c
|
||||
MK_GENREGTESTS := _regtests_phony
|
||||
MK_GENREGTESTS_CLEAN := _regtests.c _regtests.o
|
||||
else
|
||||
MK_GENREGTESTS :=
|
||||
MK_GENREGTESTS_CLEAN :=
|
||||
endif
|
||||
all: $(MK_FULLNAME) $(MK_NOSTRIPNAME) $(SUBDIRS:%=%_all)
|
||||
|
||||
|
||||
ifeq ($(MK_IMPLIB),yes)
|
||||
|
@ -793,7 +778,7 @@ MK_CLEANDEPS := $(join $(dir $(MK_CLEANFILTERED)), $(addprefix ., $(notdir $(MK_
|
|||
|
||||
clean: $(SUBDIRS:%=%_clean)
|
||||
- $(RM) *.o depend.d *.pch $(MK_BASENAME).sym $(MK_BASENAME).a $(TARGET_PATH)/$(MK_RES_BASE).coff \
|
||||
$(MK_FULLNAME) $(MK_NOSTRIPNAME) $(MK_CLEANFILES) $(MK_CLEANDEPS) $(MK_GENREGTESTS_CLEAN) $(MK_BASENAME).map \
|
||||
$(MK_FULLNAME) $(MK_NOSTRIPNAME) $(MK_CLEANFILES) $(MK_CLEANDEPS) $(MK_BASENAME).map \
|
||||
junk.tmp base.tmp temp.exp \
|
||||
$(TARGET_CLEAN)
|
||||
|
||||
|
|
|
@ -35,6 +35,7 @@
|
|||
static FILE *out;
|
||||
static char *path;
|
||||
static char *file;
|
||||
static char *makefile;
|
||||
|
||||
char* convert_path(char* origpath)
|
||||
{
|
||||
|
@ -81,12 +82,41 @@ static void write_line(char *line)
|
|||
n_out = fwrite(&buf[0], 1, strlen(buf), out);
|
||||
}
|
||||
|
||||
void register_test(char *filename, int prototype)
|
||||
static void change_extension(char *filenamebuffer, char *filename, char *newextension)
|
||||
{
|
||||
char *ptr;
|
||||
|
||||
if (newextension == NULL)
|
||||
{
|
||||
strcpy(filenamebuffer, filename);
|
||||
return;
|
||||
}
|
||||
|
||||
ptr = strrchr(filename, '.');
|
||||
if (ptr != NULL)
|
||||
{
|
||||
strncpy(filenamebuffer, filename, ptr - filename);
|
||||
filenamebuffer[ptr - filename] = 0;
|
||||
strcat(filenamebuffer, newextension);
|
||||
}
|
||||
else
|
||||
{
|
||||
strcpy(filenamebuffer, filename);
|
||||
strcat(filenamebuffer, newextension);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* filename - name of file to make registrations for
|
||||
* regtype - type of registration (0 = prototype, 1 = call, 2 = makefile)
|
||||
*/
|
||||
void register_test(char *filename, int type)
|
||||
{
|
||||
char ext[100];
|
||||
char testname[100];
|
||||
char call[100];
|
||||
char regtest[100];
|
||||
char filenamebuffer[MAX_PATH];
|
||||
int i, j;
|
||||
|
||||
strcpy(testname, filename);
|
||||
|
@ -132,17 +162,23 @@ void register_test(char *filename, int prototype)
|
|||
j++;
|
||||
}
|
||||
|
||||
if (prototype)
|
||||
if (type == 0)
|
||||
{
|
||||
sprintf(regtest, "extern int %sTest(int Command, char *Buffer);", testname);
|
||||
write_line(regtest);
|
||||
}
|
||||
else
|
||||
else if (type == 1)
|
||||
{
|
||||
sprintf(call, "%sTest", testname);
|
||||
sprintf(regtest, " AddTest((TestRoutine)%s);", call);
|
||||
write_line(regtest);
|
||||
}
|
||||
else if (type == 2)
|
||||
{
|
||||
change_extension(filenamebuffer, filename, ".o");
|
||||
sprintf(regtest, "%s \\", filenamebuffer);
|
||||
write_line(regtest);
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef WIN32
|
||||
|
@ -150,14 +186,14 @@ void register_test(char *filename, int prototype)
|
|||
/* Win32 version */
|
||||
|
||||
static void
|
||||
make_file_list (int prototype)
|
||||
make_file_list (int type)
|
||||
{
|
||||
struct _finddata_t f;
|
||||
int findhandle;
|
||||
char searchbuf[MAX_PATH];
|
||||
|
||||
strcpy(searchbuf, path);
|
||||
strcpy(searchbuf, "*.*");
|
||||
strcat(searchbuf, "*.*");
|
||||
findhandle =_findfirst(searchbuf, &f);
|
||||
if (findhandle != -1)
|
||||
{
|
||||
|
@ -169,7 +205,7 @@ make_file_list (int prototype)
|
|||
continue;
|
||||
}
|
||||
|
||||
register_test(f.name, prototype);
|
||||
register_test(f.name, type);
|
||||
}
|
||||
while (_findnext(findhandle, &f) == 0);
|
||||
_findclose(findhandle);
|
||||
|
@ -180,7 +216,7 @@ make_file_list (int prototype)
|
|||
|
||||
/* Linux version */
|
||||
static void
|
||||
make_file_list (int prototype)
|
||||
make_file_list (int type)
|
||||
{
|
||||
DIR *dirp;
|
||||
struct dirent *entry;
|
||||
|
@ -225,7 +261,7 @@ make_file_list (int prototype)
|
|||
continue;
|
||||
}
|
||||
|
||||
register_test(entry->d_name, prototype);
|
||||
register_test(entry->d_name, type);
|
||||
}
|
||||
}
|
||||
closedir(dirp);
|
||||
|
@ -273,7 +309,7 @@ make_file_list (int prototype)
|
|||
continue;
|
||||
}
|
||||
|
||||
register_test(entry->d_name, prototype);
|
||||
register_test(entry->d_name, type);
|
||||
}
|
||||
closedir(dirp);
|
||||
}
|
||||
|
@ -289,15 +325,16 @@ make_file_list (int prototype)
|
|||
#endif
|
||||
|
||||
static char HELP[] =
|
||||
"REGTESTS path file\n"
|
||||
"REGTESTS path file makefile\n"
|
||||
"\n"
|
||||
" path Path to files\n"
|
||||
" file File to create\n";
|
||||
" path Path to files\n"
|
||||
" file Registration file to create\n"
|
||||
" makefile Makefile to create\n";
|
||||
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
char buf[MAX_PATH];
|
||||
if (argc < 2)
|
||||
if (argc < 4)
|
||||
{
|
||||
puts(HELP);
|
||||
return 1;
|
||||
|
@ -325,10 +362,19 @@ int main(int argc, char **argv)
|
|||
return 1;
|
||||
}
|
||||
|
||||
makefile = convert_path(argv[3]);
|
||||
if (makefile[0] == 0)
|
||||
{
|
||||
printf("Missing makefile\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
||||
/* Registration file */
|
||||
out = fopen(file, "wb");
|
||||
if (out == NULL)
|
||||
{
|
||||
perror("Cannot open output file");
|
||||
perror("Cannot create output file");
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
@ -337,7 +383,7 @@ int main(int argc, char **argv)
|
|||
write_line("typedef int (*TestRoutine)(int Command, char *Buffer);");
|
||||
write_line("");
|
||||
|
||||
make_file_list(1);
|
||||
make_file_list(0);
|
||||
|
||||
write_line("");
|
||||
write_line("extern void AddTest(TestRoutine Routine);");
|
||||
|
@ -345,13 +391,32 @@ int main(int argc, char **argv)
|
|||
write_line("void RegisterTests()");
|
||||
write_line("{");
|
||||
|
||||
make_file_list(0);
|
||||
make_file_list(1);
|
||||
|
||||
write_line("}");
|
||||
|
||||
fclose(out);
|
||||
|
||||
|
||||
/* Makefile */
|
||||
out = fopen(makefile, "wb");
|
||||
if (out == NULL)
|
||||
{
|
||||
perror("Cannot create output makefile");
|
||||
return 1;
|
||||
}
|
||||
|
||||
write_line("# This file is autogenerated.");
|
||||
write_line("");
|
||||
write_line("TESTS = \\");
|
||||
|
||||
make_file_list(2);
|
||||
|
||||
write_line("");
|
||||
|
||||
fclose(out);
|
||||
|
||||
printf("Successfully generated regression test registrations.\n");
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* EOF */
|
||||
|
|
Loading…
Reference in a new issue