122 lines
3.9 KiB
Makefile
122 lines
3.9 KiB
Makefile
#!gmake
|
|
#
|
|
# The contents of this file are subject to the Netscape 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/NPL/
|
|
#
|
|
# 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.org code.
|
|
#
|
|
# The Initial Developer of the Original Code is Netscape
|
|
# Communications Corporation. Portions created by Netscape are
|
|
# Copyright (C) 1998 Netscape Communications Corporation. All
|
|
# Rights Reserved.
|
|
#
|
|
# Contributor(s):
|
|
|
|
#######################################################################
|
|
# (1) Directory specific info #
|
|
#######################################################################
|
|
|
|
DEPTH = ../../../..
|
|
|
|
CPPSRCS = x86.nad.burg.cpp \
|
|
x86ArgumentList.cpp \
|
|
x86Arith64.cpp \
|
|
x86Opcode.cpp \
|
|
x86Emitter.cpp \
|
|
x86Float.cpp \
|
|
x86Formatter.cpp \
|
|
x86GenStub.cpp \
|
|
x86Instruction.cpp \
|
|
x86StdCall.cpp \
|
|
$(OS_SUPPORT) \
|
|
$(NULL)
|
|
|
|
LOCAL_MD_EXPORTS_x86 = x86ArgumentList.h \
|
|
x86Float.h \
|
|
x86Formatter.h \
|
|
x86Opcode.h \
|
|
x86StdCall.h \
|
|
x86Cpu.h \
|
|
x86Emitter.h \
|
|
x86Instruction.h \
|
|
$(NULL)
|
|
|
|
MODULE_NAME = EF
|
|
|
|
#######################################################################
|
|
# (2) Include "component" configuration information. #
|
|
#######################################################################
|
|
|
|
include $(DEPTH)/config/config.mk
|
|
|
|
#######################################################################
|
|
# (3) Include "local" platform-dependent assignments (OPTIONAL). #
|
|
#######################################################################
|
|
|
|
#
|
|
# Generation of OS-specific support files
|
|
#
|
|
ifeq ($(OS_ARCH),WINNT)
|
|
OS_SUPPORT = x86Stub.cpp
|
|
else
|
|
ASFILES = x86Stub_gas.s
|
|
endif
|
|
|
|
#######################################################################
|
|
# (4) Execute "component" rules. (OPTIONAL) #
|
|
#######################################################################
|
|
|
|
include $(DEPTH)/config/rules.mk
|
|
|
|
#######################################################################
|
|
# (7) Execute "local" rules. (OPTIONAL). #
|
|
#######################################################################
|
|
|
|
#
|
|
# Rules to generate x86.nad.burg.[cpp][h]
|
|
#
|
|
ifneq ($(OS_ARCH),WINNT)
|
|
x86.nad.burg.cpp: x86.nad.burg $(BURG)
|
|
$(BURG) -I -o $@ < $<
|
|
|
|
x86.nad.burg: x86.nad $(DEPTH)/Compiler/PrimitiveGraph/PrimitiveOperations $(DEPTH)/Tools/Nad/nad.pl
|
|
$(PERL) $(DEPTH)/Tools/Nad/nad.pl $< $(DEPTH)/Compiler/PrimitiveGraph/PrimitiveOperations \
|
|
$(LOCAL_EXPORT_DIR)/PrimitiveOperations.h \
|
|
$(DEPTH)/Compiler/PrimitiveGraph/PrimitiveOperations.cpp \
|
|
$<.burg.h > $@
|
|
else
|
|
x86.nad.burg.cpp: x86.nad $(BURG) $(DEPTH)/Compiler/PrimitiveGraph/PrimitiveOperations $(DEPTH)/Tools/Nad/nad.pl
|
|
$(DEPTH)/config/genburg.bat $(BURG) $(DEPTH)/Tools/Nad/nad.pl $< $(DEPTH)/Compiler/PrimitiveGraph/PrimitiveOperations
|
|
cp $(DEPTH)/Compiler/PrimitiveGraph/PrimitiveOperations.h $(LOCAL_EXPORT_DIR)
|
|
endif
|
|
|
|
# special rule so that successive make's don't try to build
|
|
# $(DEPTH)/Compiler/PrimitiveGraph/PrimitiveOperations from
|
|
# $(DEPTH)/Compiler/PrimitiveGraph/PrimitiveOperations.cpp
|
|
#
|
|
$(DEPTH)/Compiler/PrimitiveGraph/PrimitiveOperations:
|
|
@echo
|
|
#
|
|
# Extra cleaning
|
|
#
|
|
clean clobber realclean clobber_all::
|
|
rm -f x86.nad.burg.cpp x86.nad.burg.h x86.nad.burg
|
|
|
|
#
|
|
# Special rules for x86Win32Support.cpp on Windows: it currently breaks the
|
|
# compiler if compiled with optimizations
|
|
#
|
|
ifeq ($(OS_ARCH),WINNT)
|
|
OPT_FLAG = -O2
|
|
$(OBJDIR)/x86Win32_Support$(OBJ_SUFFIX): x86Win32_Support.cpp
|
|
$(CCC) -c $(filter-out $(OPT_FLAG),$(CFLAGS)) $< -Fo$@
|
|
endif
|
|
|