Skip to content

Commit a382bce

Browse files
committed
Add test and clean target in Makefile.devel.
修改: ChangeLog 修改: FILELIST 修改: Makefile.devel
1 parent 4794008 commit a382bce

File tree

3 files changed

+61
-26
lines changed

3 files changed

+61
-26
lines changed

ChangeLog

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
Move 'lib/gen*.c' to 'tools/gen*.cpp'.
66
Optimize 'Makefile.devel'.
77
Move generated files to C++ to avoid 'register' warnings.
8+
Add test and clean target in 'Makefile.devel'.
89

910
2023-09-09 ChenPi11 <wushengwuxi-msctinoulk@outlook.com>
1011

FILELIST

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -90,15 +90,13 @@ lib/tcvn.h
9090
lib/ebcdic1123.h
9191
lib/ebcdic1158.h
9292
lib/ucs2be.h
93-
lib/genaliases2.c
9493
lib/ebcdic425.h
9594
lib/cp1253.h
9695
lib/iconv_open1.h
9796
lib/ces_big5.h
9897
lib/cp857.h
9998
lib/cp949.h
10099
lib/ebcdic1137.h
101-
lib/genflags.c
102100
lib/iso8859_10.h
103101
lib/gb2312.h
104102
lib/cp936.h
@@ -163,7 +161,6 @@ lib/ebcdic1122.h
163161
lib/isoir165.h
164162
lib/cp864.h
165163
lib/iso8859_15.h
166-
lib/genaliases.c
167164
lib/mac_turkish.h
168165
lib/ebcdic424.h
169166
lib/uhc_1.h
@@ -528,6 +525,9 @@ tests/throw_error.hpp
528525
tests/file_utils.hpp
529526
tests/sort.cpp
530527
tests/sort.hpp
528+
tools/genaliases.cpp
529+
tools/genaliases2.cpp
530+
tools/genflags.cpp
531531
COPYING
532532
Makefile.devel
533533
include/cppp/reiconv.hpp.in

Makefile.devel

Lines changed: 57 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,17 @@
11
# -*- makefile -*-
2-
# This is the developer's makefile, not the user's makefile.
3-
# Don't use it unless you know exactly what you do!
4-
# It requires GNU make.
5-
# It obeys the environment variables GNULIB_TOOL, CC, CFLAGS
6-
# if you have set them.
2+
# This is the developer's makefile.
3+
# It obeys the environment variables CXX, CFLAGS if you have set them.
74

8-
ifneq (,)
9-
This makefile requires GNU Make.
10-
endif
115

12-
SHELL = /bin/sh
136
GPERF = gperf
7+
CMAKE = cmake
8+
CTEST = ctest
149
MKDIR = mkdir -p
1510
RM = rm -f
1611

17-
CFLAGS := $(CFLAGS) -Ilib
12+
CXX ?= g++ -Wall
13+
14+
CXXFLAGS := $(CXXFLAGS) -Ilib
1815

1916
all : lib/generated \
2017
lib/generated/aliases.h lib/generated/aliases_sysaix.h lib/generated/aliases_syshpux.h lib/generated/aliases_sysosf1.h lib/generated/aliases_syssolaris.h \
@@ -29,7 +26,7 @@ lib/generated :
2926
$(MKDIR) lib/generated
3027

3128
lib/generated/genaliases : tools/genaliases.cpp
32-
$(CXX) $(CFLAGS) $< -o $@
29+
$(CXX) $(CFLAGS) $(CXXFLAGS) $(LDFLAGS) $< -o $@
3330

3431
lib/generated/aliases.gperf : lib/generated/genaliases
3532
./lib/generated/genaliases $@
@@ -39,7 +36,7 @@ lib/generated/aliases.h : lib/generated/aliases.gperf
3936

4037

4138
lib/generated/genaliases_sysaix : tools/genaliases.cpp
42-
$(CXX) $(CFLAGS) -DUSE_AIX_ALIASES $< -o $@
39+
$(CXX) $(CFLAGS) $(CXXFLAGS) $(LDFLAGS) -DUSE_AIX_ALIASES $< -o $@
4340

4441
lib/generated/aliases_sysaix.gperf : lib/generated/genaliases_sysaix
4542
./lib/generated/genaliases_sysaix $@
@@ -49,7 +46,7 @@ lib/generated/aliases_sysaix.h : lib/generated/aliases_sysaix.gperf
4946

5047

5148
lib/generated/genaliases_syshpux : tools/genaliases.cpp
52-
$(CXX) $(CFLAGS) -DUSE_HPUX_ALIASES $< -o $@
49+
$(CXX) $(CFLAGS) $(CXXFLAGS) $(LDFLAGS) -DUSE_HPUX_ALIASES $< -o $@
5350

5451
lib/generated/aliases_syshpux.gperf : lib/generated/genaliases_syshpux
5552
./lib/generated/genaliases_syshpux $@
@@ -59,7 +56,7 @@ lib/generated/aliases_syshpux.h : lib/generated/aliases_syshpux.gperf
5956

6057

6158
lib/generated/genaliases_sysosf1 : tools/genaliases.cpp
62-
$(CXX) $(CFLAGS) -DUSE_OSF1_ALIASES $< -o $@
59+
$(CXX) $(CFLAGS) $(CXXFLAGS) $(LDFLAGS) -DUSE_OSF1_ALIASES $< -o $@
6360

6461
lib/generated/aliases_sysosf1.gperf : lib/generated/genaliases_sysosf1
6562
./lib/generated/genaliases_sysosf1 $@
@@ -69,7 +66,7 @@ lib/generated/aliases_sysosf1.h : lib/generated/aliases_sysosf1.gperf
6966

7067

7168
lib/generated/genaliases_syssolaris : tools/genaliases.cpp
72-
$(CXX) $(CFLAGS) -DUSE_SOLARIS_ALIASES $< -o $@
69+
$(CXX) $(CFLAGS) $(CXXFLAGS) $(LDFLAGS) -DUSE_SOLARIS_ALIASES $< -o $@
7370

7471
lib/generated/aliases_syssolaris.gperf : lib/generated/genaliases_syssolaris
7572
./lib/generated/genaliases_syssolaris $@
@@ -79,55 +76,92 @@ lib/generated/aliases_syssolaris.h : lib/generated/aliases_syssolaris.gperf
7976

8077

8178
lib/generated/genaliases2_aix : tools/genaliases2.cpp
82-
$(CXX) $(CFLAGS) -DUSE_AIX $< -o $@
79+
$(CXX) $(CFLAGS) $(CXXFLAGS) $(LDFLAGS) -DUSE_AIX $< -o $@
8380

8481
lib/generated/aliases_aix.h : lib/generated/genaliases2_aix
8582
./lib/generated/genaliases2_aix aix $@
8683

8784

8885
lib/generated/genaliases2_aix_sysaix : tools/genaliases2.cpp
89-
$(CXX) $(CFLAGS) -DUSE_AIX -DUSE_AIX_ALIASES $< -o $@
86+
$(CXX) $(CFLAGS) $(CXXFLAGS) $(LDFLAGS) -DUSE_AIX -DUSE_AIX_ALIASES $< -o $@
9087

9188
lib/generated/aliases_aix_sysaix.h : lib/generated/genaliases2_aix_sysaix
9289
./lib/generated/genaliases2_aix_sysaix aix $@
9390

9491

9592
lib/generated/genaliases2_osf1 : tools/genaliases2.cpp
96-
$(CXX) $(CFLAGS) -DUSE_OSF1 $< -o $@
93+
$(CXX) $(CFLAGS) $(CXXFLAGS) $(LDFLAGS) -DUSE_OSF1 $< -o $@
9794

9895
lib/generated/aliases_osf1.h : lib/generated/genaliases2_osf1
9996
./lib/generated/genaliases2_osf1 osf1 $@
10097

10198

10299
lib/generated/genaliases2_osf1_sysosf1 : tools/genaliases2.cpp
103-
$(CXX) $(CFLAGS) -DUSE_OSF1 -DUSE_OSF1_ALIASES $< -o $@
100+
$(CXX) $(CFLAGS) $(CXXFLAGS) $(LDFLAGS) -DUSE_OSF1 -DUSE_OSF1_ALIASES $< -o $@
104101

105102
lib/generated/aliases_osf1_sysosf1.h : lib/generated/genaliases2_osf1_sysosf1
106103
./lib/generated/genaliases2_osf1_sysosf1 osf1 $@
107104

108105

109106
lib/generated/genaliases2_dos : tools/genaliases2.cpp
110-
$(CXX) $(CFLAGS) -DUSE_DOS $< -o $@
107+
$(CXX) $(CFLAGS) $(CXXFLAGS) $(LDFLAGS) -DUSE_DOS $< -o $@
111108

112109
lib/generated/aliases_dos.h : lib/generated/genaliases2_dos
113110
./lib/generated/genaliases2_dos dos $@
114111

115112

116113
lib/generated/genaliases2_zos : tools/genaliases2.cpp
117-
$(CXX) $(CFLAGS) -DUSE_ZOS $< -o $@
114+
$(CXX) $(CFLAGS) $(CXXFLAGS) $(LDFLAGS) -DUSE_ZOS $< -o $@
118115

119116
lib/generated/aliases_zos.h : lib/generated/genaliases2_zos
120117
./lib/generated/genaliases2_zos zos $@
121118

122119

123120
lib/generated/genaliases2_extra : tools/genaliases2.cpp
124-
$(CXX) $(CFLAGS) -DUSE_EXTRA $< -o $@
121+
$(CXX) $(CFLAGS) $(CXXFLAGS) $(LDFLAGS) -DUSE_EXTRA $< -o $@
125122

126123
lib/generated/aliases_extra.h : lib/generated/genaliases2_extra
127124
./lib/generated/genaliases2_extra extra $@
128125

129126
lib/generated/genflags : tools/genflags.cpp
130-
$(CXX) $(CFLAGS) $< -o $@
127+
$(CXX) $(CFLAGS) $(CXXFLAGS) $(LDFLAGS) $< -o $@
131128

132129
lib/generated/flags.h : lib/generated/genflags
133130
./lib/generated/genflags > $@
131+
132+
test : all
133+
$(RM) -r -f build
134+
$(MKDIR) build
135+
cd build && $(CMAKE) .. -DENABLE_EXTRA=ON -DENABLE_TEST=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=test_install
136+
cd build && $(CMAKE) --build . --config=Release --verbose
137+
cd build && $(CTEST) -C Release --verbose
138+
$(CMAKE) --install build --verbose
139+
./cpppdist.py
140+
{ diff cppp-reiconv-* . --recursive || echo ; }
141+
142+
# Alias to test
143+
check : test
144+
145+
clean :
146+
$(RM) -r build
147+
$(RM) lib/generated/aliases.gperf
148+
$(RM) lib/generated/aliases_sysaix.gperf
149+
$(RM) lib/generated/aliases_syshpux.gperf
150+
$(RM) lib/generated/aliases_sysosf1.gperf
151+
$(RM) lib/generated/aliases_syssolaris.gperf
152+
$(RM) lib/generated/genaliases
153+
$(RM) lib/generated/genaliases2_aix
154+
$(RM) lib/generated/genaliases2_aix_sysaix
155+
$(RM) lib/generated/genaliases2_dos
156+
$(RM) lib/generated/genaliases2_extra
157+
$(RM) lib/generated/genaliases2_osf1
158+
$(RM) lib/generated/genaliases2_osf1_sysosf1
159+
$(RM) lib/generated/genaliases2_zos
160+
$(RM) lib/generated/genaliases_sysaix
161+
$(RM) lib/generated/genaliases_syshpux
162+
$(RM) lib/generated/genaliases_sysosf1
163+
$(RM) lib/generated/genaliases_syssolaris
164+
$(RM) lib/generated/genflags
165+
$(RM) tests/data/GB18030-2005.TXT
166+
$(RM) tests/data/GB18030-2022.TXT
167+
$(RM) tests/data/UTF-8.TXT

0 commit comments

Comments
 (0)