Skip to content

Instantly share code, notes, and snippets.

@adamculp
Forked from SammyK/readme.md
Created August 11, 2017 17:50
Show Gist options
  • Select an option

  • Save adamculp/0941f5c60bc6e954dc6765b572648824 to your computer and use it in GitHub Desktop.

Select an option

Save adamculp/0941f5c60bc6e954dc6765b572648824 to your computer and use it in GitHub Desktop.

Revisions

  1. @SammyK SammyK created this gist Aug 11, 2017.
    57 changes: 57 additions & 0 deletions readme.md
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,57 @@
    # Northeast PHP Hack-a-thon (php-src) 2017

    - Set up GitHub account + [add your SSH keys](https://help.github.com/articles/connecting-to-github-with-ssh/)
    - Fork [php-src repo](https://github.com/php/php-src) to your GitHub account
    - Clone source (or use USB stick) & cd into directory
    - Update origin remote URL with your fork

    ```bash
    $ git remote set-url origin {your-fork-URL}
    ```

    - Install the deps or use [Docker](https://gist.github.com/SammyK/4a5cf70d0973731d0c85b151a323ea2d)

    ```bash
    $ 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:

    ```bash
    $ docker-compose build
    $ docker-compose up
    $ docker exec -it -u sammyk phptscreencast_web_1 bash
    ```

    - Configure with at least the following

    ```bash
    $ ./configure --enable-maintainer-zts \
    --enable-debug \
    --enable-cli
    ```

    - Compile all the things

    ```bash
    $ make
    ```

    - Check version number

    ```bash
    $ sapi/cli/php --version
    ```

    - Run some tests (for example for ext/libxml)

    ```bash
    $ make test TESTS=ext/libxml/tests/
    ```

    - Visit [PHP: Test and Code Coverage Analysis](http://gcov.php.net/) and search for some code that needs coverage
    - Or make a failing test for a bug: [PHP :: Bugs](https://bugs.php.net/)