remake  4.3+dbg-1.5
Enumerations | Functions | Variables
file.h File Reference

Definition of target file data structures for GNU Make. More...

#include "make.h"
#include "types.h"
#include "hash.h"

Go to the source code of this file.

Enumerations

enum  print_target_mask_t {
  PRINT_TARGET_NONORDER = 0x001, PRINT_TARGET_ORDER = 0x002, PRINT_TARGET_ATTRS = 0x004, PRINT_TARGET_TIME = 0x008,
  PRINT_TARGET_STATE = 0x010, PRINT_TARGET_VARS = 0x020, PRINT_TARGET_VARS_HASH = 0x040, PRINT_TARGET_CMDS = 0x080,
  PRINT_TARGET_PREV = 0x100, PRINT_TARGET_CMDS_EXP = 0x200, PRINT_TARGET_DEPEND = (PRINT_TARGET_ORDER|PRINT_TARGET_NONORDER), PRINT_TARGET_ALL = 0x0FF
}
 

Functions

void free_file (file_t *p_file)
 
void remove_intermediates (int sig)
 
void init_hash_files (void)
 
char * build_target_list (char *old_list)
 
void print_target (const void *item)
 
void print_target_props (file_t *p_target, print_target_mask_t i_mask)
 
void expand_deps (file_t *f)
 
void snap_deps (void)
 

Variables

struct hash_table files
 
print_target_mask_t debugger_enum_mask
 

Detailed Description

Definition of target file data structures for GNU Make.

Enumeration Type Documentation

◆ print_target_mask_t

Thing of the below as a bit mask rather than an enumeration and use print_target_mask; The enumeration is created be helpful in debuggers where wants just to refer to the PRINT_TARGET_ names and get something.

Enumerator
PRINT_TARGET_NONORDER 
PRINT_TARGET_ORDER 
PRINT_TARGET_ATTRS 
PRINT_TARGET_TIME 
PRINT_TARGET_STATE 
PRINT_TARGET_VARS 
PRINT_TARGET_VARS_HASH 
PRINT_TARGET_CMDS 
PRINT_TARGET_PREV 
PRINT_TARGET_CMDS_EXP 
PRINT_TARGET_DEPEND 
PRINT_TARGET_ALL 

Function Documentation

◆ build_target_list()

char* build_target_list ( char *  old_list)

◆ expand_deps()

void expand_deps ( file_t f)

Expand and parse each dependency line.

◆ free_file()

void free_file ( file_t p_file)

Free memory associated with p_file.

◆ init_hash_files()

void init_hash_files ( void  )

◆ print_target()

void print_target ( const void *  item)

Print the data base of files.

◆ print_target_props()

void print_target_props ( file_t p_target,
print_target_mask_t  i_mask 
)

Print some or all properties of the data base of files.

Referenced by dbg_cmd_target().

◆ remove_intermediates()

void remove_intermediates ( int  sig)

Remove all nonprecious intermediate files.

Parameters
sigif is nonzero, this was caused by a fatal signal, meaning that a different message will be printed, and the message will go to stderr rather than stdout.

◆ snap_deps()

void snap_deps ( void  )

For each dependency of each file, make the 'struct dep' point at the appropriate 'struct file' (which may have to be created).

Also mark the files depended on by .PRECIOUS, .PHONY, .SILENT, and various other special targets.

Variable Documentation

◆ debugger_enum_mask

print_target_mask_t debugger_enum_mask

◆ files

struct hash_table files