-
Notifications
You must be signed in to change notification settings - Fork 5.8k
Use git submodules for Qt Base and Qt WebKit #13640
Conversation
\o/ thanks for picking this up. it's a great step forwards, imo. |
Included fix for XCode 7 |
c08431b
to
9e00c33
Compare
Now it works on all platforms. /cc @ariya |
Starting from a clone of master, I merged the pull request and tried it.
Here are the results of my attempts, first on an already checked out phantomjs project, reset --hard on master. build
After deleting the qtbase directory, I got it to build. I also cloned the phantomjs repo anew and tried the same steps : testsIn the "old" checkout, once build.py has succeeded. running
In the "new" checkout
Adding the bin directory of the corresponding checkout to the path results in the same failures in both cases. After checking the travis-ci build @ https://travis-ci.org/ariya/phantomjs it looks like the correct way to run the tests is `test/run-tests.sh
Still from the travis-ci run it looks like there is another test suite to run
Full log
As a suggestion : a note in either README.ms or CONTRIBUTING.md on
Also travis.yml may need to be updated since it tries to build the project with build.sh and not build.py ... |
how should I install phantomjs now ? from source, which takes a lot of time ? from brew ? I'm stuck on this since 1 week now. this is my brew config output:
|
@alduro for now you have to checkout the github repo, merge this pull request manually and build from source. in #212902, @vitallium says that he might provide nightly builds for each platforms. |
9e00c33
to
c11c77d
Compare
c11c77d
to
8811aa0
Compare
FYI: I'll merge it TODAY. |
@vitallium Make sure to rebase first, commit 97d9ea2 is already in master. I am doing some testing now. |
@zackw yeah, I'll rebase it first. |
Problem: after merging the branch,
Same behavior with git 2.1.4. |
It appears that the To fix, take a fresh clone of the branch, then run
After this completes,
Commit that, push, take a second fresh clone, and make sure |
I could never get into git submodules. Shame on me... |
Further notes:
|
|
Test failures on Linux (with gcc-4.9 and no gstreamer):
The Date failure appears actually to be a bug getting fixed: per https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/getDate , The render failure, shrug, those tests need to have some capacity for fuzzy image matching before we can take them seriously. "ERROR: PhantomJS exited successfully when test failed" might be a bug in the testsuite, though. Regardless, can fix later. |
Update:
|
@zackw I updated the build script. Could you please have a look? I'm not sure how we should handle flags from an environment variable. |
caf2c39
to
048a018
Compare
@vitallium With your update, the build goes through on my Mac. And I think I've solved the GStreamer problem, patch shortly. |
... for values of "shortly" no sooner than "after I recompile the entire thing from scratch again :-(" |
CORRECTION: The problem with the |
This allows a successful build on Linux/gcc5 with the gstreamer libraries available. Should probably be put through its paces elsewhere.
|
And one more addition to |
@zackw steps to make it work on Mac ? Thanks. |
@alduro Install Xcode command line tools. Install either Homebrew or MacPorts. Use whichever of those you picked to install OpenSSL. Then build.py from this branch should Just Work. You might also have to install a couple other third-party libraries that way, I can't remember.
|
Merging. I warned. |
This script merges the functionality of all these files: build.sh src/qt/preconfig.sh build.cmd src/qt/preconfig.cmd Note that some recent changes to the above files are not yet included in this script. Due to that, these files are not yet removed. If you fear this pulls in Python as another build dependency, then fear not: Qt WebKit already requires Python internally. It also includes Ruby and Perl btw, but I opted for Python. Issue: ariya#12580
Removed deprecated options. Added 3rd party libraries paths.
Third party libraries now have zlib library. Zlib library is necessary for compression in PDF printing and WOFF files.
Ignore warning 4049 about importing locally defined symbols.
Apple stopped shipping OpenSSL with XCode7. Let's use OpenSSL installed via Brew or MacPorts.
This allows a successful build on Linux/gcc5 with the gstreamer libraries available.
c43fcec
to
fce8475
Compare
@zackw thanks. I will now try from master since this PR was merged. |
@vitallium Is there any reason to keep |
@zackw I keep them for compatibility. Will remove them in the near future. |
@zackw did work perfectly from master. Using Xcode 7.1 running build.py. Thanks. |
The build is failing for me in Xcode 8, because the git submodule commands in That's causing this error to appear. The commit checked out doesn't use Note, the I'm working around this by manually checking out the proper branches in the submodules and running Ah, I noticed this was fixed in 936ba7a (#14082), but not in |
Covers this pull request also: #12578
As discussed here: https://groups.google.com/forum/#!topic/phantomjs-dev/TVJDJ2K_5R8
Check list:
We have to figure out the way to build PhantomJS with OpenSSL installed via Brew.
You can see additional commits for Windows platform. They're necessary for successful build.
Fixes:
#12426