etr / libhttpserver

C++ library for creating an embedded Rest HTTP server (and more)
GNU Lesser General Public License v2.1
894 stars 187 forks source link

[BUG] boostrap option --build #253

Closed LeSpocky closed 2 years ago

LeSpocky commented 2 years ago

Prerequisites

Description

Calling the bootstrap script with parameter -build or --build leads to the following error:

configure: error: "you must configure in a separate build directory"

Steps to Reproduce

  1. Clone the source
  2. Call ./bootstrap --build
  3. Watch configure fail

Expected behavior: libhttpserver is built.

Actual behavior: libhttpserver is not built.

Reproduces how often: Always.

Versions

If you have problems during build:

Additional Information

The problem is the bootstrap script does neither create nor change the directory. The script including those options was added with ac2d9697, the same dir build check was added with 264f2f71, both even before the first release v0.1.1. Although that check was made optional with eaa55378 (v0.7.1) the bootstrap script does not make use of that option.

Suggestion: let the script change dir or remove that option, it does not seem to be used for years now, otherwise someone would have reported or fixed it already?

etr commented 2 years ago

I think the real situation is that most people (me included) don't run bootstrap that way, so we didn't spot it. Running bootstrap, creating the directory, and then configure, did make us miss the error. Needs fixing nonetheless, but the separate directory is very much what we want to do. The boostrap script should just create it and move, or better, as you say, just remove the option from the script altogether.