Files
ec-gn-ja-pcf/EC-GN-JA-PCF/target/main/c++/Gyrotron01DAN/Makefile

68 lines
2.3 KiB
Makefile

#+======================================================================
# $HeadURL: https://svnpub.iter.org/codac/iter/codac/dev/units/m-codac-unit-templates/tags/CODAC-CORE-6.0.0/templates/cpp/main/c++/prog/Makefile.template $
# $Id: Makefile.template 83098 2018-01-08 13:23:38Z cesnikt $
#
# Project : CODAC Core System
#
# Description : gyrotronDAN Makefile
#
# Author : This file was generated by CODAC development toolkit
#
# Copyright (c) : 2010-2018 ITER Organization,
# CS 90 046
# 13067 St. Paul-lez-Durance Cedex
# France
#
# This file is part of ITER CODAC software.
# For the terms and conditions of redistribution or use of this software
# refer to the file ITER-LICENSE.TXT located in the top level directory
# of the distribution package.
#
#-======================================================================
PROGNAME=Gyrotron01DAN
LIBRARIES=ca dan_api dan_client_api dan_stream dan_base xml2 log sdn sdn-core ccs-core rt pthread tcn nixseries
LIBRARY_DIRS=
INCLUDE_DIRS=. ../include $(CODAC_ROOT)/include $(EPICS_BASE)/include/os/Linux $(EPICS_BASE)/include/compiler/gcc $(EPICS_BASE)/include /usr/include/libxml2 $(SDN_TOPIC_DIRECTORY)
TARGET=../../../../target
BINARY_DIR=$(TARGET)/bin
OBJECT_DIR=$(TARGET)/obj/$(PROGNAME)
SOURCE_DIR=.
EXECUTABLE=$(BINARY_DIR)/$(PROGNAME)
INCLUDES=$(foreach inc,$(INCLUDE_DIRS),-I$(inc))
LDLIBS=-L$(CODAC_ROOT)/lib -L$(EPICS_BASE)/lib/$(EPICS_HOST_ARCH) $(foreach libs,$(LIBRARY_DIRS),-L$(libs) -Wl,-rpath,$(libs)) $(foreach libs,$(LIBRARIES),-l$(libs))
SOURCES=$(SOURCE_DIR)/$(PROGNAME).cpp $(SOURCE_DIR)/configure_sdn.cpp
# to build executable from all sources in the program directory:
#SOURCES=$(wildcard $(SOURCE_DIR)/*.cpp $(SOURCE_DIR)/*.c)
OBJECTS=$(addprefix $(OBJECT_DIR)/,$(patsubst %.cpp,%.o,$(notdir $(SOURCES))))
C=gcc
CC=g++
CFLAGS=-c -Wall
CCFLAGS=-c -Wall -std=c++11
LDFLAGS=
.PHONY: all clean run
all: $(SOURCES) $(EXECUTABLE)
clean:
rm -rf "$(EXECUTABLE)" "$(OBJECT_DIR)"
run: $(SOURCES) $(EXECUTABLE)
$(EXECUTABLE)
$(EXECUTABLE): $(OBJECTS)
mkdir -p $(BINARY_DIR)
$(CC) $(LDFLAGS) $(LDLIBS) $(OBJECTS) -o $@
$(OBJECT_DIR)/%.o: $(SOURCE_DIR)/%.cpp
mkdir -p $(OBJECT_DIR)
$(CC) $(CCFLAGS) $(INCLUDES) $< -o $@
$(OBJECT_DIR)/%.o: $(SOURCE_DIR)/%.c
mkdir -p $(OBJECT_DIR)
$(C) $(CFLAGS) $(INCLUDES) $< -o $@