Alexandre Julliard : makefiles: Get rid of the support for updating a makefile in place.
Alexandre Julliard
julliard at wine.codeweavers.com
Fri Oct 23 09:57:28 CDT 2015
Module: wine
Branch: master
Commit: 6222e49c37c1fa9120bd3eff6fc48dc902f2d312
URL: http://source.winehq.org/git/wine.git/?a=commit;h=6222e49c37c1fa9120bd3eff6fc48dc902f2d312
Author: Alexandre Julliard <julliard at winehq.org>
Date: Fri Oct 23 15:03:11 2015 +0900
makefiles: Get rid of the support for updating a makefile in place.
We always regenerate the makefile first nowadays.
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
tools/makedep.c | 49 ++++++++++++++++---------------------------------
1 file changed, 16 insertions(+), 33 deletions(-)
diff --git a/tools/makedep.c b/tools/makedep.c
index 119294b..104711e 100644
--- a/tools/makedep.c
+++ b/tools/makedep.c
@@ -172,7 +172,6 @@ struct makefile
static struct makefile *top_makefile;
static const char *makefile_name = "Makefile";
-static const char *Separator = "### Dependencies";
static const char *input_file_name;
static const char *output_file_name;
static const char *temp_file_name;
@@ -185,8 +184,7 @@ static const char Usage[] =
"Usage: makedep [options] directories\n"
"Options:\n"
" -R from to Compute the relative path between two directories\n"
- " -fxxx Store output in file 'xxx' (default: Makefile)\n"
- " -sxxx Use 'xxx' as separator (default: \"### Dependencies\")\n";
+ " -fxxx Store output in file 'xxx' (default: Makefile)\n";
#ifndef __GNUC__
@@ -2534,38 +2532,27 @@ static void output_top_variables( struct makefile *make )
/*******************************************************************
* output_dependencies
*/
-static void output_dependencies( struct makefile *make, const char *path )
+static void output_dependencies( struct makefile *make )
{
struct strarray targets, testlist_files = empty_strarray, ignore_files = empty_strarray;
+ char buffer[1024];
FILE *src_file;
- if (Separator && ((src_file = fopen( path, "r" ))))
- {
- char buffer[1024];
- int found = 0;
+ output_file_name = base_dir_path( make, makefile_name );
+ output_file = create_temp_file( output_file_name );
+ output_top_variables( make );
- output_file = create_temp_file( path );
- output_top_variables( make );
- while (fgets( buffer, sizeof(buffer), src_file ) && !found)
- {
- if (fwrite( buffer, 1, strlen(buffer), output_file ) != strlen(buffer)) fatal_perror( "write" );
- found = !strncmp( buffer, Separator, strlen(Separator) );
- }
- if (fclose( src_file )) fatal_perror( "close" );
- if (!found) output( "\n%s\n", Separator );
- }
- else
- {
- if (!(output_file = fopen( path, Separator ? "a" : "w" )))
- fatal_perror( "%s", path );
- output_top_variables( make );
- }
+ /* copy the contents of the source makefile */
+ if (!(src_file = fopen( output_file_name, "r" ))) fatal_perror( "open" );
+ while (fgets( buffer, sizeof(buffer), src_file ))
+ if (fwrite( buffer, 1, strlen(buffer), output_file ) != strlen(buffer)) fatal_perror( "write" );
+ if (fclose( src_file )) fatal_perror( "close" );
targets = output_sources( make, &testlist_files );
fclose( output_file );
output_file = NULL;
- if (temp_file_name) rename_temp_file( path );
+ rename_temp_file( output_file_name );
strarray_add( &ignore_files, ".gitignore" );
strarray_add( &ignore_files, "Makefile" );
@@ -2576,6 +2563,8 @@ static void output_dependencies( struct makefile *make, const char *path )
output_testlist( base_dir_path( make, "testlist.c" ), testlist_files );
if (!make->src_dir && make->base_dir)
output_gitignore( base_dir_path( make, ".gitignore" ), ignore_files );
+
+ output_file_name = NULL;
}
@@ -2606,7 +2595,7 @@ static void update_makefile( const char *path )
struct incl_file *file;
struct makefile *make;
- make = parse_makefile( path, Separator );
+ make = parse_makefile( path, NULL );
if (root_src_dir)
{
@@ -2671,9 +2660,7 @@ static void update_makefile( const char *path )
LIST_FOR_EACH_ENTRY( file, &make->includes, struct incl_file, entry ) parse_file( make, file, 0 );
- output_file_name = base_dir_path( make, makefile_name );
- output_dependencies( make, output_file_name );
- output_file_name = NULL;
+ output_dependencies( make );
}
@@ -2718,10 +2705,6 @@ static int parse_option( const char *opt )
case 'R':
relative_dir_mode = 1;
break;
- case 's':
- if (opt[2]) Separator = opt + 2;
- else Separator = NULL;
- break;
default:
fprintf( stderr, "Unknown option '%s'\n%s", opt, Usage );
exit(1);
More information about the wine-cvs
mailing list