{"id":17691283,"url":"https://github.com/daar/pmake","last_synced_at":"2026-02-07T00:31:34.292Z","repository":{"id":84110763,"uuid":"57590485","full_name":"daar/pmake","owner":"daar","description":"PMake is a cross-platform build tool for (free) pascal","archived":false,"fork":false,"pushed_at":"2019-08-13T07:39:14.000Z","size":4474,"stargazers_count":28,"open_issues_count":19,"forks_count":6,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-07-23T04:43:55.595Z","etag":null,"topics":["build-automation","build-tool","cross-platform","delphi","freepascal","lazarus-ide","object-pascal","pascal","pmake","pmake-script"],"latest_commit_sha":null,"homepage":"http://daar.github.io/pmake/","language":"Pascal","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/daar.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-05-01T08:20:20.000Z","updated_at":"2025-03-14T22:10:50.000Z","dependencies_parsed_at":"2023-03-05T17:00:44.321Z","dependency_job_id":null,"html_url":"https://github.com/daar/pmake","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/daar/pmake","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daar%2Fpmake","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daar%2Fpmake/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daar%2Fpmake/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daar%2Fpmake/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/daar","download_url":"https://codeload.github.com/daar/pmake/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daar%2Fpmake/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29181819,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-06T23:15:33.022Z","status":"ssl_error","status_checked_at":"2026-02-06T23:15:09.128Z","response_time":59,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["build-automation","build-tool","cross-platform","delphi","freepascal","lazarus-ide","object-pascal","pascal","pmake","pmake-script"],"created_at":"2024-10-24T12:08:08.560Z","updated_at":"2026-02-07T00:31:34.275Z","avatar_url":"https://github.com/daar.png","language":"Pascal","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![license](https://img.shields.io/badge/license-%20GPL--2-blue.svg)](../master/LICENSE)\n[![Build Status](https://travis-ci.org/daar/pmake.svg?branch=master)](https://travis-ci.org/daar/pmake)\n\n\u003cimg src=\"https://github.com/daar/pmake/blob/master/logo/pmake_logo.png\" alt=\"PMake\" width=\"50%\" height=\"50%\"/\u003e\n\n*a cross-platform build tool for (free)pascal*\n\nIntroduction\n============\nPMake is a minimalistic build tool for (free) pascal. It mimics to some extent the commands from CMake yet only targets pascal compilers. The inner working of pmake are relatively simple as the compiler does all the hard work. Once invoked pmake will generate a build system for the project. The developer can define with simple commands which targets are present in the project and what the dependencies between these targets are. A target can either be a library (no executable, only object files) or an executable.\n\n\u003e Please be aware that for the time being PMake is under development and that some features might break. However due to the simplicity and the forgivingness of the PMake script it should be easy to adjust.\n\nUsing PMake\n===========\n\nSupported Platforms\n-------------------\n\n* Linux\n* Macintosh\n* Windows\n\nOther operating systems will probably work too out of the box, if not it should not be a major problem to make PMake work on this platform. Just make sure PMake and the compiler is available from the command-line.\n\nBuilding PMake from Scratch\n---------------------------\nYou need to have the latest stable freepascal compiler 3.0.4 installed. PMake can bootstrap itself with the provided PMake.txt script. You will first need to build pmake and then install it. In short:\n\n`$ fpc pmake`\n\n`$ ./pmake`\n\n`$ ./make install`\n\n\u003e Note that you need to have administrsator privileges to be able to install PMake on your system.\n\nDownload a binary release\n-------------------------\nOn the GitHub [release pages](https://github.com/daar/pmake/releases) you can find a pre-built binary for your platform.\n\nBuilding a project\n------------------\nBuilding your project is easy. You can setup initial build scripts by using the built in function `--quickstart`. This will parse the source tree and create a sequence of `PMake.txt` files. You can do an in-source or out-of-source build if you would like your source tree to stay clean. Below is a simple example how PMake (pre-installed tool) can be used to do an out-of-source build. \n\n\u003cimg src=\"./doc/pmake_build.gif\" alt=\"PMake build\" width=\"50%\" height=\"50%\"/\u003e\n\nNotice the nice visual feedback. PMake will regenerate the build tools automatically if a PMake.txt file in the source tree changes.\n\nReporting Bugs\n==============\nIf you have found a bug:\n\n1. If you have a patch, please make a pull request.\n\n2. Otherwise, please create an [issue](https://github.com/daar/pmake/issues) on the GitHub page.\n\nContributing\n============\nYou can for PMake and make contributions by making pull request.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdaar%2Fpmake","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdaar%2Fpmake","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdaar%2Fpmake/lists"}