source: svn/newcon3bcm2_21bu/nexus/app/Makefile.inc

Last change on this file was 76, checked in by megakiss, 10 years ago

1W 대기전력을 만족시키기 위하여 POWEROFF시 튜너를 Standby 상태로 함

  • Property svn:executable set to *
File size: 4.4 KB
Line 
1############################################################
2#         (c)2003-2009 Broadcom Corporation
3#
4#  This program is the proprietary software of Broadcom Corporation and/or its licensors,
5#  and may only be used, duplicated, modified or distributed pursuant to the terms and
6#  conditions of a separate, written license agreement executed between you and Broadcom
7#  (an "Authorized License").  Except as set forth in an Authorized License, Broadcom grants
8#  no license (express or implied), right to use, or waiver of any kind with respect to the
9#  Software, and Broadcom expressly reserves all rights in and to the Software and all
10#  intellectual property rights therein.  IF YOU HAVE NO AUTHORIZED LICENSE, THEN YOU
11#  HAVE NO RIGHT TO USE THIS SOFTWARE IN ANY WAY, AND SHOULD IMMEDIATELY
12#  NOTIFY BROADCOM AND DISCONTINUE ALL USE OF THE SOFTWARE.
13#
14#  Except as expressly set forth in the Authorized License,
15#
16#  1.     This program, including its structure, sequence and organization, constitutes the valuable trade
17#  secrets of Broadcom, and you shall use all reasonable efforts to protect the confidentiality thereof,
18#  and to use this information only in connection with your use of Broadcom integrated circuit products.
19#
20#  2.     TO THE MAXIMUM EXTENT PERMITTED BY LAW, THE SOFTWARE IS PROVIDED "AS IS"
21#  AND WITH ALL FAULTS AND BROADCOM MAKES NO PROMISES, REPRESENTATIONS OR
22#  WARRANTIES, EITHER EXPRESS, IMPLIED, STATUTORY, OR OTHERWISE, WITH RESPECT TO
23#  THE SOFTWARE.  BROADCOM SPECIFICALLY DISCLAIMS ANY AND ALL IMPLIED WARRANTIES
24#  OF TITLE, MERCHANTABILITY, NONINFRINGEMENT, FITNESS FOR A PARTICULAR PURPOSE,
25#  LACK OF VIRUSES, ACCURACY OR COMPLETENESS, QUIET ENJOYMENT, QUIET POSSESSION
26#  OR CORRESPONDENCE TO DESCRIPTION. YOU ASSUME THE ENTIRE RISK ARISING OUT OF
27#  USE OR PERFORMANCE OF THE SOFTWARE.
28#
29#  3.     TO THE MAXIMUM EXTENT PERMITTED BY LAW, IN NO EVENT SHALL BROADCOM OR ITS
30#  LICENSORS BE LIABLE FOR (i) CONSEQUENTIAL, INCIDENTAL, SPECIAL, INDIRECT, OR
31#  EXEMPLARY DAMAGES WHATSOEVER ARISING OUT OF OR IN ANY WAY RELATING TO YOUR
32#  USE OF OR INABILITY TO USE THE SOFTWARE EVEN IF BROADCOM HAS BEEN ADVISED OF
33#  THE POSSIBILITY OF SUCH DAMAGES; OR (ii) ANY AMOUNT IN EXCESS OF THE AMOUNT
34#  ACTUALLY PAID FOR THE SOFTWARE ITSELF OR U.S. $1, WHICHEVER IS GREATER. THESE
35#  LIMITATIONS SHALL APPLY NOTWITHSTANDING ANY FAILURE OF ESSENTIAL PURPOSE OF
36#  ANY LIMITED REMEDY.
37#
38# $brcm_Workfile:  $
39# $brcm_Revision:  $
40# $brcm_Date:  $
41#
42# Module Description:
43#
44# Revision History:
45#
46# Created: 09/28/2009 by Jeff Fisher
47#
48# $brcm_Log:  $
49#
50#
51############################################################
52
53ifeq ($(B_REFSW_OS),vxworks)
54# VxWorks needs a wrapper function to call main.
55VXOBJS = ../vxworks_cmd.o
56# We like to use .out for loadable objects.
57APPSUFFIX = .out
58APPS = $(addsuffix .out, $(THEAPPS))
59else
60ifeq ($(B_REFSW_OS),linuxkernel)
61APPSUFFIX = .ko
62APPS = $(addsuffix ${APPSUFFIX}, $(THEAPPS))
63else
64APPS = $(THEAPPS)
65endif
66endif
67
68.PHONY: api clean
69
70ifeq ($(APP),)
71all: $(APPS)
72$(APPS): api
73else
74all: $(APP)
75$(APP): api
76endif
77
78# For linux builds, link to the correct libraries
79ifeq ($(B_REFSW_OS),linuxkernel)
80LDFLAGS := ${NEXUS_LDFLAGS}
81else
82ifneq ($(findstring linux,$(B_REFSW_OS)),)
83LDFLAGS := -lnexus -L${NEXUS_BIN_DIR} -lpthread -lm $(EXTRA_DRM_OBJS)
84endif
85endif
86
87# For VxWorks builds, link in the nexus library.
88ifeq ($(B_REFSW_OS),vxworks)
89LDFLAGS := -lnexus -L${NEXUS_BIN_DIR}
90endif
91
92# This builds the Nexus api
93api:
94        $(MAKE) -C $(NEXUS_TOP)/build
95
96# This cleans nexus and local apps
97clean:
98        $(MAKE) -C $(NEXUS_TOP)/build clean
99        -$(RM) $(APPS) *.d *.o *.out;
100
101# This is the minimum needed to compile and link with Nexus
102CFLAGS += $(NEXUS_CFLAGS) $(addprefix -I,$(NEXUS_APP_INCLUDE_PATHS)) $(addprefix -D,$(NEXUS_APP_DEFINES))
103
104# Always build with debug
105CFLAGS += -g
106
107ifeq ($(B_REFSW_OS),linuxkernel)
108EXTRA_OBJS := linuxkernel_driver.mod.c
109endif
110
111# Implicit rule for building local apps
112%$(APPSUFFIX): %.c $(EXTRA_OBJS) $(VXOBJS) $(EXTRA_DRM_SRCS)
113        @echo [Compile... $<]
114ifeq ($(B_REFSW_OS),linuxkernel)
115        $(Q_)$(CC) -c $(filter %.c %.s %.o, $^) $(CFLAGS)
116        ${Q_}$(LD) ${LDFLAGS} --strip-debug -r $(patsubst %.c, %.o, $(filter %.c %.s %.o, $^)) ${NEXUS_BIN_DIR}/libnexus.a -o $@
117else
118        $(Q_)$(CC) -o $@ $(filter %.c %.s %.o, $^) $(CFLAGS) $(LDFLAGS)
119endif
120        cp -f $@ ${NEXUS_BIN_DIR}
121
122ifeq ($(B_REFSW_OS),vxworks)
123# Explicit rule for building vxworks wrapper app
124../vxworks_cmd.o: ../vxworks_cmd.c
125        @echo [Compile... $<]
126        $(Q_)$(CC) -o $@ $< $(CFLAGS)
127endif
128
129install: all
130
Note: See TracBrowser for help on using the repository browser.