mirror of
https://github.com/wichtounet/thor-os.git
synced 2025-08-03 09:16:13 -04:00
Prepare ACPICA compilation
This commit is contained in:
parent
9f1bbf999d
commit
60657f3c97
5
cpp.mk
5
cpp.mk
@ -1,4 +1,5 @@
|
|||||||
CC=x86_64-elf-g++
|
CC=x86_64-elf-gcc
|
||||||
|
CXX=x86_64-elf-g++
|
||||||
AS=x86_64-elf-as
|
AS=x86_64-elf-as
|
||||||
OC=x86_64-elf-objcopy
|
OC=x86_64-elf-objcopy
|
||||||
AR=x86_64-elf-ar
|
AR=x86_64-elf-ar
|
||||||
@ -25,6 +26,8 @@ KERNEL_CPP_FLAGS_64 += -fstack-protector
|
|||||||
|
|
||||||
KERNEL_CPP_FLAGS_64 += -Iacpica/source/include
|
KERNEL_CPP_FLAGS_64 += -Iacpica/source/include
|
||||||
|
|
||||||
|
ACPICA_CPP_FLAGS = $(KERNEL_CPP_FLAGS_64) -include include/thor_acenv.hpp
|
||||||
|
|
||||||
COMMON_LINK_FLAGS=-lgcc
|
COMMON_LINK_FLAGS=-lgcc
|
||||||
|
|
||||||
KERNEL_LINK_FLAGS=$(COMMON_LINK_FLAGS) -T linker.ld
|
KERNEL_LINK_FLAGS=$(COMMON_LINK_FLAGS) -T linker.ld
|
||||||
|
111
kernel/Makefile
111
kernel/Makefile
@ -9,29 +9,54 @@ KERNEL_CPP_DRIVERS_FILES=$(wildcard src/drivers/*.cpp)
|
|||||||
KERNEL_CPP_FS_FILES=$(wildcard src/fs/*.cpp)
|
KERNEL_CPP_FS_FILES=$(wildcard src/fs/*.cpp)
|
||||||
KERNEL_CPP_VFS_FILES=$(wildcard src/vfs/*.cpp)
|
KERNEL_CPP_VFS_FILES=$(wildcard src/vfs/*.cpp)
|
||||||
|
|
||||||
|
ACPICA_DISPATCHER_CPP_FILES=$(wildcard acpica/source/components/dispatcher/*.c)
|
||||||
|
ACPICA_EVENTS_CPP_FILES=$(wildcard acpica/source/components/events/*.c)
|
||||||
|
ACPICA_EXECUTER_CPP_FILES=$(wildcard acpica/source/components/executer/*.c)
|
||||||
|
ACPICA_NAMESPACE_CPP_FILES=$(wildcard acpica/source/components/namespace/*.c)
|
||||||
|
ACPICA_RESOURCES_CPP_FILES=$(wildcard acpica/source/components/resources/*.c)
|
||||||
|
ACPICA_TABLES_CPP_FILES=$(wildcard acpica/source/components/tables/*.c)
|
||||||
|
ACPICA_UTILITIES_CPP_FILES=$(wildcard acpica/source/components/utilities/*.c)
|
||||||
|
|
||||||
KERNEL_D_FILES=$(KERNEL_CPP_FILES:%.cpp=%.cpp.d)
|
KERNEL_D_FILES=$(KERNEL_CPP_FILES:%.cpp=%.cpp.d)
|
||||||
KERNEL_D_DRIVERS_FILES=$(KERNEL_CPP_DRIVERS_FILES:%.cpp=%.cpp.d)
|
KERNEL_D_DRIVERS_FILES=$(KERNEL_CPP_DRIVERS_FILES:%.cpp=%.cpp.d)
|
||||||
KERNEL_D_FS_FILES=$(KERNEL_CPP_FS_FILES:%.cpp=%.cpp.d)
|
KERNEL_D_FS_FILES=$(KERNEL_CPP_FS_FILES:%.cpp=%.cpp.d)
|
||||||
KERNEL_D_VFS_FILES=$(KERNEL_CPP_VFS_FILES:%.cpp=%.cpp.d)
|
KERNEL_D_VFS_FILES=$(KERNEL_CPP_VFS_FILES:%.cpp=%.cpp.d)
|
||||||
|
|
||||||
|
ACPICA_DISPATCHER_D_FILES=$(ACPICA_DISPATCHER_CPP_FILES:%.c=%.c.d)
|
||||||
|
ACPICA_EVENTS_D_FILES=$(ACPICA_EVENTS_CPP_FILES:%.c=%.c.d)
|
||||||
|
ACPICA_EXECUTER_D_FILES=$(ACPICA_EXECUTER_CPP_FILES:%.c=%.c.d)
|
||||||
|
ACPICA_NAMESPACE_D_FILES=$(ACPICA_NAMESPACE_CPP_FILES:%.c=%.c.d)
|
||||||
|
ACPICA_RESOURCES_D_FILES=$(ACPICA_RESOURCES_CPP_FILES:%.c=%.c.d)
|
||||||
|
ACPICA_TABLES_D_FILES=$(ACPICA_TABLES_CPP_FILES:%.c=%.c.d)
|
||||||
|
ACPICA_UTILITIES_D_FILES=$(ACPICA_UTILITIES_CPP_FILES:%.c=%.c.d)
|
||||||
|
|
||||||
KERNEL_O_FILES=$(KERNEL_CPP_FILES:%.cpp=%.cpp.o)
|
KERNEL_O_FILES=$(KERNEL_CPP_FILES:%.cpp=%.cpp.o)
|
||||||
KERNEL_O_DRIVERS_FILES=$(KERNEL_CPP_DRIVERS_FILES:%.cpp=%.cpp.o)
|
KERNEL_O_DRIVERS_FILES=$(KERNEL_CPP_DRIVERS_FILES:%.cpp=%.cpp.o)
|
||||||
KERNEL_O_FS_FILES=$(KERNEL_CPP_FS_FILES:%.cpp=%.cpp.o)
|
KERNEL_O_FS_FILES=$(KERNEL_CPP_FS_FILES:%.cpp=%.cpp.o)
|
||||||
KERNEL_O_VFS_FILES=$(KERNEL_CPP_VFS_FILES:%.cpp=%.cpp.o)
|
KERNEL_O_VFS_FILES=$(KERNEL_CPP_VFS_FILES:%.cpp=%.cpp.o)
|
||||||
|
|
||||||
#TODO Generate also the o files coming from s files automatically, ignoring crti and crtn
|
ACPICA_DISPATCHER_O_FILES=$(ACPICA_DISPATCHER_CPP_FILES:%.c=%.c.o)
|
||||||
O_FILES=boot_16_64.o boot_32_64.o $(KERNEL_O_FILES) $(KERNEL_O_FS_FILES) $(KERNEL_O_VFS_FILES) $(KERNEL_O_DRIVERS_FILES) src/isrs.s.o src/irqs.s.o src/arch.s.o src/syscalls.s.o src/task_switch.s.o
|
ACPICA_EVENTS_O_FILES=$(ACPICA_EVENTS_CPP_FILES:%.c=%.c.o)
|
||||||
|
ACPICA_EXECUTER_O_FILES=$(ACPICA_EXECUTER_CPP_FILES:%.c=%.c.o)
|
||||||
|
ACPICA_NAMESPACE_O_FILES=$(ACPICA_NAMESPACE_CPP_FILES:%.c=%.c.o)
|
||||||
|
ACPICA_RESOURCES_O_FILES=$(ACPICA_RESOURCES_CPP_FILES:%.c=%.c.o)
|
||||||
|
ACPICA_TABLES_O_FILES=$(ACPICA_TABLES_CPP_FILES:%.c=%.c.o)
|
||||||
|
ACPICA_UTILITIES_O_FILES=$(ACPICA_UTILITIES_CPP_FILES:%.c=%.c.o)
|
||||||
|
ACPICA_O_FILES=$(ACPICA_DISPATCHER_O_FILES) $(ACPICA_EVENTS_O_FILES) $(ACPICA_EXECUTER_O_FILES) $(ACPICA_NAMESPACE_O_FILES) $(ACPICA_RESOURCES_O_FILES) $(ACPICA_TABLES_O_FILES) $(ACPICA_UTILITIES_O_FILES)
|
||||||
|
|
||||||
CRTBEGIN_OBJ:=$(shell $(CC) $(CFLAGS) -print-file-name=crtbegin.o)
|
#TODO Generate also the o files coming from s files automatically, ignoring crti and crtn
|
||||||
CRTEND_OBJ:=$(shell $(CC) $(CFLAGS) -print-file-name=crtend.o)
|
O_FILES=boot_16_64.o boot_32_64.o $(KERNEL_O_FILES) $(KERNEL_O_FS_FILES) $(KERNEL_O_VFS_FILES) $(KERNEL_O_DRIVERS_FILES) $(ACPICA_O_FILES) src/isrs.s.o src/irqs.s.o src/arch.s.o src/syscalls.s.o src/task_switch.s.o
|
||||||
|
|
||||||
|
CRTBEGIN_OBJ:=$(shell $(CXX) $(CFLAGS) -print-file-name=crtbegin.o)
|
||||||
|
CRTEND_OBJ:=$(shell $(CXX) $(CFLAGS) -print-file-name=crtend.o)
|
||||||
|
|
||||||
LINK_O_FILES=src/crti.s.o $(CRTBEGIN_OBJ) $(O_FILES) $(CRTEND_OBJ) src/crtn.s.o
|
LINK_O_FILES=src/crti.s.o $(CRTBEGIN_OBJ) $(O_FILES) $(CRTEND_OBJ) src/crtn.s.o
|
||||||
|
|
||||||
boot_16.o: src/boot/boot_16.cpp
|
boot_16.o: src/boot/boot_16.cpp
|
||||||
$(CC) $(CPP_FLAGS_16) $(THOR_FLAGS) $(WARNING_FLAGS) -c src/boot/boot_16.cpp -o boot_16.o
|
$(CXX) $(CPP_FLAGS_16) $(THOR_FLAGS) $(WARNING_FLAGS) -c src/boot/boot_16.cpp -o boot_16.o
|
||||||
|
|
||||||
boot_32.o: src/boot/boot_32.cpp
|
boot_32.o: src/boot/boot_32.cpp
|
||||||
$(CC) $(CPP_FLAGS_32) $(THOR_FLAGS) $(WARNING_FLAGS) -c src/boot/boot_32.cpp -o boot_32.o
|
$(CXX) $(CPP_FLAGS_32) $(THOR_FLAGS) $(WARNING_FLAGS) -c src/boot/boot_32.cpp -o boot_32.o
|
||||||
|
|
||||||
boot_16_64.o: boot_16.o
|
boot_16_64.o: boot_16.o
|
||||||
$(OC) -I elf32-i386 -O elf64-x86-64 boot_16.o boot_16_64.o
|
$(OC) -I elf32-i386 -O elf64-x86-64 boot_16.o boot_16_64.o
|
||||||
@ -43,36 +68,85 @@ src/%.s.o: src/%.s
|
|||||||
$(AS) -g -c $< -o $@
|
$(AS) -g -c $< -o $@
|
||||||
|
|
||||||
src/%.cpp.d: $(KERNEL_CPP_FILES)
|
src/%.cpp.d: $(KERNEL_CPP_FILES)
|
||||||
@ $(CC) $(KERNEL_CPP_FLAGS_64) $(THOR_FLAGS) $(WARNING_FLAGS) -MM -MT src/$*.cpp.o src/$*.cpp | sed -e 's@^\(.*\)\.o:@\1.d \1.o:@' > $@
|
@ $(CXX) $(KERNEL_CPP_FLAGS_64) $(THOR_FLAGS) $(WARNING_FLAGS) -MM -MT src/$*.cpp.o src/$*.cpp | sed -e 's@^\(.*\)\.o:@\1.d \1.o:@' > $@
|
||||||
|
|
||||||
src/drivers/%.cpp.d: $(KERNEL_CPP_DRIVERS_FILES)
|
src/drivers/%.cpp.d: $(KERNEL_CPP_DRIVERS_FILES)
|
||||||
@ $(CC) $(KERNEL_CPP_FLAGS_64) $(THOR_FLAGS) $(WARNING_FLAGS) -MM -MT src/drivers/$*.cpp.o src/drivers/$*.cpp | sed -e 's@^\(.*\)\.o:@\1.d \1.o:@' > $@
|
@ $(CXX) $(KERNEL_CPP_FLAGS_64) $(THOR_FLAGS) $(WARNING_FLAGS) -MM -MT src/drivers/$*.cpp.o src/drivers/$*.cpp | sed -e 's@^\(.*\)\.o:@\1.d \1.o:@' > $@
|
||||||
|
|
||||||
src/fs/%.cpp.d: $(KERNEL_CPP_FS_FILES)
|
src/fs/%.cpp.d: $(KERNEL_CPP_FS_FILES)
|
||||||
@ $(CC) $(KERNEL_CPP_FLAGS_64) $(THOR_FLAGS) $(WARNING_FLAGS) -MM -MT src/fs/$*.cpp.o src/fs/$*.cpp | sed -e 's@^\(.*\)\.o:@\1.d \1.o:@' > $@
|
@ $(CXX) $(KERNEL_CPP_FLAGS_64) $(THOR_FLAGS) $(WARNING_FLAGS) -MM -MT src/fs/$*.cpp.o src/fs/$*.cpp | sed -e 's@^\(.*\)\.o:@\1.d \1.o:@' > $@
|
||||||
|
|
||||||
src/vfs/%.cpp.d: $(KERNEL_CPP_VFS_FILES)
|
src/vfs/%.cpp.d: $(KERNEL_CPP_VFS_FILES)
|
||||||
@ $(CC) $(KERNEL_CPP_FLAGS_64) $(THOR_FLAGS) $(WARNING_FLAGS) -MM -MT src/vfs/$*.cpp.o src/vfs/$*.cpp | sed -e 's@^\(.*\)\.o:@\1.d \1.o:@' > $@
|
@ $(CXX) $(KERNEL_CPP_FLAGS_64) $(THOR_FLAGS) $(WARNING_FLAGS) -MM -MT src/vfs/$*.cpp.o src/vfs/$*.cpp | sed -e 's@^\(.*\)\.o:@\1.d \1.o:@' > $@
|
||||||
|
|
||||||
|
acpica/source/components/dispatcher/%.c.d: $(ACPICA_DISPATCHER_CPP_FILES)
|
||||||
|
@ $(CXX) $(ACPICA_CPP_FLAGS) -include include/thor_acenv.hpp $(THOR_FLAGS) -MM -MT acpica/source/components/dispatcher/$*.c.o acpica/source/components/dispatcher/$*.c | sed -e 's@^\(.*\)\.o:@\1.d \1.o:@' > $@
|
||||||
|
|
||||||
|
acpica/source/components/events/%.c.d: $(ACPICA_EVENTS_CPP_FILES)
|
||||||
|
@ $(CXX) $(ACPICA_CPP_FLAGS) -include include/thor_acenv.hpp $(THOR_FLAGS) -MM -MT acpica/source/components/events/$*.c.o acpica/source/components/events/$*.c | sed -e 's@^\(.*\)\.o:@\1.d \1.o:@' > $@
|
||||||
|
|
||||||
|
acpica/source/components/executer/%.c.d: $(ACPICA_EXECUTER_CPP_FILES)
|
||||||
|
@ $(CXX) $(ACPICA_CPP_FLAGS) -include include/thor_acenv.hpp $(THOR_FLAGS) -MM -MT acpica/source/components/executer/$*.c.o acpica/source/components/executer/$*.c | sed -e 's@^\(.*\)\.o:@\1.d \1.o:@' > $@
|
||||||
|
|
||||||
|
acpica/source/components/namespace/%.c.d: $(ACPICA_NAMESPACE_CPP_FILES)
|
||||||
|
@ $(CXX) $(ACPICA_CPP_FLAGS) -include include/thor_acenv.hpp $(THOR_FLAGS) -MM -MT acpica/source/components/namespace/$*.c.o acpica/source/components/namespace/$*.c | sed -e 's@^\(.*\)\.o:@\1.d \1.o:@' > $@
|
||||||
|
|
||||||
|
acpica/source/components/resources/%.c.d: $(ACPICA_RESOURCES_CPP_FILES)
|
||||||
|
@ $(CXX) $(ACPICA_CPP_FLAGS) -include include/thor_acenv.hpp $(THOR_FLAGS) -MM -MT acpica/source/components/resources/$*.c.o acpica/source/components/resources/$*.c | sed -e 's@^\(.*\)\.o:@\1.d \1.o:@' > $@
|
||||||
|
|
||||||
|
acpica/source/components/tables/%.c.d: $(ACPICA_TABLES_CPP_FILES)
|
||||||
|
@ $(CXX) $(ACPICA_CPP_FLAGS) -include include/thor_acenv.hpp $(THOR_FLAGS) -MM -MT acpica/source/components/tables/$*.c.o acpica/source/components/tables/$*.c | sed -e 's@^\(.*\)\.o:@\1.d \1.o:@' > $@
|
||||||
|
|
||||||
|
acpica/source/components/utilities/%.c.d: $(ACPICA_UTILITIES_CPP_FILES)
|
||||||
|
@ $(CXX) $(ACPICA_CPP_FLAGS) -include include/thor_acenv.hpp $(THOR_FLAGS) -MM -MT acpica/source/components/utilities/$*.c.o acpica/source/components/utilities/$*.c | sed -e 's@^\(.*\)\.o:@\1.d \1.o:@' > $@
|
||||||
|
|
||||||
src/%.cpp.o:
|
src/%.cpp.o:
|
||||||
$(CC) $(KERNEL_CPP_FLAGS_64) $(THOR_FLAGS) $(WARNING_FLAGS) -c $< -o $@
|
$(CXX) $(KERNEL_CPP_FLAGS_64) $(THOR_FLAGS) $(WARNING_FLAGS) -c $< -o $@
|
||||||
|
|
||||||
src/drivers/%.cpp.o:
|
src/drivers/%.cpp.o:
|
||||||
$(CC) $(KERNEL_CPP_FLAGS_64) $(THOR_FLAGS) $(WARNING_FLAGS) -c $< -o $@
|
$(CXX) $(KERNEL_CPP_FLAGS_64) $(THOR_FLAGS) $(WARNING_FLAGS) -c $< -o $@
|
||||||
|
|
||||||
src/vfs/%.cpp.o:
|
src/vfs/%.cpp.o:
|
||||||
$(CC) $(KERNEL_CPP_FLAGS_64) $(THOR_FLAGS) $(WARNING_FLAGS) -c $< -o $@
|
$(CXX) $(KERNEL_CPP_FLAGS_64) $(THOR_FLAGS) $(WARNING_FLAGS) -c $< -o $@
|
||||||
|
|
||||||
src/fs/%.cpp.o:
|
src/fs/%.cpp.o:
|
||||||
$(CC) $(KERNEL_CPP_FLAGS_64) $(THOR_FLAGS) $(WARNING_FLAGS) -c $< -o $@
|
$(CXX) $(KERNEL_CPP_FLAGS_64) $(THOR_FLAGS) $(WARNING_FLAGS) -c $< -o $@
|
||||||
|
|
||||||
|
acpica/source/components/dispatcher/%.c.o:
|
||||||
|
$(CC) $(ACPICA_CPP_FLAGS) $(THOR_FLAGS) -c $< -o $@
|
||||||
|
|
||||||
|
acpica/source/components/events/%.c.o:
|
||||||
|
$(CC) $(ACPICA_CPP_FLAGS) $(THOR_FLAGS) -c $< -o $@
|
||||||
|
|
||||||
|
acpica/source/components/executer/%.c.o:
|
||||||
|
$(CC) $(ACPICA_CPP_FLAGS) $(THOR_FLAGS) -c $< -o $@
|
||||||
|
|
||||||
|
acpica/source/components/namespace/%.c.o:
|
||||||
|
$(CC) $(ACPICA_CPP_FLAGS) $(THOR_FLAGS) -c $< -o $@
|
||||||
|
|
||||||
|
acpica/source/components/utilies/%.c.o:
|
||||||
|
$(CC) $(ACPICA_CPP_FLAGS) $(THOR_FLAGS) -c $< -o $@
|
||||||
|
|
||||||
|
acpica/source/components/resources/%.c.o:
|
||||||
|
$(CC) $(ACPICA_CPP_FLAGS) $(THOR_FLAGS) -c $< -o $@
|
||||||
|
|
||||||
|
acpica/source/components/tables/%.c.o:
|
||||||
|
$(CC) $(ACPICA_CPP_FLAGS) $(THOR_FLAGS) -c $< -o $@
|
||||||
|
|
||||||
-include $(KERNEL_D_FILES)
|
-include $(KERNEL_D_FILES)
|
||||||
-include $(KERNEL_D_DRIVERS_FILES)
|
-include $(KERNEL_D_DRIVERS_FILES)
|
||||||
-include $(KERNEL_D_VFS_FILES)
|
-include $(KERNEL_D_VFS_FILES)
|
||||||
-include $(KERNEL_D_FS_FILES)
|
-include $(KERNEL_D_FS_FILES)
|
||||||
|
-include $(ACPICA_DISPATCHER_D_FILES)
|
||||||
|
-include $(ACPICA_EVENTS_D_FILES)
|
||||||
|
-include $(ACPICA_EXECUTER_D_FILES)
|
||||||
|
-include $(ACPICA_NAMESPACE_D_FILES)
|
||||||
|
-include $(ACPICA_RESOURCES_D_FILES)
|
||||||
|
-include $(ACPICA_TABLES_D_FILES)
|
||||||
|
-include $(ACPICA_UTILITIES_D_FILES)
|
||||||
|
|
||||||
kernel.bin: $(LINK_O_FILES)
|
kernel.bin: $(LINK_O_FILES)
|
||||||
$(CC) $(KERNEL_LINK_FLAGS) $(KERNEL_CPP_FLAGS_64) -o kernel.bin.o $(LINK_O_FILES)
|
$(CXX) $(KERNEL_LINK_FLAGS) $(KERNEL_CPP_FLAGS_64) -o kernel.bin.o $(LINK_O_FILES)
|
||||||
$(OC) -R .note -R .comment -O binary --set-section-flags .bss=alloc,load,contents kernel.bin.o kernel.bin
|
$(OC) -R .note -R .comment -O binary --set-section-flags .bss=alloc,load,contents kernel.bin.o kernel.bin
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
@ -80,6 +154,13 @@ clean:
|
|||||||
rm -f $(KERNEL_D_DRIVERS_FILES)
|
rm -f $(KERNEL_D_DRIVERS_FILES)
|
||||||
rm -f $(KERNEL_D_FS_FILES)
|
rm -f $(KERNEL_D_FS_FILES)
|
||||||
rm -f $(KERNEL_D_VFS_FILES)
|
rm -f $(KERNEL_D_VFS_FILES)
|
||||||
|
rm -f $(ACPICA_DISPATCHER_D_FILES)
|
||||||
|
rm -f $(ACPICA_EVENTS_D_FILES)
|
||||||
|
rm -f $(ACPICA_EXECUTER_D_FILES)
|
||||||
|
rm -f $(ACPICA_NAMESPACE_D_FILES)
|
||||||
|
rm -f $(ACPICA_RESOURCES_D_FILES)
|
||||||
|
rm -f $(ACPICA_TABLES_D_FILES)
|
||||||
|
rm -f $(ACPICA_UTILITIES_D_FILES)
|
||||||
rm -f $(O_FILES)
|
rm -f $(O_FILES)
|
||||||
rm -f crti.o
|
rm -f crti.o
|
||||||
rm -f crts.o
|
rm -f crts.o
|
||||||
|
@ -5,8 +5,8 @@
|
|||||||
// http://www.boost.org/LICENSE_1_0.txt)
|
// http://www.boost.org/LICENSE_1_0.txt)
|
||||||
//=======================================================================
|
//=======================================================================
|
||||||
|
|
||||||
#ifndef ACPI_H
|
#ifndef ACPI_HPP
|
||||||
#define ACPI_H
|
#define ACPI_HPP
|
||||||
|
|
||||||
namespace acpi {
|
namespace acpi {
|
||||||
|
|
||||||
|
@ -244,6 +244,7 @@
|
|||||||
*****************************************************************************/
|
*****************************************************************************/
|
||||||
|
|
||||||
#include "thor_acpi.hpp"
|
#include "thor_acpi.hpp"
|
||||||
|
#include <stdarg.h>
|
||||||
|
|
||||||
/*! [End] no source code translation !*/
|
/*! [End] no source code translation !*/
|
||||||
|
|
||||||
@ -342,74 +343,6 @@
|
|||||||
*
|
*
|
||||||
*****************************************************************************/
|
*****************************************************************************/
|
||||||
|
|
||||||
/*
|
|
||||||
* ACPI_USE_SYSTEM_CLIBRARY - Define this if linking to an actual C library.
|
|
||||||
* Otherwise, local versions of string/memory functions will be used.
|
|
||||||
* ACPI_USE_STANDARD_HEADERS - Define this if linking to a C library and
|
|
||||||
* the standard header files may be used.
|
|
||||||
*
|
|
||||||
* The ACPICA subsystem only uses low level C library functions that do not
|
|
||||||
* call operating system services and may therefore be inlined in the code.
|
|
||||||
*
|
|
||||||
* It may be necessary to tailor these include files to the target
|
|
||||||
* generation environment.
|
|
||||||
*/
|
|
||||||
#ifdef ACPI_USE_SYSTEM_CLIBRARY
|
|
||||||
|
|
||||||
/* Use the standard C library headers. We want to keep these to a minimum. */
|
|
||||||
|
|
||||||
#ifdef ACPI_USE_STANDARD_HEADERS
|
|
||||||
|
|
||||||
/* Use the standard headers from the standard locations */
|
|
||||||
|
|
||||||
#include <stdarg.h>
|
|
||||||
#include <stdlib.h>
|
|
||||||
#include <string.h>
|
|
||||||
#include <ctype.h>
|
|
||||||
|
|
||||||
#endif /* ACPI_USE_STANDARD_HEADERS */
|
|
||||||
|
|
||||||
/* We will be linking to the standard Clib functions */
|
|
||||||
|
|
||||||
#else
|
|
||||||
|
|
||||||
/******************************************************************************
|
|
||||||
*
|
|
||||||
* Not using native C library, use local implementations
|
|
||||||
*
|
|
||||||
*****************************************************************************/
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Use local definitions of C library macros and functions. These function
|
|
||||||
* implementations may not be as efficient as an inline or assembly code
|
|
||||||
* implementation provided by a native C library, but they are functionally
|
|
||||||
* equivalent.
|
|
||||||
*/
|
|
||||||
#ifndef va_arg
|
|
||||||
|
|
||||||
#ifndef _VALIST
|
|
||||||
#define _VALIST
|
|
||||||
typedef char *va_list;
|
|
||||||
#endif /* _VALIST */
|
|
||||||
|
|
||||||
/* Storage alignment properties */
|
|
||||||
|
|
||||||
#define _AUPBND (sizeof (ACPI_NATIVE_INT) - 1)
|
|
||||||
#define _ADNBND (sizeof (ACPI_NATIVE_INT) - 1)
|
|
||||||
|
|
||||||
/* Variable argument list macro definitions */
|
|
||||||
|
|
||||||
#define _Bnd(X, bnd) (((sizeof (X)) + (bnd)) & (~(bnd)))
|
|
||||||
#define va_arg(ap, T) (*(T *)(((ap) += (_Bnd (T, _AUPBND))) - (_Bnd (T,_ADNBND))))
|
|
||||||
#define va_end(ap) (ap = (va_list) NULL)
|
|
||||||
#define va_start(ap, A) (void) ((ap) = (((char *) &(A)) + (_Bnd (A,_AUPBND))))
|
|
||||||
|
|
||||||
#endif /* va_arg */
|
|
||||||
|
|
||||||
/* Use the local (ACPICA) definitions of the clib functions */
|
|
||||||
|
|
||||||
#endif /* ACPI_USE_SYSTEM_CLIBRARY */
|
|
||||||
|
|
||||||
#ifndef ACPI_FILE
|
#ifndef ACPI_FILE
|
||||||
#ifdef ACPI_APPLICATION
|
#ifdef ACPI_APPLICATION
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
|
@ -5,11 +5,11 @@
|
|||||||
// http://www.boost.org/LICENSE_1_0.txt)
|
// http://www.boost.org/LICENSE_1_0.txt)
|
||||||
//=======================================================================
|
//=======================================================================
|
||||||
|
|
||||||
#ifndef THOR_ACPI_H
|
#ifndef THOR_ACPI_HPP
|
||||||
#define THOR_ACPI_H
|
#define THOR_ACPI_HPP
|
||||||
|
|
||||||
// This file contains the OS specific layer for ACPICA for thor-os
|
// This file contains the OS specific layer for ACPICA for thor-os
|
||||||
|
|
||||||
#define ACPI_MACHINE_WIDTH 8 //thor works in 64 bits
|
#define ACPI_MACHINE_WIDTH 64 //thor works in 64 bits
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -5,17 +5,23 @@
|
|||||||
// http://www.boost.org/LICENSE_1_0.txt)
|
// http://www.boost.org/LICENSE_1_0.txt)
|
||||||
//=======================================================================
|
//=======================================================================
|
||||||
|
|
||||||
#include <types.hpp>
|
|
||||||
|
|
||||||
//ACPICA
|
//ACPICA
|
||||||
#include "thor_acenv.hpp" //The OS Specific Layer
|
#include "thor_acenv.hpp" //The OS Specific Layer
|
||||||
|
|
||||||
|
#pragma GCC diagnostic push
|
||||||
|
#pragma GCC diagnostic ignored "-Wunused-parameter"
|
||||||
|
#pragma GCC diagnostic ignored "-Wunused-function" //TODO Does not work
|
||||||
#include "acpi.h"
|
#include "acpi.h"
|
||||||
|
#pragma GCC diagnostic pop
|
||||||
|
|
||||||
|
#include <types.hpp>
|
||||||
|
|
||||||
#include "acpi.hpp"
|
#include "acpi.hpp"
|
||||||
#include "kernel_utils.hpp"
|
#include "kernel_utils.hpp"
|
||||||
#include "timer.hpp"
|
#include "timer.hpp"
|
||||||
#include "paging.hpp"
|
#include "paging.hpp"
|
||||||
#include "console.hpp"
|
#include "console.hpp"
|
||||||
|
#include "logging.hpp"
|
||||||
|
|
||||||
namespace {
|
namespace {
|
||||||
|
|
||||||
@ -277,7 +283,7 @@ int init_acpi(){
|
|||||||
bool initialize_acpica(){
|
bool initialize_acpica(){
|
||||||
auto status = AcpiInitializeSubsystem();
|
auto status = AcpiInitializeSubsystem();
|
||||||
if(ACPI_FAILURE(status)){
|
if(ACPI_FAILURE(status)){
|
||||||
logging::logf("Impossible to initialize ACPICA subsystem\n");
|
logging::logf(logging::log_level::ERROR, "Impossible to initialize ACPICA subsystem\n");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -288,7 +294,7 @@ bool initialize_acpica(){
|
|||||||
|
|
||||||
bool acpi::init(){
|
bool acpi::init(){
|
||||||
if(!initialize_acpica()){
|
if(!initialize_acpica()){
|
||||||
logging::logf("Impossible to initialize ACPICA\n");
|
logging::logf(logging::log_level::ERROR, "Impossible to initialize ACPICA\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
return init_acpi() == 0;
|
return init_acpi() == 0;
|
||||||
|
@ -5,10 +5,10 @@ default: args
|
|||||||
include ../../cpp.mk
|
include ../../cpp.mk
|
||||||
|
|
||||||
%.cpp.o: src/%.cpp
|
%.cpp.o: src/%.cpp
|
||||||
$(CC) -c $< -o $@ $(PROGRAM_FLAGS)
|
$(CXX) -c $< -o $@ $(PROGRAM_FLAGS)
|
||||||
|
|
||||||
args: main.cpp.o
|
args: main.cpp.o
|
||||||
$(CC) -o args main.cpp.o $(PROGRAM_LINK_FLAGS)
|
$(CXX) -o args main.cpp.o $(PROGRAM_LINK_FLAGS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f *.cpp.o
|
rm -f *.cpp.o
|
||||||
|
@ -5,10 +5,10 @@ default: cat
|
|||||||
include ../../cpp.mk
|
include ../../cpp.mk
|
||||||
|
|
||||||
%.cpp.o: src/%.cpp
|
%.cpp.o: src/%.cpp
|
||||||
$(CC) -c $< -o $@ $(PROGRAM_FLAGS)
|
$(CXX) -c $< -o $@ $(PROGRAM_FLAGS)
|
||||||
|
|
||||||
cat: main.cpp.o
|
cat: main.cpp.o
|
||||||
$(CC) -o cat main.cpp.o $(PROGRAM_LINK_FLAGS)
|
$(CXX) -o cat main.cpp.o $(PROGRAM_LINK_FLAGS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f *.cpp.o
|
rm -f *.cpp.o
|
||||||
|
@ -5,10 +5,10 @@ default: cpuid
|
|||||||
include ../../cpp.mk
|
include ../../cpp.mk
|
||||||
|
|
||||||
%.cpp.o: src/%.cpp
|
%.cpp.o: src/%.cpp
|
||||||
$(CC) -c $< -o $@ $(PROGRAM_FLAGS)
|
$(CXX) -c $< -o $@ $(PROGRAM_FLAGS)
|
||||||
|
|
||||||
cpuid: main.cpp.o
|
cpuid: main.cpp.o
|
||||||
$(CC) -o cpuid main.cpp.o $(PROGRAM_LINK_FLAGS)
|
$(CXX) -o cpuid main.cpp.o $(PROGRAM_LINK_FLAGS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f *.cpp.o
|
rm -f *.cpp.o
|
||||||
|
@ -5,10 +5,10 @@ default: date
|
|||||||
include ../../cpp.mk
|
include ../../cpp.mk
|
||||||
|
|
||||||
%.cpp.o: src/%.cpp
|
%.cpp.o: src/%.cpp
|
||||||
$(CC) -c $< -o $@ $(PROGRAM_FLAGS)
|
$(CXX) -c $< -o $@ $(PROGRAM_FLAGS)
|
||||||
|
|
||||||
date: main.cpp.o
|
date: main.cpp.o
|
||||||
$(CC) -o date main.cpp.o $(PROGRAM_LINK_FLAGS)
|
$(CXX) -o date main.cpp.o $(PROGRAM_LINK_FLAGS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f *.cpp.o
|
rm -f *.cpp.o
|
||||||
|
@ -5,10 +5,10 @@ default: df
|
|||||||
include ../../cpp.mk
|
include ../../cpp.mk
|
||||||
|
|
||||||
%.cpp.o: src/%.cpp
|
%.cpp.o: src/%.cpp
|
||||||
$(CC) -c $< -o $@ $(PROGRAM_FLAGS)
|
$(CXX) -c $< -o $@ $(PROGRAM_FLAGS)
|
||||||
|
|
||||||
df: main.cpp.o
|
df: main.cpp.o
|
||||||
$(CC) -o df main.cpp.o $(PROGRAM_LINK_FLAGS)
|
$(CXX) -o df main.cpp.o $(PROGRAM_LINK_FLAGS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f *.cpp.o
|
rm -f *.cpp.o
|
||||||
|
@ -5,10 +5,10 @@ default: keyboard
|
|||||||
include ../../cpp.mk
|
include ../../cpp.mk
|
||||||
|
|
||||||
%.cpp.o: src/%.cpp
|
%.cpp.o: src/%.cpp
|
||||||
$(CC) -c $< -o $@ $(PROGRAM_FLAGS)
|
$(CXX) -c $< -o $@ $(PROGRAM_FLAGS)
|
||||||
|
|
||||||
keyboard: main.cpp.o
|
keyboard: main.cpp.o
|
||||||
$(CC) -o keyboard main.cpp.o $(PROGRAM_LINK_FLAGS)
|
$(CXX) -o keyboard main.cpp.o $(PROGRAM_LINK_FLAGS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f *.cpp.o
|
rm -f *.cpp.o
|
||||||
|
@ -5,10 +5,10 @@ default: long
|
|||||||
include ../../cpp.mk
|
include ../../cpp.mk
|
||||||
|
|
||||||
%.cpp.o: src/%.cpp
|
%.cpp.o: src/%.cpp
|
||||||
$(CC) -c $< -o $@ $(PROGRAM_FLAGS)
|
$(CXX) -c $< -o $@ $(PROGRAM_FLAGS)
|
||||||
|
|
||||||
long: main.cpp.o
|
long: main.cpp.o
|
||||||
$(CC) -o long main.cpp.o $(PROGRAM_LINK_FLAGS)
|
$(CXX) -o long main.cpp.o $(PROGRAM_LINK_FLAGS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f *.cpp.o
|
rm -f *.cpp.o
|
||||||
|
@ -5,10 +5,10 @@ default: longone
|
|||||||
include ../../cpp.mk
|
include ../../cpp.mk
|
||||||
|
|
||||||
%.cpp.o: src/%.cpp
|
%.cpp.o: src/%.cpp
|
||||||
$(CC) -c $< -o $@ $(PROGRAM_FLAGS)
|
$(CXX) -c $< -o $@ $(PROGRAM_FLAGS)
|
||||||
|
|
||||||
longone: main.cpp.o
|
longone: main.cpp.o
|
||||||
$(CC) -o longone main.cpp.o $(PROGRAM_LINK_FLAGS)
|
$(CXX) -o longone main.cpp.o $(PROGRAM_LINK_FLAGS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f *.cpp.o
|
rm -f *.cpp.o
|
||||||
|
@ -5,10 +5,10 @@ default: longtwo
|
|||||||
include ../../cpp.mk
|
include ../../cpp.mk
|
||||||
|
|
||||||
%.cpp.o: src/%.cpp
|
%.cpp.o: src/%.cpp
|
||||||
$(CC) -c $< -o $@ $(PROGRAM_FLAGS)
|
$(CXX) -c $< -o $@ $(PROGRAM_FLAGS)
|
||||||
|
|
||||||
longtwo: main.cpp.o
|
longtwo: main.cpp.o
|
||||||
$(CC) -o longtwo main.cpp.o $(PROGRAM_LINK_FLAGS)
|
$(CXX) -o longtwo main.cpp.o $(PROGRAM_LINK_FLAGS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f *.cpp.o
|
rm -f *.cpp.o
|
||||||
|
@ -5,10 +5,10 @@ default: loop
|
|||||||
include ../../cpp.mk
|
include ../../cpp.mk
|
||||||
|
|
||||||
%.cpp.o: src/%.cpp
|
%.cpp.o: src/%.cpp
|
||||||
$(CC) $(PROGRAM_FLAGS) $(CPP_FLAGS_64) $(WARNING_FLAGS) -c $< -o $@
|
$(CXX) $(PROGRAM_FLAGS) $(CPP_FLAGS_64) $(WARNING_FLAGS) -c $< -o $@
|
||||||
|
|
||||||
loop: main.cpp.o
|
loop: main.cpp.o
|
||||||
$(CC) $(PROGRAM_LINK_FLAGS) $(CPP_FLAGS_64) -o loop main.cpp.o
|
$(CXX) $(PROGRAM_LINK_FLAGS) $(CPP_FLAGS_64) -o loop main.cpp.o
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f *.cpp.o
|
rm -f *.cpp.o
|
||||||
|
@ -5,10 +5,10 @@ default: ls
|
|||||||
include ../../cpp.mk
|
include ../../cpp.mk
|
||||||
|
|
||||||
%.cpp.o: src/%.cpp
|
%.cpp.o: src/%.cpp
|
||||||
$(CC) -c $< -o $@ $(PROGRAM_FLAGS)
|
$(CXX) -c $< -o $@ $(PROGRAM_FLAGS)
|
||||||
|
|
||||||
ls: main.cpp.o
|
ls: main.cpp.o
|
||||||
$(CC) -o ls main.cpp.o $(PROGRAM_LINK_FLAGS)
|
$(CXX) -o ls main.cpp.o $(PROGRAM_LINK_FLAGS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f *.cpp.o
|
rm -f *.cpp.o
|
||||||
|
@ -5,10 +5,10 @@ default: lspci
|
|||||||
include ../../cpp.mk
|
include ../../cpp.mk
|
||||||
|
|
||||||
%.cpp.o: src/%.cpp
|
%.cpp.o: src/%.cpp
|
||||||
$(CC) -c $< -o $@ $(PROGRAM_FLAGS)
|
$(CXX) -c $< -o $@ $(PROGRAM_FLAGS)
|
||||||
|
|
||||||
lspci: main.cpp.o
|
lspci: main.cpp.o
|
||||||
$(CC) -o lspci main.cpp.o $(PROGRAM_LINK_FLAGS)
|
$(CXX) -o lspci main.cpp.o $(PROGRAM_LINK_FLAGS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f *.cpp.o
|
rm -f *.cpp.o
|
||||||
|
@ -5,10 +5,10 @@ default: mkdir
|
|||||||
include ../../cpp.mk
|
include ../../cpp.mk
|
||||||
|
|
||||||
%.cpp.o: src/%.cpp
|
%.cpp.o: src/%.cpp
|
||||||
$(CC) -c $< -o $@ $(PROGRAM_FLAGS)
|
$(CXX) -c $< -o $@ $(PROGRAM_FLAGS)
|
||||||
|
|
||||||
mkdir: main.cpp.o
|
mkdir: main.cpp.o
|
||||||
$(CC) -o mkdir main.cpp.o $(PROGRAM_LINK_FLAGS)
|
$(CXX) -o mkdir main.cpp.o $(PROGRAM_LINK_FLAGS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f *.cpp.o
|
rm -f *.cpp.o
|
||||||
|
@ -5,10 +5,10 @@ default: mount
|
|||||||
include ../../cpp.mk
|
include ../../cpp.mk
|
||||||
|
|
||||||
%.cpp.o: src/%.cpp
|
%.cpp.o: src/%.cpp
|
||||||
$(CC) -c $< -o $@ $(PROGRAM_FLAGS)
|
$(CXX) -c $< -o $@ $(PROGRAM_FLAGS)
|
||||||
|
|
||||||
mount: main.cpp.o
|
mount: main.cpp.o
|
||||||
$(CC) -o mount main.cpp.o $(PROGRAM_LINK_FLAGS)
|
$(CXX) -o mount main.cpp.o $(PROGRAM_LINK_FLAGS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f *.cpp.o
|
rm -f *.cpp.o
|
||||||
|
@ -5,10 +5,10 @@ default: readelf
|
|||||||
include ../../cpp.mk
|
include ../../cpp.mk
|
||||||
|
|
||||||
%.cpp.o: src/%.cpp
|
%.cpp.o: src/%.cpp
|
||||||
$(CC) -c $< -o $@ $(PROGRAM_FLAGS)
|
$(CXX) -c $< -o $@ $(PROGRAM_FLAGS)
|
||||||
|
|
||||||
readelf: main.cpp.o
|
readelf: main.cpp.o
|
||||||
$(CC) -o readelf main.cpp.o $(PROGRAM_LINK_FLAGS)
|
$(CXX) -o readelf main.cpp.o $(PROGRAM_LINK_FLAGS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f *.cpp.o
|
rm -f *.cpp.o
|
||||||
|
@ -5,10 +5,10 @@ default: reboot
|
|||||||
include ../../cpp.mk
|
include ../../cpp.mk
|
||||||
|
|
||||||
%.cpp.o: src/%.cpp
|
%.cpp.o: src/%.cpp
|
||||||
$(CC) -c $< -o $@ $(PROGRAM_FLAGS)
|
$(CXX) -c $< -o $@ $(PROGRAM_FLAGS)
|
||||||
|
|
||||||
reboot: main.cpp.o
|
reboot: main.cpp.o
|
||||||
$(CC) -o reboot main.cpp.o $(PROGRAM_LINK_FLAGS)
|
$(CXX) -o reboot main.cpp.o $(PROGRAM_LINK_FLAGS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f *.cpp.o
|
rm -f *.cpp.o
|
||||||
|
@ -5,10 +5,10 @@ default: rm
|
|||||||
include ../../cpp.mk
|
include ../../cpp.mk
|
||||||
|
|
||||||
%.cpp.o: src/%.cpp
|
%.cpp.o: src/%.cpp
|
||||||
$(CC) -c $< -o $@ $(PROGRAM_FLAGS)
|
$(CXX) -c $< -o $@ $(PROGRAM_FLAGS)
|
||||||
|
|
||||||
rm: main.cpp.o
|
rm: main.cpp.o
|
||||||
$(CC) -o rm main.cpp.o $(PROGRAM_LINK_FLAGS)
|
$(CXX) -o rm main.cpp.o $(PROGRAM_LINK_FLAGS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f *.cpp.o
|
rm -f *.cpp.o
|
||||||
|
@ -5,10 +5,10 @@ default: shutdown
|
|||||||
include ../../cpp.mk
|
include ../../cpp.mk
|
||||||
|
|
||||||
%.cpp.o: src/%.cpp
|
%.cpp.o: src/%.cpp
|
||||||
$(CC) -c $< -o $@ $(PROGRAM_FLAGS)
|
$(CXX) -c $< -o $@ $(PROGRAM_FLAGS)
|
||||||
|
|
||||||
shutdown: main.cpp.o
|
shutdown: main.cpp.o
|
||||||
$(CC) -o shutdown main.cpp.o $(PROGRAM_LINK_FLAGS)
|
$(CXX) -o shutdown main.cpp.o $(PROGRAM_LINK_FLAGS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f *.cpp.o
|
rm -f *.cpp.o
|
||||||
|
@ -5,10 +5,10 @@ default: stat
|
|||||||
include ../../cpp.mk
|
include ../../cpp.mk
|
||||||
|
|
||||||
%.cpp.o: src/%.cpp
|
%.cpp.o: src/%.cpp
|
||||||
$(CC) -c $< -o $@ $(PROGRAM_FLAGS)
|
$(CXX) -c $< -o $@ $(PROGRAM_FLAGS)
|
||||||
|
|
||||||
stat: main.cpp.o
|
stat: main.cpp.o
|
||||||
$(CC) -o stat main.cpp.o $(PROGRAM_LINK_FLAGS)
|
$(CXX) -o stat main.cpp.o $(PROGRAM_LINK_FLAGS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f *.cpp.o
|
rm -f *.cpp.o
|
||||||
|
@ -5,10 +5,10 @@ default: touch
|
|||||||
include ../../cpp.mk
|
include ../../cpp.mk
|
||||||
|
|
||||||
%.cpp.o: src/%.cpp
|
%.cpp.o: src/%.cpp
|
||||||
$(CC) -c $< -o $@ $(PROGRAM_FLAGS)
|
$(CXX) -c $< -o $@ $(PROGRAM_FLAGS)
|
||||||
|
|
||||||
touch: main.cpp.o
|
touch: main.cpp.o
|
||||||
$(CC) -o touch main.cpp.o $(PROGRAM_LINK_FLAGS)
|
$(CXX) -o touch main.cpp.o $(PROGRAM_LINK_FLAGS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f *.cpp.o
|
rm -f *.cpp.o
|
||||||
|
@ -5,10 +5,10 @@ default: tsh
|
|||||||
include ../../cpp.mk
|
include ../../cpp.mk
|
||||||
|
|
||||||
%.cpp.o: src/%.cpp
|
%.cpp.o: src/%.cpp
|
||||||
$(CC) -c $< -o $@ $(PROGRAM_FLAGS)
|
$(CXX) -c $< -o $@ $(PROGRAM_FLAGS)
|
||||||
|
|
||||||
tsh: main.cpp.o
|
tsh: main.cpp.o
|
||||||
$(CC) -o tsh main.cpp.o $(PROGRAM_LINK_FLAGS)
|
$(CXX) -o tsh main.cpp.o $(PROGRAM_LINK_FLAGS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f *.cpp.o
|
rm -f *.cpp.o
|
||||||
|
@ -5,10 +5,10 @@ default: uptime
|
|||||||
include ../../cpp.mk
|
include ../../cpp.mk
|
||||||
|
|
||||||
%.cpp.o: src/%.cpp
|
%.cpp.o: src/%.cpp
|
||||||
$(CC) -c $< -o $@ $(PROGRAM_FLAGS)
|
$(CXX) -c $< -o $@ $(PROGRAM_FLAGS)
|
||||||
|
|
||||||
uptime: main.cpp.o
|
uptime: main.cpp.o
|
||||||
$(CC) -o uptime main.cpp.o $(PROGRAM_LINK_FLAGS)
|
$(CXX) -o uptime main.cpp.o $(PROGRAM_LINK_FLAGS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f *.cpp.o
|
rm -f *.cpp.o
|
||||||
|
@ -5,10 +5,10 @@ default: which
|
|||||||
include ../../cpp.mk
|
include ../../cpp.mk
|
||||||
|
|
||||||
%.cpp.o: src/%.cpp
|
%.cpp.o: src/%.cpp
|
||||||
$(CC) -c $< -o $@ $(PROGRAM_FLAGS)
|
$(CXX) -c $< -o $@ $(PROGRAM_FLAGS)
|
||||||
|
|
||||||
which: main.cpp.o
|
which: main.cpp.o
|
||||||
$(CC) -o which main.cpp.o $(PROGRAM_LINK_FLAGS)
|
$(CXX) -o which main.cpp.o $(PROGRAM_LINK_FLAGS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f *.cpp.o
|
rm -f *.cpp.o
|
||||||
|
@ -5,10 +5,10 @@ default: writer
|
|||||||
include ../../cpp.mk
|
include ../../cpp.mk
|
||||||
|
|
||||||
%.cpp.o: src/%.cpp
|
%.cpp.o: src/%.cpp
|
||||||
$(CC) -c $< -o $@ $(PROGRAM_FLAGS)
|
$(CXX) -c $< -o $@ $(PROGRAM_FLAGS)
|
||||||
|
|
||||||
writer: main.cpp.o
|
writer: main.cpp.o
|
||||||
$(CC) -o writer main.cpp.o $(PROGRAM_LINK_FLAGS)
|
$(CXX) -o writer main.cpp.o $(PROGRAM_LINK_FLAGS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f *.cpp.o
|
rm -f *.cpp.o
|
||||||
|
@ -9,10 +9,10 @@ D_FILES=$(CPP_FILES:%.cpp=%.cpp.d)
|
|||||||
O_FILES=$(CPP_FILES:%.cpp=%.cpp.o)
|
O_FILES=$(CPP_FILES:%.cpp=%.cpp.o)
|
||||||
|
|
||||||
src/%.cpp.d: $(CPP_FILES)
|
src/%.cpp.d: $(CPP_FILES)
|
||||||
@ $(CC) $(LIB_FLAGS) -MM -MT src/$*.cpp.o src/$*.cpp | sed -e 's@^\(.*\)\.o:@\1.d \1.o:@' > $@
|
@ $(CXX) $(LIB_FLAGS) -MM -MT src/$*.cpp.o src/$*.cpp | sed -e 's@^\(.*\)\.o:@\1.d \1.o:@' > $@
|
||||||
|
|
||||||
src/%.cpp.o:
|
src/%.cpp.o:
|
||||||
$(CC) $(LIB_FLAGS) -c $< -o $@
|
$(CXX) $(LIB_FLAGS) -c $< -o $@
|
||||||
|
|
||||||
-include $(D_FILES)
|
-include $(D_FILES)
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user