1 /* 2 * Copyright 1993-2002 Christopher Seiwald and Perforce Software, Inc. 3 * 4 * This file is part of Jam - see jam.c for Copyright information. 5 */ 6 7 #ifndef JAM_BUILTINS_H 8 # define JAM_BUILTINS_H 9 10 # include "config.h" 11 # include "frames.h" 12 13 /* 14 * builtins.h - compile parsed jam statements 15 */ 16 17 void load_builtins(); 18 void init_set(); 19 void init_path(); 20 void init_regex(); 21 void init_property_set(); 22 void init_sequence(); 23 void init_order(); 24 25 void property_set_done(); 26 27 LIST *builtin_calc( FRAME * frame, int flags ); 28 LIST *builtin_depends( FRAME * frame, int flags ); 29 LIST *builtin_rebuilds( FRAME * frame, int flags ); 30 LIST *builtin_echo( FRAME * frame, int flags ); 31 LIST *builtin_exit( FRAME * frame, int flags ); 32 LIST *builtin_flags( FRAME * frame, int flags ); 33 LIST *builtin_glob( FRAME * frame, int flags ); 34 LIST *builtin_glob_recursive( FRAME * frame, int flags ); 35 LIST *builtin_subst( FRAME * frame, int flags ); 36 LIST *builtin_match( FRAME * frame, int flags ); 37 LIST *builtin_split_by_characters( FRAME * frame, int flags ); 38 LIST *builtin_hdrmacro( FRAME * frame, int flags ); 39 LIST *builtin_rulenames( FRAME * frame, int flags ); 40 LIST *builtin_varnames( FRAME * frame, int flags ); 41 LIST *builtin_delete_module( FRAME * frame, int flags ); 42 LIST *builtin_import( FRAME * frame, int flags ); 43 LIST *builtin_export( FRAME * frame, int flags ); 44 LIST *builtin_caller_module( FRAME * frame, int flags ); 45 LIST *builtin_backtrace( FRAME * frame, int flags ); 46 LIST *builtin_pwd( FRAME * frame, int flags ); 47 LIST *builtin_update( FRAME * frame, int flags ); 48 LIST *builtin_update_now( FRAME * frame, int flags ); 49 LIST *builtin_import_module( FRAME * frame, int flags ); 50 LIST *builtin_imported_modules( FRAME * frame, int flags ); 51 LIST *builtin_instance( FRAME * frame, int flags ); 52 LIST *builtin_sort( FRAME * frame, int flags ); 53 LIST *builtin_normalize_path( FRAME * frame, int flags ); 54 LIST *builtin_native_rule( FRAME * frame, int flags ); 55 LIST *builtin_has_native_rule( FRAME * frame, int flags ); 56 LIST *builtin_user_module( FRAME * frame, int flags ); 57 LIST *builtin_nearest_user_location( FRAME * frame, int flags ); 58 LIST *builtin_check_if_file( FRAME * frame, int flags ); 59 LIST *builtin_python_import_rule( FRAME * frame, int flags ); 60 LIST *builtin_shell( FRAME * frame, int flags ); 61 LIST *builtin_md5( FRAME * frame, int flags ); 62 LIST *builtin_file_open( FRAME * frame, int flags ); 63 LIST *builtin_pad( FRAME * frame, int flags ); 64 LIST *builtin_precious( FRAME * frame, int flags ); 65 LIST *builtin_self_path( FRAME * frame, int flags ); 66 LIST *builtin_makedir( FRAME * frame, int flags ); 67 LIST *builtin_readlink( FRAME * frame, int flags ); 68 LIST *builtin_glob_archive( FRAME * frame, int flags ); 69 LIST *builtin_debug_print_helper( FRAME * frame, int flags ); 70 71 void backtrace( FRAME *frame ); 72 extern int last_update_now_status; 73 74 #endif 75