Re: Creating tests with additional binary modules
Am 01.07.2010 21:55, schrieb Alexandre Julliard: > None of that, of course. The resources are built at compile time, at run > time you create a PE header and copy the needed resource data. You may > even be able to use UpdateResource to make things easier. Do we have existing tests creating PE header? -- Best Regards, André Hentschel
Re: Creating tests with additional binary modules
W dniu 1 lipca 2010 21:55 użytkownik Alexandre Julliard napisał: > Mariusz Pluciński writes: > >> W dniu 1 lipca 2010 21:27 użytkownik Alexandre Julliard >> napisał: >>> You can't do that in the Makefile, you need to generate the files at run >>> time. >> >> Huh, so while executing the test, I need to run at least resources >> compiler and linker, right? It looks really more complicated way, and >> I admit that I completely don't know how to do it. Which tools >> should I use? Can I use Mingw? Can I assume that these tools are >> installed on system where test is running? Or maybe I should use >> some tools provided by wine? And, of course, how to make it working >> on Windows? > > None of that, of course. The resources are built at compile time, at run > time you create a PE header and copy the needed resource data. You may > even be able to use UpdateResource to make things easier. > All right, now it's more clear for me. I'm not so familiar with working on resources, and I didn't know there's API call which can modify resources in existing binary. I'll try to make it this way, thanks.
Re: Creating tests with additional binary modules
Mariusz Pluciński writes: > W dniu 1 lipca 2010 21:27 użytkownik Alexandre Julliard > napisał: >> You can't do that in the Makefile, you need to generate the files at run >> time. > > Huh, so while executing the test, I need to run at least resources > compiler and linker, right? It looks really more complicated way, and > I admit that I completely don't know how to do it. Which tools > should I use? Can I use Mingw? Can I assume that these tools are > installed on system where test is running? Or maybe I should use > some tools provided by wine? And, of course, how to make it working > on Windows? None of that, of course. The resources are built at compile time, at run time you create a PE header and copy the needed resource data. You may even be able to use UpdateResource to make things easier. -- Alexandre Julliard julli...@winehq.org
Re: Creating tests with additional binary modules
W dniu 1 lipca 2010 21:27 użytkownik Alexandre Julliard napisał: > You can't do that in the Makefile, you need to generate the files at run > time. Huh, so while executing the test, I need to run at least resources compiler and linker, right? It looks really more complicated way, and I admit that I completely don't know how to do it. Which tools should I use? Can I use Mingw? Can I assume that these tools are installed on system where test is running? Or maybe I should use some tools provided by wine? And, of course, how to make it working on Windows?
Re: Creating tests with additional binary modules
Mariusz Pluciński writes: > That's true on Wine, but I also want to make my tests runnable > under Windows, so in this case I need to create native PE modules. > > And as I said, my main problem is that I don't know how to > write rules in Makefile.in to build what I need. You can't do that in the Makefile, you need to generate the files at run time. -- Alexandre Julliard julli...@winehq.org
Re: Creating tests with additional binary modules
> Do they really need to be separate binaries? Unfortunately yes. To the function I pass only the path to binary, and it unpacks data internally, so I cannot select actual resource. One binary can contain multiple GDFs only if they are translations of the same file in few languages. And I don't know is there any way to force library to load specified language version (and it is, in my opinion, not "clean" way of testing). > And no, it doesn't have to be a pure win-pe binary. Wine can load > and parse resources just from winelib (dll.so/exe.so) binaries. That's true on Wine, but I also want to make my tests runnable under Windows, so in this case I need to create native PE modules. And as I said, my main problem is that I don't know how to write rules in Makefile.in to build what I need.
Re: Creating tests with additional binary modules
> Wine can load and parse resources just from > winelib (dll.so/exe.so) binaries. I assume that dll.so/exe.so are for all practical purposes identical to .dll/.exe except they can't be run on windows. Peter
Re: Creating tests with additional binary modules
On 06/30/2010 09:52 AM, Mariusz Pluciński wrote: > Checking results of routines execution is not problem for me. But thing I > test is parser, so I need to pass various GDF files to routine. And, as GDFs > are stored in binaries, I will need to create many binaries. They should be > created in compile time and available for test's executable while running it. Do they really need to be separate binaries? Can't it be multiple resources in one binary? And if so, just add resources to the test. And no, it doesn't have to be a pure win-pe binary. Wine can load and parse resources just from winelib (dll.so/exe.so) binaries. Vitaliy
Creating tests with additional binary modules
Hi, wine-devel I'm working on implementation of Windows Game Explorer interfaces for Wine. The work is in advanced stage now, but I have problem with implementation of conformance tests. Thing I want to test is loading and parsing so-called Game Definition Files. GDF are not separate files, but stored as resources in binary modules (usually in game's main executable). Using GE interfaces, programmer only needs to pass path to binary, and GE automatically loads and process embedded GDF(s). Checking results of routines execution is not problem for me. But thing I test is parser, so I need to pass various GDF files to routine. And, as GDFs are stored in binaries, I will need to create many binaries. They should be created in compile time and available for test's executable while running it. The problem is that I don't know how to do this using wine's mechanisms. How should Makefile.in file look to build additional executable files properly (they should be probably always native win32 executables, even if parameter "crosstest" wasn't specified)? How should I guarantee that these additional executables will be copied into winetest directory (to make them accessible while executing tests)? Thanks in advance Mariusz Pluciński