CASA/c_gui/Makefile.am

144 lines
4.1 KiB
Makefile

#######################################################################
#
# Copyright (C) 2006 Novell, Inc.
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public
# License as published by the Free Software Foundation; either
# version 2 of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU General Public
# License along with this program; if not, write to the Free
# Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
#
#
#######################################################################
if DEBUG
TARGET_CFG = Debug
CFLAGS += -v -w
CS_EXTRA_FLAGS = $(CSCFLAGS_DEBUG)
else
TARGET_CFG = Release
endif
SUBDIRS =
DIST_SUBDIRS =
EXTRA_DIST = $(CSFILES) *.sh CASAManager.* help/en/*.htm help/en/*.gif \
images/*.png images/*.ico images/*.glade* \
images/*.bmp
#EXTRA_DIST = $(CSFILES) help/en help/en/*.htm help/en/*.gif \
# images/*.png images/*.ico images/*.glade* \
# images/*.bmp
CASAROOT = ..
if X86
CASALIBDIR = $(CASAROOT)/lib64/$(TARGET_CFG)
else
CASALIBDIR = $(CASAROOT)/lib/$(TARGET_CFG)
endif
if X86
CASABINDIR = $(CASAROOT)/bin64
else
CASABINDIR = $(CASAROOT)/bin
endif
# handle Mono secondary dependencies
export MONO_PATH := $(MONO_PATH)
PLATFORMINDEPENDENTSOURCEDIR =
PLATFORMDEPENDENTSOURCEDIR = .
MODULE_NAME =CASAManager
MODULE_EXT =exe
CSFILES =$(srcdir)/AssemblyInfo.cs \
$(srcdir)/CasaMain.cs \
$(srcdir)/CasaTray.cs \
$(srcdir)/TrayLib.cs \
$(srcdir)/Firefox.cs \
$(srcdir)/GnomeKeyring.cs \
$(srcdir)/KdeWallet.cs \
$(srcdir)/Logger.cs \
$(srcdir)/MiCasa.cs \
$(srcdir)/Mozilla.cs \
$(srcdir)/Store.cs \
$(srcdir)/StoreDataInterface.cs \
$(srcdir)/StorePolicyInterface.cs \
$(srcdir)/CommonGUI.cs \
$(srcdir)/Common.cs
CSFILES_CSC := $(subst /,$(SEP),$(CSFILES))
CS_FLAGS = -pkg:gtk-sharp -pkg:glade-sharp -d:LINUX -nowarn:169
CS_RESOURCES =
CS_LIBS =$(CASALIBDIR)/Novell.CASA.Common.dll \
$(CASALIBDIR)/Novell.CASA.miCASAWrapper.dll \
$(CASALIBDIR)/Novell.CASA.A-D.dll \
$(CASALIBDIR)/Novell.CASA.CASAPolicy.dll
CS_LIBPATH = ../c_micasad/test/dependencies \
$(CASALIBDIR)
if X86
OBJDIR = ./$(TARGET_CFG)/lib64
else
OBJDIR = ./$(TARGET_CFG)/lib
endif
#OBJS = $(addprefix $(OBJDIR)/, $(CSFILES:%.dll=%.cs))
CUR_DIR := $(shell pwd)
all: $(OBJDIR)/$(MODULE_NAME).$(MODULE_EXT)
#
# Pattern based rules.
#
vpath %.c $(PLATFORMDEPENDENTSOURCEDIR) $(PLATFORMINDEPENDENTSOURCEDIR)
vpath %.cpp $(PLATFORMDEPENDENTSOURCEDIR) $(PLATFORMINDEPENDENTSOURCEDIR)
vpath %.cs $(PLATFORMDEPENDENTSOURCEDIR) $(PLATFORMINDEPENDENTSOURCEDIR)
$(OBJDIR)/$(MODULE_NAME).$(MODULE_EXT): $(OBJDIR) $(CSFILES)
$(CSC) $(CS_FLAGS) $(CS_EXTRA_FLAGS) $(CS_LIBPATH:%=-lib:%) $(CS_LIBS:%=/r:%) -out:$@ $(CSFILES_CSC)
cp -f $(OBJDIR)/$(MODULE_NAME).$(MODULE_EXT) $(CASABINDIR)/$(TARGET_CFG)/$(MODULE_NAME).$(MODULE_EXT)
#$(OBJDIR)/$(MODULE_NAME).$(MODULE_EXT): $(OBJDIR) $(OBJS)
# @echo [======== Linking $@ ========]
# $(LINK) -o $@ $(LDFLAGS) $(OBJS) $(LIBS)
# cp -f $(OBJDIR)/$(MODULE_NAME).$(MODULE_EXT) $(CASALIBDIR)/$(TARGET_CFG)/$(MODULE_NAME).$(MODULE_EXT)
$(OBJDIR):
[ -d $(OBJDIR) ] || mkdir -p $(OBJDIR)
[ -d $(CASABINDIR) ] || mkdir -p $(CASABINDIR)
[ -d $(CASABINDIR)/$(TARGET_CFG) ] || mkdir -p $(CASABINDIR)/$(TARGET_CFG)
install-exec-local: $(OBJDIR)/$(MODULE_NAME).$(MODULE_EXT)
$(mkinstalldirs) $(DESTDIR)$(libdir)
$(INSTALL_PROGRAM) $(OBJDIR)/$(MODULE_NAME).$(MODULE_EXT) $(DESTDIR)$(libdir)/
uninstall-local:
cd $(DESTDIR)$(libdir); rm -f $(OBJDIR)/$(MODULE_NAME).$(MODULE_EXT)
rmdir $(DESTDIR)$(libdir)
#installcheck-local: install
# $(mkinstalldirs) $(DESTDIR)$(libdir)
# $(INSTALL_PROGRAM) $(DESTDIR)$(libdir)
# cd $(DESTDIR)$(libdir); $(MONO)
clean-local:
if [ -d $(TARGET_CFG) ]; then rm -rf $(TARGET_CFG); fi
distclean-local:
maintainer-clean-local:
rm -f Makefile.in