gasolwu/php-makefile

Makefile recipes for PHP

Installs: 11

Dependents: 0

Suggesters: 0

Security: 0

Stars: 1

Watchers: 2

Forks: 1

Open Issues: 0

Language:Makefile

v0.2.1 2019-11-15 09:55 UTC

This package is auto-updated.

Last update: 2024-06-15 20:17:56 UTC


README

PHP Makefile

A set of makefiles consists of useful rules for PHP development.

asciicast

Installation

Install as development package by using Composer

composer require --dev gasolwu/php-makefile

Or, append the following snippet into your composer.json and then run install manually by composer install

{
    "require-dev": {
        "gasolwu/php-makefile": "^0.1"
    }
}

Getting Started

The minimum setup is to create your own Makefile and includes the PHP.mk.

cat > Makefile <<EOF
include vendor/gasolwu/php-makefile/PHP.mk
EOF

Usage

Available targets

Basic

  • make syntax - Check syntax by PHP built-in linter
  • make clean - Remove build directory

With USES=phpunit

  • make phpunit.xml - Generate configuration file for PHPUnit with suggested settings
  • make phpunit - Run test with PHPUnit

With USES=composer

  • make vendor - Install dependencies by using Composer

With USES=phpcs

  • make style - Check coding style by PHP_CodeSniffer

Hints

There are two approches to run test by default, So you can run test by running make instead of make phpunit

  1. Define .DEFAULT_GOAL

     .DEFAULT_GOAL := phpunit
    
  2. Declare all target that depends on phpunit

     all: phpunit
    

Configuration

Those variables should work well for most PHP libraries by default, If it doesn't, Feel free to apply changes that applicable to you.

  • USES - Possible values are
    • composer
    • phpunit
    • phpcs
  • BUILD_DIR - Build directory that contains all generated files during the build phase are placed here. Should be listed in VCS ignore file. Default to build.
  • PHP_SRCDIR - Source directory, Default to src.
  • PHP_TESTDIR - Tests directory, Default to tests.

License

MIT - Copyright © 2019 Gasol Wu