Page 1 of 1
autoconf for OSdev?
Posted: Sat Jan 19, 2008 3:22 pm
by Zenith
Well, for the past week I've been trying to get autoconf/make to work with my OS (written in C and ASM using nasm, gcc under cygwin).
I've used autoconf before but that was with a 'typical' C project which was
much simpler to compile than an OS (which requires special compile flags, linker scripts, an assembler, etc.)
So I was wondering: Who here uses autoconf and automake, why, and could explain to me in what amazing way they got it to work?
Posted: Sat Jan 19, 2008 3:57 pm
by lukem95
DJGPP with elf toolset and custom makefile
Posted: Sat Jan 19, 2008 6:36 pm
by JamesM
I've used autoconf for my project, but changed to using custom makefiles. Much more flexible.
Posted: Sat Jan 19, 2008 10:19 pm
by neon
None of those. I use nasm for the bootloader, and MSVC++ to build the projects and kernel.
Posted: Sun Jan 20, 2008 12:24 am
by piranha
Other: I use both a shell script and a makefile.
The shell script cd's into the kernel directory, runs make, and updates the image file with a loop device.
It's easier to deal then programming that into the makefile (for me).
-JL
Posted: Sun Jan 20, 2008 1:33 am
by phire
I use a custom makefile, I find it much simpler than using autoconf/make.
piranha wrote:The shell script cd's into the kernel directory, runs make, and updates the image file with a loop device.
It's easier to deal then programming that into the makefile (for me).
Makefiles are pretty much shell scripts, this is what I use for installing to floppy (blackthunder is the kernel)
Code: Select all
install : blackthunder grub.img
@echo Installing kernel to floppy image...
@mount grub.img
@cp blackthunder /mnt/floppy/
@umount grub.img
@echo "...done"
For this to work you need to add a line like this to /etc/fstab:
Code: Select all
/full/path/to/grub.img /mnt/floppy vfat loop,user,noauto 0 0
Posted: Sun Jan 20, 2008 2:13 am
by piranha
Ah. But if you change the path to grub.img then you have to deal with other stuff too.
I don't know, makfiles are useful, but they annoy me too.
-JL
Posted: Sun Jan 20, 2008 2:31 am
by jzgriffin
I use a large series of tubes, I mean, makefiles. The make system just seems like a really powerful, flexible tool, and I've never had issues with it on any sort of project in the past (OSDev or other).
Posted: Sun Jan 20, 2008 3:46 am
by phire
piranha wrote: Ah. But if you change the path to grub.img then you have to deal with other stuff too.
That's an implementation issue, I did it that way so I didn't have to run 'make install' as root.
Posted: Sun Jan 20, 2008 6:40 am
by Brendan
Hi,
I use shell scripts and my own "system build utility", which replaces make, gets dependancies from the source code instead of using makefiles, generates HTML documentation and does some other things for me (hex dump, disassembly, etc).
Cheers,
Brendan
Posted: Fri Jan 25, 2008 1:48 pm
by skyking
neon wrote:None of those. I use nasm for the bootloader, and MSVC++ to build the projects and kernel.
So you don't use other
My build system is scons based, building the kernel requires some specials that normal programs don't use.
Posted: Sat Jan 26, 2008 3:33 am
by Steve the Pirate
I use a custom makefile - both to compile and link the kernel, and with an install directive to create a CD image.