---
name: "cheatmake"
section: "1"
platform: "linux"
package: "kde-dev-scripts"
version: "26.08.2-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/cheatmake"
---

# cheatmake(1)

fool make into not rebuilding certain files

## NAME

cheatmake - fool **make** into not rebuilding certain files

## SYNOPSIS

**cheatmake** \[**hidechange***file*\] \[**show**\] \[**why***file*\]

## DESCRIPTION

**cheatmake** is used to save time when recompiling. It can fool make into skipping files that haven't changed in a meaningful way. This can be used for instance when you change a comment in a file but none of the actual code.

This utility is part of the KDE Software Development Kit.

## OPTIONS

**hidechange** *file*

Hides the fact that file was changed by setting the timestamp into the past. Use with care!

**show**

Lists what files **make** currently needs to rebuild

**why** *file*

Explains why make must rebuild file

## ENVIRONMENT

One of the following variables (but not both) should be set if the source directory is different from the build directory. If the build directory is simply a subdirectory of the source directory, the simpler variable **OBJ\_SUBDIR** should be used.

**OBJ\_SUBJDIR**

Indicates that the build directory is in the given subdirectory of the source directory. For instance, if the source directory is kdesdk and the build directory is kdesdk/obj-i386-linux, then **OBJ\_SUBDIR** should be set to *obj-i386-linux*.

**OBJ\_REPLACEMENT**

A **sed** expression that is used to transform the source directory into the build directory. For instance, if the source directory is kdesdk/obj-i386-linux, then **OBJ\_REPLACEMENT** should be set to *s#kdesdk#kdesdk-obj#*.

## SEE ALSO

[make(1)](/make/1.md)

## AUTHORS

**cheatmake** was written by David Faure \<faure@kde.org\>. This manual page was prepared by Ben Burton \<bab@debian.org\> for the Debian GNU/Linux® system (but may be used by others).
