Skip to content

Small build system aimed at creating standalone CLI scripts by including their libraries as source within the script.

License

Notifications You must be signed in to change notification settings

DarthCorvidus/phuild

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

phuild is a tool to help distribute PHP scripts along with necessary components.

INTRODUCTION

phuild is a small build system that compiles a script and its dependencies into
a single file. To do so, it parses a phuild.yml which is supposed to reside
in the project root directory as well as a script and its libraries as defined
in phuild.yml. It will then determine which classes and interfaces are used
within a script and build the entire hierarchy of dependencies by looking into
file after file. At the end, a single file will be created which contains all
libraries as well as the original script. 

USAGE

./phuild.php /your/project/directory/

You need to add a code block within your script:

#Include
#/Include

The lines in between #Include and #/Include will be replaced by phuild's output.

PARAMETERS

	--check    prints output on which classses are available or not, without
               creating a script.

CONFIGURATION

phuild is configured via a yaml file, phuild.yml. Several entries can be made
to compile more than one script.

Parameters for one entry:

    name:      A human readable name for an entry
	source:    source script (relative to project root)
    target:    target file (relative to project root)
    includes:  list of include directories to look for dependencies.

Please note that, when using includes, newer entries overwrite older ones. It is
advisable to use Composer's vendor directory first and then your local
dependencies.
    

About

Small build system aimed at creating standalone CLI scripts by including their libraries as source within the script.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published