* SUMMARY The dftables script should be rewritten as a script. This will solve issues such as Bug 14744. * NOTES <rdar://problem/5681463>
Created attachment 18376 [details] dftables in Perl Here's the rewrite of the dftables script in everyone's favorite scripting language: Perl! Since the original C++ program was pulling values from the pcre_internal.h header file, the script creates a file that is pre-processed using cpp to generate Perl code, which is then eval-ed. The Perl will look very C-like because I mostly kept the same logic/structures as the original C code to make it easier to verify.
Will post a patch shortly.
Copying people familiar with other build systems that I haven't tested (Qt, GTK, WX, Windows).
Created attachment 18377 [details] Patch v1 Proposed patch. Please review changes for your build system (qmake, GNU autotools/make, Bakefiles, Visual C++). All build system changes were made "blind" except the Xcode change.
Comment on attachment 18377 [details] Patch v1 You'll need to remove the dftables project from WebKit/win/WebKit.vcproj/WebKit.sln as well In the .sln files you not only need to remove the project itself but also remove its GUID from any dependency listings.
(In reply to comment #4) > Created an attachment (id=18377) [edit] > Patch v1 I should note that output from the Perl script is identical to the compiled C++ program when I built on Mac OS X 10.5.1 (9B18).
Comment on attachment 18377 [details] Patch v1 + $(JavaScriptCore)/pcre Should have a backslash at the end of this line, or you could delete the "#" at the beginning of the next line which is supposed to be a sort of reminder that you're at the end of the script. Looks fine, r=me (Too bad I have saved patches with changes to the tool -- should be easy enough to port, though.)
Created attachment 18381 [details] Patch v2 Contains fixes for Darin's and Adam's issues.
Comment on attachment 18381 [details] Patch v2 Looks good on the Windows side.
Nice. -JavaScriptCore/pcre/chartables.c: $(top_builddir)/Programs/dftables$(EXEEXT) - ./Programs/dftables $@ +JavaScriptCore/pcre/chartables.c: + $(srcdir)/JavaScriptCore/pcre/dftables $@ This should probably be: JavaScriptCore/pcre/chartables.c: $(srcdir)/JavaScriptCore/pcre/dftables $^ $@
(In reply to comment #10) > -JavaScriptCore/pcre/chartables.c: $(top_builddir)/Programs/dftables$(EXEEXT) > - ./Programs/dftables $@ > +JavaScriptCore/pcre/chartables.c: > + $(srcdir)/JavaScriptCore/pcre/dftables $@ > > This should probably be: > > JavaScriptCore/pcre/chartables.c: $(srcdir)/JavaScriptCore/pcre/dftables > $^ $@ Fixed. Thanks!
Committed revision 29381.
(In reply to comment #12) > Committed revision 29381. It helps if dftables is executable, too. Committed revision 29382.
Looks like Qt Linux/Windows and Gtk builds failed. I must not have made the correct changes to the qmake files.