| [72] | 1 | # $Id: config.kmk 75 2004-05-31 08:05:15Z bird $ | 
|---|
|  | 2 | # | 
|---|
|  | 3 | # Base config for kBuild | 
|---|
|  | 4 | # | 
|---|
|  | 5 | # It is recommended to include this file in your config.kMk file and then | 
|---|
|  | 6 | # override any default options defined there. In addition you will have to | 
|---|
|  | 7 | # decide the location of the object directory in your config.kMk file, and | 
|---|
|  | 8 | # of course manage to find this file. | 
|---|
|  | 9 | # | 
|---|
|  | 10 | # | 
|---|
|  | 11 | # Copyright (c) 2003 knut st. osmundsen <bird-srcspam@anduin.net> | 
|---|
|  | 12 | # | 
|---|
|  | 13 | # | 
|---|
|  | 14 | # This file is part of kBuild. | 
|---|
|  | 15 | # | 
|---|
|  | 16 | # kBuild is free software; you can redistribute it and/or modify | 
|---|
|  | 17 | # it under the terms of the GNU General Public License as published by | 
|---|
|  | 18 | # the Free Software Foundation; either version 2 of the License, or | 
|---|
|  | 19 | # (at your option) any later version. | 
|---|
|  | 20 | # | 
|---|
|  | 21 | # kBuild is distributed in the hope that it will be useful, | 
|---|
|  | 22 | # but WITHOUT ANY WARRANTY; without even the implied warranty of | 
|---|
|  | 23 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | 
|---|
|  | 24 | # GNU General Public License for more details. | 
|---|
|  | 25 | # | 
|---|
|  | 26 | # You should have received a copy of the GNU General Public License | 
|---|
|  | 27 | # along with kBuild; if not, write to the Free Software | 
|---|
|  | 28 | # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA | 
|---|
|  | 29 | # | 
|---|
|  | 30 | # | 
|---|
|  | 31 |  | 
|---|
| [75] | 32 | ifdef rewrite_me | 
|---|
| [72] | 33 |  | 
|---|
|  | 34 | .ifndef __KBLD_config_kMk_ | 
|---|
|  | 35 | __KBLD_config_kMk_ = 1 | 
|---|
|  | 36 |  | 
|---|
|  | 37 | # | 
|---|
|  | 38 | # Determin default target (if not set) / Check default target (if set) | 
|---|
|  | 39 | # | 
|---|
|  | 40 | .ifndef TARGET_MACHINE_TYPE | 
|---|
|  | 41 | ## The TARGET_MACHINE_TYPE is a generalized machine type for the | 
|---|
|  | 42 | # default target machine. Current types are "UX" for UNIX like systems | 
|---|
|  | 43 | # and "PC" for PC like systems. PC like systems are DOS, OS/2, and Win32. | 
|---|
|  | 44 | # While the rest is UNIX like at the moment. | 
|---|
|  | 45 | .if ${MACHINE} == "ibmos2" || ${MACHINE} == "win32" || ${MACHINE} == "dos" | 
|---|
|  | 46 | TARGET_MACHINE_TYPE := PC | 
|---|
|  | 47 | .else | 
|---|
|  | 48 | TARGET_MACHINE_TYPE := UX | 
|---|
|  | 49 | .endif | 
|---|
|  | 50 |  | 
|---|
|  | 51 | .elif ${TARGET_MACHINE_TYPE} != "UX" && ${TARGET_MACHINE_TYPE} != "PC" | 
|---|
|  | 52 | .error Invalid TARGET_MACHINE_TYPE define. Must be either UX or PC. | 
|---|
|  | 53 | .endif | 
|---|
|  | 54 |  | 
|---|
|  | 55 | ## @group Typical PC Suffixes | 
|---|
|  | 56 | # Note that suffixes includes the '.' if present. | 
|---|
|  | 57 | # @{ | 
|---|
|  | 58 | SFX_EXE_PC      := .exe | 
|---|
|  | 59 | SFX_DLL_PC      := .dll | 
|---|
|  | 60 | SFX_DEF_PC      := .def | 
|---|
|  | 61 | SFX_RES_PC      := .res | 
|---|
|  | 62 | SFX_OBJ_PC      := .obj | 
|---|
|  | 63 | SFX_CLS_PC      := .class | 
|---|
|  | 64 | # @} | 
|---|
|  | 65 |  | 
|---|
|  | 66 | ## @group Typical UNIX Suffixes | 
|---|
|  | 67 | # Note that suffixes includes the '.' if present. | 
|---|
|  | 68 | # @{ | 
|---|
|  | 69 | SFX_EXE_UX      := | 
|---|
|  | 70 | SFX_DLL_UX      := .so | 
|---|
|  | 71 | SFX_OBJ_UX      := .o | 
|---|
|  | 72 | SFX_CLS_UX      := .class | 
|---|
|  | 73 | # @} | 
|---|
|  | 74 |  | 
|---|
|  | 75 |  | 
|---|
|  | 76 | ## @group Default Target Suffixes. | 
|---|
|  | 77 | # @{ | 
|---|
|  | 78 | ## Executable Program. | 
|---|
|  | 79 | SFX_EXE         = ${SFX_EXE_${TARGET_MACHINE_TYPE}} | 
|---|
|  | 80 | ## DLL/Shared Library. | 
|---|
|  | 81 | SFX_DLL         = ${SFX_DLL_${TARGET_MACHINE_TYPE}} | 
|---|
|  | 82 | ## Object file. | 
|---|
|  | 83 | SFX_OBJ         = ${SFX_OBJ_${TARGET_MACHINE_TYPE}} | 
|---|
|  | 84 | ## Resource object file (PC thingy). | 
|---|
|  | 85 | SFX_RES         = ${SFX_RES_${TARGET_MACHINE_TYPE}} | 
|---|
|  | 86 | ## Definition (~=linkerscript) file (PC thingy). | 
|---|
|  | 87 | SFX_DEF         = ${SFX_RES_${TARGET_MACHINE_TYPE}} | 
|---|
|  | 88 | ## Java class files | 
|---|
|  | 89 | SFX_CLS         = ${SFX_RES_${TARGET_MACHINE_TYPE}} | 
|---|
|  | 90 | ## @} | 
|---|
|  | 91 |  | 
|---|
|  | 92 |  | 
|---|
|  | 93 | ## @group Suffix lists used for transformations | 
|---|
|  | 94 | # @{ | 
|---|
|  | 95 | ## C source file suffixes | 
|---|
|  | 96 | SFXS_C          := .c | 
|---|
|  | 97 | ## C++ source file suffixes | 
|---|
|  | 98 | SFXS_CXX        := .cpp .cxx .cc .c++ | 
|---|
|  | 99 | ## C/C++ header file suffixes (list) | 
|---|
|  | 100 | SFXS_H          := .h .hpp | 
|---|
|  | 101 | ## Java source file suffixes | 
|---|
|  | 102 | SFXS_JAVA       := .java .jav | 
|---|
|  | 103 | ## IDL source file suffixes | 
|---|
|  | 104 | SFXS_IDL        := .idl | 
|---|
|  | 105 | ## @} | 
|---|
|  | 106 |  | 
|---|
|  | 107 |  | 
|---|
|  | 108 | ## @group kBuild helper defines. | 
|---|
|  | 109 | # @{ | 
|---|
|  | 110 | ## The kBuild path. | 
|---|
|  | 111 | KBUILD_PATH     := $(MAKEFILE:H) | 
|---|
|  | 112 | ## The rules file. | 
|---|
|  | 113 | KBUILD_RULEZ    := $(KBUILD_PATH)/rules.kMk | 
|---|
|  | 114 | ## @} | 
|---|
|  | 115 |  | 
|---|
|  | 116 | .endif | 
|---|
|  | 117 | endif | 
|---|