makefile.tstLinuxC revision 1c7fb1d12c92bbfa073ed7dfd79b983850e15912
# $Revision$
## @file makefile.tstLinuxC
# Makefile for sample program illustrating use of C binding for XPCOM.
#
#
# Copyright (C) 2009 Sun Microsystems, Inc.
#
# This file is part of VirtualBox Open Source Edition (OSE), as
# available from http://www.virtualbox.org. This file is free software;
# you can redistribute it and/or modify it under the terms of the GNU
# General Public License (GPL) as published by the Free Software
# Foundation, in version 2 as it comes in the "COPYING" file of the
# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
#
# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa
# Clara, CA 95054 USA or visit http://www.sun.com if you need
# additional information or have any questions.
#
PATH_BIN = /opt/VirtualBox
INCS_XPCOM = -I../../include
GLUE_DIR = ..
GLUE_INC = -I..
CC = gcc
CFLAGS = -g -Wall
.PHONY: all
all: tstLinuxC tstXPCOMCGlue
.PHONY: clean
clean:
rm -f tstLinuxC.o tstLinuxC tstXPCOMCGlue.o tstXPCOMCGlue VBoxXPCOMCGlue.o
tstLinuxC: tstLinuxC.o
$(CC) -o $@ $^ -Xlinker -rpath -Xlinker $(PATH_BIN) $(PATH_BIN)/VBoxXPCOMC.so
tstLinuxC.o: tstLinuxC.c
$(CC) $(CFLAGS) $(INCS_XPCOM) -o $@ -c $<
tstXPCOMCGlue: tstXPCOMCGlue.o VBoxXPCOMCGlue.o
$(CC) -o $@ $^ -ldl
tstXPCOMCGlue.o: tstXPCOMCGlue.c
$(CC) $(CFLAGS) $(INCS_XPCOM) $(GLUE_INC) -o $@ -c $<
VBoxXPCOMCGlue.o: $(GLUE_DIR)/VBoxXPCOMCGlue.c
$(CC) $(CFLAGS) $(INCS_XPCOM) $(GLUE_INC) -o $@ -c $<