mirror of https://github.com/GNOME/gimp.git
Commit the junk in my tree before I go back to school:
* ltconfig * ltmain.sh: downgraded to libtool 1.0f at Jay's suggestion * app/gimage.c: Fix for the "merge to alpha" bug from Nathan Summers * app/text_tool.c: Fix for the font spec bug from Nathan Summers * plug-ins/maze/maze.c * plug-ins/rotate/rotate.c: updated from registry * plug-ins/blur/blur.c * plug-ins/randomize/randomize.c * plug-ins/vpropagate/vpropagate.c * plug-ins/warp/warp.c: more portability fixes for DEC OSF1 -Yosh
This commit is contained in:
parent
e0089435d1
commit
ab52da1735
19
ChangeLog
19
ChangeLog
|
@ -1,3 +1,22 @@
|
|||
Tue Jan 13 21:36:07 PST 1998 Manish Singh <yosh@gimp.org>
|
||||
|
||||
* ltconfig
|
||||
* ltmain.sh: downgraded to libtool 1.0f at Jay's suggestion
|
||||
|
||||
* app/gimage.c: Fix for the "merge to alpha" bug from Nathan
|
||||
Summers
|
||||
|
||||
* app/text_tool.c: Fix for the font spec bug from Nathan
|
||||
Summers
|
||||
|
||||
* plug-ins/maze/maze.c
|
||||
* plug-ins/rotate/rotate.c: updated from registry
|
||||
|
||||
* plug-ins/blur/blur.c
|
||||
* plug-ins/randomize/randomize.c
|
||||
* plug-ins/vpropagate/vpropagate.c
|
||||
* plug-ins/warp/warp.c: more portability fixes for DEC OSF1
|
||||
|
||||
Mon Jan 12 14:49:19 1998 Scott Goehring <scott@poverty.bloomington.in.us>
|
||||
|
||||
* plug-ins/fractaltrace/fractaltrace.c (query): ymax argument was
|
||||
|
|
19
app/gimage.c
19
app/gimage.c
|
@ -1835,6 +1835,7 @@ gimage_merge_layers (GImage *gimage, link_ptr merge_list, MergeType merge_type)
|
|||
PixelRegion * mask;
|
||||
Layer *merge_layer;
|
||||
Layer *layer;
|
||||
Layer *bottom;
|
||||
unsigned char bg[4] = {0, 0, 0, 0};
|
||||
int type;
|
||||
int count;
|
||||
|
@ -1955,12 +1956,7 @@ gimage_merge_layers (GImage *gimage, link_ptr merge_list, MergeType merge_type)
|
|||
*/
|
||||
merge_layer = layer_new (gimage->ID, (x2 - x1), (y2 - y1),
|
||||
drawable_type_with_alpha (layer->ID), layer->name,
|
||||
OPAQUE, NORMAL_MODE);
|
||||
|
||||
if (!merge_layer) {
|
||||
warning("gimage_merge_layers: could not allocate merge layer");
|
||||
return NULL;
|
||||
}
|
||||
layer->opacity, layer->mode);
|
||||
|
||||
if (!merge_layer) {
|
||||
warning("gimage_merge_layers: could not allocate merge layer");
|
||||
|
@ -1981,6 +1977,14 @@ gimage_merge_layers (GImage *gimage, link_ptr merge_list, MergeType merge_type)
|
|||
*/
|
||||
layer = (Layer *) reverse_list->data;
|
||||
position = list_length (gimage->layers) - gimage_get_layer_index (gimage, layer->ID);
|
||||
|
||||
/* set the mode of the bottom layer to normal so that the contents
|
||||
* aren't lost when merging with the all-alpha merge_layer
|
||||
* Keep a pointer to it so that we can set the mode right after it's been
|
||||
* merged so that undo works correctly.
|
||||
*/
|
||||
layer -> mode =NORMAL;
|
||||
bottom = layer;
|
||||
}
|
||||
|
||||
while (reverse_list)
|
||||
|
@ -2023,6 +2027,9 @@ gimage_merge_layers (GImage *gimage, link_ptr merge_list, MergeType merge_type)
|
|||
reverse_list = next_item (reverse_list);
|
||||
}
|
||||
|
||||
/* Save old mode in undo */
|
||||
bottom -> mode = merge_layer -> mode;
|
||||
|
||||
free_list (reverse_list);
|
||||
|
||||
/* if the type is flatten, remove all the remaining layers */
|
||||
|
|
|
@ -634,12 +634,6 @@ text_font_item_update (GtkWidget *w,
|
|||
old_index = the_text_tool->font_index;
|
||||
the_text_tool->font_index = index;
|
||||
|
||||
if (!text_load_font (the_text_tool))
|
||||
{
|
||||
the_text_tool->font_index = old_index;
|
||||
return;
|
||||
}
|
||||
|
||||
font = font_info[the_text_tool->font_index];
|
||||
|
||||
if (the_text_tool->foundry && !font->foundries[the_text_tool->foundry])
|
||||
|
@ -678,6 +672,12 @@ text_font_item_update (GtkWidget *w,
|
|||
gtk_widget_set_sensitive (the_text_tool->set_width_items[i], font->set_widths[i]);
|
||||
for (i = 0; i < nspacings; i++)
|
||||
gtk_widget_set_sensitive (the_text_tool->spacing_items[i], font->spacings[i]);
|
||||
|
||||
if (!text_load_font (the_text_tool))
|
||||
{
|
||||
the_text_tool->font_index = old_index;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
|
@ -634,12 +634,6 @@ text_font_item_update (GtkWidget *w,
|
|||
old_index = the_text_tool->font_index;
|
||||
the_text_tool->font_index = index;
|
||||
|
||||
if (!text_load_font (the_text_tool))
|
||||
{
|
||||
the_text_tool->font_index = old_index;
|
||||
return;
|
||||
}
|
||||
|
||||
font = font_info[the_text_tool->font_index];
|
||||
|
||||
if (the_text_tool->foundry && !font->foundries[the_text_tool->foundry])
|
||||
|
@ -678,6 +672,12 @@ text_font_item_update (GtkWidget *w,
|
|||
gtk_widget_set_sensitive (the_text_tool->set_width_items[i], font->set_widths[i]);
|
||||
for (i = 0; i < nspacings; i++)
|
||||
gtk_widget_set_sensitive (the_text_tool->spacing_items[i], font->spacings[i]);
|
||||
|
||||
if (!text_load_font (the_text_tool))
|
||||
{
|
||||
the_text_tool->font_index = old_index;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
|
@ -634,12 +634,6 @@ text_font_item_update (GtkWidget *w,
|
|||
old_index = the_text_tool->font_index;
|
||||
the_text_tool->font_index = index;
|
||||
|
||||
if (!text_load_font (the_text_tool))
|
||||
{
|
||||
the_text_tool->font_index = old_index;
|
||||
return;
|
||||
}
|
||||
|
||||
font = font_info[the_text_tool->font_index];
|
||||
|
||||
if (the_text_tool->foundry && !font->foundries[the_text_tool->foundry])
|
||||
|
@ -678,6 +672,12 @@ text_font_item_update (GtkWidget *w,
|
|||
gtk_widget_set_sensitive (the_text_tool->set_width_items[i], font->set_widths[i]);
|
||||
for (i = 0; i < nspacings; i++)
|
||||
gtk_widget_set_sensitive (the_text_tool->spacing_items[i], font->spacings[i]);
|
||||
|
||||
if (!text_load_font (the_text_tool))
|
||||
{
|
||||
the_text_tool->font_index = old_index;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
199
ltconfig
199
ltconfig
|
@ -26,36 +26,13 @@
|
|||
|
||||
# A lot of this script is taken from autoconf-2.10.
|
||||
|
||||
echo=echo
|
||||
if test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then :
|
||||
else
|
||||
# The Solaris and AIX default echo program unquotes backslashes.
|
||||
# This makes it impossible to quote backslashes using
|
||||
# echo "$something" | sed 's/\\/\\\\/g'
|
||||
# So, we emulate echo with printf '%s\n'
|
||||
echo="printf %s\\n"
|
||||
if test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then :
|
||||
else
|
||||
# Oops. We have no working printf. Try to find a not-so-buggy echo.
|
||||
echo=echo
|
||||
IFS="${IFS= }"; save_ifs="$IFS"; IFS="${IFS}:"
|
||||
for dir in $PATH /usr/ucb; do
|
||||
if test -f $dir/echo && test "X`$dir/echo '\t'`" = 'X\t'; then
|
||||
echo="$dir/echo"
|
||||
break
|
||||
fi
|
||||
done
|
||||
IFS="$save_ifs"
|
||||
fi
|
||||
fi
|
||||
|
||||
# The name of this program.
|
||||
progname=`$echo "$0" | sed 's%^.*/%%'`
|
||||
progname=`echo "$0" | sed 's%^.*/%%'`
|
||||
|
||||
# Constants:
|
||||
PROGRAM=ltconfig
|
||||
PACKAGE=libtool
|
||||
VERSION=1.0h
|
||||
VERSION=1.0f
|
||||
ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.c 1>&5'
|
||||
ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.c $LIBS 1>&5'
|
||||
rm="rm -f"
|
||||
|
@ -64,10 +41,10 @@ help="Try \`$progname --help' for more information."
|
|||
|
||||
# Sed substitution that helps us do robust quoting. It backslashifies
|
||||
# metacharacters that are still active within double-quoted strings.
|
||||
sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g'
|
||||
sed_quote_subst='s/\([\\"$\\\\]\)/\\\1/g'
|
||||
|
||||
# Same as above, but don't quote variable references.
|
||||
double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g'
|
||||
double_quote_subst='s/\([\\"\\\\]\)/\\\1/g'
|
||||
|
||||
# Global variables:
|
||||
can_build_shared=yes
|
||||
|
@ -302,7 +279,7 @@ host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
|
|||
host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
|
||||
|
||||
case "$host_os" in
|
||||
aix3*)
|
||||
aix*)
|
||||
# AIX sometimes has problems with the GCC collect2 program. For some
|
||||
# reason, if we set the COLLECT_NAMES environment variable, the problems
|
||||
# vanish in a puff of smoke.
|
||||
|
@ -316,7 +293,6 @@ esac
|
|||
# Determine commands to create old-style static archives.
|
||||
old_archive_cmds='$AR cru $oldlib$oldobjs'
|
||||
old_postinstall_cmds='chmod 644 $oldlib'
|
||||
old_postuninstall_cmds=
|
||||
|
||||
# Set a sane default for `AR'.
|
||||
test -z "$AR" && AR=ar
|
||||
|
@ -415,7 +391,7 @@ if test "$with_gcc" != yes || test -z "$CC"; then
|
|||
# Now see if the compiler is really GCC.
|
||||
with_gcc=no
|
||||
echo $ac_n "checking whether we are using GNU C... $ac_c" 1>&6
|
||||
echo "$progname:418: checking whether we are using GNU C" >&5
|
||||
echo "$progname:394: checking whether we are using GNU C" >&5
|
||||
|
||||
$rm conftest.c
|
||||
cat > conftest.c <<EOF
|
||||
|
@ -423,7 +399,7 @@ if test "$with_gcc" != yes || test -z "$CC"; then
|
|||
yes;
|
||||
#endif
|
||||
EOF
|
||||
if { ac_try='${CC-cc} -E conftest.c'; { (eval echo $progname:426: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
|
||||
if { ac_try='${CC-cc} -E conftest.c'; { (eval echo $progname:402: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
|
||||
with_gcc=yes
|
||||
fi
|
||||
$rm conftest.c
|
||||
|
@ -455,12 +431,6 @@ if test "$with_gcc" = yes; then
|
|||
os2*)
|
||||
# We can build DLLs from non-PIC.
|
||||
;;
|
||||
amigaos*)
|
||||
# FIXME: we need at least 68020 code to build shared libraries, but
|
||||
# adding the `-m68020' flag to GCC prevents building anything better,
|
||||
# like `-m68040'.
|
||||
pic_flag='-m68020 -resident32 -malways-restore-a4'
|
||||
;;
|
||||
*)
|
||||
pic_flag='-fPIC'
|
||||
;;
|
||||
|
@ -534,8 +504,8 @@ if test -n "$pic_flag"; then
|
|||
echo > conftest.c
|
||||
save_CFLAGS="$CFLAGS"
|
||||
CFLAGS="$CFLAGS $pic_flag -DPIC"
|
||||
echo "$progname:537: checking if $compiler PIC flag $pic_flag works" >&5
|
||||
if { (eval echo $progname:538: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.o; then
|
||||
echo "$progname:507: checking if $compiler PIC flag $pic_flag works" >&5
|
||||
if { (eval echo $progname:508: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.o; then
|
||||
# Append any errors to the config.log.
|
||||
cat conftest.err 1>&5
|
||||
|
||||
|
@ -577,8 +547,8 @@ $rm conftest*
|
|||
echo 'main(){return(0);}' > conftest.c
|
||||
save_LDFLAGS="$LDFLAGS"
|
||||
LDFLAGS="$LDFLAGS $link_static_flag"
|
||||
echo "$progname:580: checking if $compiler static flag $link_static_flag works" >&5
|
||||
if { (eval echo $progname:581: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
|
||||
echo "$progname:550: checking if $compiler static flag $link_static_flag works" >&5
|
||||
if { (eval echo $progname:551: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
|
||||
echo "$ac_t$link_static_flag" 1>&6
|
||||
else
|
||||
echo "$ac_t"none 1>&6
|
||||
|
@ -610,7 +580,7 @@ if test -z "$LD"; then
|
|||
if test "$with_gcc" = yes; then
|
||||
# Check if gcc -print-prog-name=ld gives a path.
|
||||
echo $ac_n "checking for ld used by GCC... $ac_c" 1>&6
|
||||
echo "$progname:613: checking for ld used by GCC" >&5
|
||||
echo "$progname:583: checking for ld used by GCC" >&5
|
||||
ac_prog=`($CC -print-prog-name=ld) 2>&5`
|
||||
case "$ac_prog" in
|
||||
# Accept absolute paths.
|
||||
|
@ -628,10 +598,10 @@ if test -z "$LD"; then
|
|||
esac
|
||||
elif test "$with_gnu_ld" = yes; then
|
||||
echo $ac_n "checking for GNU ld... $ac_c" 1>&6
|
||||
echo "$progname:631: checking for GNU ld" >&5
|
||||
echo "$progname:601: checking for GNU ld" >&5
|
||||
else
|
||||
echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6
|
||||
echo "$progname:634: checking for non-GNU ld" >&5
|
||||
echo "$progname:604: checking for non-GNU ld" >&5
|
||||
fi
|
||||
|
||||
if test -z "$LD"; then
|
||||
|
@ -690,30 +660,30 @@ hardcode_runpath_var=no
|
|||
hardcode_shlibpath_var=unsupported
|
||||
runpath_var=
|
||||
|
||||
case "$host_os" in
|
||||
amigaos* | sunos4*)
|
||||
# On these operating systems, we should treat GNU ld like the system ld.
|
||||
gnu_ld_acts_native=yes
|
||||
;;
|
||||
*)
|
||||
gnu_ld_acts_native=no
|
||||
;;
|
||||
esac
|
||||
|
||||
ld_shlibs=yes
|
||||
if test "$with_gnu_ld" = yes && test "$gnu_ld_acts_native" != yes; then
|
||||
|
||||
if test "$with_gnu_ld" = yes; then
|
||||
# See if GNU ld supports shared libraries.
|
||||
if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
|
||||
archive_cmds='$CC -shared ${wl}-soname $wl$soname -o $lib$libobjs'
|
||||
runpath_var=LD_RUN_PATH
|
||||
hardcode_runpath_var=yes
|
||||
|
||||
case "$host_os" in
|
||||
sunos4*)
|
||||
ld_shlibs=yes
|
||||
else
|
||||
ld_shlibs=no
|
||||
fi
|
||||
hardcode_direct=yes
|
||||
hardcode_shlibpath_var=no
|
||||
;;
|
||||
|
||||
*)
|
||||
if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
|
||||
runpath_var=LD_RUN_PATH
|
||||
hardcode_runpath_var=yes
|
||||
ld_shlibs=yes
|
||||
else
|
||||
ld_shlibs=no
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
|
||||
if test "$ld_shlibs" = yes; then
|
||||
archive_cmds='$CC -shared ${wl}-soname $wl$soname -o $lib$libobjs$deplibs'
|
||||
hardcode_libdir_flag_spec='${wl}-rpath $wl$libdir'
|
||||
export_dynamic_flag_spec='${wl}-export-dynamic'
|
||||
fi
|
||||
|
@ -722,7 +692,7 @@ else
|
|||
case "$host_os" in
|
||||
aix3*)
|
||||
allow_undefined_flag=unsupported
|
||||
archive_cmds='$NM$libobjs | $global_symbol_pipe | sed '\''s/.* //'\'' > $lib.exp;$LD -o $objdir/$soname$libobjs -bE:$lib.exp -T512 -H512 -bM:SRE;$AR cru $lib $objdir/$soname'
|
||||
archive_cmds='$NM$libobjs | $global_symbol_pipe | sed '"'s/.* //'"' > $lib.exp;$LD -o $objdir/$soname$libobjs -bE:$lib.exp -T512 -H512 -bM:SRE$deplibs;$AR cru $lib $objdir/$soname'
|
||||
# Note: this linker hardcodes the directories in LIBPATH if there
|
||||
# are no directories specified by -L.
|
||||
hardcode_minus_L=yes
|
||||
|
@ -735,24 +705,17 @@ else
|
|||
|
||||
aix4*)
|
||||
allow_undefined_flag=unsupported
|
||||
archive_cmds='$NM$libobjs | $global_symbol_pipe | sed '\''s/.* //'\'' > $lib.exp;$CC -o $objdir/$soname$libobjs ${wl}-bE:$lib.exp ${wl}-bM:SRE ${wl}-bnoentry;$AR cru $lib $objdir/$soname'
|
||||
archive_cmds='$NM$libobjs | $global_symbol_pipe | sed '"'s/.* //'"' > $lib.exp;$CC -o $objdir/$soname$libobjs ${wl}-bE:$lib.exp ${wl}-bM:SRE ${wl}-bnoentry$deplibs;$AR cru $lib $objdir/$soname'
|
||||
hardcode_direct=yes
|
||||
hardcode_minus_L=yes
|
||||
;;
|
||||
|
||||
amigaos*)
|
||||
archive_cmds='$rm $objdir/a2ixlibrary.data;$echo "#define NAME $libname" > $objdir/a2ixlibrary.data;$echo "#define LIBRARY_ID 1" >> $objdir/a2ixlibrary.data;$echo "#define VERSION $major" >> $objdir/a2ixlibrary.data;$echo "#define REVISION $revision" >> $objdir/a2ixlibrary.data;$AR cru $lib$libobjs;$RANLIB $lib;(cd $objdir && a2ixlibrary -32)'
|
||||
hardcode_libdir_flag_spec='-L$libdir'
|
||||
hardcode_minus_L=yes
|
||||
;;
|
||||
|
||||
# FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
|
||||
# support. Future versions do this automatically, but an explicit c++rt0.o
|
||||
# doesn't break anything, and helps significantly (at the cost of a little
|
||||
# extra space).
|
||||
freebsd2.2*)
|
||||
archive_cmds='$LD -Bshareable -o $lib$libobjs /usr/lib/c++rt0.o'
|
||||
hardcode_libdir_flag_spec='-R$libdir'
|
||||
archive_cmds='$LD -Bshareable -o $lib$libobjs$deplibs /usr/lib/c++rt0.o'
|
||||
hardcode_direct=yes
|
||||
hardcode_minus_L=yes
|
||||
hardcode_shlibpath_var=no
|
||||
|
@ -760,7 +723,7 @@ else
|
|||
|
||||
# Unfortunately, older versions of FreeBSD 2 don't have this feature.
|
||||
freebsd2*)
|
||||
archive_cmds='$LD -Bshareable -o $lib$libobjs'
|
||||
archive_cmds='$LD -Bshareable -o $lib$libobjs$deplibs'
|
||||
hardcode_direct=yes
|
||||
hardcode_minus_L=yes
|
||||
hardcode_shlibpath_var=no
|
||||
|
@ -768,7 +731,7 @@ else
|
|||
|
||||
# FreeBSD 3, at last, uses gcc -shared to do shared libraries.
|
||||
freebsd3*)
|
||||
archive_cmds='$CC -shared -o $lib$libobjs'
|
||||
archive_cmds='$CC -shared -o $lib$libobjs$deplibs'
|
||||
hardcode_libdir_flag_spec='-R$libdir'
|
||||
hardcode_direct=yes
|
||||
hardcode_minus_L=yes
|
||||
|
@ -776,23 +739,21 @@ else
|
|||
;;
|
||||
|
||||
hpux9*)
|
||||
archive_cmds='$rm $objdir/$soname;$LD -b +s +b $install_libdir -o $objdir/$soname$libobjs;mv $objdir/$soname $lib'
|
||||
archive_cmds='$rm $objdir/$soname;$LD -b +s +b $install_libdir -o $objdir/$soname$libobjs$deplibs;mv $objdir/$soname $lib'
|
||||
hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
|
||||
hardcode_direct=yes
|
||||
hardcode_minus_L=yes
|
||||
export_dynamic_flag_spec='${wl}-E'
|
||||
;;
|
||||
|
||||
hpux10*)
|
||||
archive_cmds='$LD -b +h $soname +s +b $install_libdir -o $lib$libobjs'
|
||||
archive_cmds='$LD -b +h $soname +s +b $install_libdir -o $lib$libobjs$deplibs'
|
||||
hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
|
||||
hardcode_direct=yes
|
||||
hardcode_minus_L=yes
|
||||
export_dynamic_flag_spec='${wl}-E'
|
||||
;;
|
||||
|
||||
irix5* | irix6*)
|
||||
archive_cmds='$LD -shared -o $lib -soname $soname -set_version $verstring$libobjs'
|
||||
archive_cmds='$LD -shared -o $lib -soname $soname -set_version $verstring$libobjs$deplibs'
|
||||
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
|
||||
;;
|
||||
|
||||
|
@ -805,7 +766,7 @@ else
|
|||
;;
|
||||
|
||||
openbsd*)
|
||||
archive_cmds='$LD -Bshareable -o $lib$libobjs'
|
||||
archive_cmds='$LD -Bshareable -o $lib$libobjs$deplibs'
|
||||
hardcode_libdir_flag_spec='-R$libdir'
|
||||
hardcode_direct=yes
|
||||
hardcode_shlibpath_var=no
|
||||
|
@ -815,7 +776,7 @@ else
|
|||
hardcode_libdir_flag_spec='-L$libdir'
|
||||
hardcode_minus_L=yes
|
||||
allow_undefined_flag=unsupported
|
||||
archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $objdir/$libname.def;$echo "DESCRIPTION \"$libname\"" >> $objdir/$libname.def;$echo DATA >> $objdir/$libname.def;$echo " SINGLE NONSHARED" >> $objdir/$libname.def;$echo EXPORTS >> $objdir/$libname.def;emxexp$libobjs >> $objdir/$libname.def;$CC -Zdll -Zcrtdll -o $lib$libobjs $objdir/$libname.def'
|
||||
archive_cmds='echo "LIBRARY $libname INITINSTANCE" > $objdir/$libname.def;echo "DESCRIPTION \"$libname\"" >> $objdir/$libname.def;echo DATA >> $objdir/$libname.def;echo " SINGLE NONSHARED" >> $objdir/$libname.def;echo EXPORTS >> $objdir/$libname.def;emxexp$libobjs >> $objdir/$libname.def;$CC -Zdll -Zcrtdll -o $lib$libobjs $objdir/$libname.def'
|
||||
old_archive_from_new_cmds='emximp -o $objdir/$libname.a $objdir/$libname.def'
|
||||
;;
|
||||
|
||||
|
@ -827,26 +788,18 @@ else
|
|||
;;
|
||||
|
||||
sco3.2v5*)
|
||||
archive_cmds='$LD -G -o $lib$libobjs'
|
||||
archive_cmds='$LD -G -o $lib$libobjs$deplibs'
|
||||
hardcode_direct=yes
|
||||
;;
|
||||
|
||||
solaris2*)
|
||||
archive_cmds='$LD -G -z text -h $soname -o $lib$libobjs'
|
||||
archive_cmds='$LD -G -z text -h $soname -o $lib$libobjs$deplibs'
|
||||
hardcode_libdir_flag_spec='-R$libdir'
|
||||
hardcode_shlibpath_var=no
|
||||
;;
|
||||
|
||||
sunos4*)
|
||||
if test "$with_gcc" = yes; then
|
||||
archive_cmds='$CC -shared -o $lib$libobjs'
|
||||
else
|
||||
archive_cmds='$LD -assert pure-text -Bstatic -o $lib$libobjs'
|
||||
fi
|
||||
|
||||
if test "$with_gnu_ld" = yes; then
|
||||
export_dynamic_flag_spec='${wl}-export-dynamic'
|
||||
fi
|
||||
archive_cmds='$LD -assert pure-text -Bstatic -o $lib$libobjs'
|
||||
hardcode_libdir_flag_spec='-L$libdir'
|
||||
hardcode_direct=yes
|
||||
hardcode_minus_L=yes
|
||||
|
@ -854,7 +807,7 @@ else
|
|||
;;
|
||||
|
||||
uts4*)
|
||||
archive_cmds='$LD -G -h $soname -o $lib$libobjs'
|
||||
archive_cmds='$LD -G -h $soname -o $lib$libobjs$deplibs'
|
||||
hardcode_libdir_flag_spec='-L$libdir'
|
||||
hardcode_direct=no
|
||||
hardcode_minus_L=no
|
||||
|
@ -875,15 +828,13 @@ if test -z "$NM"; then
|
|||
/*) ;; # Let the user override the test with a path.
|
||||
*)
|
||||
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
|
||||
for ac_dir in /usr/ucb /usr/ccs/bin $PATH /bin; do
|
||||
for ac_dir in /usr/ucb $PATH /bin; do
|
||||
test -z "$ac_dir" && dir=.
|
||||
if test -f $ac_dir/nm; then
|
||||
# Check to see if the nm accepts a BSD-compat flag.
|
||||
# Adding the `sed 1!d' prevents false positives on HP-UX, which says:
|
||||
# nm: unknown option "B" ignored
|
||||
if ($ac_dir/nm -B /dev/null 2>&1 | sed '1!d'; exit 0) | egrep /dev/null >/dev/null; then
|
||||
if ($ac_dir/nm -B /dev/null 2>&1; exit 0) | grep /dev/null >/dev/null; then
|
||||
NM="$ac_dir/nm -B"
|
||||
elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1!d'; exit 0) | egrep /dev/null >/dev/null; then
|
||||
elif ($ac_dir/nm -p /dev/null 2>&1; exit 0) | grep /dev/null >/dev/null; then
|
||||
NM="$ac_dir/nm -p"
|
||||
else
|
||||
NM="$ac_dir/nm"
|
||||
|
@ -918,10 +869,6 @@ case "$host_os" in
|
|||
aix*)
|
||||
symcode='[BCDTU]'
|
||||
;;
|
||||
irix*)
|
||||
# Cannot use undefined symbols on IRIX because inlined functions mess us up.
|
||||
symcode='[BCDEGRST]'
|
||||
;;
|
||||
solaris2*)
|
||||
symcode='[BDTU]'
|
||||
;;
|
||||
|
@ -950,11 +897,11 @@ void nm_test_func(){}
|
|||
main(){nm_test_var='a';nm_test_func();return(0);}
|
||||
EOF
|
||||
|
||||
echo "$progname:953: checking if global_symbol_pipe works" >&5
|
||||
if { (eval echo $progname:954: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; } && test -s conftest.o; then
|
||||
echo "$progname:900: checking if global_symbol_pipe works" >&5
|
||||
if { (eval echo $progname:901: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; } && test -s conftest.o; then
|
||||
# Now try to grab the symbols.
|
||||
nlist=conftest.nm
|
||||
if { echo "$progname:957: eval \"$NM conftest.o | $global_symbol_pipe > $nlist\"" >&5; eval "$NM conftest.o | $global_symbol_pipe > $nlist 2>&5"; } && test -s "$nlist"; then
|
||||
if { echo "$progname:904: eval \"$NM conftest.o | $global_symbol_pipe > $nlist\"" >&5; eval "$NM conftest.o | $global_symbol_pipe > $nlist 2>&5"; } && test -s "$nlist"; then
|
||||
|
||||
# Try sorting and uniquifying the output.
|
||||
if sort "$nlist" | uniq > "$nlist"T; then
|
||||
|
@ -997,7 +944,7 @@ struct {
|
|||
dld_preloaded_symbols[] =
|
||||
{
|
||||
EOF
|
||||
sed 's/^\(.*\) \(.*\)$/ {"\1", (__ptr_t) \&\2},/' < "$nlist" >> conftest.c
|
||||
sed 's/^\(.*\) \(.*\)$/ {"\1", \&\2},/' < "$nlist" >> conftest.c
|
||||
cat <<\EOF >> conftest.c
|
||||
{0},
|
||||
};
|
||||
|
@ -1012,7 +959,7 @@ EOF
|
|||
save_CFLAGS="$CFLAGS"
|
||||
LIBS='conftestm.o'
|
||||
CFLAGS="$CFLAGS$no_builtin_flag"
|
||||
if { (eval echo $progname:1015: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
|
||||
if { (eval echo $progname:962: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
|
||||
pipe_works=yes
|
||||
else
|
||||
echo "$progname: failed program was:" >&5
|
||||
|
@ -1081,9 +1028,7 @@ library_names_spec=
|
|||
libname_spec='lib$name'
|
||||
soname_spec=
|
||||
postinstall_cmds=
|
||||
postuninstall_cmds=
|
||||
finish_cmds=
|
||||
finish_eval=
|
||||
shlibpath_var=
|
||||
version_type=none
|
||||
dynamic_linker="$host_os ld.so"
|
||||
|
@ -1099,12 +1044,6 @@ aix3* | aix4*)
|
|||
soname_spec='$libname.so.$major'
|
||||
;;
|
||||
|
||||
amigaos*)
|
||||
library_names_spec='$libname.ixlibrary $libname.a'
|
||||
# Create ${libname}_ixlibrary.a entries in /sys/libs.
|
||||
finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "$lib" | sed '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done'
|
||||
;;
|
||||
|
||||
freebsd2* | freebsd3*)
|
||||
version_type=sunos
|
||||
library_names_spec='$libname.so.$versuffix $libname.so'
|
||||
|
@ -1169,6 +1108,7 @@ netbsd* | openbsd*)
|
|||
;;
|
||||
|
||||
os2*)
|
||||
version_type=none
|
||||
libname_spec='$name'
|
||||
library_names_spec='$libname.dll $libname.a'
|
||||
dynamic_linker='OS/2 ld.exe'
|
||||
|
@ -1260,30 +1200,25 @@ fi
|
|||
rmdir .libs 2>/dev/null
|
||||
echo "$ac_t$objdir" 1>&6
|
||||
|
||||
# Copy echo and quote the copy, instead of the original, because it is
|
||||
# used later.
|
||||
ltecho="$echo"
|
||||
|
||||
# Now quote all the things that may contain metacharacters.
|
||||
for var in ltecho old_CC old_CFLAGS old_CPPFLAGS old_LD old_NM old_RANLIB \
|
||||
for var in old_CC old_CFLAGS old_CPPFLAGS old_LD old_NM old_RANLIB \
|
||||
old_LN_S AR CC LD LN_S NM reload_flag reload_cmds wl pic_flag \
|
||||
link_static_flag no_builtin_flag export_dynamic_flag_spec \
|
||||
profile_flag_pattern libname_spec library_names_spec soname_spec RANLIB \
|
||||
old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \
|
||||
old_postuninstall_cmds archive_cmds postinstall_cmds postuninstall_cmds \
|
||||
allow_undefined_flag finish_cmds finish_eval global_symbol_pipe \
|
||||
archive_cmds postinstall_cmds \
|
||||
allow_undefined_flag finish_cmds global_symbol_pipe \
|
||||
striplib old_striplib \
|
||||
hardcode_libdir_flag_spec hardcode_libdir_separator; do
|
||||
|
||||
case "$var" in
|
||||
reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \
|
||||
old_postinstall_cmds | old_postuninstall_cmds | archive_cmds | \
|
||||
postinstall_cmds | postuninstall_cmds | finish_cmds)
|
||||
old_postinstall_cmds | archive_cmds | postinstall_cmds | finish_cmds)
|
||||
# Double-quote double-evaled strings.
|
||||
eval "$var=\`\$echo \"\$$var\" | sed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\"\`"
|
||||
eval "$var=\`echo \"\$$var\" | sed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\"\`"
|
||||
;;
|
||||
*)
|
||||
eval "$var=\`\$echo \"\$$var\" | sed \"\$sed_quote_subst\"\`"
|
||||
eval "$var=\`echo \"\$$var\" | sed \"\$sed_quote_subst\"\`"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
@ -1308,9 +1243,6 @@ cat <<EOF > $ofile
|
|||
# Compiler and other test output produced by $progname, useful for
|
||||
# debugging $progname, is in ./config.log if it exists.
|
||||
|
||||
# An echo program that doesn't interpret backslashes.
|
||||
echo="$ltecho"
|
||||
|
||||
# The version of $progname that generated this script.
|
||||
LTCONFIG_VERSION="$VERSION"
|
||||
|
||||
|
@ -1384,7 +1316,6 @@ soname_spec="$soname_spec"
|
|||
RANLIB="$RANLIB"
|
||||
old_archive_cmds="$old_archive_cmds"
|
||||
old_postinstall_cmds="$old_postinstall_cmds"
|
||||
old_postuninstall_cmds="$old_postuninstall_cmds"
|
||||
|
||||
# Create an old-style archive from a shared archive.
|
||||
old_archive_from_new_cmds="$old_archive_from_new_cmds"
|
||||
|
@ -1392,7 +1323,6 @@ old_archive_from_new_cmds="$old_archive_from_new_cmds"
|
|||
# Commands used to build and install a shared archive.
|
||||
archive_cmds="$archive_cmds"
|
||||
postinstall_cmds="$postinstall_cmds"
|
||||
postuninstall_cmds="$postuninstall_cmds"
|
||||
|
||||
# Flag that allows shared libraries with undefined symbols to be built.
|
||||
allow_undefined_flag="$allow_undefined_flag"
|
||||
|
@ -1400,9 +1330,6 @@ allow_undefined_flag="$allow_undefined_flag"
|
|||
# Commands used to finish a libtool library installation in a directory.
|
||||
finish_cmds="$finish_cmds"
|
||||
|
||||
# Same as above, but a single script fragment to be evaled but not shown.
|
||||
finish_eval="$finish_eval"
|
||||
|
||||
# Take the output of nm and produce a listing of raw symbols and C names.
|
||||
global_symbol_pipe="$global_symbol_pipe"
|
||||
|
||||
|
@ -1468,7 +1395,7 @@ EOF
|
|||
;;
|
||||
*) cat <<EOF >> $ofile
|
||||
# Find the path to this script.
|
||||
thisdir=\`$echo "\$0" | sed -e 's%/[^/]*\$%%'\`
|
||||
thisdir=\`echo "\$0" | sed -e 's%/[^/]*\$%%'\`
|
||||
test "X\$0" = "X\$thisdir" && thisdir=.
|
||||
|
||||
# Execute the libtool backend.
|
||||
|
|
348
ltmain.sh
348
ltmain.sh
|
@ -22,14 +22,40 @@
|
|||
# configuration script generated by Autoconf, you may include it under
|
||||
# the same distribution terms that you use for the rest of that program.
|
||||
|
||||
#FIXME: echo=echo
|
||||
echo='printf %s\n'
|
||||
if test "X`$echo '\t'`" = 'X\t'; then :
|
||||
else
|
||||
# The Solaris and AIX default echo program unquotes backslashes.
|
||||
# This makes it impossible to quote backslashes using
|
||||
# echo "$something" | sed 's/\\/\\\\/g'
|
||||
# So, we emulate echo with printf '%s\n'
|
||||
echo='printf %s\n'
|
||||
if test "X`$echo '\t'`" = 'X\t'; then :
|
||||
else
|
||||
# Oops. We have no working printf. Try to find a not-so-buggy echo.
|
||||
echo=echo
|
||||
IFS="${IFS= }"; save_ifs="$IFS"; IFS="${IFS}:"
|
||||
save_PATH="$PATH"
|
||||
PATH="$PATH":/usr/ucb
|
||||
for dir in $PATH; do
|
||||
if test -f $dir/echo && test "X`$dir/echo '\t'`" = 'X\t'; then
|
||||
echo="$dir/echo"
|
||||
break
|
||||
fi
|
||||
done
|
||||
IFS="$save_ifs"
|
||||
PATH="$save_PATH"
|
||||
fi
|
||||
fi
|
||||
|
||||
# The name of this program.
|
||||
progname=`$echo "$0" | sed 's%^.*/%%'`
|
||||
modename="$progname"
|
||||
|
||||
# Constants.
|
||||
PROGRAM=ltmain.sh
|
||||
PACKAGE=libtool
|
||||
VERSION=1.0h
|
||||
VERSION=1.0f
|
||||
|
||||
default_mode=
|
||||
help="Try \`$progname --help' for more information."
|
||||
|
@ -40,7 +66,7 @@ rm="rm -f"
|
|||
|
||||
# Sed substitution that helps us do robust quoting. It backslashifies
|
||||
# metacharacters that are still active within double-quoted strings.
|
||||
sed_quote_subst='s/\([\\`\\"$\\\\]\)/\\\1/g'
|
||||
sed_quote_subst='s/\([\\"$\\\\]\)/\\\1/g'
|
||||
|
||||
# NLS nuisances.
|
||||
# Only set LANG and LC_ALL to C if already set.
|
||||
|
@ -50,14 +76,14 @@ if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
|
|||
if test "${LANG+set}" = set; then LANG=C; export LANG; fi
|
||||
|
||||
if test "$LTCONFIG_VERSION" != "$VERSION"; then
|
||||
echo "$modename: ltconfig version \`$LTCONFIG_VERSION' does not match $PROGRAM version \`$VERSION'" 1>&2
|
||||
echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
|
||||
$echo "$progname: ltconfig version \`$LTCONFIG_VERSION' does not match $PROGRAM version \`$VERSION'" 1>&2
|
||||
$echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then
|
||||
echo "$modename: not configured to build any kind of library" 1>&2
|
||||
echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
|
||||
$echo "$progname: not configured to build any kind of library" 1>&2
|
||||
$echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
@ -105,7 +131,7 @@ do
|
|||
;;
|
||||
|
||||
--version)
|
||||
echo "$PROGRAM (GNU $PACKAGE) $VERSION"
|
||||
$echo "$PROGRAM (GNU $PACKAGE) $VERSION"
|
||||
exit 0
|
||||
;;
|
||||
|
||||
|
@ -114,16 +140,16 @@ do
|
|||
;;
|
||||
|
||||
--features)
|
||||
echo "host: $host"
|
||||
$echo "host: $host"
|
||||
if test "$build_libtool_libs" = yes; then
|
||||
echo "enable shared libraries"
|
||||
$echo "enable shared libraries"
|
||||
else
|
||||
echo "disable shared libraries"
|
||||
$echo "disable shared libraries"
|
||||
fi
|
||||
if test "$build_old_libs" = yes; then
|
||||
echo "enable static libraries"
|
||||
$echo "enable static libraries"
|
||||
else
|
||||
echo "disable static libraries"
|
||||
$echo "disable static libraries"
|
||||
fi
|
||||
exit 0
|
||||
;;
|
||||
|
@ -143,7 +169,7 @@ do
|
|||
;;
|
||||
|
||||
-*)
|
||||
$echo "$modename: unrecognized option \`$arg'" 1>&2
|
||||
$echo "$progname: unrecognized option \`$arg'" 1>&2
|
||||
$echo "$help" 1>&2
|
||||
exit 1
|
||||
;;
|
||||
|
@ -156,7 +182,7 @@ do
|
|||
done
|
||||
|
||||
if test -n "$prevopt"; then
|
||||
$echo "$modename: option \`$prevopt' requires an argument" 1>&2
|
||||
$echo "$progname: option \`$prevopt' requires an argument" 1>&2
|
||||
$echo "$help" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
@ -194,9 +220,9 @@ if test -z "$show_help"; then
|
|||
# Just use the default operation mode.
|
||||
if test -z "$mode"; then
|
||||
if test -n "$nonopt"; then
|
||||
$echo "$modename: warning: cannot infer operation mode from \`$nonopt'" 1>&2
|
||||
$echo "$progname: warning: cannot infer operation mode from \`$nonopt'" 1>&2
|
||||
else
|
||||
$echo "$modename: warning: cannot infer operation mode without MODE-ARGS" 1>&2
|
||||
$echo "$progname: warning: cannot infer operation mode without MODE-ARGS" 1>&2
|
||||
fi
|
||||
fi
|
||||
;;
|
||||
|
@ -205,20 +231,20 @@ if test -z "$show_help"; then
|
|||
|
||||
# Only execute mode is allowed to have -dlopen flags.
|
||||
if test -n "$execute_dlfiles" && test "$mode" != execute; then
|
||||
$echo "$modename: unrecognized option \`-dlopen'" 1>&2
|
||||
$echo "$progname: unrecognized option \`-dlopen'" 1>&2
|
||||
$echo "$help" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Change the help message to a mode-specific one.
|
||||
generic_help="$help"
|
||||
help="Try \`$modename --help --mode=$mode' for more information."
|
||||
help="Try \`$progname --help --mode=$mode' for more information."
|
||||
|
||||
# These modes are in order of execution frequency so that they run quickly.
|
||||
case "$mode" in
|
||||
# libtool compile mode
|
||||
compile)
|
||||
modename="$modename: compile"
|
||||
progname="$progname: compile"
|
||||
# Get the compilation command and the source file.
|
||||
base_compile=
|
||||
lastarg=
|
||||
|
@ -229,7 +255,7 @@ if test -z "$show_help"; then
|
|||
do
|
||||
# The only flag that cannot be specified is the output filename.
|
||||
if test "X$arg" = "X-o"; then
|
||||
$echo "$modename: you cannot specify the output filename with \`-o'" 1>&2
|
||||
$echo "$progname: you cannot specify the output filename with \`-o'" 1>&2
|
||||
$echo "$help" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
@ -281,13 +307,13 @@ if test -z "$show_help"; then
|
|||
case "$libobj" in
|
||||
*.lo) obj=`$echo "$libobj" | sed -e 's/\.lo$/.o/'` ;;
|
||||
*)
|
||||
$echo "$modename: cannot determine name of library object from \`$srcfile'" 1>&2
|
||||
$echo "$progname: cannot determine name of library object from \`$srcfile'" 1>&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
if test -z "$base_compile"; then
|
||||
$echo "$modename: you must specify a compilation command" 1>&2
|
||||
$echo "$progname: you must specify a compilation command" 1>&2
|
||||
$echo "$help" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
@ -343,8 +369,8 @@ if test -z "$show_help"; then
|
|||
# Create an invalid libtool object if no PIC, so that we don't accidentally
|
||||
# link it into a program.
|
||||
if test "$build_libtool_libs" != yes; then
|
||||
$show "echo timestamp > $libobj"
|
||||
$run eval "echo timestamp > \$libobj" || exit $?
|
||||
$show "$echo timestamp > $libobj"
|
||||
$run eval "\$echo timestamp > \$libobj" || exit $?
|
||||
fi
|
||||
|
||||
exit 0
|
||||
|
@ -352,9 +378,9 @@ if test -z "$show_help"; then
|
|||
|
||||
# libtool link mode
|
||||
link)
|
||||
modename="$modename: link"
|
||||
progname="$progname: link"
|
||||
CC="$nonopt"
|
||||
allow_undefined=yes
|
||||
allow_undefined=no
|
||||
compile_command="$CC"
|
||||
finalize_command="$CC"
|
||||
|
||||
|
@ -382,7 +408,7 @@ if test -z "$show_help"; then
|
|||
case "$arg" in
|
||||
-all-static | -static)
|
||||
if test "X$arg" = "X-all-static" && test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then
|
||||
$echo "$modename: warning: complete static linking is impossible in this configuration" 1>&2
|
||||
$echo "$progname: warning: complete static linking is impossible in this configuration" 1>&2
|
||||
fi
|
||||
build_libtool_libs=no
|
||||
build_old_libs=yes
|
||||
|
@ -442,8 +468,7 @@ if test -z "$show_help"; then
|
|||
;;
|
||||
|
||||
-allow-undefined)
|
||||
# FIXME: remove this flag sometime in the future.
|
||||
$echo "$modename: \`-allow-undefined' is deprecated because it is the default" 1>&2
|
||||
allow_undefined=yes
|
||||
continue
|
||||
;;
|
||||
|
||||
|
@ -479,7 +504,7 @@ if test -z "$show_help"; then
|
|||
# Add the corresponding hardcode_libdir_flag, if it is not identical.
|
||||
;;
|
||||
*)
|
||||
$echo "$modename: \`-L$dir' cannot specify a relative directory" 1>&2
|
||||
$echo "$progname: \`-L$dir' cannot specify a relative directory" 1>&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
@ -488,11 +513,6 @@ if test -z "$show_help"; then
|
|||
|
||||
-l*) deplibs="$deplibs $arg" ;;
|
||||
|
||||
-no-undefined)
|
||||
allow_undefined=no
|
||||
continue
|
||||
;;
|
||||
|
||||
-o) prev=output ;;
|
||||
|
||||
-rpath)
|
||||
|
@ -563,7 +583,7 @@ if test -z "$show_help"; then
|
|||
# Check to see that this really is a libtool archive.
|
||||
if egrep '^# Generated by ltmain.sh' $arg >/dev/null 2>&1; then :
|
||||
else
|
||||
$echo "$modename: \`$arg' is not a valid libtool archive" 1>&2
|
||||
$echo "$progname: \`$arg' is not a valid libtool archive" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
@ -574,7 +594,7 @@ if test -z "$show_help"; then
|
|||
esac
|
||||
|
||||
if test -z "$libdir"; then
|
||||
$echo "$modename: \`$arg' contains no -rpath information" 1>&2
|
||||
$echo "$progname: \`$arg' contains no -rpath information" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
@ -585,7 +605,7 @@ if test -z "$show_help"; then
|
|||
done
|
||||
|
||||
if test -z "$linklib"; then
|
||||
$echo "$modename: cannot find name of link library for \`$arg'" 1>&2
|
||||
$echo "$progname: cannot find name of link library for \`$arg'" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
@ -687,7 +707,7 @@ if test -z "$show_help"; then
|
|||
*)
|
||||
absdir=`cd "$dir" && pwd`
|
||||
if test -z "$absdir"; then
|
||||
$echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2
|
||||
$echo "$progname: cannot determine absolute directory name of \`$dir'" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
dir="$absdir"
|
||||
|
@ -705,7 +725,7 @@ if test -z "$show_help"; then
|
|||
;;
|
||||
|
||||
*)
|
||||
$echo "$modename: \`$hardcode_action' is an unknown hardcode action" 1>&2
|
||||
$echo "$progname: \`$hardcode_action' is an unknown hardcode action" 1>&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
@ -725,7 +745,7 @@ if test -z "$show_help"; then
|
|||
else
|
||||
# Transform directly to old archives if we don't build new libraries.
|
||||
if test -n "$pic_flag" && test -z "$old_library"; then
|
||||
$echo "$modename: cannot find static library for \`$arg'" 1>&2
|
||||
$echo "$progname: cannot find static library for \`$arg'" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
@ -758,14 +778,12 @@ if test -z "$show_help"; then
|
|||
esac
|
||||
|
||||
# Now actually substitute the argument into the commands.
|
||||
if test -n "$arg"; then
|
||||
compile_command="$compile_command $arg"
|
||||
finalize_command="$finalize_command $arg"
|
||||
fi
|
||||
compile_command="$compile_command $arg"
|
||||
finalize_command="$finalize_command $arg"
|
||||
done
|
||||
|
||||
if test -n "$prev"; then
|
||||
$echo "$modename: the \`$prevarg' option requires an argument" 1>&2
|
||||
$echo "$progname: the \`$prevarg' option requires an argument" 1>&2
|
||||
$echo "$help" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
@ -774,13 +792,13 @@ if test -z "$show_help"; then
|
|||
oldobjs=
|
||||
case "$output" in
|
||||
"")
|
||||
$echo "$modename: you must specify an output file" 1>&2
|
||||
$echo "$progname: you must specify an output file" 1>&2
|
||||
$echo "$help" 1>&2
|
||||
exit 1
|
||||
;;
|
||||
|
||||
*/*)
|
||||
$echo "$modename: output file \`$output' must have no directory components" 1>&2
|
||||
$echo "$progname: output file \`$output' must have no directory components" 1>&2
|
||||
exit 1
|
||||
;;
|
||||
|
||||
|
@ -789,7 +807,7 @@ if test -z "$show_help"; then
|
|||
case "$output" in
|
||||
lib*) ;;
|
||||
*)
|
||||
$echo "$modename: libtool library \`$arg' must begin with \`lib'" 1>&2
|
||||
$echo "$progname: libtool library \`$arg' must begin with \`lib'" 1>&2
|
||||
$echo "$help" 1>&2
|
||||
exit 1
|
||||
;;
|
||||
|
@ -807,13 +825,13 @@ if test -z "$show_help"; then
|
|||
age=0
|
||||
|
||||
if test -n "$objs"; then
|
||||
$echo "$modename: cannot build libtool library \`$output' from non-libtool objects:$objs" 2>&1
|
||||
$echo "$progname: cannot build libtool library \`$output' from non-libtool objects:$objs" 2>&1
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# How the heck are we supposed to write a wrapper for a shared library?
|
||||
if test -n "$link_against_libtool_libs"; then
|
||||
$echo "$modename: libtool library \`$output' may not depend on uninstalled libraries:$link_against_libtool_libs" 1>&2
|
||||
$echo "$progname: libtool library \`$output' may not depend on uninstalled libraries:$link_against_libtool_libs" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
@ -821,21 +839,21 @@ if test -z "$show_help"; then
|
|||
deplibs="$deplibs -lc"
|
||||
|
||||
if test -n "$dlfiles$dlprefiles"; then
|
||||
$echo "$modename: warning: \`-dlopen' is ignored while creating libtool libraries" 1>&2
|
||||
$echo "$progname: warning: \`-dlopen' is ignored while creating libtool libraries" 1>&2
|
||||
# Nullify the symbol file.
|
||||
compile_command=`$echo "$compile_command" | sed "s% @SYMFILE@%%"`
|
||||
finalize_command=`$echo "$finalize_command" | sed "s% @SYMFILE@%%"`
|
||||
fi
|
||||
|
||||
if test -z "$rpath"; then
|
||||
$echo "$modename: you must specify an installation directory with \`-rpath'" 1>&2
|
||||
$echo "$progname: you must specify an installation directory with \`-rpath'" 1>&2
|
||||
$echo "$help" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
set dummy $rpath
|
||||
if test $# -gt 2; then
|
||||
$echo "$modename: warning: ignoring multiple \`-rpath's for a libtool library" 1>&2
|
||||
$echo "$progname: warning: ignoring multiple \`-rpath's for a libtool library" 1>&2
|
||||
fi
|
||||
install_libdir="$2"
|
||||
|
||||
|
@ -845,7 +863,7 @@ if test -z "$show_help"; then
|
|||
IFS="$save_ifs"
|
||||
|
||||
if test -n "$5"; then
|
||||
$echo "$modename: too many parameters to \`-version-info'" 1>&2
|
||||
$echo "$progname: too many parameters to \`-version-info'" 1>&2
|
||||
$echo "$help" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
@ -858,8 +876,8 @@ if test -z "$show_help"; then
|
|||
case "$current" in
|
||||
0 | [1-9] | [1-9][0-9]*) ;;
|
||||
*)
|
||||
$echo "$modename: CURRENT \`$current' is not a nonnegative integer" 1>&2
|
||||
$echo "$modename: \`$vinfo' is not valid version information" 1>&2
|
||||
$echo "$progname: CURRENT \`$current' is not a nonnegative integer" 1>&2
|
||||
$echo "$progname: \`$vinfo' is not valid version information" 1>&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
@ -867,8 +885,8 @@ if test -z "$show_help"; then
|
|||
case "$revision" in
|
||||
0 | [1-9] | [1-9][0-9]*) ;;
|
||||
*)
|
||||
$echo "$modename: REVISION \`$revision' is not a nonnegative integer" 1>&2
|
||||
$echo "$modename: \`$vinfo' is not valid version information" 1>&2
|
||||
$echo "$progname: REVISION \`$revision' is not a nonnegative integer" 1>&2
|
||||
$echo "$progname: \`$vinfo' is not valid version information" 1>&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
@ -876,15 +894,15 @@ if test -z "$show_help"; then
|
|||
case "$age" in
|
||||
0 | [1-9] | [1-9][0-9]*) ;;
|
||||
*)
|
||||
$echo "$modename: AGE \`$age' is not a nonnegative integer" 1>&2
|
||||
$echo "$modename: \`$vinfo' is not valid version information" 1>&2
|
||||
$echo "$progname: AGE \`$age' is not a nonnegative integer" 1>&2
|
||||
$echo "$progname: \`$vinfo' is not valid version information" 1>&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
if test $age -gt $current; then
|
||||
$echo "$modename: AGE \`$age' is greater than the current interface number \`$current'" 1>&2
|
||||
$echo "$modename: \`$vinfo' is not valid version information" 1>&2
|
||||
$echo "$progname: AGE \`$age' is greater than the current interface number \`$current'" 1>&2
|
||||
$echo "$progname: \`$vinfo' is not valid version information" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
@ -924,8 +942,8 @@ if test -z "$show_help"; then
|
|||
;;
|
||||
|
||||
*)
|
||||
$echo "$modename: unknown library version type \`$version_type'" 1>&2
|
||||
echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
|
||||
$echo "$progname: unknown library version type \`$version_type'" 1>&2
|
||||
$echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
@ -947,7 +965,7 @@ if test -z "$show_help"; then
|
|||
# Check to see if the archive will have undefined symbols.
|
||||
if test "$allow_undefined" = yes; then
|
||||
if test "$allow_undefined_flag" = unsupported; then
|
||||
$echo "$modename: warning: undefined symbols not allowed in $host shared libraries" 1>&2
|
||||
$echo "$progname: warning: undefined symbols not allowed in $host shared libraries" 1>&2
|
||||
build_libtool_libs=no
|
||||
build_old_libs=yes
|
||||
fi
|
||||
|
@ -989,9 +1007,9 @@ if test -z "$show_help"; then
|
|||
IFS="$save_ifs"
|
||||
|
||||
# Create links to the real library.
|
||||
for linkname in $linknames; do
|
||||
$show "(cd $objdir && $LN_S $realname $linkname)"
|
||||
$run eval '(cd $objdir && $LN_S $realname $linkname)' || exit $?
|
||||
for link in $linknames; do
|
||||
$show "(cd $objdir && $LN_S $realname $link)"
|
||||
$run eval '(cd $objdir && $LN_S $realname $link)' || exit $?
|
||||
done
|
||||
|
||||
# If -export-dynamic was specified, set the dlname.
|
||||
|
@ -1004,33 +1022,33 @@ if test -z "$show_help"; then
|
|||
|
||||
*.lo | *.o)
|
||||
if test -n "$link_against_libtool_libs"; then
|
||||
$echo "$modename: error: cannot link libtool libraries into reloadable objects" 1>&2
|
||||
$echo "$progname: error: cannot link libtool libraries into reloadable objects" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if test -n "$deplibs"; then
|
||||
$echo "$modename: warning: \`-l' and \`-L' are ignored while creating objects" 1>&2
|
||||
$echo "$progname: warning: \`-l' and \`-L' are ignored while creating objects" 1>&2
|
||||
fi
|
||||
|
||||
if test -n "$dlfiles$dlprefiles"; then
|
||||
$echo "$modename: warning: \`-dlopen' is ignored while creating objects" 1>&2
|
||||
$echo "$progname: warning: \`-dlopen' is ignored while creating objects" 1>&2
|
||||
# Nullify the symbol file.
|
||||
compile_command=`$echo "$compile_command" | sed "s% @SYMFILE@%%"`
|
||||
finalize_command=`$echo "$finalize_command" | sed "s% @SYMFILE@%%"`
|
||||
fi
|
||||
|
||||
if test -n "$rpath"; then
|
||||
$echo "$modename: warning: \`-rpath' is ignored while creating objects" 1>&2
|
||||
$echo "$progname: warning: \`-rpath' is ignored while creating objects" 1>&2
|
||||
fi
|
||||
|
||||
if test -n "$vinfo"; then
|
||||
$echo "$modename: warning: \`-version-info' is ignored while creating objects" 1>&2
|
||||
$echo "$progname: warning: \`-version-info' is ignored while creating objects" 1>&2
|
||||
fi
|
||||
|
||||
case "$output" in
|
||||
*.lo)
|
||||
if test -n "$objs"; then
|
||||
$echo "$modename: cannot build library object \`$output' from non-libtool objects" 1>&2
|
||||
$echo "$progname: cannot build library object \`$output' from non-libtool objects" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
libobj="$output"
|
||||
|
@ -1064,8 +1082,8 @@ if test -z "$show_help"; then
|
|||
if test "$build_libtool_libs" != yes; then
|
||||
# Create an invalid libtool object if no PIC, so that we don't
|
||||
# accidentally link it into a program.
|
||||
$show "echo timestamp > $libobj"
|
||||
$run eval "echo timestamp > $libobj" || exit $?
|
||||
$show "$echo timestamp > $libobj"
|
||||
$run eval "\$echo timestamp > $libobj" || exit $?
|
||||
exit 0
|
||||
fi
|
||||
|
||||
|
@ -1092,7 +1110,7 @@ if test -z "$show_help"; then
|
|||
|
||||
*)
|
||||
if test -n "$vinfo"; then
|
||||
$echo "$modename: warning: \`-version-info' is ignored while linking programs" 1>&2
|
||||
$echo "$progname: warning: \`-version-info' is ignored while linking programs" 1>&2
|
||||
fi
|
||||
|
||||
if test -n "$rpath"; then
|
||||
|
@ -1185,7 +1203,7 @@ if test -z "$show_help"; then
|
|||
if sort "$nlist" | uniq > "$nlist"T; then
|
||||
mv -f "$nlist"T "$nlist"
|
||||
wcout=`wc "$nlist" 2>/dev/null`
|
||||
count=`echo "$wcout" | sed 's/^[ ]*\([0-9][0-9]*\).*$/\1/'`
|
||||
count=`$echo "$wcout" | sed 's/^[ ]*\([0-9][0-9]*\).*$/\1/'`
|
||||
(test "$count" -ge 0) 2>/dev/null || count=-1
|
||||
else
|
||||
$rm "$nlist"T
|
||||
|
@ -1212,7 +1230,7 @@ EOF
|
|||
if test -f "$nlist"; then
|
||||
sed -e 's/^.* \(.*\)$/extern char \1;/' < "$nlist" >> "$objdir/$dlsyms"
|
||||
else
|
||||
echo '/* NONE */' >> "$objdir/$dlsyms"
|
||||
$echo '/* NONE */' >> "$objdir/$dlsyms"
|
||||
EOF
|
||||
fi
|
||||
|
||||
|
@ -1240,7 +1258,7 @@ dld_preloaded_symbols[] =
|
|||
EOF
|
||||
|
||||
if test -f "$nlist"; then
|
||||
sed 's/^\(.*\) \(.*\)$/ {"\1", (__ptr_t) \&\2},/' < "$nlist" >> "$objdir/$dlsyms"
|
||||
sed 's/^\(.*\) \(.*\)$/ {"\1", \&\2},/' < "$nlist" >> "$objdir/$dlsyms"
|
||||
fi
|
||||
|
||||
cat <<\EOF >> "$objdir/$dlsyms"
|
||||
|
@ -1254,7 +1272,7 @@ EOF
|
|||
;;
|
||||
|
||||
*)
|
||||
$echo "$modename: unknown suffix for \`$dlsyms'" 1>&2
|
||||
echo "$progname: unknown suffix for \`$dlsyms'" 1>&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
@ -1268,12 +1286,12 @@ EOF
|
|||
compile_command=`$echo "$compile_command" | sed "s%@SYMFILE@%$objdir/${output}S.o%"`
|
||||
finalize_command=`$echo "$finalize_command" | sed "s%@SYMFILE@%$objdir/${output}S.o%"`
|
||||
elif test "$export_dynamic" != yes; then
|
||||
test -n "$dlfiles$dlprefiles" && $echo "$modename: warning: \`-dlopen' and \`-dlpreopen' are ignored without \`-export-dynamic'" 1>&2
|
||||
test -n "$dlfiles$dlprefiles" && $echo "$progname: warning: \`-dlopen' and \`-dlpreopen' are ignored without \`-export-dynamic'" 1>&2
|
||||
else
|
||||
# We keep going just in case the user didn't refer to
|
||||
# dld_preloaded_symbols. The linker will fail if global_symbol_pipe
|
||||
# really was required.
|
||||
$echo "$modename: not configured to extract global symbols from dlpreopened files" 1>&2
|
||||
$echo "$progname: not configured to extract global symbols from dlpreopened files" 1>&2
|
||||
|
||||
# Nullify the symbol file.
|
||||
compile_command=`$echo "$compile_command" | sed "s% @SYMFILE@%%"`
|
||||
|
@ -1343,8 +1361,8 @@ EOF
|
|||
case "$hardcode_action" in
|
||||
relink)
|
||||
# AGH! Flame the AIX and HP-UX people for me, will ya?
|
||||
$echo "$modename: warning: using a buggy system linker" 1>&2
|
||||
$echo "$modename: relinking will be required before \`$output' can be installed" 1>&2
|
||||
$echo "$progname: warning: using a buggy system linker" 1>&2
|
||||
$echo "$progname: relinking will be required before \`$output' can be installed" 1>&2
|
||||
;;
|
||||
esac
|
||||
|
||||
|
@ -1457,7 +1475,7 @@ EOF
|
|||
# The program doesn't exist.
|
||||
\$echo "\$0: error: \$progdir/\$program does not exist" 1>&2
|
||||
\$echo "This script is just a wrapper for \$program." 1>&2
|
||||
echo "See the $PACKAGE documentation for more information." 1>&2
|
||||
\$echo "See the $PACKAGE documentation for more information." 1>&2
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
@ -1544,7 +1562,7 @@ EOF
|
|||
|
||||
# libtool install mode
|
||||
install)
|
||||
modename="$modename: install"
|
||||
progname="$progname: install"
|
||||
|
||||
# There may be an optional /bin/sh argument at the beginning of
|
||||
# install_prog (especially on Windows NT).
|
||||
|
@ -1624,22 +1642,22 @@ EOF
|
|||
done
|
||||
|
||||
if test -z "$install_prog"; then
|
||||
$echo "$modename: you must specify an install program" 1>&2
|
||||
$echo "$progname: you must specify an install program" 1>&2
|
||||
$echo "$help" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if test -n "$prev"; then
|
||||
$echo "$modename: the \`$prev' option requires an argument" 1>&2
|
||||
$echo "$progname: the \`$prev' option requires an argument" 1>&2
|
||||
$echo "$help" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if test -z "$files"; then
|
||||
if test -z "$dest"; then
|
||||
$echo "$modename: no file or destination specified" 1>&2
|
||||
$echo "$progname: no file or destination specified" 1>&2
|
||||
else
|
||||
$echo "$modename: you must specify a destination" 1>&2
|
||||
$echo "$progname: you must specify a destination" 1>&2
|
||||
fi
|
||||
$echo "$help" 1>&2
|
||||
exit 1
|
||||
|
@ -1661,7 +1679,7 @@ EOF
|
|||
# Not a directory, so check to see that there is only one file specified.
|
||||
set dummy $files
|
||||
if test $# -gt 2; then
|
||||
$echo "$modename: \`$dest' is not a directory" 1>&2
|
||||
$echo "$progname: \`$dest' is not a directory" 1>&2
|
||||
$echo "$help" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
@ -1673,7 +1691,7 @@ EOF
|
|||
case "$file" in
|
||||
*.lo) ;;
|
||||
*)
|
||||
$echo "$modename: \`$destdir' must be an absolute directory name" 1>&2
|
||||
$echo "$progname: \`$destdir' must be an absolute directory name" 1>&2
|
||||
$echo "$help" 1>&2
|
||||
exit 1
|
||||
;;
|
||||
|
@ -1702,7 +1720,7 @@ EOF
|
|||
# Check to see that this really is a libtool archive.
|
||||
if egrep '^# Generated by ltmain.sh' $file >/dev/null 2>&1; then :
|
||||
else
|
||||
$echo "$modename: \`$file' is not a valid libtool archive" 1>&2
|
||||
$echo "$progname: \`$file' is not a valid libtool archive" 1>&2
|
||||
$echo "$help" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
@ -1751,7 +1769,7 @@ EOF
|
|||
$show "$striplib $destdir/$realname"
|
||||
$run $striplib $destdir/$realname || exit $?
|
||||
else
|
||||
$echo "$modename: warning: no library stripping program" 1>&2
|
||||
$echo "$progname: warning: no library stripping program" 1>&2
|
||||
fi
|
||||
fi
|
||||
|
||||
|
@ -1822,7 +1840,7 @@ EOF
|
|||
destfile=
|
||||
;;
|
||||
*)
|
||||
$echo "$modename: cannot copy a libtool object to \`$destfile'" 1>&2
|
||||
$echo "$progname: cannot copy a libtool object to \`$destfile'" 1>&2
|
||||
$echo "$help" 1>&2
|
||||
exit 1
|
||||
;;
|
||||
|
@ -1859,7 +1877,7 @@ EOF
|
|||
|
||||
# Check the variables that should have been set.
|
||||
if test -z "$link_against_libtool_libs" || test -z "$finalize_command"; then
|
||||
$echo "$modename: invalid libtool wrapper script \`$file'" 1>&2
|
||||
$echo "$progname: invalid libtool wrapper script \`$file'" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
@ -1876,26 +1894,26 @@ EOF
|
|||
fi
|
||||
libfile="$libdir/`$echo "$lib" | sed 's%^.*/%%g'`"
|
||||
if test -z "$libdir"; then
|
||||
$echo "$modename: warning: \`$lib' contains no -rpath information" 1>&2
|
||||
$echo "$progname: warning: \`$lib' contains no -rpath information" 1>&2
|
||||
elif test -f "$libfile"; then :
|
||||
else
|
||||
$echo "$modename: warning: \`$lib' has not been installed in \`$libdir'" 1>&2
|
||||
$echo "$progname: warning: \`$lib' has not been installed in \`$libdir'" 1>&2
|
||||
finalize=no
|
||||
fi
|
||||
done
|
||||
|
||||
if test "$hardcode_action" = relink; then
|
||||
if test "$finalize" = yes; then
|
||||
$echo "$modename: warning: relinking \`$file' on behalf of your buggy system linker" 1>&2
|
||||
$echo "$progname: warning: relinking \`$file' on behalf of your buggy system linker" 1>&2
|
||||
$show "$finalize_command"
|
||||
if $run eval "$finalize_command"; then :
|
||||
else
|
||||
$echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2
|
||||
$echo "$progname: error: relink \`$file' with the above command before installing it" 1>&2
|
||||
continue
|
||||
fi
|
||||
file="$objdir/$file"T
|
||||
else
|
||||
$echo "$modename: warning: cannot relink \`$file' on behalf of your buggy system linker" 1>&2
|
||||
$echo "$progname: warning: cannot relink \`$file' on behalf of your buggy system linker" 1>&2
|
||||
fi
|
||||
else
|
||||
# Install the binary that we compiled earlier.
|
||||
|
@ -1924,7 +1942,7 @@ EOF
|
|||
$show "$old_striplib $oldlib"
|
||||
$run $old_striplib $oldlib || exit $?
|
||||
else
|
||||
$echo "$modename: warning: no static library stripping program" 1>&2
|
||||
$echo "$progname: warning: no static library stripping program" 1>&2
|
||||
fi
|
||||
fi
|
||||
|
||||
|
@ -1940,7 +1958,7 @@ EOF
|
|||
done
|
||||
|
||||
if test -n "$future_libdirs"; then
|
||||
$echo "$modename: warning: remember to run \`$progname --finish$future_libdirs'" 1>&2
|
||||
$echo "$progname: warning: remember to run \`$progname --finish$future_libdirs'" 1>&2
|
||||
fi
|
||||
|
||||
if test -n "$current_libdirs"; then
|
||||
|
@ -1955,51 +1973,44 @@ EOF
|
|||
|
||||
# libtool finish mode
|
||||
finish)
|
||||
modename="$modename: finish"
|
||||
progname="$progname: finish"
|
||||
libdirs="$nonopt"
|
||||
|
||||
if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then
|
||||
if test -n "$finish_cmds" && test -n "$libdirs"; then
|
||||
for dir
|
||||
do
|
||||
libdirs="$libdirs $dir"
|
||||
done
|
||||
|
||||
for libdir in $libdirs; do
|
||||
if test -n "$finish_cmds"; then
|
||||
# Do each command in the finish commands.
|
||||
cmds=`eval \\$echo \"$finish_cmds\"`
|
||||
IFS="${IFS= }"; save_ifs="$IFS"; IFS=';'
|
||||
for cmd in $cmds; do
|
||||
IFS="$save_ifs"
|
||||
$show "$cmd"
|
||||
$run eval "$cmd"
|
||||
done
|
||||
# Do each command in the postinstall commands.
|
||||
cmds=`eval \\$echo \"$finish_cmds\"`
|
||||
IFS="${IFS= }"; save_ifs="$IFS"; IFS=';'
|
||||
for cmd in $cmds; do
|
||||
IFS="$save_ifs"
|
||||
fi
|
||||
if test -n "$finish_eval"; then
|
||||
# Do the single finish_eval.
|
||||
cmds=`eval \\$echo \"$finish_eval\"`
|
||||
$run eval "$cmds"
|
||||
fi
|
||||
$show "$cmd"
|
||||
$run eval "$cmd"
|
||||
done
|
||||
IFS="$save_ifs"
|
||||
done
|
||||
fi
|
||||
|
||||
echo "To link against installed libraries in LIBDIR, users may have to:"
|
||||
$echo "To link against installed libraries in LIBDIR, users may have to:"
|
||||
if test -n "$shlibpath_var"; then
|
||||
echo " - add LIBDIR to their \`$shlibpath_var' environment variable"
|
||||
$echo " - add LIBDIR to their \`$shlibpath_var' environment variable"
|
||||
fi
|
||||
echo " - use the \`-LLIBDIR' linker flag"
|
||||
$echo " - use the \`-LLIBDIR' linker flag"
|
||||
exit 0
|
||||
;;
|
||||
|
||||
# libtool execute mode
|
||||
execute)
|
||||
modename="$modename: execute"
|
||||
progname="$progname: execute"
|
||||
|
||||
# The first argument is the command name.
|
||||
cmd="$nonopt"
|
||||
if test -z "$cmd"; then
|
||||
$echo "$modename: you must specify a COMMAND" 1>&2
|
||||
$echo "$progname: you must specify a COMMAND" 1>&2
|
||||
$echo "$help"
|
||||
exit 1
|
||||
fi
|
||||
|
@ -2008,7 +2019,7 @@ EOF
|
|||
for file in $execute_dlfiles; do
|
||||
if test -f "$file"; then :
|
||||
else
|
||||
$echo "$modename: \`$file' is not a file" 1>&2
|
||||
$echo "$progname: \`$file' is not a file" 1>&2
|
||||
$echo "$help" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
@ -2019,7 +2030,7 @@ EOF
|
|||
# Check to see that this really is a libtool archive.
|
||||
if egrep '^# Generated by ltmain.sh' $file >/dev/null 2>&1; then :
|
||||
else
|
||||
$echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
|
||||
$echo "$progname: \`$lib' is not a valid libtool archive" 1>&2
|
||||
$echo "$help" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
@ -2037,7 +2048,7 @@ EOF
|
|||
# Skip this library if it cannot be dlopened.
|
||||
if test -z "$dlname"; then
|
||||
# Warn if it was a shared library.
|
||||
test -n "$library_names" && $echo "$modename: warning: \`$file' was not linked with \`-export-dynamic'"
|
||||
test -n "$library_names" && $echo "$progname: warning: \`$file' was not linked with \`-export-dynamic'"
|
||||
continue
|
||||
fi
|
||||
|
||||
|
@ -2047,7 +2058,7 @@ EOF
|
|||
if test -f "$dir/$objdir/$dlname"; then
|
||||
dir="$dir/$objdir"
|
||||
else
|
||||
$echo "$modename: cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" 1>&2
|
||||
$echo "$progname: cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
;;
|
||||
|
@ -2059,7 +2070,7 @@ EOF
|
|||
;;
|
||||
|
||||
*)
|
||||
$echo "$modename: warning \`-dlopen' is ignored for non-libtool libraries and objects" 1>&2
|
||||
$echo "$progname: warning \`-dlopen' is ignored for non-libtool libraries and objects" 1>&2
|
||||
continue
|
||||
;;
|
||||
esac
|
||||
|
@ -2111,7 +2122,7 @@ EOF
|
|||
# Now actually exec the command.
|
||||
eval "exec \$cmd$args"
|
||||
|
||||
$echo "$modename: cannot exec \$cmd$args"
|
||||
$echo "$progname: cannot exec \$cmd$args"
|
||||
exit 1
|
||||
else
|
||||
# Display what would be done.
|
||||
|
@ -2124,7 +2135,7 @@ EOF
|
|||
|
||||
# libtool uninstall mode
|
||||
uninstall)
|
||||
modename="$modename: uninstall"
|
||||
progname="$progname: uninstall"
|
||||
rm="$nonopt"
|
||||
files=
|
||||
|
||||
|
@ -2137,7 +2148,7 @@ EOF
|
|||
done
|
||||
|
||||
if test -z "$rm"; then
|
||||
$echo "$modename: you must specify an RM program" 1>&2
|
||||
$echo "$progname: you must specify an RM program" 1>&2
|
||||
$echo "$help" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
@ -2163,33 +2174,6 @@ EOF
|
|||
test -n "$dlname" && rmfiles="$rmfiles $dir/$dlname"
|
||||
test -n "$old_library" && rmfiles="$rmfiles $dir/$old_library"
|
||||
|
||||
$show "$rm $rmfiles"
|
||||
$run $rm $rmfiles
|
||||
|
||||
if test -n "$library_names"; then
|
||||
# Do each command in the postuninstall commands.
|
||||
cmds=`eval \\$echo \"$postuninstall_cmds\"`
|
||||
IFS="${IFS= }"; save_ifs="$IFS"; IFS=';'
|
||||
for cmd in $cmds; do
|
||||
IFS="$save_ifs"
|
||||
$show "$cmd"
|
||||
$run eval "$cmd"
|
||||
done
|
||||
IFS="$save_ifs"
|
||||
fi
|
||||
|
||||
if test -n "$old_library"; then
|
||||
# Do each command in the old_postuninstall commands.
|
||||
cmds=`eval \\$echo \"$old_postuninstall_cmds\"`
|
||||
IFS="${IFS= }"; save_ifs="$IFS"; IFS=';'
|
||||
for cmd in $cmds; do
|
||||
IFS="$save_ifs"
|
||||
$show "$cmd"
|
||||
$run eval "$cmd"
|
||||
done
|
||||
IFS="$save_ifs"
|
||||
fi
|
||||
|
||||
# FIXME: should reinstall the best remaining shared library.
|
||||
fi
|
||||
;;
|
||||
|
@ -2199,27 +2183,23 @@ EOF
|
|||
oldobj=`$echo "$name" | sed 's/\.lo$/\.o/'`
|
||||
rmfiles="$rmfiles $dir/$oldobj"
|
||||
fi
|
||||
$show "$rm $rmfiles"
|
||||
$run $rm $rmfiles
|
||||
;;
|
||||
|
||||
*)
|
||||
$show "$rm $rmfiles"
|
||||
$run $rm $rmfiles
|
||||
;;
|
||||
esac
|
||||
|
||||
$show "$rm $rmfiles"
|
||||
$run $rm $rmfiles
|
||||
done
|
||||
exit 0
|
||||
;;
|
||||
|
||||
"")
|
||||
$echo "$modename: you must specify a MODE" 1>&2
|
||||
$echo "$progname: you must specify a MODE" 1>&2
|
||||
$echo "$generic_help" 1>&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
$echo "$modename: invalid operation mode \`$mode'" 1>&2
|
||||
$echo "$progname: invalid operation mode \`$mode'" 1>&2
|
||||
$echo "$generic_help" 1>&2
|
||||
exit 1
|
||||
fi # test -z "$show_help"
|
||||
|
@ -2227,7 +2207,7 @@ fi # test -z "$show_help"
|
|||
# We need to display help for each of the modes.
|
||||
case "$mode" in
|
||||
"") cat <<EOF
|
||||
Usage: $modename [OPTION]... [MODE-ARG]...
|
||||
Usage: $progname [OPTION]... [MODE-ARG]...
|
||||
|
||||
Provide generalized library-building support services.
|
||||
|
||||
|
@ -2249,14 +2229,14 @@ MODE must be one of the following:
|
|||
link create a library or an executable
|
||||
uninstall remove libraries from an installed directory
|
||||
|
||||
MODE-ARGS vary depending on the MODE. Try \`$modename --help --mode=MODE' for
|
||||
MODE-ARGS vary depending on the MODE. Try \`$progname --help --mode=MODE' for
|
||||
a more detailed description of MODE.
|
||||
EOF
|
||||
;;
|
||||
|
||||
compile)
|
||||
cat <<EOF
|
||||
Usage: $modename [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE
|
||||
Usage: $progname [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE
|
||||
|
||||
Compile a source file into a libtool library object.
|
||||
|
||||
|
@ -2271,7 +2251,7 @@ EOF
|
|||
|
||||
execute)
|
||||
cat <<EOF
|
||||
Usage: $modename [OPTION]... --mode=execute COMMAND [ARGS]...
|
||||
Usage: $progname [OPTION]... --mode=execute COMMAND [ARGS]...
|
||||
|
||||
Automatically set library path, then run a program.
|
||||
|
||||
|
@ -2292,7 +2272,7 @@ EOF
|
|||
|
||||
finish)
|
||||
cat <<EOF
|
||||
Usage: $modename [OPTION]... --mode=finish [LIBDIR]...
|
||||
Usage: $progname [OPTION]... --mode=finish [LIBDIR]...
|
||||
|
||||
Complete the installation of libtool libraries.
|
||||
|
||||
|
@ -2305,7 +2285,7 @@ EOF
|
|||
|
||||
install)
|
||||
cat <<EOF
|
||||
Usage: $modename [OPTION]... --mode=install INSTALL-COMMAND...
|
||||
Usage: $progname [OPTION]... --mode=install INSTALL-COMMAND...
|
||||
|
||||
Install executables or libraries.
|
||||
|
||||
|
@ -2319,7 +2299,7 @@ EOF
|
|||
|
||||
link)
|
||||
cat <<EOF
|
||||
Usage: $modename [OPTION]... --mode=link LINK-COMMAND...
|
||||
Usage: $progname [OPTION]... --mode=link LINK-COMMAND...
|
||||
|
||||
Link object files or libraries together to form another library, or to
|
||||
create an executable program.
|
||||
|
@ -2330,12 +2310,12 @@ a program from several object files.
|
|||
The following components of LINK-COMMAND are treated specially:
|
||||
|
||||
-all-static do not do any dynamic linking at all
|
||||
-allow-undefined allow a libtool library to reference undefined symbols
|
||||
-dlopen FILE \`-dlpreopen' FILE if it cannot be dlopened at runtime
|
||||
-dlpreopen FILE link in FILE and add its symbols to dld_preloaded_symbols
|
||||
-export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3)
|
||||
-LLIBDIR search LIBDIR for required installed libraries
|
||||
-lNAME OUTPUT-FILE requires the installed library libNAME
|
||||
-no-undefined declare that a library does not refer to external symbols
|
||||
-o OUTPUT-FILE create OUTPUT-FILE from the specified objects
|
||||
-rpath LIBDIR the created library will eventually be installed in LIBDIR
|
||||
-static do not do any dynamic linking of libtool libraries
|
||||
|
@ -2361,7 +2341,7 @@ EOF
|
|||
|
||||
uninstall)
|
||||
cat <<EOF
|
||||
Usage: $modename [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE...
|
||||
Usage: $progname [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE...
|
||||
|
||||
Remove libraries from an installation directory.
|
||||
|
||||
|
@ -2375,14 +2355,14 @@ EOF
|
|||
;;
|
||||
|
||||
*)
|
||||
$echo "$modename: invalid operation mode \`$mode'" 1>&2
|
||||
$echo "$progname: invalid operation mode \`$mode'" 1>&2
|
||||
$echo "$help" 1>&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
echo
|
||||
$echo "Try \`$modename --help' for more information about other modes."
|
||||
$echo
|
||||
$echo "Try \`$progname --help' for more information about other modes."
|
||||
|
||||
exit 0
|
||||
|
||||
|
|
|
@ -133,7 +133,7 @@ blur_prepare_row (GPixelRgn *pixel_rgn,
|
|||
/* Fill in edge pixels */
|
||||
for (b = 0; b < pixel_rgn->bpp; b++)
|
||||
{
|
||||
data[-pixel_rgn->bpp + b] = data[b];
|
||||
data[-(gint)pixel_rgn->bpp + b] = data[b];
|
||||
data[w * pixel_rgn->bpp + b] = data[(w - 1) * pixel_rgn->bpp + b];
|
||||
}
|
||||
}
|
||||
|
|
|
@ -133,7 +133,7 @@ blur_prepare_row (GPixelRgn *pixel_rgn,
|
|||
/* Fill in edge pixels */
|
||||
for (b = 0; b < pixel_rgn->bpp; b++)
|
||||
{
|
||||
data[-pixel_rgn->bpp + b] = data[b];
|
||||
data[-(gint)pixel_rgn->bpp + b] = data[b];
|
||||
data[w * pixel_rgn->bpp + b] = data[(w - 1) * pixel_rgn->bpp + b];
|
||||
}
|
||||
}
|
||||
|
|
|
@ -474,7 +474,7 @@ randomize_prepare_row(GPixelRgn *pixel_rgn, guchar *data, int x, int y, int w)
|
|||
* Fill in edge pixels
|
||||
*/
|
||||
for (b = 0; b < pixel_rgn->bpp; b++) {
|
||||
data[-pixel_rgn->bpp + b] = data[b];
|
||||
data[-(gint)pixel_rgn->bpp + b] = data[b];
|
||||
data[w * pixel_rgn->bpp + b] = data[(w - 1) * pixel_rgn->bpp + b];
|
||||
}
|
||||
}
|
||||
|
@ -494,7 +494,7 @@ randomize_prepare_row(GPixelRgn *pixel_rgn, guchar *data, int x, int y, int w)
|
|||
* Fill in edge pixels \
|
||||
*/ \
|
||||
for (b = 0; b < (pixel_rgn)->bpp; b++) { \
|
||||
data[-(pixel_rgn)->bpp + b] = data[b]; \
|
||||
data[-(gint)(pixel_rgn)->bpp + b] = data[b]; \
|
||||
data[w * (pixel_rgn)->bpp + b] = data[(w - 1) * (pixel_rgn)->bpp + b]; \
|
||||
} \
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/*
|
||||
* Rotate plug-in v0.4 by Sven Neumann, neumanns@uni-duesseldorf.de
|
||||
* 1997/10/17
|
||||
* Rotate plug-in v0.5 by Sven Neumann, neumanns@uni-duesseldorf.de
|
||||
* 1998/01/09
|
||||
*
|
||||
* Any suggestions, bug-reports or patches are very welcome.
|
||||
*
|
||||
|
@ -37,6 +37,8 @@
|
|||
* (10/01/97) v0.3 now handles layered images and undo
|
||||
* (10/13/97) v0.3a small bugfix, no real changes
|
||||
* (10/17/97) v0.4 now handles selections
|
||||
* (01/09/98) v0.5 a few fixes to support portability
|
||||
*
|
||||
*/
|
||||
|
||||
/* TODO List
|
||||
|
@ -53,7 +55,7 @@
|
|||
/* Defines */
|
||||
#define PLUG_IN_NAME "plug_in_rotate"
|
||||
#define PLUG_IN_PRINT_NAME "Rotate"
|
||||
#define PLUG_IN_VERSION "v0.4 (10/17/97)"
|
||||
#define PLUG_IN_VERSION "v0.5 (01/09/98)"
|
||||
#define PLUG_IN_MENU_PATH "<Image>/Filters/Transforms/Rotate"
|
||||
#define PLUG_IN_IMAGE_TYPES "RGB*, INDEXED*, GRAY*"
|
||||
#define PLUG_IN_AUTHOR "Sven Neumann (neumanns@uni-duesseldorf.de)"
|
||||
|
@ -65,7 +67,7 @@
|
|||
#define IN_ARGS { PARAM_INT32, "run_mode", "Interactive, non-interactive"},\
|
||||
{ PARAM_IMAGE, "image", "Input image" },\
|
||||
{ PARAM_DRAWABLE, "drawable", "Input drawable"},\
|
||||
{ PARAM_INT32, "angle", "Angle { 90° (1), 180° (2), 270° (3) }"},\
|
||||
{ PARAM_INT32, "angle", "Angle { 90 (1), 180 (2), 270 (3) } degrees"},\
|
||||
{ PARAM_INT32, "everything", "Rotate the whole image? { TRUE, FALSE }"}
|
||||
|
||||
#define NUMBER_OUT_ARGS 0
|
||||
|
@ -73,7 +75,7 @@
|
|||
|
||||
#define NUM_ANGLES 4
|
||||
|
||||
char *angle_label[NUM_ANGLES] = { "0°", "90°", "180°", "270°" };
|
||||
gchar *angle_label[NUM_ANGLES] = { "0", "90", "180", "270" };
|
||||
|
||||
typedef struct {
|
||||
gint angle;
|
||||
|
@ -86,7 +88,7 @@ typedef struct {
|
|||
|
||||
static RotateValues rotvals =
|
||||
{
|
||||
1, /* default to 90° */
|
||||
1, /* default to 90 degrees */
|
||||
1 /* default to whole image */
|
||||
};
|
||||
|
||||
|
@ -97,10 +99,10 @@ static RotateInterface rotint =
|
|||
|
||||
|
||||
static void query (void);
|
||||
static void run (char *name,
|
||||
int nparams, /* number of parameters passed in */
|
||||
static void run (gchar *name,
|
||||
gint nparams, /* number of parameters passed in */
|
||||
GParam * param, /* parameters passed in */
|
||||
int *nreturn_vals, /* number of parameters returned */
|
||||
gint *nreturn_vals, /* number of parameters returned */
|
||||
GParam ** return_vals); /* parameters to be returned */
|
||||
static void rotate (void);
|
||||
static void rotate_drawable (GDrawable *drawable);
|
||||
|
@ -140,9 +142,9 @@ static void query (void)
|
|||
{
|
||||
|
||||
static GParamDef args[] = { IN_ARGS };
|
||||
static int nargs = NUMBER_IN_ARGS;
|
||||
static gint nargs = NUMBER_IN_ARGS;
|
||||
static GParamDef *return_vals = OUT_ARGS;
|
||||
static int nreturn_vals = NUMBER_OUT_ARGS;
|
||||
static gint nreturn_vals = NUMBER_OUT_ARGS;
|
||||
|
||||
/* the actual installation of the plugin */
|
||||
gimp_install_procedure (PLUG_IN_NAME,
|
||||
|
@ -161,10 +163,10 @@ gimp_install_procedure (PLUG_IN_NAME,
|
|||
}
|
||||
|
||||
static void
|
||||
run (char *name, /* name of plugin */
|
||||
int nparams, /* number of in-paramters */
|
||||
run (gchar *name, /* name of plugin */
|
||||
gint nparams, /* number of in-paramters */
|
||||
GParam * param, /* in-parameters */
|
||||
int *nreturn_vals, /* number of out-parameters */
|
||||
gint *nreturn_vals, /* number of out-parameters */
|
||||
GParam ** return_vals) /* out-parameters */
|
||||
{
|
||||
|
||||
|
@ -211,19 +213,17 @@ run (char *name, /* name of plugin */
|
|||
}
|
||||
else
|
||||
status = STATUS_CALLING_ERROR;
|
||||
|
||||
break;
|
||||
|
||||
case RUN_WITH_LAST_VALS:
|
||||
/* Possibly retrieve data from a previous run */
|
||||
gimp_get_data (PLUG_IN_NAME, &rotvals);
|
||||
rotvals.angle = rotvals.angle % NUM_ANGLES;
|
||||
|
||||
case RUN_WITH_LAST_VALS:
|
||||
/* Possibly retrieve data from a previous run */
|
||||
gimp_get_data (PLUG_IN_NAME, &rotvals);
|
||||
rotvals.angle = rotvals.angle % NUM_ANGLES;
|
||||
break;
|
||||
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
default:
|
||||
break;
|
||||
} /* switch */
|
||||
|
||||
if (status == STATUS_SUCCESS)
|
||||
{
|
||||
|
@ -252,7 +252,7 @@ gint32
|
|||
my_gimp_selection_is_empty (gint32 image_ID)
|
||||
{
|
||||
GParam *return_vals;
|
||||
int nreturn_vals;
|
||||
gint nreturn_vals;
|
||||
gint32 is_empty;
|
||||
|
||||
/* initialize */
|
||||
|
@ -276,7 +276,7 @@ gint32
|
|||
my_gimp_selection_float (gint32 image_ID, gint32 drawable_ID)
|
||||
{
|
||||
GParam *return_vals;
|
||||
int nreturn_vals;
|
||||
gint nreturn_vals;
|
||||
gint32 layer_ID;
|
||||
|
||||
return_vals = gimp_run_procedure ("gimp_selection_float",
|
||||
|
@ -563,6 +563,7 @@ rotate_dialog (void)
|
|||
GtkWidget *frame;
|
||||
GtkWidget *table;
|
||||
GtkWidget *radio_label;
|
||||
GtkWidget *unit_label;
|
||||
GtkWidget *hbox;
|
||||
GtkWidget *radio_button;
|
||||
GtkWidget *check_button;
|
||||
|
@ -622,7 +623,7 @@ rotate_dialog (void)
|
|||
frame, TRUE, TRUE, 0);
|
||||
|
||||
/* table for radio_buttons */
|
||||
table = gtk_table_new (5, 5, FALSE);
|
||||
table = gtk_table_new (6, 6, FALSE);
|
||||
gtk_table_set_row_spacings (GTK_TABLE (table), 8);
|
||||
gtk_table_set_col_spacings (GTK_TABLE (table), 1);
|
||||
gtk_container_border_width (GTK_CONTAINER (table), 6);
|
||||
|
@ -630,7 +631,7 @@ rotate_dialog (void)
|
|||
|
||||
/* radio buttons */
|
||||
|
||||
/* 0° */
|
||||
/* 0 degrees */
|
||||
radio_label = gtk_label_new ( angle_label[0] );
|
||||
gtk_table_attach ( GTK_TABLE (table), radio_label, 2, 3, 0, 1, 0, 0, 0, 0);
|
||||
gtk_widget_show (radio_label);
|
||||
|
@ -644,7 +645,7 @@ rotate_dialog (void)
|
|||
radio_pressed[0]);
|
||||
gtk_widget_show (radio_button);
|
||||
|
||||
/* 90° */
|
||||
/* 90 degrees */
|
||||
radio_label = gtk_label_new ( angle_label[1] );
|
||||
gtk_table_attach ( GTK_TABLE (table), radio_label, 4, 5, 2, 3, 0, 0, 0, 0);
|
||||
gtk_widget_show (radio_label);
|
||||
|
@ -658,7 +659,7 @@ rotate_dialog (void)
|
|||
radio_pressed[1]);
|
||||
gtk_widget_show (radio_button);
|
||||
|
||||
/* 180° */
|
||||
/* 180 degrees */
|
||||
radio_label = gtk_label_new ( angle_label[2] );
|
||||
gtk_table_attach ( GTK_TABLE (table), radio_label, 2, 3, 4, 5, 0, 0, 0, 0);
|
||||
gtk_widget_show (radio_label);
|
||||
|
@ -672,7 +673,7 @@ rotate_dialog (void)
|
|||
radio_pressed[2]);
|
||||
gtk_widget_show (radio_button);
|
||||
|
||||
/* 270° */
|
||||
/* 270 degrees */
|
||||
radio_label = gtk_label_new ( angle_label[3] );
|
||||
gtk_table_attach ( GTK_TABLE (table), radio_label, 0, 1, 2, 3, 0, 0, 0, 0);
|
||||
gtk_widget_show (radio_label);
|
||||
|
@ -686,6 +687,13 @@ rotate_dialog (void)
|
|||
radio_pressed[3]);
|
||||
gtk_widget_show (radio_button);
|
||||
|
||||
/* label: degrees */
|
||||
|
||||
unit_label = gtk_label_new ( "degrees" );
|
||||
gtk_table_attach ( GTK_TABLE (table), unit_label, 5, 6, 5, 6, 0, 0, 0, 0);
|
||||
gtk_widget_show (unit_label);
|
||||
|
||||
|
||||
gtk_widget_show (table);
|
||||
gtk_widget_show (frame);
|
||||
|
||||
|
@ -748,7 +756,7 @@ rotate_toggle_update (GtkWidget *widget,
|
|||
{
|
||||
gint *toggle_val;
|
||||
|
||||
toggle_val = (int *) data;
|
||||
toggle_val = (gint *) data;
|
||||
|
||||
if (GTK_TOGGLE_BUTTON (widget)->active)
|
||||
*toggle_val = TRUE;
|
||||
|
@ -802,3 +810,6 @@ ErrorMessage(guchar *message)
|
|||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -464,7 +464,7 @@ prepare_row (GPixelRgn *pixel_rgn,
|
|||
/* Fill in edge pixels */
|
||||
for (b = 0; b < pixel_rgn->bpp; b++)
|
||||
{
|
||||
data[-pixel_rgn->bpp + b] = data[b];
|
||||
data[-(gint)pixel_rgn->bpp + b] = data[b];
|
||||
data[w * pixel_rgn->bpp + b] = data[(w - 1) * pixel_rgn->bpp + b];
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/* maze.c, version 0.4.2, 17 October 1997
|
||||
/* maze.c, version 0.5.0, July 10, 1998.
|
||||
* This is a plug-in for the GIMP.
|
||||
* It draws mazes... walls and passages are 1 pixel wide.
|
||||
* It draws mazes...
|
||||
*
|
||||
* Implemented as a GIMP 0.99 Plugin by
|
||||
* Kevin Turner <kevint@poboxes.com>
|
||||
|
@ -19,6 +19,9 @@
|
|||
* and used as a template to get me started on this one. :)
|
||||
*
|
||||
* Revision history:
|
||||
* 0.5.0 - Added the long-awaited "tileable" option.
|
||||
* Required a change to PDB parameters.
|
||||
* - fixed some stuff with GParam values in run();
|
||||
* 0.4.2 - Applied Adrian Likins' patch to fix non-interactive stuff.
|
||||
* - -ansi and -pedantic-errors clean. Woo-hoo?
|
||||
* 0.4.1 - get_colors() now works properly for grayscale images.
|
||||
|
@ -43,10 +46,10 @@
|
|||
*
|
||||
* Fix that stray line down there between maze wall and dead space border...
|
||||
*
|
||||
* Resolve the border & tileable maze difficulty.
|
||||
*
|
||||
* Make get_colors() work with indexed. * HELP! *
|
||||
*
|
||||
* Tileable mazes are fun :)
|
||||
*
|
||||
* If we add many more paramaters, we'll need a preview box.
|
||||
*
|
||||
* Also someday:
|
||||
|
@ -80,17 +83,18 @@
|
|||
#include "libgimp/gimpui.h"
|
||||
|
||||
#define ENTRY_WIDTH 75
|
||||
#define MAZE_TITLE "Maze 0.4.2"
|
||||
#define MAZE_TITLE "Maze 0.5.0"
|
||||
/* entscale stuff begin */
|
||||
#define ENTSCALE_INT_SCALE_WIDTH 125
|
||||
#define ENTSCALE_INT_ENTRY_WIDTH 40
|
||||
/* entscale stuff end */
|
||||
|
||||
typedef struct {
|
||||
gint width;
|
||||
gint seed;
|
||||
gint multiple;
|
||||
gint offset;
|
||||
gint width;
|
||||
gint seed;
|
||||
gint tile;
|
||||
gint multiple;
|
||||
gint offset;
|
||||
} MazeValues;
|
||||
|
||||
typedef struct {
|
||||
|
@ -121,6 +125,11 @@ static gint mazegen(gint pos,
|
|||
gint x,
|
||||
gint y,
|
||||
gint rnd);
|
||||
static gint mazegen_tileable(gint pos,
|
||||
gchar *maz,
|
||||
gint x,
|
||||
gint y,
|
||||
gint rnd);
|
||||
static void get_colors (GDrawable * drawable,
|
||||
guint8 *fg,
|
||||
guint8 *bg);
|
||||
|
@ -136,6 +145,7 @@ static gint maze_dialog (void);
|
|||
static void maze_close_callback (GtkWidget *widget, gpointer data);
|
||||
static void maze_ok_callback (GtkWidget *widget, gpointer data);
|
||||
static void maze_entry_callback (GtkWidget *widget, gpointer data);
|
||||
static void tile_toggle_callback (GtkWidget *widget, gpointer data);
|
||||
|
||||
/* entscale stuff begin */
|
||||
void entscale_int_new ( GtkWidget *table, gint x, gint y,
|
||||
|
@ -168,6 +178,7 @@ static MazeValues mvals =
|
|||
{
|
||||
1, /* Passage width */
|
||||
0, /* seed */
|
||||
FALSE, /* Tileable? */
|
||||
57, /* multiple * These two had "Experiment with this?" comments */
|
||||
1 /* offset * in the maz.c source, so, lets expiriment. :) */
|
||||
};
|
||||
|
@ -177,7 +188,7 @@ static MazeInterface mint =
|
|||
FALSE /* run */
|
||||
};
|
||||
|
||||
MAIN ()
|
||||
MAIN () /*;*/
|
||||
|
||||
static void
|
||||
query ()
|
||||
|
@ -189,6 +200,7 @@ query ()
|
|||
{ PARAM_DRAWABLE, "drawable", "Input drawable" },
|
||||
/* If we did have parameters, these be them: */
|
||||
{ PARAM_INT32, "mazep_size", "Size of the passages" },
|
||||
{ PARAM_INT32, "maze_tile", "Tileable maze?"},
|
||||
{ PARAM_INT32, "maze_rseed", "Random Seed"},
|
||||
{ PARAM_INT32, "maze_multiple", "Multiple (use 57)" },
|
||||
{ PARAM_INT32, "maze_offset", "Offset (use 1)" }
|
||||
|
@ -217,11 +229,13 @@ run (gchar *name,
|
|||
gint *nreturn_vals,
|
||||
GParam **return_vals)
|
||||
{
|
||||
static GParam values[1];
|
||||
GParam *values;
|
||||
GDrawable *drawable;
|
||||
GRunModeType run_mode;
|
||||
GStatusType status = STATUS_SUCCESS;
|
||||
|
||||
values=g_new(GParam,1);
|
||||
|
||||
run_mode = param[0].data.d_int32;
|
||||
|
||||
*nreturn_vals = 1;
|
||||
|
@ -251,7 +265,7 @@ run (gchar *name,
|
|||
|
||||
case RUN_NONINTERACTIVE:
|
||||
/* WARNING: Stupidity Follows */
|
||||
if (nparams != 7)
|
||||
if (nparams != 8)
|
||||
{
|
||||
status = STATUS_CALLING_ERROR;
|
||||
}
|
||||
|
@ -259,8 +273,9 @@ run (gchar *name,
|
|||
{
|
||||
mvals.width = (gint) param[3].data.d_int32;
|
||||
mvals.seed = (gint) param[4].data.d_int32;
|
||||
mvals.multiple = (gint) param[5].data.d_int32;
|
||||
mvals.offset = (gint) param[6].data.d_int32;
|
||||
mvals.tile = (gint) param[5].data.d_int32;
|
||||
mvals.multiple = (gint) param[6].data.d_int32;
|
||||
mvals.offset = (gint) param[7].data.d_int32;
|
||||
}
|
||||
break;
|
||||
/* #define MAZE_DEBUG */
|
||||
|
@ -331,9 +346,16 @@ maze( GDrawable * drawable)
|
|||
mw = (x2-x1) / mvals.width;
|
||||
mh = (y2-y1) / mvals.width;
|
||||
|
||||
mw -= !(mw & 1); /* mazegen doesn't work with even-sized mazes. */
|
||||
mh -= !(mh & 1); /* Note I don't warn the user about this... */
|
||||
if (!mvals.tile) {
|
||||
mw -= !(mw & 1); /* mazegen doesn't work with even-sized mazes. */
|
||||
mh -= !(mh & 1); /* Note I don't warn the user about this... */
|
||||
} else { /* On the other hand, tileable mazes must be even. */
|
||||
mw -= (mw & 1);
|
||||
mh -= (mh & 1);
|
||||
};
|
||||
|
||||
/* It will really suck if your tileable maze ends up with this dead
|
||||
space around it. Oh well, life is hard. */
|
||||
deadx = ((x2-x1) - mw * mvals.width)/2;
|
||||
deady = ((y2-y1) - mh * mvals.width)/2;
|
||||
|
||||
|
@ -347,8 +369,12 @@ maze( GDrawable * drawable)
|
|||
(x2-x1),(y2-y1),mw,mh,deadx,deady,mvals.width);
|
||||
#endif
|
||||
|
||||
(void) mazegen((mw+1), maz, mw, mh, mvals.seed);
|
||||
/* (void) mazegen(((x2-x1)+1), maz, (x2-x1), (y2-y1), rnd); */
|
||||
if (mvals.tile) {
|
||||
(void) mazegen_tileable((mw+1), maz, mw, mh, mvals.seed);
|
||||
} else {
|
||||
(void) mazegen((mw+1), maz, mw, mh, mvals.seed);
|
||||
/* (void) mazegen(((x2-x1)+1), maz, (x2-x1), (y2-y1), rnd); */
|
||||
}
|
||||
/* It's done happening. Now go through and color dem pixels... */
|
||||
|
||||
for (pr = gimp_pixel_rgns_register (1, &dest_rgn);
|
||||
|
@ -514,6 +540,80 @@ gchar *maz;
|
|||
return 0;
|
||||
}
|
||||
|
||||
#define ABSMOD(A,B) ( ((A) < 0) ? (((B) + (A)) % (B)) : ((A) % (B)) )
|
||||
|
||||
gint mazegen_tileable(pos, maz, x, y, rnd)
|
||||
gint pos, x, y, rnd;
|
||||
gchar *maz;
|
||||
{
|
||||
gchar d, i;
|
||||
gint c=0, j=1, npos=2;
|
||||
|
||||
/* Punch a hole here... */
|
||||
maz[pos] = 1;
|
||||
|
||||
/* If there is a wall two rows above us, bit 1 is 1. */
|
||||
while((d= (pos < (x*2) ? (maz[x*(y-2)+pos] ? 0 : 1) : (maz[pos - x - x ] ? 0 : 1))
|
||||
/* If there is a wall two rows below us, bit 2 is 1. */
|
||||
| (pos >= x * (y-2) ? (maz[pos - x*(y-2)] ? 0 : 2) : (maz[pos +x+x] ? 0 : 2))
|
||||
/* If there is a wall two columns to the right, bit 3 is 1. */
|
||||
| (pos % x >= x - 2 ? (maz[pos + 2 - x] ? 0 : 4) : (maz[pos + 2] ? 0 : 4))
|
||||
/* If there is a wall two colums to the left, bit 4 is 1. */
|
||||
| ((pos % x <= 1 ) ? (maz[pos + x - 2] ? 0 : 8) : (maz[pos-2] ? 0 : 8)))) {
|
||||
|
||||
/* Note if all bits are 0, d is false, we don't do this
|
||||
while loop, we don't call ourselves again, so this branch
|
||||
is done. */
|
||||
|
||||
/* I see what this loop does (more or less), but I don't know
|
||||
_why_ it does it this way... I also haven't figured out exactly
|
||||
which values of multiple will work and which won't. */
|
||||
do {
|
||||
rnd = (rnd * mvals.multiple + mvals.offset);
|
||||
i = 3 & (rnd / d);
|
||||
if (++c > 100) { /* Break and try to salvage something */
|
||||
i=99; /* if it looks like we're going to be */
|
||||
break; /* here forever... */
|
||||
}
|
||||
} while ( !(d & ( 1 << i) ) );
|
||||
/* ...While there's *not* a wall in direction i. */
|
||||
/* (stop looping when there is) */
|
||||
|
||||
switch (i) { /* This is simple enough. */
|
||||
case 0: /* Go in the direction we just figured . . . */
|
||||
j = pos < x ? x*(y-1)+pos : pos - x;
|
||||
npos = pos < (x*2) ? x*(y-2)+pos : pos - x - x;
|
||||
break;
|
||||
case 1:
|
||||
j = pos >= x*(y-1) ? pos - x * (y-1) : pos + x;
|
||||
npos = pos >= x*(y-2) ? pos - x*(y-2) : pos + x + x;
|
||||
break;
|
||||
case 2:
|
||||
j = (pos % x) == (x - 1) ? pos + 1 - x : pos + 1;
|
||||
npos = (pos % x) >= (x - 2) ? pos + 2 - x : pos + 2;
|
||||
break;
|
||||
case 3:
|
||||
j= (pos % x) == 0 ? pos + x - 1 : pos - 1;
|
||||
npos = (pos % x) <= 1 ? pos + x - 2 : pos - 2;
|
||||
break;
|
||||
case 99:
|
||||
return 1; /* Hey neat, broken mazes! */
|
||||
break; /* (Umm... Wow... Yeah, neat.) */
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
/* And punch a hole there. */
|
||||
maz[j] = 1;
|
||||
|
||||
/* Now, start again just past where we punched the hole... */
|
||||
mazegen_tileable(npos, maz, x, y, rnd);
|
||||
|
||||
} /* End while(d=...) Loop */
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void
|
||||
get_colors (GDrawable *drawable, guint8 *fg, guint8 *bg)
|
||||
{
|
||||
|
@ -616,6 +716,7 @@ static gint maze_dialog()
|
|||
GtkWidget *label;
|
||||
GtkWidget *entry;
|
||||
GtkWidget *notebook;
|
||||
GtkWidget *tilecheck;
|
||||
gchar **argv;
|
||||
gint argc;
|
||||
gchar buffer[32];
|
||||
|
@ -662,7 +763,7 @@ static gint maze_dialog()
|
|||
gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_ETCHED_IN);
|
||||
gtk_container_border_width (GTK_CONTAINER (frame), 10);
|
||||
/* gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dlg)->vbox), frame, TRUE, TRUE, 0); */
|
||||
table = gtk_table_new (2, 2, FALSE);
|
||||
table = gtk_table_new (3, 2, FALSE);
|
||||
gtk_container_border_width (GTK_CONTAINER (table), 10);
|
||||
gtk_container_add (GTK_CONTAINER (frame), table);
|
||||
|
||||
|
@ -686,6 +787,13 @@ static gint maze_dialog()
|
|||
1, 64, FALSE,
|
||||
NULL, NULL);
|
||||
|
||||
tilecheck = gtk_check_button_new_with_label ("Tileable?");
|
||||
gtk_signal_connect (GTK_OBJECT (tilecheck), "clicked",
|
||||
GTK_SIGNAL_FUNC (tile_toggle_callback), NULL);
|
||||
gtk_toggle_button_set_state (GTK_TOGGLE_BUTTON (tilecheck), mvals.tile);
|
||||
gtk_table_attach (GTK_TABLE (table), tilecheck, 0, 2, 2, 3, GTK_FILL, 0, 5, 0 );
|
||||
gtk_widget_show (tilecheck);
|
||||
|
||||
/* Add Options page to notebook */
|
||||
gtk_widget_show (frame);
|
||||
gtk_widget_show (table);
|
||||
|
@ -773,6 +881,12 @@ maze_entry_callback (GtkWidget *widget,
|
|||
*text_val = atoi (gtk_entry_get_text (GTK_ENTRY (widget)));
|
||||
}
|
||||
|
||||
static void
|
||||
tile_toggle_callback (GtkWidget *widget, gpointer data)
|
||||
{
|
||||
mvals.tile = GTK_TOGGLE_BUTTON (widget)->active;
|
||||
}
|
||||
|
||||
/* ==================================================================== */
|
||||
/* As found in pixelize.c */
|
||||
|
||||
|
|
|
@ -474,7 +474,7 @@ randomize_prepare_row(GPixelRgn *pixel_rgn, guchar *data, int x, int y, int w)
|
|||
* Fill in edge pixels
|
||||
*/
|
||||
for (b = 0; b < pixel_rgn->bpp; b++) {
|
||||
data[-pixel_rgn->bpp + b] = data[b];
|
||||
data[-(gint)pixel_rgn->bpp + b] = data[b];
|
||||
data[w * pixel_rgn->bpp + b] = data[(w - 1) * pixel_rgn->bpp + b];
|
||||
}
|
||||
}
|
||||
|
@ -494,7 +494,7 @@ randomize_prepare_row(GPixelRgn *pixel_rgn, guchar *data, int x, int y, int w)
|
|||
* Fill in edge pixels \
|
||||
*/ \
|
||||
for (b = 0; b < (pixel_rgn)->bpp; b++) { \
|
||||
data[-(pixel_rgn)->bpp + b] = data[b]; \
|
||||
data[-(gint)(pixel_rgn)->bpp + b] = data[b]; \
|
||||
data[w * (pixel_rgn)->bpp + b] = data[(w - 1) * (pixel_rgn)->bpp + b]; \
|
||||
} \
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/*
|
||||
* Rotate plug-in v0.4 by Sven Neumann, neumanns@uni-duesseldorf.de
|
||||
* 1997/10/17
|
||||
* Rotate plug-in v0.5 by Sven Neumann, neumanns@uni-duesseldorf.de
|
||||
* 1998/01/09
|
||||
*
|
||||
* Any suggestions, bug-reports or patches are very welcome.
|
||||
*
|
||||
|
@ -37,6 +37,8 @@
|
|||
* (10/01/97) v0.3 now handles layered images and undo
|
||||
* (10/13/97) v0.3a small bugfix, no real changes
|
||||
* (10/17/97) v0.4 now handles selections
|
||||
* (01/09/98) v0.5 a few fixes to support portability
|
||||
*
|
||||
*/
|
||||
|
||||
/* TODO List
|
||||
|
@ -53,7 +55,7 @@
|
|||
/* Defines */
|
||||
#define PLUG_IN_NAME "plug_in_rotate"
|
||||
#define PLUG_IN_PRINT_NAME "Rotate"
|
||||
#define PLUG_IN_VERSION "v0.4 (10/17/97)"
|
||||
#define PLUG_IN_VERSION "v0.5 (01/09/98)"
|
||||
#define PLUG_IN_MENU_PATH "<Image>/Filters/Transforms/Rotate"
|
||||
#define PLUG_IN_IMAGE_TYPES "RGB*, INDEXED*, GRAY*"
|
||||
#define PLUG_IN_AUTHOR "Sven Neumann (neumanns@uni-duesseldorf.de)"
|
||||
|
@ -65,7 +67,7 @@
|
|||
#define IN_ARGS { PARAM_INT32, "run_mode", "Interactive, non-interactive"},\
|
||||
{ PARAM_IMAGE, "image", "Input image" },\
|
||||
{ PARAM_DRAWABLE, "drawable", "Input drawable"},\
|
||||
{ PARAM_INT32, "angle", "Angle { 90° (1), 180° (2), 270° (3) }"},\
|
||||
{ PARAM_INT32, "angle", "Angle { 90 (1), 180 (2), 270 (3) } degrees"},\
|
||||
{ PARAM_INT32, "everything", "Rotate the whole image? { TRUE, FALSE }"}
|
||||
|
||||
#define NUMBER_OUT_ARGS 0
|
||||
|
@ -73,7 +75,7 @@
|
|||
|
||||
#define NUM_ANGLES 4
|
||||
|
||||
char *angle_label[NUM_ANGLES] = { "0°", "90°", "180°", "270°" };
|
||||
gchar *angle_label[NUM_ANGLES] = { "0", "90", "180", "270" };
|
||||
|
||||
typedef struct {
|
||||
gint angle;
|
||||
|
@ -86,7 +88,7 @@ typedef struct {
|
|||
|
||||
static RotateValues rotvals =
|
||||
{
|
||||
1, /* default to 90° */
|
||||
1, /* default to 90 degrees */
|
||||
1 /* default to whole image */
|
||||
};
|
||||
|
||||
|
@ -97,10 +99,10 @@ static RotateInterface rotint =
|
|||
|
||||
|
||||
static void query (void);
|
||||
static void run (char *name,
|
||||
int nparams, /* number of parameters passed in */
|
||||
static void run (gchar *name,
|
||||
gint nparams, /* number of parameters passed in */
|
||||
GParam * param, /* parameters passed in */
|
||||
int *nreturn_vals, /* number of parameters returned */
|
||||
gint *nreturn_vals, /* number of parameters returned */
|
||||
GParam ** return_vals); /* parameters to be returned */
|
||||
static void rotate (void);
|
||||
static void rotate_drawable (GDrawable *drawable);
|
||||
|
@ -140,9 +142,9 @@ static void query (void)
|
|||
{
|
||||
|
||||
static GParamDef args[] = { IN_ARGS };
|
||||
static int nargs = NUMBER_IN_ARGS;
|
||||
static gint nargs = NUMBER_IN_ARGS;
|
||||
static GParamDef *return_vals = OUT_ARGS;
|
||||
static int nreturn_vals = NUMBER_OUT_ARGS;
|
||||
static gint nreturn_vals = NUMBER_OUT_ARGS;
|
||||
|
||||
/* the actual installation of the plugin */
|
||||
gimp_install_procedure (PLUG_IN_NAME,
|
||||
|
@ -161,10 +163,10 @@ gimp_install_procedure (PLUG_IN_NAME,
|
|||
}
|
||||
|
||||
static void
|
||||
run (char *name, /* name of plugin */
|
||||
int nparams, /* number of in-paramters */
|
||||
run (gchar *name, /* name of plugin */
|
||||
gint nparams, /* number of in-paramters */
|
||||
GParam * param, /* in-parameters */
|
||||
int *nreturn_vals, /* number of out-parameters */
|
||||
gint *nreturn_vals, /* number of out-parameters */
|
||||
GParam ** return_vals) /* out-parameters */
|
||||
{
|
||||
|
||||
|
@ -211,19 +213,17 @@ run (char *name, /* name of plugin */
|
|||
}
|
||||
else
|
||||
status = STATUS_CALLING_ERROR;
|
||||
|
||||
break;
|
||||
|
||||
case RUN_WITH_LAST_VALS:
|
||||
/* Possibly retrieve data from a previous run */
|
||||
gimp_get_data (PLUG_IN_NAME, &rotvals);
|
||||
rotvals.angle = rotvals.angle % NUM_ANGLES;
|
||||
|
||||
case RUN_WITH_LAST_VALS:
|
||||
/* Possibly retrieve data from a previous run */
|
||||
gimp_get_data (PLUG_IN_NAME, &rotvals);
|
||||
rotvals.angle = rotvals.angle % NUM_ANGLES;
|
||||
break;
|
||||
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
default:
|
||||
break;
|
||||
} /* switch */
|
||||
|
||||
if (status == STATUS_SUCCESS)
|
||||
{
|
||||
|
@ -252,7 +252,7 @@ gint32
|
|||
my_gimp_selection_is_empty (gint32 image_ID)
|
||||
{
|
||||
GParam *return_vals;
|
||||
int nreturn_vals;
|
||||
gint nreturn_vals;
|
||||
gint32 is_empty;
|
||||
|
||||
/* initialize */
|
||||
|
@ -276,7 +276,7 @@ gint32
|
|||
my_gimp_selection_float (gint32 image_ID, gint32 drawable_ID)
|
||||
{
|
||||
GParam *return_vals;
|
||||
int nreturn_vals;
|
||||
gint nreturn_vals;
|
||||
gint32 layer_ID;
|
||||
|
||||
return_vals = gimp_run_procedure ("gimp_selection_float",
|
||||
|
@ -563,6 +563,7 @@ rotate_dialog (void)
|
|||
GtkWidget *frame;
|
||||
GtkWidget *table;
|
||||
GtkWidget *radio_label;
|
||||
GtkWidget *unit_label;
|
||||
GtkWidget *hbox;
|
||||
GtkWidget *radio_button;
|
||||
GtkWidget *check_button;
|
||||
|
@ -622,7 +623,7 @@ rotate_dialog (void)
|
|||
frame, TRUE, TRUE, 0);
|
||||
|
||||
/* table for radio_buttons */
|
||||
table = gtk_table_new (5, 5, FALSE);
|
||||
table = gtk_table_new (6, 6, FALSE);
|
||||
gtk_table_set_row_spacings (GTK_TABLE (table), 8);
|
||||
gtk_table_set_col_spacings (GTK_TABLE (table), 1);
|
||||
gtk_container_border_width (GTK_CONTAINER (table), 6);
|
||||
|
@ -630,7 +631,7 @@ rotate_dialog (void)
|
|||
|
||||
/* radio buttons */
|
||||
|
||||
/* 0° */
|
||||
/* 0 degrees */
|
||||
radio_label = gtk_label_new ( angle_label[0] );
|
||||
gtk_table_attach ( GTK_TABLE (table), radio_label, 2, 3, 0, 1, 0, 0, 0, 0);
|
||||
gtk_widget_show (radio_label);
|
||||
|
@ -644,7 +645,7 @@ rotate_dialog (void)
|
|||
radio_pressed[0]);
|
||||
gtk_widget_show (radio_button);
|
||||
|
||||
/* 90° */
|
||||
/* 90 degrees */
|
||||
radio_label = gtk_label_new ( angle_label[1] );
|
||||
gtk_table_attach ( GTK_TABLE (table), radio_label, 4, 5, 2, 3, 0, 0, 0, 0);
|
||||
gtk_widget_show (radio_label);
|
||||
|
@ -658,7 +659,7 @@ rotate_dialog (void)
|
|||
radio_pressed[1]);
|
||||
gtk_widget_show (radio_button);
|
||||
|
||||
/* 180° */
|
||||
/* 180 degrees */
|
||||
radio_label = gtk_label_new ( angle_label[2] );
|
||||
gtk_table_attach ( GTK_TABLE (table), radio_label, 2, 3, 4, 5, 0, 0, 0, 0);
|
||||
gtk_widget_show (radio_label);
|
||||
|
@ -672,7 +673,7 @@ rotate_dialog (void)
|
|||
radio_pressed[2]);
|
||||
gtk_widget_show (radio_button);
|
||||
|
||||
/* 270° */
|
||||
/* 270 degrees */
|
||||
radio_label = gtk_label_new ( angle_label[3] );
|
||||
gtk_table_attach ( GTK_TABLE (table), radio_label, 0, 1, 2, 3, 0, 0, 0, 0);
|
||||
gtk_widget_show (radio_label);
|
||||
|
@ -686,6 +687,13 @@ rotate_dialog (void)
|
|||
radio_pressed[3]);
|
||||
gtk_widget_show (radio_button);
|
||||
|
||||
/* label: degrees */
|
||||
|
||||
unit_label = gtk_label_new ( "degrees" );
|
||||
gtk_table_attach ( GTK_TABLE (table), unit_label, 5, 6, 5, 6, 0, 0, 0, 0);
|
||||
gtk_widget_show (unit_label);
|
||||
|
||||
|
||||
gtk_widget_show (table);
|
||||
gtk_widget_show (frame);
|
||||
|
||||
|
@ -748,7 +756,7 @@ rotate_toggle_update (GtkWidget *widget,
|
|||
{
|
||||
gint *toggle_val;
|
||||
|
||||
toggle_val = (int *) data;
|
||||
toggle_val = (gint *) data;
|
||||
|
||||
if (GTK_TOGGLE_BUTTON (widget)->active)
|
||||
*toggle_val = TRUE;
|
||||
|
@ -802,3 +810,6 @@ ErrorMessage(guchar *message)
|
|||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -464,7 +464,7 @@ prepare_row (GPixelRgn *pixel_rgn,
|
|||
/* Fill in edge pixels */
|
||||
for (b = 0; b < pixel_rgn->bpp; b++)
|
||||
{
|
||||
data[-pixel_rgn->bpp + b] = data[b];
|
||||
data[-(gint)pixel_rgn->bpp + b] = data[b];
|
||||
data[w * pixel_rgn->bpp + b] = data[(w - 1) * pixel_rgn->bpp + b];
|
||||
}
|
||||
}
|
||||
|
|
|
@ -658,7 +658,7 @@ diff_prepare_row (GPixelRgn *pixel_rgn,
|
|||
/* Fill in edge pixels */
|
||||
for (b = 0; b < pixel_rgn->bpp; b++)
|
||||
{
|
||||
data[-pixel_rgn->bpp + b] = data[b];
|
||||
data[-(gint)pixel_rgn->bpp + b] = data[b];
|
||||
data[w * pixel_rgn->bpp + b] = data[(w - 1) * pixel_rgn->bpp + b];
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue