94 lines
2.3 KiB
Plaintext
94 lines
2.3 KiB
Plaintext
|
|
# TRACE32 TCL Remote API
|
|
# Copyright (c) 1998-2015 Lauterbach GmbH
|
|
# All rights reserved
|
|
#
|
|
# GNU Makefile
|
|
#
|
|
# This makefile needs the swig application.
|
|
# It can be downloaded using sudo apt-get install swig
|
|
# You may need to install TCL and adapt its include directory
|
|
#
|
|
#
|
|
|
|
CC := gcc
|
|
TCL := /usr/include/tcl8.6/
|
|
CFLAGS := -pipe -c -O2 -MMD -MP -fPIC -Wall -Wextra -g
|
|
LDFLAGS := -shared
|
|
CFLAGS32 := -m32
|
|
CFLAGS64 := -m64
|
|
RM := rm
|
|
MKDIR := mkdir
|
|
SWIG := swig
|
|
ODIR32 := linux
|
|
ODIR64 := linux64
|
|
SDIR := ../capi/src
|
|
SDIR2 := .
|
|
TARGETLIB32 := t32tclapi.so
|
|
TARGETLIB64 := t32tclapi64.so
|
|
|
|
SRCS := hremote.c hlinknet.c t32nettcp.c tcpsimple2.c
|
|
SRC_SWIG := t32_wrap.c
|
|
SRCS2 := t32util.c $(SRC_SWIG)
|
|
DEPS := $(SRCS:%.c=%.d)
|
|
OBJS := $(SRCS:%.c=%.o)
|
|
DEPS2 := $(SRCS2:%.c=%.d)
|
|
OBJS2 := $(SRCS2:%.c=%.o)
|
|
|
|
OBJS32 := $(addprefix $(ODIR32)/,$(OBJS) $(OBJS2))
|
|
OBJS64 := $(addprefix $(ODIR64)/,$(OBJS) $(OBJS2))
|
|
DEPS32 := $(addprefix $(ODIR32)/,$(DEPS) $(DEPS2))
|
|
DEPS64 := $(addprefix $(ODIR64)/,$(DEPS) $(DEPS2))
|
|
|
|
.PHONY: help
|
|
help:
|
|
@echo
|
|
@echo make help ... show this help
|
|
@echo make all .... same as make rel
|
|
@echo make rel .... build t32tclapi.so and t32tclapi64.so
|
|
@echo make rel32 .. build t32tclapi.so
|
|
@echo make rel64 .. build t32tclapi64.so
|
|
@echo make clean .. delete directories ./linux and ./linux64
|
|
@echo
|
|
|
|
.PHONY: all
|
|
all: rel
|
|
|
|
rel: rel32 rel64
|
|
|
|
rel32: $(ODIR32)/$(TARGETLIB32)
|
|
|
|
rel64: $(ODIR64)/$(TARGETLIB64)
|
|
|
|
$(ODIR32)/$(SRC_SWIG:%.c=%.o) $(ODIR64)/$(SRC_SWIG:%.c=%.o): CFLAGS += -Wno-missing-field-initializers -Wno-unused-but-set-parameter -Wno-missing-braces
|
|
|
|
$(SDIR2)/$(SRC_SWIG): t32.i $(SDIR)/t32.h
|
|
$(SWIG) -tcl t32.i
|
|
|
|
$(ODIR32) $(ODIR64):
|
|
$(MKDIR) $@
|
|
|
|
$(ODIR32)/$(TARGETLIB32): $(OBJS32)
|
|
$(CC) $(LDFLAGS) $(CFLAGS32) -o $@ $^
|
|
|
|
$(ODIR64)/$(TARGETLIB64): $(OBJS64)
|
|
$(CC) $(LDFLAGS) $(CFLAGS64) -o $@ $^
|
|
|
|
$(ODIR32)/%.o : $(SDIR)/%.c | $(ODIR32)
|
|
$(CC) $(CFLAGS) $(CFLAGS32) -I$(SDIR) -o $@ $<
|
|
|
|
$(ODIR64)/%.o : $(SDIR)/%.c | $(ODIR64)
|
|
$(CC) $(CFLAGS) $(CFLAGS64) -I$(SDIR) -o $@ $<
|
|
|
|
$(ODIR32)/%.o : $(SDIR2)/%.c | $(ODIR32)
|
|
$(CC) $(CFLAGS) $(CFLAGS32) -I$(TCL) -o $@ $<
|
|
|
|
$(ODIR64)/%.o : $(SDIR2)/%.c | $(ODIR64)
|
|
$(CC) $(CFLAGS) $(CFLAGS64) -I$(TCL) -o $@ $<
|
|
|
|
-include $(DEPS32) $(DEPS64)
|
|
|
|
.PHONY: clean extraclean
|
|
clean extraclean:
|
|
-$(RM) -rf $(ODIR32) $(ODIR64) $(SRC_SWIG)
|