Files
rocm-systems/samples/pcsampler/code_printing_sample/Makefile
T
Saurabh Verma 763799349b Adding Make for bulding code samples
Change-Id: I7b62a4c65c5560239e69ea121c6fdaef188f709d
2023-03-09 13:20:35 +00:00

69 строки
1.2 KiB
Makefile

# -*- makefile-gmake -*-
ROCM_PATH ?= /opt/rocm
HIP_PATH ?= $(ROCM_PATH)/hip
HIPCC := $(HIP_PATH)/bin/hipcc
ifndef ROCPROFILER_PATH
$(warning You may need to set ROCPROFILER_PATH to the path of the rocprofiler source)
endif
ROCPROFILER_PATH ?= $(ROCM_PATH)/include/rocprofiler
CXXFLAGS += -std=c++17 -Wall
ifdef DEBUG
CXXFLAGS += -gdwarf-4 -O0
else
ifdef DEBUGOPT
CXXFLAGS += -gdwarf-4 -Og
else
CXXFLAGS += -gdwarf-4 -O2
endif
endif
###
srcs := $(wildcard *.cpp)
prog := main
objs := $(srcs:%.cpp=%.o)
deps := $(srcs:%.cpp=%.d)
# Kernel program
CPPFLAGS += -DHAVE_MEMFD_CREATE
$(prog): CC = $(HIPCC)
$(prog): CPPFLAGS += -I$(ROCM_PATH)/include -I$(ROCPROFILER_PATH)
$(prog): LDFLAGS := -L$(ROCM_PATH)/lib -L$(ROCPROFILER_PATH)/build
$(prog): LDLIBS += -ldl -lpthread -lhsa-runtime64 -lrocprofiler64 -lrocm-dbgapi -ldw -lelf
$(objs): CXX = $(HIPCC)
# Targets
all: $(prog)
$(prog): $(objs)
-include $(deps)
OUTPUT_OPTION = -MMD -MP -o $@
%.so: %.o
$(LINK.o) $(OUTPUT_OPTION) $^ $(LDLIBS)
#COMPILE.hip = $(COMPILE.cpp)
#LINK.hip = $(LINK.cpp)
#%.o: %.hip
# $(COMPILE.hip) $(OUTPUT_OPTION) $<
clean:
$(RM) $(prog) $(objs) $(deps)
distclean: | clean
$(RM) compile_commands.json
.PHONY: all clean distclean