mirror of
https://github.com/rn10950/RetroZilla.git
synced 2024-11-09 17:30:18 +01:00
351 lines
9.2 KiB
Makefile
351 lines
9.2 KiB
Makefile
|
#
|
||
|
# ***** BEGIN LICENSE BLOCK *****
|
||
|
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
|
||
|
#
|
||
|
# The contents of this file are subject to the Mozilla Public License Version
|
||
|
# 1.1 (the "License"); you may not use this file except in compliance with
|
||
|
# the License. You may obtain a copy of the License at
|
||
|
# http://www.mozilla.org/MPL/
|
||
|
#
|
||
|
# Software distributed under the License is distributed on an "AS IS" basis,
|
||
|
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
||
|
# for the specific language governing rights and limitations under the
|
||
|
# License.
|
||
|
#
|
||
|
# The Original Code is Mozilla Communicator client code, released
|
||
|
# March 31, 1998.
|
||
|
#
|
||
|
# The Initial Developer of the Original Code is
|
||
|
# Netscape Communications Corporation.
|
||
|
# Portions created by the Initial Developer are Copyright (C) 1998-1999
|
||
|
# the Initial Developer. All Rights Reserved.
|
||
|
#
|
||
|
# Contributor(s):
|
||
|
#
|
||
|
# Alternatively, the contents of this file may be used under the terms of
|
||
|
# either the GNU General Public License Version 2 or later (the "GPL"), or
|
||
|
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
|
||
|
# in which case the provisions of the GPL or the LGPL are applicable instead
|
||
|
# of those above. If you wish to allow use of your version of this file only
|
||
|
# under the terms of either the GPL or the LGPL, and not to allow others to
|
||
|
# use your version of this file under the terms of the MPL, indicate your
|
||
|
# decision by deleting the provisions above and replace them with the notice
|
||
|
# and other provisions required by the GPL or the LGPL. If you do not delete
|
||
|
# the provisions above, a recipient may use your version of this file under
|
||
|
# the terms of any one of the MPL, the GPL or the LGPL.
|
||
|
#
|
||
|
# ***** END LICENSE BLOCK *****
|
||
|
|
||
|
MOD_DEPTH = ../../..
|
||
|
srcdir = @srcdir@
|
||
|
topsrcdir = @top_srcdir@
|
||
|
|
||
|
include $(MOD_DEPTH)/config/autoconf.mk
|
||
|
include $(topsrcdir)/build.mk
|
||
|
|
||
|
SRCS = abandon.c \
|
||
|
add.c \
|
||
|
bind.c \
|
||
|
cache.c \
|
||
|
charray.c \
|
||
|
charset.c \
|
||
|
compare.c \
|
||
|
compat.c \
|
||
|
control.c \
|
||
|
countvalues.c \
|
||
|
delete.c \
|
||
|
disptmpl.c \
|
||
|
dsparse.c \
|
||
|
error.c \
|
||
|
extendop.c \
|
||
|
free.c \
|
||
|
freevalues.c \
|
||
|
friendly.c \
|
||
|
getattr.c \
|
||
|
getdn.c \
|
||
|
getdxbyname.c \
|
||
|
getentry.c \
|
||
|
getfilter.c \
|
||
|
getoption.c \
|
||
|
getvalues.c \
|
||
|
memcache.c \
|
||
|
message.c \
|
||
|
modify.c \
|
||
|
open.c \
|
||
|
os-ip.c \
|
||
|
proxyauthctrl.c \
|
||
|
psearch.c \
|
||
|
referral.c \
|
||
|
regex.c \
|
||
|
rename.c \
|
||
|
request.c \
|
||
|
reslist.c \
|
||
|
result.c \
|
||
|
saslbind.c \
|
||
|
sbind.c \
|
||
|
search.c \
|
||
|
setoption.c \
|
||
|
sort.c \
|
||
|
sortctrl.c \
|
||
|
srchpref.c \
|
||
|
tmplout.c \
|
||
|
ufn.c \
|
||
|
unbind.c \
|
||
|
unescape.c \
|
||
|
url.c \
|
||
|
utf8.c \
|
||
|
vlistctrl.c
|
||
|
|
||
|
ifeq ($(OS_ARCH),WINNT)
|
||
|
SRCS += dllmain.c \
|
||
|
mozock.c
|
||
|
endif
|
||
|
RELEASE_LIBS = $(SHARED_LIBRARY) $(DLLLDAP)
|
||
|
|
||
|
REALOBJS = $(SRCS:.c=.$(OBJ_SUFFIX))
|
||
|
OBJS = $(addprefix $(OBJDIR_NAME)/, $(REALOBJS))
|
||
|
|
||
|
DISTHDIR = $(DIST)/public/ldap
|
||
|
HDIR = $(topsrcdir)/ldap/include
|
||
|
|
||
|
LIBLDAP = $(addprefix $(OBJDIR_NAME)/, $(LIB_PREFIX)$(LDAP_LIBNAME).$(LIB_SUFFIX))
|
||
|
DLLLDAP = $(addprefix $(OBJDIR_NAME)/, $(LIB_PREFIX)$(LDAP_LIBNAME).$(DLL_SUFFIX))
|
||
|
|
||
|
INSTALLDIR = $(DIST)/$(OBJDIR_NAME)
|
||
|
|
||
|
include $(topsrcdir)/config/rules.mk
|
||
|
|
||
|
GARBAGE += $(LIBLDAP) $(DLLLDAP)
|
||
|
|
||
|
LOCAL_INCLUDES = -I$(PUBLIC)/nspr
|
||
|
INCLUDES += -I$(DISTHDIR) -I$(HDIR) -I$(INSTALLDIR)/public
|
||
|
DEFINES += $(DEFS) -UMOZILLA_CLIENT
|
||
|
|
||
|
ifdef USE_PTHREADS
|
||
|
DEFINES += -DUSE_PTHREADS
|
||
|
endif
|
||
|
|
||
|
ifeq ($(OS_ARCH),WINNT)
|
||
|
PLATFORMCFLAGS = -DNEEDPROTOS
|
||
|
else
|
||
|
PLATFORMCFLAGS = -DUSE_WAITPID -DNEEDPROTOS
|
||
|
endif
|
||
|
THREADS =
|
||
|
THREADSLIB =
|
||
|
|
||
|
ETCFILENAMES = ldapfilter.conf \
|
||
|
ldapfriendly \
|
||
|
ldapsearchprefs.conf \
|
||
|
ldaptemplates.conf \
|
||
|
$(NULL)
|
||
|
|
||
|
ETCDIR = $(INSTALLDIR)/etc
|
||
|
ETCFILES = $(addprefix $(srcdir)/, $(ETCFILENAMES))
|
||
|
|
||
|
#
|
||
|
# if you want things to run in a different directory from where they
|
||
|
# are installed, set this accordingly (this path gets compiled into a
|
||
|
# few binaries). otherwise, leave it alone.
|
||
|
#
|
||
|
RUNTIMEETCDIR = $(ETCDIR)
|
||
|
|
||
|
#
|
||
|
# shared library symbol export definitions
|
||
|
#
|
||
|
ifeq ($(USE_DLL_EXPORTS_FILE), 1)
|
||
|
ifeq ($(OS_ARCH), WINNT)
|
||
|
GENEXPORTS=cmd /c $(PERL) $(topsrcdir)/ldap/build/genexports.pl
|
||
|
else
|
||
|
GENEXPORTS=$(PERL) $(topsrcdir)/ldap/build/genexports.pl
|
||
|
endif
|
||
|
|
||
|
# variable definitions for exported symbols
|
||
|
ifeq ($(OS_ARCH), WINNT)
|
||
|
LDAP_EXPORT_DEFS= $(win_srcdir)/../msdos/winsock/nsldap32.def
|
||
|
else
|
||
|
ifeq ($(OS_ARCH), OS2)
|
||
|
LDAP_EXPORT_DEFS= $(OBJDIR_NAME)/libldap.def
|
||
|
else
|
||
|
LDAP_EXPORT_DEFS= $(OBJDIR_NAME)/libldap.exp
|
||
|
endif
|
||
|
GARBAGE += $(LDAP_EXPORT_DEFS)
|
||
|
endif
|
||
|
|
||
|
LDAP_EXPORT_FLAGS=$(addprefix $(DLLEXPORTS_PREFIX), $(LDAP_EXPORT_DEFS))
|
||
|
|
||
|
GENEXPARGS=$(BUILD_DEBUG) $(LDAPVERS_SUFFIX) $(LDAPVERS)
|
||
|
endif # USE_DLL_EXPORTS_FILE
|
||
|
|
||
|
ifeq ($(OS_ARCH), SunOS)
|
||
|
EXTRA_LIBS = -L$(dist_libdir) -l$(LBER_LIBNAME)
|
||
|
endif
|
||
|
|
||
|
ifeq ($(OS_ARCH), IRIX)
|
||
|
EXTRA_LIBS = -L$(dist_libdir) -l$(LBER_LIBNAME) $(OS_LIBS) -lc
|
||
|
endif
|
||
|
|
||
|
ifeq ($(OS_ARCH), Linux)
|
||
|
EXTRA_LIBS = -L$(dist_libdir) -l$(LBER_LIBNAME)
|
||
|
endif
|
||
|
|
||
|
ifeq ($(OS_ARCH), WINNT)
|
||
|
ifdef NS_USE_GCC
|
||
|
EXTRA_DLL_LIBS=-L$(dist_libdir) -l$(LBER_LIBNAME)
|
||
|
else
|
||
|
EXTRA_LIBS =wsock32.lib kernel32.lib user32.lib gdi32.lib winspool.lib \
|
||
|
comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib \
|
||
|
rpcrt4.lib uuid.lib odbc32.lib odbccp32.lib winmm.lib
|
||
|
EXTRA_LIBS += $(dist_libdir)/$(LDIF_LIBNAME).lib
|
||
|
EXTRA_LIBS += $(dist_libdir)/$(LBER_LIBNAME).lib
|
||
|
endif
|
||
|
endif
|
||
|
|
||
|
ifeq ($(MOZ_OS2_TOOLS),VACPP)
|
||
|
EXTRA_LIBS = $(dist_libdir)/$(LDIF_LIBNAME).lib
|
||
|
EXTRA_LIBS += $(dist_libdir)/$(LBER_LIBNAME).lib
|
||
|
EXTRA_LIBS += $(OS_LIBS)
|
||
|
endif
|
||
|
ifeq ($(MOZ_OS2_TOOLS),EMX)
|
||
|
EXTRA_LIBS = -L$(dist_libdir) -l$(LBER_LIBNAME) $(OS_LIBS)
|
||
|
endif
|
||
|
|
||
|
ifeq ($(OS_ARCH), OSF1)
|
||
|
EXTRA_LIBS = -L$(dist_libdir) -l$(LBER_LIBNAME)
|
||
|
EXTRA_LIBS += -L/usr/lib -lcxx -lpthread -lrt -lmach -lexc
|
||
|
endif
|
||
|
|
||
|
ifeq ($(OS_ARCH), AIX)
|
||
|
EXTRA_LIBS = -L$(dist_libdir) -l$(LBER_LIBNAME)
|
||
|
EXTRA_LIBS += -ldl -brtl -lpthreads -lc_r -lm
|
||
|
endif
|
||
|
|
||
|
ifeq ($(OS_ARCH), HP-UX)
|
||
|
EXTRA_LIBS = -L$(dist_libdir) -l$(LBER_LIBNAME)
|
||
|
ifdef USE_PTHREADS
|
||
|
EXTRA_LIBS += -ldld -lm -lpthread
|
||
|
else
|
||
|
EXTRA_LIBS += -ldld -lm
|
||
|
endif
|
||
|
endif
|
||
|
|
||
|
ifeq ($(OS_ARCH), Darwin)
|
||
|
EXTRA_LIBS = -L$(dist_libdir) -l$(LBER_LIBNAME)
|
||
|
endif
|
||
|
|
||
|
ifeq ($(OS_ARCH), OpenVMS)
|
||
|
EXTRA_LIBS = -L$(dist_libdir) -l$(LBER_LIBNAME) $(OS_LIBS)
|
||
|
SHARED_LIBRARY_LIBS = $(dist_libdir)/lib$(LBER_LIBNAME).a
|
||
|
endif
|
||
|
|
||
|
ifeq ($(OS_ARCH), BeOS)
|
||
|
EXTRA_LIBS = -L$(dist_libdir) -l$(LBER_LIBNAME) -lbe
|
||
|
endif
|
||
|
|
||
|
ifeq ($(OS_ARCH), NetBSD)
|
||
|
EXTRA_LIBS = -L$(dist_libdir) -l$(LBER_LIBNAME)
|
||
|
endif
|
||
|
|
||
|
ifeq ($(OS_ARCH), OpenBSD)
|
||
|
EXTRA_LIBS = -L$(dist_libdir) -l$(LBER_LIBNAME) -pthread
|
||
|
endif
|
||
|
|
||
|
###########################################################################
|
||
|
|
||
|
ifeq ($(USE_DLL_EXPORTS_FILE), 1)
|
||
|
# recursive gmake rule to create exported symbols file
|
||
|
$(LDAP_EXPORT_DEFS):: $(srcdir)/../libldap.ex
|
||
|
ifeq ($(OS_ARCH), WINNT)
|
||
|
$(GENEXPORTS) Win32 Standard $< $(GENEXPARGS) > $@
|
||
|
else
|
||
|
ifeq ($(OS_ARCH), OS2)
|
||
|
echo LIBRARY $(LDAP_LIBNAME) INITINSTANCE TERMINSTANCE > $@
|
||
|
echo PROTMODE >> $@
|
||
|
echo CODE LOADONCALL MOVEABLE DISCARDABLE >> $@
|
||
|
echo DATA PRELOAD MOVEABLE MULTIPLE NONSHARED >> $@
|
||
|
echo EXPORTS >> $@
|
||
|
$(GENEXPORTS) $(OS_ARCH) Standard $< $(GENEXPARGS) >> $@
|
||
|
else
|
||
|
$(GENEXPORTS) $(OS_ARCH) Standard $< $(GENEXPARGS) > $@
|
||
|
endif
|
||
|
endif
|
||
|
endif # USE_DLL_EXPORTS_FILE
|
||
|
|
||
|
versiont.c: Makefile.client Version.c
|
||
|
@$(RM) $@
|
||
|
@(u="$${USER-root}" v="$(shell cat ../../build/version)" d="$(shell pwd)" \
|
||
|
h="$(shell hostname)" t="$(shell date)"; $(SED) -e "s|%WHEN%|$${t}|" \
|
||
|
-e "s|%WHOANDWHERE%|$${u}@$${h}:$${d}|" \
|
||
|
-e "s|%VERSION%|$${v}|" \
|
||
|
< Version.c > $@)
|
||
|
|
||
|
# Set the default sources for the export target
|
||
|
EXPDEPS = $(OBJDIR_NAME) $(LIBDIR) $(OBJS) $(LIBLDAP) $(DLLLDAP)
|
||
|
# Remove the LIB source if on win32 and using MSVC
|
||
|
# This avoids problems with -jX builds where 'link' will make both the
|
||
|
# .dll and .lib files in one pass
|
||
|
ifeq ($(OS_ARCH), WINNT)
|
||
|
ifeq ($(LD),link)
|
||
|
EXPDEPS = $(OBJDIR_NAME) $(LIBDIR) $(OBJS) $(DLLLDAP)
|
||
|
endif
|
||
|
endif
|
||
|
|
||
|
export:: $(EXPDEPS)
|
||
|
|
||
|
ltest:: $(LIBLDAP) test.o
|
||
|
$(LINK_EXE) test.o
|
||
|
|
||
|
$(LIBDIR):
|
||
|
$(MKDIR) $(LIBDIR)
|
||
|
|
||
|
$(LIBLDAP): $(OBJS) $(LIBDIR) $(LDAP_EXPORT_DEFS)
|
||
|
@echo ======= making $(LIBLDAP)
|
||
|
ifdef SO_FILES_TO_REMOVE
|
||
|
-$(RM) $(SO_FILES_TO_REMOVE)
|
||
|
endif
|
||
|
ifneq (,$(filter AIX Linux HP-UX Darwin BeOS QNX NetBSD OSF1 OpenBSD, $(OS_ARCH)))
|
||
|
$(LINK_LIB) ../liblber/$(OBJDIR_NAME)/*.a
|
||
|
else
|
||
|
ifeq ($(OS_ARCH),OS2)
|
||
|
# create import library for OS/2
|
||
|
rm -f $@
|
||
|
$(IMPLIB) $@ $(LDAP_EXPORT_DEFS)
|
||
|
else
|
||
|
$(LINK_LIB) $(EXTRA_LIBS)
|
||
|
endif
|
||
|
endif
|
||
|
|
||
|
$(DLLLDAP): $(OBJS) $(LIBDIR) $(LDAP_EXPORT_DEFS)
|
||
|
@echo ======= making $(DLLLDAP)
|
||
|
ifdef SO_FILES_TO_REMOVE
|
||
|
-$(RM) $(SO_FILES_TO_REMOVE)
|
||
|
endif
|
||
|
$(LINK_DLL) $(LDAP_EXPORT_FLAGS) $(EXTRA_LIBS)
|
||
|
|
||
|
veryclean:: clean
|
||
|
|
||
|
# the $(dist_bindir) line is for the mozilla client, which for reasons
|
||
|
# unknown wants shared libraries in /bin also
|
||
|
#
|
||
|
# Set the default sources for the export target
|
||
|
EXPDEPS2 = $(LIBLDAP) $(DLLLDAP)
|
||
|
# Remove the LIB source if on win32 and using MSVC
|
||
|
# This avoids problems with -jX builds where 'link' will make both the
|
||
|
# .dll and .lib files in one pass
|
||
|
ifeq ($(OS_ARCH), WINNT)
|
||
|
ifeq ($(LD),link)
|
||
|
EXPDEPS2 = $(DLLLDAP)
|
||
|
endif
|
||
|
endif
|
||
|
|
||
|
export:: $(EXPDEPS2)
|
||
|
ifdef MKSHLIB
|
||
|
$(INSTALL) -m 444 $(LIBLDAP) $(dist_libdir)
|
||
|
$(INSTALL) -m 444 $(DLLLDAP) $(dist_libdir)
|
||
|
$(INSTALL) -m 444 $(DLLLDAP) $(dist_bindir)
|
||
|
endif
|
||
|
ifeq ($(OS_ARCH), WINNT)
|
||
|
$(INSTALL) -m 444 $(LIBLDAP) $(dist_libdir)
|
||
|
$(INSTALL) -m 444 $(DLLLDAP) $(dist_libdir)
|
||
|
endif
|
||
|
$(INSTALL) -m 444 $(ETCFILES) $(ETCDIR)
|