makedep: Create target subdirectories at make depend time.
This commit is contained in:
parent
2da6fc368f
commit
16286e45c4
|
@ -37,7 +37,6 @@ ARFLAGS = @ARFLAGS@
|
|||
RANLIB = @RANLIB@
|
||||
STRIP = @STRIP@
|
||||
LN_S = @LN_S@
|
||||
MKDIR_P = @MKDIR_P@
|
||||
TOOLSDIR = @TOOLSDIR@
|
||||
LDFLAGS = @LDFLAGS@
|
||||
DLLFLAGS = @DLLFLAGS@
|
||||
|
|
|
@ -719,7 +719,6 @@ FONTFORGE
|
|||
PKG_CONFIG
|
||||
MSGFMT
|
||||
LDCONFIG
|
||||
MKDIR_P
|
||||
EGREP
|
||||
GREP
|
||||
LN_S
|
||||
|
@ -5363,48 +5362,6 @@ $as_echo "$ac_cv_path_EGREP" >&6; }
|
|||
EGREP="$ac_cv_path_EGREP"
|
||||
|
||||
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5
|
||||
$as_echo_n "checking for a thread-safe mkdir -p... " >&6; }
|
||||
if test -z "$MKDIR_P"; then
|
||||
if ${ac_cv_path_mkdir+:} false; then :
|
||||
$as_echo_n "(cached) " >&6
|
||||
else
|
||||
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
|
||||
for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin
|
||||
do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_prog in mkdir gmkdir; do
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue
|
||||
case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #(
|
||||
'mkdir (GNU coreutils) '* | \
|
||||
'mkdir (coreutils) '* | \
|
||||
'mkdir (fileutils) '4.1*)
|
||||
ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext
|
||||
break 3;;
|
||||
esac
|
||||
done
|
||||
done
|
||||
done
|
||||
IFS=$as_save_IFS
|
||||
|
||||
fi
|
||||
|
||||
test -d ./--version && rmdir ./--version
|
||||
if test "${ac_cv_path_mkdir+set}" = set; then
|
||||
MKDIR_P="$ac_cv_path_mkdir -p"
|
||||
else
|
||||
# As a last resort, use the slow shell script. Don't cache a
|
||||
# value for MKDIR_P within a source directory, because that will
|
||||
# break other packages using the cache if that directory is
|
||||
# removed, or if the value is a relative name.
|
||||
MKDIR_P="$ac_install_sh -d"
|
||||
fi
|
||||
fi
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5
|
||||
$as_echo "$MKDIR_P" >&6; }
|
||||
|
||||
# Extract the first word of "ldconfig", so it can be a program name with args.
|
||||
set dummy ldconfig; ac_word=$2
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
|
||||
|
@ -18010,7 +17967,6 @@ gives unlimited permission to copy, distribute and modify it."
|
|||
|
||||
ac_pwd='$ac_pwd'
|
||||
srcdir='$srcdir'
|
||||
MKDIR_P='$MKDIR_P'
|
||||
test -n "\$AWK" || AWK=awk
|
||||
_ACEOF
|
||||
|
||||
|
@ -18599,11 +18555,6 @@ ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
|
|||
# CONFIG_FILE
|
||||
#
|
||||
|
||||
ac_MKDIR_P=$MKDIR_P
|
||||
case $MKDIR_P in
|
||||
[\\/$]* | ?:[\\/]* ) ;;
|
||||
*/*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;;
|
||||
esac
|
||||
_ACEOF
|
||||
|
||||
cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
|
||||
|
@ -18657,7 +18608,6 @@ s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t
|
|||
s&@builddir@&$ac_builddir&;t t
|
||||
s&@abs_builddir@&$ac_abs_builddir&;t t
|
||||
s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
|
||||
s&@MKDIR_P@&$ac_MKDIR_P&;t t
|
||||
$ac_datarootdir_hack
|
||||
"
|
||||
eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \
|
||||
|
|
|
@ -264,7 +264,6 @@ AC_SUBST(ARFLAGS,rc)
|
|||
AC_PROG_RANLIB
|
||||
AC_PROG_LN_S
|
||||
AC_PROG_EGREP
|
||||
AC_PROG_MKDIR_P
|
||||
AC_PATH_PROG(LDCONFIG, ldconfig, true, [/sbin /usr/sbin $PATH])
|
||||
AC_CHECK_PROGS(MSGFMT, msgfmt, false)
|
||||
WINE_PATH_PKG_CONFIG
|
||||
|
|
|
@ -1346,6 +1346,26 @@ static void add_generated_sources(void)
|
|||
}
|
||||
|
||||
|
||||
/*******************************************************************
|
||||
* create_dir
|
||||
*/
|
||||
static void create_dir( const char *dir )
|
||||
{
|
||||
char *p, *path;
|
||||
|
||||
p = path = xstrdup( dir );
|
||||
while ((p = strchr( p, '/' )))
|
||||
{
|
||||
*p = 0;
|
||||
if (mkdir( path, 0755 ) == -1 && errno != EEXIST) fatal_perror( "mkdir %s", path );
|
||||
*p++ = '/';
|
||||
while (*p == '/') p++;
|
||||
}
|
||||
if (mkdir( path, 0755 ) == -1 && errno != EEXIST) fatal_perror( "mkdir %s", path );
|
||||
free( path );
|
||||
}
|
||||
|
||||
|
||||
/*******************************************************************
|
||||
* output_include
|
||||
*/
|
||||
|
@ -1381,6 +1401,7 @@ static struct strarray output_sources(void)
|
|||
struct strarray c2man_files = empty_strarray;
|
||||
struct strarray implib_objs = empty_strarray;
|
||||
struct strarray includes = empty_strarray;
|
||||
struct strarray subdirs = empty_strarray;
|
||||
struct strarray phony_targets = empty_strarray;
|
||||
struct strarray linguas = get_expanded_make_var_array( "LINGUAS" );
|
||||
struct strarray all_targets = get_expanded_make_var_array( "PROGRAMS" );
|
||||
|
@ -1409,7 +1430,6 @@ static struct strarray output_sources(void)
|
|||
LIST_FOR_EACH_ENTRY( source, &sources, struct incl_file, entry )
|
||||
{
|
||||
struct strarray extradefs;
|
||||
char *subdir = NULL;
|
||||
char *obj = xstrdup( source->name );
|
||||
char *ext = get_extension( obj );
|
||||
|
||||
|
@ -1418,8 +1438,9 @@ static struct strarray output_sources(void)
|
|||
|
||||
if (src_dir && strchr( obj, '/' ))
|
||||
{
|
||||
subdir = xstrdup( obj );
|
||||
char *subdir = strmake( "%s/%s", base_dir, obj );
|
||||
*strrchr( subdir, '/' ) = 0;
|
||||
strarray_add_uniq( &subdirs, subdir );
|
||||
}
|
||||
|
||||
extradefs = get_expanded_make_var_array( strmake( "%s_EXTRADEFS", obj ));
|
||||
|
@ -1432,7 +1453,6 @@ static struct strarray output_sources(void)
|
|||
if (find_include_file( header ))
|
||||
{
|
||||
output( "%s.tab.h: %s\n", obj, source->filename );
|
||||
if (subdir) output( "\t$(MKDIR_P) -m 755 %s\n", subdir );
|
||||
output( "\t$(BISON) -p %s_ -o %s.tab.c -d %s\n",
|
||||
obj, obj, source->filename );
|
||||
output( "%s.tab.c: %s %s\n", obj, source->filename, header );
|
||||
|
@ -1440,7 +1460,6 @@ static struct strarray output_sources(void)
|
|||
}
|
||||
else output( "%s.tab.c: %s\n", obj, source->filename );
|
||||
|
||||
if (subdir) output( "\t$(MKDIR_P) -m 755 %s\n", subdir );
|
||||
output( "\t$(BISON) -p %s_ -o $@ %s\n", obj, source->filename );
|
||||
free( header );
|
||||
continue; /* no dependencies */
|
||||
|
@ -1448,7 +1467,6 @@ static struct strarray output_sources(void)
|
|||
else if (!strcmp( ext, "x" )) /* template file */
|
||||
{
|
||||
output( "%s.h: %s%s %s\n", obj, tools_dir_path( "make_xftmpl" ), tools_ext, source->filename );
|
||||
if (subdir) output( "\t$(MKDIR_P) -m 755 %s\n", subdir );
|
||||
output( "\t%s%s -H -o $@ %s\n", tools_dir_path( "make_xftmpl" ), tools_ext, source->filename );
|
||||
strarray_add( &clean_files, strmake( "%s.h", obj ));
|
||||
continue; /* no dependencies */
|
||||
|
@ -1456,7 +1474,6 @@ static struct strarray output_sources(void)
|
|||
else if (!strcmp( ext, "l" )) /* lex file */
|
||||
{
|
||||
output( "%s.yy.c: %s\n", obj, source->filename );
|
||||
if (subdir) output( "\t$(MKDIR_P) -m 755 %s\n", subdir );
|
||||
output( "\t$(FLEX) -o$@ %s\n", source->filename );
|
||||
continue; /* no dependencies */
|
||||
}
|
||||
|
@ -1464,7 +1481,6 @@ static struct strarray output_sources(void)
|
|||
{
|
||||
strarray_add( &res_files, strmake( "%s.res", obj ));
|
||||
output( "%s.res: %s %s\n", obj, tools_path( "wrc" ), source->filename );
|
||||
if (subdir) output( "\t$(MKDIR_P) -m 755 %s\n", subdir );
|
||||
output( "\t%s -o $@ %s", tools_path( "wrc" ), source->filename );
|
||||
if (is_win16) output_filename( "-m16" );
|
||||
else output_filenames( targetflags );
|
||||
|
@ -1489,7 +1505,6 @@ static struct strarray output_sources(void)
|
|||
{
|
||||
strarray_add( &res_files, strmake( "%s.res", obj ));
|
||||
output( "%s.res: %s %s\n", obj, tools_path( "wmc" ), source->filename );
|
||||
if (subdir) output( "\t$(MKDIR_P) -m 755 %s\n", subdir );
|
||||
output( "\t%s -U -O res -o $@ %s", tools_path( "wmc" ), source->filename );
|
||||
if (mo_files.count)
|
||||
{
|
||||
|
@ -1523,7 +1538,6 @@ static struct strarray output_sources(void)
|
|||
if (source->flags & FLAG_IDL_PROXY) strarray_add( &dlldata_files, source->name );
|
||||
output_filenames( targets );
|
||||
output( ": %s\n", tools_path( "widl" ));
|
||||
if (subdir) output( "\t$(MKDIR_P) -m 755 %s\n", subdir );
|
||||
output( "\t%s -o $@ %s", tools_path( "widl" ), source->filename );
|
||||
output_filenames( targetflags );
|
||||
output_filenames( includes );
|
||||
|
@ -1559,7 +1573,6 @@ static struct strarray output_sources(void)
|
|||
}
|
||||
else strarray_add( &clean_files, xstrdup(obj) );
|
||||
output( "%s: %s\n", obj, source->filename );
|
||||
if (subdir) output( "\t$(MKDIR_P) -m 755 %s\n", subdir );
|
||||
output( "\t$(SED_CMD) %s >$@ || ($(RM) $@ && false)\n", source->filename );
|
||||
output( "%s:", obj );
|
||||
}
|
||||
|
@ -1604,7 +1617,6 @@ static struct strarray output_sources(void)
|
|||
if (source->flags & FLAG_C_IMPLIB) strarray_add( &implib_objs, strmake( "%s.o", obj ));
|
||||
strarray_add( &object_files, strmake( "%s.o", obj ));
|
||||
output( "%s.o: %s\n", obj, source->filename );
|
||||
if (subdir) output( "\t$(MKDIR_P) -m 755 %s\n", subdir );
|
||||
output( "\t$(CC) -c -o $@ %s", source->filename );
|
||||
output_filenames( includes );
|
||||
output_filenames( define_args );
|
||||
|
@ -1618,7 +1630,6 @@ static struct strarray output_sources(void)
|
|||
{
|
||||
strarray_add( &crossobj_files, strmake( "%s.cross.o", obj ));
|
||||
output( "%s.cross.o: %s\n", obj, source->filename );
|
||||
if (subdir) output( "\t$(MKDIR_P) -m 755 %s\n", subdir );
|
||||
output( "\t$(CROSSCC) -c -o $@ %s", source->filename );
|
||||
output_filenames( includes );
|
||||
output_filenames( define_args );
|
||||
|
@ -1974,6 +1985,8 @@ static struct strarray output_sources(void)
|
|||
output( "\n" );
|
||||
}
|
||||
|
||||
for (i = 0; i < subdirs.count; i++) create_dir( subdirs.str[i] );
|
||||
|
||||
return clean_files;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue