tools/reorder/Makefile
author Daniel Holbert <dholbert@cs.stanford.edu>
Mon, 04 Feb 2013 08:17:31 -0800
changeset 120772 b40b5c2a7592cb44717b5dd199ac9c6bacfe0677
parent 94475 f4157e8c410708d76703f19e4dfb61859bfe32d8
permissions -rw-r--r--
Bug 836957 part 3: Mark remaining nsIFrame::GetSkipSides() overrides as MOZ_OVERRIDE, and remove stale comments. r=mats

# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

# Redefine this to something that makes sense for you.
MOZ_SRC=/usr/src/seamonkey-clean/mozilla
MKLINKSCRIPT=$(MOZ_SRC)/config/mklinkscript.pl

ifdef DEBUG
CFLAGS=-g -Wall
CXXFLAGS=-g -Wall
else
CFLAGS=-O2
CXXFLAGS=-O2
endif

ifdef PROFILE
CFLAGS += -pg -g
CXXFLAGS += -pg -g
endif

TARGETS=\
	libmcount.so	\
	libcygprof.so	\
	addrs2text	\
	garope		\
	grope		\
	histogram	\
	mapaddrs	\
	rseed		\
	test		\
	$(NULL)

all: $(TARGETS)

libmcount.so: mcount.c
	$(CC) -shared $(CFLAGS) -o $@ $<

libcygprof.so: cygprof.c
	$(CC) -shared $(CFLAGS) -o $@ $<

addrs2text: addrs2text.o

garope: garope.cpp elf_symbol_table.o elf_utils.o
grope: grope.cpp elf_symbol_table.o elf_utils.o
histogram: histogram.cpp elf_symbol_table.o elf_utils.o
mapaddrs: mapaddrs.cpp elf_symbol_table.o elf_utils.o
rseed: rseed.c
elf_symbol_table.o: elf_symbol_table.cpp elf_symbol_table.h elf_utils.h interval_map.h
elf_utils.o: elf_utils.cpp elf_utils.h

# Build these with -pg so we get profiling info
TEST_CFLAGS=-ffunction-sections -finstrument-functions -O2

test: test.o mult.o test.ldscript
	$(CXX) -Wl,-T,test.ldscript -O2 -o $@ $^

test.ldscript: test.order $(MKLINKSCRIPT)
	perl $(MKLINKSCRIPT) -o $@ $<

# This should really be generated by one of the fine tools, above. If
# it hasn't been, create an empty ordering file.
test.order:
	touch $@

mult.o: mult.c
	$(CC) $(TEST_CFLAGS) -c -o $@ $<

test.o: test.cpp
	$(CXX) $(TEST_CFLAGS) -c -o $@ $<

clean:
	rm -f $(TARGETS) test.ldscript *.o *~ core