Itk - the [incr Tk] extension

Check-in [4f4a0bbb92]
Login
Bounty program for improvements to Tcl and certain Tcl packages.
Tcl 2019 Conference, Houston/TX, US, Nov 4-8
Send your abstracts to [email protected]
or submit via the online form by Sep 9.

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Regenerate stubs declarations to get C++ linkage right.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | itk-4-0-1-rc
Files: files | file ages | folders
SHA1: 4f4a0bbb92d943941c7f4844f452fcd14c77e248
User & Date: dgp 2015-02-25 13:16:07
Context
2015-02-26
18:44
Update the idioms for stubs initialization. Closed-Leaf check-in: bc0e48ab05 user: dgp tags: itk-4-0-1, itk-4-0-1-rc
2015-02-25
13:16
Regenerate stubs declarations to get C++ linkage right. check-in: 4f4a0bbb92 user: dgp tags: itk-4-0-1-rc
13:15
eliminate unused variable check-in: fe90b13b71 user: dgp tags: itk-4-0-1-rc
2015-02-24
17:55
Borrow genstubs tool from Itcl; Run it. Closed-Leaf check-in: 8b5571dcf5 user: dgp tags: dgp-linkage
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to Makefile.in.

126
127
128
129
130
131
132

133
134
135
136
137
138
139
...
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
SHLIB_LD_LIBS	= @[email protected]
STLIB_LD	= @[email protected]
TCL_DEFS	= @[email protected]
TCL_BIN_DIR	= @[email protected]
TCL_SRC_DIR	= @[email protected]
TK_SRC_DIR	= @[email protected]
TK_BIN_DIR	= @[email protected]


# Not used, but retained for reference of what libs Tcl required
TCL_LIBS	= @[email protected]

#========================================================================
# TCLLIBPATH seeds the auto_path in Tcl's init.tcl so we can test our
# package without installing.  The other environment variables allow us
................................................................................
	  p=`basename $$p`; \
	  rm -f $(DESTDIR)$(pkglibdir)/$$p; \
	done
	list='$(bin_BINARIES)'; for p in $$list; do \
	  rm -f $(DESTDIR)$(bindir)/$$p; \
	done

genstubs: $(srcdir)/tools/genStubs.tcl $(srcdir)/generic/itk.decls
	@echo $(TCLSH) $(srcdir)/tools/genStubs.tcl $(srcdir)/generic $(srcdir)/generic/itk.decls
	@$(TCLSH) $(srcdir)/tools/genStubs.tcl $(srcdir)/generic $(srcdir)/generic/itk.decls


.PHONY: all binaries clean depend distclean doc install libraries test

# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:






>







 







|
|
|
<






126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
...
423
424
425
426
427
428
429
430
431
432

433
434
435
436
437
438
SHLIB_LD_LIBS	= @[email protected]
STLIB_LD	= @[email protected]
TCL_DEFS	= @[email protected]
TCL_BIN_DIR	= @[email protected]
TCL_SRC_DIR	= @[email protected]
TK_SRC_DIR	= @[email protected]
TK_BIN_DIR	= @[email protected]
ITCL_TOOLS_DIR	= @[email protected]/tools

# Not used, but retained for reference of what libs Tcl required
TCL_LIBS	= @[email protected]

#========================================================================
# TCLLIBPATH seeds the auto_path in Tcl's init.tcl so we can test our
# package without installing.  The other environment variables allow us
................................................................................
	  p=`basename $$p`; \
	  rm -f $(DESTDIR)$(pkglibdir)/$$p; \
	done
	list='$(bin_BINARIES)'; for p in $$list; do \
	  rm -f $(DESTDIR)$(bindir)/$$p; \
	done

genstubs: $(ITCL_TOOLS_DIR)/genStubs.tcl $(srcdir)/generic/itk.decls
	@echo $(TCLSH) $(ITCL_TOOLS_DIR)/genStubs.tcl $(srcdir)/generic $(srcdir)/generic/itk.decls
	@$(TCLSH) $(ITCL_TOOLS_DIR)/genStubs.tcl $(srcdir)/generic $(srcdir)/generic/itk.decls


.PHONY: all binaries clean depend distclean doc install libraries test

# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

Changes to generic/itkDecls.h.

1
2
3
4
5
6




7
8
9
10
11
12
13
..
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
..
48
49
50
51
52
53
54
55
56
57
58

59
60
61
62
63
64
65
/* !BEGIN!: Do not edit below this line. */

#define ITK_STUBS_EPOCH 0
#define ITK_STUBS_REVISION 17





/*
 * Exported function declarations:
 */

/* 0 */
ITKAPI int		Itk_Init(Tcl_Interp *interp);
/* 1 */
................................................................................
/* Slot 9 is reserved */
/* Slot 10 is reserved */
/* Slot 11 is reserved */
/* Slot 12 is reserved */
/* 13 */
ITKAPI int		Itk_ArchetypeInit(Tcl_Interp*interp);

typedef struct ItkStubHooks {
    const struct ItkIntStubs *itkIntStubs;
} ItkStubHooks;

typedef struct ItkStubs {
    int magic;
    int epoch;
    int revision;
    const struct ItkStubHooks *hooks;

    int (*itk_Init) (Tcl_Interp *interp); /* 0 */
    int (*itk_SafeInit) (Tcl_Interp *interp); /* 1 */
    void (*reserved2)(void);
    void (*reserved3)(void);
    void (*reserved4)(void);
    void (*reserved5)(void);
................................................................................
    void (*reserved9)(void);
    void (*reserved10)(void);
    void (*reserved11)(void);
    void (*reserved12)(void);
    int (*itk_ArchetypeInit) (Tcl_Interp*interp); /* 13 */
} ItkStubs;

#ifdef __cplusplus
extern "C" {
#endif
extern const ItkStubs *itkStubsPtr;

#ifdef __cplusplus
}
#endif

#if defined(USE_ITK_STUBS)

/*





>
>
>
>







 







|







|







 







<
<
<

>







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
..
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
..
52
53
54
55
56
57
58



59
60
61
62
63
64
65
66
67
/* !BEGIN!: Do not edit below this line. */

#define ITK_STUBS_EPOCH 0
#define ITK_STUBS_REVISION 17

#ifdef __cplusplus
extern "C" {
#endif

/*
 * Exported function declarations:
 */

/* 0 */
ITKAPI int		Itk_Init(Tcl_Interp *interp);
/* 1 */
................................................................................
/* Slot 9 is reserved */
/* Slot 10 is reserved */
/* Slot 11 is reserved */
/* Slot 12 is reserved */
/* 13 */
ITKAPI int		Itk_ArchetypeInit(Tcl_Interp*interp);

typedef struct {
    const struct ItkIntStubs *itkIntStubs;
} ItkStubHooks;

typedef struct ItkStubs {
    int magic;
    int epoch;
    int revision;
    const ItkStubHooks *hooks;

    int (*itk_Init) (Tcl_Interp *interp); /* 0 */
    int (*itk_SafeInit) (Tcl_Interp *interp); /* 1 */
    void (*reserved2)(void);
    void (*reserved3)(void);
    void (*reserved4)(void);
    void (*reserved5)(void);
................................................................................
    void (*reserved9)(void);
    void (*reserved10)(void);
    void (*reserved11)(void);
    void (*reserved12)(void);
    int (*itk_ArchetypeInit) (Tcl_Interp*interp); /* 13 */
} ItkStubs;




extern const ItkStubs *itkStubsPtr;

#ifdef __cplusplus
}
#endif

#if defined(USE_ITK_STUBS)

/*

Changes to generic/itkIntDecls.h.

1
2
3
4
5
6




7
8
9
10
11
12
13
..
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
..
80
81
82
83
84
85
86
87
88
89
90

91
92
93
94
95
96
97
/* !BEGIN!: Do not edit below this line. */

#define ITKINT_STUBS_EPOCH 0
#define ITKINT_STUBS_REVISION 17





/*
 * Exported function declarations:
 */

/* Slot 0 is reserved */
/* Slot 1 is reserved */
/* 2 */
................................................................................
ITKAPI void		Itk_OptListRemove(ItkOptList*olist,
				Tcl_HashEntry *entry);

typedef struct ItkIntStubs {
    int magic;
    int epoch;
    int revision;
    const struct ItkIntStubHooks *hooks;

    void (*reserved0)(void);
    void (*reserved1)(void);
    int (*itk_ConfigBodyCmd) (ClientData cdata, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]); /* 2 */
    int (*itk_UsualCmd) (ClientData cdata, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]); /* 3 */
    int (*itk_ClassOptionDefineCmd) (ClientData cdata, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]); /* 4 */
    int (*itk_ClassOptionIllegalCmd) (ClientData cdata, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]); /* 5 */
................................................................................
    void (*reserved13)(void);
    void (*itk_OptListInit) (ItkOptList*olist, Tcl_HashTable *options); /* 14 */
    void (*itk_OptListFree) (ItkOptList*olist); /* 15 */
    void (*itk_OptListAdd) (ItkOptList*olist, Tcl_HashEntry *entry); /* 16 */
    void (*itk_OptListRemove) (ItkOptList*olist, Tcl_HashEntry *entry); /* 17 */
} ItkIntStubs;

#ifdef __cplusplus
extern "C" {
#endif
extern const ItkIntStubs *itkIntStubsPtr;

#ifdef __cplusplus
}
#endif

#if defined(USE_ITK_STUBS)

/*





>
>
>
>







 







|







 







<
<
<

>







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
..
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
..
84
85
86
87
88
89
90



91
92
93
94
95
96
97
98
99
/* !BEGIN!: Do not edit below this line. */

#define ITKINT_STUBS_EPOCH 0
#define ITKINT_STUBS_REVISION 17

#ifdef __cplusplus
extern "C" {
#endif

/*
 * Exported function declarations:
 */

/* Slot 0 is reserved */
/* Slot 1 is reserved */
/* 2 */
................................................................................
ITKAPI void		Itk_OptListRemove(ItkOptList*olist,
				Tcl_HashEntry *entry);

typedef struct ItkIntStubs {
    int magic;
    int epoch;
    int revision;
    void *hooks;

    void (*reserved0)(void);
    void (*reserved1)(void);
    int (*itk_ConfigBodyCmd) (ClientData cdata, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]); /* 2 */
    int (*itk_UsualCmd) (ClientData cdata, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]); /* 3 */
    int (*itk_ClassOptionDefineCmd) (ClientData cdata, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]); /* 4 */
    int (*itk_ClassOptionIllegalCmd) (ClientData cdata, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]); /* 5 */
................................................................................
    void (*reserved13)(void);
    void (*itk_OptListInit) (ItkOptList*olist, Tcl_HashTable *options); /* 14 */
    void (*itk_OptListFree) (ItkOptList*olist); /* 15 */
    void (*itk_OptListAdd) (ItkOptList*olist, Tcl_HashEntry *entry); /* 16 */
    void (*itk_OptListRemove) (ItkOptList*olist, Tcl_HashEntry *entry); /* 17 */
} ItkIntStubs;




extern const ItkIntStubs *itkIntStubsPtr;

#ifdef __cplusplus
}
#endif

#if defined(USE_ITK_STUBS)

/*