[OpenSIPS-Devel] [OpenSIPS/opensips] 663c9e: Remove unnecessary -j invocation (#3745)

Peter Lemenkov noreply at github.com
Tue Nov 25 12:13:40 UTC 2025


  Branch: refs/heads/3.5
  Home:   https://github.com/OpenSIPS/opensips
  Commit: 663c9e230a7936651a76c9350f7ae76c4d943985
      https://github.com/OpenSIPS/opensips/commit/663c9e230a7936651a76c9350f7ae76c4d943985
  Author: Peter Lemenkov <lemenkov at gmail.com>
  Date:   2025-11-25 (Tue, 25 Nov 2025)

  Changed paths:
    M Makefile

  Log Message:
  -----------
  Remove unnecessary -j invocation (#3745)

During parallel builds (make -j), numerous warnings appear for each module:

```
make[1]: warning: -j0 forced in submake: resetting jobserver mode.
```

Root cause: Lines 205 and 225 in the main Makefile explicitly pass `-j`
(without a value) to submake invocations:

```
$(MAKE) -j -C $$r ;
```

When `-j` is specified without a number, it defaults to `-j0` (unlimited
parallel jobs). This breaks GNU Make's jobserver coordination between the
parent make process and submakes, resulting in the warning.

Why this flag is redundant:

When a user runs `make -jN` at the top level, GNU Make automatically
manages parallelism across all recursive $(MAKE) invocations through its
jobserver mechanism. Submakes inherit the parent's jobserver and
participate in the same job pool without needing explicit `-j` flags.

By adding `-j` in submakes, we:

- Break jobserver coordination (triggering warnings)
- Risk spawning unlimited jobs (potential system overload)
- Override the user's intended parallelism level

Performance impact: NONE

Removing these `-j` flags does NOT slow down builds. The parallelism
behavior remains unchanged:

- `make -j4` → builds 4 jobs in parallel (before AND after this fix)
- `make -j8` → builds 8 jobs in parallel (before AND after this fix)
- `make` → builds sequentially (before AND after this fix)

The only difference is that jobserver coordination now works correctly,
eliminating the warnings without affecting build performance.

Note: The FASTER variable and alternate build path remain unchanged to
preserve compatibility with existing build scripts used by distribution
packages (Debian, Arch).

Assisted-by: Claude (Anthropic) <https://claude.ai>

Signed-off-by: Peter Lemenkov <lemenkov at gmail.com>
(cherry picked from commit 27e429319c8dc78a9d82df5026a6dad289b8f64f)



To unsubscribe from these emails, change your notification settings at https://github.com/OpenSIPS/opensips/settings/notifications



More information about the Devel mailing list