- Set up GitHub account + add your SSH keys
- Fork php-src repo to your GitHub account
- Clone source (or use USB stick) & cd into directory
- Update origin remote URL with your fork
$ git remote set-url origin {your-fork-URL}
- Install the deps or use Docker
$ sudo apt-get update
$ sudo apt-get install git \
build-essential autoconf valgrind \
re2c bison \
libxml2-dev lcov
- If using Docker, build, run & access TTY:
$ docker-compose build
$ docker-compose up
$ docker exec -it -u sammyk phptscreencast_web_1 bash
- Configure with at least the following
$ ./configure --enable-maintainer-zts \
--enable-debug \
--enable-cli
- Compile all the things
$ make
- Check version number
$ sapi/cli/php --version
- Run some tests (for example for ext/libxml)
$ make test TESTS=ext/libxml/tests/
- Visit PHP: Test and Code Coverage Analysis and search for some code that needs coverage
- Or make a failing test for a bug: PHP :: Bugs