mirror of
https://github.com/baldurk/renderdoc.git
synced 2026-05-05 09:30:44 +00:00
Clean up linux Makefile
* Compiler now used to generate dependencies via -MM * Object files are put into .obj folder rather than loose next to the source files
This commit is contained in:
+1
-3
@@ -12,11 +12,9 @@ Resources/*.png
|
||||
*.user
|
||||
bin/
|
||||
obj/
|
||||
.obj/
|
||||
*.opensdf
|
||||
*.pdb
|
||||
*.o
|
||||
*.verto
|
||||
*.frago
|
||||
*.so
|
||||
*.a
|
||||
*.exp
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
.PHONY: all
|
||||
all:
|
||||
cd renderdoc && make librenderdoc.so
|
||||
cd renderdoccmd && make bin/renderdoccmd
|
||||
|
||||
.PHONY: clean
|
||||
clean:
|
||||
cd renderdoc && make clean
|
||||
cd renderdoccmd && make clean
|
||||
|
||||
+29
-17
@@ -8,6 +8,7 @@ MACROS=-DLINUX \
|
||||
CFLAGS=-c -Wall -Werror -Wno-unknown-pragmas -Wno-error=format -fPIC $(MACROS) -I.
|
||||
CPPFLAGS=-std=c++11 -g -Wno-unused -Wno-unknown-pragmas -Wno-reorder -fvisibility=hidden -fvisibility-inlines-hidden
|
||||
LDFLAGS=-lpthread -lrt -shared -ldl -lX11
|
||||
OBJDIR=.obj
|
||||
OBJECTS=replay/replay_output.o \
|
||||
replay/replay_renderer.o \
|
||||
replay/entry_points.o \
|
||||
@@ -21,13 +22,6 @@ core/replay_proxy.o \
|
||||
core/remote_replay.o \
|
||||
core/resource_manager.o \
|
||||
core/core.o \
|
||||
data/glsl/blit.frago \
|
||||
data/glsl/blit.verto \
|
||||
data/glsl/texdisplay.frago \
|
||||
data/glsl/checkerboard.frago \
|
||||
data/glsl/generic.frago \
|
||||
data/glsl/generic.verto \
|
||||
data/glsl/mesh.verto \
|
||||
maths/camera.o \
|
||||
maths/matrix.o \
|
||||
os/os_specific.o \
|
||||
@@ -61,24 +55,42 @@ os/linux/linux_process.o \
|
||||
os/linux/linux_stringio.o \
|
||||
os/linux/linux_threading.o \
|
||||
hooks/linux_libentry.o
|
||||
SHADERS=data/glsl/blit.frago \
|
||||
data/glsl/blit.verto \
|
||||
data/glsl/texdisplay.frago \
|
||||
data/glsl/checkerboard.frago \
|
||||
data/glsl/generic.frago \
|
||||
data/glsl/generic.verto \
|
||||
data/glsl/mesh.verto
|
||||
|
||||
.PHONY: all
|
||||
all: librenderdoc.so
|
||||
|
||||
%.o: %.cpp
|
||||
$(OBJDIR)/%.o: %.cpp
|
||||
@mkdir -p $$(dirname $@)
|
||||
$(CPP) $(CFLAGS) $(CPPFLAGS) -c -o $@ $<
|
||||
@$(CPP) $(CFLAGS) $(CPPFLAGS) -MM -MT $(OBJDIR)/$*.o $*.cpp > $(OBJDIR)/$*.d
|
||||
|
||||
%.o: %.c
|
||||
$(OBJDIR)/%.o: %.c
|
||||
@mkdir -p $$(dirname $@)
|
||||
$(CC) $(CFLAGS) -c -o $@ $<
|
||||
@$(CC) $(CFLAGS) -MM -MT $(OBJDIR)/$*.o $*.c > $(OBJDIR)/$*.d
|
||||
|
||||
%.verto: %.vert
|
||||
cd $$(dirname $@) && objcopy --input binary --output elf64-x86-64 --binary-architecture i386 $$(basename $<) $$(basename $@)
|
||||
# objcopy needs to be run in with paths in current directory
|
||||
# to produce the right symbol names
|
||||
$(OBJDIR)/%.verto: %.vert
|
||||
@mkdir -p $$(dirname $@)
|
||||
cd $$(dirname $<) && objcopy --input binary --output elf64-x86-64 --binary-architecture i386 $$(basename $<) $$(basename $@)
|
||||
@mv $$(dirname $<)/$$(basename $@) $@
|
||||
|
||||
%.frago: %.frag
|
||||
cd $$(dirname $@) && objcopy --input binary --output elf64-x86-64 --binary-architecture i386 $$(basename $<) $$(basename $@)
|
||||
$(OBJDIR)/%.frago: %.frag
|
||||
@mkdir -p $$(dirname $@)
|
||||
cd $$(dirname $<) && objcopy --input binary --output elf64-x86-64 --binary-architecture i386 $$(basename $<) $$(basename $@)
|
||||
@mv $$(dirname $<)/$$(basename $@) $@
|
||||
|
||||
librenderdoc.so: $(OBJECTS) $(SOURCES)
|
||||
g++ -o librenderdoc.so $(OBJECTS) $(LDFLAGS)
|
||||
librenderdoc.so: $(addprefix $(OBJDIR)/, $(SHADERS) $(OBJECTS))
|
||||
g++ -o librenderdoc.so $^ $(LDFLAGS)
|
||||
|
||||
.PHONY: clean
|
||||
clean:
|
||||
find -type f -iname \*.o -exec rm '{}' \;
|
||||
rm -f librenderdoc.so
|
||||
rm -rf librenderdoc.so $(OBJDIR)
|
||||
|
||||
+13
-7
@@ -8,22 +8,28 @@ MACROS=-DLINUX \
|
||||
CFLAGS=-c -Wall -Werror -fPIC $(MACROS) -I../renderdoc/
|
||||
CPPFLAGS=-std=c++11 -g -Wno-unused -Wno-unknown-pragmas -Wno-reorder
|
||||
LDFLAGS=-L../renderdoc -lrenderdoc -lGL
|
||||
OBJDIR=.obj
|
||||
OBJECTS=renderdoccmd.o renderdoccmd_linux.o
|
||||
|
||||
.PHONY: all
|
||||
all: bin/renderdoccmd
|
||||
|
||||
%.o: %.cpp
|
||||
$(OBJDIR)/%.o: %.cpp
|
||||
@mkdir -p $$(dirname $@)
|
||||
$(CPP) $(CFLAGS) $(CPPFLAGS) -c -o $@ $<
|
||||
@$(CPP) $(CFLAGS) $(CPPFLAGS) -MM -MT $(OBJDIR)/$*.o $*.cpp > $(OBJDIR)/$*.d
|
||||
|
||||
%.o: %.c
|
||||
$(OBJDIR)/%.o: %.c
|
||||
@mkdir -p $$(dirname $@)
|
||||
$(CC) $(CFLAGS) -c -o $@ $<
|
||||
@$(CC) $(CFLAGS) -MM -MT $(OBJDIR)/$*.o $*.c > $(OBJDIR)/$*.d
|
||||
|
||||
../renderdoc/librenderdoc.so:
|
||||
OBJDIR_OBJECTS=$(addprefix $(OBJDIR)/, $(SHADERS) $(OBJECTS))
|
||||
|
||||
bin/renderdoccmd: $(OBJECTS) $(SOURCES) ../renderdoc/librenderdoc.so
|
||||
bin/renderdoccmd: $(OBJDIR_OBJECTS) ../renderdoc/librenderdoc.so
|
||||
mkdir -p bin/
|
||||
g++ -o bin/renderdoccmd $(OBJECTS) $(LDFLAGS)
|
||||
g++ -o bin/renderdoccmd $(OBJDIR_OBJECTS) $(LDFLAGS)
|
||||
|
||||
.PHONY: clean
|
||||
clean:
|
||||
find -type f -iname \*.o -exec rm '{}' \;
|
||||
rm -f bin/renderdoccmd
|
||||
rm -rf bin/renderdoccmd $(OBJDIR)
|
||||
|
||||
Reference in New Issue
Block a user