Restored necessary files

This commit is contained in:
Xavier ASUS 2019-10-24 23:35:25 +02:00
parent 0d075d8f25
commit 83a2fa10b0
2 changed files with 413 additions and 0 deletions

96
Makefile.common.in Normal file
View File

@ -0,0 +1,96 @@
#
#
#
# Version
PACKAGE = @PACKAGE@
VERSION = @VERSION@
VERSIONHI = @VERSIONHI@
VERSIONLO = @VERSIONLO@
VERSIONP = @VERSIONP@
# Programs
SHELL = /bin/sh
CC = @CCACHE@ @CC@
CPP = @CCACHE@ @CPP@
CXX = @CCACHE@ @CXX@
AR = @AR@
RANLIB = @RANLIB@
INSTALL = @INSTALL@
YACC = @YACC@
PYTHON = @PYTHON@
LEX = @LEX@
AWK = @AWK@
STRIP = @STRIP@
MAKEDEP = @MAKEDEP@
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@
docdir = @docdir@
DESTDIR =
include_dir_suffix = @include_dir_suffix@
lib_dir_suffix = @lib_dir_suffix@
# Modules to enable/disable
OPT_DISABLE_AVR = @OPT_DISABLE_AVR@
OPT_DISABLE_DS390 = @OPT_DISABLE_DS390@
OPT_DISABLE_DS400 = @OPT_DISABLE_DS400@
OPT_DISABLE_HC08 = @OPT_DISABLE_HC08@
OPT_DISABLE_S08 = @OPT_DISABLE_S08@
OPT_DISABLE_MCS51 = @OPT_DISABLE_MCS51@
OPT_DISABLE_PIC14 = @OPT_DISABLE_PIC14@
OPT_DISABLE_PIC16 = @OPT_DISABLE_PIC16@
OPT_DISABLE_XA51 = @OPT_DISABLE_XA51@
OPT_DISABLE_Z80 = @OPT_DISABLE_Z80@
OPT_DISABLE_Z180 = @OPT_DISABLE_Z180@
OPT_DISABLE_R2K = @OPT_DISABLE_R2K@
OPT_DISABLE_R3KA = @OPT_DISABLE_R3KA@
OPT_DISABLE_TLCS90 = @OPT_DISABLE_TLCS90@
OPT_DISABLE_GBZ80 = @OPT_DISABLE_GBZ80@
OPT_DISABLE_STM8 = @OPT_DISABLE_STM8@
OPT_DISABLE_PDK13 = @OPT_DISABLE_PDK13@
OPT_DISABLE_PDK14 = @OPT_DISABLE_PDK14@
OPT_DISABLE_PDK15 = @OPT_DISABLE_PDK15@
OPT_DISABLE_PDK16 = @OPT_DISABLE_PDK16@
OPT_ENABLE_DOC = @OPT_ENABLE_DOC@
OPT_DISABLE_DEVICE_LIB = @OPT_DISABLE_DEVICE_LIB@
OPT_DISABLE_PACKIHX = @OPT_DISABLE_PACKIHX@
OPT_DISABLE_SDBINUTILS = @OPT_DISABLE_SDBINUTILS@
OPT_DISABLE_SDCPP = @OPT_DISABLE_SDCPP@
OPT_DISABLE_UCSIM = @OPT_DISABLE_UCSIM@
OPT_DISABLE_NON_FREE = @OPT_DISABLE_NON_FREE@
SLIB = $(top_builddir)/support/util
EXEEXT = @EXEEXT@
transform = @program_transform_name@
# Flags
DEFS += $(subs -DHAVE_CONFIG_H,,@DEFS@)
CPPFLAGS += @CPPFLAGS@ $(INCLUDEFLAGS) -I. -I$(top_builddir) -I$(srcdir)/$(SLIB) -I$(srcdir)
CFLAGS += @CFLAGS@ @WALL_FLAG@
CXXFLAGS += @CXXFLAGS@
LDFLAGS += @LDFLAGS@
EXTRALIBS += @LIBS@
# Shared settings between all the sub Makefiles
# Done here so that we don't have to start a Make from the top levelport
# directory.
# Library compilation options
CLEANSPEC = *.lst *.asm *.sym *~ *.cdb *.dep *.rul
OBJ = $(SOURCES:.c=.o) $(CXXSOURCES:.cc=.o)

317
Makefile.in Normal file
View File

@ -0,0 +1,317 @@
#
# sdcc project main Makefile
#
SHELL = /bin/sh
VPATH = @srcdir@
srcdir = @srcdir@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
EXEEXT = @EXEEXT@
include Makefile.common
SDCC_LIBS = support/makebin
SDCC_SCRIPTS = support/scripts
SDCC_DOC = doc
# Parts that are not normally compiled but need to be cleaned
SDCC_EXTRA = support/regression support/valdiag
SDCC_PACKIHX = support/packihx
SDCC_SDBINUTILS = support/sdbinutils
ifneq ($(OPT_DISABLE_HC08)$(OPT_DISABLE_S08), 11)
SDCC_AS += sdas/as6808
SDCC_LD += sdcc-ld6808
endif
ifeq ($(OPT_DISABLE_STM8), 0)
SDCC_AS += sdas/asstm8
SDCC_LD += sdcc-ldstm8
endif
ifneq ($(OPT_DISABLE_DS390)$(OPT_DISABLE_DS400), 11)
SDCC_AS += sdas/as8xcxxx
endif
ifeq ($(OPT_DISABLE_MCS51), 0)
SDCC_AS += sdas/as8051
SDCC_LD += sdcc-ld8051
SDCC_MISC += debugger/mcs51
endif
ifneq ($(OPT_DISABLE_Z80)$(OPT_DISABLE_Z180), 11)
SDCC_AS += sdas/asz80
SDCC_LD += sdcc-ldz80
endif
ifneq ($(OPT_DISABLE_R2K)$(OPT_DISABLE_R3KA), 11)
SDCC_AS += sdas/asrab
SDCC_LD += sdcc-ldz80
endif
ifeq ($(OPT_DISABLE_TLCS90), 0)
SDCC_AS += sdas/astlcs90
endif
ifeq ($(OPT_DISABLE_GBZ80), 0)
SDCC_AS += sdas/asgb
SDCC_LD += sdcc-ldgb
endif
ifeq ($(OPT_DISABLE_PDK13), 0)
SDCC_AS += sdas/aspdk13
SDCC_LD += sdcc-ldpdk
endif
ifeq ($(OPT_DISABLE_PDK14), 0)
SDCC_AS += sdas/aspdk14
SDCC_LD += sdcc-ldpdk
endif
ifeq ($(OPT_DISABLE_PDK15), 0)
SDCC_AS += sdas/aspdk15
SDCC_LD += sdcc-ldpdk
endif
ifeq ($(OPT_DISABLE_PDK16), 0)
SDCC_AS += sdas/aspdk16
SDCC_LD += sdcc-ldpdk
endif
ifeq ($(OPT_DISABLE_UCSIM), 0)
TARGETS += sdcc-misc
SDCC_MISC += sim/ucsim
PKGS += $(SDCC_MISC)
endif
SDCC_BINUTILS =
ifeq ($(OPT_DISABLE_SDBINUTILS), 0)
TARGETS += sdcc-sdbinutils
PKGS += $(SDCC_SDBINUTILS)
SDBINUTILS_BINS = sdar$(EXEEXT) sdranlib$(EXEEXT) sdnm$(EXEEXT) sdobjcopy$(EXEEXT)
SDCC_BINUTILS = sdcc-sdbinutils
endif
ifeq ($(OPT_DISABLE_DEVICE_LIB), 0)
TARGETS += sdcc-device-lib
PKGS += device/lib
ifeq ($(OPT_DISABLE_NON_FREE), 0)
PKGS += device/non-free/lib
endif
endif
ifeq ($(OPT_DISABLE_PACKIHX), 0)
TARGETS += sdcc-packihx
PKGS += $(SDCC_PACKIHX)
endif
ifeq ($(OPT_ENABLE_DOC), 1)
TARGETS += sdcc-doc
endif
# always install docs, which don't need to be built
PKGS += $(SDCC_DOC)
ifeq ($(OPT_DISABLE_SDCPP), 0)
SDCC_LIBS += support/cpp
endif
TARGETS += sdcc-libs sdcc-cc sdcc-device-inc sdcc-as sdcc-ld sdcc-scripts
PKGS += $(SDCC_LIBS) src device/include
ifeq ($(OPT_DISABLE_NON_FREE), 0)
PKGS += device/non-free/include
endif
PKGS += $(SDCC_AS) sdas/linksrc $(SDCC_SCRIPTS)
PORTS = $(shell cat ports.build)
ALLPORTS = $(shell cat ports.all)
# Compiling entire program or any subproject
# ------------------------------------------
all: checkconf sdcc
tini: checkconf sdcc-tini
sdcc-libs: sdcc-sdbinutils
for lib in $(SDCC_LIBS); do $(MAKE) -C $$lib; done
sdcc-cc: sdcc-libs
$(MAKE) -C src
sdcc-as:
$(foreach as, $(SDCC_AS), $(MAKE) -C $(as) &&) echo "Assemblers built successfully."
sdcc-ld:
$(MAKE) -C sdas/linksrc $(SDCC_LD)
sdcc-misc:
for misc in $(SDCC_MISC); do $(MAKE) -C $$misc ; done
sdcc-scripts:
$(MAKE) -C $(SDCC_SCRIPTS)
sdcc-packihx:
$(MAKE) -C $(SDCC_PACKIHX)
sdcc-sdbinutils:
$(MAKE) -C $(SDCC_SDBINUTILS)
# in some cases (cygwin) the real binaries are in .libs
for bin in $(SDBINUTILS_BINS); do \
if [ -f $(SDCC_SDBINUTILS)/binutils/.libs/$$bin ]; then \
cp $(SDCC_SDBINUTILS)/binutils/.libs/$$bin bin; \
else \
cp $(SDCC_SDBINUTILS)/binutils/$$bin bin; \
fi \
done
sdcc-device-inc:
$(MAKE) -C device/include
ifeq ($(OPT_DISABLE_NON_FREE), 0)
$(MAKE) -C device/non-free/include
endif
sdcc-device-lib: sdcc-cc sdcc-as sdcc-ld $(SDCC_BINUTILS)
$(MAKE) -C device/lib
ifeq ($(OPT_DISABLE_NON_FREE), 0)
$(MAKE) -C device/non-free/lib
endif
sdcc-device-tini:
$(MAKE) -C device/include
ifeq ($(OPT_DISABLE_NON_FREE), 0)
$(MAKE) -C device/non-free/include
endif
$(MAKE) -C device/lib model-ds390 model-ds400
# doc depends on latex and latex2html
sdcc-doc:
$(MAKE) -C doc
sdcc: $(TARGETS)
sdcc-tini: sdcc-cc sdcc-as sdcc-ld sdcc-device-tini sdcc-packihx
$(MAKE) -f main.mk all
# Some interesting sub rules
sdcc-bin: sdcc-cc sdcc-as sdcc-ld sdcc-misc
sdcc-base: sdcc-cc sdcc-as sdcc-ld
# Compiling and installing everything and running test
# ----------------------------------------------------
install: checkconf sdcc
$(MAKE) -f main.mk install
@for pkg in $(PKGS); do\
$(MAKE) -C $$pkg install ;\
done
# Deleting all the installed files
# --------------------------------
uninstall:
$(MAKE) -f main.mk uninstall
@for pkg in $(PKGS); do\
$(MAKE) -C $$pkg uninstall ;\
done
# Deleting all files created by building the program
# --------------------------------------------------
clean:
@echo "+ Cleaning root of the project..."
$(MAKE) -f $(srcdir)/clean.mk clean
@echo "+ Cleaning packages in their directories..."
for pkg in $(PKGS); do\
$(MAKE) -C $$pkg PORTS="$(PORTS)" EXEEXT=$(EXEEXT) clean ;\
done
# Deleting all files created by configuring or building the program
# -----------------------------------------------------------------
distclean:
@echo "+ DistCleaning packages using clean.mk..."
for pkg in $(PKGS); do\
$(MAKE) -C $$pkg PORTS="$(PORTS)" EXEEXT=$(EXEEXT) distclean ;\
done
for pkg in $(SDCC_EXTRA); do \
$(MAKE) -C $$pkg distclean; \
done
@echo "+ DistCleaning root of the project..."
$(MAKE) -f $(srcdir)/clean.mk distclean
# Like clean but some files may still exist
# -----------------------------------------
mostlyclean: clean
$(MAKE) -f $(srcdir)/clean.mk mostlyclean
for pkg in $(PKGS); do\
$(MAKE) -C $$pkg PORTS="$(PORTS)" EXEEXT=$(EXEEXT) mostlyclean ;\
done
# Deleting everything that can reconstructed by this Makefile. It deletes
# everything deleted by distclean plus files created by bison, stc.
# -----------------------------------------------------------------------
realclean: distclean
$(MAKE) -f $(srcdir)/clean.mk realclean
for pkg in $(PKGS); do\
$(MAKE) -C $$pkg PORTS="$(PORTS)" EXEEXT=$(EXEEXT) realclean ;\
done
# Performing self-test
# --------------------
check:
# Performing installation test
# ----------------------------
installcheck:
# Creating dependencies
# ---------------------
dep: $(SDCC_LIBS)
$(MAKE) -f main.mk dep
@for pkg in $(PKGS); do\
$(MAKE) -C $$pkg dep ;\
done
# My rules
# --------
newer: distclean
@if [ -f start ]; then \
tar cvf - \
`find . -newer start -type f -print` |\
gzip -9c >`date '+%m%d%H%M'`.tgz; \
else \
echo "start file not found.\n"; \
exit 1; \
fi
putcopyright:
'put(c)' -s $(STARTYEAR) *.cc *.h *.y *.l
# Remaking configuration
# ----------------------
configure: configure.in
$(SHELL) $(AUTOCONF)
main.mk: $(srcdir)/main_in.mk $(srcdir)/configure.in config.status
$(SHELL) ./config.status
Makefiles: makefiles
makefiles: config.status
config.status: configure
$(SHELL) ./config.status --recheck
makefiles:
$(SHELL) ./config.status
freshconf: main.mk
checkconf:
@if [ -f devel ]; then\
$(MAKE) freshconf;\
fi
# End of Makefile