Check-in [5baa5c16a6]
Overview
Comment:Win32 fixes. libconfig 0.1.8
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk | 0.1.8
Files: files | file ages | folders
SHA1: 5baa5c16a6de462d5fd583eb2e82a52aff084f4d
User & Date: rkeene on 2004-12-18 10:46:04
Other Links: manifest | tags
Context
2004-12-18
18:55
More cygwin fixes. libconfig 0.1.12 check-in: c1e4573958 user: rkeene tags: 0.1.12, trunk
10:46
Win32 fixes. libconfig 0.1.8 check-in: 5baa5c16a6 user: rkeene tags: 0.1.8, trunk
10:05
Win32 support fixed. Added a new man page (lc_cleanup) check-in: 80d18a8d82 user: rkeene tags: trunk
Changes

Modified .cvsignore from [3ec037ded0] to [8a5f3028e8].

10
11
12
13
14
15
16






10
11
12
13
14
15
16
17
18
19
20
21
22







+
+
+
+
+
+
.*.swp
lc_geterrstr.3
lc_register_var.3
lc_register_callback.3
lc_process.3
lc_geterrno.3
libconfig.3
libconfig.dll.a
test-lc.exe
lc_process_file.3
lc_cleanup.3
libconfig.dll.def
libconfig.dll

Modified .fossil-settings/ignore-glob from [f46eab9da1] to [4fc97f7101].

1
2
3
4
5
6
7
8
9
10


11
12
13
14
15
16


17
18
19
20
21
22
23
24






25
26
27
28
29


30
31
32
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44










+
+






+
+








+
+
+
+
+
+





+
+



.*.swp
.*.swp/*
Makefile
Makefile/*
config.h
config.h/*
config.log
config.log/*
config.status
config.status/*
lc_cleanup.3
lc_cleanup.3/*
lc_geterrno.3
lc_geterrno.3/*
lc_geterrstr.3
lc_geterrstr.3/*
lc_process.3
lc_process.3/*
lc_process_file.3
lc_process_file.3/*
lc_register_callback.3
lc_register_callback.3/*
lc_register_var.3
lc_register_var.3/*
libconfig.3
libconfig.3/*
libconfig.a
libconfig.a/*
libconfig.dll
libconfig.dll.a
libconfig.dll.a/*
libconfig.dll.def
libconfig.dll.def/*
libconfig.dll/*
libconfig.h
libconfig.h/*
libconfig.so
libconfig.so/*
test-lc
test-lc.exe
test-lc.exe/*
test-lc/*
test.cfg
test.cfg/*

Modified Makefile.in from [6d7f8667ba] to [e7001c02f6].

31
32
33
34
35
36
37
38

39
40
41

42
43
44
45
46
47
48
49
50
51
52
53
54
55


56
57
58
59

60
61
62
63
64
65
66
67
68


69
70
71
72
73
74
75
31
32
33
34
35
36
37

38
39
40

41
42
43
44
45
46
47
48
49
50
51
52
53


54
55
56
57
58

59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77







-
+


-
+












-
-
+
+



-
+









+
+







BINS =
# The following two lines need to be kept syncronised.
OBJS = libconfig.o conf_space.o conf_section.o conf_apache.o conf_colon.o conf_equal.o conf_xml.o @LIBOBJS@
SHOBJS = libconfig_shr.o conf_space_shr.o conf_section_shr.o conf_apache_shr.o conf_colon_shr.o conf_equal_shr.o conf_xml_shr.o @SHLIBOBJS@

all: $(LIBS) $(BINS)
libconfig.$(SHOBJEXT): $(SHOBJS)
	$(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) $(SHOBJFLAGS) $(SHOBJLDFLAGS) -o $@ $?
	$(CC) $(CPPFLAGS) $(CFLAGS) $(SHOBJFLAGS) $(SHOBJLDFLAGS) -o $@ $^ $(LDFLAGS)

libconfig.$(AREXT): $(OBJS)
	$(AR) rcu $@ $?
	$(AR) rcu $@ $^
	-$(RANLIB) $@

libconfig.o: libconfig.c compat.h win32.h config.h libconfig.h
libconfig_shr.o: libconfig.c compat.h win32.h config.h libconfig.h
	$(CC) $(CPPFLAGS) $(CFLAGS) $(SHOBJFLAGS) -c -o $@ libconfig.c

%_shr.o: %.c
	$(CC) $(CPPFLAGS) $(CFLAGS) $(SHOBJFLAGS) -c -o $@ $?

libconfig.h: libconfig.h.in
	cat $? | $(CPP) $(CPPFLAGS) - | grep -v '^#' | grep -v '^ *$$' | sed 's/^!/#  /g;s/__BLANK_LINE__//' > $@

test-lc: $(LIBS) test-lc.c
	$(CC) $(CPPFLAGS) $(CFLAGS) -o $@ $(filter %.c, $?) $(LDFLAGS) -Wl,-R -Wl,. -L. -lconfig
test-lc$(EXEEXT): $(LIBS) test-lc.c
	$(CC) $(CPPFLAGS) $(CFLAGS) -o $@ $(filter %.c, $^) $(LDFLAGS) -Wl,-R -Wl,. -L. -lconfig

.PHONY: clean distclean install
clean:
	rm -f *.o $(BINS) $(LIBS) libconfig.h *~ test-lc *.dll.a *.dll.def *.dll
	rm -f *.o $(BINS) $(LIBS) libconfig.h *~ test-lc$(EXEEXT) *.dll.a *.dll.def *.dll
distclean: clean
	rm -f Makefile config.h config.status config.log lc_geterrno.3 lc_process.3 lc_cleanup.3 lc_process_file.3 lc_register_var.3 lc_geterrstr.3 lc_register_callback.3 libconfig.3


install: all libconfig.h
	-$(INSTALL) -d $(mandir)
	-$(INSTALL) -d $(mandir)/man3
	-$(INSTALL) -d $(libdir)
	-$(INSTALL) -d $(includedir)
	-$(INSTALL) -m 644 libconfig.$(SHOBJEXT).def $(libdir)/libconfig.$(SHOBJEXT).def
	-$(INSTALL) -m 644 libconfig.$(SHOBJEXT).a $(libdir)/libconfig.$(SHOBJEXT).a
	$(INSTALL) -m 755 libconfig.$(SHOBJEXT) $(libdir)/libconfig.$(SHOBJEXT).$(PKGVERS)
	$(INSTALL) -m 644 libconfig.$(AREXT) $(libdir)/libconfig.$(AREXT)
	$(INSTALL) -m 644 lc_register_callback.3 $(mandir)/man3/lc_register_callback.3
	$(INSTALL) -m 644 lc_register_var.3 $(mandir)/man3/lc_register_var.3
	$(INSTALL) -m 644 lc_process_file.3 $(mandir)/man3/lc_process_file.3
	$(INSTALL) -m 644 lc_geterrstr.3 $(mandir)/man3/lc_geterrstr.3
	$(INSTALL) -m 644 lc_geterrno.3 $(mandir)/man3/lc_geterrno.3

Modified build/build_win32.sh from [295d16231e] to [7d910d6991].

8
9
10
11
12
13
14
15

16
8
9
10
11
12
13
14

15
16







-
+

DATE="`date +%Y%m%d%H%M`"
CROSS=i586-mingw32msvc
if [ ! -z "${CROSS}" ]; then
	CROSSCMD="${CROSS}-"
fi
export CFLAGS LDFLAGS CPPFLAGS
make distclean
./configure --host=${CROSS} && \
./configure --host=${CROSS} --prefix=${HOME}/root/windows-i386/ --with-libopennet=${HOME}/root/windows-i386/ && \
make || exit 1

Modified configure from [2142567030] to [6fc31f0c70].

1
2
3
4

5
6
7
8
9
10
11
1
2
3

4
5
6
7
8
9
10
11



-
+







#! /bin/sh
# From configure.ac Revision .
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.59 for libconfig 0.1.7.
# Generated by GNU Autoconf 2.59 for libconfig 0.1.8.
#
# Copyright (C) 2003 Free Software Foundation, Inc.
# This configure script is free software; the Free Software Foundation
# gives unlimited permission to copy, distribute and modify it.
## --------------------- ##
## M4sh Initialization.  ##
## --------------------- ##
264
265
266
267
268
269
270
271
272


273
274
275
276
277
278
279
264
265
266
267
268
269
270


271
272
273
274
275
276
277
278
279







-
-
+
+







# This variable seems obsolete.  It should probably be removed, and
# only ac_max_sed_lines should be used.
: ${ac_max_here_lines=38}

# Identity of this package.
PACKAGE_NAME='libconfig'
PACKAGE_TARNAME='libconfig'
PACKAGE_VERSION='0.1.7'
PACKAGE_STRING='libconfig 0.1.7'
PACKAGE_VERSION='0.1.8'
PACKAGE_STRING='libconfig 0.1.8'
PACKAGE_BUGREPORT=''

# Factoring default headers for most tests.
ac_includes_default="\
#include <stdio.h>
#if HAVE_SYS_TYPES_H
# include <sys/types.h>
774
775
776
777
778
779
780
781

782
783
784
785
786
787
788
774
775
776
777
778
779
780

781
782
783
784
785
786
787
788







-
+







#
# Report the --help message.
#
if test "$ac_init_help" = "long"; then
  # Omit some internal or obsolete options to make the list less imposing.
  # This message is too long to be a string in the A/UX 3.1 sh.
  cat <<_ACEOF
\`configure' configures libconfig 0.1.7 to adapt to many kinds of systems.
\`configure' configures libconfig 0.1.8 to adapt to many kinds of systems.

Usage: $0 [OPTION]... [VAR=VALUE]...

To assign environment variables (e.g., CC, CFLAGS...), specify them as
VAR=VALUE.  See below for descriptions of some of the useful variables.

Defaults for the options are specified in brackets.
835
836
837
838
839
840
841
842

843
844
845
846
847
848
849
835
836
837
838
839
840
841

842
843
844
845
846
847
848
849







-
+







  --build=BUILD     configure for building on BUILD [guessed]
  --host=HOST       cross-compile to build programs to run on HOST [BUILD]
_ACEOF
fi

if test -n "$ac_init_help"; then
  case $ac_init_help in
     short | recursive ) echo "Configuration of libconfig 0.1.7:";;
     short | recursive ) echo "Configuration of libconfig 0.1.8:";;
   esac
  cat <<\_ACEOF

Optional Packages:
  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
  --with-libopennet       Enable opennet support
951
952
953
954
955
956
957
958

959
960
961
962
963
964
965
966
967
968
969
970
971
972

973
974
975
976
977
978
979
951
952
953
954
955
956
957

958
959
960
961
962
963
964
965
966
967
968
969
970
971

972
973
974
975
976
977
978
979







-
+













-
+







    cd $ac_popdir
  done
fi

test -n "$ac_init_help" && exit 0
if $ac_init_version; then
  cat <<\_ACEOF
libconfig configure 0.1.7
libconfig configure 0.1.8
generated by GNU Autoconf 2.59

Copyright (C) 2003 Free Software Foundation, Inc.
This configure script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it.
_ACEOF
  exit 0
fi
exec 5>config.log
cat >&5 <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by libconfig $as_me 0.1.7, which was
It was created by libconfig $as_me 0.1.8, which was
generated by GNU Autoconf 2.59.  Invocation command line was

  $ $0 $@

_ACEOF
{
cat <<_ASUNAME
17206
17207
17208
17209
17210
17211
17212
17213

17214
17215
17216
17217
17218
17219
17220
17206
17207
17208
17209
17210
17211
17212

17213
17214
17215
17216
17217
17218
17219
17220







-
+







  echo
  sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
## Running $as_me. ##
_ASBOX
} >&5
cat >&5 <<_CSEOF

This file was extended by libconfig $as_me 0.1.7, which was
This file was extended by libconfig $as_me 0.1.8, which was
generated by GNU Autoconf 2.59.  Invocation command line was

  CONFIG_FILES    = $CONFIG_FILES
  CONFIG_HEADERS  = $CONFIG_HEADERS
  CONFIG_LINKS    = $CONFIG_LINKS
  CONFIG_COMMANDS = $CONFIG_COMMANDS
  $ $0 $@
17266
17267
17268
17269
17270
17271
17272
17273

17274
17275
17276
17277
17278
17279
17280
17266
17267
17268
17269
17270
17271
17272

17273
17274
17275
17276
17277
17278
17279
17280







-
+







$config_headers

Report bugs to <bug-autoconf@gnu.org>."
_ACEOF

cat >>$CONFIG_STATUS <<_ACEOF
ac_cs_version="\\
libconfig config.status 0.1.7
libconfig config.status 0.1.8
configured by $0, generated by GNU Autoconf 2.59,
  with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"

Copyright (C) 2003 Free Software Foundation, Inc.
This config.status script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it."
srcdir=$srcdir

Modified configure.ac from [49b46603c1] to [fcea9f4c41].

1
2

3
4
5
6
7
8
9
1

2
3
4
5
6
7
8
9

-
+







AC_REVISION($Revision $)
AC_INIT(libconfig, 0.1.7)
AC_INIT(libconfig, 0.1.8)
AC_CONFIG_HEADER(config.h)

dnl Find out about the host OS
DC_CHK_OS_INFO

dnl Checks for programs.
AC_PROG_CC

Modified lc_register_var.3.in from [e33efd4ec7] to [6224b99a5a].

76
77
78
79
80
81
82
83

84
85
86




87
88
89
90
91
92
93
76
77
78
79
80
81
82

83
84
85

86
87
88
89
90
91
92
93
94
95
96







-
+


-
+
+
+
+







LC_VAR_DATE
Not implemented.
.TP
LC_VAR_BOOL_BY_EXISTANCE
This type of variable takes no arguments, it is set to true (1) by its existance in a configuration file, environment variable, or on the command line.  If it is not specified, the value of the data passed is not changed.  The data passed should be of type "int *".
.TP
LC_VAR_CIDR
XXX: blah
This type of variable accepts a CIDR format netmask and IP.  This is not yet implemented. (XXX)
.TP
LC_VAR_IP
XXX: blah
This type of variable accepts an IP address in decimal-dot format.  The value is stored in a uint32_t.
.TP
LC_VAR_ADDR
This type of variable accepts an address in either host or decimal-dot format.  The value is stored in a uint32_t.  This is not yet implemented. (XXX)

.SH "RETURN VALUE"
On success 0 is returned, otherwise -1 is returned.

.SH EXAMPLE
.nf
#include <libconfig.h>

Modified libconfig.c from [a7581f8b4f] to [0b1fdcb0d0].

48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
48
49
50
51
52
53
54


55
56
57
58
59
60
61







-
-







	dataval = data;
	*dataval = strdup(value);

	return(0);
}

static int lc_process_var_cidr(void *data, const char *value) {
	

	return(0);
}

static int lc_process_var_ip(void *data, const char *value) {
	uint32_t *dataval = NULL, retval = 0;
	const char *dotptr = NULL;
	int tmpval = -1;
278
279
280
281
282
283
284



285
286
287
288
289
290
291
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292







+
+
+







			break;
		case LC_VAR_SIZE_SIZE_T:
			return(lc_process_var_sizesizet(data, value));
			break;
		case LC_VAR_IP:
			return(lc_process_var_ip(data, value));
			break;
		case LC_VAR_CIDR:
			return(lc_process_var_cidr(data, value));
			break;
		case LC_VAR_TIME:
		case LC_VAR_DATE:
		case LC_VAR_FILENAME:
		case LC_VAR_DIRECTORY:
#ifdef DEBUG
			fprintf(stderr, "Not implemented yet!\n");
#endif
789
790
791
792
793
794
795

796

797
798
799
800
801
802
803
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806







+

+







			break;
	}

	return(chkretval);
}

static int lc_process_files(const char *appname, lc_conf_type_t type, const char *extraconfig) {
#ifdef HAVE_GETPWUID
	struct passwd *pwinfo = NULL;
#endif
	char configfiles[3][13][512] = {{{0}}};
	char *configfile = NULL;
	char *homedir = NULL;
	int configsetidx = 0, configidx = 0;
	int chkretval = 0, retval = 0;

	if (extraconfig != NULL) {

Modified libconfig.spec from [2a99584cbf] to [d5be6e85a0].

28
29
30
31
32
33
34

35


36
37
38
39



40
28
29
30
31
32
33
34
35

36
37
38



39
40
41
42







+
-
+
+

-
-
-
+
+
+

%doc README
%doc AUTHORS
/usr/lib/libconfig.a
/usr/lib/libconfig.so
/usr/lib/libconfig.so.@@VERS@@
/usr/lib/libconfig.so.0
/usr/include/libconfig.h
/usr/man/man3/lc_register_callback.3
/usr/man/man3/lc_geterrno.3
/usr/man/man3/lc_register_var.3
/usr/man/man3/lc_process_file.3
/usr/man/man3/lc_geterrstr.3
/usr/man/man3/lc_process.3
/usr/man/man3/lc_register_callback.3
/usr/man/man3/lc_register_var.3
/usr/man/man3/lc_geterrno.3
/usr/man/man3/lc_process.3
/usr/man/man3/lc_cleanup.3
/usr/man/man3/libconfig.3