source: webkit/trunk/JavaScriptCore/kjs/config.h@ 34470

Last change on this file since 34470 was 34470, checked in by [email protected], 17 years ago

2008-06-09 Cameron Zwarich <[email protected]>

Reviewed by Darin.

Bug 17531: Add interactive mode to testkjs
<https://bugs.webkit.org/show_bug.cgi?id=17531>

This is a cleaned up version of Sam's earlier patch to add an
interactive mode to testkjs.

Readline support is only enabled on Darwin platforms for now, but
other ports can enable it by defining HAVE_READLINE in kjs/config.h.

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • kjs/config.h:
  • kjs/testkjs.cpp: (Options::Options): (runWithScripts): (runInteractive): (printUsageStatement): (parseArguments): (kjsmain):
  • Property svn:eol-style set to native
File size: 2.3 KB
Line 
1/*
2 * Copyright (C) 2006, 2007 Apple Inc. All rights reserved.
3 * Copyright (C) 2006 Samuel Weinig <[email protected]>
4 *
5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Library General Public
7 * License as published by the Free Software Foundation; either
8 * version 2 of the License, or (at your option) any later version.
9 *
10 * This library is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Library General Public License for more details.
14 *
15 * You should have received a copy of the GNU Library General Public License
16 * along with this library; see the file COPYING.LIB. If not, write to
17 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
18 * Boston, MA 02110-1301, USA.
19 *
20 */
21
22#include <wtf/Platform.h>
23
24#if PLATFORM(DARWIN)
25
26#define HAVE_ERRNO_H 1
27#define HAVE_MMAP 1
28#define HAVE_MERGESORT 1
29#define HAVE_READLINE 1
30#define HAVE_SBRK 1
31#define HAVE_STRINGS_H 1
32#define HAVE_SYS_PARAM_H 1
33#define HAVE_SYS_TIME_H 1
34#define HAVE_SYS_TIMEB_H 1
35
36#elif PLATFORM(WIN_OS)
37
38// If we don't define these, they get defined in windef.h.
39// We want to use std::min and std::max
40#define max max
41#define min min
42
43#if !COMPILER(MSVC7)
44// We need to define this before the first #include of stdlib.h or it won't contain rand_s.
45#ifndef _CRT_RAND_S
46#define _CRT_RAND_S
47#endif
48#endif
49
50#define HAVE_FLOAT_H 1
51#define HAVE_SYS_TIMEB_H 1
52#define HAVE_VIRTUALALLOC 1
53
54#else
55
56/* FIXME: is this actually used or do other platforms generate their own config.h? */
57
58#define HAVE_ERRNO_H 1
59#define HAVE_MMAP 1
60#define HAVE_SBRK 1
61#define HAVE_STRINGS_H 1
62#define HAVE_SYS_PARAM_H 1
63#define HAVE_SYS_TIME_H 1
64
65#endif
66
67#if PLATFORM(FREEBSD)
68#define HAVE_PTHREAD_NP_H 1
69#endif
70
71/* FIXME: if all platforms have these, do they really need #defines? */
72#define HAVE_STDINT_H 1
73#define HAVE_STRING_H 1
74
75#define WTF_CHANGES 1
76
77#ifdef __cplusplus
78#undef new
79#undef delete
80#include <wtf/FastMalloc.h>
81#endif
82
83// this breaks compilation of <QFontDatabase>, at least, so turn it off for now
84// Also generates errors on wx on Windows, because these functions
85// are used from wx headers.
86#if !PLATFORM(QT) && !PLATFORM(WX)
87#include <wtf/DisallowCType.h>
88#endif
89
Note: See TracBrowser for help on using the repository browser.