You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
241 lines
6.7 KiB
241 lines
6.7 KiB
# Makefile for cln/src
|
|
|
|
#### Start of system configuration section. ####
|
|
|
|
# Directories used by "make":
|
|
srcdir = @srcdir@
|
|
top_srcdir = @top_srcdir@
|
|
|
|
# Directories used by "make install":
|
|
prefix = @prefix@
|
|
local_prefix = /usr/local
|
|
exec_prefix = @exec_prefix@
|
|
datarootdir = @datarootdir@
|
|
datadir = @datadir@
|
|
libdir = @libdir@
|
|
includedir = @includedir@
|
|
mandir = @mandir@
|
|
DESTDIR =
|
|
|
|
# Programs used by "make":
|
|
# C compiler
|
|
CC = @CC@
|
|
CFLAGS = @CFLAGS@
|
|
CPP = @CPP@
|
|
CPPFLAGS = @CPPFLAGS@
|
|
# C++ compiler
|
|
CXX = @CXX@
|
|
CXXFLAGS = @CXXFLAGS@
|
|
CXXCPP = @CXXCPP@
|
|
INCLUDES = -I../include -I$(top_srcdir)/include
|
|
override CPPFLAGS += $(INCLUDES)
|
|
LDFLAGS = @LDFLAGS@
|
|
LIBS = @LIBS@
|
|
LIBTOOL = @LIBTOOL@
|
|
LIBTOOL_COMPILE = $(LIBTOOL) --mode=compile
|
|
LIBTOOL_LINK = $(LIBTOOL) --mode=link
|
|
LIBTOOL_INSTALL = $(LIBTOOL) --mode=install
|
|
LIBTOOL_UNINSTALL = $(LIBTOOL) --mode=uninstall
|
|
AR = ar
|
|
AR_FLAGS = rc
|
|
RANLIB = @RANLIB@
|
|
MV = mv
|
|
LN = ln
|
|
RM = rm -f
|
|
MKDIR = mkdir -p
|
|
@SET_MAKE@
|
|
# Libtool's library interface versions:
|
|
CL_CURRENT = @CL_CURRENT@
|
|
CL_REVISION = @CL_REVISION@
|
|
CL_AGE = @CL_AGE@
|
|
|
|
# Programs used by "make install":
|
|
INSTALL = @INSTALL@
|
|
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
|
INSTALL_DATA = @INSTALL_DATA@
|
|
|
|
#### End of system configuration section. ####
|
|
|
|
SHELL = /bin/sh
|
|
|
|
# Needed by $(LIBTOOL).
|
|
top_builddir = ..
|
|
|
|
# When this Makefile is called with SUBDIR=some_subdirectory, it builds
|
|
# only the object files belonging to sources in that subdirectory. The
|
|
# final library is built only if SUBDIR=.
|
|
SUBDIR = .
|
|
|
|
# Define the search path for sources.
|
|
# The variable $(aux_srcdir) is needed because new versions of aufoconf tend to
|
|
# remove $(srcdir), ${srcdir} and so on...
|
|
aux_srcdir = @srcdir@
|
|
VPATH = $(aux_srcdir)/$(SUBDIR)
|
|
|
|
# Add subdirectory specific flags.
|
|
include $(srcdir)/$(SUBDIR)/Makeflags
|
|
override CPPFLAGS += $(SUBDIR_INCLUDES)
|
|
|
|
# Need to know the system name.
|
|
SYSTEM := $(shell uname -s)
|
|
|
|
FILES_CC := $(notdir $(wildcard $(srcdir)/$(SUBDIR)/*.cc))
|
|
FILES_CC := $(filter-out %.i.cc, $(FILES_CC))
|
|
ASMFILES_CC := $(patsubst cl_asm_@host_cpu@_%.cc,cl_asm_%.cc, $(filter cl_asm_@host_cpu@_%.cc, $(FILES_CC)))
|
|
FILES_CC := $(filter-out cl_asm_%.cc, $(FILES_CC))
|
|
|
|
FILES_I_CC := $(patsubst %.cc,%.i.cc,$(FILES_CC))
|
|
|
|
FILES_S := $(patsubst %.cc,%.s,$(FILES_CC))
|
|
|
|
FILES_LO := $(patsubst %.cc,%.lo,$(FILES_CC))
|
|
|
|
ASMFILES_S := $(patsubst %.cc,%.s,$(ASMFILES_CC))
|
|
|
|
ASMFILES_LO := $(patsubst %.cc,%.lo,$(ASMFILES_CC))
|
|
|
|
OBJECTS_LO = $(FILES_LO) $(ASMFILES_LO)
|
|
|
|
SUBDIRS := $(patsubst $(srcdir)/%/.,%,$(wildcard $(srcdir)/$(SUBDIR)/*/.))
|
|
# Avoid certain subdirectories:
|
|
# private/ and old/ don't contain valid sources,
|
|
# CVS/, RCS/ and SCCS/ are created when people put the sources under version control,
|
|
# ii_files/ is created during "make" by SGI C++.
|
|
SUBDIRS := $(filter-out old ./old private ./private CVS %/CVS RCS %/RCS SCCS %/SCCS ii_files ./ii_files,$(SUBDIRS))
|
|
|
|
SUBDIRS_TARGET := $(patsubst %,%.target,$(SUBDIRS))
|
|
SUBDIRS_DIRDEP := $(patsubst %,%.dirdep,$(SUBDIRS))
|
|
|
|
ifeq ($(SUBDIR),.)
|
|
ALLFILES_CC := $(notdir $(wildcard $(srcdir)/*.cc) $(foreach subdir,$(SUBDIRS), $(wildcard $(srcdir)/$(subdir)/*.cc) $(wildcard $(srcdir)/$(subdir)/*/*.cc) $(wildcard $(srcdir)/$(subdir)/*/*/*.cc)))
|
|
ALLFILES_CC := $(filter-out %.i.cc, $(ALLFILES_CC))
|
|
ALLASMFILES_CC := $(patsubst cl_asm_@host_cpu@_%.cc,cl_asm_%.cc, $(filter cl_asm_@host_cpu@_%.cc, $(ALLFILES_CC)))
|
|
ALLFILES_CC := $(filter-out cl_asm_%.cc, $(ALLFILES_CC))
|
|
ALLFILES_LO := $(patsubst %.cc,%.lo,$(ALLFILES_CC))
|
|
ALLASMFILES_LO := $(patsubst %.cc,%.lo,$(ALLASMFILES_CC))
|
|
ALLOBJECTS_LO = $(ALLFILES_LO) $(ALLASMFILES_LO)
|
|
|
|
all : $(OBJECTS_LO) $(SUBDIRS_TARGET) libcln.la
|
|
else
|
|
all : $(OBJECTS_LO) $(SUBDIRS_TARGET)
|
|
endif
|
|
|
|
alls : $(FILES_S) $(ASMFILES_S)
|
|
|
|
allo : $(FILES_LO) $(ASMFILES_LO)
|
|
|
|
ASMFLAGS := @ASMFLAGS@
|
|
ifeq (@AS_UNDERSCORE@,true)
|
|
ASMFLAGS += -DUNDERSCORE
|
|
endif
|
|
|
|
# Rules for normal compilation.
|
|
|
|
%.lo : %.c
|
|
$(LIBTOOL_COMPILE) $(CC) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c $<
|
|
|
|
%.lo : %.cc
|
|
$(LIBTOOL_COMPILE) $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c $<
|
|
|
|
# Rules for normal compilation, only needed for debugging.
|
|
|
|
%.s : %.c
|
|
$(CC) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -S $< -o $@
|
|
|
|
%.s : %.cc
|
|
$(CXX) $(CXXFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -S $< -o $@
|
|
|
|
# Rules for preprocessing.
|
|
|
|
%.i : %.c
|
|
$(CPP) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) $< > $@
|
|
|
|
%.i.cc : %.cc
|
|
$(CXXCPP) $(CXXFLAGS) $(CPPFLAGS) $(TARGET_ARCH) $< > $@
|
|
|
|
# Rules for assembly language files,
|
|
|
|
ifneq ($(ASMFILES_LO),)
|
|
|
|
ifneq ($(filter @host_cpu@,sparc sparc64),)
|
|
$(ASMFILES_S) : %.s : %.cc
|
|
$(CXXCPP) $(CXXFLAGS) $(CPPFLAGS) $(TARGET_ARCH) $(ASMFLAGS) $< | grep -v '^#' | grep -v '^ *#line' | sed -e 's/\([.%]\) /\1/g' -e 's/ , /,/g' -e 's/ :/:/g' -e 's/\$$/#/g' > $@
|
|
else
|
|
ifeq (@host_cpu@,m68k)
|
|
$(ASMFILES_S) : %.s : %.cc
|
|
ifeq (@AS_UNDERSCORE@,true)
|
|
$(CXXCPP) $(CXXFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -P $(ASMFLAGS) $< | sed -e 's/\\#/#/g' -e 's/\$$//g' > $@
|
|
else
|
|
$(CXXCPP) $(CXXFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -P $(ASMFLAGS) $< | sed -e 's/\\#/#/g' -e 's/\$$/%/g' > $@
|
|
endif
|
|
else
|
|
ifeq (@host_cpu@,hppa)
|
|
$(ASMFILES_S) : %.s : %.cc
|
|
-$(CXXCPP) $(CXXFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -P $(ASMFLAGS) $< > $@
|
|
else
|
|
$(ASMFILES_S) : %.s : %.cc
|
|
$(CXXCPP) $(CXXFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -P $(ASMFLAGS) $< > $@
|
|
endif
|
|
endif
|
|
endif
|
|
|
|
ifeq (@host_cpu@,hppa)
|
|
# Only the native as groks the .SHORTDATA statements
|
|
$(ASMFILES_LO) : %.lo : %.s
|
|
$(LIBTOOL_COMPILE) $(CC) $(CFLAGS) $(TARGET_ARCH) -c $< \
|
|
|| COMPILER_PATH=/usr/ccs/bin $(LIBTOOL_COMPILE) $(CC) $(CFLAGS) $(TARGET_ARCH) -c $< \
|
|
|| COMPILER_PATH=/bin $(LIBTOOL_COMPILE) $(CC) $(CFLAGS) $(TARGET_ARCH) -c $<
|
|
else
|
|
$(ASMFILES_LO) : %.lo : %.s
|
|
$(LIBTOOL_COMPILE) $(CC) $(CFLAGS) $(ASMFLAGS) $(TARGET_ARCH) -c $<
|
|
endif
|
|
|
|
endif
|
|
|
|
|
|
# Recurse into subdirectories
|
|
$(SUBDIRS_TARGET) : %.target : %.dirdep
|
|
$(MAKE) SUBDIR=$*
|
|
|
|
$(SUBDIRS_DIRDEP) : %.dirdep :
|
|
|
|
|
|
ifeq ($(SUBDIR),.)
|
|
|
|
$(ALLOBJECTS_LO) : $(SUBDIRS_TARGET)
|
|
|
|
libcln.la : $(LIBTOOL) $(ALLOBJECTS_LO)
|
|
echo $(ALLOBJECTS_LO) | tr ' ' '\n' > libcln.objectlist
|
|
$(LIBTOOL_LINK) $(CXX) -o libcln.la -rpath $(libdir) -version-info $(CL_CURRENT):$(CL_REVISION):$(CL_AGE) $(LDFLAGS) $(LIBS) -objectlist libcln.objectlist
|
|
|
|
install : all force
|
|
$(MKDIR) $(DESTDIR)$(libdir)
|
|
$(LIBTOOL_INSTALL) $(INSTALL_PROGRAM) libcln.la $(DESTDIR)$(libdir)/libcln.la
|
|
$(MKDIR) $(DESTDIR)$(includedir)/cln
|
|
$(INSTALL_DATA) $(top_srcdir)/include/cln/*.h $(DESTDIR)$(includedir)/cln
|
|
$(INSTALL_DATA) ../include/cln/*.h $(DESTDIR)$(includedir)/cln
|
|
|
|
installdirs : force
|
|
$(MKDIR) $(DESTDIR)$(libdir)
|
|
$(MKDIR) $(DESTDIR)$(includedir)/cln
|
|
|
|
uninstall : force
|
|
$(LIBTOOL_UNINSTALL) $(RM) $(DESTDIR)$(libdir)/libcln.la
|
|
$(RM) -r $(DESTDIR)$(includedir)/cln
|
|
|
|
check : all
|
|
|
|
mostlyclean : clean
|
|
|
|
clean : force
|
|
$(RM) *.s *.o *.lo *.a *.la *.objectlist core
|
|
$(RM) -r .libs _libs
|
|
|
|
distclean : clean
|
|
$(RM) config.status config.log config.cache Makefile
|
|
|
|
maintainer-clean : distclean
|
|
|
|
endif
|
|
|
|
force :
|