]> git.kernelconcepts.de Git - karo-tx-redboot.git/blob - packages/net/ppp/v2_0/cdl/ppp.cdl
unified MX27, MX25, MX37 trees
[karo-tx-redboot.git] / packages / net / ppp / v2_0 / cdl / ppp.cdl
1 # ====================================================================
2 #
3 #      ppp.cdl
4 #
5 #      PPP configuration data
6 #
7 # ====================================================================
8 #####ECOSGPLCOPYRIGHTBEGIN####
9 ## -------------------------------------------
10 ## This file is part of eCos, the Embedded Configurable Operating System.
11 ## Copyright (C) 2003, 2004 eCosCentric Limited
12 ##
13 ## eCos is free software; you can redistribute it and/or modify it under
14 ## the terms of the GNU General Public License as published by the Free
15 ## Software Foundation; either version 2 or (at your option) any later version.
16 ##
17 ## eCos is distributed in the hope that it will be useful, but WITHOUT ANY
18 ## WARRANTY; without even the implied warranty of MERCHANTABILITY or
19 ## FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
20 ## for more details.
21 ##
22 ## You should have received a copy of the GNU General Public License along
23 ## with eCos; if not, write to the Free Software Foundation, Inc.,
24 ## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
25 ##
26 ## As a special exception, if other files instantiate templates or use macros
27 ## or inline functions from this file, or you compile this file and link it
28 ## with other works to produce a work based on this file, this file does not
29 ## by itself cause the resulting work to be covered by the GNU General Public
30 ## License. However the source code for this file must still be made available
31 ## in accordance with section (3) of the GNU General Public License.
32 ##
33 ## This exception does not invalidate any other reasons why a work based on
34 ## this file might be covered by the GNU General Public License.
35 ##
36 ## -------------------------------------------
37 #####ECOSGPLCOPYRIGHTEND####
38 # ====================================================================
39 ######DESCRIPTIONBEGIN####
40 #
41 # Author(s):      nickg
42 # Original data:  nickg
43 # Contributors:   
44 # Date:           2002-10-15
45 #
46 #####DESCRIPTIONEND####
47 #
48 # ====================================================================
49
50 cdl_package CYGPKG_PPP {
51     display       "PPP daemon"
52     parent        CYGPKG_NET
53     doc           ref/net-ppp.html
54     include_dir   cyg/ppp
55     requires      CYGPKG_IO
56     requires      CYGPKG_IO_SERIAL
57
58     requires      CYGPKG_IO_SERIAL_DEVICES
59     requires      CYGOPT_IO_SERIAL_SUPPORT_NONBLOCKING
60     requires      CYGPKG_NET
61     requires      CYGPKG_IO_SERIAL_FLOW_CONTROL
62     requires      CYGPKG_POSIX_CLOCKS
63     
64     description "PPP support for eCos. This package contains the PPP
65                  daemon functionality, BSD kernel device drivers for
66                  the network stack, plus other parts of the PPP
67                  infrastructure."
68
69     compile pppd.c sys-ecos.c ppp_io.c
70     compile auth.c ccp.c fsm.c magic.c
71     compile cbcp.c ipcp.c lcp.c 
72
73     compile if_ppp.c slcompress.c
74
75     cdl_option CYGNUM_PPP_PPPD_THREAD_PRIORITY {
76         display "PPP thread priority"
77         flavor data
78         default_value { CYGNUM_KERNEL_SCHED_PRIORITIES/2 }
79         legal_values 0 to CYGNUM_KERNEL_SCHED_PRIORITIES
80         description "The PPP system contains two threads, One is used for receiving
81                      data from the link and processing control packets.
82                      The other is used to transmit data asynchronously to the link
83                      when it cannot be completed synchronously. The receive thread
84                      runs at the priority given here, and the transmit thread
85                      runs at the next lower priority.
86                      The exact priority needed here depends on the importance of the
87                      PPP subsystem relative to the rest of the system. The default
88                      is to put it in the middle of the priority range to provide
89                      reasonable response without impacting genuine high
90                      priority threads."
91     }
92
93     cdl_component CYGPKG_PPP_DEBUG_WARN_ONLY {
94         display   "PPP protocol debug error only"
95         default_value 1
96         description "The runtime debug option enables logging of high
97                      level debug messages. Too many of these can interfere
98                      with the PPP device and may result in missed messages.
99                      This is because these messages are emitted via the diag_printf()
100                      mechanism, which disables interrupts while it prints.
101                      By default, therefore, we only report errors and warnings, and not
102                      all events. Setting this option to zero will enable the logging of
103                      all events."
104     }
105     
106     cdl_component CYGPKG_PPP_AUTH {
107         display "PPP authentication defaults"
108         flavor none
109         no_define
110         
111         cdl_option CYGPKG_PPP_AUTH_DEFAULT_USER {
112             display "Default user name"
113             flavor data
114             default_value {"\"eCos\""}
115             description "This option gives the default value
116                          for the user name used to intialize
117                          the user field in the PPP options."
118         }
119
120         cdl_option CYGPKG_PPP_AUTH_DEFAULT_PASSWD {
121             display "Default password"
122             flavor data
123             default_value {"\"secret\""}
124             description "This option gives the default value
125                          for the password used to intialize
126                          the passwd field in the PPP options."
127         }
128         
129     }
130
131     cdl_option CYGPKG_PPP_DEFAULT_DIALUP_NUMBER {
132         display "Default dialup number"
133         flavor data
134         default_value { "\"5551234\""}
135         description "This option provides a default dialup number for use in
136                      chat scripts. This value is not used anywhere
137                      in the PPP package, but is provided to complete the information
138                      needed, alongside the user name and password, for accessing a
139                      typical dialup server."
140     }
141     
142     cdl_component CYGPKG_PPP_PAP {
143         display "PAP support"
144         default_value 1
145         description "This component enables the inclusion of PAP authentication
146                      support."
147         compile upap.c
148
149     }
150
151     cdl_component CYGPKG_PPP_CHAP {
152         display "CHAP support"
153         default_value 1
154         description "This component enables the inclusion of CHAP authentication
155                      support."
156
157         compile chap.c chap_ms.c
158
159     }
160
161     cdl_component CYGPKG_PPP_COMPRESSION {
162         display "PPP compression options"
163         default_value 0
164         description "This component provides control over
165                      PPP compression features. WARNING: at
166                      present there are problems with BSD and ZLIB,
167                      and the compression code needs to allocate large
168                      amounts of memory. Hence this is all currently
169                      disabled."
170         
171         cdl_option PPP_BSDCOMP {
172             display "Enable BSD compression"
173             default_value 0
174             compile bsd_comp.c 
175             description "This option enables inclusion of BSD
176                          compression into the PPP protocol."
177         }
178
179         cdl_option PPP_DEFLATE {
180             display "Enable ZLIB compression"
181             default_value 0
182             compile ppp_deflate.c zlib.c
183             description "This option enables inclusion of ZLIB
184                          compression into the PPP protocol."
185         }
186         
187         cdl_option PPP_INHIBIT_OLD_VJ_COMPRESSION {
188                         display                 "Inhibit older-style VJ compression"
189                         flavor                  bool
190                         default_value   0
191                         description             "This option prevents the IPCP state machine
192                                          from negotiating the pre-RFC1332 Van Jacobson 
193                                          compression.  Checking this option could
194                                          improve IPCP negotiation time at the expense
195                                          of compatibility."
196                 }            
197     }
198
199     cdl_component CYGPKG_PPP_CHAT {
200         display "Chat script support"
201         default_value 1
202         description "This component enables the inclusion of a
203                      simple scripting system to bring up PPP connections.
204                      It implements a subset of the CHAT scripting language."
205
206         compile chat.c
207         
208         cdl_option CYGNUM_PPP_CHAT_ABORTS_MAX {
209             display "Maximum number of ABORT strings"
210             flavor data
211             default_value 10
212             legal_values 5 to 500
213             description "This option defines the maximum number of ABORT
214                          strings that the CHAT system will store."
215         }
216
217         cdl_option CYGNUM_PPP_CHAT_ABORTS_SIZE {
218             display "Maximum size of each ABORT string"
219             flavor data
220             default_value 20
221             legal_values 10 to 100
222             description "This option defines the maximum size of each ABORT
223                          strings that the CHAT system will store."
224         }
225
226         cdl_option CYGNUM_PPP_CHAT_STRING_LENGTH {
227             display "Maximum size of CHAT strings"
228             flavor data
229             default_value 256
230             legal_values 32 to 32768
231             description "This option defines the maximum size of any
232                          expect or reply strings that the CHAT system
233                          will be given."
234         }
235         
236     }
237
238     cdl_component CYGPKG_PPP_WORKAROUNDS {
239         display "PPP workarounds for bugs in other implementations"
240         flavor  none
241         no_define
242
243         cdl_option CYGPKT_PPP_WORKAROUNDS_START_FLAG {
244         flavor bool
245         default_value false
246         description "This option enables a workaround to add a start
247                      flag to every packet. The RFC does not require this,
248                      but some broken PPP implementations seems to need it."
249         }
250     }
251
252     cdl_component CYGPKG_PPP_NEGOTIATE_OPTIONS {
253         display "PPP negotiation options"
254         flavor none
255         no_define
256         
257         cdl_option CYGOPT_PPP_NS_NEGOTIATE {
258             display "Name server support"
259             default_value CYGINT_ISO_DNS
260             flavor bool
261             description "
262                 This option allows negotiation of the domain
263                 name server IPCP extensions as defined in 
264                 RFC 1877"
265         }
266         cdl_option CYGOPT_PPP_DNS_CONFIGURE {
267         display       "Allow the PPP code to configure the resolver"
268         default_value 1
269         description   "
270             The PPP code can negotionate with the peer what the 
271             recommended DNS server is. This option causes the PPP 
272             code to then configure the DNS resolver with the address
273             of the discovered server."
274        }
275     }    
276
277     cdl_component CYGPKG_PPP_OPTIONS {
278         display "PPP build options"
279         flavor  none
280         no_define
281
282         cdl_option CYGPKG_PPP_CFLAGS_ADD {
283             display "Additional compiler flags"
284             flavor  data
285             no_define
286             default_value { "-D__ECOS" }
287             description   "
288                 This option modifies the set of compiler flags for
289                 building the PPP package.
290                 These flags are used in addition
291                 to the set of global flags."
292         }
293
294         cdl_option CYGPKG_PPP_CFLAGS_REMOVE {
295             display "Suppressed compiler flags"
296             flavor  data
297             no_define
298             default_value { "" }
299             description   "
300                 This option modifies the set of compiler flags for
301                 building the PPP package. These flags are removed from
302                 the set of global flags if present."
303         }
304     }
305
306     cdl_option CYGPKG_PPP_TESTS {
307         display "PPP tests"
308         flavor  data
309         no_define
310         calculated { "tests/ppp_up "         .
311                      "tests/ppp_updown "     .
312                      "tests/chat "           .
313                      "tests/ppp_auth "       .
314                      ((CYGPKG_PPP_TESTS_ALL) ?
315                       "tests/isp "           .
316                       "tests/tcp_echo "      .
317                       "tests/nc_test_slave "
318                      :
319                       "" )
320                    }
321             description   "
322              This option specifies the set of tests
323              for the PPP package."
324         }
325
326     cdl_option CYGPKG_PPP_TESTS_ALL {
327         display "Include all PPP tests"
328         default_value 0
329         description "This option enables the inclusion of extra PPP tests
330                      that are not normally suitable for automated testing."
331     }
332     
333     cdl_option CYGPKG_PPP_TEST_DEVICE {
334         display "PPP test device"
335         flavor data
336         default_value { "\"/dev/ser0\"" }
337         description "This is the name of the device used by the PPP tests
338                      to make the PPP connection."
339     }
340
341     cdl_component CYGPKG_PPP_TESTS_AUTOMATE {
342         display "PPP test automation"
343         default_value 1
344         description "This component controls the automation of PPP tests using the
345                      test_server.sh script to control the remote end. Without this
346                      option, PPP tests are configured to run stand-alone. With this
347                      option they emit control strings to change the line baud rate
348                      and announce the test being performed."
349
350         cdl_option CYGDAT_PPP_TEST_BAUD_RATES {
351             display "PPP test automation baud rates"
352             flavor data
353             default_value { "CYGNUM_SERIAL_BAUD_19200," .
354                             "CYGNUM_SERIAL_BAUD_38400," .
355                             "CYGNUM_SERIAL_BAUD_57600," .
356                             "CYGNUM_SERIAL_BAUD_115200"
357                           }
358             description "This option gives the set of baud rates for which some
359                          tests will execute."
360         }
361     }
362         cdl_option CYGBLD_PPP_WINDOWS_TELNET_APP {
363             display  "Build complete eCos PPP client interfacing to Windows PPP server"
364             default_value 0
365             make -priority 320 {
366                 <PREFIX>/bin/windows_telnet.elf : $(PREFIX)/lib/target.ld $(PREFIX)/lib/vectors.o $(PREFIX)/lib/libtarget.a $(PREFIX)/lib/libextras.a $(REPOSITORY)/$(PACKAGE)/tests/windows_telnet.c
367                         @sh -c "mkdir -p $(dir $@)"
368                         $(CC) -c $(INCLUDE_PATH) $(CFLAGS) -o $(PREFIX)/lib/windows_telnet.o $(REPOSITORY)/$(PACKAGE)/tests/windows_telnet.c
369                         $(CC) $(LDFLAGS) -L$(PREFIX)/lib -Ttarget.ld -o $@ $(PREFIX)/lib/windows_telnet.o
370                         $(OBJCOPY) -O binary $@ $(PREFIX)/bin/windows_telnet.bin                        
371             }
372             
373         }
374
375 }
376
377 # EOF ppp.cdl