Fixing win32 gmake builds lack of debugging information problem by working around a combination MSVC & cygwin make deficiencies:

* We must use the full path to the source file when calling MSVC so that debugging information shows up in the object files.
* Because of cygwin's use of /cygdrive when using full paths, we must use a cygwin-wrapper script in some cases to allow native win32 programs to use a fully qualified cygwin path.
* We have to call configure using the full path so that $(srcdir) contains the
full path in the Makefiles. The rules have been changed for win32 so that it
always use $(srcdir)/$*.{c,cpp} as the sourcefile name even when the file is in
the cwd.  This works around both the /cygdrive issue and the msvc's path info
optimization.
* We still use the wrapper when calling rc.exe & nsinstall.  nsinstall
frequently takes multiple args and is called all over the tree so changing each
calling site is going to be expensive.	(I'll have to check  the logs again but
I think the rc wrapping can go.)
* nspr & ldap still use the wrappers for all native win32 progs.  Neither nspr
nor ldap uses the acoutput-fast.pl script to speed up the substitution of
@srcdir@ into their Makefiles so, makefile substitution will break if we use
dos-paths.
* In the handful of directories where we copy srcfiles from another directory
in lieu of using VPATHs, we have to now copy those files to $(srcdir) so that
the default rules can find them.
Bug #141834 r=leaf,wtc,dmose,mcs
This commit is contained in:
seawood%netscape.com 2002-06-17 17:09:57 +00:00
Родитель b38ebe63a2
Коммит 6de5b59159
20 изменённых файлов: 169 добавлений и 47 удалений

17
build/cygwin-wrapper Executable file
Просмотреть файл

@ -0,0 +1,17 @@
#!/bin/sh
#
# Stupid wrapper to avoid win32 dospath/cygdrive issues
#
prog=$1
shift
if test -z "$prog"; then
exit 0
fi
if test "$prog" = "-up"; then
prog=$1
shift
args=`echo $* | sed -e 's|-I\(.\):|-I/cygdrive/\1|g;'`
else
args=`echo $* | sed -e 's|/cygdrive/\(.\)/|\1:/|g;'`
fi
exec $prog $args

Просмотреть файл

@ -362,17 +362,6 @@ CHECKOUT_CALENDAR := true
FASTUPDATE_CALENDAR := true
endif
# because some cygwin tools can't handle native dos-drive paths & vice-versa
# force configure to use a relative path for --srcdir
# need a better check for win32
# and we need to get OBJDIR earlier
ifdef MOZ_TOOLS
_tmpobjdir := $(shell cygpath -u $(OBJDIR))
_abs2rel := $(shell cygpath -w $(TOPSRCDIR)/build/unix/abs2rel.pl | sed -e 's|\\|/|g')
_OBJ2SRCPATH := $(shell $(_abs2rel) $(TOPSRCDIR) $(_tmpobjdir))
endif
#######################################################################
# Rules
#
@ -590,8 +579,8 @@ else
CONFIGURE := $(TOPSRCDIR)/configure
endif
ifdef _OBJ2SRCPATH
CONFIGURE_ARGS := --srcdir=$(_OBJ2SRCPATH) $(CONFIGURE_ARGS)
ifdef MOZ_TOOLS
CONFIGURE := $(TOPSRCDIR)/configure
endif
$(OBJDIR)/Makefile $(OBJDIR)/config.status: $(CONFIG_STATUS_DEPS)

Просмотреть файл

@ -128,7 +128,7 @@ build_number: FORCE
nsBuildID.h: nsBuildID.h.in build_number
$(RM) $@
$(PERL) -I$(srcdir) $(srcdir)/aboutime.pl $@ build_number $<
$(PERL) -I$(srcdir) $(srcdir)/aboutime.pl $@ build_number $(srcdir)/nsBuildID.h.in
elf-dynstr-gc: elf-dynstr-gc.c Makefile Makefile.in
$(CC) $(COMPILE_CFLAGS) $(GLIB_CFLAGS) $(GLIB_LIBS) $(LDFLAGS) -o $@ $<

Просмотреть файл

@ -166,6 +166,7 @@ XCFLAGS = @XCFLAGS@
XLDFLAGS = @XLDFLAGS@
XLIBS = @XLIBS@
CYGWIN_WRAPPER = @CYGWIN_WRAPPER@
AIX_SHLIB_BIN = @AIX_SHLIB_BIN@
AR = @AR@
AR_FLAGS = @AR_FLAGS@

Просмотреть файл

@ -287,13 +287,14 @@ else
# compiler optimization bugs, as well as running with Quantify.
ifdef MOZ_PROFILE
MOZ_OPTIMIZE_FLAGS=-Zi -O1 -UDEBUG -DNDEBUG
OS_LDFLAGS = /DEBUG /DEBUGTYPE:CV /OPT:REF /OPT:nowin98
OS_LDFLAGS = /DEBUG /DEBUGTYPE:CV /PDB:NONE /OPT:REF /OPT:nowin98
WIN32_EXE_LDFLAGS=/FIXED:NO
endif
# if MOZ_COVERAGE is set, we handle pdb files slightly differently
ifdef MOZ_COVERAGE
MOZ_OPTIMIZE_FLAGS=-Zi -O1 -UDEBUG -DNDEBUG
OS_LDFLAGS = /DEBUG /DEBUGTYPE:CV /OPT:REF /OPT:nowin98
OS_LDFLAGS = /DEBUG /DEBUGTYPE:CV /PDB:NONE /OPT:REF /OPT:nowin98
endif
# MOZ_COVERAGE
@ -468,6 +469,7 @@ else
XPIDL_COMPILE = $(DIST)/bin/xpidl$(BIN_SUFFIX)
XPIDL_LINK = $(DIST)/bin/xpt_link$(BIN_SUFFIX)
endif
MIDL = midl
ifeq ($(OS_ARCH),OS2)
PATH_SEPARATOR := \;
@ -720,7 +722,7 @@ GARBAGE += $(DEPENDENCIES) $(MKDEPENDENCIES) $(MKDEPENDENCIES).bak core $(wildc
ifeq (,$(filter-out WINNT, $(OS_ARCH)))
ifeq ($(OS_ARCH),WINNT)
NSINSTALL = $(MOZ_TOOLS_DIR)/bin/nsinstall
NSINSTALL = $(CYGWIN_WRAPPER) $(MOZ_TOOLS_DIR)/bin/nsinstall
else
NSINSTALL = nsinstall
endif

Просмотреть файл

@ -2,9 +2,12 @@
# make-jars [-f] [-v] [-l] [-d <chromeDir>] [-s <srcdir>] < <jar.mn>
if ($^O ne "cygwin") {
# we'll be pulling in some stuff from the script directory
use FindBin;
require FindBin;
import FindBin;
push @INC, $FindBin::Bin;
}
use strict;

Просмотреть файл

@ -113,6 +113,7 @@ ifeq ($(MOZ_OS2_TOOLS),VACPP)
_EXTRA_DSO_RELATIVE_PATHS=1
else
ifeq (_WINNT,$(GNU_CC)_$(OS_ARCH))
_NO_AUTO_VARS=1
_EXTRA_DSO_RELATIVE_PATHS=1
endif
endif
@ -198,20 +199,16 @@ endif
ifeq ($(OS_ARCH),WINNT)
ifdef MOZ_PROFILE
PDBFILE=NONE
else
ifdef LIBRARY_NAME
PDBFILE=$(LIBRARY_NAME).pdb
ifdef MOZ_DEBUG
CODFILE=$(LIBRARY_NAME).cod
endif
else
PDBFILE=$*.pdb
PDBFILE=$(basename $(@F)).pdb
ifdef MOZ_DEBUG
MAPFILE=$*.map
CODFILE=$*.cod
endif
MAPFILE=$(basename $(@F)).map
CODFILE=$(basename $(@F)).cod
endif
endif
@ -286,7 +283,7 @@ ALL_TRASH = \
$(GARBAGE) $(TARGETS) $(OBJS) $(PROGOBJS) LOGS TAGS a.out \
$(HOST_PROGOBJS) $(HOST_OBJS) $(IMPORT_LIBRARY) $(DEF_FILE)\
$(EXE_DEF_FILE) so_locations _gen _stubs $(wildcard *.res) \
$(PDBFILE) $(CODFILE) $(MAPFILE) $(IMPORT_LIBRARY) \
$(wildcard *.pdb) $(CODFILE) $(MAPFILE) $(IMPORT_LIBRARY) \
$(SHARED_LIBRARY:$(DLL_SUFFIX)=.exp) \
$(PROGRAM:$(BIN_SUFFIX)=.exp) $(SIMPLE_PROGRAMS:$(BIN_SUFFIX)=.exp) \
$(PROGRAM:$(BIN_SUFFIX)=.lib) $(SIMPLE_PROGRAMS:$(BIN_SUFFIX)=.lib) \
@ -822,7 +819,7 @@ ifeq ($(MOZ_OS2_TOOLS),VACPP)
$(LD) -OUT:$@ $(LDFLAGS) $(PROGOBJS) $(LIBS) $(EXTRA_LIBS) $(OS_LIBS) $(EXE_DEF_FILE) /ST:0x100000
else
ifeq (_WINNT,$(GNU_CC)_$(OS_ARCH))
$(LD) /NOLOGO /OUT:$@ /PDB:$(PDBFILE) $(PROGOBJS) $(RESFILE) $(LDFLAGS) $(LIBS) $(EXTRA_LIBS) $(OS_LIBS)
$(LD) /NOLOGO /OUT:$@ /PDB:$(PDBFILE) $(PROGOBJS) $(RESFILE) $(WIN32_EXE_LDFLAGS) $(LDFLAGS) $(LIBS) $(EXTRA_LIBS) $(OS_LIBS)
else
ifeq ($(CPP_PROG_LINK),1)
$(CCC) -o $@ $(CXXFLAGS) $(WRAP_MALLOC_CFLAGS) $(PROGOBJS) $(LDFLAGS) $(LIBS_DIR) $(LIBS) $(OS_LIBS) $(EXTRA_LIBS) $(BIN_FLAGS) $(WRAP_MALLOC_LIB) $(PROFILER_LIBS)
@ -865,7 +862,7 @@ ifeq ($(MOZ_OS2_TOOLS),VACPP)
$(LD) /Out:$@ $< $(LDFLAGS) $(LIBS) $(OS_LIBS) $(EXTRA_LIBS) $(WRAP_MALLOC_LIB) $(PROFILER_LIBS)
else
ifeq (_WINNT,$(GNU_CC)_$(OS_ARCH))
$(LD) /nologo /out:$@ /pdb:$(PDBFILE) $< $(LDFLAGS) $(LIBS) $(EXTRA_LIBS) $(OS_LIBS)
$(LD) /nologo /out:$@ /pdb:$(PDBFILE) $< $(WIN32_EXE_LDFLAGS) $(LDFLAGS) $(LIBS) $(EXTRA_LIBS) $(OS_LIBS)
else
ifeq ($(CPP_PROG_LINK),1)
$(CCC) $(WRAP_MALLOC_CFLAGS) $(CXXFLAGS) -o $@ $< $(LDFLAGS) $(LIBS_DIR) $(LIBS) $(OS_LIBS) $(EXTRA_LIBS) $(WRAP_MALLOC_LIB) $(PROFILER_LIBS)
@ -916,7 +913,9 @@ ifneq ($(OS_ARCH),OS2)
#
ifdef SHARED_LIBRARY_LIBS
ifeq ($(OS_ARCH),WINNT)
ifneq (,$(BUILD_STATIC_LIBS)$(FORCE_STATIC_LIB))
LOBJS += $(SHARED_LIBRARY_LIBS)
endif
else
ifneq (,$(filter OSF1 BSD_OS FreeBSD NetBSD OpenBSD SunOS Darwin,$(OS_ARCH)))
CLEANUP1 := | egrep -v '(________64ELEL_|__.SYMDEF)'
@ -1061,16 +1060,28 @@ endif # MOZ_AUTO_DEPS
%: %.c Makefile.in
$(REPORT_BUILD)
@$(MAKE_DEPS_AUTO)
ifdef _NO_AUTO_VARS
$(ELOG) $(CC) $(CFLAGS) $(LDFLAGS) $(OUTOPTION)$@ $(srcdir)/$*.c
else
$(ELOG) $(CC) $(CFLAGS) $(LDFLAGS) $(OUTOPTION)$@ $<
endif
$(OBJ_PREFIX)%.$(OBJ_SUFFIX): %.c Makefile.in
$(REPORT_BUILD)
@$(MAKE_DEPS_AUTO)
ifdef _NO_AUTO_VARS
$(ELOG) $(CC) $(OUTOPTION)$@ -c $(COMPILE_CFLAGS) $(srcdir)/$*.c
else
$(ELOG) $(CC) $(OUTOPTION)$@ -c $(COMPILE_CFLAGS) $<
endif
$(OBJ_PREFIX)%.ho: %.c Makefile.in
$(REPORT_BUILD)
ifdef _NO_AUTO_VARS
$(ELOG) $(HOST_CC) $(OUTOPTION)$@ -c $(HOST_CFLAGS) $(INCLUDES) $(NSPR_CFLAGS) $(srcdir)/$*.c
else
$(ELOG) $(HOST_CC) $(OUTOPTION)$@ -c $(HOST_CFLAGS) $(INCLUDES) $(NSPR_CFLAGS) $<
endif
moc_%.cpp: %.h Makefile.in
$(MOC) $< $(OUTOPTION)$@
@ -1089,7 +1100,11 @@ endif
%: %.cpp Makefile.in
@$(MAKE_DEPS_AUTO)
ifdef _NO_AUTO_VARS
$(CCC) $(OUTOPTION)$@ $(CXXFLAGS) $(srcdir)/$*.cpp $(LDFLAGS)
else
$(CCC) $(OUTOPTION)$@ $(CXXFLAGS) $< $(LDFLAGS)
endif
#
# Please keep the next two rules in sync.
@ -1097,7 +1112,11 @@ endif
$(OBJ_PREFIX)%.$(OBJ_SUFFIX): %.cc Makefile.in
$(REPORT_BUILD)
@$(MAKE_DEPS_AUTO)
ifdef _NO_AUTO_VARS
$(ELOG) $(CCC) $(OUTOPTION)$@ -c $(COMPILE_CXXFLAGS) $(srcdir)/$*.cc
else
$(ELOG) $(CCC) $(OUTOPTION)$@ -c $(COMPILE_CXXFLAGS) $<
endif
$(OBJ_PREFIX)%.$(OBJ_SUFFIX): %.cpp Makefile.in
$(REPORT_BUILD)
@ -1106,8 +1125,12 @@ ifdef STRICT_CPLUSPLUS_SUFFIX
echo "#line 1 \"$*.cpp\"" | cat - $*.cpp > t_$*.cc
$(ELOG) $(CCC) -o $@ -c $(COMPILE_CXXFLAGS) t_$*.cc
rm -f t_$*.cc
else
ifdef _NO_AUTO_VARS
$(ELOG) $(CCC) $(OUTOPTION)$@ -c $(COMPILE_CXXFLAGS) $(srcdir)/$*.cpp
else
$(ELOG) $(CCC) $(OUTOPTION)$@ -c $(COMPILE_CXXFLAGS) $<
endif
endif #STRICT_CPLUSPLUS_SUFFIX
$(OBJ_PREFIX)%.$(OBJ_SUFFIX): %.mm Makefile.in
@ -1160,7 +1183,7 @@ Makefile: Makefile.in $(topsrcdir)/configure
ifdef SUBMAKEFILES
# VPATH does not work on some machines in this case, so add $(srcdir)
$(SUBMAKEFILES): % : $(srcdir)/%.in
@$(PERL) $(AUTOCONF_TOOLS)/make-makefile -t $(topsrcdir) -d $(DEPTH) $@
$(PERL) $(AUTOCONF_TOOLS)/make-makefile -t $(topsrcdir) -d $(DEPTH) $@
endif
ifdef AUTOUPDATE_CONFIGURE
@ -1463,7 +1486,11 @@ $(XPIDL_GEN_DIR)/.done:
$(XPIDL_GEN_DIR)/%.h: %.idl $(XPIDL_COMPILE) $(XPIDL_GEN_DIR)/.done
$(REPORT_BUILD)
ifdef _NO_AUTO_VARS
$(ELOG) $(XPIDL_COMPILE) -m header -w -I $(IDL_DIR) -I$(srcdir) -o $(XPIDL_GEN_DIR)/$* $(srcdir)/$*.idl
else
$(ELOG) $(XPIDL_COMPILE) -m header -w -I $(IDL_DIR) -I$(srcdir) -o $(XPIDL_GEN_DIR)/$* $<
endif
@if test -n "$(findstring $*.h, $(EXPORTS) $(SDK_HEADERS))"; \
then echo "*** WARNING: file $*.h generated from $*.idl overrides $(srcdir)/$*.h"; else true; fi
@ -1472,7 +1499,11 @@ ifndef NO_GEN_XPT
# into $(XPIDL_MODULE).xpt and export it to $(DIST)/bin/components.
$(XPIDL_GEN_DIR)/%.xpt: %.idl $(XPIDL_COMPILE)
$(REPORT_BUILD)
ifdef _NO_AUTO_VARS
$(ELOG) $(XPIDL_COMPILE) -m typelib -w -I $(IDL_DIR) -I$(srcdir) -o $(XPIDL_GEN_DIR)/$* $(srcdir)/$*.idl
else
$(ELOG) $(XPIDL_COMPILE) -m typelib -w -I $(IDL_DIR) -I$(srcdir) -o $(XPIDL_GEN_DIR)/$* $<
endif
$(XPIDL_GEN_DIR)/$(XPIDL_MODULE).xpt: $(patsubst %.idl,$(XPIDL_GEN_DIR)/%.xpt,$(XPIDLSRCS) $(SDK_XPIDLSRCS)) Makefile.in Makefile
$(XPIDL_LINK) $(XPIDL_GEN_DIR)/$(XPIDL_MODULE).xpt $(patsubst %.idl,$(XPIDL_GEN_DIR)/%.xpt,$(XPIDLSRCS) $(SDK_XPIDLSRCS))

Просмотреть файл

@ -434,6 +434,7 @@ LIB_SUFFIX=a
ASM_SUFFIX=s
TARGET_MD_ARCH=unix
DIRENT_INO=d_ino
CYGWIN_WRAPPER=
MOZ_JPEG_CFLAGS=
MOZ_JPEG_LIBS='-L$(DIST)/lib -lmozjpeg'
@ -901,16 +902,23 @@ case "$target" in
MKSHLIB_FORCE_ALL=
MKSHLIB_UNFORCE_ALL=
else
CYGWIN_WRAPPER=${srcdir}/build/cygwin-wrapper
CC=cl
CXX=cl
HOST_CC=cl
HOST_CXX=cl
LD=link
AR='lib -NOLOGO -OUT:"$@"'
AR_FLAGS=
RANLIB='echo not_ranlib'
STRIP='echo not_strip'
RC=rc.exe
RC='$(CYGWIN_WRAPPER) rc.exe'
PERL=perl
_WIN32_PERL=$PERL
if test "`${PERL} -v | grep -c cygwin 2>/dev/null`" != 0; then
PERL="${CYGWIN_WRAPPER} -up ${PERL}"
_CYGWIN_PERL=1
fi
XARGS=xargs
ZIP=zip
UNZIP=unzip
@ -3264,7 +3272,11 @@ if test -z "$MOZ_JSDEBUGGER" && test `echo "$MOZ_EXTENSIONS" | grep -c venkman`
fi
dnl Remove dupes
if test -n "${_CYGWIN_PERL}"; then
MOZ_EXTENSIONS=`${PERL} ${srcdir}/build/unix/uniq.pl ${MOZ_EXTENSIONS}`
else
MOZ_EXTENSIONS=`${CYGWIN_WRAPPER} ${PERL} ${srcdir}/build/unix/uniq.pl ${MOZ_EXTENSIONS}`
fi
dnl ========================================================
dnl experimental ldap features
@ -4446,6 +4458,7 @@ AC_SUBST(MOZ_COVERAGE)
AC_SUBST(MOZ_MAPINFO)
AC_SUBST(MOZ_BROWSE_INFO)
AC_SUBST(MOZ_TOOLS_DIR)
AC_SUBST(CYGWIN_WRAPPER)
dnl Disable profile at startup, hack for tinderbox.
if test "$MOZ_BYPASS_PROFILE_AT_STARTUP"; then
@ -4679,7 +4692,18 @@ dnl This does not change the $MAKEFILES variable.
dnl
dnl OpenVMS gets a line overflow on the long eval command, so use a temp file.
dnl
echo $MAKEFILES | $PERL $srcdir/build/autoconf/acoutput-fast.pl > conftest.sh
my_srcdir=$srcdir
case "$target_os" in
msvc*|mksnt*|cygwin*|mingw*)
my_srcdir=`cygpath -w ${srcdir} | sed 's|\\\\|/|g'`
MAKEFILES=`echo $MAKEFILES | sed -e 's|/cygdrive/\(.\)/|\1:/|g'`
my_perl=$_WIN32_PERL
;;
*)
my_perl=$PERL
;;
esac
echo $MAKEFILES | $my_perl $my_srcdir/build/autoconf/acoutput-fast.pl > conftest.sh
. ./conftest.sh
rm conftest.sh

Просмотреть файл

@ -117,7 +117,7 @@ $(DEFFILE): mkctldef.sh
$(srcdir)/mkctldef.sh $@
done_gen: MozillaControl.idl
midl /Oicf /h MozillaControl.h /iid MozillaControl_i.c $<
$(MIDL) /Oicf /h MozillaControl.h /iid MozillaControl_i.c $(srcdir)/MozillaControl.idl
touch $@
$(MIDL_GENERATED_FILES): done_gen

Просмотреть файл

@ -78,10 +78,18 @@ OS_LIBS += winspool.lib comdlg32.lib
GARBAGE += nsCompressedCharMap.cpp
ifeq ($(OS_ARCH),WINNT)
GARBAGE += $(srcdir)/nsCompressedCharMap.cpp
endif
include $(topsrcdir)/config/rules.mk
export:: ../nsCompressedCharMap.cpp
ifeq ($(OS_ARCH),WINNT)
$(INSTALL) $(srcdir)/../nsCompressedCharMap.cpp $(srcdir)
else
$(INSTALL) $(srcdir)/../nsCompressedCharMap.cpp .
endif
libs:: fontEncoding.properties
$(INSTALL) $^ $(DIST)/bin/res/fonts

Просмотреть файл

@ -43,16 +43,21 @@ OS_LIBS += rpcrt4.lib
MIDL_GENERATED_FILES = msgMapi.h msgMapi_p.c msgMapi_i.c dlldata.c
GARBAGE += $(MIDL_GENERATED_FILES) done_gen
GARBAGE += $(MIDL_GENERATED_FILES) done_gen $(addprefix $(srcdir)/,$(CSRCS))
include $(topsrcdir)/config/rules.mk
DEFINES += -DREGISTER_PROXY_DLL -DUNICODE -D_UNICODE
export:: done_gen
$(MIDL_GENERATED_FILES): done_gen
done_gen: msgMapi.idl
midl $(UNICODE_FLAGS) $<
$(MIDL) $(UNICODE_FLAGS) $(srcdir)/msgMapi.idl
touch $@
$(MIDL_GENERATED_FILES): done_gen
$(addprefix $(srcdir)/,$(CSRCS)): %.c: done_gen
cp $(@F) $@
export:: done_gen $(addprefix $(srcdir)/,$(CSRCS))

Просмотреть файл

@ -51,6 +51,7 @@ GARBAGE += $(MODULES_LIBJAR_LCPPSRCS) $(wildcard *.$(OBJ_SUFFIX))
ifeq ($(OS_ARCH),WINNT)
USE_NON_MT_LIBS=1
GARBAGE += $(addprefix $(srcdir)/,$(MODULES_LIBJAR_LCPPSRCS))
endif
include $(topsrcdir)/config/rules.mk
@ -64,4 +65,8 @@ DEFINES += -DSTANDALONE
LOCAL_INCLUDES = -I$(srcdir)/..
export:: $(MODULES_LIBJAR_CPPSRCS)
ifeq ($(OS_ARCH),WINNT)
$(INSTALL) $^ $(srcdir)
else
$(INSTALL) $^ .
endif

Просмотреть файл

@ -46,6 +46,10 @@ FORCE_STATIC_LIB = 1
GARBAGE += $(MODULES_LIBREG_SRC_LCSRCS) $(wildcard *.$(OBJ_SUFFIX))
ifeq ($(OS_ARCH),WINNT)
GARBAGE += $(addprefix $(srcdir)/,$(MODULES_LIBREG_SRC_LCSRCS))
endif
include $(topsrcdir)/config/rules.mk
DEFINES += -DSTANDALONE_REGISTRY
@ -53,5 +57,9 @@ DEFINES += -DSTANDALONE_REGISTRY
LOCAL_INCLUDES = -I$(srcdir)/../src
export:: $(MODULES_LIBREG_SRC_CSRCS)
ifeq ($(OS_ARCH),WINNT)
$(INSTALL) $^ $(srcdir)
else
$(INSTALL) $^ .
endif

Просмотреть файл

@ -46,9 +46,18 @@ EXTRA_DSO_LDOPTS += $(MOZ_COMPONENT_NSPR_LIBS)
GARBAGE += $(MODULES_ZLIB_SRC_LCSRCS) $(wildcard *.$(OBJ_SUFFIX))
ifeq ($(OS_ARCH),WINNT)
GARBAGE += $(addprefix $(srcdir)/,$(MODULES_ZLIB_SRC_LCSRCS))
endif
include $(topsrcdir)/config/rules.mk
LOCAL_INCLUDES = -I$(srcdir)/../src
export:: $(MODULES_ZLIB_SRC_CSRCS)
ifeq ($(OS_ARCH),WINNT)
$(INSTALL) $^ $(srcdir)
else
$(INSTALL) $^ .
endif

Просмотреть файл

@ -35,7 +35,7 @@ OSDIR = unix
endif
endif
VPATH := @srcdir@ @srcdir@/$(OSDIR)
VPATH := $(srcdir) $(srcdir)/$(OSDIR)
MODULE = exthandler
LIBRARY_NAME = exthandler_s
@ -77,6 +77,7 @@ CPPSRCS = \
ifeq ($(OS_ARCH),WINNT)
OS_LIBS += shell32.lib
GARBAGE += nsOSHelperAppService.cpp
endif
# we don't want the shared lib, but we want to force the creation of a static lib.
@ -84,3 +85,7 @@ FORCE_STATIC_LIB = 1
include $(topsrcdir)/config/rules.mk
ifeq ($(OS_ARCH),WINNT)
export:: $(OSDIR)/nsOSHelperAppService.cpp
$(INSTALL) $^ $(srcdir)
endif

Просмотреть файл

@ -86,11 +86,12 @@ LOCAL_INCLUDES = -I. -I$(srcdir)/../xpwidgets -I$(srcdir)
FORCE_STATIC_LIB = 1
GARBAGE += L_Ienumfe.cpp
GARBAGE += L_Ienumfe.cpp $(srcdir)/L_Ienumfe.cpp
include $(topsrcdir)/config/rules.mk
# Silly case-insensitive fs
L_Ienumfe.cpp: IENUMFE.CPP
cp $< $@
export:: IENUMFE.CPP
cp $< $(srcdir)/L_Ienumfe.cpp

Просмотреть файл

@ -54,7 +54,7 @@ MIDL_GENERATED_FILES = \
dlldata.c \
$(NULL)
GARBAGE += $(MIDL_GENERATED_FILES) done_gen
GARBAGE += $(MIDL_GENERATED_FILES) done_gen $(CSRCS)
FORCE_SHARED_LIB = 1
@ -63,12 +63,15 @@ include $(topsrcdir)/config/rules.mk
$(MIDL_GENERATED_FILES): done_gen
done_gen: ISimpleDOMDocument.idl
midl $<
$(MIDL) $(srcdir)/ISimpleDOMDocument.idl
cp ISimpleDOMDocument.h ../..
cp ISimpleDOMDocument_i.c ../../ISimpleDOMDocument_iid.h
touch $@
export:: done_gen
$(addprefix $(srcdir)/,$(CSRCS)): %.c: done_gen
cp $(@F) $@
export:: done_gen $(addprefix $(srcdir)/,$(CSRCS))
libs::
regsvr32 /s $(DIST)/bin/$(SHARED_LIBRARY)

Просмотреть файл

@ -54,7 +54,7 @@ MIDL_GENERATED_FILES = \
dlldata.c \
$(NULL)
GARBAGE += $(MIDL_GENERATED_FILES) done_gen
GARBAGE += $(MIDL_GENERATED_FILES) done_gen $(CSRCS)
FORCE_SHARED_LIB = 1
@ -63,12 +63,15 @@ include $(topsrcdir)/config/rules.mk
$(MIDL_GENERATED_FILES): done_gen
done_gen: ISimpleDOMNode.idl
midl $<
$(MIDL) $(srcdir)/ISimpleDOMNode.idl
cp ISimpleDOMNode.h ../..
cp ISimpleDOMNode_i.c ../../ISimpleDOMNode_iid.h
touch $@
export:: done_gen
$(addprefix $(srcdir)/,$(CSRCS)): %.c: done_gen
cp $(@F) $@
export:: done_gen $(addprefix $(srcdir)/,$(CSRCS))
libs::
regsvr32 /s $(DIST)/bin/$(SHARED_LIBRARY)

Просмотреть файл

@ -65,10 +65,18 @@ FORCE_USE_PIC = 1
GARBAGE += $(XPCOM_GLUE_SRC_LCSRCS) $(wildcard *.$(OBJ_SUFFIX))
ifeq ($(OS_ARCH),WINNT)
GARBAGE += $(addprefix $(srcdir)/,$(XPCOM_GLUE_SRC_LCSRCS))
endif
include $(topsrcdir)/config/rules.mk
export:: $(XPCOM_GLUE_SRC_CSRCS)
ifeq ($(OS_ARCH),WINNT)
$(INSTALL) $^ $(srcdir)
else
$(INSTALL) $^ .
endif
DEFINES += -D_IMPL_NS_COM_OFF -DXPCOM_GLUE

Просмотреть файл

@ -46,7 +46,7 @@ GARBAGE += build.dtd
build.dtd: build.dtd.in $(DEPTH)/config/build_number
@$(RM) -f $@
$(PERL) -I$(topsrcdir)/config $(topsrcdir)/config/aboutime.pl $@ $(DEPTH)/config/build_number $<
$(PERL) -I$(topsrcdir)/config $(topsrcdir)/config/aboutime.pl $@ $(DEPTH)/config/build_number $(srcdir)/build.dtd.in
libs::
@$(REGCHROME) locale en-US/global-platform en-$(CHROME_PLATFORM).jar