Author Topic: -M behaviour change in recent NASM versions ?  (Read 255 times)

Offline pahhur

  • New Member
  • Posts: 1
-M behaviour change in recent NASM versions ?
« on: June 29, 2022, 09:23:40 AM »

I have old projects (compiled with older NASM version) that I wanted to compile
on my up-to-date Arch installation with g++ 12.1 and nasm 2.15.05

Given an x.asm and a ../include/macros.h

Code: [Select]
|->source->x.asm
|->include->macros.h

the older nasm versions when called like

Code: [Select]
nasm -M -felf64 -D__BITS__=64 -Ox -Dlinux -I../include x.asm
inside the source directory, generated correct Makefile dependencies, i.e. something like

Code: [Select]
x.o : x.asm ../include/macros.h
The current version generates dependencies like

Code: [Select]
x.o : x.asm macros.h
which of course leads to the problem that a make in the source direcory claims about missing dependencies:

Code: [Select]
make[1]: *** No rule to make target 'macros.h', needed by 'x.o'.  Stop.

Can anyone enlighten me, why this is the case, and what new command line options might be missing now?


 

SMF spam blocked by CleanTalk