* LinkerFlag tag support * Build addsys, libwine.a, user32.dll, advapi32.dll, gdi32.dll, msvcrt.dll, and welcome.exe Modified: branches/xmlbuildsystem/reactos/ReactOS.xml Added: branches/xmlbuildsystem/reactos/iface/addsys/addsys.xml Modified: branches/xmlbuildsystem/reactos/iface/addsys/genw32k.c Added: branches/xmlbuildsystem/reactos/iface/native/genntdll.xml Deleted: branches/xmlbuildsystem/reactos/iface/native/module.xml Added: branches/xmlbuildsystem/reactos/lib/advapi32/advapi32.xml Modified: branches/xmlbuildsystem/reactos/lib/directory.xml Added: branches/xmlbuildsystem/reactos/lib/gdi32/gdi32.xml Added: branches/xmlbuildsystem/reactos/lib/libwine/libwine.xml Modified: branches/xmlbuildsystem/reactos/lib/msvcrt/misc/dllmain.c Modified: branches/xmlbuildsystem/reactos/lib/msvcrt/misc/environ.c Added: branches/xmlbuildsystem/reactos/lib/msvcrt/msvcrt.xml Added: branches/xmlbuildsystem/reactos/lib/user32/user32.xml Added: branches/xmlbuildsystem/reactos/subsys/directory.xml Added: branches/xmlbuildsystem/reactos/subsys/system/directory.xml Added: branches/xmlbuildsystem/reactos/subsys/system/welcome/welcome.xml Modified: branches/xmlbuildsystem/reactos/tools/rbuild/backend/mingw/mingw.cpp Modified: branches/xmlbuildsystem/reactos/tools/rbuild/backend/mingw/mingw.h Modified: branches/xmlbuildsystem/reactos/tools/rbuild/backend/mingw/modulehandler .cpp Modified: branches/xmlbuildsystem/reactos/tools/rbuild/backend/mingw/modulehandler .h Modified: branches/xmlbuildsystem/reactos/tools/rbuild/include.cpp Added: branches/xmlbuildsystem/reactos/tools/rbuild/linkerflag.cpp Modified: branches/xmlbuildsystem/reactos/tools/rbuild/makefile Modified: branches/xmlbuildsystem/reactos/tools/rbuild/module.cpp Modified: branches/xmlbuildsystem/reactos/tools/rbuild/project.cpp Modified: branches/xmlbuildsystem/reactos/tools/rbuild/rbuild.h Modified: branches/xmlbuildsystem/reactos/tools/rbuild/test.h Modified: branches/xmlbuildsystem/reactos/tools/rbuild/tests/alltests.cpp Added: branches/xmlbuildsystem/reactos/tools/rbuild/tests/data/linkerflag.xml Added: branches/xmlbuildsystem/reactos/tools/rbuild/tests/linkerflagtest.cpp _____
Modified: branches/xmlbuildsystem/reactos/ReactOS.xml --- branches/xmlbuildsystem/reactos/ReactOS.xml 2005-01-15 10:37:01 UTC (rev 13054) +++ branches/xmlbuildsystem/reactos/ReactOS.xml 2005-01-15 13:52:36 UTC (rev 13055) @@ -30,8 +30,11 @@
<xi:include href="hal/directory.xml" /> </directory> <directory name="iface"> + <directory name="addsys"> + <xi:include href="iface/addsys/addsys.xml" /> + </directory> <directory name="native"> - <xi:include href="iface/native/module.xml" /> + <xi:include href="iface/native/genntdll.xml" /> </directory> </directory> <directory name="lib"> @@ -40,4 +43,7 @@ <directory name="ntoskrnl"> <xi:include href="ntoskrnl/ntoskrnl.xml" /> </directory> + <directory name="subsys"> + <xi:include href="subsys/directory.xml" /> + </directory> </project> Property changes on: branches/xmlbuildsystem/reactos/iface/addsys ___________________________________________________________________ Name: svn:ignore - genw32k genw32k.exe + addsys addsys.exe _____
Added: branches/xmlbuildsystem/reactos/iface/addsys/addsys.xml --- branches/xmlbuildsystem/reactos/iface/addsys/addsys.xml 2005-01-15 10:37:01 UTC (rev 13054) +++ branches/xmlbuildsystem/reactos/iface/addsys/addsys.xml 2005-01-15 13:52:36 UTC (rev 13055) @@ -0,0 +1,14 @@
+<module name="addsys" type="buildtool"> + <include base="addsys">.</include> + <file>genw32k.c</file> + <invoke> + <input> + <inputfile>w32ksvc.db</inputfile> + </input> + <output> + <outputfile>../../subsys/win32k/main/svctab.c</outputfile> + <outputfile>../../lib/gdi32/misc/win32k.c</outputfile> + <outputfile>../../lib/user32/misc/win32k.c</outputfile> + </output> + </invoke> +</module> _____
Modified: branches/xmlbuildsystem/reactos/iface/addsys/genw32k.c --- branches/xmlbuildsystem/reactos/iface/addsys/genw32k.c 2005-01-15 10:37:01 UTC (rev 13054) +++ branches/xmlbuildsystem/reactos/iface/addsys/genw32k.c 2005-01-15 13:52:36 UTC (rev 13055) @@ -299,11 +299,11 @@
void usage(char * argv0) { printf("Usage: %s w32ksvc.db w32k.lst ssdt.h win32k.c win32k.c\n" - " w32ksvc.db input file(system calls database)\n" " w32k.lst system functions database\n" " ssdt.h WIN32K service table\n" " win32k.c GDI32 stubs\n" - " win32k.c USER32 stubs\n", + " win32k.c USER32 stubs\n" + " w32ksvc.db input file(system calls database)\n", argv0 ); } @@ -322,34 +322,34 @@ return(1); }
- in = fopen(argv[1],"rb"); - if (in == NULL) - { - perror("Failed to open input file (system calls database)"); - return(1); - } - - out1 = fopen(argv[2],"wb"); + out1 = fopen(argv[1],"wb"); if (out1 == NULL) { perror("Failed to open output file (WIN32K service table)"); return(1); }
- out2 = fopen(argv[3],"wb"); + out2 = fopen(argv[2],"wb"); if (out2 == NULL) { perror("Failed to open output file (GDI32 stubs)"); return(1); }
- out3 = fopen(argv[4],"wb"); + out3 = fopen(argv[3],"wb"); if (out3 == NULL) { perror("Failed to open output file (USER32 stubs)"); return(1); }
+ in = fopen(argv[4],"rb"); + if (in == NULL) + { + perror("Failed to open input file (system calls database)"); + return(1); + } + ret = process(in,out2,out3); rewind(in); ret = makeSystemServiceTable(in, out1); _____
Copied: branches/xmlbuildsystem/reactos/iface/native/genntdll.xml (from rev 12972, branches/xmlbuildsystem/reactos/iface/native/module.xml) _____
Deleted: branches/xmlbuildsystem/reactos/iface/native/module.xml --- branches/xmlbuildsystem/reactos/iface/native/module.xml 2005-01-15 10:37:01 UTC (rev 13054) +++ branches/xmlbuildsystem/reactos/iface/native/module.xml 2005-01-15 13:52:36 UTC (rev 13055) @@ -1,14 +0,0 @@
-<module name="genntdll" type="buildtool"> - <include base="genntdll">.</include> - <file>genntdll.c</file> - <invoke> - <input> - <inputfile>sysfuncs.lst</inputfile> - </input> - <output> - <outputfile>../../lib/ntdll/napi.c</outputfile> - <outputfile>../../include/ntdll/napi.h</outputfile> - <outputfile>../../ntoskrnl/nt/zw.c</outputfile> - </output> - </invoke> -</module> _____
Added: branches/xmlbuildsystem/reactos/lib/advapi32/advapi32.xml --- branches/xmlbuildsystem/reactos/lib/advapi32/advapi32.xml 2005-01-15 10:37:01 UTC (rev 13054) +++ branches/xmlbuildsystem/reactos/lib/advapi32/advapi32.xml 2005-01-15 13:52:36 UTC (rev 13055) @@ -0,0 +1,47 @@
+<module name="advapi32" type="win32dll"> + <importlibrary definition="advapi32.def" /> + <include base="advapi32">.</include> + <define name="__USE_W32API" /> + <define name="WINVER">0x600</define> + <define name="_WIN32_IE">0x0500</define> + <define name="_WIN32_WINNT">0x0501</define> + <library>ntdll</library> + <library>kernel32</library> + <directory name="crypt"> + <file>crypt.c</file> + <file>crypt_des.c</file> + <file>crypt_lmhash.c</file> + <file>crypt_md4.c</file> + <file>crypt_md5.c</file> + <file>crypt_sha.c</file> + </directory> + <directory name="misc"> + <file>dllmain.c</file> + <file>hwprofiles.c</file> + <file>logon.c</file> + <file>shutdown.c</file> + <file>sysfunc.c</file> + </directory> + <directory name="reg"> + <file>reg.c</file> + </directory> + <directory name="sec"> + <file>ac.c</file> + <file>audit.c</file> + <file>lsa.c</file> + <file>misc.c</file> + <file>sec.c</file> + <file>sid.c</file> + <file>trustee.c</file> + </directory> + <directory name="service"> + <file>eventlog.c</file> + <file>scm.c</file> + <file>sctrl.c</file> + <file>undoc.c</file> + </directory> + <directory name="token"> + <file>privilege.c</file> + <file>token.c</file> + </directory> +</module> _____
Modified: branches/xmlbuildsystem/reactos/lib/directory.xml --- branches/xmlbuildsystem/reactos/lib/directory.xml 2005-01-15 10:37:01 UTC (rev 13054) +++ branches/xmlbuildsystem/reactos/lib/directory.xml 2005-01-15 13:52:36 UTC (rev 13055) @@ -1,3 +1,9 @@
+<directory name="advapi32"> + <xi:include href="advapi32/advapi32.xml" /> +</directory> +<directory name="gdi32"> + <xi:include href="gdi32/gdi32.xml" /> +</directory> <directory name="kernel32"> <xi:include href="kernel32/kernel32.xml" /> </directory> @@ -4,6 +10,12 @@ <directory name="kjs"> <xi:include href="kjs/kjs.xml" /> </directory> +<directory name="libwine"> + <xi:include href="libwine/libwine.xml" /> +</directory> +<directory name="msvcrt"> + <xi:include href="msvcrt/msvcrt.xml" /> +</directory> <directory name="ntdll"> <xi:include href="ntdll/ntdll.xml" /> </directory> @@ -19,3 +31,6 @@ <directory name="string"> <xi:include href="string/string.xml" /> </directory> +<directory name="user32"> + <xi:include href="user32/user32.xml" /> +</directory> _____
Added: branches/xmlbuildsystem/reactos/lib/gdi32/gdi32.xml --- branches/xmlbuildsystem/reactos/lib/gdi32/gdi32.xml 2005-01-15 10:37:01 UTC (rev 13054) +++ branches/xmlbuildsystem/reactos/lib/gdi32/gdi32.xml 2005-01-15 13:52:36 UTC (rev 13055) @@ -0,0 +1,35 @@
+<module name="gdi32" type="win32dll"> + <dependency>addsys</dependency> + <importlibrary definition="gdi32.def" /> + <include base="gdi32">include</include> + <define name="_DISABLE_TIDENTS" /> + <define name="UNICODE" /> + <define name="__USE_W32API" /> + <define name="WINVER">0x0600</define> + <define name="_WIN32_WINNT">0x0501</define> + <library>ntdll</library> + <library>rosrtl</library> + <library>kernel32</library> + <library>advapi32</library> + <directory name="main"> + <file>dllmain.c</file> + </directory> + <directory name="misc"> + <file>heap.c</file> + <file>misc.c</file> + <file>stubs.c</file> + <file>stubsa.c</file> + <file>stubsw.c</file> + <file>win32k.c</file> + <file>wingl.c</file> + </directory> + <directory name="objects"> + <file>bitblt.c</file> + <file>dc.c</file> + <file>font.c</file> + <file>linedda.c</file> + <file>metafile.c</file> + <file>region.c</file> + <file>text.c</file> + </directory> +</module> _____
Added: branches/xmlbuildsystem/reactos/lib/libwine/libwine.xml --- branches/xmlbuildsystem/reactos/lib/libwine/libwine.xml 2005-01-15 10:37:01 UTC (rev 13054) +++ branches/xmlbuildsystem/reactos/lib/libwine/libwine.xml 2005-01-15 13:52:36 UTC (rev 13055) @@ -0,0 +1,5 @@
+<module name="wine" type="staticlibrary"> + <define name="_DISABLE_TIDENTS" /> + <define name="__REACTOS__" /> + <file>debug.c</file> +</module> _____
Modified: branches/xmlbuildsystem/reactos/lib/msvcrt/misc/dllmain.c --- branches/xmlbuildsystem/reactos/lib/msvcrt/misc/dllmain.c 2005-01-15 10:37:01 UTC (rev 13054) +++ branches/xmlbuildsystem/reactos/lib/msvcrt/misc/dllmain.c 2005-01-15 13:52:36 UTC (rev 13055) @@ -91,8 +91,8 @@
return FALSE; }
- _acmdln = strdup(GetCommandLineA()); - _wcmdln = wcsdup(GetCommandLineW()); + _acmdln = _strdup(GetCommandLineA()); + _wcmdln = _wcsdup(GetCommandLineW());
/* FIXME: more initializations... */
_____
Modified: branches/xmlbuildsystem/reactos/lib/msvcrt/misc/environ.c --- branches/xmlbuildsystem/reactos/lib/msvcrt/misc/environ.c 2005-01-15 10:37:01 UTC (rev 13054) +++ branches/xmlbuildsystem/reactos/lib/msvcrt/misc/environ.c 2005-01-15 13:52:36 UTC (rev 13055) @@ -165,9 +165,9 @@
for (envptr = original_environment; count > 1; newenvptr++, count--) { if (wide) - *newenvptr = (char*)wcsdup((wchar_t*)*envptr++); + *newenvptr = (char*)_wcsdup((wchar_t*)*envptr++); else - *newenvptr = strdup(*envptr++); + *newenvptr = _strdup(*envptr++); if (*newenvptr == NULL) { for (newenvptr--; newenvptr >= newenv; newenvptr--); @@ -243,7 +243,7 @@ /* Find the option we're trying to modify. */ for (index = 0, wenvptr = _wenviron; *wenvptr != NULL; wenvptr++, index++) { - if (!wcsnicmp(*wenvptr, option, epos - option)) + if (!_wcsnicmp(*wenvptr, option, epos - option)) { found = 1; break; @@ -277,7 +277,7 @@ else { /* Make a copy of the option that we will store in the environment block. */ - woption = wcsdup((wchar_t*)option); + woption = _wcsdup((wchar_t*)option); if (woption == NULL) { free(name); _____
Added: branches/xmlbuildsystem/reactos/lib/msvcrt/msvcrt.xml --- branches/xmlbuildsystem/reactos/lib/msvcrt/msvcrt.xml 2005-01-15 10:37:01 UTC (rev 13054) +++ branches/xmlbuildsystem/reactos/lib/msvcrt/msvcrt.xml 2005-01-15 13:52:36 UTC (rev 13055) @@ -0,0 +1,443 @@
+<module name="msvcrt" type="win32dll"> + <linkerflag>-nostartfiles</linkerflag> + <linkerflag>--enable-stdcall-fixup</linkerflag> + <linkerflag>-lgcc</linkerflag> + <importlibrary definition="msvcrt.def" /> + <include base="msvcrt">.</include> + <define name="_DISABLE_TIDENTS" /> + <define name="__USE_W32API" /> + <define name="_WIN32_IE">0x600</define> + <define name="_WIN32_WINNT">0x501</define> + <define name="__REACTOS__" /> + <define name="USE_MSVCRT_PREFIX" /> + <define name="_MSVCRT_LIB_" /> + <define name="_MT" /> + <library>wine</library> + <library>string</library> + <library>kernel32</library> + <library>ntdll</library> + <directory name="conio"> + <file>cgets.c</file> + <file>cprintf.c</file> + <file>cputs.c</file> + <file>cscanf.c</file> + <file>getch.c</file> + <file>getche.c</file> + <file>kbhit.c</file> + <file>putch.c</file> + <file>ungetch.c</file> + </directory> + <directory name="ctype"> + <file>ctype.c</file> + <file>isalnum.c</file> + <file>isalpha.c</file> + <file>isascii.c</file> + <file>iscntrl.c</file> + <file>iscsym.c</file> + <file>isctype.c</file> + <file>isdigit.c</file> + <file>isgraph.c</file> + <file>islower.c</file> + <file>isprint.c</file> + <file>ispunct.c</file> + <file>isspace.c</file> + <file>isupper.c</file> + <file>isxdigit.c</file> + <file>toascii.c</file> + <file>tolower.c</file> + <file>toupper.c</file> + </directory> + <directory name="direct"> + <file>chdir.c</file> + <file>chdrive.c</file> + <file>getcwd.c</file> + <file>getdcwd.c</file> + <file>getdfree.c</file> + <file>getdrive.c</file> + <file>mkdir.c</file> + <file>rmdir.c</file> + <file>wchdir.c</file> + <file>wgetcwd.c</file> + <file>wgetdcwd.c</file> + <file>wmkdir.c</file> + <file>wrmdir.c</file> + </directory> + <directory name="except"> + <file>abnorter.c</file> + <file>exhand2.c</file> + <file>matherr.c</file> + <file>seh.s</file> + <file>unwind.c</file> + <file>xcptfil.c</file> + </directory> + <directory name="float"> + <file>chgsign.c</file> + <file>clearfp.c</file> + <file>cntrlfp.c</file> + <file>copysign.c</file> + <file>fpclass.c</file> + <file>fpecode.c</file> + <file>fpreset.c</file> + <file>isnan.c</file> + <file>logb.c</file> + <file>nafter.c</file> + <file>scalb.c</file> + <file>statfp.c</file> + </directory> + <directory name="io"> + <file>access.c</file> + <file>chmod.c</file> + <file>chsize.c</file> + <file>close.c</file> + <file>commit.c</file> + <file>create.c</file> + <file>dup2.c</file> + <file>dup.c</file> + <file>eof.c</file> + <file>filelen.c</file> + <file>fileleni.c</file> + <file>find.c</file> + <file>fmode.c</file> + <file>isatty.c</file> + <file>locking.c</file> + <file>lseek.c</file> + <file>lseeki64.c</file> + <file>mktemp.c</file> + <file>open.c</file> + <file>pipe.c</file> + <file>read.c</file> + <file>setmode.c</file> + <file>sopen.c</file> + <file>stubs.c</file> + <file>tell.c</file> + <file>telli64.c</file> + <file>umask.c</file> + <file>unlink.c</file> + <file>utime.c</file> + <file>waccess.c</file> + <file>wchmod.c</file> + <file>wcreate.c</file> + <file>wfind.c</file> + <file>wmktemp.c</file> + <file>wopen.c</file> + <file>write.c</file> + <file>wunlink.c</file> + <file>wutime.c</file> + </directory> + <directory name="locale"> + <file>locale.c</file> + </directory> + <directory name="math"> + <file>acos.c</file> + <file>adjust.c</file> + <file>asin.c</file> + <file>atan2.c</file> + <file>atan.c</file> + <file>cabs.c</file> + <file>ceil.c</file> + <file>cos.c</file> + <file>cosh.c</file> + <file>exp.c</file> + <file>fabs.c</file> + <file>floor.c</file> + <file>fmod.c</file> + <file>frexp.c</file> + <file>huge_val.c</file> + <file>hypot.c</file> + <file>j0_y0.c</file> + <file>j1_y1.c</file> + <file>jn_yn.c</file> + <file>ldexp.c</file> + <file>log10.c</file> + <file>log.c</file> + <file>math.c</file> + <file>modf.c</file> + <file>pow.c</file> + <file>sin.c</file> + <file>sinh.c</file> + <file>sqrt.c</file> + <file>stubs.c</file> + <file>tan.c</file> + <file>tanh.c</file> + </directory> + <directory name="mbstring"> + <file>hanzen.c</file> + <file>ischira.c</file> + <file>iskana.c</file> + <file>iskmoji.c</file> + <file>iskpun.c</file> + <file>islead.c</file> + <file>islwr.c</file> + <file>ismbal.c</file> + <file>ismbaln.c</file> + <file>ismbc.c</file> + <file>ismbgra.c</file> + <file>ismbkaln.c</file> + <file>ismblead.c</file> + <file>ismbpri.c</file> + <file>ismbpun.c</file> + <file>ismbtrl.c</file> + <file>isuppr.c</file> + <file>jistojms.c</file> + <file>jmstojis.c</file> + <file>mbbtype.c</file> + <file>mbccpy.c</file> + <file>mbclen.c</file> + <file>mbscat.c</file> + <file>mbschr.c</file> + <file>mbscmp.c</file> + <file>mbscoll.c</file> + <file>mbscpy.c</file> + <file>mbscspn.c</file> + <file>mbsdec.c</file> + <file>mbsdup.c</file> + <file>mbsicmp.c</file> + <file>mbsicoll.c</file> + <file>mbsinc.c</file> + <file>mbslen.c</file> + <file>mbslwr.c</file> + <file>mbsncat.c</file> + <file>mbsnccnt.c</file> + <file>mbsncmp.c</file> + <file>mbsncoll.c</file> + <file>mbsncpy.c</file> + <file>mbsnextc.c</file> + <file>mbsnicmp.c</file> + <file>mbsnicoll.c</file> + <file>mbsninc.c</file> + <file>mbsnset.c</file> + <file>mbspbrk.c</file> + <file>mbsrchr.c</file> + <file>mbsrev.c</file> + <file>mbsset.c</file> + <file>mbsspn.c</file> + <file>mbsspnp.c</file> + <file>mbsstr.c</file> + <file>mbstok.c</file> + <file>mbstrlen.c</file> + <file>mbsupr.c</file> + </directory> + <directory name="misc"> + <file>amsg.c</file> + <file>assert.c</file> + <file>crtmain.c</file> + <file>dllmain.c</file> + <file>environ.c</file> + <file>getargs.c</file> + <file>initterm.c</file> + <file>lock.c</file> + <file>purecall.c</file> + <file>stubs.c</file> + <file>tls.c</file> + </directory> + <directory name="process"> + <file>_cwait.c</file> + <file>_system.c</file> + <file>dll.c</file> + <file>process.c</file> + <file>procid.c</file> + <file>thread.c</file> + <file>threadid.c</file> + <file>threadx.c</file> + </directory> + <directory name="search"> + <file>lfind.c</file> + <file>lsearch.c</file> + </directory> + <directory name="setjmp"> + <directory name="i386"> + <file>setjmp.s</file> + </directory> + </directory> + <directory name="signal"> + <file>signal.c</file> + </directory> + <directory name="stdio"> + <file>allocfil.c</file> + <file>clearerr.c</file> + <file>fclose.c</file> + <file>fdopen.c</file> + <file>feof.c</file> + <file>ferror.c</file> + <file>fflush.c</file> + <file>fgetc.c</file> + <file>fgetchar.c</file> + <file>fgetpos.c</file> + <file>fgets.c</file> + <file>fgetws.c</file> + <file>filbuf.c</file> + <file>fileno.c</file> + <file>flsbuf.c</file> + <file>fopen.c</file> + <file>fprintf.c</file> + <file>fputc.c</file> + <file>fputchar.c</file> + <file>fputs.c</file> + <file>fread.c</file> + <file>freopen.c</file> + <file>fscanf.c</file> + <file>fseek.c</file> + <file>fsetpos.c</file> + <file>fsopen.c</file> + <file>ftell.c</file> + <file>fwalk.c</file> + <file>fwrite.c</file> + <file>getc.c</file> + <file>getchar.c</file> + <file>gets.c</file> + <file>getw.c</file> + <file>perror.c</file> + <file>popen.c</file> + <file>printf.c</file> + <file>putc.c</file> + <file>putchar.c</file> + <file>puts.c</file> + <file>putw.c</file> + <file>remove.c</file> + <file>rename.c</file> + <file>rewind.c</file> + <file>rmtmp.c</file> + <file>scanf.c</file> + <file>setbuf.c</file> + <file>setvbuf.c</file> + <file>sprintf.c</file> + <file>sscanf.c</file> + <file>stdhnd.c</file> + <file>tempnam.c</file> + <file>tmpfile.c</file> + <file>tmpnam.c</file> + <file>ungetc.c</file> + <file>vfprintf.c</file> + <file>vfscanf.c</file> + <file>vfwprint.c</file> + <file>vprintf.c</file> + <file>vscanf.c</file> + <file>vsprintf.c</file> + <file>vsscanf.c</file> + <file>wfdopen.c</file> + <file>wrename.c</file> + <file>wtempnam.c</file> + <file>wtmpnam.c</file> + </directory> + <directory name="stdlib"> + <file>abort.c</file> + <file>abs.c</file> + <file>atexit.c</file> + <file>atof.c</file> + <file>atoi.c</file> + <file>atoi64.c</file> + <file>atol.c</file> + <file>atold.c</file> + <file>bsearch.c</file> + <file>div.c</file> + <file>ecvt.c</file> + <file>ecvtbuf.c</file> + <file>errno.c</file> + <file>fcvt.c</file> + <file>fcvtbuf.c</file> + <file>fullpath.c</file> + <file>gcvt.c</file> + <file>getenv.c</file> + <file>itoa.c</file> + <file>itow.c</file> + <file>labs.c</file> + <file>ldiv.c</file> + <file>makepath.c</file> + <file>malloc.c</file> + <file>mbstowcs.c</file> + <file>mbtowc.c</file> + <file>obsol.c</file> + <file>putenv.c</file> + <file>qsort.c</file> + <file>rand.c</file> + <file>rot.c</file> + <file>senv.c</file> + <file>splitp.c</file> + <file>strtod.c</file> + <file>strtol.c</file> + <file>strtold.c</file> + <file>strtoll.c</file> + <file>strtoul.c</file> + <file>strtoull.c</file> + <file>swab.c</file> + <file>wcstod.c</file> + <file>wcstol.c</file> + <file>wcstom.c</file> + <file>wcstomb.c</file> + <file>wcstombs.c</file> + <file>wcstoul.c</file> + <file>wctomb.c</file> + <file>wfulpath.c</file> + <file>witoa.c</file> + <file>witow.c</file> + <file>wmakpath.c</file> + <file>wputenv.c</file> + <file>wsenv.c</file> + <file>wsplitp.c</file> + <file>wtoi.c</file> + <file>wtoi64.c</file> + <file>_exit.c</file> + </directory> + <directory name="string"> + <file>lasttok.c</file> + <file>memicmp.c</file> + <file>strcoll.c</file> + <file>strdup.c</file> + <file>strerror.c</file> + <file>stricmp.c</file> + <file>strlwr.c</file> + <file>strncoll.c</file> + <file>strnicmp.c</file> + <file>strpbrk.c</file> + <file>strrev.c</file> + <file>strset.c</file> + <file>strstr.c</file> + <file>strtok.c</file> + <file>strupr.c</file> + <file>strxfrm.c</file> + </directory> + <directory name="sys_stat"> + <file>fstat.c</file> + <file>fstati64.c</file> + <file>futime.c</file> + <file>stat.c</file> + <file>wstat.c</file> + </directory> + <directory name="time"> + <file>clock.c</file> + <file>ctime.c</file> + <file>difftime.c</file> + <file>ftime.c</file> + <file>strdate.c</file> + <file>strftime.c</file> + <file>strtime.c</file> + <file>time.c</file> + <file>tz_vars.c</file> + <file>wctime.c</file> + <file>wstrdate.c</file> + <file>wstrtime.c</file> + </directory> + <directory name="wine"> + <file>cpp.c</file> + <file>cppexcept.c</file> + <file>heap.c</file> + <file>thread.c</file> + </directory> + <directory name="wstring"> + <file>wcscoll.c</file> + <file>wcscspn.c</file> + <file>wcsdup.c</file> + <file>wcsicmp.c</file> + <file>wcslwr.c</file> + <file>wcsnicmp.c</file> + <file>wcspbrk.c</file> + <file>wcsrev.c</file> + <file>wcsset.c</file> + <file>wcsspn.c</file> + <file>wcsstr.c</file> + <file>wcstok.c</file> + <file>wcsupr.c</file> + <file>wcsxfrm.c</file> + <file>wlasttok.c</file> + </directory> +</module> _____
Added: branches/xmlbuildsystem/reactos/lib/user32/user32.xml --- branches/xmlbuildsystem/reactos/lib/user32/user32.xml 2005-01-15 10:37:01 UTC (rev 13054) +++ branches/xmlbuildsystem/reactos/lib/user32/user32.xml 2005-01-15 13:52:36 UTC (rev 13055) @@ -0,0 +1,74 @@
+<module name="user32" type="win32dll"> + <dependency>addsys</dependency> + <importlibrary definition="user32.def" /> + <include base="user32">include</include> + <define name="_DISABLE_TIDENTS" /> + <define name="UNICODE" /> + <define name="__REACTOS__" /> + <define name="__USE_W32API" /> + <define name="WINVER">0x0600</define> + <define name="_WIN32_WINNT">0x0501</define> + <library>wine</library> + <library>ntdll</library> + <library>gdi32</library> + <library>rosrtl</library> + <library>kernel32</library> + <library>advapi32</library> + <directory name="controls"> + <file>button.c</file> + <file>combo.c</file> + <file>edit.c</file> + <file>icontitle.c</file> + <file>listbox.c</file> + <file>regcontrol.c</file> + <file>scrollbar.c</file> + <file>static.c</file> + </directory> + <directory name="misc"> + <file>dde.c</file> + <file>ddeclient.c</file> + <file>ddeserver.c</file> + <file>desktop.c</file> + <file>display.c</file> + <file>dllmain.c</file> + <file>exit.c</file> + <file>exticon.c</file> + <file>misc.c</file> + <file>object.c</file> + <file>resources.c</file> + <file>strpool.c</file> + <file>stubs.c</file> + <file>timer.c</file> + <file>win32k.c</file> + <file>winhelp.c</file> + <file>winsta.c</file> + <file>wsprintf.c</file> + </directory> + <directory name="windows"> + <file>accel.c</file> + <file>bitmap.c</file> + <file>caret.c</file> + <file>class.c</file> + <file>clipboard.c</file> + <file>cursor.c</file> + <file>dc.c</file> + <file>defwnd.c</file> + <file>dialog.c</file> + <file>draw.c</file> + <file>font.c</file> + <file>hook.c</file> + <file>icon.c</file> + <file>input.c</file> + <file>mdi.c</file> + <file>menu.c</file> + <file>message.c</file> + <file>messagebox.c</file> + <file>nonclient.c</file> + <file>paint.c</file> + <file>prop.c</file> + <file>rect.c</file> + <file>text.c</file> + <file>window.c</file> + <file>winpos.c</file> + </directory> +</module> _____
Added: branches/xmlbuildsystem/reactos/subsys/directory.xml --- branches/xmlbuildsystem/reactos/subsys/directory.xml 2005-01-15 10:37:01 UTC (rev 13054) +++ branches/xmlbuildsystem/reactos/subsys/directory.xml 2005-01-15 13:52:36 UTC (rev 13055) @@ -0,0 +1,3 @@
+<directory name="system"> + <xi:include href="system/directory.xml" /> +</directory> _____
Added: branches/xmlbuildsystem/reactos/subsys/system/directory.xml --- branches/xmlbuildsystem/reactos/subsys/system/directory.xml 2005-01-15 10:37:01 UTC (rev 13054) +++ branches/xmlbuildsystem/reactos/subsys/system/directory.xml 2005-01-15 13:52:36 UTC (rev 13055) @@ -0,0 +1,3 @@
+<directory name="welcome"> + <xi:include href="welcome/welcome.xml" /> +</directory> _____
Added: branches/xmlbuildsystem/reactos/subsys/system/welcome/welcome.xml --- branches/xmlbuildsystem/reactos/subsys/system/welcome/welcome.xml 2005-01-15 10:37:01 UTC (rev 13054) +++ branches/xmlbuildsystem/reactos/subsys/system/welcome/welcome.xml 2005-01-15 13:52:36 UTC (rev 13055) @@ -0,0 +1,9 @@
+<module name="welcome" type="win32gui"> + <define name="_WIN32_IE">0x0501</define> + <define name="_WIN32_WINNT">0x0501</define> + <define name="__USE_W32API" /> + <library>kernel32</library> + <library>gdi32</library> + <library>user32</library> + <file>welcome.c</file> +</module> _____
Modified: branches/xmlbuildsystem/reactos/tools/rbuild/backend/mingw/mingw.cpp --- branches/xmlbuildsystem/reactos/tools/rbuild/backend/mingw/mingw.cpp 2005-01-15 10:37:01 UTC (rev 13054) +++ branches/xmlbuildsystem/reactos/tools/rbuild/backend/mingw/mingw.cpp 2005-01-15 13:52:36 UTC (rev 13055) @@ -129,6 +129,20 @@
} }
+string +MingwBackend::GenerateProjectLFLAGS () +{ + string lflags; + for ( size_t i = 0; i < ProjectNode.linkerFlags.size (); i++ ) + { + LinkerFlag& linkerFlag = *ProjectNode.linkerFlags[i]; + if ( lflags.length () > 0 ) + lflags += " "; + lflags += linkerFlag.flag; + } + return lflags; +} + void MingwBackend::GenerateGlobalVariables () { @@ -146,6 +160,7 @@ ProjectNode.includes, ProjectNode.defines, ProjectNode.ifs ); + fprintf ( fMakefile, "PROJECT_LFLAGS = %s\n", GenerateProjectLFLAGS ().c_str () ); fprintf ( fMakefile, "\n" );
fprintf ( fMakefile, ".PHONY: clean\n\n" ); _____
Modified: branches/xmlbuildsystem/reactos/tools/rbuild/backend/mingw/mingw.h --- branches/xmlbuildsystem/reactos/tools/rbuild/backend/mingw/mingw.h 2005-01-15 10:37:01 UTC (rev 13054) +++ branches/xmlbuildsystem/reactos/tools/rbuild/backend/mingw/mingw.h 2005-01-15 13:52:36 UTC (rev 13055) @@ -21,6 +21,7 @@
const std::vector<Include*>& includes, const std::vector<Define*>& defines, const std::vector<If*>& ifs ); + std::string GenerateProjectLFLAGS (); void GenerateGlobalVariables (); void GenerateAllTarget (); FILE* fMakefile; _____
Modified: branches/xmlbuildsystem/reactos/tools/rbuild/backend/mingw/modulehandler .cpp --- branches/xmlbuildsystem/reactos/tools/rbuild/backend/mingw/modulehandler .cpp 2005-01-15 10:37:01 UTC (rev 13054) +++ branches/xmlbuildsystem/reactos/tools/rbuild/backend/mingw/modulehandler .cpp 2005-01-15 13:52:36 UTC (rev 13055) @@ -265,15 +265,38 @@
return parameters; }
+ +string +MingwModuleHandler::GenerateLinkerParametersFromVector ( const vector<LinkerFlag*>& linkerFlags ) const +{ + string parameters; + for ( size_t i = 0; i < linkerFlags.size (); i++ ) + { + LinkerFlag& linkerFlag = *linkerFlags[i]; + if ( parameters.length () > 0 ) + parameters += " "; + parameters += linkerFlag.flag; + } + return parameters; +} + +string +MingwModuleHandler::GenerateLinkerParameters ( const Module& module ) const +{ + return GenerateLinkerParametersFromVector ( module.linkerFlags ); +} + void MingwModuleHandler::GenerateMacros ( - const char* op, + const char* assignmentOperation, const vector<File*>& files, const vector<Include*>& includes, const vector<Define*>& defines, + const vector<LinkerFlag*>* linkerFlags, const vector<If*>& ifs, const string& cflags_macro, const string& nasmflags_macro, + const string& linkerflags_macro, const string& objs_macro) const { size_t i; @@ -284,7 +307,7 @@ fMakefile, "%s %s", cflags_macro.c_str(), - op ); + assignmentOperation ); for ( i = 0; i < includes.size(); i++ ) { fprintf ( @@ -307,14 +330,28 @@ } fprintf ( fMakefile, "\n" ); } - + + if ( linkerFlags != NULL ) + { + string linkerParameters = GenerateLinkerParametersFromVector ( *linkerFlags ); + if ( linkerParameters.size () > 0 ) + { + fprintf ( + fMakefile, + "%s %s %s\n", + linkerflags_macro.c_str (), + assignmentOperation, + linkerParameters.c_str() ); + } + } + if ( files.size() ) { fprintf ( fMakefile, "%s %s", objs_macro.c_str(), [truncated at 1000 lines; 641 more skipped]