source: trunk/kStuff/Config.kmk@ 3625

Last change on this file since 3625 was 3602, checked in by bird, 18 years ago

license update.

  • Property svn:keywords set to Id
File size: 4.5 KB
RevLine 
[3108]1# $Id: Config.kmk 3602 2007-10-29 00:24:04Z bird $
[2667]2## @file
[3537]3# kBuild configuration for kStuff
[2667]4#
[3602]5
[2667]6#
[3602]7# Copyright (c) 2006-2007 knut st. osmundsen <bird-kStuff-spam@anduin.net>
[2667]8#
[3602]9# This file is part of kStuff.
[2667]10#
[3602]11# kStuff is free software; you can redistribute it and/or
12# modify it under the terms of the GNU Lesser General Public
13# License as published by the Free Software Foundation; either
14# version 2.1 of the License, or (at your option) any later version.
[2667]15#
[3602]16# kStuff is distributed in the hope that it will be useful,
[2667]17# but WITHOUT ANY WARRANTY; without even the implied warranty of
[3602]18# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19# Lesser General Public License for more details.
[2667]20#
[3602]21# You should have received a copy of the GNU Lesser General Public
22# License along with kStuff; if not, write to the Free Software
23# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
[2667]24#
[2470]25
[2667]26#
27# This is where we install during the build.
28#
[3537]29PATH_INS := $(PATH_OUT)/kStuff
[2470]30
31
[2480]32#
[3537]33# Templates for the kStuff.
[2480]34#
[3537]35TEMPLATE_kStuff = kStuff Template
36TEMPLATE_kStuff_TOOL = GCC3
[3596]37TEMPLATE_kStuff_TOOL.darwin = GCC4MACHO
[3537]38TEMPLATE_kStuff_TOOL.os2 = GCC3OMF
[3596]39TEMPLATE_kStuff_TOOL.solaris = GCC3PLAIN
[3537]40TEMPLATE_kStuff_TOOL.win.x86 = VCC70
41TEMPLATE_kStuff_TOOL.win.amd64 = VCC80AMD64
[2470]42
[3552]43TEMPLATE_kStuff_SDKS.win.x86 = WINPSDK W2K3DDKX86
44TEMPLATE_kStuff_SDKS.win.amd64 = WINPSDK W2K3DDKAMD64
[2473]45
[3537]46TEMPLATE_kStuff_DEFS.freebsd = KS_OS_FREEBSD
[3602]47TEMPLATE_kStuff_DEFS.darwin = KS_OS_DARWIN
[3537]48TEMPLATE_kStuff_DEFS.linux = KS_OS_LINUX
[3602]49TEMPLATE_kStuff_DEFS.netbsd = KS_OS_NETBSD
50TEMPLATE_kStuff_DEFS.openbsd = KS_OS_OPENBSD
[3537]51TEMPLATE_kStuff_DEFS.os2 = KS_OS_OS2
[3602]52TEMPLATE_kStuff_DEFS.solaris = KS_OS_SOLARIS
[3537]53TEMPLATE_kStuff_DEFS.win = KS_OS_WINDOWS _CRT_SECURE_NO_DEPRECATE _CRT_NONSTDC_NO_WARNINGS
[2470]54
[3537]55TEMPLATE_kStuff_DEFS.x86 = KS_BITS=32
56TEMPLATE_kStuff_DEFS.amd64 = KS_BITS=64
[2472]57
[3538]58TEMPLATE_kStuff_INCS = $(PATH_ROOT)/kStuff/include
59
[3537]60TEMPLATE_kStuff_ASTOOL = YASM
61TEMPLATE_kStuff_ASTOOL.os2 = NASM
62TEMPLATE_kStuff_ASFLAGS.freebsd = -f elf
63TEMPLATE_kStuff_ASFLAGS.linux = -f elf
64TEMPLATE_kStuff_ASFLAGS.os2 = -f omf
65TEMPLATE_kStuff_ASFLAGS.win.x86 = -f win32 -g cv8
66TEMPLATE_kStuff_ASFLAGS.win.amd64= -f win64 -g cv8
[2678]67
[3598]68TEMPLATE_kStuff_CFLAGS.darwin = -g -fno-common
69TEMPLATE_kStuff_CFLAGS.freebsd = -g
70TEMPLATE_kStuff_CFLAGS.linux = -g
71TEMPLATE_kStuff_CFLAGS.os2 = -g
72TEMPLATE_kStuff_CFLAGS.win = -Zi -Zl -MD -W3 -GF -GR-
73ifneq ($(BUILD_TYPE),debug)
74TEMPLATE_kStuff_CFLAGS.freebsd += -O3
75TEMPLATE_kStuff_CFLAGS.linux += -O3
76TEMPLATE_kStuff_CFLAGS.os2 += -O3
77TEMPLATE_kStuff_CFLAGS.win += -O2xtg -Oi -Ob2
78else
79TEMPLATE_kStuff_CFLAGS.win += -Od
80endif
81
82TEMPLATE_kStuff_CXXFLAGS.darwin = -g -fno-common
[3537]83TEMPLATE_kStuff_CXXFLAGS.freebsd = -g
84TEMPLATE_kStuff_CXXFLAGS.linux = -g
85TEMPLATE_kStuff_CXXFLAGS.os2 = -g
86TEMPLATE_kStuff_CXXFLAGS.win = -Zi -Zl -MD -W3 -GF -GR-
87ifneq ($(BUILD_TYPE),debug)
88TEMPLATE_kStuff_CXXFLAGS.freebsd+= -O3
89TEMPLATE_kStuff_CXXFLAGS.linux += -O3
90TEMPLATE_kStuff_CXXFLAGS.os2 += -O3
91TEMPLATE_kStuff_CXXFLAGS.win += -O2xtg -Oi -Ob2
[3552]92else
93TEMPLATE_kStuff_CXXFLAGS.win += -Od
[3537]94endif
[2550]95
[3537]96TEMPLATE_kStuff_LDFLAGS.freebsd = -g
97TEMPLATE_kStuff_LDFLAGS.linux = -g
98TEMPLATE_kStuff_LDFLAGS.os2 = -g
[3588]99TEMPLATE_kStuff_LDFLAGS.win = /DEBUG /NODEFAULTLIB
[2550]100
[3537]101TEMPLATE_kStuff_LIBS.freebsd =
102TEMPLATE_kStuff_LIBS.linux =
103TEMPLATE_kStuff_LIBS.os2 =
104TEMPLATE_kStuff_LIBS.win = \
105 $(PATH_SDK_WINPSDK_LIB)/psapi.Lib
106TEMPLATE_kStuff_LIBS.win.x86 = \
107 $(PATH_TOOL_VCC70_LIB)/msvcrt.lib \
108 $(PATH_TOOL_VCC70_LIB)/msvcprt.lib \
[3552]109 $(PATH_TOOL_VCC70_LIB)/oldnames.lib \
110 $(PATH_SDK_W2K3DDKX86_LIB)/ntdll.lib
[3588]111TEMPLATE_kStuff_LIBS.win.amd64 = \
112 $(PATH_TOOL_VCC80AMD64_LIB)/msvcrt.lib \
113 $(PATH_TOOL_VCC80AMD64_LIB)/msvcprt.lib \
114 $(PATH_TOOL_VCC80AMD64_LIB)/oldnames.lib \
115 $(PATH_SDK_W2K3DDKAMD64_LIB)/ntdll.lib
[2550]116
[3537]117TEMPLATE_kStuffEXE = kStuff Executable Template
118TEMPLATE_kStuffEXE_EXTENDS = kStuff
119TEMPLATE_kStuffEXE_DEFS = $(TEMPLATE_kStuff) KS_EXE_TARGET
[2550]120
[3537]121TEMPLATE_kStuffLIB = kStuff Library Template
122TEMPLATE_kStuffLIB_EXTENDS = kStuff
123TEMPLATE_kStuffLIB_DEFS = $(TEMPLATE_kStuff) KS_LIB_TARGET
[2550]124
[3537]125TEMPLATE_kStuffDLL = kStuff DLL Template
126TEMPLATE_kStuffDLL_EXTENDS = kStuff
127TEMPLATE_kStuffDLL_DEFS = $(TEMPLATE_kStuff) KS_DLL_TARGET
128TEMPLATE_kStuffDLL_LDFLAGS.os2 = $(TEMPLATE_kStuff_LDFLAGS.os2) -Zdll
[2472]129
[2473]130
Note: See TracBrowser for help on using the repository browser.