####################################################################### # # 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. # # Author: Juan Carlos Luciani # ####################################################################### if DEBUG TARGET_CFG = Debug CFLAGS += -v -w DEFINES = -DDBG else TARGET_CFG = Release DEFINES = -DNDEBUG endif # Override the link setting for C++ LINK = g++ SUBDIRS = DIST_SUBDIRS = ROOT = ../../.. LIBDIR = $(ROOT)/$(LIB) BINDIR = $(ROOT)/$(BIN) IBM_JAVA_LIBDIR = /usr/$(LIB)/jvm/jre/bin if LIB64 SUN_JAVA_LIBDIR = /usr/$(LIB)/jvm/jre/lib/amd64/server else SUN_JAVA_LIBDIR = /usr/$(LIB)/jvm/jre/lib/i386/server endif JAVA_INCDIR = /usr/$(LIB)/jvm/java/include # handle Mono secondary dependencies export MONO_PATH := $(MONO_PATH) MODULE_NAME = CasaAuthtokenValidateD CFILES = CPPFILES = server.cpp CSFILES_CSC := INCLUDES = -I. -I$(ROOT)/include -I$(JAVA_INCDIR) -I$(JAVA_INCDIR)/linux RESOURCES = if LIB64 DEFINES += -D_LIB64 endif CFLAGS += -Wno-format-extra-args -fno-strict-aliasing $(INCLUDES) $(DEFINES) CPPFLAGS += -Wno-format-extra-args -fno-strict-aliasing -fPIC $(INCLUDES) $(DEFINES) $(RPM_OPT_FLAGS) if IBM_JVM LIBS += -lpthread -lcasa_s_ipc -ljvm -ljsig -lj9thr23 -ldl LDFLAGS += -L$(LIBDIR)/$(TARGET_CFG) -L$(IBM_JAVA_LIBDIR) -L$(IBM_JAVA_LIBDIR)/classic else LIBS += -lpthread -lcasa_s_ipc -ljvm -ljsig -ldl LDFLAGS += -L$(LIBDIR)/$(TARGET_CFG) -L$(SUN_JAVA_LIBDIR) endif OBJDIR = ./$(TARGET_CFG)/$(LIB) OBJS = $(addprefix $(OBJDIR)/, $(CFILES:%.c=%.o)) $(addprefix $(OBJDIR)/, $(CPPFILES:%.cpp=%.o)) EXTRA_DIST = $(CFILES) $(CPPFILES) *.h CasaAuthtokenValidateD envvars CUR_DIR := $(shell pwd) all: $(OBJDIR)/$(MODULE_NAME) # # Pattern based rules. # vpath %.c . vpath %.cpp . $(OBJDIR)/%.o: %.c $(CC) -c $(CFLAGS) -o $@ $< $(OBJDIR)/%.o: %.cpp $(CC) -c $(CPPFLAGS) -o $@ $< $(OBJDIR)/$(MODULE_NAME): $(OBJDIR) $(OBJS) @echo [======== Linking $@ ========] $(LINK) -o $@ $(LDFLAGS) $(OBJS) $(LIBS) cp -f $(OBJDIR)/$(MODULE_NAME) $(BINDIR)/$(TARGET_CFG)/$(MODULE_NAME) $(OBJDIR): [ -d $(OBJDIR) ] || mkdir -p $(OBJDIR) [ -d $(LIBDIR) ] || mkdir -p $(LIBDIR) [ -d $(LIBDIR)/$(TARGET_CFG) ] || mkdir -p $(LIBDIR)/$(TARGET_CFG) [ -d $(BINDIR) ] || mkdir -p $(BINDIR) [ -d $(BINDIR)/$(TARGET_CFG) ] || mkdir -p $(BINDIR)/$(TARGET_CFG) install-exec-local: $(OBJDIR)/$(MODULE_NAME) $(mkinstalldirs) $(DESTDIR)$(libdir) $(INSTALL_PROGRAM) $(OBJDIR)/$(MODULE_NAME) $(DESTDIR)$(libdir)/ uninstall-local: cd $(DESTDIR)$(libdir); rm -f $(OBJDIR)/$(MODULE_NAME) 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