Files
moko-platform/templates/makefiles
Jonathan Miller 661f84b9c7 feat: add all templates from MokoStandards
Templates moved from MokoStandards repo:
- templates/configs/ (editor, linting, composer configs)
- templates/docs/ (required + extra doc templates)
- templates/gitea/ (issue templates, CLAUDE.md, copilot-instructions)
- templates/github/ (legacy, kept for reference)
- templates/joomla/ (Joomla component/module/plugin templates)
- templates/makefiles/ (build automation)
- templates/schemas/ (JSON/XML schemas)
- templates/scripts/ (PHP script templates)
- templates/stubs/ (Dolibarr/Joomla stubs)
- templates/build/, fonts/, images/, licenses/, security/, web/

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-16 19:23:09 -05:00
..

Makefile Templates

This directory contains Makefile templates for different repository types.

Template Files

Makefile.generic.template

Generic Makefile for standard repositories. Includes common targets for:

  • Building and compiling
  • Testing and linting
  • Cleaning and maintenance
  • Development workflow automation

Usage:

cp templates/makefiles/Makefile.generic.template ./Makefile

Makefile.joomla.template

Joomla-specific Makefile for extensions (components, modules, plugins, etc.). Includes targets for:

  • Joomla manifest validation
  • Extension packaging
  • Installation and deployment
  • Testing with Joomla framework
  • Build artifact creation

Usage:

cp templates/makefiles/Makefile.joomla.template ./Makefile

Makefile.dolibarr.template

Dolibarr-specific Makefile for modules. Includes targets for:

  • Module descriptor validation
  • SQL migration management
  • Module packaging
  • Installation and deployment
  • Testing with Dolibarr framework
  • Build artifact creation

Usage:

cp templates/makefiles/Makefile.dolibarr.template ./Makefile

Template Naming Convention

All Makefile templates use the .template extension to clearly distinguish them from active Makefile files. When copying to your repository:

  1. Remove the .template extension: Makefile.generic.templateMakefile
  2. Customize for your project: Update variables and targets as needed
  3. Test the targets: Run make help to see available targets

Customization

After copying a template:

  1. Update project-specific variables at the top of the Makefile
  2. Modify paths to match your repository structure
  3. Add or remove targets based on your needs
  4. Update dependencies between targets if necessary

Schema Integration

These Makefile templates are referenced in the repository structure schemas:

  • default-repository.xml: Uses Makefile.generic.template (suggested)
  • waas-component.xml: Uses Makefile.joomla.template (required)
  • crm-module.xml: Uses Makefile.dolibarr.template (required)

The schemas define source/destination mappings that automatically convert .template extensions to the final Makefile name.

Common Targets

Most templates include these standard targets:

  • make help - Display available targets
  • make build - Build the project
  • make test - Run tests
  • make lint - Run linters
  • make clean - Clean build artifacts
  • make install - Install dependencies
  • make package - Create distribution package

Platform-specific templates may include additional targets relevant to their ecosystem.

Support

For questions or issues with Makefile templates:

  • See main MokoStandards documentation
  • Check the platform-specific guides (Joomla, Dolibarr)
  • Review the schema documentation for source/destination details