168 lines
5.4 KiB
Makefile
168 lines
5.4 KiB
Makefile
|
|
# -*- makefile -*-
|
||
|
|
# This is the developer's makefile.
|
||
|
|
# It obeys the environment variables CXX, CFLAGS if you have set them.
|
||
|
|
|
||
|
|
|
||
|
|
GPERF = gperf
|
||
|
|
CMAKE = cmake
|
||
|
|
CTEST = ctest
|
||
|
|
MKDIR = mkdir -p
|
||
|
|
RM = rm -f
|
||
|
|
|
||
|
|
CXX ?= g++ -Wall
|
||
|
|
|
||
|
|
CXXFLAGS := $(CXXFLAGS) -Ilib
|
||
|
|
|
||
|
|
all : lib/generated \
|
||
|
|
lib/generated/aliases.h lib/generated/aliases_sysaix.h lib/generated/aliases_syshpux.h lib/generated/aliases_sysosf1.h lib/generated/aliases_syssolaris.h \
|
||
|
|
lib/generated/aliases_aix.h lib/generated/aliases_aix_sysaix.h \
|
||
|
|
lib/generated/aliases_osf1.h lib/generated/aliases_osf1_sysosf1.h \
|
||
|
|
lib/generated/aliases_dos.h \
|
||
|
|
lib/generated/aliases_zos.h \
|
||
|
|
lib/generated/aliases_extra.h \
|
||
|
|
lib/generated/flags.h
|
||
|
|
|
||
|
|
lib/generated :
|
||
|
|
$(MKDIR) lib/generated
|
||
|
|
|
||
|
|
lib/generated/genaliases : tools/genaliases.cpp
|
||
|
|
$(CXX) $(CFLAGS) $(CXXFLAGS) $(LDFLAGS) $< -o $@
|
||
|
|
|
||
|
|
lib/generated/aliases.gperf : lib/generated/genaliases
|
||
|
|
./lib/generated/genaliases $@
|
||
|
|
|
||
|
|
lib/generated/aliases.h : lib/generated/aliases.gperf
|
||
|
|
$(GPERF) -L C++ -Z HashPool -m 10 $< > $@
|
||
|
|
|
||
|
|
|
||
|
|
lib/generated/genaliases_sysaix : tools/genaliases.cpp
|
||
|
|
$(CXX) $(CFLAGS) $(CXXFLAGS) $(LDFLAGS) -DUSE_AIX_ALIASES $< -o $@
|
||
|
|
|
||
|
|
lib/generated/aliases_sysaix.gperf : lib/generated/genaliases_sysaix
|
||
|
|
./lib/generated/genaliases_sysaix $@
|
||
|
|
|
||
|
|
lib/generated/aliases_sysaix.h : lib/generated/aliases_sysaix.gperf
|
||
|
|
$(GPERF) -L C++ -Z HashPool -m 10 $< > $@
|
||
|
|
|
||
|
|
|
||
|
|
lib/generated/genaliases_syshpux : tools/genaliases.cpp
|
||
|
|
$(CXX) $(CFLAGS) $(CXXFLAGS) $(LDFLAGS) -DUSE_HPUX_ALIASES $< -o $@
|
||
|
|
|
||
|
|
lib/generated/aliases_syshpux.gperf : lib/generated/genaliases_syshpux
|
||
|
|
./lib/generated/genaliases_syshpux $@
|
||
|
|
|
||
|
|
lib/generated/aliases_syshpux.h : lib/generated/aliases_syshpux.gperf
|
||
|
|
$(GPERF) -L C++ -Z HashPool -m 10 $< > $@
|
||
|
|
|
||
|
|
|
||
|
|
lib/generated/genaliases_sysosf1 : tools/genaliases.cpp
|
||
|
|
$(CXX) $(CFLAGS) $(CXXFLAGS) $(LDFLAGS) -DUSE_OSF1_ALIASES $< -o $@
|
||
|
|
|
||
|
|
lib/generated/aliases_sysosf1.gperf : lib/generated/genaliases_sysosf1
|
||
|
|
./lib/generated/genaliases_sysosf1 $@
|
||
|
|
|
||
|
|
lib/generated/aliases_sysosf1.h : lib/generated/aliases_sysosf1.gperf
|
||
|
|
$(GPERF) -L C++ -Z HashPool -m 10 $< > $@
|
||
|
|
|
||
|
|
|
||
|
|
lib/generated/genaliases_syssolaris : tools/genaliases.cpp
|
||
|
|
$(CXX) $(CFLAGS) $(CXXFLAGS) $(LDFLAGS) -DUSE_SOLARIS_ALIASES $< -o $@
|
||
|
|
|
||
|
|
lib/generated/aliases_syssolaris.gperf : lib/generated/genaliases_syssolaris
|
||
|
|
./lib/generated/genaliases_syssolaris $@
|
||
|
|
|
||
|
|
lib/generated/aliases_syssolaris.h : lib/generated/aliases_syssolaris.gperf
|
||
|
|
$(GPERF) -L C++ -Z HashPool -m 10 $< > $@
|
||
|
|
|
||
|
|
|
||
|
|
lib/generated/genaliases2_aix : tools/genaliases2.cpp
|
||
|
|
$(CXX) $(CFLAGS) $(CXXFLAGS) $(LDFLAGS) -DUSE_AIX $< -o $@
|
||
|
|
|
||
|
|
lib/generated/aliases_aix.h : lib/generated/genaliases2_aix
|
||
|
|
./lib/generated/genaliases2_aix aix $@
|
||
|
|
|
||
|
|
|
||
|
|
lib/generated/genaliases2_aix_sysaix : tools/genaliases2.cpp
|
||
|
|
$(CXX) $(CFLAGS) $(CXXFLAGS) $(LDFLAGS) -DUSE_AIX -DUSE_AIX_ALIASES $< -o $@
|
||
|
|
|
||
|
|
lib/generated/aliases_aix_sysaix.h : lib/generated/genaliases2_aix_sysaix
|
||
|
|
./lib/generated/genaliases2_aix_sysaix aix $@
|
||
|
|
|
||
|
|
|
||
|
|
lib/generated/genaliases2_osf1 : tools/genaliases2.cpp
|
||
|
|
$(CXX) $(CFLAGS) $(CXXFLAGS) $(LDFLAGS) -DUSE_OSF1 $< -o $@
|
||
|
|
|
||
|
|
lib/generated/aliases_osf1.h : lib/generated/genaliases2_osf1
|
||
|
|
./lib/generated/genaliases2_osf1 osf1 $@
|
||
|
|
|
||
|
|
|
||
|
|
lib/generated/genaliases2_osf1_sysosf1 : tools/genaliases2.cpp
|
||
|
|
$(CXX) $(CFLAGS) $(CXXFLAGS) $(LDFLAGS) -DUSE_OSF1 -DUSE_OSF1_ALIASES $< -o $@
|
||
|
|
|
||
|
|
lib/generated/aliases_osf1_sysosf1.h : lib/generated/genaliases2_osf1_sysosf1
|
||
|
|
./lib/generated/genaliases2_osf1_sysosf1 osf1 $@
|
||
|
|
|
||
|
|
|
||
|
|
lib/generated/genaliases2_dos : tools/genaliases2.cpp
|
||
|
|
$(CXX) $(CFLAGS) $(CXXFLAGS) $(LDFLAGS) -DUSE_DOS $< -o $@
|
||
|
|
|
||
|
|
lib/generated/aliases_dos.h : lib/generated/genaliases2_dos
|
||
|
|
./lib/generated/genaliases2_dos dos $@
|
||
|
|
|
||
|
|
|
||
|
|
lib/generated/genaliases2_zos : tools/genaliases2.cpp
|
||
|
|
$(CXX) $(CFLAGS) $(CXXFLAGS) $(LDFLAGS) -DUSE_ZOS $< -o $@
|
||
|
|
|
||
|
|
lib/generated/aliases_zos.h : lib/generated/genaliases2_zos
|
||
|
|
./lib/generated/genaliases2_zos zos $@
|
||
|
|
|
||
|
|
|
||
|
|
lib/generated/genaliases2_extra : tools/genaliases2.cpp
|
||
|
|
$(CXX) $(CFLAGS) $(CXXFLAGS) $(LDFLAGS) -DUSE_EXTRA $< -o $@
|
||
|
|
|
||
|
|
lib/generated/aliases_extra.h : lib/generated/genaliases2_extra
|
||
|
|
./lib/generated/genaliases2_extra extra $@
|
||
|
|
|
||
|
|
lib/generated/genflags : tools/genflags.cpp
|
||
|
|
$(CXX) $(CFLAGS) $(CXXFLAGS) $(LDFLAGS) $< -o $@
|
||
|
|
|
||
|
|
lib/generated/flags.h : lib/generated/genflags
|
||
|
|
./lib/generated/genflags > $@
|
||
|
|
|
||
|
|
test : all
|
||
|
|
$(RM) -r -f build
|
||
|
|
$(MKDIR) build
|
||
|
|
cd build && $(CMAKE) .. -DENABLE_EXTRA=ON -DENABLE_TEST=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=test_install
|
||
|
|
cd build && $(CMAKE) --build . --config=Release --verbose
|
||
|
|
cd build && $(CTEST) -C Release --verbose
|
||
|
|
$(CMAKE) --install build --verbose
|
||
|
|
./cpppdist.py
|
||
|
|
{ diff cppp-reiconv-* . --recursive || echo ; }
|
||
|
|
|
||
|
|
# Alias to test
|
||
|
|
check : test
|
||
|
|
|
||
|
|
clean :
|
||
|
|
$(RM) -r build
|
||
|
|
$(RM) lib/generated/aliases.gperf
|
||
|
|
$(RM) lib/generated/aliases_sysaix.gperf
|
||
|
|
$(RM) lib/generated/aliases_syshpux.gperf
|
||
|
|
$(RM) lib/generated/aliases_sysosf1.gperf
|
||
|
|
$(RM) lib/generated/aliases_syssolaris.gperf
|
||
|
|
$(RM) lib/generated/genaliases
|
||
|
|
$(RM) lib/generated/genaliases2_aix
|
||
|
|
$(RM) lib/generated/genaliases2_aix_sysaix
|
||
|
|
$(RM) lib/generated/genaliases2_dos
|
||
|
|
$(RM) lib/generated/genaliases2_extra
|
||
|
|
$(RM) lib/generated/genaliases2_osf1
|
||
|
|
$(RM) lib/generated/genaliases2_osf1_sysosf1
|
||
|
|
$(RM) lib/generated/genaliases2_zos
|
||
|
|
$(RM) lib/generated/genaliases_sysaix
|
||
|
|
$(RM) lib/generated/genaliases_syshpux
|
||
|
|
$(RM) lib/generated/genaliases_sysosf1
|
||
|
|
$(RM) lib/generated/genaliases_syssolaris
|
||
|
|
$(RM) lib/generated/genflags
|
||
|
|
$(RM) tests/data/GB18030-2005.TXT
|
||
|
|
$(RM) tests/data/GB18030-2022.TXT
|
||
|
|
$(RM) tests/data/UTF-8.TXT
|