VirtualBox

source: vbox/trunk/src/libs/Makefile.kmk@ 12212

Last change on this file since 12212 was 12212, checked in by vboxsync, 16 years ago

libs/Makefile: consolidate if statements.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 4.6 KB
Line 
1# $Id: Makefile.kmk 12212 2008-09-08 09:49:39Z vboxsync $
2## @file
3# Top-level makefile for the external libraries.
4#
5
6#
7# Copyright (C) 2006-2007 Sun Microsystems, Inc.
8#
9# This file is part of VirtualBox Open Source Edition (OSE), as
10# available from http://www.virtualbox.org. This file is free software;
11# you can redistribute it and/or modify it under the terms of the GNU
12# General Public License (GPL) as published by the Free Software
13# Foundation, in version 2 as it comes in the "COPYING" file of the
14# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
15# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
16#
17# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa
18# Clara, CA 95054 USA or visit http://www.sun.com if you need
19# additional information or have any questions.
20#
21
22if 1 #def VBOX_SINGLE_MAKEFILE
23SUB_DEPTH = ../..
24include $(KBUILD_PATH)/subheader.kmk
25
26#
27# Note! A number of the libs may be detected on the host system by the configure script.
28# The usual way for testing for this is to see whether the Config.kmk default
29# include path specific to the lib has been changed.
30#
31
32# Compression libs used by IPRT and <what was it again?>.
33include $(PATH_SUB_CURRENT)/liblzf-1.51/Makefile.kmk
34if !defined(VBOX_ONLY_SDK) \
35 && "$(SDK_VBOX_ZLIB_INCS)" == "$(PATH_ROOT)/src/libs/zlib-1.2.1"
36 include $(PATH_SUB_CURRENT)/zlib-1.2.1/Makefile.kmk
37endif
38
39# PNG support (for screenshots).
40if !defined(VBOX_ONLY_DOCS) && !defined(VBOX_ONLY_SDK) \
41 && "$(SDK_VBOX_LIBPNG_INCS)" == "$(PATH_ROOT)/src/libs/libpng-1.2.8"
42 include $(PATH_SUB_CURRENT)/libpng-1.2.8/Makefile.kmk
43endif # !VBOX_ONLY_DOCS
44
45# The kStuff lib used by IPRT and the debugger.
46ifdef IPRT_WITH_KSTUFF
47 include $(PATH_SUB_CURRENT)/kStuff/Makefile.kmk
48endif
49
50# OpenSSL for VRDP.
51if defined(VBOX_WITH_VRDP) && !defined(VBOX_ONLY_DOCS) && !defined(VBOX_ONLY_SDK) \
52 && "$(SDK_VBOX_OPENSSL_INCS)" == "$(SDK_VBOX_OPENSSL_DEFAULT_INCS)"
53 include $(PATH_SUB_CURRENT)/openssl-0.9.8h/Makefile.kmk
54endif
55
56
57# Main related things - XML and XSLT, XPCOM.
58if defined(VBOX_WITH_MAIN) && !defined(VBOX_ONLY_DOCS)
59
60 ifdef VBOX_WITH_XPCOM
61 include $(PATH_SUB_CURRENT)/xpcom18a4/Makefile.kmk
62 endif
63 ifeq ($(SDK_VBOX_LIBXML2_INCS),$(PATH_ROOT)/src/libs/libxml2-2.6.30/include)
64 include $(PATH_SUB_CURRENT)/libxml2-2.6.30/Makefile.kmk
65 endif
66 ifeq ($(SDK_VBOX_LIBXSLT_INCS),$(PATH_ROOT)/src/libs/libxslt-1.1.22)
67 include $(PATH_SUB_CURRENT)/libxslt-1.1.22/Makefile.kmk
68 endif
69
70 # FFmpeg for test videos.
71 if defined(VBOX_WITH_FFMPEG) && !defined(VBOX_OSE) && !defined(VBOX_WITH_SDK)
72 if1of ($(KBUILD_TARGET), darwin)
73 include $(PATH_SUB_CURRENT)/ffmpeg-20060710/Makefile.kmk
74 endif
75 endif
76
77endif # VBOX_WITH_MAIN && !VBOX_ONLY_DOCS
78
79include $(KBUILD_PATH)/subfooter.kmk
80
81
82else # !VBOX_SINGLE_MAKEFILE
83DEPTH = ../..
84include $(KBUILD_PATH)/header.kmk
85
86subdirs := liblzf-1.51 $(subdirs.$(KBUILD_TARGET))
87
88ifdef IPRT_WITH_KSTUFF
89 subdirs += kStuff
90endif
91# @todo win and os2 need that even in OSE, all others should set proper *_INCS
92# values by the configure script
93#ifndef VBOX_OSE
94 ifeq ($(SDK_VBOX_ZLIB_INCS),$(PATH_ROOT)/src/libs/zlib-1.2.1)
95 subdirs += zlib-1.2.1
96 endif
97 ifeq ($(SDK_VBOX_LIBPNG_INCS),$(PATH_ROOT)/src/libs/libpng-1.2.8)
98 subdirs += libpng-1.2.8
99 endif
100#endif # !VBOX_OSE
101ifdef VBOX_WITH_VRDP
102 ifeq ($(SDK_VBOX_OPENSSL_INCS),$(SDK_VBOX_OPENSSL_DEFAULT_INCS))
103 subdirs += openssl-0.9.8h
104 endif
105endif
106ifdef VBOX_WITH_MAIN
107 ifdef VBOX_WITH_XPCOM
108 subdirs += xpcom18a4
109 endif
110 # Only build libxml2 if we don't use an external library.
111 ifeq ($(SDK_VBOX_LIBXML2_INCS),$(PATH_ROOT)/src/libs/libxml2-2.6.30/include)
112 subdirs += libxml2-2.6.30
113 endif
114 # Only build libxslt if we don't use an external library.
115 ifeq ($(SDK_VBOX_LIBXSLT_INCS),$(PATH_ROOT)/src/libs/libxslt-1.1.22)
116 subdirs += libxslt-1.1.22
117 endif
118 # FFmpeg for test videos
119 ifndef VBOX_OSE
120 ifdef VBOX_WITH_FFMPEG
121 if1of ($(KBUILD_TARGET), darwin)
122 subdirs += ffmpeg-20060710
123 endif
124 endif
125 endif
126endif
127
128ifdef VBOX_ONLY_DOCS
129 subdirs := $(filter liblzf-1.51 zlib-1.2.1 kStuff, $(subdirs))
130endif
131
132ifdef VBOX_ONLY_SDK
133 subdirs := $(filter-out liblzf-1.51 zlib-1.2.1 libpng-1.2.8 openssl-0.9.7e openssl-0.9.8h ffmpeg-20060710, $(subdirs))
134endif
135
136# optimized walking
137SUBDIRS_BLDPROGS = $(filter xpcom18a4,$(subdirs))
138SUBDIRS_LIBRARIES = $(subdirs)
139SUBDIRS_BINARIES = $(filter xpcom18a4,$(subdirs))
140SUBDIRS_DLLS = $(filter xpcom18a4 ffmpeg-20060710,$(subdirs))
141SUBDIRS_OTHERS = $(filter xpcom18a4,$(subdirs))
142SUBDIRS_INSTALLS = $(filter xpcom18a4,$(subdirs))
143SUBDIRS_CLEAN = $(subdirs)
144SUBDIRS_NOTHING = $(subdirs)
145
146include $(KBUILD_PATH)/footer.kmk
147endif # !VBOX_SINGLE_MAKEFILE
148
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette