170 lines
3.9 KiB
Makefile
170 lines
3.9 KiB
Makefile
#
|
|
# S51 main.mk
|
|
#
|
|
# (c) Drotos Daniel, Talker Bt. 1997,99
|
|
#
|
|
|
|
STARTYEAR = 1997
|
|
|
|
SHELL = /bin/sh
|
|
CXX = @CXX@
|
|
#CPP = @CPP@
|
|
CXXCPP = @CXXCPP@
|
|
RANLIB = @RANLIB@
|
|
INSTALL = @INSTALL@
|
|
MAKEDEP = @MAKEDEP@
|
|
AR = @AR@
|
|
|
|
top_builddir = @top_builddir@
|
|
top_srcdir = @top_srcdir@
|
|
SIMDIR = sim.src
|
|
CMDDIR = cmd.src
|
|
GUIDIR = gui.src
|
|
|
|
DEFS = $(subs -DHAVE_CONFIG_H,,@DEFS@)
|
|
# FIXME: -Imcs51 must be removed!!!
|
|
CPPFLAGS = @CPPFLAGS@ -I$(top_builddir) -I$(srcdir) \
|
|
-I$(top_srcdir)/$(SIMDIR) \
|
|
-I$(top_srcdir)/$(CMDDIR) -I$(top_srcdir)/$(GUIDIR)
|
|
CFLAGS = @CFLAGS@ -I$(top_builddir) @WALL_FLAG@
|
|
CXXFLAGS = @CXXFLAGS@ -I$(top_builddir) @WALL_FLAG@
|
|
WINSOCK_AVAIL = @WINSOCK_AVAIL@
|
|
LDFLAGS = @LDFLAGS@
|
|
|
|
EXEEXT = @EXEEXT@
|
|
|
|
LIB_LIST = sim ucsimutil guiucsim cmd ucsimutil sim
|
|
UCSIM_LIBS = $(patsubst %,-l%,$(LIB_LIST)) @LIBS@
|
|
UCSIM_LIB_FILES = $(patsubst %,lib%.a,$(LIB_LIST))
|
|
|
|
RELAY_LIBS = $(patsubst %,-l%,ucsimutil) @LIBS@
|
|
RELAY_LIB_FILES = $(patsubst %,lib%.a,ucsimutil)
|
|
|
|
prefix = @prefix@
|
|
exec_prefix = @exec_prefix@
|
|
bindir = @bindir@
|
|
libdir = @libdir@
|
|
datadir = @datadir@
|
|
datarootdir = @datarootdir@
|
|
includedir = @includedir@
|
|
mandir = @mandir@
|
|
man1dir = $(mandir)/man1
|
|
man2dir = $(mandir)/man2
|
|
infodir = @infodir@
|
|
srcdir = @srcdir@
|
|
VPATH = @srcdir@
|
|
|
|
OBJECTS = pobj.o globals.o utils.o error.o app.o option.o chars.o fio.o
|
|
ifeq ($(WINSOCK_AVAIL), 1)
|
|
OBJECTS += fwio.o
|
|
else
|
|
OBJECTS += fuio.o
|
|
endif
|
|
SOURCES = $(patsubst %.o,%.cc,$(OBJECTS))
|
|
UCSIM_OBJECTS = ucsim.o
|
|
UCSIM_SOURCES = $(patsubst %.o,%.cc,$(UCSIM_OBJECTS))
|
|
RELAY_OBJECTS = relay.o
|
|
RELAY_SOURCES = $(patsubst %.o,%.cc,$(RELAY_OBJECTS))
|
|
ALL_SOURCES = $(SOURCES) $(UCSIM_SOURCES) $(RELAY_SSOURCES)
|
|
|
|
enable_ucsim = @enable_ucsim@
|
|
|
|
|
|
# Compiling entire program or any subproject
|
|
# ------------------------------------------
|
|
all: checkconf libs
|
|
|
|
libs: libucsimutil.a
|
|
|
|
main_app: checkconf ucsim_app relay_app
|
|
|
|
# Compiling and installing everything and runing test
|
|
# ---------------------------------------------------
|
|
install: all installdirs
|
|
|
|
|
|
# Deleting all the installed files
|
|
# --------------------------------
|
|
uninstall:
|
|
rm -f $(DESTDIR)$(bindir)/s51$(EXEEXT)
|
|
rm -f $(DESTDIR)$(bindir)/savr$(EXEEXT)
|
|
rm -f $(DESTDIR)$(bindir)/serialview$(EXEEXT)
|
|
rm -f $(DESTDIR)$(bindir)/portmon$(EXEEXT)
|
|
rm -f $(DESTDIR)$(bindir)/sstm8$(EXEEXT)
|
|
rm -f $(DESTDIR)$(bindir)/sst7$(EXEEXT)
|
|
|
|
|
|
# Performing self-test
|
|
# --------------------
|
|
check:
|
|
|
|
test:
|
|
|
|
# Performing installation test
|
|
# ----------------------------
|
|
installcheck:
|
|
|
|
|
|
# Creating installation directories
|
|
# ---------------------------------
|
|
installdirs:
|
|
|
|
|
|
# Creating dependencies
|
|
# ---------------------
|
|
dep: main.dep
|
|
|
|
main.dep: $(ALL_SOURCES) *.h $(srcdir)/*.h
|
|
$(MAKEDEP) $(CPPFLAGS) $(filter %.cc,$^) >main.dep
|
|
|
|
-include main.dep
|
|
include $(srcdir)/clean.mk
|
|
|
|
#parser.cc: parser.y
|
|
|
|
#plex.cc: plex.l
|
|
|
|
# My rules
|
|
# --------
|
|
libucsimutil.a: $(OBJECTS)
|
|
$(AR) -rc $@ $(OBJECTS)
|
|
$(RANLIB) $@
|
|
|
|
|
|
ifeq ($(enable_ucsim),yes)
|
|
ucsim_app: libs ucsim$(EXEEXT)
|
|
else
|
|
ucsim_app:
|
|
endif
|
|
|
|
ftest_app: libs ftest$(EXEEXT)
|
|
|
|
relay_app: libs relay$(EXEEXT)
|
|
|
|
ucsim$(EXEEXT): $(UCSIM_OBJECTS) $(UCSIM_LIB_FILES)
|
|
echo $(UCSIM_LIB_FILES)
|
|
$(CXX) $(CXXFLAGS) $(LDFLAGS) $< -L$(top_builddir) $(UCSIM_LIBS) -o $@
|
|
|
|
ftest$(EXEEXT): ftest.o libucsimutil.a
|
|
$(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $< -L$(top_builddir) -lucsimutil @LIBS@
|
|
|
|
relay$(EXEEXT): $(RELAY_OBJECTS) $(RELAY_LIB_FILES)
|
|
$(CXX) $(CXXFLAGS) $(LDFLAGS) $< -L$(top_builddir) $(RELAY_LIBS) -o $@
|
|
|
|
|
|
ptt: ptt.o
|
|
$(CXX) $(CXXFLAGS) -o $@ $< -lpthread
|
|
.cc.o:
|
|
$(CXX) $(CXXFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c $< -o $@
|
|
|
|
|
|
# Remaking configuration
|
|
# ----------------------
|
|
checkconf:
|
|
@if [ -f devel ]; then\
|
|
$(top_srcdir)/mkecho $(top_builddir) "MAIN.MK checkconf";\
|
|
$(MAKE) -f conf.mk srcdir="$(srcdir)" freshconf;\
|
|
fi
|
|
|
|
# End of main_in.mk/main.mk
|