Subversion Repositories Kolibri OS

Rev

Blame | Last modification | View Log | Download | RSS feed

  1. #
  2. # Makefile.config
  3. #
  4. # Common configuration and setup file to generate the ACPICA tools and
  5. # utilities: the iASL compiler, acpiexec, acpihelp, acpinames, acpisrc,
  6. # acpixtract, acpibin.
  7. #
  8. # This file is included by the individual makefiles for each tool.
  9. #
  10.  
  11. #
  12. # Note: This makefile is intended to be used from within the native
  13. # ACPICA directory structure, from under generate/unix. It specifically
  14. # places all object files in a generate/unix subdirectory, not within
  15. # the various ACPICA source directories. This prevents collisions
  16. # between different compilations of the same source file with different
  17. # compile options, and prevents pollution of the source code.
  18. #
  19.  
  20. #
  21. # Configuration
  22. # Notes:
  23. #   gcc should be version 4 or greater, otherwise some of the options
  24. #       used will not be recognized.
  25. #   Global optimization flags (such as -O2, -Os) are not used, since
  26. #       they cause issues on some compilers.
  27. #   The _GNU_SOURCE symbol is required for many hosts.
  28. #
  29. PROGS =         acpibin acpiexec acpihelp acpinames acpisrc acpixtract iasl
  30.  
  31. HOST =          _CYGWIN
  32. CC =            gcc
  33. COMPILE =       $(CC) -c $(CFLAGS) $(CWARNINGFLAGS) -o$@ $?
  34.  
  35. #
  36. # Common defines
  37. #
  38. ACPICA_SRC =    ../../../source
  39. ACPICA_COMMON = $(ACPICA_SRC)/common
  40. ACPICA_CORE =   $(ACPICA_SRC)/components
  41. ACPICA_TOOLS =  $(ACPICA_SRC)/tools
  42. ACPICA_OSL =    $(ACPICA_SRC)/os_specific/service_layers
  43. ASL_COMPILER =  $(ACPICA_SRC)/compiler
  44. COPYPROG =      @mkdir -p ../bin; rm -f ../bin/$(PROG); cp --remove-destination $(PROG) ../bin
  45. INSTALLDIR =    /usr/bin
  46. INSTALLPROG =   cp --remove-destination $(PROG) $(INSTALLDIR)
  47. #
  48. # Common compiler flags. The warning flags in addition to -Wall are not
  49. # automatically included in -Wall.
  50. #
  51. CFLAGS += \
  52.     -D$(HOST) \
  53.     -D_GNU_SOURCE \
  54.     -I$(ACPICA_SRC)/include
  55.  
  56. CWARNINGFLAGS = \
  57.     -ansi \
  58.     -Wall \
  59.     -Wbad-function-cast \
  60.     -Wdeclaration-after-statement \
  61.     -Werror \
  62.     -Wformat=2 \
  63.     -Wmissing-declarations \
  64.     -Wmissing-prototypes \
  65.     -Wstrict-aliasing=0 \
  66.     -Wstrict-prototypes \
  67.     -Wswitch-default \
  68.     -Wpointer-arith \
  69.     -Wundef
  70.  
  71. #
  72. # gcc 4+ flags
  73. #
  74. CWARNINGFLAGS += \
  75.     -Waddress \
  76.     -Waggregate-return \
  77.     -Wchar-subscripts \
  78.     -Wempty-body \
  79.     -Wlogical-op \
  80.     -Wmissing-declarations \
  81.     -Wmissing-field-initializers \
  82.     -Wmissing-parameter-type \
  83.     -Wnested-externs \
  84.     -Wold-style-declaration \
  85.     -Wold-style-definition \
  86.     -Wredundant-decls \
  87.     -Wtype-limits
  88.  
  89. #
  90. # Extra warning flags (possible future use)
  91. #
  92. #CWARNINGFLAGS += \
  93. #       -Wcast-qual \
  94. #       -Wconversion
  95. #       -Wshadow \
  96.  
  97. #
  98. # Bison/Flex configuration
  99. #
  100. # -v: verbose, produces a .output file
  101. # -d: produces the defines header file
  102. # -y: act like yacc
  103. #
  104. # -i: generate case insensitive scanner
  105. # -s: suppress default rule, abort on unknown input
  106. #
  107. # Berkeley yacc configuration
  108. #
  109. #YACC=      byacc
  110. #YFLAGS +=  -v -d
  111. #
  112. YACC=       bison
  113. YFLAGS +=   -v -d -y
  114.  
  115. LEX=        flex
  116. LFLAGS +=   -i -s
  117.