Closed Bug 72234 Opened 24 years ago Closed 22 years ago

Can't build JS shell on Windows with js.mak and VC++

Categories

(Core :: JavaScript Engine, defect)

x86
Windows NT
defect
Not set
normal

Tracking

()

VERIFIED FIXED

People

(Reporter: pschwartau, Assigned: pschwartau)

Details

I cannot build the JS shell on Windows by via js.mak and Visual C++. I get a messagebox warning: "This project was generated by a previous version of Developer Studio and must be converted to the new format. Do you want to convert the project?" I click OK and get a faiure warning: "This makefile could not be converted to a Developer Studio project." I get further messageboxes, but do not succeed in building the JS shell. I believe this is a recent regression - perhaps from bug 59855?
Can you back out my changes and see what happens?
OK, will try that -
This is strange: I'm having no trouble with js.mak on my WinNT4.0 box now! I know it wasn't working before, because I actually took screenshots of the problem and still have them. But right now, everything is working fine. In addition, we tried this on Roger's Win2K box and it failed - Roger, would you be able to try this out and see if it's still not working for you? Steps to reproduce: 1. Create a new directory 2. Pull -r JS_150_RC3 branch of mozilla/js/src into this directory 3. Try to build the JS shell with js.mak and Visual C++ Thanks -
Works fine for me on win2k.
Reassigning to myself. This turns out to be a problem with the tarball I made of the JS_150_RC3 branch of js/src, not the source itself. Both Roger and I are able to build the JS shell successfully when we pull the JS_150_RC3 branch directly from CVS. Again Visual C++ says: "This project was generated by a previous version of Developer Studio and must be converted to the new format. Do you want to convert the project?" And when you hit OK, the project converts SUCCESSFULLY. But if you get my tarball from the mozilla ftp server, Visual C++ fails in converting the project, with the warning I gave above.
Assignee: mkaply → pschwartau
this problem is in the 1.5 RC5 tarball too. it's the newlines in js.mak. open up js.mak in notepad.exe and you'll see. a quick fix is to open up js.mak in wordpad.exe instead and then resave it as an MS-DOS text file.
it looks like you'll have to change your release packaging steps. either package the release from windows, or run unix2dos (perl -pi -e 's/\r/\r\n' `find . -name '*.mak'`) from the unix box. mozilla/js/src/js.mak mozilla/js/src/fdlibm/fdlibm.mak
j. and timeless: thanks for figuring this out! I had luck with the Perl in-place edit that timeless gave, only with the first '\r' changed to be '\n' (a typo, I believe). For example, I did: perl -pi -e 's/\n/\r\n/;' js.mak After doing that, Visual C++ was able to convert js.mak to a "Developer Studio project". I will update the release packaging steps to include this (also for fdlibm.mak). Thanks for your help on this!
Resolving as FIXED. I have just published RC5a of JS1.5 at ftp://ftp.mozilla.org/pub/js. I created the tarball on Linux. Before tarring, I applied the in-line edit in Comment #8 to `find . -name '*.mak'`. Then, after publishing, I downloaded the tarball to my WinNT box, and successfully built the JS shell via VC++ and js.mak. Thanks again to j. and timeless for figuring this out -
Status: NEW → RESOLVED
Closed: 22 years ago
Resolution: --- → FIXED
Marking Verified Fixed -
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.