kolibrios-fun/drivers/acpi/Makefile
Sergey Semyonov (Serge) 9a7d86dfc0 acpi driver
git-svn-id: svn://kolibrios.org@6595 a494cfbc-eb01-0410-851d-a64ba20cac60
2016-10-15 02:03:01 +00:00

193 lines
4.6 KiB
Makefile

CC = kos32-gcc
FASM = fasm.exe
DRV_DIR = $(CURDIR)/..
DRV_INCLUDES = $(DRV_DIR)/include
ACPI_INCLUDES = ./acpica/include
INCLUDES = -I$(DRV_INCLUDES) \
-I$(DRV_INCLUDES)/asm \
-I$(DRV_INCLUDES)/uapi
INCLUDES+= -I$(ACPI_INCLUDES) -I./
DEFINES = -D_LINUX -D__KERNEL__ -DCONFIG_X86 -DCONFIG_X86_32 -DCONFIG_PCI -DCONFIG_ACPI -DBUILDING_ACPICA
DEFINES += -DCONFIG_X86_CMPXCHG64 -DCONFIG_TINY_RCU -DCONFIG_X86_L1_CACHE_SHIFT=6
DEFINES += -DACPI_USE_LOCAL_CACHE -DACPI_NO_ERROR_MESSAGES
DEFINES += -DCONFIG_DMI -DCONFIG_ACPI_REDUCED_HARDWARE_ONLY -DKBUILD_MODNAME=\"acpi.dll\"
CFLAGS_OPT = -Os -march=i686 -fomit-frame-pointer -fno-ident -mno-stack-arg-probe
CFLAGS_OPT+= -fno-builtin-printf -fno-builtin-snprintf -fno-builtin-sscanf -fno-builtin-vsscanf
CFLAGS_OPT+= -fno-builtin-scnprintf -fno-builtin-vsprintf -fno-builtin-vsnprintf
CFLAGS_OPT+= -mno-ms-bitfields
CFLAGS = $(INCLUDES) $(DEFINES) $(CFLAGS_OPT)
PE_FLAGS=--major-os-version,0,--minor-os-version,7,--major-subsystem-version,0,--minor-subsystem-version,5,--subsystem,native
LDFLAGS=-e,_drvEntry,-nostdlib,-s,-pie,$(PE_FLAGS),--image-base,0,--file-alignment,512,--section-alignment,512
LIBPATH:= -L$(DRV_DIR)/ddk -L./acpica
LIBS:= -lcore
NAME= acpi
NAME_SRCS= acpi.c \
blacklist.c \
boot.c \
bus.c \
tables.c \
acpica/dsargs.c \
acpica/dscontrol.c \
acpica/dsdebug.c \
acpica/dsfield.c \
acpica/dsinit.c \
acpica/dsmethod.c \
acpica/dsmthdat.c \
acpica/dsobject.c \
acpica/dsopcode.c \
acpica/dsutils.c \
acpica/dswexec.c \
acpica/dswload.c \
acpica/dswload2.c \
acpica/dswscope.c \
acpica/dswstate.c \
acpica/evmisc.c \
acpica/evregion.c \
acpica/evrgnini.c \
acpica/exconfig.c \
acpica/exconvrt.c \
acpica/excreate.c \
acpica/exdebug.c \
acpica/exfield.c \
acpica/exfldio.c \
acpica/exmisc.c \
acpica/exmutex.c \
acpica/exnames.c \
acpica/exoparg1.c \
acpica/exoparg2.c \
acpica/exoparg3.c \
acpica/exoparg6.c \
acpica/exprep.c \
acpica/exresnte.c \
acpica/exresolv.c \
acpica/exresop.c \
acpica/exstore.c \
acpica/exstoren.c \
acpica/exstorob.c \
acpica/exsystem.c \
acpica/exutils.c \
acpica/nsaccess.c \
acpica/nsalloc.c \
acpica/nsarguments.c \
acpica/nsconvert.c \
acpica/nseval.c \
acpica/nsinit.c \
acpica/nsload.c \
acpica/nsnames.c \
acpica/nsobject.c \
acpica/nsparse.c \
acpica/nspredef.c \
acpica/nsprepkg.c \
acpica/nsrepair.c \
acpica/nsrepair2.c \
acpica/nssearch.c \
acpica/nsutils.c \
acpica/nswalk.c \
acpica/psargs.c \
acpica/psloop.c \
acpica/psobject.c \
acpica/psopcode.c \
acpica/psopinfo.c \
acpica/psparse.c \
acpica/psscope.c \
acpica/pstree.c \
acpica/psutils.c \
acpica/pswalk.c \
acpica/psxface.c \
acpica/tbdata.c \
acpica/tbfind.c \
acpica/tbfadt.c \
acpica/tbinstal.c \
acpica/tbprint.c \
acpica/tbutils.c \
acpica/tbxface.c \
acpica/tbxfload.c \
acpica/utaddress.c \
acpica/utalloc.c \
acpica/utbuffer.c \
acpica/utcache.c \
acpica/utcopy.c \
acpica/utdecode.c \
acpica/utdelete.c \
acpica/uterror.c \
acpica/utexcep.c \
acpica/utglobal.c \
acpica/uthex.c \
acpica/utinit.c \
acpica/utlock.c \
acpica/utmath.c \
acpica/utmisc.c \
acpica/utmutex.c \
acpica/utnonansi.c \
acpica/utobject.c \
acpica/utosi.c \
acpica/utownerid.c \
acpica/utpredef.c \
acpica/utresrc.c \
acpica/utstate.c \
acpica/utstring.c \
acpica/utxface.c \
acpica/utxferror.c \
acpica/utxfinit.c \
../ddk/debug/dbglog.c \
../ddk/io/create.c \
../ddk/io/finfo.c \
../ddk/io/ssize.c \
../ddk/io/write.c \
../ddk/malloc/malloc.c \
../ddk/linux/ctype.c \
../ddk/linux/div64.c \
../ddk/linux/dmi.c \
../ddk/linux/hexdump.c \
../ddk/stdio/vsprintf.c \
../ddk/string/strstr.c \
../ddk/string/_strncat.S\
../ddk/string/_strncmp.S\
../ddk/string/_strncpy.S\
../ddk/string/_strnlen.S\
../ddk/string/memcmp.S \
../ddk/string/strcat.S \
../ddk/string/strcmp.S \
../ddk/string/strcpy.S \
../ddk/string/strncmp.S \
../ddk/string/strncpy.S \
../ddk/string/strnlen.S \
$(NULL)
all: $(NAME).dll
NAME_OBJS = $(patsubst %.S, %.o, $(patsubst %.asm, %.o,\
$(patsubst %.c, %.o, $(NAME_SRCS))))
all: $(NAME).dll
$(NAME).dll: $(NAME_SRCS) acpi.lds Makefile
$(CC) $(CFLAGS) -nostdlib -fwhole-program -flto -Wl,-Map,acpi.map,-T,acpi.lds,$(LDFLAGS) -Wl,$(LIBPATH) -o $@ $(NAME_SRCS) $(LIBS)
strip $(NAME).dll
# kpack $(NAME).dll
%.o : %.S $(HFILES) Makefile
as -o $@ $<