gecko-dev/config/Makefile
ramiro 4c3f9250dd Make sure the client can properly link with motif 2.1 and gnu libc2 on
linux.  Also link with libBrokenLocale.so since locale support in
motif 2.1 with GLIBC is currently broken.
1998-05-03 06:36:27 +00:00

132 lines
3.4 KiB
Makefile

# -*- Mode: Makefile -*-
#
# The contents of this file are subject to the Netscape Public License
# Version 1.0 (the "NPL"); you may not use this file except in
# compliance with the NPL. You may obtain a copy of the NPL at
# http://www.mozilla.org/NPL/
#
# Software distributed under the NPL is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
# for the specific language governing rights and limitations under the
# NPL.
#
# The Initial Developer of this code under the NPL is Netscape
# Communications Corporation. Portions created by Netscape are
# Copyright (C) 1998 Netscape Communications Corporation. All Rights
# Reserved.
#
DEPTH = ..
HSRCS = pathsub.h
CSRCS = nsinstall.c pathsub.c
ifeq ($(subst /,_,$(shell uname -s)),OS2)
DIRS = os2
LOCAL_INCLUDES += -Ios2
HSRCS += dirent.h getopt.h
endif
PLSRCS = nfspwd.pl revdepth.pl
TARGETS = $(PROGRAM) $(PLSRCS:.pl=)
ifneq ($(subst /,_,$(shell uname -s)),WINNT)
PROGRAM = nsinstall$(BIN_SUFFIX)
TARGETS += $(OBJDIR)/bsdecho$(BIN_SUFFIX)
endif
# IMPORTANT: Disable NSBUILDROOT for this directory only, otherwise we have
# a recursive rule for finding nsinstall and the perl scripts
ifdef NSBUILDROOT
override NSBUILDROOT :=
endif
include $(DEPTH)/config/rules.mk
ifeq ($(OS_ARCH)$(OS_RELEASE),SunOS4.1)
INCLUDES += -I../nsprpub/pr/include/md
endif
ifeq ($(OS_ARCH)$(OS_RELEASE),IRIX5)
TARGETS += $(OBJDIR)/gtscc$(BIN_SUFFIX)
endif
# On linux we need to generake a motif.mk file which has special flags
# for different motif versions and/or broken libraries.
#
# Currently there is only 2 flags:
#
# MOZILLA_XM_2_1_PRINT_SHELL_FLAGS: X Print Shell Extension available
# starting with X11R6.3 and needed by motif 2.1.
#
# MOZILLA_XM_2_1_BROKEN_LOCALE_FLAGS: Needed because of currently
# broken locale support in motif 2.1 when linked with gnu libc2.
#
# Please direct questions about motif and linux to ramiro@netscape.com.
#
ifeq ($(OS_ARCH),Linux)
export:: motif.mk
motif.mk:
@rm -f $@
# Check for motif 2.1 which needs the X Print Shell extension (-lXp)
#
# Also check for /lib/libc.so.6 (GNU libc2). If we are using GLIBC2 with
# Motif 2.1, we need to check for /usr/lib/libBrokenLocale.so. At this
# time locale support on motif 2.1 seems to break with GLIBC2.
ifeq ($(shell $(DEPTH)/config/xmversion.sh),2.1)
@echo "MOZILLA_XM_2_1_PRINT_SHELL_FLAGS = -lXp" > $@
@if test -f /lib/libc.so.6 -a -f /usr/lib/libBrokenLocale.so; then \
echo "MOZILLA_XM_2_1_BROKEN_LOCALE_FLAGS = -lBrokenLocale" >> $@; \
fi
else
@echo "" > $@
endif
endif
# Redefine MAKE_OBJDIR for just this directory
define MAKE_OBJDIR
if test ! -d $(@D); then rm -rf $(@D); mkdir $(@D); fi
endef
export:: $(TARGETS)
ifeq ($(OS_ARCH),OS2)
# could not get bsdecho rules to work implicitly, so here is explicit ones
$(OBJDIR)/bsdecho.o: bsdecho.c
@$(MAKE_OBJDIR)
$(CC) -Fo$@ $(CFLAGS) -c $<
$(OBJDIR)/bsdecho$(BIN_SUFFIX): $(OBJDIR)/bsdecho.o
@$(MAKE_OBJDIR)
$(LINK_EXE) -OUT:$@ $< $(LDFLAGS)
$(INSTALL) -m 444 $@ $(DIST)/bin
else
$(OBJDIR)/bsdecho$(BIN_SUFFIX): $(OBJDIR)/bsdecho.o
@$(MAKE_OBJDIR)
$(CCF) $(LDFLAGS) -o $@ $<
$(INSTALL) -m 444 $@ $(DIST)/bin
endif
$(OBJDIR)/gtscc$(BIN_SUFFIX): $(OBJDIR)/gtscc.o
@$(MAKE_OBJDIR)
$(CCF) $(LDFLAGS) -o $@ $< -lelf
$(INSTALL) -m 444 $@ $(DIST)/bin
ifdef MKDEPEND_DIR
clean clobber realclean clobber_all::
cd $(MKDEPEND_DIR); $(MAKE) $@
endif
# For the continuous build scripts.
show_objname:
@echo $(OBJDIR)
.PHONY: show_objname