assemblers in JNode

Project:JNode Builder
Component:Miscellaneous
Category:feature request
Priority:normal
Assigned:GriffenJBS
Status:active
Description

The current build-x86.xml uses *.TaskDef.Asm to build the boot image, this assumes yasm for x86_64, nasmw.exe for windows, otherwise nasm, and no support for JNAsm.

This patch removes yasm, as I can find no reason it is required. By defining the property jnode.asm = yasm it can still be used if prefered, and works on the linux/window systems I tested.

*.TaskDef.Asm seems to add no extra features, so it is no longer used.

This is to simplify the build process, remove unneeded dependencies and lay groundwork for nasm's replacement by JNAsm.

Seeing as how windows searches the path and CWD, I recommend adding the 32 bit nasm.exe to trunk/, to be removed when JNasm is working. This will allow all windows users to compile with only JDK installed. *nix users will need JDK, and nasm in the path.

AttachmentSize
nasm.patch2.06 KB

#1

Your patch need further work.

Because nasm doesn't support -r and -m options needed for 64bits build, I had to use yasm.
My tests were under linux.

For windows, I have just tried with that version of nasm : http://www.nasm.us/pub/nasm/releasebuilds/2.07/win32/ for the 32bits build.
It seems to compile well bit haven't tried to boot it. And I haven't tested the 64bits build under windows but, like under linux, we will also need to use yasm.

Could you have a look ?

#2

Status:patch (code needs review)» active

Those options are not needed to build with yasm and I can find no reason why they should stay.

The point of this was to help remove yasm from the build. The current problems with the x86_64 asm files in nasm is because they've been written for yasm rather than fixed for nasm. I'll work on adding another patch so that nasm x86_64 builds with no errors/warnings.