VirtualBox

Changeset 528 in kBuild


Ignore:
Timestamp:
Sep 17, 2006 4:16:24 AM (19 years ago)
Author:
bird
Message:

includedep

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/gmake/read.c

    r520 r528  
    801801          goto rule_complete;
    802802        }
     803
     804#ifdef CONFIG_WITH_INCLUDEDEP
     805      if (word1eq ("includedep"))
     806        {
     807            /* We have found an `includedep' line specifying a single nested
     808               makefile to be read at this point. This include variation
     809               does not globbing and doesn't support multiple names. It's
     810               trying to save time by being dead simple. */
     811            struct conditionals *save;
     812            struct conditionals new_conditionals;
     813            char *name = p2;
     814            char *end = strchr(name, '\0');
     815            char saved;
     816            int r;
     817
     818            while (end > name && isspace ((unsigned char)end[-1]))
     819              --end;
     820            saved = *end; /* not sure if this is required... */
     821            *end = '\0';
     822
     823            if (file_exists_p (name))
     824              {
     825                /* Save the state of conditionals and start
     826                   the included makefile with a clean slate.  */
     827                save = install_conditionals (&new_conditionals);
     828
     829                /* Record the rules that are waiting so they will determine
     830                   the default goal before those in the included makefile.  */
     831                record_waiting_files ();
     832
     833                /* Read the makefile.  */
     834                r = eval_makefile (name, RM_INCLUDED | RM_NO_TILDE | RM_DONTCARE);
     835                if (!r)
     836                  error (fstart, "%s: %s", name, strerror (errno));
     837
     838                /* Restore conditional state.  */
     839                restore_conditionals (save);
     840              }
     841            *end = saved;
     842            goto rule_complete;
     843          }
     844#endif /* CONFIG_WITH_INCLUDEDEP */
    803845
    804846      if (word1eq ("include") || word1eq ("-include") || word1eq ("sinclude"))
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette