# # BEGIN COPYRIGHT BLOCK # 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; version 2 of the License. # # 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., 59 Temple # Place, Suite 330, Boston, MA 02111-1307 USA. # # In addition, as a special exception, Red Hat, Inc. gives You the additional # right to link the code of this Program with code not covered under the GNU # General Public License ("Non-GPL Code") and to distribute linked combinations # including the two, subject to the limitations in this paragraph. Non-GPL Code # permitted under this exception must only link to the code of this Program # through those well defined interfaces identified in the file named EXCEPTION # found in the source code files (the "Approved Interfaces"). The files of # Non-GPL Code may instantiate templates or use macros or inline functions from # the Approved Interfaces without causing the resulting work to be covered by # the GNU General Public License. Only Red Hat, Inc. may make changes or # additions to the list of Approved Interfaces. You must obey the GNU General # Public License in all respects for all of the Program code and other code used # in conjunction with the Program except the Non-GPL Code covered by this # exception. If you modify this file, you may extend this exception to your # version of the file, but you are not obligated to do so. If you do not wish to # provide this exception without modification, you must delete this exception # statement from your version and license this file solely under the GPL without # exception. # # # Copyright (C) 2001 Sun Microsystems, Inc. Used by permission. # Copyright (C) 2005 Red Hat, Inc. # All rights reserved. # END COPYRIGHT BLOCK # # # Makefile for libaccess.a # BUILD_ROOT=../.. MODULE=LibAccess include $(BUILD_ROOT)/nsdefs.mk OBJDEST=$(OBJDIR)/lib/libaccess UTESTDEST=$(OBJDIR)/lib/libaccess/utest LEX=flex include $(BUILD_ROOT)/nsconfig.mk MCC_INCLUDE += $(ADMINUTIL_INCLUDE) ifeq ($(ARCH), WINNT) LIBS=$(OBJDIR)/lib/libaccess.lib CC=cl -nologo -MT VALUES=$(OBJDEST)/values.h else VALUES= LIBS=$(OBJDIR)/lib/libaccess.a endif all: $(OBJDEST) $(LIBS) $(OBJDEST): mkdir -p $(OBJDEST) $(UTESTDEST): mkdir -p $(UTESTDEST) OSOBJS = OBJS=$(addprefix $(OBJDEST)/, usi.o \ nseframe.o \ nsautherr.o \ symbols.o \ acltools.o \ aclutil.o \ aclcache.o \ aclflush.o \ authdb.o \ method.o \ ldapacl.o \ register.o \ lasdns.o \ lasip.o \ lastod.o \ usrcache.o \ lasgroup.o \ lasuser.o \ aclspace.o \ acl.tab.o \ acl.yy.o \ acleval.o \ oneeval.o \ access_plhash.o \ aclerror.o \ $(OSOBJS) \ ) MODULE_CFLAGS=-I$(BUILD_ROOT)/include -DACL_LIB_INTERNAL $(TESTFLAGS) ifeq ($(LDAP_NO_LIBLCACHE),1) MODULE_CFLAGS+=-DNO_LIBLCACHE endif LOCAL_DEPS = $(LDAPSDK_DEP) $(LIBS): $(LOCAL_DEPS) $(OBJS) rm -f $@ $(AR) $(OBJS) $(RANLIB) $@ include $(INCLUDE_DEPENDS) # # acl.tab.c acl.tab.h and acl.yy.c should not be generated by the build, # they are checked in and should be pulled from the tree by # default. The following rules are provided in case the grammar or # lexer needs changes. # # # Right now it's best to run yacc on a Solaris machine because the # /usr/lib/yaccpar makes the NT compiler happier. It should work on # other UNIX systems -- but that's what is checked in and tested. # yacc: $(YACC) -d acltext.y sed -f yy-sed y.tab.h > acl.tab.h sed -f yy-sed y.tab.c > acl.tab.cpp rm y.tab.h y.tab.c # # Flex generates a case insenitive lexer. It also provides mechanisms # that allow NSPR to replace it's standard IO routines. The standard UNIX # lex wants to use some stupid library! One would think that lex could # generate all the code it needs just like FLEX. # flex: $(LEX) -i aclscan.l sed -f yy-sed lex.yy.c > acl.yy.cpp rm lex.yy.c