{"id":16202632,"url":"https://github.com/joergboe/makeitsimple","last_synced_at":"2026-03-04T03:31:06.871Z","repository":{"id":209028642,"uuid":"361728889","full_name":"joergboe/MakeItSimple","owner":"joergboe","description":"The repository contains easy to use make-files","archived":false,"fork":false,"pushed_at":"2026-01-24T10:05:14.000Z","size":436,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-24T20:46:12.895Z","etag":null,"topics":["build-tool","clangd","compilation-database","cpp","gnu-make","kate-editor","make","makefile"],"latest_commit_sha":null,"homepage":"https://joergboe.de/makeitsimple.html","language":"Makefile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/joergboe.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2021-04-26T11:42:35.000Z","updated_at":"2025-05-07T14:36:37.000Z","dependencies_parsed_at":"2024-12-07T13:24:55.847Z","dependency_job_id":"aaf56b31-d5e5-4cd9-8b9e-bb5831fc34b0","html_url":"https://github.com/joergboe/MakeItSimple","commit_stats":{"total_commits":112,"total_committers":4,"mean_commits":28.0,"dds":0.1964285714285714,"last_synced_commit":"76924f99d0588ee6e09af2c22662653bbe842dc4"},"previous_names":["joergboe/makeitsimple"],"tags_count":27,"template":false,"template_full_name":null,"purl":"pkg:github/joergboe/MakeItSimple","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joergboe%2FMakeItSimple","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joergboe%2FMakeItSimple/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joergboe%2FMakeItSimple/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joergboe%2FMakeItSimple/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/joergboe","download_url":"https://codeload.github.com/joergboe/MakeItSimple/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joergboe%2FMakeItSimple/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30070744,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-04T03:25:38.285Z","status":"ssl_error","status_checked_at":"2026-03-04T03:25:05.086Z","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-tool","clangd","compilation-database","cpp","gnu-make","kate-editor","make","makefile"],"created_at":"2024-10-10T09:48:40.433Z","updated_at":"2026-03-04T03:31:06.853Z","avatar_url":"https://github.com/joergboe.png","language":"Makefile","readme":"# MakeItSimple - Makefiles for C++/C Projects\n\n\n## Features\n\nThis github repository has a set of simple makefiles that may be useful for small or medium sized C and C++\nprojects without any further build system. The scripts build executable targets from c-, c++- and\nassembler source files in the current project directory and create a JSON Compilation Database for\nthe clang language server.\nThese makefiles only use functions that are available in a standard GNU Linux installation and do\nnot require any additional build tools to be installed. They are therefore ideally suited to get a\nquick introduction to the C/C++ world.\n\nTogether with an editor that can use the capabilities of the Clang language server, it is possible to\nsupport code completion and code navigation in the best possible and interactive way.\n\nAn interactive project wizard allows a convenient and quick creation of the project skeleton for 5\ndifferent project types.\n\nThe project wizard can generate artifacts for full integration into the Kate Editor build plugin.\n\nMake automatically determines which pieces of a program need to be recompiled, and issues commands\nto recompile them. For maximum performance, all make scripts support parallel build.\n\nThe scripts keeps track of the last used configuration and perform a complete build, if changes in\nthe build configuration have been detected.\n\nThe scripts come with a comprehensive set of warning compiler options for the GNU C++ compiler and clang.\nThese options can be controlled in 6 levels.\n\nAll make files support 2 build modes run and debug. In build mode run an optimized executable without\ndebug information is built. In build mode debug the executable contains debug information.\n\nAll compiler options are valid for GNU C++ compiler and clang, if you use an alternative compiler\nadapt the options and warning flags accordingly.\n\n## Project Types\n\n* One To One:      C++ project    - Build executable targets from each %.cpp and %.cc source file in the project directory.\n* In Place Build:  C++ project    - Build one executable from all %.cpp and %.cc source files in the project directory.\n* Out Place Build: C++ project   - Build one executable from all %.cpp and %.cc source files in all project source directories.\n* Out Place Build: C project     - Build one executable from all %.c source files in all project source directories.\n* Out Place Build: C/C++ project - Build one executable from all C++, C and assembler source files in all project source directories.\n\n## Installation\n\nYou can execute this tool directly from the cloned/downloaded source-repository or you can install the tool.\n\nIf you want to install the tool, download the installation script of the latest release [Releases](https://github.com/joergboe/MakeItSimple/releases)\nand run it. The release package is a self extracting script. Execute it and follow the instructions on the screen.\nYou can install the tool into an arbitrary place. The preferred way is to run this script as root user\nand to install the tool into a system directory.\n* The default installation place for the root user is `/usr/local`\n* The default installation place for other users is `~/mktsimple`\n\n## Quick Start\n\n* After installation you can start the project wizard `mktsimple` from your installation directory.\n* Follow the instructions and select the option 'Create a hello world project'.\n* Then open the created project directory in a shell and execute `make all`.\n* To find out more about the possible options of the tool execute `make help`\n* If the tool is not installed in the default location (`/usr/local`) and the project has no local copy\nof the `warning.xxx.mk` files it is necessary to add the option `-I` with the path to the include directory\nof your installation e. g.: `make -I ~/mktsimple/include`\n\n## Samples\n\nSamples are available in the source repository.\n\nThe directories\n* OneToOne\n* ProjectInPlaceBuild\n* ProjectOutPlaceBuildCpp\n* ProjectOutPlaceBuildC\n* ProjectOutPlaceBuild\ncontain sample projects.\n\nUse the following commands to complete these project fragments withe the project wizard:\n\n    cd OneToOne; ../bin/mktsimple --project-dir . --type otocpp --noprompt --overwrite; make all\n\n    cd ProjectInPlaceBuild; ../bin/mktsimple --project-dir . --type ipbcpp --noprompt --overwrite; make all\n\n    cd ProjectOutPlaceBuildCpp; ../bin/mktsimple --project-dir . --type opbcpp --noprompt --overwrite; make all\n\n    cd ProjectOutPlaceBuildC; ../bin/mktsimple --project-dir . --type opbc --noprompt --overwrite; make all\n\n    cd ProjectOutPlaceBuild; ../bin/mktsimple --project-dir . --type opb --noprompt --overwrite; make all\n\n\n## Kate integration\n\nThe Build Utility provides files that allow you to take full advantage of the Clang Language Server with \nthe Kate Editor.\nTo do this, you need to install the following plugins in 'Kate':\n* Build \u0026 Run,\n* LSP Client,\n* Project Plugin,\n* Terminal\nWhen creating a new project skeleton with the project wizard 'mktsimple', activate the option: \n'Create a Kate Project'. The project wizard can also be used to add the Kate-Project-File to an existing \nC/C++ project.\nThe first build attempt creates the compilation database that is needed by the Language Server, even \nif the build itself fails. From now on, all the functions of the Language Server are available.\n\n\nIf you have any suggestions or bug reports please write a Github Issue.\n\nLearn more about MakeItSimple [here](https://www.joergboe.de/makeitsimple.html).","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoergboe%2Fmakeitsimple","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjoergboe%2Fmakeitsimple","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoergboe%2Fmakeitsimple/lists"}