Skip to content

make && make install compiles redis twice #7254

@dgilman

Description

@dgilman

There are two issues I've found with the makefile that is breaking make && make install on a fresh redis tarball.

First, there is the Makefile.dep file. The file is getting created as expected but the following persist-settings target has a dependency on distclean which has a dependency on clean which deletes the file. This means that any two invocations of make all will rebuild everything as you're creating a new Makefile.dep each run, dirtying the entire process.

Second, the deps/Makefile target for jemalloc calls ./configure. This means that any build that uses jemalloc gets a new deps/jemalloc/Makefile each time, dirtying the entire jemalloc build. This dirties all of the redis objects that depend on jemalloc.

Note that this is going to mess with people trying to package redis with the new BUILD_TLS option in redis 6. If you ran make like make BUILD_TLS=yes && make install (which is what everyone is basically going to be doing) you are rebuilding redis without TLS the second time because it's triggering a rebuild and BUILD_TLS is not set.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions