%META:TOPICINFO{author="RizwanKassim" date="1107564287" format="1.0" version="1.12"}% %META:TOPICPARENT{name="WebHome"}% ---++ Proposed Timeline
Date Task Description Deliverable Weight(%)
1/20
(complete)
Schedule Come up with a preliminary schedule for the project The schedule in Wiki 1
1/21
(complete)
Project 0 Install Windows and Linux Report on Wiki 2
  Project 1 Build Wine Report on Wiki 2
1/28
(complete)
Project 2 Run base conformance test Test results on Wiki 2
  Select DLL Research candiate DLL's and choose the one we will work on Report on Wiki 1
2/4
complete
Design Plan the conformance test, determine most commonly used functions and arguments. Report on Wiki 4
  Alpha Create first Win32 app, add a few function tests. Run in Windows Source 6
2/14 Beta

Have the most common calls implemented. Submit to wine-test-devel for review.

Source 4
2/18 Presentation

Present Basics of Wine, as well as an introduction to writing compliance tests

Source 3
2/21 Submit Modify based on feedback, and submit to Wine list. Modify based on feedback from the winehq list and resubmit every few days. Source 5
Onwards Submit Continue upgrading test suite, preparing to submit as additional patch once test is accepted. Source 4
  Acceptance Test accepted into winehq source tree  
Finals Final Presentation Show final tests, execution on Win & Linux, as well as eviolution of code over CVS commits Presentation 5
Relevant details can be found here: [[http://groups.yahoo.com/group/wine-test-devel/ Yahoo Wine-Test-Devel Group]] ---++ To Do * Incrementally add test cases to cabinet_fdi.c ---++ Progress as of Given Date *2005-01-21:* * Installed Linux * Built Wine * Successfully ran notepad.exe.so, !WinZip 9 installer, !WinZip 9 *2005-01-25:* * Ran conformance test. Looks successful. Here's the output of 'grep "Test failed" log | sed 's/:.*//' | uniq -c | sort': * Installed MSVC Tools
		 Riz:
	  1 msg.c
	  2 typelib.c
	  3 dsound.c
	  3 dsound8.c
	 34 win.c
	 43 metafile.c
* Logfile attached below. * Screenshot of X-Window running notepad on wine (via SSH) *2005-01-28:*
Conformance Test on SuSe 9.2 
Wine CVS checkout: 01/26/05 

Results:
		 Alex:
	104 input.c
	 16 ds3d8.c
	 16 ds3d.c
	  1 file.c
	  1 propset.c
	  1 url.c
	  1 win.c
	 24 msg.c
	  3 typelib.c 
	  3 dsound8.c
	  3 dsound.c
Results: * [[%ATTACHURL%/log][log]]: Suse 9.2 conformance test * [[%ATTACHURL%/errors.txt][errors.txt]]: Errors in the Suse 9.2 Conformance Test This may look like a lot of errors but from looking at them it's clear they focus on video, sound, and mouse events. This install is on a laptop and SuSe is having some "issues" with the video card and the touchpad. *Chosen DLL*
We have decided to work on cabinet.dll. Cabinet was one of the recommended DLLs by Dan, and handles decompression routines for the Microsoft .CAB format. While this DLL isn't as highly used as others, such as Wsock32, the [[http://msdn.microsoft.com/library/default.asp?url=/library/en-us/devnotes/winprog/developer_notes.asp CabinetSDK]] that it implements is used in many install routines - providing a detailed test of the API would be beneficial to ensuring Wine's overall compatability. *2005-01-31:* One sleepless night led to a total recompile of wine for me on linux.ucla.edu. (linux.ucla.edu runs debian-stable, which runs an older version of libungif than 'should' be allowed by wine's autoconf - the bug report to Wine-Devel and follow ups can be found in LugWine) The log files for my installs and compiles for reference. * [[%ATTACHURL%/Jan31.cvs.txt][Jan31.cvs.txt]]: Jan 31 Wine Rebuild - CVS log * [[%ATTACHURL%/Jan31.configure.txt][Jan31.configure.txt]]: Jan 31 Wine Rebuild - Configure log * [[%ATTACHURL%/config.log][config.log]]: Jan 31 Wine Rebuild - config.log * [[%ATTACHURL%/config.status][config.status]]: Jan 31 Wine Rebuild - config.status * [[%ATTACHURL%/Jan31.depend.txt][Jan31.depend.txt]]: Jan 31 Wine Rebuild - 'make depend' log * [[%ATTACHURL%/Jan31.make-wogif.txt][Jan31.make-wogif.txt]]: Jan 31 Wine Rebuild - 'make' log * [[%ATTACHURL%/Jan31.depend2.txt][Jan31.depend2.txt]]: Jan 31 Wine Rebuild - 'make depend' log #2 - post gif_lib.h fix * [[%ATTACHURL%/Jan31.make.txt][Jan31.make.txt]]: Jan 31 Wine Rebuild - 'make' log #2 - post gif_lib.h fix *2005-02-02:* With gif_lib.h fix: 1 typelib.c 3 dsound.c 3 dsound8.c 8 marshal.c 11 win.c *2005-02-03:* Successfully compiled the lzexpand test using MS headers on WindowsXP.
Test ran successfully. [[%ATTACHURL%/lzexpand_main.exe][lzexpand_main.exe]]: WinXP compilation of lzexpand test *2005-02-03:* Cabinet includes 2 interfaces. The File Compression Interface in FCI.h and the File Decompression Interface in FDI.h By looking at fci.c we found that the functionaliry of FCI is essentialy not implemented in Wine. This file, which should hold the implementation of the FCI interface is essentially full for FIXME's. FDI however, being the more important, as programs actually use it, is implemented. Therefore we have descided to focus on the FDI interface at the moment.       _Short Description of Functions:_
      FDICreate-Creates an FDI context.
      FDIIsCabinet-Determines if a file is a cabinet and if so returns information about it.
      FDICopy-Extracts a file from a cabinet.
      FDIDestroy-Destroys an FDI context.
Furthermore there are nine callback functions that the user must provide inorder for the FDI to work. These functions deal primarily with memory and file I/O and having the user provide them allows the interface to be used in a wide range of applications, and on nontraditional devices. [[%ATTACHURL%/FCI-FDI.DOC][FCI-FDI.DOC]]: FCI and FDI SDK Documentation
[[%ATTACHURL%/FDI.H][FDI.H]]: File Decompression Interface header
[[%ATTACHURL%/FDI_wine.H][FDI_wine.H]]: Wine version of FDI header file
[[%ATTACHURL%/fci.c][fci.c]]: Wine (Non)Implementation of FCI *2005-02-04:* Created an Alpha Test which excersises a small subset of the functionality.
Refer to http://www.geekymedia.com/viewcvs/cgi/viewcvs.cgi/group3/wine/dlls/cabinet/tests/ for the source code of the Makefile and cabinet_fdi.c Alpha results are fine on Windows.
Results on Linux-wine
[rizwank@xorn ~/win..cabinet/tests]$make
../../../tools/winegcc/winegcc -B../../../tools/winebuild -mconsole cabinet_fdi.o testlist.o -o cabinet_test.exe.so -L../../../libs/port -lwine_port -L../../../dlls -L../../../libs -lkernel32 -L/home/rizwank/lib
cabinet_fdi.o: In function `TestDestroy':
/home/rizwank/wine/dlls/cabinet/tests/cabinet_fdi.c:122: undefined reference to `FDIDestroy'
/home/rizwank/wine/dlls/cabinet/tests/cabinet_fdi.c:123: undefined reference to `FDIDestroy'
/home/rizwank/wine/dlls/cabinet/tests/cabinet_fdi.c:124: undefined reference to `FDIDestroy'
cabinet_fdi.o: In function `TestCreate':
/home/rizwank/wine/dlls/cabinet/tests/cabinet_fdi.c:135: undefined reference to `FDICreate'
/home/rizwank/wine/dlls/cabinet/tests/cabinet_fdi.c:148: undefined reference to `FDICreate'
/home/rizwank/wine/dlls/cabinet/tests/cabinet_fdi.c:161: undefined reference to `FDICreate'
testlist.o: In function `get_tls_data':
/home/rizwank/wine/dlls/cabinet/tests/testlist.c(.data+0x4): undefined reference to `func_cabinet_fdi'
collect2: ld returned 1 exit status
winegcc: gcc failed.
make: *** [cabinet_test.exe.so] Error 2

Obviously there is some header confusion. -- Main.RizwanKassim - 26 Jan 2005 * [[%ATTACHURL%/oldlog.txt][oldlog.txt]]: Rizwan's Earlier Wine Conformance Test * [[%ATTACHURL%/log.txt][log.txt]]: Rizwan's Current Wine Conformance Test * [[%ATTACHURL%/TESTFDI.C][TESTFDI.C]]: TestFDI from MS - For REFERENCE ONLY * [[%ATTACHURL%/FDI_wine.H][FDI_wine.H]]: Wine version of FDI header file * [[%ATTACHURL%/fci.c][fci.c]]: Wine Implementation of FCI %META:FILEATTACHMENT{name="oldlog.txt" attr="" comment="Rizwan's Earlier Wine Conformance Test" date="1106984958" path="C:\cygwin\home\rizwank\oldlog.txt" size="41" user="RizwanKassim" version="1.1"}% %META:FILEATTACHMENT{name="log.txt" attr="" comment="Rizwan's Current Wine Conformance Test" date="1106985141" path="C:\cygwin\home\rizwank\log.txt" size="68876" user="RizwanKassim" version="1.1"}% %META:FILEATTACHMENT{name="log" attr="" comment="Suse 9.2 conformance test" date="1106990916" path="log" size="87782" user="AleksandrLiber" version="1.1"}% %META:FILEATTACHMENT{name="errors.txt" attr="" comment="Erros for Suse 9.2" date="1106990958" path="errors.txt" size="4557" user="AleksandrLiber" version="1.1"}% %META:FILEATTACHMENT{name="Wine3GradeSheet.xls" attr="" comment="Grade Sheet" date="1107564278" path="Z:\Wine3GradeSheet.xls" size="15360" user="RizwanKassim" version="1.2"}% %META:FILEATTACHMENT{name="TESTFDI.C" attr="" comment="TestFDI from MS - For REFERENCE ONLY" date="1107498433" path="C:\temp\user\cab\SAMPLES\TESTFDI\TESTFDI.C" size="9347" user="RizwanKassim" version="1.1"}% %META:FILEATTACHMENT{name="FCI-FDI.DOC" attr="" comment="FCI and FDI SDK Documentation" date="1107498473" path="C:\temp\user\cab\DOCS\FCI-FDI.DOC" size="59106" user="RizwanKassim" version="1.1"}% %META:FILEATTACHMENT{name="FDI.H" attr="" comment="File Decompression Interface header" date="1107510990" path="FDI.H" size="47309" user="AleksandrLiber" version="1.1"}% %META:FILEATTACHMENT{name="lzexpand_main.exe" attr="" comment="WinXP compilation of lzexpand test" date="1107511057" path="lzexpand_main.exe" size="32768" user="AleksandrLiber" version="1.1"}% %META:FILEATTACHMENT{name="FDI_wine.H" attr="" comment="Wine version of FDI header file" date="1107512348" path="FDI_wine.H" size="10491" user="AleksandrLiber" version="1.1"}% %META:FILEATTACHMENT{name="fci.c" attr="" comment="Wine Implementation of FCI" date="1107512386" path="fci.c" size="3588" user="AleksandrLiber" version="1.1"}%