Scans source files to detect platform, name, version, element_name, package_type, language, entry_point, description, and license_spdx. Supports Joomla, Dolibarr, Go, MCP/Node, and generic platforms. Includes --diff and --update modes for comparing against and pushing to the Gitea manifest API. Warns on missing core fields. Also removes deprecated mcp/servers/mokowaas_api (consolidated to separate repo) and syncs dev branch changes.
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:
- Remove the .template extension:
Makefile.generic.template→Makefile - Customize for your project: Update variables and targets as needed
- Test the targets: Run
make helpto see available targets
Customization
After copying a template:
- Update project-specific variables at the top of the Makefile
- Modify paths to match your repository structure
- Add or remove targets based on your needs
- 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 targetsmake build- Build the projectmake test- Run testsmake lint- Run lintersmake clean- Clean build artifactsmake install- Install dependenciesmake 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 mokoplatform documentation
- Check the platform-specific guides (Joomla, Dolibarr)
- Review the schema documentation for source/destination details