diff --git a/Makefile b/Makefile index 70d5b06..d9aabf3 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,8 @@ +ifeq ($(shell uname -s),Darwin) AS=x86_64-elf-as LD=x86_64-elf-ld CC=x86_64-elf-gcc +endif run: image.bin qemu-system-i386 -drive format=raw,file=$< -serial mon:stdio diff --git a/tools/mkfs.c b/tools/mkfs.c index 40f0485..32b1b86 100644 --- a/tools/mkfs.c +++ b/tools/mkfs.c @@ -60,7 +60,8 @@ int main(int argc, char* argv[]) { } dirent->reserved = 0; - strlcpy(dirent->name, basename(name), sizeof(dirent->name)); + dirent->name[sizeof(dirent->name) - 1] = '\0'; + strncpy(dirent->name, basename(name), sizeof(dirent->name) - 1); } fseek(image, 0, SEEK_SET);