ADDED 0001-Disable-getc_unlocked.patch Index: 0001-Disable-getc_unlocked.patch ================================================================== --- /dev/null +++ 0001-Disable-getc_unlocked.patch @@ -0,0 +1,15 @@ +--- chicken.h.orig ++++ chicken.h +@@ -976,11 +976,7 @@ DECL_C_PROC_p0 (128, 1,0,0,0,0,0,0,0) + # define C_fputs fputs + # define C_fputc fputc + # define C_putchar putchar +-# if (defined getc_unlocked || _POSIX_C_SOURCE >= 199506L) +-# define C_getc getc_unlocked +-# else +-# define C_getc getc +-# endif ++# define C_getc getc + # define C_fgetc fgetc + # define C_fgets fgets + # define C_ungetc ungetc Index: Makefile ================================================================== --- Makefile +++ Makefile @@ -1,38 +1,202 @@ -# This is more to help me remember all the steps than for building :) -# In fact right now this does *not* work as a Makefile. Sorry! - -CSC_OPTIONS=-IC:/mylibs/iup/include -LC:/mylibs/iup - -eh : - @echo "Read the make file eh." - -chicken-4.6.5 - cd c:/mylibs/src/chicken-4.6.5 - $(MAKE) PLATFORM=mingw PREFIX=c:/chicken - -iup-module : - chicken-install -D no-library-checks iup - -canvas-draw-module : - chicken-install -D no-library-checks canvas-draw +DOWNLOAD_CMD ?= wget +UNZIP ?= bsdtar +MINGW_BINDIR ?= C:\\\\MinGW\\\\bin # Used for InnoSetup script + +define BSDTAR + mkdir -p $(DEST_DIR) && bsdtar -x -C$(DEST_DIR) -f $^ +endef +define SEVENZIP + 7z x -o$(DEST_DIR) $^ +endef +define REAL_UNZIP + unzip -d$(DEST_DIR) $^ +endef + +ifeq ($(UNZIP), bsdtar) + UNZIP_CMD = $(BSDTAR) +else ifeq ($(UNZIP), 7z) + UNZIP_CMD = $(SEVENZIP) +else ifeq ($(UNZIP), unzip) + UNZIP_CMD = $(REAL_UNZIP) +endif + + +PREFIX ?= c:/chicken-iup +NATIVE_PREFIX = $(subst /,\\\\,$(PREFIX)) # Used for InnoSetup script + +CHICKEN_URL = http://code.call-cc.org/releases +ifndef CHICKEN_VERSION + CHICKEN_VERSION = 4.9.0 + CHICKEN_PATCHLEVEL = .1 +endif +CHICKEN_PKGNAME = chicken-$(CHICKEN_VERSION)$(CHICKEN_PATCHLEVEL) +CHICKEN_DIR = $(CHICKEN_PKGNAME) +CHICKEN_PKG = $(CHICKEN_PKGNAME).tar.gz +CHICKEN_PLATFORM ?= mingw-msys +CHICKEN_PREFIX ?= $(PREFIX) + +EGGS = apropos trace regex-case regex-literals format big-chicken pdf sql-de-lite coops tinyclos test regex slime canvas-draw utf8 + + +define GET_FFCALL_CVS + cvs -z3 -d:pserver:anonymous@cvs.savannah.gnu.org:/sources/libffcall co ffcall +endef +define GET_FFCALL_PKG + wget http://www.haible.de/bruno/gnu/$(FFCALL_PKG) + tar zxvf $(FFCALL_PKG) +endef + +FFCALL_VERSION ?= cvs +FFCALL_PREFIX ?= $(PREFIX) +ifeq ($(FFCALL_VERSION), cvs) + FFCALL_DIR = ffcall + FFCALL_PKG = + GET_FFCALL = $(GET_FFCALL_CVS) +else + FFCALL_DIR = ffcall-$(FFCALL_VERSION) + FFCALL_PKG = ffcall-$(FFCALL_VERSION).tar.gz + GET_FFCALL = $(GET_FFCALL_PKG) +endif + + +IUP_URL = http://sourceforge.net/projects +IUP_PLATFORM ?= Win32_dllw4 +IUP_LIBDIR ?= $(PREFIX)/lib + +IM_LONGNAME = imtoolkit +IM_VERSION ?= 3.9 +IM_PKG = im-$(IM_VERSION)_$(IUP_PLATFORM)_lib.zip + +CD_LONGNAME = canvasdraw +CD_VERSION ?= 5.8.1 +CD_PKG = cd-$(CD_VERSION)_$(IUP_PLATFORM)_lib.zip + +IUP_LONGNAME = iup +IUP_VERSION ?= 3.13 +IUP_PKG = iup-$(IUP_VERSION)_$(IUP_PLATFORM)_lib.zip + +SRC_PKGS = $(CHICKEN_PKG) $(FFCALL_PKG) +BIN_PKGS = $(IM_PKG) $(CD_PKG) $(IUP_PKG) +SRC_DIRS = $(CHICKEN_DIR) $(FFCALL_DIR) + + +.PHONY : all pkgs.prep srcpkgs.get binpkgs.get srcpkgs.verify binpkgs.verify srcpkgs.extract chicken.compile binpkgs.install iup_all.install im.install cd.install iup.install srcpkgs.compile install base.install binpkg.prep strip-lua eggs clean distclean lzma-kludge + +all : install binpkg.prep + +pkgs.prep : srcpkgs.extract binpkgs.verify + +srcpkgs.get : $(CHICKEN_PKG) + +$(CHICKEN_PKG) : + $(DOWNLOAD_CMD) $(CHICKEN_URL)/$(CHICKEN_VERSION)/$(CHICKEN_PKG) + # tar zxvf $(CHICKEN_PKG) + +binpkgs.get : $(IM_PKG) $(CD_PKG) $(IUP_PKG) + +$(IM_PKG) : + $(DOWNLOAD_CMD) $(IUP_URL)/$(IM_LONGNAME)/files/$(IM_VERSION)/Windows%20Libraries/Dynamic/$(IM_PKG) + +$(CD_PKG) : + $(DOWNLOAD_CMD) $(IUP_URL)/$(CD_LONGNAME)/files/$(CD_VERSION)/Windows%20Libraries/Dynamic/$(CD_PKG) + +$(IUP_PKG) : + $(DOWNLOAD_CMD) $(IUP_URL)/$(IUP_LONGNAME)/files/$(IUP_VERSION)/Windows%20Libraries/Dynamic/$(IUP_PKG) + +srcpkgs.verify : srcpkgs.get + +chicken.verify : $(CHICKEN_PKG) + +ffcall.verify : + +binpkgs.verify : binpkgs.get + +srcpkgs.extract : srcpkgs.verify $(CHICKEN_DIR) $(FFCALL_DIR) + +$(CHICKEN_DIR) : chicken.verify + tar zxvf $(CHICKEN_PKG) + touch $(CHICKEN_DIR) + +$(FFCALL_DIR) : + $(GET_FFCALL) + touch $(FFCALL_DIR) + +binpkgs.install : binpkgs.verify iup_all.install + +iup_all.install : lzma-kludge im.install cd.install iup.install + +im.install : DEST_DIR = $(IUP_LIBDIR) +im.install : $(IM_PKG) + $(UNZIP_CMD) + +cd.install : DEST_DIR = $(IUP_LIBDIR) +cd.install : $(CD_PKG) + $(UNZIP_CMD) + +iup.install : DEST_DIR = $(IUP_LIBDIR) +iup.install : $(IUP_PKG) + $(UNZIP_CMD) + +lzma-kludge : + if [ "${UNZIP}" = "bsdtar" ]; then \ + cd /bin && ln -sf msys-lzma-5.dll msys-lzma-1.dll; \ + fi + +srcpkgs.compile : chicken.compile ffcall.compile + +chicken.compile : $(CHICKEN_DIR) $(CHICKEN_DIR)/chicken.h.orig + cd $(CHICKEN_DIR) && \ + $(MAKE) PLATFORM=$(CHICKEN_PLATFORM) PREFIX=$(CHICKEN_PREFIX) + +$(CHICKEN_DIR)/chicken.h.orig : $(CHICKEN_DIR) + cd $(CHICKEN_DIR) && \ + patch -p0 <../0001-Disable-getc_unlocked.patch + +ffcall.compile : $(FFCALL_DIR) + cd $(FFCALL_DIR) && \ + ./configure --prefix=$(FFCALL_PREFIX) && \ + $(MAKE) + +base.install : srcpkgs.compile chicken.install ffcall.install binpkgs.install + +# chicken.install : chicken.compile +chicken.install : + cd $(CHICKEN_DIR) && \ + $(MAKE) PLATFORM=$(CHICKEN_PLATFORM) PREFIX=$(CHICKEN_PREFIX) install + +ffcall.install : + cd $(FFCALL_DIR) && \ + $(MAKE) install + +install : base.install eggs eggs : - apropos trace regex-case regex-literals format big-chicken pdf sql-de-lite coops tinyclos test regex slime - -sqlite3 : - set CSC_OPTIONS=-IC:/chicken/include -LC:/chicken - sqlite3 - -examples-inst : - mkdir -p c:/chicken/examples - cp examples/*.scm c:/chicken/examples - -setup-chicken-iup.exe : Output/setup.exe - cp Output/setup.exe setup-chicken-iup.exe - -all : iup-module canvas-draw-module examples-inst # setup-chicken-iup.exe - -iup : - cd iup;CSC_OPTIONS='-IC:/programs/chicken/include -LC:/programs/chicken/lib' chicken-install -D no-library-checks iup - -CSC_OPTIONS='-IC:/programs/chicken/lib/include -LC:/programs/chicken/lib' chicken-install -D no-library-checks -D disable-iup-web + chicken-install -D disable-iup-web iup + $(foreach egg,$(EGGS),chicken-install -keep-installed $(egg);) + +# CAREFUL: this rule removes the entire $PREFIX directory tree! +binpkg.prep : chicken-iup.iss strip-lua + mkdir -p binpkg && \ + mv $(PREFIX)/* binpkg && rmdir $(PREFIX) + +chicken-iup.iss : chicken-iup.iss.in + sed "s#{%CIUPPrefix%}#$(strip $(NATIVE_PREFIX))#g" $< \ + | sed "s#{%ChickenVersion%}#$(strip $(CHICKEN_VERSION)$(CHICKEN_PATCHLEVEL))#g" \ + | sed "s#{%MinGWBindir%}#$(strip $(MINGW_BINDIR))#g" > $@ + +strip-lua : + rm -f $(IUP_LIBDIR)/*lua* $(IUP_LIBDIR)/include/*lua* + +clean : chicken.clean ffcall.clean + +chicken.clean : + cd $(CHICKEN_DIR) && \ + $(MAKE) PLATFORM=$(CHICKEN_PLATFORM) clean + +ffcall.clean : + cd $(FFCALL_DIR) && \ + $(MAKE) clean + +distclean : + rm -rf $(SRC_PKGS) $(BIN_PKGS) $(SRC_DIRS) binpkg Output chicken-iup.iss + ADDED chicken-4.9.0.1.md5 Index: chicken-4.9.0.1.md5 ================================================================== --- /dev/null +++ chicken-4.9.0.1.md5 @@ -0,0 +1,1 @@ +f45e282c64714127309ae45119b4d306 *chicken-4.9.0.1.tar.gz DELETED chicken-iup-2.iss Index: chicken-iup-2.iss ================================================================== --- chicken-iup-2.iss +++ /dev/null @@ -1,51 +0,0 @@ -; Script generated by the Inno Setup Script Wizard. -; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES! - -#define MyAppName "chicken-iup" -#define MyAppVersion "0.3" -#define MyAppPublisher "Call/CC" -#define MyAppURL "http://www.call-cc.org" -#define MyAppExeName "chicken.exe" - -[Setup] -; NOTE: The value of AppId uniquely identifies this application. -; Do not use the same AppId value in installers for other applications. -; (To generate a new GUID, click Tools | Generate GUID inside the IDE.) -AppId={{4F7C0F81-A72A-451E-8AD8-696DBE75D645} -AppName={#MyAppName} -AppVersion={#MyAppVersion} -;AppVerName={#MyAppName} {#MyAppVersion} -AppPublisher={#MyAppPublisher} -AppPublisherURL={#MyAppURL} -AppSupportURL={#MyAppURL} -AppUpdatesURL={#MyAppURL} -DefaultDirName={pf}\{#MyAppName} -DefaultGroupName={#MyAppName} -LicenseFile=C:\MinGW\msys\1.0\home\build-chicken-iup\chicken-4.8.0.5\LICENSE -OutputBaseFilename=setup -Compression=lzma -SolidCompression=yes - -[Languages] -Name: "english"; MessagesFile: "compiler:Default.isl" - -[Tasks] -Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked - -[Files] -Source: "C:\chicken\bin\chicken.exe"; DestDir: "{app}"; Flags: ignoreversion -Source: "C:\chicken\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs -Source: "C:\MinGW\bin\libgcc_s_dw2-1.dll"; DestDir: "{app}"; Flags: ignoreversion -Source: "C:\MinGW\msys\1.0\home\build-chicken-iup\examples\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs -; NOTE: Don't use "Flags: ignoreversion" on any shared system files - -[Icons] -Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}" -Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon - -[Run] -Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent - -[Registry] -Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Control\Session Manager\Environment"; - ValueType: expandsz; ValueName: "Path"; ValueData: "{olddata};C:\chicken\bin;C:\chicken\lib" DELETED chicken-iup.iss Index: chicken-iup.iss ================================================================== --- chicken-iup.iss +++ /dev/null @@ -1,54 +0,0 @@ -; Script generated by the Inno Setup Script Wizard. -; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES! - -;; SEE http://stackoverflow.com/questions/3304463/how-do-i-modify-the-path-environment-variable-when-running-an-inno-setup-install -;; For information on how to cleanly tweak the path. -;; Actual relevant sources are here: http://legroom.net/software/modpath - -[Setup] -; NOTE: The value of AppId uniquely identifies this application. -; Do not use the same AppId value in installers for other applications. -; (To generate a new GUID, click Tools | Generate GUID inside the IDE.) -AppId={{9052599F-B5C1-4617-AF81-C6E2F9AB8E8C} -AppName=chicken-iup -AppVersion=0.3 -;AppVerName=chicken-iup 0.2 -AppPublisher=Call/Cc -AppPublisherURL=http://www.call-cc.org -AppSupportURL=http://www.call-cc.org -AppUpdatesURL=http://www.call-cc.org -DefaultDirName=\chicken -DefaultGroupName=chicken-iup -LicenseFile=C:\MinGW\msys\1.0\home\build-chicken-iup\chicken-4.8.0.5\LICENSE -OutputBaseFilename=setup -Compression=lzma -SolidCompression=yes - -[Languages] -Name: "english"; MessagesFile: "compiler:Default.isl" - -[Tasks] -Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked - -[Files] -Source: "C:\chicken\bin\csi.exe"; DestDir: "{app}\bin"; Flags: ignoreversion -Source: "C:\chicken\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs -;Source: "C:\mylibs\iup\*"; DestDir: "{app}\bin"; Flags: ignoreversion recursesubdirs createallsubdirs -;Source: "C:\mylibs\ffcall\*"; DestDir: "{app}\bin"; Flags: ignoreversion recursesubdirs createallsubdirs -; NOTE: Don't use "Flags: ignoreversion" on any shared system files -Source: "C:\MinGW\bin\libgcc_s_dw2-1.dll"; DestDir: "{app}\bin"; -Source: "C:\MinGW\bin\libstdc++-6.dll"; DestDir: "{app}\bin"; -Source: "C:\MinGW\msys\1.0\home\build-chicken-iup\examples\*"; DestDir: "{app}\examples"; Flags: ignoreversion recursesubdirs createallsubdirs - -[Icons] -Name: "{group}\chicken-iup"; Filename: "{app}\bin\csi.exe" -Name: "{commondesktop}\chicken-iup"; Filename: "{app}\bin\csi.exe"; Tasks: desktopicon - -[Run] -Filename: "{app}\bin\csi.exe"; Description: "{cm:LaunchProgram,chicken-iup}"; Flags: nowait postinstall skipifsilent - -[Registry] -Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Control\Session Manager\Environment";ValueType: expandsz; ValueName: "Path"; ValueData: "{olddata};C:\chicken\bin;C:\chicken\lib" -Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Control\Session Manager\Environment";ValueType: expandsz; ValueName: "CHICKEN_PREFIX"; ValueData: "C:\chicken" -Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Control\Session Manager\Environment";ValueType: expandsz; ValueName: "CHICKEN_INSTALL_PREFIX"; ValueData: "C:\chicken\lib\chicken\6" - ADDED chicken-iup.iss.in Index: chicken-iup.iss.in ================================================================== --- /dev/null +++ chicken-iup.iss.in @@ -0,0 +1,56 @@ +; Script generated by the Inno Setup Script Wizard. +; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES! + +;; SEE http://stackoverflow.com/questions/3304463/how-do-i-modify-the-path-environment-variable-when-running-an-inno-setup-install +;; For information on how to cleanly tweak the path. +;; Actual relevant sources are here: http://legroom.net/software/modpath + +#define CIUPAppName "chicken-iup" +#define CIUPVersion "0.4" +#define CIUPPrefix "{%CIUPPrefix%}" +#define ChickenVersion "{%ChickenVersion%}" +#define ChickenURL "http://www.call-cc.org" +#define MinGWBindir "{%MinGWBindir%}" + +[Setup] +; NOTE: The value of AppId uniquely identifies this application. +; Do not use the same AppId value in installers for other applications. +; (To generate a new GUID, click Tools | Generate GUID inside the IDE.) +AppId={{683DFF9C-58AA-4045-8104-A191CAEC7C6D} +AppName={#CIUPAppName} +AppVersion={#CIUPVersion} +AppPublisher=Call/CC +AppPublisherURL={#ChickenURL} +AppSupportURL={#ChickenURL} +AppUpdatesURL={#ChickenURL} +DefaultDirName={#CIUPPrefix} +DefaultGroupName={#CIUPAppName} +LicenseFile=chicken-{#ChickenVersion}\LICENSE +OutputBaseFilename={#CIUPAppName}-setup +Compression=lzma +SolidCompression=yes + +[Languages] +Name: "english"; MessagesFile: "compiler:Default.isl" + +[Tasks] +Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked + +[Files] +Source: "binpkg\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs +Source: "{#MinGWBindir}\libgcc_s_dw2-1.dll"; DestDir: "{app}\bin"; +Source: "{#MinGWBindir}\libstdc++-6.dll"; DestDir: "{app}\bin"; +Source: "examples\*"; DestDir: "{userdesktop}\Chicken-IUP Examples"; Flags: ignoreversion recursesubdirs createallsubdirs + +[Icons] +Name: "{group}\chicken-iup"; Filename: "{app}\bin\csi.exe" +Name: "{commondesktop}\chicken-iup"; Filename: "{app}\bin\csi.exe"; Tasks: desktopicon + +[Run] +Filename: "{app}\bin\csi.exe"; Description: "{cm:LaunchProgram,chicken-iup}"; Flags: nowait postinstall skipifsilent + +[Registry] +Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Control\Session Manager\Environment";ValueType: expandsz; ValueName: "Path"; ValueData: "{olddata};{app}\bin;{app}\lib" +Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Control\Session Manager\Environment";ValueType: expandsz; ValueName: "CHICKEN_PREFIX"; ValueData: "{app}"; Flags: uninsdeletevalue +Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Control\Session Manager\Environment";ValueType: expandsz; ValueName: "CHICKEN_INSTALL_PREFIX"; ValueData: "{app}\lib\chicken\7"; Flags: uninsdeletevalue +Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Control\Session Manager\Environment";ValueType: expandsz; ValueName: "CSC_OPTIONS"; ValueData: "-I{app}\include -I{app}\lib\include -L{app}\lib"; Flags: uninsdeletevalue DELETED ffcall/COPYING Index: ffcall/COPYING ================================================================== --- ffcall/COPYING +++ /dev/null @@ -1,340 +0,0 @@ - GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1989, 1991 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307, - USA. - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -License is intended to guarantee your freedom to share and change free -software--to make sure the software is free for all its users. This -General Public License applies to most of the Free Software -Foundation's software and to any other program whose authors commit to -using it. (Some other Free Software Foundation software is covered by -the GNU Library General Public License instead.) You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if you -distribute copies of the software, or if you modify it. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must give the recipients all the rights that -you have. You must make sure that they, too, receive or can get the -source code. And you must show them these terms so they know their -rights. - - We protect your rights with two steps: (1) copyright the software, and -(2) offer you this license which gives you legal permission to copy, -distribute and/or modify the software. - - Also, for each author's protection and ours, we want to make certain -that everyone understands that there is no warranty for this free -software. If the software is modified by someone else and passed on, we -want its recipients to know that what they have is not the original, so -that any problems introduced by others will not reflect on the original -authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that redistributors of a free -program will individually obtain patent licenses, in effect making the -program proprietary. To prevent this, we have made it clear that any -patent must be licensed for everyone's free use or not licensed at all. - - The precise terms and conditions for copying, distribution and -modification follow. - - GNU GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License applies to any program or other work which contains -a notice placed by the copyright holder saying it may be distributed -under the terms of this General Public License. The "Program", below, -refers to any such program or work, and a "work based on the Program" -means either the Program or any derivative work under copyright law: -that is to say, a work containing the Program or a portion of it, -either verbatim or with modifications and/or translated into another -language. (Hereinafter, translation is included without limitation in -the term "modification".) Each licensee is addressed as "you". - -Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running the Program is not restricted, and the output from the Program -is covered only if its contents constitute a work based on the -Program (independent of having been made by running the Program). -Whether that is true depends on what the Program does. - - 1. You may copy and distribute verbatim copies of the Program's -source code as you receive it, in any medium, provided that you -conspicuously and appropriately publish on each copy an appropriate -copyright notice and disclaimer of warranty; keep intact all the -notices that refer to this License and to the absence of any warranty; -and give any other recipients of the Program a copy of this License -along with the Program. - -You may charge a fee for the physical act of transferring a copy, and -you may at your option offer warranty protection in exchange for a fee. - - 2. You may modify your copy or copies of the Program or any portion -of it, thus forming a work based on the Program, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) You must cause the modified files to carry prominent notices - stating that you changed the files and the date of any change. - - b) You must cause any work that you distribute or publish, that in - whole or in part contains or is derived from the Program or any - part thereof, to be licensed as a whole at no charge to all third - parties under the terms of this License. - - c) If the modified program normally reads commands interactively - when run, you must cause it, when started running for such - interactive use in the most ordinary way, to print or display an - announcement including an appropriate copyright notice and a - notice that there is no warranty (or else, saying that you provide - a warranty) and that users may redistribute the program under - these conditions, and telling the user how to view a copy of this - License. (Exception: if the Program itself is interactive but - does not normally print such an announcement, your work based on - the Program is not required to print an announcement.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Program, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Program, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Program. - -In addition, mere aggregation of another work not based on the Program -with the Program (or with a work based on the Program) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may copy and distribute the Program (or a work based on it, -under Section 2) in object code or executable form under the terms of -Sections 1 and 2 above provided that you also do one of the following: - - a) Accompany it with the complete corresponding machine-readable - source code, which must be distributed under the terms of Sections - 1 and 2 above on a medium customarily used for software interchange; or, - - b) Accompany it with a written offer, valid for at least three - years, to give any third party, for a charge no more than your - cost of physically performing source distribution, a complete - machine-readable copy of the corresponding source code, to be - distributed under the terms of Sections 1 and 2 above on a medium - customarily used for software interchange; or, - - c) Accompany it with the information you received as to the offer - to distribute corresponding source code. (This alternative is - allowed only for noncommercial distribution and only if you - received the program in object code or executable form with such - an offer, in accord with Subsection b above.) - -The source code for a work means the preferred form of the work for -making modifications to it. For an executable work, complete source -code means all the source code for all modules it contains, plus any -associated interface definition files, plus the scripts used to -control compilation and installation of the executable. However, as a -special exception, the source code distributed need not include -anything that is normally distributed (in either source or binary -form) with the major components (compiler, kernel, and so on) of the -operating system on which the executable runs, unless that component -itself accompanies the executable. - -If distribution of executable or object code is made by offering -access to copy from a designated place, then offering equivalent -access to copy the source code from the same place counts as -distribution of the source code, even though third parties are not -compelled to copy the source along with the object code. - - 4. You may not copy, modify, sublicense, or distribute the Program -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense or distribute the Program is -void, and will automatically terminate your rights under this License. -However, parties who have received copies, or rights, from you under -this License will not have their licenses terminated so long as such -parties remain in full compliance. - - 5. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Program or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Program (or any work based on the -Program), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Program or works based on it. - - 6. Each time you redistribute the Program (or any work based on the -Program), the recipient automatically receives a license from the -original licensor to copy, distribute or modify the Program subject to -these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 7. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Program at all. For example, if a patent -license would not permit royalty-free redistribution of the Program by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system, which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 8. If the distribution and/or use of the Program is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Program under this License -may add an explicit geographical distribution limitation excluding -those countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 9. The Free Software Foundation may publish revised and/or new versions -of the General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - -Each version is given a distinguishing version number. If the Program -specifies a version number of this License which applies to it and "any -later version", you have the option of following the terms and conditions -either of that version or of any later version published by the Free -Software Foundation. If the Program does not specify a version number of -this License, you may choose any version ever published by the Free Software -Foundation. - - 10. If you wish to incorporate parts of the Program into other free -programs whose distribution conditions are different, write to the author -to ask for permission. For software which is copyrighted by the Free -Software Foundation, write to the Free Software Foundation; we sometimes -make exceptions for this. Our decision will be guided by the two goals -of preserving the free status of all derivatives of our free software and -of promoting the sharing and reuse of software generally. - - NO WARRANTY - - 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -REPAIR OR CORRECTION. - - 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - - END OF TERMS AND CONDITIONS - - Appendix: How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. - -Also add information on how to contact you by electronic and paper mail. - -If the program is interactive, make it output a short notice like this -when it starts in an interactive mode: - - Gnomovision version 69, Copyright (C) year name of author - Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, the commands you use may -be called something other than `show w' and `show c'; they could even be -mouse-clicks or menu items--whatever suits your program. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the program, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the program - `Gnomovision' (which makes passes at compilers) written by James Hacker. - - , 1 April 1989 - Ty Coon, President of Vice - -This General Public License does not permit incorporating your program into -proprietary programs. If your program is a subroutine library, you may -consider it more useful to permit linking proprietary applications with the -library. If this is what you want to do, use the GNU Library General -Public License instead of this License. DELETED ffcall/Makefile.devel Index: ffcall/Makefile.devel ================================================================== --- ffcall/Makefile.devel +++ /dev/null @@ -1,143 +0,0 @@ -# This is the developer's -*-Makefile-*-, not the user's makefile. -# Do not use it unless you know exactly what you do! - -SHELL = /bin/sh -MAKE = make - -all : autoconf/aclocal.m4 configures avcall/avcall.h.msvc avcall/avcall.h.mingw32 avcall/avcall-i386-msvc.c avcall/avcall-i386-mingw32.c vacall/config.h.msvc vacall/config.h.mingw32 vacall/vacall.h.msvc vacall/vacall.h.mingw32 vacall/vacall-i386-msvc.c vacall/vacall-i386-mingw32.c trampoline/config.h.msvc trampoline/config.h.mingw32 callback/vacall_r/config.h.msvc callback/vacall_r/config.h.mingw32 callback/vacall_r/vacall_r.h.msvc callback/vacall_r/vacall_r.h.mingw32 callback/vacall_r/vacall-i386-msvc.c callback/trampoline_r/config.h.msvc callback/trampoline_r/config.h.mingw32 - -CONFIGURES = configure avcall/configure vacall/configure trampoline/configure callback/configure callback/vacall_r/configure callback/trampoline_r/configure -CONFIGURES_IN = configure.in avcall/configure.in vacall/configure.in trampoline/configure.in callback/configure.in callback/vacall_r/configure.in callback/trampoline_r/configure.in - -CLISP_DIR = .. - -m4/general.m4 : $(CLISP_DIR)/src/m4/general.m4 ; cp -p $< $@-t && mv $@-t $@ -m4/proto.m4 : $(CLISP_DIR)/src/m4/proto.m4 ; cp -p $< $@-t && mv $@-t $@ -m4/cc-gcc.m4 : $(CLISP_DIR)/src/m4/cc-gcc.m4 ; cp -p $< $@-t && mv $@-t $@ -m4/as-underscore.m4 : $(CLISP_DIR)/src/m4/as-underscore.m4 ; cp -p $< $@-t && mv $@-t $@ -m4/ranlib.m4 : $(CLISP_DIR)/src/m4/ranlib.m4 ; cp -p $< $@-t && mv $@-t $@ -m4/install.m4 : $(CLISP_DIR)/src/m4/install.m4 ; cp -p $< $@-t && mv $@-t $@ -m4/cp.m4 : $(CLISP_DIR)/src/m4/cp.m4 ; cp -p $< $@-t && mv $@-t $@ -m4/ln.m4 : $(CLISP_DIR)/src/m4/ln.m4 ; cp -p $< $@-t && mv $@-t $@ -m4/ffcall-pccstruct.m4 : $(CLISP_DIR)/src/m4/ffcall-pccstruct.m4 ; cp -p $< $@-t && mv $@-t $@ -m4/ffcall-smallstruct.m4 : $(CLISP_DIR)/src/m4/ffcall-smallstruct.m4 ; cp -p $< $@-t && mv $@-t $@ -m4/ffcall-ireg.m4 : $(CLISP_DIR)/src/m4/ffcall-ireg.m4 ; cp -p $< $@-t && mv $@-t $@ -m4/longlong.m4 : $(CLISP_DIR)/src/m4/longlong.m4 ; cp -p $< $@-t && mv $@-t $@ -m4/cc-void.m4 : $(CLISP_DIR)/src/m4/cc-void.m4 ; cp -p $< $@-t && mv $@-t $@ -m4/stdc-headers.m4 : $(CLISP_DIR)/src/m4/stdc-headers.m4 ; cp -p $< $@-t && mv $@-t $@ -m4/getpagesize.m4 : $(CLISP_DIR)/src/m4/getpagesize.m4 ; cp -p $< $@-t && mv $@-t $@ -m4/mach-vm.m4 : $(CLISP_DIR)/src/m4/mach-vm.m4 ; cp -p $< $@-t && mv $@-t $@ -m4/openflags.m4 : $(CLISP_DIR)/src/m4/openflags.m4 ; cp -p $< $@-t && mv $@-t $@ -m4/mmap.m4 : $(CLISP_DIR)/src/m4/mmap.m4 ; cp -p $< $@-t && mv $@-t $@ -m4/mprotect.m4 : $(CLISP_DIR)/src/m4/mprotect.m4 ; cp -p $< $@-t && mv $@-t $@ -m4/shm.m4 : $(CLISP_DIR)/src/m4/shm.m4 ; cp -p $< $@-t && mv $@-t $@ -m4/ffcall-codeexec.m4 : $(CLISP_DIR)/src/m4/ffcall-codeexec.m4 ; cp -p $< $@-t && mv $@-t $@ -m4/libtool.m4 : $(CLISP_DIR)/src/m4/libtool.m4 - sed -e 's,AC_CANONICAL_HOST,CL_CANONICAL_HOST,g' -e 's,AC_PROG_RANLIB,CL_PROG_RANLIB,g' -e 's,AC_PROG_LN_S,CL_PROG_LN_S,g' < $< > $@-t && mv $@-t $@ - -autoconf/aclocal.m4 : m4/general.m4 m4/proto.m4 m4/cc-gcc.m4 m4/as-underscore.m4 m4/ranlib.m4 m4/install.m4 m4/cp.m4 m4/ln.m4 m4/ffcall-pccstruct.m4 m4/ffcall-smallstruct.m4 m4/ffcall-ireg.m4 m4/longlong.m4 m4/cc-void.m4 m4/stdc-headers.m4 m4/getpagesize.m4 m4/mach-vm.m4 m4/openflags.m4 m4/mmap.m4 m4/mprotect.m4 m4/shm.m4 m4/ffcall-codeexec.m4 m4/libtool.m4 - { echo 'AC_INIT'; cat $(CONFIGURES_IN) | grep -v '\(AC_INIT(\|AC_OUTPUT(\|AC_CONFIG_HEADER(\)'; } > autoconf/configure.in - cd autoconf && aclocal --output=aclocal.m4 --acdir=../m4 - rm -f autoconf/configure.in - -configures : $(CONFIGURES) - -AUTOCONF_FILES = autoconf/aclocal.m4 -AUTOCONF = autoconf - -configure : configure.in $(AUTOCONF_FILES) - $(AUTOCONF) --include=autoconf - -avcall/configure : avcall/configure.in $(AUTOCONF_FILES) - cd avcall ; $(AUTOCONF) --include=../autoconf - -vacall/configure : vacall/configure.in $(AUTOCONF_FILES) - cd vacall ; $(AUTOCONF) --include=../autoconf - -trampoline/configure : trampoline/configure.in $(AUTOCONF_FILES) - cd trampoline ; $(AUTOCONF) --include=../autoconf - -callback/configure : callback/configure.in $(AUTOCONF_FILES) - cd callback ; $(AUTOCONF) --include=../autoconf - -callback/vacall_r/configure : callback/vacall_r/configure.in $(AUTOCONF_FILES) - cd callback/vacall_r ; $(AUTOCONF) --include=../../autoconf - -callback/trampoline_r/configure : callback/trampoline_r/configure.in $(AUTOCONF_FILES) - cd callback/trampoline_r ; $(AUTOCONF) --include=../../autoconf - -check-configures : $(CONFIGURES) - set -e; for f in $(CONFIGURES); do bash -x -n $$f; done - -avcall/avcall.h.msvc : avcall/avcall.h.in - cd avcall ; $(MAKE) -f Makefile.devel avcall.h.msvc - -avcall/avcall.h.mingw32 : avcall/avcall.h.in - cd avcall ; $(MAKE) -f Makefile.devel avcall.h.mingw32 - -avcall/avcall-i386-msvc.c : avcall/avcall-i386-macro.S avcall/asmi386.sh - cd avcall ; $(MAKE) -f Makefile.devel avcall-i386-msvc.c - -avcall/avcall-i386-mingw32.c : avcall/avcall-i386-macro.S avcall/asmi386.sh - cd avcall ; $(MAKE) -f Makefile.devel avcall-i386-mingw32.c - -vacall/config.h.msvc : vacall/config.h.in - cd vacall ; $(MAKE) -f Makefile.devel config.h.msvc - -vacall/config.h.mingw32 : vacall/config.h.in - cd vacall ; $(MAKE) -f Makefile.devel config.h.mingw32 - -vacall/vacall.h.msvc : vacall/vacall.h.in - cd vacall ; $(MAKE) -f Makefile.devel vacall.h.msvc - -vacall/vacall.h.mingw32 : vacall/vacall.h.in - cd vacall ; $(MAKE) -f Makefile.devel vacall.h.mingw32 - -vacall/vacall-i386-msvc.c : vacall/vacall-i386-macro.S vacall/asmi386.sh - cd vacall ; $(MAKE) -f Makefile.devel vacall-i386-msvc.c - -vacall/vacall-i386-mingw32.c : vacall/vacall-i386-macro.S vacall/asmi386.sh - cd vacall ; $(MAKE) -f Makefile.devel vacall-i386-mingw32.c - -trampoline/config.h.msvc : trampoline/config.h.in - cd trampoline ; $(MAKE) -f Makefile.devel config.h.msvc - -trampoline/config.h.mingw32 : trampoline/config.h.in - cd trampoline ; $(MAKE) -f Makefile.devel config.h.mingw32 - -callback/vacall_r/config.h.msvc : callback/vacall_r/config.h.in - cd callback ; $(MAKE) -f Makefile.devel vacall_r/config.h.msvc - -callback/vacall_r/config.h.mingw32 : callback/vacall_r/config.h.in - cd callback ; $(MAKE) -f Makefile.devel vacall_r/config.h.mingw32 - -callback/vacall_r/vacall_r.h.msvc : callback/vacall_r/vacall_r.h.in - cd callback ; $(MAKE) -f Makefile.devel vacall_r/vacall_r.h.msvc - -callback/vacall_r/vacall_r.h.mingw32 : callback/vacall_r/vacall_r.h.in - cd callback ; $(MAKE) -f Makefile.devel vacall_r/vacall_r.h.mingw32 - -callback/vacall_r/vacall-i386-msvc.c : callback/vacall_r/vacall-i386-macro.S callback/vacall_r/asmi386.sh - cd callback ; $(MAKE) -f Makefile.devel vacall_r/vacall-i386-msvc.c - -callback/vacall_r/vacall-i386-mingw32.c : callback/vacall_r/vacall-i386-macro.S callback/vacall_r/asmi386.sh - cd callback ; $(MAKE) -f Makefile.devel vacall_r/vacall-i386-mingw32.c - -callback/trampoline_r/config.h.msvc : callback/trampoline_r/config.h.in - cd callback ; $(MAKE) -f Makefile.devel trampoline_r/config.h.msvc - -callback/trampoline_r/config.h.mingw32 : callback/trampoline_r/config.h.in - cd callback ; $(MAKE) -f Makefile.devel trampoline_r/config.h.mingw32 - -COMPILERS="cc -O" "gcc -freg-struct-return" "gcc -fpcc-struct-return" - -multibuild : force - for compiler in $(COMPILERS) ; do \ - dir=build-`echo $$compiler | sed -e 's, ,,g' -e 's,/,_,g'`; \ - mkdir $$dir; cd $$dir; \ - CC="$$compiler" ../configure --srcdir=.. && make && make check; \ - cd ..; \ - done - -force : - DELETED ffcall/Makefile.in Index: ffcall/Makefile.in ================================================================== --- ffcall/Makefile.in +++ /dev/null @@ -1,54 +0,0 @@ -# Makefile for ffcall - -#### Start of system configuration section. #### - -# Directories used by "make install": -prefix = @prefix@ -local_prefix = /usr/local -exec_prefix = @exec_prefix@ -libdir = @libdir@ -includedir = @includedir@ -mandir = @mandir@ - -# Programs used by "make": -RM = rm -f -@SET_MAKE@ - -#### End of system configuration section. #### - -SHELL = /bin/sh - -all : force - cd @subdir@; $(MAKE) all - -install : force - cd @subdir@; $(MAKE) install - -installdirs : force - cd @subdir@; $(MAKE) installdirs - -uninstall : force - cd @subdir@; $(MAKE) uninstall - -check : force - cd @subdir@; $(MAKE) check - -extracheck : force - cd @subdir@; $(MAKE) extracheck - -mostlyclean : force - cd @subdir@; $(MAKE) mostlyclean - -clean : force - cd @subdir@; $(MAKE) clean - -distclean : force - cd @subdir@; if test -f Makefile; then $(MAKE) distclean; fi - $(RM) config.status config.log config.cache Makefile - -maintainer-clean : force - cd @subdir@; if test -f Makefile; then $(MAKE) maintainer-clean; fi - $(RM) config.status config.log config.cache Makefile - -force : - DELETED ffcall/Makefile.mingw32 Index: ffcall/Makefile.mingw32 ================================================================== --- ffcall/Makefile.mingw32 +++ /dev/null @@ -1,65 +0,0 @@ -# -*-Makefile-*- for ffcall - -#### Start of system configuration section. #### - -# Directories used by "make install": -prefix = /usr/local -local_prefix = /usr/local -exec_prefix = $(prefix) -libdir = $(exec_prefix)/lib -includedir = $(prefix)/include -mandir = $(prefix)/man - -# Programs used by "make": -RM = rm -f - -#### End of system configuration section. #### - -SHELL = /bin/sh - -all : force - $(MAKE) -C avcall -f Makefile.mingw32 all - $(MAKE) -C vacall -f Makefile.mingw32 all - $(MAKE) -C trampoline -f Makefile.mingw32 all - $(MAKE) -C callback -f Makefile.mingw32 all - -check : force - $(MAKE) -C avcall -f Makefile.mingw32 check - $(MAKE) -C vacall -f Makefile.mingw32 check - $(MAKE) -C trampoline -f Makefile.mingw32 check - $(MAKE) -C callback -f Makefile.mingw32 check - -extracheck : force - $(MAKE) -C avcall -f Makefile.mingw32 extracheck - $(MAKE) -C vacall -f Makefile.mingw32 extracheck - $(MAKE) -C trampoline -f Makefile.mingw32 extracheck - $(MAKE) -C callback -f Makefile.mingw32 extracheck - -mostlyclean : force - $(MAKE) -C avcall -f Makefile.mingw32 mostlyclean - $(MAKE) -C vacall -f Makefile.mingw32 mostlyclean - $(MAKE) -C trampoline -f Makefile.mingw32 mostlyclean - $(MAKE) -C callback -f Makefile.mingw32 mostlyclean - -clean : force - $(MAKE) -C avcall -f Makefile.mingw32 clean - $(MAKE) -C vacall -f Makefile.mingw32 clean - $(MAKE) -C trampoline -f Makefile.mingw32 clean - $(MAKE) -C callback -f Makefile.mingw32 clean - -distclean : force - $(MAKE) -C avcall -f Makefile.mingw32 distclean - $(MAKE) -C vacall -f Makefile.mingw32 distclean - $(MAKE) -C trampoline -f Makefile.mingw32 distclean - $(MAKE) -C callback -f Makefile.mingw32 distclean - $(RM) config.status config.log config.cache Makefile - -maintainer-clean : force - $(MAKE) -C avcall -f Makefile.mingw32 maintainer-clean - $(MAKE) -C vacall -f Makefile.mingw32 maintainer-clean - $(MAKE) -C trampoline -f Makefile.mingw32 maintainer-clean - $(MAKE) -C callback -f Makefile.mingw32 maintainer-clean - $(RM) config.status config.log config.cache Makefile - -force : - DELETED ffcall/Makefile.msvc Index: ffcall/Makefile.msvc ================================================================== --- ffcall/Makefile.msvc +++ /dev/null @@ -1,107 +0,0 @@ -# -*- Makefile -*- for ffcall - -#### Start of system configuration section. #### - -# Directories used by "make install": -prefix = /usr/local -local_prefix = /usr/local -exec_prefix = $(prefix) -libdir = $(exec_prefix)/lib -includedir = $(prefix)/include -mandir = $(prefix)/man - -# Programs used by "make": -RM = -del - -#### End of system configuration section. #### - -SHELL = /bin/sh - -all : force - cd avcall - $(MAKE) -f Makefile.msvc all - cd .. - cd vacall - $(MAKE) -f Makefile.msvc all - cd .. - cd trampoline - $(MAKE) -f Makefile.msvc all - cd .. - cd callback - $(MAKE) -f Makefile.msvc all - cd .. - -check : force - cd avcall - $(MAKE) -f Makefile.msvc check - cd .. - cd vacall - $(MAKE) -f Makefile.msvc check - cd .. - cd trampoline - $(MAKE) -f Makefile.msvc check - cd .. - cd callback - $(MAKE) -f Makefile.msvc check - cd .. - -mostlyclean : force - cd avcall - $(MAKE) -f Makefile.msvc mostlyclean - cd .. - cd vacall - $(MAKE) -f Makefile.msvc mostlyclean - cd .. - cd trampoline - $(MAKE) -f Makefile.msvc mostlyclean - cd .. - cd callback - $(MAKE) -f Makefile.msvc mostlyclean - cd .. - -clean : force - cd avcall - $(MAKE) -f Makefile.msvc clean - cd .. - cd vacall - $(MAKE) -f Makefile.msvc clean - cd .. - cd trampoline - $(MAKE) -f Makefile.msvc clean - cd .. - cd callback - $(MAKE) -f Makefile.msvc clean - cd .. - -distclean : force - cd avcall - $(MAKE) -f Makefile.msvc distclean - cd .. - cd vacall - $(MAKE) -f Makefile.msvc distclean - cd .. - cd trampoline - $(MAKE) -f Makefile.msvc distclean - cd .. - cd callback - $(MAKE) -f Makefile.msvc distclean - cd .. - $(RM) config.status config.log config.cache Makefile - -maintainer-clean : force - cd avcall - $(MAKE) -f Makefile.msvc maintainer-clean - cd .. - cd vacall - $(MAKE) -f Makefile.msvc maintainer-clean - cd .. - cd trampoline - $(MAKE) -f Makefile.msvc maintainer-clean - cd .. - cd callback - $(MAKE) -f Makefile.msvc maintainer-clean - cd .. - $(RM) config.status config.log config.cache Makefile - -force : - DELETED ffcall/NEWS Index: ffcall/NEWS ================================================================== --- ffcall/NEWS +++ /dev/null @@ -1,72 +0,0 @@ -New in 1.9: - -* Added support for x86_64 (AMD64) Linux. -* Added support for PowerPC MacOS X. - -New in 1.8: - -* Added support for IA-64 Linux. - -New in 1.7: - -* Struct types containing elements other than int, long, long long, pointer - are not supported any more. Passing them as arguments and results is too - hairy. -* Added support for PowerPC Linux. - -New in 1.6: - -* The avcall and callback packages are compiled as position-independent code, - if CC="gcc -fPIC". -* The avcall and callback packages are built as shared libraries, if - the option "--enable-shared" is passed to configure. -* The package can now be built with CC="gcc -x c++". -* Improved RS6000/PowerPC support. -* Improved support for gcc on Irix6 (-n32 ABI). -* Added preliminary support for 64-bit SPARC. - -New in 1.5: - -* Added support for m68k Linux. - -New in 1.4: - -* Added support for the two new ABIs on Irix6 (-n32, -64). -* A fix for DEC Alpha. - -New in 1.3.1: - -* Added support for Mingw32 on Win32. -* Fixed a compilation problem in trampoline on m68k NetBSD. -* Fixed an installation problem with clisp: When configured outside the source - directory, callback.h would not be copied into the build directory. - -New in 1.3: - -* Added the callback package, a reentrant combination of vacall and trampoline. -* The avcall and callback packages are multithread-safe. -* Fixed bugs in trampoline on hppa and rs6000. -* On hppa, added support for gcc-2.7.2, although its calling convention is - different from gcc-2.6.3. - -New in 1.2.1: - -* Added support for MSVC5 on Win32. - -New in 1.2: - -* Support passing/returning values of type `long long' and `unsigned long long' - on platforms which have these types. -* Support for "stdcall" calling convention on i386. -* Added support for Cygwin32 and MSVC4 on Win32. -* Added support for EMX on OS/2. -* Added support for m68k AmigaOS (Jörg Höhle). -* Added support for m68k SunOS 4.0.3. -* More reliable cache-flushing in trampoline. - -New in 1.1: - -* Added support for SUNWspro cc on Sparc Solaris. -* Added support for AIX 4. -* Added preliminary support for 64-bit MIPS. - DELETED ffcall/PLATFORMS Index: ffcall/PLATFORMS ================================================================== --- ffcall/PLATFORMS +++ /dev/null @@ -1,28 +0,0 @@ -Supported CPUs: (Put the GNU config.guess values here.) - i386 i486-unknown-linux (gcc), - i386-unknown-sysv4.0 (gcc, /usr/bin/cc, /usr/ucb/cc), - i386-pc-solaris2.6 (gcc), - i486-unknown-sco3.2v4.2 (gcc, cc -Of), - i486-unknown-os2emx (gcc), i386-pc-cygwin32 (gcc), - i386-pc-win32 (msvc4, msvc5) - m68k m68k-next-nextstep3 (cc), m68k-sun-sunos4.0 (cc), - m68k-unknown-linux (gcc) - mips mips-sgi-irix4.0.5 (gcc, cc -ansi, cc -D__STDC__, cc -cckr), - mips-sgi-irix5.2 (gcc, cc -ansi, cc -D__STDC__, cc -cckr), - mips-sgi-irix5.3 (gcc, cc -ansi, cc -D__STDC__, cc -cckr), - mips-sgi-irix6.2 (cc -32), - mips-sgi-irix6.4 (cc -32, cc -n32, cc -64) - BUG: mips-sgi-irix6.5 (cc -n32) is broken. gcc works. - sparc sparc-sun-sunos4.1.1 (gcc, cc), sparc-sun-solaris2.3 (gcc) - sparc-sun-solaris2.4 (gcc, cc) - alpha alpha-dec-osf3.0 (gcc, cc), alpha-dec-osf4.0 (gcc, cc) - hppa hppa1.0-hp-hpux8.00 (gcc, cc), hppa1.1-hp-hpux9.05 (cc), - hppa1.1-hp-hpux10.01 (cc), hppa2.0-hp-hpux10.20 (cc +DA1.1) - arm -- untested - rs6000 rs6000-ibm-aix3.2.5 (gcc, c89, xlc), powerpc-ibm-aix4.1.4.0 (cc), - powerpc-unknown-linux (gcc), powerpc-apple-darwin6.8 (gcc) - m88k -- untested - convex -- untested - ia64 ia64-unknown-linux (gcc) - x86_64 x86_64-suse-linux (gcc) - DELETED ffcall/README Index: ffcall/README ================================================================== --- ffcall/README +++ /dev/null @@ -1,68 +0,0 @@ -ffcall - foreign function call libraries - -This is a collection of four libraries which can be used to build -foreign function call interfaces in embedded interpreters. - -The four packages are: - - avcall - calling C functions with variable arguments - - vacall - C functions accepting variable argument prototypes - - trampoline - closures as first-class C functions - - callback - closures with variable arguments as first-class C functions - (a reentrant combination of vacall and trampoline) - - -Installation instructions: - - ./configure - make - make check - make install - - -Files in this package: - - Documentation: - - README this text - COPYING free software license - PLATFORMS list of supported platforms - - Source: - - avcall/* the avcall package - vacall/* the vacall package - trampoline/* the trampoline package - callback/* the callback package - - Installation: - - configure configuration script - configure.in autoconf-2.10 source for the configuration script - autoconf/* auxiliary configuration scripts - Makefile.in Makefile master - - -Copyright notice: - -Copyright 1995-2004 Bruno Haible, -Copyright 2000 Adam Fedor -Copyright 2004 Paul Guyot - -This is free software distributed under the GNU General Public Licence -described in the file COPYING. Contact the author if you don't have this -or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, -on this software. - - -Distribution: - -http://www.haible.de/bruno/gnu/ffcall-1.10.tar.gz -ftp://ftp.santafe.edu/pub/gnu/ffcall-1.10.tar.gz - -Homepage: - -http://www.haible.de/bruno/packages-ffcall.html DELETED ffcall/README.os2 Index: ffcall/README.os2 ================================================================== --- ffcall/README.os2 +++ /dev/null @@ -1,10 +0,0 @@ -Installation on OS/2: - -- Requires emx+gcc and a working shell (Bourne shell, Korn shell or GNU bash). - -- Set the environment variables CC=gcc CFLAGS="-Zexe" before calling - `configure'. - -- Must build in a separate directory and pass the --srcdir option to - `configure', otherwise avcall-i386.s will overwrite avcall-i386.S. - DELETED ffcall/README.win32 Index: ffcall/README.win32 ================================================================== --- ffcall/README.win32 +++ /dev/null @@ -1,17 +0,0 @@ -Installation on Win32 (WinNT, Win95): - -- Requires MS Visual C/C++ 4.0 or 5.0. - -- Cannot build in a separate directory. - -- Build instructions: - - Make sure that the MSVC4.0 or MSVC5.0 utilities ("cl" etc.) are found in - PATH. - - nmake -f Makefile.msvc - -- Installation: - - Copy avcall/avcall.lib, vacall/vacall.lib, trampoline/trampoline.lib, - callback/callback.lib to your library repository. DELETED ffcall/autoconf/aclocal.m4 Index: ffcall/autoconf/aclocal.m4 ================================================================== --- ffcall/autoconf/aclocal.m4 +++ /dev/null @@ -1,4877 +0,0 @@ -# generated automatically by aclocal 1.7.9 -*- Autoconf -*- - -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002 -# Free Software Foundation, Inc. -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -dnl Copyright (C) 1993-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels, Sam Steingold. - -AC_PREREQ(2.13) - -dnl without AC_MSG_...: with AC_MSG_... and caching: -dnl AC_TRY_CPP CL_CPP_CHECK -dnl AC_TRY_COMPILE CL_COMPILE_CHECK -dnl AC_TRY_LINK CL_LINK_CHECK -dnl AC_TRY_RUN CL_RUN_CHECK - would require cross-compiling support -dnl Usage: -dnl AC_TRY_CPP(INCLUDES, -dnl ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]) -dnl CL_CPP_CHECK(ECHO-TEXT, CACHE-ID, -dnl INCLUDES, -dnl ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]) -dnl AC_TRY_xxx(INCLUDES, FUNCTION-BODY, -dnl ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]) -dnl CL_xxx_CHECK(ECHO-TEXT, CACHE-ID, -dnl INCLUDES, FUNCTION-BODY, -dnl ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]) - -AC_DEFUN([CL_CPP_CHECK], -[AC_MSG_CHECKING(for $1) -AC_CACHE_VAL($2,[ -AC_TRY_CPP([$3], $2=yes, $2=no) -]) -AC_MSG_RESULT([$]$2) -if test [$]$2 = yes; then - ifelse([$4], , :, [$4]) -ifelse([$5], , , [else - $5 -])dnl -fi -]) - -AC_DEFUN([CL_COMPILE_CHECK], -[AC_MSG_CHECKING(for $1) -AC_CACHE_VAL($2,[ -AC_TRY_COMPILE([$3],[$4], $2=yes, $2=no) -]) -AC_MSG_RESULT([$]$2) -if test [$]$2 = yes; then - ifelse([$5], , :, [$5]) -ifelse([$6], , , [else - $6 -])dnl -fi -]) - -AC_DEFUN([CL_LINK_CHECK], -[AC_MSG_CHECKING(for $1) -AC_CACHE_VAL($2,[ -AC_TRY_LINK([$3],[$4], $2=yes, $2=no) -]) -AC_MSG_RESULT([$]$2) -if test [$]$2 = yes; then - ifelse([$5], , :, [$5]) -ifelse([$6], , , [else - $6 -])dnl -fi -]) - -dnl CL_SILENT(ACTION) -dnl performs ACTION, with AC_MSG_CHECKING and AC_MSG_RESULT being defined away. -AC_DEFUN([CL_SILENT], -[pushdef([AC_MSG_CHECKING],[:])dnl -pushdef([AC_CHECKING],[:])dnl -pushdef([AC_MSG_RESULT],[:])dnl -$1[]dnl -popdef([AC_MSG_RESULT])dnl -popdef([AC_CHECKING])dnl -popdef([AC_MSG_CHECKING])dnl -]) - -dnl Expands to the "extern ..." prefix used for system declarations. -dnl AC_LANG_EXTERN() -AC_DEFUN([AC_LANG_EXTERN], -[extern -#ifdef __cplusplus -"C" -#endif -]) - -AC_DEFUN([CL_CC_WORKS], -[AC_CACHE_CHECK(whether CC works at all, cl_cv_prog_cc_works, [ -AC_LANG_SAVE() -AC_LANG_C() -AC_TRY_RUN([int main() { exit(0); }], -cl_cv_prog_cc_works=yes, cl_cv_prog_cc_works=no, -AC_TRY_LINK([], [], cl_cv_prog_cc_works=yes, cl_cv_prog_cc_works=no)) -AC_LANG_RESTORE() -]) -case "$cl_cv_prog_cc_works" in - *no) echo "Installation or configuration problem: C compiler cannot create executables."; exit 1;; - *yes) ;; -esac -]) - -AC_DEFUN([CL_CONFIG_SUBDIRS], -[dnl No AC_CONFIG_AUX_DIR_DEFAULT, so we don't need install.sh. -AC_PROVIDE([AC_CONFIG_AUX_DIR_DEFAULT]) -AC_CONFIG_SUBDIRS([$1])dnl -]) - -AC_DEFUN([CL_CANONICAL_HOST], -[AC_REQUIRE([AC_PROG_CC]) dnl Actually: AC_REQUIRE([CL_CC_WORKS]) -dnl Set ac_aux_dir before the cache check, because AM_PROG_LIBTOOL needs it. -ac_aux_dir=${srcdir}/$1 -dnl A substitute for AC_CONFIG_AUX_DIR_DEFAULT, so we don't need install.sh. -ac_config_guess="$SHELL $ac_aux_dir/config.guess" -ac_config_sub="$SHELL $ac_aux_dir/config.sub" -dnl We have defined $ac_aux_dir. -AC_PROVIDE([AC_CONFIG_AUX_DIR_DEFAULT])dnl -dnl In autoconf-2.52, a single AC_CANONICAL_HOST has the effect of inserting -dnl the code of AC_CANONICAL_BUILD *before* CL_CANONICAL_HOST, i.e. before -dnl ac_aux_dir has been set. To work around this, we list AC_CANONICAL_BUILD -dnl explicitly. -AC_CANONICAL_BUILD -AC_CANONICAL_HOST -]) - -AC_DEFUN([CL_CANONICAL_HOST_CPU], -[AC_REQUIRE([CL_CANONICAL_HOST])AC_REQUIRE([AC_PROG_CC]) -case "$host_cpu" in -changequote(,)dnl - i[4567]86 ) - host_cpu=i386 - ;; - alphaev[4-8] | alphaev56 | alphapca5[67] | alphaev6[78] ) - host_cpu=alpha - ;; - hppa1.0 | hppa1.1 | hppa2.0* | hppa64 ) - host_cpu=hppa - ;; - powerpc ) - host_cpu=rs6000 - ;; - c1 | c2 | c32 | c34 | c38 | c4 ) - host_cpu=convex - ;; - arm* ) - host_cpu=arm - ;; -changequote([,])dnl - mips ) - AC_CACHE_CHECK([for 64-bit MIPS], cl_cv_host_mips64, [ -AC_EGREP_CPP(yes, -[#if defined(_MIPS_SZLONG) -#if (_MIPS_SZLONG == 64) -/* We should also check for (_MIPS_SZPTR == 64), but gcc keeps this at 32. */ - yes -#endif -#endif -], cl_cv_host_mips64=yes, cl_cv_host_mips64=no) -]) -if test $cl_cv_host_mips64 = yes; then - host_cpu=mips64 -fi - ;; -dnl UltraSPARCs running Linux have `uname -m` = "sparc64", but the C compiler -dnl still generates 32-bit code. - sparc | sparc64 ) - AC_CACHE_CHECK([for 64-bit SPARC], cl_cv_host_sparc64, [ -AC_EGREP_CPP(yes, -[#if defined(__sparcv9) || defined(__arch64__) - yes -#endif -], cl_cv_host_sparc64=yes, cl_cv_host_sparc64=no) -]) -if test $cl_cv_host_sparc64 = yes; then - host_cpu=sparc64 -else - host_cpu=sparc -fi - ;; -esac -dnl was AC_DEFINE_UNQUOTED(__${host_cpu}__) but KAI C++ 3.2d doesn't like this -cat >> confdefs.h <= 3 - yes -#endif -], cl_cv_host_mipsn32=yes, cl_cv_host_mipsn32=no) -]) -if test $cl_cv_host_mipsn32 = yes; then - host_cpu=mipsn32 -fi -fi - ;; -dnl UltraSPARCs running Linux have `uname -m` = "sparc64", but the C compiler -dnl still generates 32-bit code. - sparc | sparc64 ) - AC_CACHE_CHECK([for 64-bit SPARC], cl_cv_host_sparc64, [ -AC_EGREP_CPP(yes, -[#if defined(__sparcv9) || defined(__arch64__) - yes -#endif -], cl_cv_host_sparc64=yes, cl_cv_host_sparc64=no) -]) -if test $cl_cv_host_sparc64 = yes; then - host_cpu=sparc64 -else - host_cpu=sparc -fi - ;; -esac -dnl was AC_DEFINE_UNQUOTED(__${host_cpu}__) but KAI C++ 3.2d doesn't like this -cat >> confdefs.h < conftest.c </dev/null 2>&1 -if grep _foo conftest.s >/dev/null ; then - cl_cv_prog_as_underscore=yes -else - cl_cv_prog_as_underscore=no -fi -rm -f conftest* -]) -if test $cl_cv_prog_as_underscore = yes; then - AS_UNDERSCORE=true - AC_DEFINE(ASM_UNDERSCORE,,[symbols are prefixed by an underscore in assembly language]) -else - AS_UNDERSCORE=false -fi -AC_SUBST(AS_UNDERSCORE)dnl -]) - -dnl Copyright (C) 1993-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels. - -AC_PREREQ(2.13) - -AC_DEFUN([CL_PROG_RANLIB], -[AC_CHECK_PROG(RANLIB, ranlib, ranlib, true)]) - -dnl Copyright (C) 1993-2004 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels. - -AC_PREREQ(2.13) - -AC_DEFUN([CL_PROG_INSTALL], -[dnl This is mostly copied from AC_PROG_INSTALL. -# Find a good install program. We prefer a C program (faster), -# so one script is as good as another. But avoid the broken or -# incompatible versions: -# SysV /etc/install, /usr/sbin/install -# SunOS /usr/etc/install -# IRIX /sbin/install -# AIX /bin/install -# AFS /usr/afsws/bin/install, which mis-handles nonexistent args -# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" -# ./install, which can be erroneously created by make from ./install.sh. -AC_MSG_CHECKING(for a BSD compatible install) -if test -z "$INSTALL"; then -AC_CACHE_VAL(cl_cv_path_install, -[ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" - for ac_dir in $PATH; do - # Account for people who put trailing slashes in PATH elements. - case "$ac_dir/" in - /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;; - *) - # OSF1 and SCO ODT 3.0 have their own names for install. - # Don't use installbsd from OSF since it installs stuff as root - # by default. - for ac_prog in ginstall scoinst install; do - if test -f $ac_dir/$ac_prog; then - if test $ac_prog = install && - grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then - # AIX install. It has an incompatible calling convention. - : - else - cl_cv_path_install="$ac_dir/$ac_prog -c" - break 2 - fi - fi - done - ;; - esac - done - IFS="$ac_save_ifs" - # As a last resort, use the absolute pathname of cp. - if test -z "$cl_cv_path_install"; then - cl_cv_path_install="cp" - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" - for ac_dir in $PATH; do - if test -f $ac_dir/cp; then - cl_cv_path_install="$ac_dir/cp" - break - fi - done - IFS="$ac_save_ifs" - fi -])dnl - INSTALL="$cl_cv_path_install" -fi -dnl We do special magic for INSTALL instead of AC_SUBST, to get -dnl relative paths right. -AC_MSG_RESULT($INSTALL) -AC_SUBST(INSTALL)dnl -# Use test -z because SunOS4 sh mishandles braces in ${var-val}. -# It thinks the first close brace ends the variable substitution. -test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='$(INSTALL)' -AC_SUBST(INSTALL_PROGRAM)dnl -if test -z "$INSTALL_DATA"; then - case "$INSTALL" in - cp | */cp ) INSTALL_DATA='$(INSTALL)' ;; - * ) INSTALL_DATA='$(INSTALL) -m 644' ;; - esac -fi -AC_SUBST(INSTALL_DATA)dnl -]) - -dnl Copyright (C) 1993-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels. - -AC_PREREQ(2.13) - -AC_DEFUN([CL_PROG_CP], -[AC_CACHE_CHECK(how to copy files, cl_cv_prog_cp, [ -echo "blabla" > conftest.x -err=`/bin/sh -c "cp -p conftest.x conftest.y 2>&1"` -if test -z "$err"; then - cl_cv_prog_cp='cp -p' -else - cl_cv_prog_cp='cp' -fi -rm -f conftest* -]) -CP="$cl_cv_prog_cp" -AC_SUBST(CP)dnl -]) - -dnl -*- Autoconf -*- -dnl Copyright (C) 1993-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels, Sam Steingold. - -AC_PREREQ(2.13) - -AC_DEFUN([CL_PROG_LN], -[AC_REQUIRE([CL_PROG_CP])dnl -AC_CACHE_CHECK(how to make hard links, cl_cv_prog_LN, [ -rm -f conftestdata conftestfile -echo data > conftestfile -if ln conftestfile conftestdata 2>/dev/null; then - cl_cv_prog_LN=ln -else - cl_cv_prog_LN="$cl_cv_prog_cp" -fi -rm -f conftestdata conftestfile -]) -LN="$cl_cv_prog_LN" -AC_SUBST(LN)dnl -]) - -AC_DEFUN([CL_PROG_LN_S], -[AC_REQUIRE([CL_PROG_LN])dnl -dnl Make a symlink if possible; otherwise try a hard link. On filesystems -dnl which support neither symlink nor hard link, use a plain copy. -AC_MSG_CHECKING(whether ln -s works) -AC_CACHE_VAL(cl_cv_prog_LN_S, [ -rm -f conftestdata -if ln -s X conftestdata 2>/dev/null; then - cl_cv_prog_LN_S="ln -s" -else - cl_cv_prog_LN_S="$cl_cv_prog_LN" -fi -rm -f conftestdata -])dnl -if test "$cl_cv_prog_LN_S" = "ln -s"; then - AC_MSG_RESULT(yes) -else - AC_MSG_RESULT(no) -fi -LN_S="$cl_cv_prog_LN_S" -AC_SUBST(LN_S)dnl -]) - -AC_DEFUN([CL_PROG_HLN], -[AC_REQUIRE([CL_PROG_LN_S])dnl -dnl according to the Linux ln(1): -dnl "making a hard link to a symbolic link is not portable": -dnl SVR4 (Solaris, Linux) create symbolic links -dnl (breaks when the target is relative) -dnl Cygwin (1.3.12) is even worse: it makes hard links to the symbolic link, -dnl instead of resolving the symbolic link. -dnl Good behavior means creating a hard link to the symbolic link's target. -dnl To avoid this, use the "hln" program. -AC_CACHE_CHECK(how to make hard links to symlinks, cl_cv_prog_hln, [ -cl_cv_prog_hln="ln" -if test "$cl_cv_prog_LN_S" = "ln -s"; then -echo "blabla" > conftest.x -ln -s conftest.x conftest.y -mkdir conftest.d -cd conftest.d -ln ../conftest.y conftest.z 2>&AC_FD_CC -data=`cat conftest.z 2>/dev/null` -if test "$data" = "blabla" ; then - # conftest.z contains the correct data -- good! - cl_cv_prog_hln="ln" -else - # ln cannot link to symbolic links - cl_cv_prog_hln="hln" -fi -cd .. -rm -fr conftest.* -else -# If there are no symbolic links, the problem cannot occur. -cl_cv_prog_hln="ln" -fi -]) -HLN="$cl_cv_prog_hln" -AC_SUBST(HLN)dnl -]) - -# libtool.m4 - Configure libtool for the host system. -*-Shell-script-*- - -# serial 46 AC_PROG_LIBTOOL - -AC_DEFUN([AC_PROG_LIBTOOL], -[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl - -# This can be used to rebuild libtool when needed -LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh" - -# Always use our own libtool. -LIBTOOL='$(SHELL) $(top_builddir)/libtool' -AC_SUBST(LIBTOOL)dnl - -# Prevent multiple expansion -define([AC_PROG_LIBTOOL], []) -]) - -AC_DEFUN([AC_LIBTOOL_SETUP], -[AC_PREREQ(2.13)dnl -AC_REQUIRE([AC_ENABLE_SHARED])dnl -AC_REQUIRE([AC_ENABLE_STATIC])dnl -AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl -AC_REQUIRE([CL_CANONICAL_HOST])dnl -AC_REQUIRE([AC_CANONICAL_BUILD])dnl -AC_REQUIRE([AC_PROG_CC])dnl -AC_REQUIRE([AC_PROG_LD])dnl -AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl -AC_REQUIRE([AC_PROG_NM])dnl -AC_REQUIRE([LT_AC_PROG_SED])dnl - -AC_REQUIRE([CL_PROG_LN_S])dnl -AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl -AC_REQUIRE([AC_OBJEXT])dnl -AC_REQUIRE([AC_EXEEXT])dnl -dnl - -_LT_AC_PROG_ECHO_BACKSLASH -# Only perform the check for file, if the check method requires it -case $deplibs_check_method in -file_magic*) - if test "$file_magic_cmd" = '$MAGIC_CMD'; then - AC_PATH_MAGIC - fi - ;; -esac - -AC_CHECK_TOOL(RANLIB, ranlib, :) -AC_CHECK_TOOL(STRIP, strip, :) - -ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN], enable_dlopen=yes, enable_dlopen=no) -ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], -enable_win32_dll=yes, enable_win32_dll=no) - -AC_ARG_ENABLE(libtool-lock, - [ --disable-libtool-lock avoid locking (might break parallel builds)]) -test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes - -# Some flags need to be propagated to the compiler or linker for good -# libtool support. -case $host in -*-*-irix6*) - # Find out which ABI we are using. - echo '[#]line __oline__ "configure"' > conftest.$ac_ext - if AC_TRY_EVAL(ac_compile); then - case `/usr/bin/file conftest.$ac_objext` in - *32-bit*) - LD="${LD-ld} -32" - ;; - *N32*) - LD="${LD-ld} -n32" - ;; - *64-bit*) - LD="${LD-ld} -64" - ;; - esac - fi - rm -rf conftest* - ;; - -*-*-sco3.2v5*) - # On SCO OpenServer 5, we need -belf to get full-featured binaries. - SAVE_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -belf" - AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, - [AC_LANG_SAVE - AC_LANG_C - AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) - AC_LANG_RESTORE]) - if test x"$lt_cv_cc_needs_belf" != x"yes"; then - # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf - CFLAGS="$SAVE_CFLAGS" - fi - ;; - -ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], -[*-*-cygwin* | *-*-mingw* | *-*-pw32*) - AC_CHECK_TOOL(DLLTOOL, dlltool, false) - AC_CHECK_TOOL(AS, as, false) - AC_CHECK_TOOL(OBJDUMP, objdump, false) - - # recent cygwin and mingw systems supply a stub DllMain which the user - # can override, but on older systems we have to supply one - AC_CACHE_CHECK([if libtool should supply DllMain function], lt_cv_need_dllmain, - [AC_TRY_LINK([], - [extern int __attribute__((__stdcall__)) DllMain(void*, int, void*); - DllMain (0, 0, 0);], - [lt_cv_need_dllmain=no],[lt_cv_need_dllmain=yes])]) - - case $host/$CC in - *-*-cygwin*/gcc*-mno-cygwin*|*-*-mingw*) - # old mingw systems require "-dll" to link a DLL, while more recent ones - # require "-mdll" - SAVE_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -mdll" - AC_CACHE_CHECK([how to link DLLs], lt_cv_cc_dll_switch, - [AC_TRY_LINK([], [], [lt_cv_cc_dll_switch=-mdll],[lt_cv_cc_dll_switch=-dll])]) - CFLAGS="$SAVE_CFLAGS" ;; - *-*-cygwin* | *-*-pw32*) - # cygwin systems need to pass --dll to the linker, and not link - # crt.o which will require a WinMain@16 definition. - lt_cv_cc_dll_switch="-Wl,--dll -nostartfiles" ;; - esac - ;; - ]) -esac - -_LT_AC_LTCONFIG_HACK - -]) - -# AC_LIBTOOL_HEADER_ASSERT -# ------------------------ -AC_DEFUN([AC_LIBTOOL_HEADER_ASSERT], -[AC_CACHE_CHECK([whether $CC supports assert without backlinking], - [lt_cv_func_assert_works], - [case $host in - *-*-solaris*) - if test "$GCC" = yes && test "$with_gnu_ld" != yes; then - case `$CC --version 2>/dev/null` in - [[12]].*) lt_cv_func_assert_works=no ;; - *) lt_cv_func_assert_works=yes ;; - esac - fi - ;; - esac]) - -if test "x$lt_cv_func_assert_works" = xyes; then - AC_CHECK_HEADERS(assert.h) -fi -])# AC_LIBTOOL_HEADER_ASSERT - -# _LT_AC_CHECK_DLFCN -# -------------------- -AC_DEFUN([_LT_AC_CHECK_DLFCN], -[AC_CHECK_HEADERS(dlfcn.h) -])# _LT_AC_CHECK_DLFCN - -# AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE -# --------------------------------- -AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], -[AC_REQUIRE([CL_CANONICAL_HOST]) -AC_REQUIRE([AC_PROG_NM]) -AC_REQUIRE([AC_OBJEXT]) -# Check for command to grab the raw symbol name followed by C symbol from nm. -AC_MSG_CHECKING([command to parse $NM output]) -AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe], [dnl - -# These are sane defaults that work on at least a few old systems. -# [They come from Ultrix. What could be older than Ultrix?!! ;)] - -# Character class describing NM global symbol codes. -symcode='[[BCDEGRST]]' - -# Regexp to match symbols that can be accessed directly from C. -sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)' - -# Transform the above into a raw symbol and a C symbol. -symxfrm='\1 \2\3 \3' - -# Transform an extracted symbol line into a proper C declaration -lt_cv_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'" - -# Transform an extracted symbol line into symbol name and symbol address -lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" - -# Define system-specific variables. -case $host_os in -aix*) - symcode='[[BCDT]]' - ;; -cygwin* | mingw* | pw32*) - symcode='[[ABCDGISTW]]' - ;; -hpux*) # Its linker distinguishes data from code symbols - lt_cv_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" - lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" - ;; -irix* | nonstopux*) - symcode='[[BCDEGRST]]' - ;; -osf*) - symcode='[[BCDEGQRST]]' - ;; -solaris* | sysv5*) - symcode='[[BDT]]' - ;; -sysv4) - symcode='[[DFNSTU]]' - ;; -esac - -# Handle CRLF in mingw tool chain -opt_cr= -case $host_os in -mingw*) - opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp - ;; -esac - -# If we're using GNU nm, then use its standard symbol codes. -if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then - symcode='[[ABCDGISTW]]' -fi - -# Try without a prefix undercore, then with it. -for ac_symprfx in "" "_"; do - - # Write the raw and C identifiers. -lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'" - - # Check to see that the pipe works correctly. - pipe_works=no - rm -f conftest* - cat > conftest.$ac_ext < $nlist) && test -s "$nlist"; then - # Try sorting and uniquifying the output. - if sort "$nlist" | uniq > "$nlist"T; then - mv -f "$nlist"T "$nlist" - else - rm -f "$nlist"T - fi - - # Make sure that we snagged all the symbols we need. - if egrep ' nm_test_var$' "$nlist" >/dev/null; then - if egrep ' nm_test_func$' "$nlist" >/dev/null; then - cat < conftest.$ac_ext -#ifdef __cplusplus -extern "C" { -#endif - -EOF - # Now generate the symbol file. - eval "$lt_cv_global_symbol_to_cdecl"' < "$nlist" >> conftest.$ac_ext' - - cat <> conftest.$ac_ext -#if defined (__STDC__) && __STDC__ -# define lt_ptr void * -#else -# define lt_ptr char * -# define const -#endif - -/* The mapping between symbol names and symbols. */ -const struct { - const char *name; - lt_ptr address; -} -lt_preloaded_symbols[[]] = -{ -EOF - sed "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (lt_ptr) \&\2},/" < "$nlist" >> conftest.$ac_ext - cat <<\EOF >> conftest.$ac_ext - {0, (lt_ptr) 0} -}; - -#ifdef __cplusplus -} -#endif -EOF - # Now try linking the two files. - mv conftest.$ac_objext conftstm.$ac_objext - save_LIBS="$LIBS" - save_CFLAGS="$CFLAGS" - LIBS="conftstm.$ac_objext" - CFLAGS="$CFLAGS$no_builtin_flag" - if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then - pipe_works=yes - fi - LIBS="$save_LIBS" - CFLAGS="$save_CFLAGS" - else - echo "cannot find nm_test_func in $nlist" >&AC_FD_CC - fi - else - echo "cannot find nm_test_var in $nlist" >&AC_FD_CC - fi - else - echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AC_FD_CC - fi - else - echo "$progname: failed program was:" >&AC_FD_CC - cat conftest.$ac_ext >&5 - fi - rm -f conftest* conftst* - - # Do not use the global_symbol_pipe unless it works. - if test "$pipe_works" = yes; then - break - else - lt_cv_sys_global_symbol_pipe= - fi -done -]) -global_symbol_pipe="$lt_cv_sys_global_symbol_pipe" -if test -z "$lt_cv_sys_global_symbol_pipe"; then - global_symbol_to_cdecl= - global_symbol_to_c_name_address= -else - global_symbol_to_cdecl="$lt_cv_global_symbol_to_cdecl" - global_symbol_to_c_name_address="$lt_cv_global_symbol_to_c_name_address" -fi -if test -z "$global_symbol_pipe$global_symbol_to_cdec$global_symbol_to_c_name_address"; -then - AC_MSG_RESULT(failed) -else - AC_MSG_RESULT(ok) -fi -]) # AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE - -# _LT_AC_LIBTOOL_SYS_PATH_SEPARATOR -# --------------------------------- -AC_DEFUN([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR], -[# Find the correct PATH separator. Usually this is `:', but -# DJGPP uses `;' like DOS. -if test "X${PATH_SEPARATOR+set}" != Xset; then - UNAME=${UNAME-`uname 2>/dev/null`} - case X$UNAME in - *-DOS) lt_cv_sys_path_separator=';' ;; - *) lt_cv_sys_path_separator=':' ;; - esac - PATH_SEPARATOR=$lt_cv_sys_path_separator -fi -])# _LT_AC_LIBTOOL_SYS_PATH_SEPARATOR - -# _LT_AC_PROG_ECHO_BACKSLASH -# -------------------------- -# Add some code to the start of the generated configure script which -# will find an echo command which doesn't interpret backslashes. -AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH], -[ifdef([AC_DIVERSION_NOTICE], [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)], - [AC_DIVERT_PUSH(NOTICE)]) -_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR - -# Check that we are running under the correct shell. -SHELL=${CONFIG_SHELL-/bin/sh} - -case X$ECHO in -X*--fallback-echo) - # Remove one level of quotation (which was required for Make). - ECHO=`echo "$ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','` - ;; -esac - -echo=${ECHO-echo} -if test "X[$]1" = X--no-reexec; then - # Discard the --no-reexec flag, and continue. - shift -elif test "X[$]1" = X--fallback-echo; then - # Avoid inline document here, it may be left over - : -elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then - # Yippee, $echo works! - : -else - # Restart under the correct shell. - exec $SHELL "[$]0" --no-reexec ${1+"[$]@"} -fi - -if test "X[$]1" = X--fallback-echo; then - # used as fallback echo - shift - cat </dev/null && - echo_test_string="`eval $cmd`" && - (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null - then - break - fi - done -fi - -if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - : -else - # The Solaris, AIX, and Digital Unix default echo programs unquote - # backslashes. This makes it impossible to quote backslashes using - # echo "$something" | sed 's/\\/\\\\/g' - # - # So, first we look for a working echo in the user's PATH. - - IFS="${IFS= }"; save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for dir in $PATH /usr/ucb; do - if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && - test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - echo="$dir/echo" - break - fi - done - IFS="$save_ifs" - - if test "X$echo" = Xecho; then - # We didn't find a better echo, so look for alternatives. - if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - # This shell has a builtin print -r that does the trick. - echo='print -r' - elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) && - test "X$CONFIG_SHELL" != X/bin/ksh; then - # If we have ksh, try running configure again with it. - ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} - export ORIGINAL_CONFIG_SHELL - CONFIG_SHELL=/bin/ksh - export CONFIG_SHELL - exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"} - else - # Try using printf. - echo='printf %s\n' - if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - # Cool, printf works - : - elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && - test "X$echo_testing_string" = 'X\t' && - echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL - export CONFIG_SHELL - SHELL="$CONFIG_SHELL" - export SHELL - echo="$CONFIG_SHELL [$]0 --fallback-echo" - elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && - test "X$echo_testing_string" = 'X\t' && - echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - echo="$CONFIG_SHELL [$]0 --fallback-echo" - else - # maybe with a smaller string... - prev=: - - for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do - if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null - then - break - fi - prev="$cmd" - done - - if test "$prev" != 'sed 50q "[$]0"'; then - echo_test_string=`eval $prev` - export echo_test_string - exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"} - else - # Oops. We lost completely, so just stick with echo. - echo=echo - fi - fi - fi - fi -fi -fi - -# Copy echo and quote the copy suitably for passing to libtool from -# the Makefile, instead of quoting the original, which is used later. -ECHO=$echo -if test "X$ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then - ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo" -fi - -AC_SUBST(ECHO) -AC_DIVERT_POP -])# _LT_AC_PROG_ECHO_BACKSLASH - -# _LT_AC_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE, -# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING) -# ------------------------------------------------------------------ -AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF], -[if test "$cross_compiling" = yes; then : - [$4] -else - AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl - lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 - lt_status=$lt_dlunknown - cat > conftest.$ac_ext < -#endif - -#include - -#ifdef RTLD_GLOBAL -# define LT_DLGLOBAL RTLD_GLOBAL -#else -# ifdef DL_GLOBAL -# define LT_DLGLOBAL DL_GLOBAL -# else -# define LT_DLGLOBAL 0 -# endif -#endif - -/* We may have to define LT_DLLAZY_OR_NOW in the command line if we - find out it does not work in some platform. */ -#ifndef LT_DLLAZY_OR_NOW -# ifdef RTLD_LAZY -# define LT_DLLAZY_OR_NOW RTLD_LAZY -# else -# ifdef DL_LAZY -# define LT_DLLAZY_OR_NOW DL_LAZY -# else -# ifdef RTLD_NOW -# define LT_DLLAZY_OR_NOW RTLD_NOW -# else -# ifdef DL_NOW -# define LT_DLLAZY_OR_NOW DL_NOW -# else -# define LT_DLLAZY_OR_NOW 0 -# endif -# endif -# endif -# endif -#endif - -#ifdef __cplusplus -extern "C" void exit (int); -#endif - -void fnord() { int i=42;} -int main () -{ - void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); - int status = $lt_dlunknown; - - if (self) - { - if (dlsym (self,"fnord")) status = $lt_dlno_uscore; - else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; - /* dlclose (self); */ - } - - exit (status); -}] -EOF - if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then - (./conftest; exit; ) 2>/dev/null - lt_status=$? - case x$lt_status in - x$lt_dlno_uscore) $1 ;; - x$lt_dlneed_uscore) $2 ;; - x$lt_unknown|x*) $3 ;; - esac - else : - # compilation failed - $3 - fi -fi -rm -fr conftest* -])# _LT_AC_TRY_DLOPEN_SELF - -# AC_LIBTOOL_DLOPEN_SELF -# ------------------- -AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], -[if test "x$enable_dlopen" != xyes; then - enable_dlopen=unknown - enable_dlopen_self=unknown - enable_dlopen_self_static=unknown -else - lt_cv_dlopen=no - lt_cv_dlopen_libs= - - case $host_os in - beos*) - lt_cv_dlopen="load_add_on" - lt_cv_dlopen_libs= - lt_cv_dlopen_self=yes - ;; - - cygwin* | mingw* | pw32*) - lt_cv_dlopen="LoadLibrary" - lt_cv_dlopen_libs= - ;; - - *) - AC_CHECK_FUNC([shl_load], - [lt_cv_dlopen="shl_load"], - [AC_CHECK_LIB([dld], [shl_load], - [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"], - [AC_CHECK_FUNC([dlopen], - [lt_cv_dlopen="dlopen"], - [AC_CHECK_LIB([dl], [dlopen], - [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"], - [AC_CHECK_LIB([svld], [dlopen], - [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"], - [AC_CHECK_LIB([dld], [dld_link], - [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"]) - ]) - ]) - ]) - ]) - ]) - ;; - esac - - if test "x$lt_cv_dlopen" != xno; then - enable_dlopen=yes - else - enable_dlopen=no - fi - - case $lt_cv_dlopen in - dlopen) - save_CPPFLAGS="$CPPFLAGS" - AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl - test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" - - save_LDFLAGS="$LDFLAGS" - eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" - - save_LIBS="$LIBS" - LIBS="$lt_cv_dlopen_libs $LIBS" - - AC_CACHE_CHECK([whether a program can dlopen itself], - lt_cv_dlopen_self, [dnl - _LT_AC_TRY_DLOPEN_SELF( - lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes, - lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross) - ]) - - if test "x$lt_cv_dlopen_self" = xyes; then - LDFLAGS="$LDFLAGS $link_static_flag" - AC_CACHE_CHECK([whether a statically linked program can dlopen itself], - lt_cv_dlopen_self_static, [dnl - _LT_AC_TRY_DLOPEN_SELF( - lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes, - lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross) - ]) - fi - - CPPFLAGS="$save_CPPFLAGS" - LDFLAGS="$save_LDFLAGS" - LIBS="$save_LIBS" - ;; - esac - - case $lt_cv_dlopen_self in - yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; - *) enable_dlopen_self=unknown ;; - esac - - case $lt_cv_dlopen_self_static in - yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; - *) enable_dlopen_self_static=unknown ;; - esac -fi -])# AC_LIBTOOL_DLOPEN_SELF - -AC_DEFUN([_LT_AC_LTCONFIG_HACK], -[AC_REQUIRE([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])dnl -# Sed substitution that helps us do robust quoting. It backslashifies -# metacharacters that are still active within double-quoted strings. -Xsed='sed -e s/^X//' -sed_quote_subst='s/\([[\\"\\`$\\\\]]\)/\\\1/g' - -# Same as above, but do not quote variable references. -double_quote_subst='s/\([[\\"\\`\\\\]]\)/\\\1/g' - -# Sed substitution to delay expansion of an escaped shell variable in a -# double_quote_subst'ed string. -delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' - -# Constants: -rm="rm -f" - -# Global variables: -default_ofile=libtool -can_build_shared=yes - -# All known linkers require a `.a' archive for static linking (except M$VC, -# which needs '.lib'). -libext=a -ltmain="$ac_aux_dir/ltmain.sh" -ofile="$default_ofile" -with_gnu_ld="$lt_cv_prog_gnu_ld" -need_locks="$enable_libtool_lock" - -old_CC="$CC" -old_CFLAGS="$CFLAGS" - -# Set sane defaults for various variables -test -z "$AR" && AR=ar -test -z "$AR_FLAGS" && AR_FLAGS=cru -test -z "$AS" && AS=as -test -z "$CC" && CC=cc -test -z "$DLLTOOL" && DLLTOOL=dlltool -test -z "$LD" && LD=ld -test -z "$LN_S" && LN_S="ln -s" -test -z "$MAGIC_CMD" && MAGIC_CMD=file -test -z "$NM" && NM=nm -test -z "$OBJDUMP" && OBJDUMP=objdump -test -z "$RANLIB" && RANLIB=: -test -z "$STRIP" && STRIP=: -test -z "$ac_objext" && ac_objext=o - -if test x"$host" != x"$build"; then - ac_tool_prefix=${host_alias}- -else - ac_tool_prefix= -fi - -# Transform linux* to *-*-linux-gnu*, to support old configure scripts. -case $host_os in -linux-gnu*) ;; -linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'` -esac - -case $host_os in -aix3*) - # 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. - if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES - fi - ;; -esac - -# Determine commands to create old-style static archives. -old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs' -old_postinstall_cmds='chmod 644 $oldlib' -old_postuninstall_cmds= - -if test -n "$RANLIB"; then - case $host_os in - openbsd*) - old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds" - ;; - *) - old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds" - ;; - esac - old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib" -fi - -# Allow CC to be a program name with arguments. -set dummy $CC -compiler="[$]2" - -AC_MSG_CHECKING([for objdir]) -rm -f .libs 2>/dev/null -mkdir .libs 2>/dev/null -if test -d .libs; then - objdir=.libs -else - # MS-DOS does not allow filenames that begin with a dot. - objdir=_libs -fi -rmdir .libs 2>/dev/null -AC_MSG_RESULT($objdir) - - -AC_ARG_WITH(pic, -[ --with-pic try to use only PIC/non-PIC objects [default=use both]], -pic_mode="$withval", pic_mode=default) -test -z "$pic_mode" && pic_mode=default - -# We assume here that the value for lt_cv_prog_cc_pic will not be cached -# in isolation, and that seeing it set (from the cache) indicates that -# the associated values are set (in the cache) correctly too. -AC_MSG_CHECKING([for $compiler option to produce PIC]) -AC_CACHE_VAL(lt_cv_prog_cc_pic, -[ lt_cv_prog_cc_pic= - lt_cv_prog_cc_shlib= - lt_cv_prog_cc_wl= - lt_cv_prog_cc_static= - lt_cv_prog_cc_no_builtin= - lt_cv_prog_cc_can_build_shared=$can_build_shared - - if test "$GCC" = yes; then - lt_cv_prog_cc_wl='-Wl,' - lt_cv_prog_cc_static='-static' - - case $host_os in - aix*) - # Below there is a dirty hack to force normal static linking with -ldl - # The problem is because libdl dynamically linked with both libc and - # libC (AIX C++ library), which obviously doesn't included in libraries - # list by gcc. This cause undefined symbols with -static flags. - # This hack allows C programs to be linked with "-static -ldl", but - # not sure about C++ programs. - lt_cv_prog_cc_static="$lt_cv_prog_cc_static ${lt_cv_prog_cc_wl}-lC" - ;; - 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'. - lt_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4' - ;; - beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) - # PIC is the default for these OSes. - ;; - darwin* | rhapsody*) - # PIC is the default on this platform - # Common symbols not allowed in MH_DYLIB files - lt_cv_prog_cc_pic='-fno-common' - ;; - cygwin* | mingw* | pw32* | os2*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - lt_cv_prog_cc_pic='-DDLL_EXPORT' - ;; - sysv4*MP*) - if test -d /usr/nec; then - lt_cv_prog_cc_pic=-Kconform_pic - fi - ;; - *) - lt_cv_prog_cc_pic='-fPIC' - ;; - esac - else - # PORTME Check for PIC flags for the system compiler. - case $host_os in - aix3* | aix4* | aix5*) - lt_cv_prog_cc_wl='-Wl,' - # All AIX code is PIC. - if test "$host_cpu" = ia64; then - # AIX 5 now supports IA64 processor - lt_cv_prog_cc_static='-Bstatic' - else - lt_cv_prog_cc_static='-bnso -bI:/lib/syscalls.exp' - fi - ;; - - hpux9* | hpux10* | hpux11*) - # Is there a better lt_cv_prog_cc_static that works with the bundled CC? - lt_cv_prog_cc_wl='-Wl,' - lt_cv_prog_cc_static="${lt_cv_prog_cc_wl}-a ${lt_cv_prog_cc_wl}archive" - lt_cv_prog_cc_pic='+Z' - ;; - - irix5* | irix6* | nonstopux*) - lt_cv_prog_cc_wl='-Wl,' - lt_cv_prog_cc_static='-non_shared' - # PIC (with -KPIC) is the default. - ;; - - cygwin* | mingw* | pw32* | os2*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - lt_cv_prog_cc_pic='-DDLL_EXPORT' - ;; - - newsos6) - lt_cv_prog_cc_pic='-KPIC' - lt_cv_prog_cc_static='-Bstatic' - ;; - - osf3* | osf4* | osf5*) - # All OSF/1 code is PIC. - lt_cv_prog_cc_wl='-Wl,' - lt_cv_prog_cc_static='-non_shared' - ;; - - sco3.2v5*) - lt_cv_prog_cc_pic='-Kpic' - lt_cv_prog_cc_static='-dn' - lt_cv_prog_cc_shlib='-belf' - ;; - - solaris*) - lt_cv_prog_cc_pic='-KPIC' - lt_cv_prog_cc_static='-Bstatic' - lt_cv_prog_cc_wl='-Wl,' - ;; - - sunos4*) - lt_cv_prog_cc_pic='-PIC' - lt_cv_prog_cc_static='-Bstatic' - lt_cv_prog_cc_wl='-Qoption ld ' - ;; - - sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - lt_cv_prog_cc_pic='-KPIC' - lt_cv_prog_cc_static='-Bstatic' - lt_cv_prog_cc_wl='-Wl,' - ;; - - uts4*) - lt_cv_prog_cc_pic='-pic' - lt_cv_prog_cc_static='-Bstatic' - ;; - - sysv4*MP*) - if test -d /usr/nec ;then - lt_cv_prog_cc_pic='-Kconform_pic' - lt_cv_prog_cc_static='-Bstatic' - fi - ;; - - *) - lt_cv_prog_cc_can_build_shared=no - ;; - esac - fi -]) -if test -z "$lt_cv_prog_cc_pic"; then - AC_MSG_RESULT([none]) -else - AC_MSG_RESULT([$lt_cv_prog_cc_pic]) - - # Check to make sure the pic_flag actually works. - AC_MSG_CHECKING([if $compiler PIC flag $lt_cv_prog_cc_pic works]) - AC_CACHE_VAL(lt_cv_prog_cc_pic_works, [dnl - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS $lt_cv_prog_cc_pic -DPIC" - AC_TRY_COMPILE([], [], [dnl - case $host_os in - hpux9* | hpux10* | hpux11*) - # On HP-UX, both CC and GCC only warn that PIC is supported... then - # they create non-PIC objects. So, if there were any warnings, we - # assume that PIC is not supported. - if test -s conftest.err; then - lt_cv_prog_cc_pic_works=no - else - lt_cv_prog_cc_pic_works=yes - fi - ;; - *) - lt_cv_prog_cc_pic_works=yes - ;; - esac - ], [dnl - lt_cv_prog_cc_pic_works=no - ]) - CFLAGS="$save_CFLAGS" - ]) - - if test "X$lt_cv_prog_cc_pic_works" = Xno; then - lt_cv_prog_cc_pic= - lt_cv_prog_cc_can_build_shared=no - else - lt_cv_prog_cc_pic=" $lt_cv_prog_cc_pic" - fi - - AC_MSG_RESULT([$lt_cv_prog_cc_pic_works]) -fi - -# Check for any special shared library compilation flags. -if test -n "$lt_cv_prog_cc_shlib"; then - AC_MSG_WARN([\`$CC' requires \`$lt_cv_prog_cc_shlib' to build shared libraries]) - if echo "$old_CC $old_CFLAGS " | egrep -e "[[ ]]$lt_cv_prog_cc_shlib[[ ]]" >/dev/null; then : - else - AC_MSG_WARN([add \`$lt_cv_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure]) - lt_cv_prog_cc_can_build_shared=no - fi -fi - -AC_MSG_CHECKING([if $compiler static flag $lt_cv_prog_cc_static works]) -AC_CACHE_VAL([lt_cv_prog_cc_static_works], [dnl - lt_cv_prog_cc_static_works=no - save_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS $lt_cv_prog_cc_static" - AC_TRY_LINK([], [], [lt_cv_prog_cc_static_works=yes]) - LDFLAGS="$save_LDFLAGS" -]) - -# Belt *and* braces to stop my trousers falling down: -test "X$lt_cv_prog_cc_static_works" = Xno && lt_cv_prog_cc_static= -AC_MSG_RESULT([$lt_cv_prog_cc_static_works]) - -pic_flag="$lt_cv_prog_cc_pic" -special_shlib_compile_flags="$lt_cv_prog_cc_shlib" -wl="$lt_cv_prog_cc_wl" -link_static_flag="$lt_cv_prog_cc_static" -no_builtin_flag="$lt_cv_prog_cc_no_builtin" -can_build_shared="$lt_cv_prog_cc_can_build_shared" - - -# Check to see if options -o and -c are simultaneously supported by compiler -AC_MSG_CHECKING([if $compiler supports -c -o file.$ac_objext]) -AC_CACHE_VAL([lt_cv_compiler_c_o], [ -$rm -r conftest 2>/dev/null -mkdir conftest -cd conftest -echo "int some_variable = 0;" > conftest.$ac_ext -mkdir out -# According to Tom Tromey, Ian Lance Taylor reported there are C compilers -# that will create temporary files in the current directory regardless of -# the output directory. Thus, making CWD read-only will cause this test -# to fail, enabling locking or at least warning the user not to do parallel -# builds. -chmod -w . -save_CFLAGS="$CFLAGS" -CFLAGS="$CFLAGS -o out/conftest2.$ac_objext" -compiler_c_o=no -if { (eval echo configure:__oline__: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s out/conftest.err; then - lt_cv_compiler_c_o=no - else - lt_cv_compiler_c_o=yes - fi -else - # Append any errors to the config.log. - cat out/conftest.err 1>&AC_FD_CC - lt_cv_compiler_c_o=no -fi -CFLAGS="$save_CFLAGS" -chmod u+w . -$rm conftest* out/* -rmdir out -cd .. -rmdir conftest -$rm -r conftest 2>/dev/null -]) -compiler_c_o=$lt_cv_compiler_c_o -AC_MSG_RESULT([$compiler_c_o]) - -if test x"$compiler_c_o" = x"yes"; then - # Check to see if we can write to a .lo - AC_MSG_CHECKING([if $compiler supports -c -o file.lo]) - AC_CACHE_VAL([lt_cv_compiler_o_lo], [ - lt_cv_compiler_o_lo=no - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -c -o conftest.lo" - save_objext="$ac_objext" - ac_objext=lo - AC_TRY_COMPILE([], [int some_variable = 0;], [dnl - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s conftest.err; then - lt_cv_compiler_o_lo=no - else - lt_cv_compiler_o_lo=yes - fi - ]) - ac_objext="$save_objext" - CFLAGS="$save_CFLAGS" - ]) - compiler_o_lo=$lt_cv_compiler_o_lo - AC_MSG_RESULT([$compiler_o_lo]) -else - compiler_o_lo=no -fi - -# Check to see if we can do hard links to lock some files if needed -hard_links="nottested" -if test "$compiler_c_o" = no && test "$need_locks" != no; then - # do not overwrite the value of need_locks provided by the user - AC_MSG_CHECKING([if we can lock with hard links]) - hard_links=yes - $rm conftest* - ln conftest.a conftest.b 2>/dev/null && hard_links=no - touch conftest.a - ln conftest.a conftest.b 2>&5 || hard_links=no - ln conftest.a conftest.b 2>/dev/null && hard_links=no - AC_MSG_RESULT([$hard_links]) - if test "$hard_links" = no; then - AC_MSG_WARN([\`$CC' does not support \`-c -o', so \`make -j' may be unsafe]) - need_locks=warn - fi -else - need_locks=no -fi - -if test "$GCC" = yes; then - # Check to see if options -fno-rtti -fno-exceptions are supported by compiler - AC_MSG_CHECKING([if $compiler supports -fno-rtti -fno-exceptions]) - echo "int some_variable = 0;" > conftest.$ac_ext - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.$ac_ext" - compiler_rtti_exceptions=no - AC_TRY_COMPILE([], [int some_variable = 0;], [dnl - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s conftest.err; then - compiler_rtti_exceptions=no - else - compiler_rtti_exceptions=yes - fi - ]) - CFLAGS="$save_CFLAGS" - AC_MSG_RESULT([$compiler_rtti_exceptions]) - - if test "$compiler_rtti_exceptions" = "yes"; then - no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions' - else - no_builtin_flag=' -fno-builtin' - fi -fi - -# See if the linker supports building shared libraries. -AC_MSG_CHECKING([whether the linker ($LD) supports shared libraries]) - -allow_undefined_flag= -no_undefined_flag= -need_lib_prefix=unknown -need_version=unknown -# when you set need_version to no, make sure it does not cause -set_version -# flags to be left without arguments -archive_cmds= -archive_expsym_cmds= -old_archive_from_new_cmds= -old_archive_from_expsyms_cmds= -export_dynamic_flag_spec= -whole_archive_flag_spec= -thread_safe_flag_spec= -hardcode_into_libs=no -hardcode_libdir_flag_spec= -hardcode_libdir_separator= -hardcode_direct=no -hardcode_minus_L=no -hardcode_shlibpath_var=unsupported -runpath_var= -link_all_deplibs=unknown -always_export_symbols=no -export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols' -# include_expsyms should be a list of space-separated symbols to be *always* -# included in the symbol list -include_expsyms= -# exclude_expsyms can be an egrep regular expression of symbols to exclude -# it will be wrapped by ` (' and `)$', so one must not match beginning or -# end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', -# as well as any symbol that contains `d'. -exclude_expsyms="_GLOBAL_OFFSET_TABLE_" -# Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out -# platforms (ab)use it in PIC code, but their linkers get confused if -# the symbol is explicitly referenced. Since portable code cannot -# rely on this symbol name, it's probably fine to never include it in -# preloaded symbol tables. -extract_expsyms_cmds= - -case $host_os in -cygwin* | mingw* | pw32*) - # FIXME: the MSVC++ port hasn't been tested in a loooong time - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - if test "$GCC" != yes; then - with_gnu_ld=no - fi - ;; -openbsd*) - with_gnu_ld=no - ;; -esac - -ld_shlibs=yes -if test "$with_gnu_ld" = yes; then - # If archive_cmds runs LD, not CC, wlarc should be empty - wlarc='${wl}' - - # See if GNU ld supports shared libraries. - case $host_os in - aix3* | aix4* | aix5*) - # On AIX, the GNU linker is very broken - # Note:Check GNU linker on AIX 5-IA64 when/if it becomes available. - ld_shlibs=no - cat <&2 - -*** Warning: the GNU linker, at least up to release 2.9.1, is reported -*** to be unable to reliably create shared libraries on AIX. -*** Therefore, libtool is disabling shared libraries support. If you -*** really care for shared libraries, you may want to modify your PATH -*** so that a non-GNU linker is found, and then restart. - -EOF - ;; - - amigaos*) - archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - - # Samuel A. Falvo II reports - # that the semantics of dynamic libraries on AmigaOS, at least up - # to version 4, is to share data among multiple programs linked - # with the same dynamic library. Since this doesn't match the - # behavior of shared libraries on other platforms, we can use - # them. - ld_shlibs=no - ;; - - beos*) - if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then - allow_undefined_flag=unsupported - # Joseph Beckenbach says some releases of gcc - # support --undefined. This deserves some investigation. FIXME - archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - else - ld_shlibs=no - fi - ;; - - cygwin* | mingw* | pw32*) - # hardcode_libdir_flag_spec is actually meaningless, as there is - # no search path for DLLs. - hardcode_libdir_flag_spec='-L$libdir' - allow_undefined_flag=unsupported - always_export_symbols=yes - - extract_expsyms_cmds='test -f $output_objdir/impgen.c || \ - sed -e "/^# \/\* impgen\.c starts here \*\//,/^# \/\* impgen.c ends here \*\// { s/^# //;s/^# *$//; p; }" -e d < $''0 > $output_objdir/impgen.c~ - test -f $output_objdir/impgen.exe || (cd $output_objdir && \ - if test "x$HOST_CC" != "x" ; then $HOST_CC -o impgen impgen.c ; \ - else $CC -o impgen impgen.c ; fi)~ - $output_objdir/impgen $dir/$soroot > $output_objdir/$soname-def' - - old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib' - - # cygwin and mingw dlls have different entry points and sets of symbols - # to exclude. - # FIXME: what about values for MSVC? - dll_entry=__cygwin_dll_entry@12 - dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12~ - case $host_os in - mingw*) - # mingw values - dll_entry=_DllMainCRTStartup@12 - dll_exclude_symbols=DllMain@12,DllMainCRTStartup@12,DllEntryPoint@12~ - ;; - esac - - # mingw and cygwin differ, and it's simplest to just exclude the union - # of the two symbol sets. - dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12,DllMainCRTStartup@12,DllEntryPoint@12 - - # recent cygwin and mingw systems supply a stub DllMain which the user - # can override, but on older systems we have to supply one (in ltdll.c) - if test "x$lt_cv_need_dllmain" = "xyes"; then - ltdll_obj='$output_objdir/$soname-ltdll.'"$ac_objext " - ltdll_cmds='test -f $output_objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $''0 > $output_objdir/$soname-ltdll.c~ - test -f $output_objdir/$soname-ltdll.$ac_objext || (cd $output_objdir && $CC -c $soname-ltdll.c)~' - else - ltdll_obj= - ltdll_cmds= - fi - - # Extract the symbol export list from an `--export-all' def file, - # then regenerate the def file from the symbol export list, so that - # the compiled dll only exports the symbol export list. - # Be careful not to strip the DATA tag left be newer dlltools. - export_symbols_cmds="$ltdll_cmds"' - $DLLTOOL --export-all --exclude-symbols '$dll_exclude_symbols' --output-def $output_objdir/$soname-def '$ltdll_obj'$libobjs $convenience~ - sed -e "1,/EXPORTS/d" -e "s/ @ [[0-9]]*//" -e "s/ *;.*$//" < $output_objdir/$soname-def > $export_symbols' - - # If the export-symbols file already is a .def file (1st line - # is EXPORTS), use it as is. - # If DATA tags from a recent dlltool are present, honour them! - archive_expsym_cmds='if test "x`sed 1q $export_symbols`" = xEXPORTS; then - cp $export_symbols $output_objdir/$soname-def; - else - echo EXPORTS > $output_objdir/$soname-def; - _lt_hint=1; - cat $export_symbols | while read symbol; do - set dummy \$symbol; - case \[$]# in - 2) echo " \[$]2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;; - 4) echo " \[$]2 \[$]3 \[$]4 ; " >> $output_objdir/$soname-def; _lt_hint=`expr \$_lt_hint - 1`;; - *) echo " \[$]2 @ \$_lt_hint \[$]3 ; " >> $output_objdir/$soname-def;; - esac; - _lt_hint=`expr 1 + \$_lt_hint`; - done; - fi~ - '"$ltdll_cmds"' - $CC -Wl,--base-file,$output_objdir/$soname-base '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~ - $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp~ - $CC -Wl,--base-file,$output_objdir/$soname-base $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~ - $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp --output-lib $output_objdir/$libname.dll.a~ - $CC $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags' - ;; - - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' - wlarc= - else - archive_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - fi - ;; - - solaris* | sysv5*) - if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then - ld_shlibs=no - cat <&2 - -*** Warning: The releases 2.8.* of the GNU linker cannot reliably -*** create shared libraries on Solaris systems. Therefore, libtool -*** is disabling shared libraries support. We urge you to upgrade GNU -*** binutils to release 2.9.1 or newer. Another option is to modify -*** your PATH or compiler configuration so that the native linker is -*** used, and then restart. - -EOF - elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - else - ld_shlibs=no - fi - ;; - - sunos4*) - archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' - wlarc= - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - *) - if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - else - ld_shlibs=no - fi - ;; - esac - - if test "$ld_shlibs" = yes; then - runpath_var=LD_RUN_PATH - hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir' - export_dynamic_flag_spec='${wl}--export-dynamic' - case $host_os in - cygwin* | mingw* | pw32*) - # dlltool doesn't understand --whole-archive et. al. - whole_archive_flag_spec= - ;; - *) - # ancient GNU ld didn't support --whole-archive et. al. - if $LD --help 2>&1 | egrep 'no-whole-archive' > /dev/null; then - whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' - else - whole_archive_flag_spec= - fi - ;; - esac - fi -else - # PORTME fill in a description of your system's linker (not GNU ld) - case $host_os in - aix3*) - allow_undefined_flag=unsupported - always_export_symbols=yes - archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' - # Note: this linker hardcodes the directories in LIBPATH if there - # are no directories specified by -L. - hardcode_minus_L=yes - if test "$GCC" = yes && test -z "$link_static_flag"; then - # Neither direct hardcoding nor static linking is supported with a - # broken collect2. - hardcode_direct=unsupported - fi - ;; - - aix4* | aix5*) - if test "$host_cpu" = ia64; then - # On IA64, the linker does run time linking by default, so we don't - # have to do anything special. - aix_use_runtimelinking=no - exp_sym_flag='-Bexport' - no_entry_flag="" - else - aix_use_runtimelinking=no - - # Test if we are trying to use run time linking or normal - # AIX style linking. If -brtl is somewhere in LDFLAGS, we - # need to do runtime linking. - case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*) - for ld_flag in $LDFLAGS; do - case $ld_flag in - *-brtl*) - aix_use_runtimelinking=yes - break - ;; - esac - done - esac - - exp_sym_flag='-bexport' - no_entry_flag='-bnoentry' - fi - - # When large executables or shared objects are built, AIX ld can - # have problems creating the table of contents. If linking a library - # or program results in "error TOC overflow" add -mminimal-toc to - # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not - # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. - - hardcode_direct=yes - archive_cmds='' - hardcode_libdir_separator=':' - if test "$GCC" = yes; then - case $host_os in aix4.[[012]]|aix4.[[012]].*) - collect2name=`${CC} -print-prog-name=collect2` - if test -f "$collect2name" && \ - strings "$collect2name" | grep resolve_lib_name >/dev/null - then - # We have reworked collect2 - hardcode_direct=yes - else - # We have old collect2 - hardcode_direct=unsupported - # It fails to find uninstalled libraries when the uninstalled - # path is not listed in the libpath. Setting hardcode_minus_L - # to unsupported forces relinking - hardcode_minus_L=yes - hardcode_libdir_flag_spec='-L$libdir' - hardcode_libdir_separator= - fi - esac - - shared_flag='-shared' - else - # not using gcc - if test "$host_cpu" = ia64; then - shared_flag='${wl}-G' - else - if test "$aix_use_runtimelinking" = yes; then - shared_flag='${wl}-G' - else - shared_flag='${wl}-bM:SRE' - fi - fi - fi - - # It seems that -bexpall can do strange things, so it is better to - # generate a list of symbols to export. - always_export_symbols=yes - if test "$aix_use_runtimelinking" = yes; then - # Warning - without using the other runtime loading flags (-brtl), - # -berok will link without error, but may produce a broken library. - allow_undefined_flag='-berok' - hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib' - archive_expsym_cmds="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag" - else - if test "$host_cpu" = ia64; then - hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib' - allow_undefined_flag="-z nodefs" - archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname ${wl}-h$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" - else - hardcode_libdir_flag_spec='${wl}-bnolibpath ${wl}-blibpath:$libdir:/usr/lib:/lib' - # Warning - without using the other run time loading flags, - # -berok will link without error, but may produce a broken library. - allow_undefined_flag='${wl}-berok' - # This is a bit strange, but is similar to how AIX traditionally builds - # it's shared libraries. - archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"' ~$AR -crlo $objdir/$libname$release.a $objdir/$soname' - fi - fi - ;; - - amigaos*) - archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - # see comment about different semantics on the GNU ld section - ld_shlibs=no - ;; - - cygwin* | mingw* | pw32*) - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - # hardcode_libdir_flag_spec is actually meaningless, as there is - # no search path for DLLs. - hardcode_libdir_flag_spec=' ' - allow_undefined_flag=unsupported - # Tell ltmain to make .lib files, not .a files. - libext=lib - # FIXME: Setting linknames here is a bad hack. - archive_cmds='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | sed -e '\''s/ -lc$//'\''` -link -dll~linknames=' - # The linker will automatically build a .lib file if we build a DLL. - old_archive_from_new_cmds='true' - # FIXME: Should let the user specify the lib program. - old_archive_cmds='lib /OUT:$oldlib$oldobjs$old_deplibs' - fix_srcfile_path='`cygpath -w "$srcfile"`' - ;; - - darwin* | rhapsody*) - case "$host_os" in - rhapsody* | darwin1.[[012]]) - allow_undefined_flag='-undefined suppress' - ;; - *) # Darwin 1.3 on - allow_undefined_flag='-flat_namespace -undefined suppress' - ;; - esac - # FIXME: Relying on posixy $() will cause problems for - # cross-compilation, but unfortunately the echo tests do not - # yet detect zsh echo's removal of \ escapes. Also zsh mangles - # `"' quotes if we put them in here... so don't! - archive_cmds='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs && $CC $(test .$module = .yes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib ${lib}-master.o $deplibs$linker_flags $(test .$module != .yes && echo -install_name $rpath/$soname $verstring)' - # We need to add '_' to the symbols in $export_symbols first - #archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols' - hardcode_direct=yes - hardcode_shlibpath_var=no - whole_archive_flag_spec='-all_load $convenience' - ;; - - freebsd1*) - ld_shlibs=no - ;; - - # 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 - # does not break anything, and helps significantly (at the cost of a little - # extra space). - freebsd2.2*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - # Unfortunately, older versions of FreeBSD 2 do not have this feature. - freebsd2*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes - hardcode_minus_L=yes - hardcode_shlibpath_var=no - ;; - - # FreeBSD 3 and greater uses gcc -shared to do shared libraries. - freebsd*) - archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - hpux9* | hpux10* | hpux11*) - case $host_os in - hpux9*) archive_cmds='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' ;; - *) archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' ;; - esac - hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' - hardcode_libdir_separator=: - hardcode_direct=yes - hardcode_minus_L=yes # Not in the search PATH, but as the default - # location of the library. - export_dynamic_flag_spec='${wl}-E' - ;; - - irix5* | irix6* | nonstopux*) - if test "$GCC" = yes; then - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - else - archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' - hardcode_libdir_flag_spec='-rpath $libdir' - fi - hardcode_libdir_separator=: - link_all_deplibs=yes - ;; - - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out - else - archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF - fi - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - newsos6) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - hardcode_libdir_separator=: - hardcode_shlibpath_var=no - ;; - - openbsd*) - hardcode_direct=yes - hardcode_shlibpath_var=no - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - hardcode_libdir_flag_spec='${wl}-rpath,$libdir' - export_dynamic_flag_spec='${wl}-E' - else - case "$host_os" in - openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-R$libdir' - ;; - *) - archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - hardcode_libdir_flag_spec='${wl}-rpath,$libdir' - ;; - esac - fi - ;; - - os2*) - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - allow_undefined_flag=unsupported - archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' - old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' - ;; - - osf3*) - if test "$GCC" = yes; then - allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' - archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - else - allow_undefined_flag=' -expect_unresolved \*' - archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' - fi - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - hardcode_libdir_separator=: - ;; - - osf4* | osf5*) # as osf3* with the addition of -msym flag - if test "$GCC" = yes; then - allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' - archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - else - allow_undefined_flag=' -expect_unresolved \*' - archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' - archive_expsym_cmds='for i in `cat $export_symbols`; do printf "-exported_symbol " >> $lib.exp; echo "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~ - $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp' - - #Both c and cxx compiler support -rpath directly - hardcode_libdir_flag_spec='-rpath $libdir' - fi - hardcode_libdir_separator=: - ;; - - sco3.2v5*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_shlibpath_var=no - runpath_var=LD_RUN_PATH - hardcode_runpath_var=yes - export_dynamic_flag_spec='${wl}-Bexport' - ;; - - solaris*) - # gcc --version < 3.0 without binutils cannot create self contained - # shared libraries reliably, requiring libgcc.a to resolve some of - # the object symbols generated in some cases. Libraries that use - # assert need libgcc.a to resolve __eprintf, for example. Linking - # a copy of libgcc.a into every shared library to guarantee resolving - # such symbols causes other problems: According to Tim Van Holder - # , C++ libraries end up with a separate - # (to the application) exception stack for one thing. - no_undefined_flag=' -z defs' - if test "$GCC" = yes; then - case `$CC --version 2>/dev/null` in - [[12]].*) - cat <&2 - -*** Warning: Releases of GCC earlier than version 3.0 cannot reliably -*** create self contained shared libraries on Solaris systems, without -*** introducing a dependency on libgcc.a. Therefore, libtool is disabling -*** -no-undefined support, which will at least allow you to build shared -*** libraries. However, you may find that when you link such libraries -*** into an application without using GCC, you have to manually add -*** \`gcc --print-libgcc-file-name\` to the link command. We urge you to -*** upgrade to a newer version of GCC. Another option is to rebuild your -*** current GCC to use the GNU linker from GNU binutils 2.9.1 or newer. - -EOF - no_undefined_flag= - ;; - esac - fi - # $CC -shared without GNU ld will not create a library from C++ - # object files and a static libstdc++, better avoid it by now - archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' - archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_shlibpath_var=no - case $host_os in - solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; - *) # Supported since Solaris 2.6 (maybe 2.5.1?) - whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;; - esac - link_all_deplibs=yes - ;; - - sunos4*) - if test "x$host_vendor" = xsequent; then - # Use $CC to link under sequent, because it throws in some extra .o - # files that make .init and .fini sections work. - archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' - else - archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' - fi - hardcode_libdir_flag_spec='-L$libdir' - hardcode_direct=yes - hardcode_minus_L=yes - hardcode_shlibpath_var=no - ;; - - sysv4) - case $host_vendor in - sni) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes # is this really true??? - ;; - siemens) - ## LD is ld it makes a PLAMLIB - ## CC just makes a GrossModule. - archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' - reload_cmds='$CC -r -o $output$reload_objs' - hardcode_direct=no - ;; - motorola) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=no #Motorola manual says yes, but my tests say they lie - ;; - esac - runpath_var='LD_RUN_PATH' - hardcode_shlibpath_var=no - ;; - - sysv4.3*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_shlibpath_var=no - export_dynamic_flag_spec='-Bexport' - ;; - - sysv5*) - no_undefined_flag=' -z text' - # $CC -shared without GNU ld will not create a library from C++ - # object files and a static libstdc++, better avoid it by now - archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' - archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' - hardcode_libdir_flag_spec= - hardcode_shlibpath_var=no - runpath_var='LD_RUN_PATH' - ;; - - uts4*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_shlibpath_var=no - ;; - - dgux*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_shlibpath_var=no - ;; - - sysv4*MP*) - if test -d /usr/nec; then - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_shlibpath_var=no - runpath_var=LD_RUN_PATH - hardcode_runpath_var=yes - ld_shlibs=yes - fi - ;; - - sysv4.2uw2*) - archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes - hardcode_minus_L=no - hardcode_shlibpath_var=no - hardcode_runpath_var=yes - runpath_var=LD_RUN_PATH - ;; - - sysv5uw7* | unixware7*) - no_undefined_flag='${wl}-z ${wl}text' - if test "$GCC" = yes; then - archive_cmds='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' - else - archive_cmds='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' - fi - runpath_var='LD_RUN_PATH' - hardcode_shlibpath_var=no - ;; - - *) - ld_shlibs=no - ;; - esac -fi -AC_MSG_RESULT([$ld_shlibs]) -test "$ld_shlibs" = no && can_build_shared=no - -# Check hardcoding attributes. -AC_MSG_CHECKING([how to hardcode library paths into programs]) -hardcode_action= -if test -n "$hardcode_libdir_flag_spec" || \ - test -n "$runpath_var"; then - - # We can hardcode non-existant directories. - if test "$hardcode_direct" != no && - # If the only mechanism to avoid hardcoding is shlibpath_var, we - # have to relink, otherwise we might link with an installed library - # when we should be linking with a yet-to-be-installed one - ## test "$hardcode_shlibpath_var" != no && - test "$hardcode_minus_L" != no; then - # Linking always hardcodes the temporary library directory. - hardcode_action=relink - else - # We can link without hardcoding, and we can hardcode nonexisting dirs. - hardcode_action=immediate - fi -else - # We cannot hardcode anything, or else we can only hardcode existing - # directories. - hardcode_action=unsupported -fi -AC_MSG_RESULT([$hardcode_action]) - -striplib= -old_striplib= -AC_MSG_CHECKING([whether stripping libraries is possible]) -if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then - test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" - test -z "$striplib" && striplib="$STRIP --strip-unneeded" - AC_MSG_RESULT([yes]) -else - AC_MSG_RESULT([no]) -fi - -reload_cmds='$LD$reload_flag -o $output$reload_objs' -test -z "$deplibs_check_method" && deplibs_check_method=unknown - -# PORTME Fill in your ld.so characteristics -AC_MSG_CHECKING([dynamic linker characteristics]) -library_names_spec= -libname_spec='lib$name' -soname_spec= -postinstall_cmds= -postuninstall_cmds= -finish_cmds= -finish_eval= -shlibpath_var= -shlibpath_overrides_runpath=unknown -version_type=none -dynamic_linker="$host_os ld.so" -sys_lib_dlsearch_path_spec="/lib /usr/lib" -sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" - -case $host_os in -aix3*) - version_type=linux - library_names_spec='${libname}${release}.so$versuffix $libname.a' - shlibpath_var=LIBPATH - - # AIX has no versioning support, so we append a major version to the name. - soname_spec='${libname}${release}.so$major' - ;; - -aix4* | aix5*) - version_type=linux - need_lib_prefix=no - need_version=no - hardcode_into_libs=yes - if test "$host_cpu" = ia64; then - # AIX 5 supports IA64 - library_names_spec='${libname}${release}.so$major ${libname}${release}.so$versuffix $libname.so' - shlibpath_var=LD_LIBRARY_PATH - else - # With GCC up to 2.95.x, collect2 would create an import file - # for dependence libraries. The import file would start with - # the line `#! .'. This would cause the generated library to - # depend on `.', always an invalid library. This was fixed in - # development snapshots of GCC prior to 3.0. - case $host_os in - aix4 | aix4.[[01]] | aix4.[[01]].*) - if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' - echo ' yes ' - echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then - : - else - can_build_shared=no - fi - ;; - esac - # AIX (on Power*) has no versioning support, so currently we can - # not hardcode correct soname into executable. Probably we can - # add versioning support to collect2, so additional links can - # be useful in future. - if test "$aix_use_runtimelinking" = yes; then - # If using run time linking (on AIX 4.2 or later) use lib.so - # instead of lib.a to let people know that these are not - # typical AIX shared libraries. - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - else - # We preserve .a as extension for shared libraries through AIX4.2 - # and later when we are not doing run time linking. - library_names_spec='${libname}${release}.a $libname.a' - soname_spec='${libname}${release}.so$major' - fi - shlibpath_var=LIBPATH - fi - hardcode_into_libs=yes - ;; - -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 "X$lib" | $Xsed -e '\''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' - ;; - -beos*) - library_names_spec='${libname}.so' - dynamic_linker="$host_os ld.so" - shlibpath_var=LIBRARY_PATH - ;; - -bsdi4*) - version_type=linux - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' - shlibpath_var=LD_LIBRARY_PATH - sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" - sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" - export_dynamic_flag_spec=-rdynamic - # the default ld.so.conf also contains /usr/contrib/lib and - # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow - # libtool to hard-code these into programs - ;; - -cygwin* | mingw* | pw32*) - version_type=windows - need_version=no - need_lib_prefix=no - case $GCC,$host_os in - yes,cygwin*) - library_names_spec='$libname.dll.a' - soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll' - postinstall_cmds='dlpath=`bash 2>&1 -c '\''. $dir/${file}i;echo \$dlname'\''`~ - dldir=$destdir/`dirname \$dlpath`~ - test -d \$dldir || mkdir -p \$dldir~ - $install_prog .libs/$dlname \$dldir/$dlname' - postuninstall_cmds='dldll=`bash 2>&1 -c '\''. $file; echo \$dlname'\''`~ - dlpath=$dir/\$dldll~ - $rm \$dlpath' - ;; - yes,mingw*) - library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll' - sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g" -e "s,=/,/,g"` - ;; - yes,pw32*) - library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll' - ;; - *) - library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll $libname.lib' - ;; - esac - dynamic_linker='Win32 ld.exe' - # FIXME: first we should search . and the directory the executable is in - shlibpath_var=PATH - ;; - -darwin* | rhapsody*) - dynamic_linker="$host_os dyld" - version_type=darwin - need_lib_prefix=no - need_version=no - # FIXME: Relying on posixy $() will cause problems for - # cross-compilation, but unfortunately the echo tests do not - # yet detect zsh echo's removal of \ escapes. - library_names_spec='${libname}${release}${versuffix}.$(test .$module = .yes && echo so || echo dylib) ${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib) ${libname}.$(test .$module = .yes && echo so || echo dylib)' - soname_spec='${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib)' - shlibpath_overrides_runpath=yes - shlibpath_var=DYLD_LIBRARY_PATH - ;; - -freebsd1*) - dynamic_linker=no - ;; - -freebsd*) - objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` - version_type=freebsd-$objformat - case $version_type in - freebsd-elf*) - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so' - need_version=no - need_lib_prefix=no - ;; - freebsd-*) - library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix' - need_version=yes - ;; - esac - shlibpath_var=LD_LIBRARY_PATH - case $host_os in - freebsd2*) - shlibpath_overrides_runpath=yes - ;; - *) - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - ;; - esac - ;; - -gnu*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so${major} ${libname}.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - hardcode_into_libs=yes - ;; - -hpux9* | hpux10* | hpux11*) - # Give a soname corresponding to the major version so that dld.sl refuses to - # link against other versions. - dynamic_linker="$host_os dld.sl" - version_type=sunos - need_lib_prefix=no - need_version=no - shlibpath_var=SHLIB_PATH - shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH - library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl' - soname_spec='${libname}${release}.sl$major' - # HP-UX runs *really* slowly unless shared libraries are mode 555. - postinstall_cmds='chmod 555 $lib' - ;; - -irix5* | irix6* | nonstopux*) - case $host_os in - nonstopux*) version_type=nonstopux ;; - *) version_type=irix ;; - esac - need_lib_prefix=no - need_version=no - soname_spec='${libname}${release}.so$major' - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so' - case $host_os in - irix5* | nonstopux*) - libsuff= shlibsuff= - ;; - *) - case $LD in # libtool.m4 will add one of these switches to LD - *-32|*"-32 ") libsuff= shlibsuff= libmagic=32-bit;; - *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 libmagic=N32;; - *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;; - *) libsuff= shlibsuff= libmagic=never-match;; - esac - ;; - esac - shlibpath_var=LD_LIBRARY${shlibsuff}_PATH - shlibpath_overrides_runpath=no - sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" - sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" - ;; - -# No shared lib support for Linux oldld, aout, or coff. -linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*) - dynamic_linker=no - ;; - -# This must be Linux ELF. -linux-gnu*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - # This implies no fast_install, which is unacceptable. - # Some rework will be needed to allow for fast_install - # before this can be enabled. - hardcode_into_libs=yes - - # We used to test for /lib/ld.so.1 and disable shared libraries on - # powerpc, because MkLinux only supported shared libraries with the - # GNU dynamic linker. Since this was broken with cross compilers, - # most powerpc-linux boxes support dynamic linking these days and - # people can always --disable-shared, the test was removed, and we - # assume the GNU/Linux dynamic linker is in use. - dynamic_linker='GNU/Linux ld.so' - ;; - -netbsd*) - version_type=sunos - need_lib_prefix=no - need_version=no - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - dynamic_linker='NetBSD (a.out) ld.so' - else - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so' - soname_spec='${libname}${release}.so$major' - dynamic_linker='NetBSD ld.elf_so' - fi - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - ;; - -newsos6) - version_type=linux - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - ;; - -openbsd*) - version_type=sunos - need_lib_prefix=no - need_version=no - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - case "$host_os" in - openbsd2.[[89]] | openbsd2.[[89]].*) - shlibpath_overrides_runpath=no - ;; - *) - shlibpath_overrides_runpath=yes - ;; - esac - else - shlibpath_overrides_runpath=yes - fi - library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - shlibpath_var=LD_LIBRARY_PATH - ;; - -os2*) - libname_spec='$name' - need_lib_prefix=no - library_names_spec='$libname.dll $libname.a' - dynamic_linker='OS/2 ld.exe' - shlibpath_var=LIBPATH - ;; - -osf3* | osf4* | osf5*) - version_type=osf - need_version=no - soname_spec='${libname}${release}.so$major' - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - shlibpath_var=LD_LIBRARY_PATH - sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" - sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" - hardcode_into_libs=yes - ;; - -sco3.2v5*) - version_type=osf - soname_spec='${libname}${release}.so$major' - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - shlibpath_var=LD_LIBRARY_PATH - ;; - -solaris*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - # ldd complains unless libraries are executable - postinstall_cmds='chmod +x $lib' - ;; - -sunos4*) - version_type=sunos - library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' - finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - if test "$with_gnu_ld" = yes; then - need_lib_prefix=no - fi - need_version=yes - ;; - -sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - version_type=linux - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - case $host_vendor in - sni) - shlibpath_overrides_runpath=no - need_lib_prefix=no - export_dynamic_flag_spec='${wl}-Blargedynsym' - runpath_var=LD_RUN_PATH - ;; - siemens) - need_lib_prefix=no - ;; - motorola) - need_lib_prefix=no - need_version=no - shlibpath_overrides_runpath=no - sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' - ;; - esac - ;; - -uts4*) - version_type=linux - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - ;; - -dgux*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - ;; - -sysv4*MP*) - if test -d /usr/nec ;then - version_type=linux - library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so' - soname_spec='$libname.so.$major' - shlibpath_var=LD_LIBRARY_PATH - fi - ;; - -*) - dynamic_linker=no - ;; -esac -AC_MSG_RESULT([$dynamic_linker]) -test "$dynamic_linker" = no && can_build_shared=no - -# Report the final consequences. -AC_MSG_CHECKING([if libtool supports shared libraries]) -AC_MSG_RESULT([$can_build_shared]) - -AC_MSG_CHECKING([whether to build shared libraries]) -test "$can_build_shared" = "no" && enable_shared=no - -# On AIX, shared libraries and static libraries use the same namespace, and -# are all built from PIC. -case "$host_os" in -aix3*) - test "$enable_shared" = yes && enable_static=no - if test -n "$RANLIB"; then - archive_cmds="$archive_cmds~\$RANLIB \$lib" - postinstall_cmds='$RANLIB $lib' - fi - ;; - -aix4*) - if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then - test "$enable_shared" = yes && enable_static=no - fi - ;; -esac -AC_MSG_RESULT([$enable_shared]) - -AC_MSG_CHECKING([whether to build static libraries]) -# Make sure either enable_shared or enable_static is yes. -test "$enable_shared" = yes || enable_static=yes -AC_MSG_RESULT([$enable_static]) - -if test "$hardcode_action" = relink; then - # Fast installation is not supported - enable_fast_install=no -elif test "$shlibpath_overrides_runpath" = yes || - test "$enable_shared" = no; then - # Fast installation is not necessary - enable_fast_install=needless -fi - -variables_saved_for_relink="PATH $shlibpath_var $runpath_var" -if test "$GCC" = yes; then - variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" -fi - -AC_LIBTOOL_DLOPEN_SELF - -if test "$enable_shared" = yes && test "$GCC" = yes; then - case $archive_cmds in - *'~'*) - # FIXME: we may have to deal with multi-command sequences. - ;; - '$CC '*) - # Test whether the compiler implicitly links with -lc since on some - # systems, -lgcc has to come before -lc. If gcc already passes -lc - # to ld, don't add -lc before -lgcc. - AC_MSG_CHECKING([whether -lc should be explicitly linked in]) - AC_CACHE_VAL([lt_cv_archive_cmds_need_lc], - [$rm conftest* - echo 'static int dummy;' > conftest.$ac_ext - - if AC_TRY_EVAL(ac_compile); then - soname=conftest - lib=conftest - libobjs=conftest.$ac_objext - deplibs= - wl=$lt_cv_prog_cc_wl - compiler_flags=-v - linker_flags=-v - verstring= - output_objdir=. - libname=conftest - save_allow_undefined_flag=$allow_undefined_flag - allow_undefined_flag= - if AC_TRY_EVAL(archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1) - then - lt_cv_archive_cmds_need_lc=no - else - lt_cv_archive_cmds_need_lc=yes - fi - allow_undefined_flag=$save_allow_undefined_flag - else - cat conftest.err 1>&5 - fi]) - AC_MSG_RESULT([$lt_cv_archive_cmds_need_lc]) - ;; - esac -fi -need_lc=${lt_cv_archive_cmds_need_lc-yes} - -# The second clause should only fire when bootstrapping the -# libtool distribution, otherwise you forgot to ship ltmain.sh -# with your package, and you will get complaints that there are -# no rules to generate ltmain.sh. -if test -f "$ltmain"; then - : -else - # If there is no Makefile yet, we rely on a make rule to execute - # `config.status --recheck' to rerun these tests and create the - # libtool script then. - test -f Makefile && make "$ltmain" -fi - -if test -f "$ltmain"; then - trap "$rm \"${ofile}T\"; exit 1" 1 2 15 - $rm -f "${ofile}T" - - echo creating $ofile - - # Now quote all the things that may contain metacharacters while being - # careful not to overquote the AC_SUBSTed values. We take copies of the - # variables and quote the copies for generation of the libtool script. - for var in echo old_CC old_CFLAGS SED \ - AR AR_FLAGS CC LD LN_S NM SHELL \ - reload_flag reload_cmds wl \ - pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \ - thread_safe_flag_spec whole_archive_flag_spec libname_spec \ - library_names_spec soname_spec \ - RANLIB old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \ - old_postuninstall_cmds archive_cmds archive_expsym_cmds postinstall_cmds \ - postuninstall_cmds extract_expsyms_cmds old_archive_from_expsyms_cmds \ - old_striplib striplib file_magic_cmd export_symbols_cmds \ - deplibs_check_method allow_undefined_flag no_undefined_flag \ - finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \ - global_symbol_to_c_name_address \ - hardcode_libdir_flag_spec hardcode_libdir_separator \ - sys_lib_search_path_spec sys_lib_dlsearch_path_spec \ - compiler_c_o compiler_o_lo need_locks exclude_expsyms include_expsyms; do - - case $var in - reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \ - old_postinstall_cmds | old_postuninstall_cmds | \ - export_symbols_cmds | archive_cmds | archive_expsym_cmds | \ - extract_expsyms_cmds | old_archive_from_expsyms_cmds | \ - postinstall_cmds | postuninstall_cmds | \ - finish_cmds | sys_lib_search_path_spec | sys_lib_dlsearch_path_spec) - # Double-quote double-evaled strings. - eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" - ;; - *) - eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\"" - ;; - esac - done - - cat <<__EOF__ > "${ofile}T" -#! $SHELL - -# `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. -# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP) -# NOTE: Changes made to this file will be lost: look at ltmain.sh. -# -# Copyright (C) 1996-2000 Free Software Foundation, Inc. -# Originally by Gordon Matzigkeit , 1996 -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# A sed that does not truncate output. -SED=$lt_SED - -# Sed that helps us avoid accidentally triggering echo(1) options like -n. -Xsed="${SED} -e s/^X//" - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi - -# ### BEGIN LIBTOOL CONFIG - -# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: - -# Shell to use when invoking shell scripts. -SHELL=$lt_SHELL - -# Whether or not to build shared libraries. -build_libtool_libs=$enable_shared - -# Whether or not to build static libraries. -build_old_libs=$enable_static - -# Whether or not to add -lc for building shared libraries. -build_libtool_need_lc=$need_lc - -# Whether or not to optimize for fast installation. -fast_install=$enable_fast_install - -# The host system. -host_alias=$host_alias -host=$host - -# An echo program that does not interpret backslashes. -echo=$lt_echo - -# The archiver. -AR=$lt_AR -AR_FLAGS=$lt_AR_FLAGS - -# The default C compiler. -CC=$lt_CC - -# Is the compiler the GNU C compiler? -with_gcc=$GCC - -# The linker used to build libraries. -LD=$lt_LD - -# Whether we need hard or soft links. -LN_S=$lt_LN_S - -# A BSD-compatible nm program. -NM=$lt_NM - -# A symbol stripping program -STRIP=$STRIP - -# Used to examine libraries when file_magic_cmd begins "file" -MAGIC_CMD=$MAGIC_CMD - -# Used on cygwin: DLL creation program. -DLLTOOL="$DLLTOOL" - -# Used on cygwin: object dumper. -OBJDUMP="$OBJDUMP" - -# Used on cygwin: assembler. -AS="$AS" - -# The name of the directory that contains temporary libtool files. -objdir=$objdir - -# How to create reloadable object files. -reload_flag=$lt_reload_flag -reload_cmds=$lt_reload_cmds - -# How to pass a linker flag through the compiler. -wl=$lt_wl - -# Object file suffix (normally "o"). -objext="$ac_objext" - -# Old archive suffix (normally "a"). -libext="$libext" - -# Executable file suffix (normally ""). -exeext="$exeext" - -# Additional compiler flags for building library objects. -pic_flag=$lt_pic_flag -pic_mode=$pic_mode - -# Does compiler simultaneously support -c and -o options? -compiler_c_o=$lt_compiler_c_o - -# Can we write directly to a .lo ? -compiler_o_lo=$lt_compiler_o_lo - -# Must we lock files when doing compilation ? -need_locks=$lt_need_locks - -# Do we need the lib prefix for modules? -need_lib_prefix=$need_lib_prefix - -# Do we need a version for libraries? -need_version=$need_version - -# Whether dlopen is supported. -dlopen_support=$enable_dlopen - -# Whether dlopen of programs is supported. -dlopen_self=$enable_dlopen_self - -# Whether dlopen of statically linked programs is supported. -dlopen_self_static=$enable_dlopen_self_static - -# Compiler flag to prevent dynamic linking. -link_static_flag=$lt_link_static_flag - -# Compiler flag to turn off builtin functions. -no_builtin_flag=$lt_no_builtin_flag - -# Compiler flag to allow reflexive dlopens. -export_dynamic_flag_spec=$lt_export_dynamic_flag_spec - -# Compiler flag to generate shared objects directly from archives. -whole_archive_flag_spec=$lt_whole_archive_flag_spec - -# Compiler flag to generate thread-safe objects. -thread_safe_flag_spec=$lt_thread_safe_flag_spec - -# Library versioning type. -version_type=$version_type - -# Format of library name prefix. -libname_spec=$lt_libname_spec - -# List of archive names. First name is the real one, the rest are links. -# The last name is the one that the linker finds with -lNAME. -library_names_spec=$lt_library_names_spec - -# The coded name of the library, if different from the real name. -soname_spec=$lt_soname_spec - -# Commands used to build and install an old-style archive. -RANLIB=$lt_RANLIB -old_archive_cmds=$lt_old_archive_cmds -old_postinstall_cmds=$lt_old_postinstall_cmds -old_postuninstall_cmds=$lt_old_postuninstall_cmds - -# Create an old-style archive from a shared archive. -old_archive_from_new_cmds=$lt_old_archive_from_new_cmds - -# Create a temporary old-style archive to link instead of a shared archive. -old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds - -# Commands used to build and install a shared archive. -archive_cmds=$lt_archive_cmds -archive_expsym_cmds=$lt_archive_expsym_cmds -postinstall_cmds=$lt_postinstall_cmds -postuninstall_cmds=$lt_postuninstall_cmds - -# Commands to strip libraries. -old_striplib=$lt_old_striplib -striplib=$lt_striplib - -# Method to check whether dependent libraries are shared objects. -deplibs_check_method=$lt_deplibs_check_method - -# Command to use when deplibs_check_method == file_magic. -file_magic_cmd=$lt_file_magic_cmd - -# Flag that allows shared libraries with undefined symbols to be built. -allow_undefined_flag=$lt_allow_undefined_flag - -# Flag that forces no undefined symbols. -no_undefined_flag=$lt_no_undefined_flag - -# Commands used to finish a libtool library installation in a directory. -finish_cmds=$lt_finish_cmds - -# Same as above, but a single script fragment to be evaled but not shown. -finish_eval=$lt_finish_eval - -# Take the output of nm and produce a listing of raw symbols and C names. -global_symbol_pipe=$lt_global_symbol_pipe - -# Transform the output of nm in a proper C declaration -global_symbol_to_cdecl=$lt_global_symbol_to_cdecl - -# Transform the output of nm in a C name address pair -global_symbol_to_c_name_address=$lt_global_symbol_to_c_name_address - -# This is the shared library runtime path variable. -runpath_var=$runpath_var - -# This is the shared library path variable. -shlibpath_var=$shlibpath_var - -# Is shlibpath searched before the hard-coded library search path? -shlibpath_overrides_runpath=$shlibpath_overrides_runpath - -# How to hardcode a shared library path into an executable. -hardcode_action=$hardcode_action - -# Whether we should hardcode library paths into libraries. -hardcode_into_libs=$hardcode_into_libs - -# Flag to hardcode \$libdir into a binary during linking. -# This must work even if \$libdir does not exist. -hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec - -# Whether we need a single -rpath flag with a separated argument. -hardcode_libdir_separator=$lt_hardcode_libdir_separator - -# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the -# resulting binary. -hardcode_direct=$hardcode_direct - -# Set to yes if using the -LDIR flag during linking hardcodes DIR into the -# resulting binary. -hardcode_minus_L=$hardcode_minus_L - -# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into -# the resulting binary. -hardcode_shlibpath_var=$hardcode_shlibpath_var - -# Variables whose values should be saved in libtool wrapper scripts and -# restored at relink time. -variables_saved_for_relink="$variables_saved_for_relink" - -# Whether libtool must link a program against all its dependency libraries. -link_all_deplibs=$link_all_deplibs - -# Compile-time system search path for libraries -sys_lib_search_path_spec=$lt_sys_lib_search_path_spec - -# Run-time system search path for libraries -sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec - -# Fix the shell variable \$srcfile for the compiler. -fix_srcfile_path="$fix_srcfile_path" - -# Set to yes if exported symbols are required. -always_export_symbols=$always_export_symbols - -# The commands to list exported symbols. -export_symbols_cmds=$lt_export_symbols_cmds - -# The commands to extract the exported symbol list from a shared archive. -extract_expsyms_cmds=$lt_extract_expsyms_cmds - -# Symbols that should not be listed in the preloaded symbols. -exclude_expsyms=$lt_exclude_expsyms - -# Symbols that must always be exported. -include_expsyms=$lt_include_expsyms - -# ### END LIBTOOL CONFIG - -__EOF__ - - case $host_os in - aix3*) - cat <<\EOF >> "${ofile}T" - -# 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. -if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES -fi -EOF - ;; - esac - - case $host_os in - cygwin* | mingw* | pw32* | os2*) - cat <<'EOF' >> "${ofile}T" - # This is a source program that is used to create dlls on Windows - # Don't remove nor modify the starting and closing comments -# /* ltdll.c starts here */ -# #define WIN32_LEAN_AND_MEAN -# #include -# #undef WIN32_LEAN_AND_MEAN -# #include -# -# #ifndef __CYGWIN__ -# # ifdef __CYGWIN32__ -# # define __CYGWIN__ __CYGWIN32__ -# # endif -# #endif -# -# #ifdef __cplusplus -# extern "C" { -# #endif -# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved); -# #ifdef __cplusplus -# } -# #endif -# -# #ifdef __CYGWIN__ -# #include -# DECLARE_CYGWIN_DLL( DllMain ); -# #endif -# HINSTANCE __hDllInstance_base; -# -# BOOL APIENTRY -# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved) -# { -# __hDllInstance_base = hInst; -# return TRUE; -# } -# /* ltdll.c ends here */ - # This is a source program that is used to create import libraries - # on Windows for dlls which lack them. Don't remove nor modify the - # starting and closing comments -# /* impgen.c starts here */ -# /* Copyright (C) 1999-2000 Free Software Foundation, Inc. -# -# This file is part of GNU libtool. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# */ -# -# #include /* for printf() */ -# #include /* for open(), lseek(), read() */ -# #include /* for O_RDONLY, O_BINARY */ -# #include /* for strdup() */ -# -# /* O_BINARY isn't required (or even defined sometimes) under Unix */ -# #ifndef O_BINARY -# #define O_BINARY 0 -# #endif -# -# static unsigned int -# pe_get16 (fd, offset) -# int fd; -# int offset; -# { -# unsigned char b[2]; -# lseek (fd, offset, SEEK_SET); -# read (fd, b, 2); -# return b[0] + (b[1]<<8); -# } -# -# static unsigned int -# pe_get32 (fd, offset) -# int fd; -# int offset; -# { -# unsigned char b[4]; -# lseek (fd, offset, SEEK_SET); -# read (fd, b, 4); -# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24); -# } -# -# static unsigned int -# pe_as32 (ptr) -# void *ptr; -# { -# unsigned char *b = ptr; -# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24); -# } -# -# int -# main (argc, argv) -# int argc; -# char *argv[]; -# { -# int dll; -# unsigned long pe_header_offset, opthdr_ofs, num_entries, i; -# unsigned long export_rva, export_size, nsections, secptr, expptr; -# unsigned long name_rvas, nexp; -# unsigned char *expdata, *erva; -# char *filename, *dll_name; -# -# filename = argv[1]; -# -# dll = open(filename, O_RDONLY|O_BINARY); -# if (dll < 1) -# return 1; -# -# dll_name = filename; -# -# for (i=0; filename[i]; i++) -# if (filename[i] == '/' || filename[i] == '\\' || filename[i] == ':') -# dll_name = filename + i +1; -# -# pe_header_offset = pe_get32 (dll, 0x3c); -# opthdr_ofs = pe_header_offset + 4 + 20; -# num_entries = pe_get32 (dll, opthdr_ofs + 92); -# -# if (num_entries < 1) /* no exports */ -# return 1; -# -# export_rva = pe_get32 (dll, opthdr_ofs + 96); -# export_size = pe_get32 (dll, opthdr_ofs + 100); -# nsections = pe_get16 (dll, pe_header_offset + 4 +2); -# secptr = (pe_header_offset + 4 + 20 + -# pe_get16 (dll, pe_header_offset + 4 + 16)); -# -# expptr = 0; -# for (i = 0; i < nsections; i++) -# { -# char sname[8]; -# unsigned long secptr1 = secptr + 40 * i; -# unsigned long vaddr = pe_get32 (dll, secptr1 + 12); -# unsigned long vsize = pe_get32 (dll, secptr1 + 16); -# unsigned long fptr = pe_get32 (dll, secptr1 + 20); -# lseek(dll, secptr1, SEEK_SET); -# read(dll, sname, 8); -# if (vaddr <= export_rva && vaddr+vsize > export_rva) -# { -# expptr = fptr + (export_rva - vaddr); -# if (export_rva + export_size > vaddr + vsize) -# export_size = vsize - (export_rva - vaddr); -# break; -# } -# } -# -# expdata = (unsigned char*)malloc(export_size); -# lseek (dll, expptr, SEEK_SET); -# read (dll, expdata, export_size); -# erva = expdata - export_rva; -# -# nexp = pe_as32 (expdata+24); -# name_rvas = pe_as32 (expdata+32); -# -# printf ("EXPORTS\n"); -# for (i = 0; i> "${ofile}T" || (rm -f "${ofile}T"; exit 1) - - mv -f "${ofile}T" "$ofile" || \ - (rm -f "$ofile" && cp "${ofile}T" "$ofile" && rm -f "${ofile}T") - chmod +x "$ofile" -fi - -])# _LT_AC_LTCONFIG_HACK - -# AC_LIBTOOL_DLOPEN - enable checks for dlopen support -AC_DEFUN([AC_LIBTOOL_DLOPEN], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])]) - -# AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's -AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])]) - -# AC_ENABLE_SHARED - implement the --enable-shared flag -# Usage: AC_ENABLE_SHARED[(DEFAULT)] -# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to -# `yes'. -AC_DEFUN([AC_ENABLE_SHARED], -[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl -AC_ARG_ENABLE(shared, -changequote(<<, >>)dnl -<< --enable-shared[=PKGS] build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT], -changequote([, ])dnl -[p=${PACKAGE-default} -case $enableval in -yes) enable_shared=yes ;; -no) enable_shared=no ;; -*) - enable_shared=no - # Look at the argument we got. We use all the common list separators. - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," - for pkg in $enableval; do - if test "X$pkg" = "X$p"; then - enable_shared=yes - fi - done - IFS="$ac_save_ifs" - ;; -esac], -enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl -]) - -# AC_DISABLE_SHARED - set the default shared flag to --disable-shared -AC_DEFUN([AC_DISABLE_SHARED], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -AC_ENABLE_SHARED(no)]) - -# AC_ENABLE_STATIC - implement the --enable-static flag -# Usage: AC_ENABLE_STATIC[(DEFAULT)] -# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to -# `yes'. -AC_DEFUN([AC_ENABLE_STATIC], -[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl -AC_ARG_ENABLE(static, -changequote(<<, >>)dnl -<< --enable-static[=PKGS] build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT], -changequote([, ])dnl -[p=${PACKAGE-default} -case $enableval in -yes) enable_static=yes ;; -no) enable_static=no ;; -*) - enable_static=no - # Look at the argument we got. We use all the common list separators. - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," - for pkg in $enableval; do - if test "X$pkg" = "X$p"; then - enable_static=yes - fi - done - IFS="$ac_save_ifs" - ;; -esac], -enable_static=AC_ENABLE_STATIC_DEFAULT)dnl -]) - -# AC_DISABLE_STATIC - set the default static flag to --disable-static -AC_DEFUN([AC_DISABLE_STATIC], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -AC_ENABLE_STATIC(no)]) - - -# AC_ENABLE_FAST_INSTALL - implement the --enable-fast-install flag -# Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)] -# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to -# `yes'. -AC_DEFUN([AC_ENABLE_FAST_INSTALL], -[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl -AC_ARG_ENABLE(fast-install, -changequote(<<, >>)dnl -<< --enable-fast-install[=PKGS] optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT], -changequote([, ])dnl -[p=${PACKAGE-default} -case $enableval in -yes) enable_fast_install=yes ;; -no) enable_fast_install=no ;; -*) - enable_fast_install=no - # Look at the argument we got. We use all the common list separators. - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," - for pkg in $enableval; do - if test "X$pkg" = "X$p"; then - enable_fast_install=yes - fi - done - IFS="$ac_save_ifs" - ;; -esac], -enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl -]) - -# AC_DISABLE_FAST_INSTALL - set the default to --disable-fast-install -AC_DEFUN([AC_DISABLE_FAST_INSTALL], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -AC_ENABLE_FAST_INSTALL(no)]) - -# AC_LIBTOOL_PICMODE - implement the --with-pic flag -# Usage: AC_LIBTOOL_PICMODE[(MODE)] -# Where MODE is either `yes' or `no'. If omitted, it defaults to -# `both'. -AC_DEFUN([AC_LIBTOOL_PICMODE], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -pic_mode=ifelse($#,1,$1,default)]) - - -# AC_PATH_TOOL_PREFIX - find a file program which can recognise shared library -AC_DEFUN([AC_PATH_TOOL_PREFIX], -[AC_MSG_CHECKING([for $1]) -AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, -[case $MAGIC_CMD in - /*) - lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. - ;; - ?:/*) - lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path. - ;; - *) - ac_save_MAGIC_CMD="$MAGIC_CMD" - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" -dnl $ac_dummy forces splitting on constant user-supplied paths. -dnl POSIX.2 word splitting is done only on the output of word expansions, -dnl not every word. This closes a longstanding sh security hole. - ac_dummy="ifelse([$2], , $PATH, [$2])" - for ac_dir in $ac_dummy; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$1; then - lt_cv_path_MAGIC_CMD="$ac_dir/$1" - if test -n "$file_magic_test_file"; then - case $deplibs_check_method in - "file_magic "*) - file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" - MAGIC_CMD="$lt_cv_path_MAGIC_CMD" - if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | - egrep "$file_magic_regex" > /dev/null; then - : - else - cat <&2 - -*** Warning: the command libtool uses to detect shared libraries, -*** $file_magic_cmd, produces output that libtool cannot recognize. -*** The result is that libtool may fail to recognize shared libraries -*** as such. This will affect the creation of libtool libraries that -*** depend on shared libraries, but programs linked with such libtool -*** libraries will work regardless of this problem. Nevertheless, you -*** may want to report the problem to your system manager and/or to -*** bug-libtool@gnu.org - -EOF - fi ;; - esac - fi - break - fi - done - IFS="$ac_save_ifs" - MAGIC_CMD="$ac_save_MAGIC_CMD" - ;; -esac]) -MAGIC_CMD="$lt_cv_path_MAGIC_CMD" -if test -n "$MAGIC_CMD"; then - AC_MSG_RESULT($MAGIC_CMD) -else - AC_MSG_RESULT(no) -fi -]) - - -# AC_PATH_MAGIC - find a file program which can recognise a shared library -AC_DEFUN([AC_PATH_MAGIC], -[AC_REQUIRE([AC_CHECK_TOOL_PREFIX])dnl -AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin:$PATH) -if test -z "$lt_cv_path_MAGIC_CMD"; then - if test -n "$ac_tool_prefix"; then - AC_PATH_TOOL_PREFIX(file, /usr/bin:$PATH) - else - MAGIC_CMD=: - fi -fi -]) - - -# AC_PROG_LD - find the path to the GNU or non-GNU linker -AC_DEFUN([AC_PROG_LD], -[AC_ARG_WITH(gnu-ld, -[ --with-gnu-ld assume the C compiler uses GNU ld [default=no]], -test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no) -AC_REQUIRE([AC_PROG_CC])dnl -AC_REQUIRE([CL_CANONICAL_HOST])dnl -AC_REQUIRE([AC_CANONICAL_BUILD])dnl -AC_REQUIRE([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR])dnl -ac_prog=ld -if test "$GCC" = yes; then - # Check if gcc -print-prog-name=ld gives a path. - AC_MSG_CHECKING([for ld used by GCC]) - case $host in - *-*-mingw*) - # gcc leaves a trailing carriage return which upsets mingw - ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; - *) - ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; - esac - case $ac_prog in - # Accept absolute paths. - [[\\/]]* | [[A-Za-z]]:[[\\/]]*) - re_direlt='/[[^/]][[^/]]*/\.\./' - # Canonicalize the path of ld - ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` - while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do - ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` - done - test -z "$LD" && LD="$ac_prog" - ;; - "") - # If it fails, then pretend we aren't using GCC. - ac_prog=ld - ;; - *) - # If it is relative, then search for the first ld in PATH. - with_gnu_ld=unknown - ;; - esac -elif test "$with_gnu_ld" = yes; then - AC_MSG_CHECKING([for GNU ld]) -else - AC_MSG_CHECKING([for non-GNU ld]) -fi -AC_CACHE_VAL(lt_cv_path_LD, -[if test -z "$LD"; then - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH; do - test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then - lt_cv_path_LD="$ac_dir/$ac_prog" - # Check to see if the program is GNU ld. I'd rather use --version, - # but apparently some GNU ld's only accept -v. - # Break only if it was the GNU/non-GNU ld that we prefer. - if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then - test "$with_gnu_ld" != no && break - else - test "$with_gnu_ld" != yes && break - fi - fi - done - IFS="$ac_save_ifs" -else - lt_cv_path_LD="$LD" # Let the user override the test with a path. -fi]) -LD="$lt_cv_path_LD" -if test -n "$LD"; then - AC_MSG_RESULT($LD) -else - AC_MSG_RESULT(no) -fi -test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) -AC_PROG_LD_GNU -]) - -# AC_PROG_LD_GNU - -AC_DEFUN([AC_PROG_LD_GNU], -[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld, -[# I'd rather use --version here, but apparently some GNU ld's only accept -v. -if $LD -v 2>&1 &5; then - lt_cv_prog_gnu_ld=yes -else - lt_cv_prog_gnu_ld=no -fi]) -with_gnu_ld=$lt_cv_prog_gnu_ld -]) - -# AC_PROG_LD_RELOAD_FLAG - find reload flag for linker -# -- PORTME Some linkers may need a different reload flag. -AC_DEFUN([AC_PROG_LD_RELOAD_FLAG], -[AC_CACHE_CHECK([for $LD option to reload object files], lt_cv_ld_reload_flag, -[lt_cv_ld_reload_flag='-r']) -reload_flag=$lt_cv_ld_reload_flag -test -n "$reload_flag" && reload_flag=" $reload_flag" -]) - -# AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies -# -- PORTME fill in with the dynamic library characteristics -AC_DEFUN([AC_DEPLIBS_CHECK_METHOD], -[AC_CACHE_CHECK([how to recognise dependent libraries], -lt_cv_deplibs_check_method, -[lt_cv_file_magic_cmd='$MAGIC_CMD' -lt_cv_file_magic_test_file= -lt_cv_deplibs_check_method='unknown' -# Need to set the preceding variable on all platforms that support -# interlibrary dependencies. -# 'none' -- dependencies not supported. -# `unknown' -- same as none, but documents that we really don't know. -# 'pass_all' -- all dependencies passed with no checks. -# 'test_compile' -- check by making test program. -# 'file_magic [[regex]]' -- check by looking for files in library path -# which responds to the $file_magic_cmd with a given egrep regex. -# If you have `file' or equivalent on your system and you're not sure -# whether `pass_all' will *always* work, you probably want this one. - -case $host_os in -aix4* | aix5*) - lt_cv_deplibs_check_method=pass_all - ;; - -beos*) - lt_cv_deplibs_check_method=pass_all - ;; - -bsdi4*) - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)' - lt_cv_file_magic_cmd='/usr/bin/file -L' - lt_cv_file_magic_test_file=/shlib/libc.so - ;; - -cygwin* | mingw* | pw32*) - lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' - lt_cv_file_magic_cmd='$OBJDUMP -f' - ;; - -darwin* | rhapsody*) - lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library' - lt_cv_file_magic_cmd='/usr/bin/file -L' - case "$host_os" in - rhapsody* | darwin1.[[012]]) - lt_cv_file_magic_test_file=`echo /System/Library/Frameworks/System.framework/Versions/*/System | head -1` - ;; - *) # Darwin 1.3 on - lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib' - ;; - esac - ;; - -freebsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - case $host_cpu in - i*86 ) - # Not sure whether the presence of OpenBSD here was a mistake. - # Let's accept both of them until this is cleared up. - lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[[3-9]]86 (compact )?demand paged shared library' - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` - ;; - esac - else - lt_cv_deplibs_check_method=pass_all - fi - ;; - -gnu*) - lt_cv_deplibs_check_method=pass_all - ;; - -hpux10.20*|hpux11*) - lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library' - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=/usr/lib/libc.sl - ;; - -irix5* | irix6* | nonstopux*) - case $host_os in - irix5* | nonstopux*) - # this will be overridden with pass_all, but let us keep it just in case - lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1" - ;; - *) - case $LD in - *-32|*"-32 ") libmagic=32-bit;; - *-n32|*"-n32 ") libmagic=N32;; - *-64|*"-64 ") libmagic=64-bit;; - *) libmagic=never-match;; - esac - # this will be overridden with pass_all, but let us keep it just in case - lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[[1234]] dynamic lib MIPS - version 1" - ;; - esac - lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*` - lt_cv_deplibs_check_method=pass_all - ;; - -# This must be Linux ELF. -linux-gnu*) - case $host_cpu in - alpha* | hppa* | i*86 | mips | mipsel | powerpc* | sparc* | ia64*) - lt_cv_deplibs_check_method=pass_all ;; - *) - # glibc up to 2.1.1 does not perform some relocations on ARM - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' ;; - esac - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[[^/\.]]+\.so\.[[0-9]]+\.[[0-9]]+$' - else - lt_cv_deplibs_check_method='match_pattern /lib[[^/\.]]+\.so$' - fi - ;; - -newos6*) - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)' - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=/usr/lib/libnls.so - ;; - -openbsd*) - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB shared object' - else - lt_cv_deplibs_check_method='file_magic OpenBSD.* shared library' - fi - ;; - -osf3* | osf4* | osf5*) - # this will be overridden with pass_all, but let us keep it just in case - lt_cv_deplibs_check_method='file_magic COFF format alpha shared library' - lt_cv_file_magic_test_file=/shlib/libc.so - lt_cv_deplibs_check_method=pass_all - ;; - -sco3.2v5*) - lt_cv_deplibs_check_method=pass_all - ;; - -solaris*) - lt_cv_deplibs_check_method=pass_all - lt_cv_file_magic_test_file=/lib/libc.so - ;; - -sysv5uw[[78]]* | sysv4*uw2*) - lt_cv_deplibs_check_method=pass_all - ;; - -sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - case $host_vendor in - motorola) - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]' - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` - ;; - ncr) - lt_cv_deplibs_check_method=pass_all - ;; - sequent) - lt_cv_file_magic_cmd='/bin/file' - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' - ;; - sni) - lt_cv_file_magic_cmd='/bin/file' - lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib" - lt_cv_file_magic_test_file=/lib/libc.so - ;; - siemens) - lt_cv_deplibs_check_method=pass_all - ;; - esac - ;; -esac -]) -file_magic_cmd=$lt_cv_file_magic_cmd -deplibs_check_method=$lt_cv_deplibs_check_method -]) - - -# AC_PROG_NM - find the path to a BSD-compatible name lister -AC_DEFUN([AC_PROG_NM], -[AC_REQUIRE([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR])dnl -AC_MSG_CHECKING([for BSD-compatible nm]) -AC_CACHE_VAL(lt_cv_path_NM, -[if test -n "$NM"; then - # Let the user override the test. - lt_cv_path_NM="$NM" -else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do - test -z "$ac_dir" && ac_dir=. - tmp_nm=$ac_dir/${ac_tool_prefix}nm - if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then - # Check to see if the nm accepts a BSD-compat flag. - # Adding the `sed 1q' prevents false positives on HP-UX, which says: - # nm: unknown option "B" ignored - # Tru64's nm complains that /dev/null is an invalid object file - if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then - lt_cv_path_NM="$tmp_nm -B" - break - elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then - lt_cv_path_NM="$tmp_nm -p" - break - else - lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but - continue # so that we can try to find one that supports BSD flags - fi - fi - done - IFS="$ac_save_ifs" - test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm -fi]) -NM="$lt_cv_path_NM" -AC_MSG_RESULT([$NM]) -]) - -# AC_CHECK_LIBM - check for math library -AC_DEFUN([AC_CHECK_LIBM], -[AC_REQUIRE([CL_CANONICAL_HOST])dnl -LIBM= -case $host in -*-*-beos* | *-*-cygwin* | *-*-pw32*) - # These system don't have libm - ;; -*-ncr-sysv4.3*) - AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw") - AC_CHECK_LIB(m, main, LIBM="$LIBM -lm") - ;; -*) - AC_CHECK_LIB(m, main, LIBM="-lm") - ;; -esac -]) - -# AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for -# the libltdl convenience library and LTDLINCL to the include flags for -# the libltdl header and adds --enable-ltdl-convenience to the -# configure arguments. Note that LIBLTDL and LTDLINCL are not -# AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If DIR is not -# provided, it is assumed to be `libltdl'. LIBLTDL will be prefixed -# with '${top_builddir}/' and LTDLINCL will be prefixed with -# '${top_srcdir}/' (note the single quotes!). If your package is not -# flat and you're not using automake, define top_builddir and -# top_srcdir appropriately in the Makefiles. -AC_DEFUN([AC_LIBLTDL_CONVENIENCE], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl - case $enable_ltdl_convenience in - no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;; - "") enable_ltdl_convenience=yes - ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;; - esac - LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la - LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) - # For backwards non-gettext consistent compatibility... - INCLTDL="$LTDLINCL" -]) - -# AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for -# the libltdl installable library and LTDLINCL to the include flags for -# the libltdl header and adds --enable-ltdl-install to the configure -# arguments. Note that LIBLTDL and LTDLINCL are not AC_SUBSTed, nor is -# AC_CONFIG_SUBDIRS called. If DIR is not provided and an installed -# libltdl is not found, it is assumed to be `libltdl'. LIBLTDL will -# be prefixed with '${top_builddir}/' and LTDLINCL will be prefixed -# with '${top_srcdir}/' (note the single quotes!). If your package is -# not flat and you're not using automake, define top_builddir and -# top_srcdir appropriately in the Makefiles. -# In the future, this macro may have to be called after AC_PROG_LIBTOOL. -AC_DEFUN([AC_LIBLTDL_INSTALLABLE], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl - AC_CHECK_LIB(ltdl, main, - [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no], - [if test x"$enable_ltdl_install" = xno; then - AC_MSG_WARN([libltdl not installed, but installation disabled]) - else - enable_ltdl_install=yes - fi - ]) - if test x"$enable_ltdl_install" = x"yes"; then - ac_configure_args="$ac_configure_args --enable-ltdl-install" - LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la - LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) - else - ac_configure_args="$ac_configure_args --enable-ltdl-install=no" - LIBLTDL="-lltdl" - LTDLINCL= - fi - # For backwards non-gettext consistent compatibility... - INCLTDL="$LTDLINCL" -]) - -# old names -AC_DEFUN([AM_PROG_LIBTOOL], [AC_PROG_LIBTOOL]) -AC_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) -AC_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) -AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) -AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) -AC_DEFUN([AM_PROG_LD], [AC_PROG_LD]) -AC_DEFUN([AM_PROG_NM], [AC_PROG_NM]) - -# This is just to silence aclocal about the macro not being used -ifelse([AC_DISABLE_FAST_INSTALL]) - -# NOTE: This macro has been submitted for inclusion into # -# GNU Autoconf as AC_PROG_SED. When it is available in # -# a released version of Autoconf we should remove this # -# macro and use it instead. # -# LT_AC_PROG_SED -# -------------- -# Check for a fully-functional sed program, that truncates -# as few characters as possible. Prefer GNU sed if found. -AC_DEFUN([LT_AC_PROG_SED], -[AC_MSG_CHECKING([for a sed that does not truncate output]) -AC_CACHE_VAL(lt_cv_path_SED, -[# Loop through the user's path and test for sed and gsed. -# Then use that list of sed's as ones to test for truncation. -as_executable_p="test -f" -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in sed gsed; do - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then - _sed_list="$_sed_list $as_dir/$ac_prog$ac_exec_ext" - fi - done - done -done - - # Create a temporary directory, and hook for its removal unless debugging. -$debug || -{ - trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 - trap '{ (exit 1); exit 1; }' 1 2 13 15 -} - -# Create a (secure) tmp directory for tmp files. -: ${TMPDIR=/tmp} -{ - tmp=`(umask 077 && mktemp -d -q "$TMPDIR/sedXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" -} || -{ - tmp=$TMPDIR/sed$$-$RANDOM - (umask 077 && mkdir $tmp) -} || -{ - echo "$me: cannot create a temporary directory in $TMPDIR" >&2 - { (exit 1); exit 1; } -} - _max=0 - _count=0 - # Add /usr/xpg4/bin/sed as it is typically found on Solaris - # along with /bin/sed that truncates output. - for _sed in $_sed_list /usr/xpg4/bin/sed; do - test ! -f ${_sed} && break - cat /dev/null > "$tmp/sed.in" - _count=0 - echo ${ECHO_N-$ac_n} "0123456789${ECHO_C-$ac_c}" >"$tmp/sed.in" - # Check for GNU sed and select it if it is found. - if "${_sed}" --version 2>&1 < /dev/null | egrep '(GNU)' > /dev/null; then - lt_cv_path_SED=${_sed} - break - fi - while true; do - cat "$tmp/sed.in" "$tmp/sed.in" >"$tmp/sed.tmp" - mv "$tmp/sed.tmp" "$tmp/sed.in" - cp "$tmp/sed.in" "$tmp/sed.nl" - echo >>"$tmp/sed.nl" - ${_sed} -e 's/a$//' < "$tmp/sed.nl" >"$tmp/sed.out" || break - cmp -s "$tmp/sed.out" "$tmp/sed.nl" || break - # 40000 chars as input seems more than enough - test $_count -gt 10 && break - _count=`expr $_count + 1` - if test $_count -gt $_max; then - _max=$_count - lt_cv_path_SED=$_sed - fi - done - done - rm -rf "$tmp" -]) -if test "X$SED" != "X"; then - lt_cv_path_SED=$SED -else - SED=$lt_cv_path_SED -fi -AC_MSG_RESULT([$SED]) -]) - -dnl Copyright (C) 1993-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels, Sam Steingold. - -AC_PREREQ(2.13) - -AC_DEFUN([CL_PCC_STRUCT_RETURN], -[AC_CACHE_CHECK([for pcc non-reentrant struct return convention], cl_cv_c_struct_return_static, [ -save_CFLAGS="$CFLAGS" -test $CC_GCC = true && CFLAGS="$CFLAGS -O0" -AC_TRY_RUN([typedef struct { int a; int b; int c; int d; int e; } foo; -foo foofun () { static foo foopi = {3141,5926,5358,9793,2385}; return foopi; } -foo* (*fun) () = (foo* (*) ()) foofun; -int main() -{ foo foo1; - foo* fooptr1; - foo foo2; - foo* fooptr2; - foo1 = foofun(); fooptr1 = (*fun)(&foo1); - foo2 = foofun(); fooptr2 = (*fun)(&foo2); - exit(!(fooptr1 == fooptr2 && fooptr1->c == 5358)); -}], cl_cv_c_struct_return_static=yes, rm -f core -cl_cv_c_struct_return_static=no, -dnl When cross-compiling, don't assume anything. -dnl There are even weirder return value passing conventions than pcc. -cl_cv_c_struct_return_static="guessing no") -CFLAGS="$save_CFLAGS" -]) -case "$cl_cv_c_struct_return_static" in - *yes) AC_DEFINE(__PCC_STRUCT_RETURN__) ;; - *no) ;; -esac -]) - -dnl Copyright (C) 1993-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels. - -AC_PREREQ(2.13) - -AC_DEFUN([CL_SMALL_STRUCT_RETURN], -[AC_CACHE_CHECK([whether small structs are returned in registers], cl_cv_c_struct_return_small, [ -AC_TRY_RUN([typedef struct { int x; } foo; int y; -foo foofun () { foo f; f.x = y; return f; } -int (*fun) () = (int (*) ()) foofun; -int main() -{ y = 37; if ((*fun)() != 37) exit(1); - y = 55; if ((*fun)() != 55) exit(1); - exit(0); -}], cl_cv_c_struct_return_small=yes, rm -f core -cl_cv_c_struct_return_small=no, -dnl When cross-compiling, don't assume anything. -dnl There are even weirder return value passing conventions than pcc. -cl_cv_c_struct_return_small="guessing no") -]) -case "$cl_cv_c_struct_return_small" in - *yes) AC_DEFINE(__SMALL_STRUCT_RETURN__) ;; - *no) ;; -esac -]) - -dnl Copyright (C) 1993-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels. - -AC_PREREQ(2.13) - -AC_DEFUN([CL_IREG_FLOAT_RETURN], -[AC_CACHE_CHECK([whether floats are returned in integer registers], cl_cv_c_float_return_ireg, [ -AC_TRY_RUN([float x = (float)1.2; -float y = (float)1.3; -float fun () { return x*y; } -int main() -{ int val = (* (int (*) ()) fun) (); - exit (!(val == 0x3FC7AE15 || val == 0x15AEC73F)); -}], cl_cv_c_float_return_ireg=yes, rm -f core -cl_cv_c_float_return_ireg=no, -dnl When cross-compiling, assume no, because that's how it comes out on -dnl most platforms with floating-point unit, including m68k-linux. -cl_cv_c_float_return_ireg="guessing no") -]) -case "$cl_cv_c_float_return_ireg" in - *yes) AC_DEFINE(__IREG_FLOAT_RETURN__) ;; - *no) ;; -esac -]) - -dnl -*- Autoconf -*- -dnl Copyright (C) 1993-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels, Sam Steingold. - -AC_PREREQ(2.57) - -AC_DEFUN([CL_LONGLONG], -[AC_CACHE_CHECK(for long long type, cl_cv_c_longlong, [ -AC_TRY_RUN([int main() -{ -/* long longs don't work right with gcc-2.7.2 on m68k */ -/* long longs don't work right with gcc-2.7.2 on rs6000: avcall/tests.c gets - miscompiled. */ -#if defined(__m68k__) || (defined(_IBMR2) || defined(__powerpc)) -#if defined(__GNUC__) && (__GNUC__ == 2) && (__GNUC_MINOR__ <= 7) - exit(1); -#endif -#endif - { long x = 944938507; long y = 737962842; long z = 162359677; - exit(!(((long long) x)*((long long) y)>>32 == z)); - } -}], -cl_cv_c_longlong=yes, cl_cv_c_longlong=no, -dnl When cross-compiling, don't assume anything. -cl_cv_c_longlong="guessing no") -]) -case "$cl_cv_c_longlong" in - *yes) AC_DEFINE(HAVE_LONGLONG,,[compiler supports the `long long' type]) ;; - *no) ;; -esac -]) - -dnl -*- Autoconf -*- -dnl Copyright (C) 1993-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels, Sam Steingold - -AC_PREREQ(2.57) - -AC_DEFUN([RL_VOID], -[CL_COMPILE_CHECK([working void], rl_cv_c_void, , -[void f(); -typedef void x; x g(); -typedef void* y; y a; -], , AC_DEFINE([void],[char],[Define to, say, char, if your system does not support void type]))dnl -]) - -AC_DEFUN([CL_VOID], -[CL_COMPILE_CHECK([working void], cl_cv_c_void, , -[void f(); -typedef void x; x g(); -typedef void* y; y a; -], have_void=1, AC_DEFINE(void,char,[Define to, say, char, if your system does not support void type]))dnl -if test -n "$have_void"; then -CL_COMPILE_CHECK([working \"return void\"], cl_cv_c_return_void, -[void f() {} typedef void x; x g() { return f(); }], [], -cl_cv_c_return_void_form=return, cl_cv_c_return_void_form="") -fi -AC_DEFINE_UNQUOTED(return_void,$cl_cv_c_return_void_form,[Define as `return' if your compiler allows returning expressions of type `void' from functions]) -]) - -dnl Copyright (C) 1993-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels. - -AC_PREREQ(2.13) - -AC_DEFUN([CL_STDC_HEADERS], -dnl This is AC_STDC_HEADERS from Autoconf 1.2. The AC_STDC_HEADERS from -dnl Autoconf 1.3 fails on 386BSD because it checks for correct ANSI ctype -dnl macros and 386BSD (as well as SGI's /bin/cc from Irix-4.0.5) doesn't -dnl have them. But we don't need them! -dnl The same holds for the mem* functions in and SunOS. -[CL_CPP_CHECK([ANSI C header files], cl_cv_header_stdc, -[#include -#include -#include -#include -#include ], AC_DEFINE(STDC_HEADERS)) -]) - -dnl -*- Autoconf -*- -dnl Copyright (C) 1993-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels, Sam Steingold. - -AC_PREREQ(2.57) - -AC_DEFUN([CL_GETPAGESIZE], -[AC_BEFORE([$0], [CL_MPROTECT]) -CL_LINK_CHECK([getpagesize], cl_cv_func_getpagesize, [ -#ifdef HAVE_UNISTD_H -#include -#include -#endif -], [getpagesize();], -AC_DEFINE(HAVE_GETPAGESIZE,,[have getpagesize()]) -have_getpagesize=1)dnl -if test -n "$have_getpagesize"; then -CL_PROTO([getpagesize], [ -CL_PROTO_RET([ -#include -#ifdef HAVE_UNISTD_H -#include -#endif -], [int getpagesize();], [int getpagesize();], -cl_cv_proto_getpagesize_ret, int, size_t) -], [extern $cl_cv_proto_getpagesize_ret getpagesize (void);]) -AC_DEFINE_UNQUOTED(RETGETPAGESIZETYPE,$cl_cv_proto_getpagesize_ret,[return type of getpagesize()]) -else -dnl Otherwise we use PAGESIZE defined in . -dnl But mingw32 doesn't have . -AC_CHECK_HEADERS(sys/param.h) -fi -]) - -dnl -*- Autoconf -*- -dnl Copyright (C) 1993-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels, Sam Steingold. - -AC_PREREQ(2.57) - -AC_DEFUN([CL_MPROTECT], -[AC_REQUIRE([CL_GETPAGESIZE])dnl -AC_REQUIRE([CL_MMAP])dnl -AC_CHECK_FUNCS(mprotect)dnl -if test $ac_cv_func_mprotect = yes; then -AC_CACHE_CHECK(for working mprotect, cl_cv_func_mprotect_works, [ -mprotect_prog=' -#include -/* declare malloc() */ -#include -#ifdef HAVE_UNISTD_H -#include -#endif -/* declare getpagesize() and mprotect() */ -#include -#ifndef HAVE_GETPAGESIZE -#include -#define getpagesize() PAGESIZE -#else -]AC_LANG_EXTERN[ -#if defined(__STDC__) || defined(__cplusplus) -RETGETPAGESIZETYPE getpagesize (void); -#else -RETGETPAGESIZETYPE getpagesize(); -#endif -#endif -char foo; -int main () { - unsigned long pagesize = getpagesize(); -#define page_align(address) (char*)((unsigned long)(address) & -pagesize) -' -AC_TRY_RUN([$mprotect_prog - if ((pagesize-1) & pagesize) exit(1); - exit(0); }], , no_mprotect=1, -# When cross-compiling, don't assume anything. -no_mprotect=1) -mprotect_prog="$mprotect_prog"' - char* area = (char*) malloc(6*pagesize); - char* fault_address = area + pagesize*7/2; -' -if test -z "$no_mprotect"; then -AC_TRY_RUN([$mprotect_prog - if (mprotect(page_align(fault_address),pagesize,PROT_NONE) < 0) exit(0); - foo = *fault_address; /* this should cause a core dump */ - exit(0); }], - no_mprotect=1, rm -f core, -: # When cross-compiling, don't assume anything. -) -fi -if test -z "$no_mprotect"; then -AC_TRY_RUN([$mprotect_prog - if (mprotect(page_align(fault_address),pagesize,PROT_NONE) < 0) exit(0); - *fault_address = 'z'; /* this should cause a core dump */ - exit(0); }], - no_mprotect=1, rm -f core, -: # When cross-compiling, don't assume anything. -) -fi -if test -z "$no_mprotect"; then -AC_TRY_RUN([$mprotect_prog - if (mprotect(page_align(fault_address),pagesize,PROT_READ) < 0) exit(0); - *fault_address = 'z'; /* this should cause a core dump */ - exit(0); }], - no_mprotect=1, rm -f core, -: # When cross-compiling, don't assume anything. -) -fi -if test -z "$no_mprotect"; then -AC_TRY_RUN([$mprotect_prog - if (mprotect(page_align(fault_address),pagesize,PROT_READ) < 0) exit(1); - if (mprotect(page_align(fault_address),pagesize,PROT_READ|PROT_WRITE) < 0) exit(1); - *fault_address = 'z'; /* this should not cause a core dump */ - exit(0); }], , no_mprotect=1 -rm -f core, -: # When cross-compiling, don't assume anything. -) -fi -if test -z "$no_mprotect"; then - cl_cv_func_mprotect_works=yes -else - cl_cv_func_mprotect_works=no -fi -]) -if test $cl_cv_func_mprotect_works = yes; then - AC_DEFINE(HAVE_WORKING_MPROTECT,,[have a working mprotect() function]) -fi -fi -]) - -dnl -*- Autoconf -*- -dnl Copyright (C) 1993-2004 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels, Sam Steingold. - -AC_PREREQ(2.57) - -AC_DEFUN([CL_MMAP], -[AC_REQUIRE([CL_OPENFLAGS])dnl -AC_BEFORE([$0], [CL_MUNMAP])AC_BEFORE([$0], [CL_MPROTECT]) -AC_CHECK_HEADER(sys/mman.h, , no_mmap=1)dnl -if test -z "$no_mmap"; then -AC_CHECK_FUNC(mmap, , no_mmap=1)dnl -if test -z "$no_mmap"; then -AC_DEFINE(HAVE_MMAP,,[have and the mmap() function]) -AC_CACHE_CHECK(for working mmap, cl_cv_func_mmap_works, [ -case "$host" in - i[34567]86-*-sysv4*) - # UNIX_SYSV_UHC_1 - avoid=0x08000000 ;; - mips-sgi-irix* | mips-dec-ultrix*) - # UNIX_IRIX, UNIX_DEC_ULTRIX - avoid=0x10000000 ;; - rs6000-ibm-aix*) - # UNIX_AIX - avoid=0x20000000 ;; - *) - avoid=0 ;; -esac -mmap_prog_1=' -#include -#ifdef HAVE_UNISTD_H -#include -#endif -#include -#ifdef OPEN_NEEDS_SYS_FILE_H -#include -#endif -#include -#include -int main () { -' -mmap_prog_2="#define bits_to_avoid $avoid"' -#define my_shift 24 -#define my_low 1 -#ifdef FOR_SUN4_29 -#define my_high 31 -#define my_size 32768 /* hope that 32768 is a multiple of the page size */ -/* i*32 KB for i=1..31 gives a total of 15.5 MB, which is close to what we need */ -#else -#define my_high 64 -#define my_size 8192 /* hope that 8192 is a multiple of the page size */ -/* i*8 KB for i=1..64 gives a total of 16.25 MB, which is close to what we need */ -#endif - {long i; -#define i_ok(i) ((i) & (bits_to_avoid >> my_shift) == 0) - for (i=my_low; i<=my_high; i++) - if (i_ok(i)) - { caddr_t addr = (caddr_t)(i << my_shift); -/* Check for 8 MB, not 16 MB. This is more likely to work on Solaris 2. */ -#if bits_to_avoid - long size = i*my_size; -#else - long size = ((i+1)/2)*my_size; -#endif - if (mmap(addr,size,PROT_READ|PROT_WRITE,flags|MAP_FIXED,fd,0) == (void*)-1) exit(1); - } -#define x(i) *(unsigned char *) ((i<=my_low; i--) if (i_ok(i)) { if (x(i) != y(i)) exit(1); } - exit(0); -}} -' -AC_TRY_RUN([$mmap_prog_1 - int flags = MAP_ANON | MAP_PRIVATE; - int fd = -1; -$mmap_prog_2 -], have_mmap_anon=1 -cl_cv_func_mmap_anon=yes, rm -f core, -: # When cross-compiling, don't assume anything. -) -AC_TRY_RUN([$mmap_prog_1 - int flags = MAP_ANONYMOUS | MAP_PRIVATE; - int fd = -1; -$mmap_prog_2 -], have_mmap_anon=1 -cl_cv_func_mmap_anonymous=yes, rm -f core, -: # When cross-compiling, don't assume anything. -) -AC_TRY_RUN([$mmap_prog_1 -#ifndef MAP_FILE -#define MAP_FILE 0 -#endif - int flags = MAP_FILE | MAP_PRIVATE; - int fd = open("/dev/zero",O_RDONLY,0666); - if (fd<0) exit(1); -$mmap_prog_2 -], have_mmap_devzero=1 -cl_cv_func_mmap_devzero=yes, rm -f core -retry_mmap=1, -: # When cross-compiling, don't assume anything. -) -if test -n "$retry_mmap"; then -AC_TRY_RUN([#define FOR_SUN4_29 -$mmap_prog_1 -#ifndef MAP_FILE -#define MAP_FILE 0 -#endif - int flags = MAP_FILE | MAP_PRIVATE; - int fd = open("/dev/zero",O_RDONLY,0666); - if (fd<0) exit(1); -$mmap_prog_2 -], have_mmap_devzero=1 -cl_cv_func_mmap_devzero_sun4_29=yes, rm -f core, -: # When cross-compiling, don't assume anything. -) -fi -if test -n "$have_mmap_anon" -o -n "$have_mmap_devzero"; then -cl_cv_func_mmap_works=yes -else -cl_cv_func_mmap_works=no -fi -]) -if test "$cl_cv_func_mmap_anon" = yes; then -AC_DEFINE(HAVE_MMAP_ANON,,[ defines MAP_ANON and mmaping with MAP_ANON works]) -fi -if test "$cl_cv_func_mmap_anonymous" = yes; then -AC_DEFINE(HAVE_MMAP_ANONYMOUS,,[ defines MAP_ANONYMOUS and mmaping with MAP_ANONYMOUS works]) -fi -if test "$cl_cv_func_mmap_devzero" = yes; then -AC_DEFINE(HAVE_MMAP_DEVZERO,,[mmaping of the special device /dev/zero works]) -fi -if test "$cl_cv_func_mmap_devzero_sun4_29" = yes; then -AC_DEFINE(HAVE_MMAP_DEVZERO_SUN4_29,,[mmaping of the special device /dev/zero works, but only on addresses < 2^29]) -fi -fi -fi -]) - -dnl -*- Autoconf -*- -dnl Copyright (C) 1993-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels, Sam Steingold. - -AC_PREREQ(2.57) - -AC_DEFUN([CL_OPENFLAGS], -dnl BSD systems require #include for O_RDWR etc. being defined. -[AC_BEFORE([$0], [CL_MMAP]) -AC_CHECK_HEADERS(sys/file.h) -if test $ac_cv_header_sys_file_h = yes; then -openflags_decl=' -#include -#ifdef HAVE_UNISTD_H -#include -#include -#endif -#include -' -openflags_prog='int x = O_RDWR | O_RDONLY | O_WRONLY | O_CREAT | O_TRUNC;' -CL_COMPILE_CHECK([O_RDWR in fcntl.h], cl_cv_decl_O_RDWR_fcntl_h, -$openflags_decl, $openflags_prog, openflags_ok=1)dnl -if test -z "$openflags_ok"; then -dnl CL_COMPILE_CHECK([O_RDWR in sys/file.h], cl_cv_decl_O_RDWR_sys_file_h, -dnl $openflags_decl[#include ], $openflags_prog, -AC_DEFINE(OPEN_NEEDS_SYS_FILE_H,,[need for using open() flags like O_RDWR]) -dnl openflags_ok=1)dnl -fi -fi -]) - -dnl Copyright (C) 1993-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels. - -AC_PREREQ(2.13) - -dnl CL_PROTO(IDENTIFIER, ACTION-IF-NOT-FOUND, FINAL-PROTOTYPE) -AC_DEFUN([CL_PROTO], -[AC_MSG_CHECKING([for $1 declaration]) -AC_CACHE_VAL(cl_cv_proto_[$1], [$2 -cl_cv_proto_$1="$3"]) -cl_cv_proto_$1=`echo "[$]cl_cv_proto_$1" | tr -s ' ' | sed -e 's/( /(/'` -AC_MSG_RESULT([$]{ac_t:- - }[$]cl_cv_proto_$1) -]) - -dnl CL_PROTO_RET(INCLUDES, ANSI-DECL, TRAD-DECL, CACHE-ID, TYPE-IF-OK, TYPE-IF-FAILS) -AC_DEFUN([CL_PROTO_RET], -[AC_TRY_COMPILE([$1] -AC_LANG_EXTERN -[#if defined(__STDC__) || defined(__cplusplus) -$2 -#else -$3 -#endif -], [], $4="$5", $4="$6") -]) - -dnl CL_PROTO_TRY(INCLUDES, ANSI-DECL, TRAD-DECL, ACTION-IF-OK, ACTION-IF-FAILS) -AC_DEFUN([CL_PROTO_TRY], -[AC_TRY_COMPILE([$1] -AC_LANG_EXTERN -[#if defined(__STDC__) || defined(__cplusplus) -$2 -#else -$3 -#endif -], [], [$4], [$5]) -]) - -dnl CL_PROTO_CONST(INCLUDES, ANSI-DECL, TRAD-DECL, CACHE-ID) -AC_DEFUN([CL_PROTO_CONST], -[CL_PROTO_TRY([$1], [$2], [$3], $4="", $4="const")] -) - -dnl -*- Autoconf -*- -dnl Copyright (C) 1993-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels, Sam Steingold. - -AC_PREREQ(2.57) - -AC_DEFUN([CL_MACH_VM], -[CL_LINK_CHECK([vm_allocate], cl_cv_func_vm, - , [vm_allocate(); task_self();], -AC_DEFINE(HAVE_MACH_VM,,[have vm_allocate() and task_self() functions])dnl -)]) - -dnl -*- Autoconf -*- -dnl Copyright (C) 1993-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels, Sam Steingold. - -AC_PREREQ(2.57) - -AC_DEFUN([CL_SHM_H], -[AC_BEFORE([$0], [CL_SHM_RMID])dnl -AC_CHECK_HEADERS(sys/shm.h) -if test $ac_cv_header_sys_shm_h = yes; then -AC_CHECK_HEADERS(sys/ipc.h) -fi -]) - -AC_DEFUN([CL_SHM], -[AC_BEFORE([$0], [CL_SHM_RMID])dnl -if test "$ac_cv_header_sys_shm_h" = yes -a "$ac_cv_header_sys_ipc_h" = yes; then -# This test is from Marcus Daniels -AC_CACHE_CHECK(for working shared memory, cl_cv_sys_shm_works, [ -AC_TRY_RUN([#include -#include -#include -/* try attaching a single segment to multiple addresses */ -#define segsize 0x10000 -#define attaches 128 -#define base_addr 0x01000000 -int main () -{ int shmid, i; char* addr; char* result; - if ((shmid = shmget(IPC_PRIVATE,segsize,0400)) < 0) exit(1); - for (i=0, addr = (char*)0x01000000; i and and shared memory works]) - AC_CHECK_HEADERS(sys/sysmacros.h) - ;; - *) ;; -esac -]) - -dnl Copyright (C) 1993-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels. - -AC_PREREQ(2.13) - -AC_DEFUN([CL_CODEEXEC], -[AC_CACHE_CHECK([whether code in malloc'ed memory is executable], cl_cv_codeexec, [ -dnl The test below does not work on host=hppa*-hp-hpux* because on this system -dnl function pointers are actually pointers into(!) a two-pointer struct. -dnl The test below does not work on host=rs6000-*-* because on this system -dnl function pointers are actually pointers to a three-pointer struct. -case "$host_os" in - hpux*) cl_cv_codeexec="guessing yes" ;; - *) -case "$host_cpu" in - # On host=rs6000-*-aix3.2.5 malloc'ed memory is indeed not executable. - rs6000) cl_cv_codeexec="guessing no" ;; - *) -AC_TRY_RUN([ -#include -/* declare malloc() */ -#include -int fun () { return 31415926; } -int main () -{ long size = (char*)&main - (char*)&fun; - char* funcopy = (char*) malloc(size); - int i; - for (i = 0; i < size; i++) { funcopy[i] = ((char*)&fun)[i]; } - exit(!((*(int(*)())funcopy)() == 31415926)); -}], cl_cv_codeexec=yes, rm -f core -cl_cv_codeexec=no, cl_cv_codeexec="guessing yes") - ;; -esac - ;; -esac -]) -case "$cl_cv_codeexec" in - *yes) AC_DEFINE(CODE_EXECUTABLE) ;; - *no) ;; -esac -]) - DELETED ffcall/autoconf/autoconf.m4 Index: ffcall/autoconf/autoconf.m4 ================================================================== --- ffcall/autoconf/autoconf.m4 +++ /dev/null @@ -1,27 +0,0 @@ -dnl Driver that loads the Autoconf macro files. -dnl Requires GNU m4. -dnl This file is part of Autoconf. -dnl Copyright (C) 1994 Free Software Foundation, Inc. -dnl -dnl This program is free software; you can redistribute it and/or modify -dnl it under the terms of the GNU General Public License as published by -dnl the Free Software Foundation; either version 2, or (at your option) -dnl any later version. -dnl -dnl This program is distributed in the hope that it will be useful, -dnl but WITHOUT ANY WARRANTY; without even the implied warranty of -dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -dnl GNU General Public License for more details. -dnl -dnl You should have received a copy of the GNU General Public License -dnl along with this program; if not, write to the Free Software -dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -dnl 02111-1307, USA. -dnl -dnl Written by David MacKenzie. -dnl -include(acgeneral.m4)dnl -builtin(include, acspecific.m4)dnl -dnl Do not sinclude acsite.m4 here, because it may not be installed -dnl yet when Autoconf is frozen. -dnl Do not sinclude ./aclocal.m4 here, to prevent it from being frozen. DELETED ffcall/autoconf/config.guess Index: ffcall/autoconf/config.guess ================================================================== --- ffcall/autoconf/config.guess +++ /dev/null @@ -1,1456 +0,0 @@ -#! /bin/sh -# Attempt to guess a canonical system name. -# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -# 2000, 2001, 2002, 2003 Free Software Foundation, Inc. - -timestamp='2004-03-03' - -# This file is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# Originally written by Per Bothner . -# Please send patches to . Submit a context -# diff and a properly formatted ChangeLog entry. -# -# This script attempts to guess a canonical system name similar to -# config.sub. If it succeeds, it prints the system name on stdout, and -# exits with 0. Otherwise, it exits with 1. -# -# The plan is that this can be called by configure scripts if you -# don't specify an explicit build system type. - -me=`echo "$0" | sed -e 's,.*/,,'` - -usage="\ -Usage: $0 [OPTION] - -Output the configuration name of the system \`$me' is run on. - -Operation modes: - -h, --help print this help, then exit - -t, --time-stamp print date of last modification, then exit - -v, --version print version number, then exit - -Report bugs and patches to ." - -version="\ -GNU config.guess ($timestamp) - -Originally written by Per Bothner. -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 -Free Software Foundation, Inc. - -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." - -help=" -Try \`$me --help' for more information." - -# Parse command line -while test $# -gt 0 ; do - case $1 in - --time-stamp | --time* | -t ) - echo "$timestamp" ; exit 0 ;; - --version | -v ) - echo "$version" ; exit 0 ;; - --help | --h* | -h ) - echo "$usage"; exit 0 ;; - -- ) # Stop option processing - shift; break ;; - - ) # Use stdin as input. - break ;; - -* ) - echo "$me: invalid option $1$help" >&2 - exit 1 ;; - * ) - break ;; - esac -done - -if test $# != 0; then - echo "$me: too many arguments$help" >&2 - exit 1 -fi - -trap 'exit 1' 1 2 15 - -# CC_FOR_BUILD -- compiler used by this script. Note that the use of a -# compiler to aid in system detection is discouraged as it requires -# temporary files to be created and, as you can see below, it is a -# headache to deal with in a portable fashion. - -# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still -# use `HOST_CC' if defined, but it is deprecated. - -# Portable tmp directory creation inspired by the Autoconf team. - -set_cc_for_build=' -trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; -trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; -: ${TMPDIR=/tmp} ; - { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || - { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || - { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || - { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; -dummy=$tmp/dummy ; -tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; -case $CC_FOR_BUILD,$HOST_CC,$CC in - ,,) echo "int x;" > $dummy.c ; - for c in cc gcc c89 c99 ; do - if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then - CC_FOR_BUILD="$c"; break ; - fi ; - done ; - if test x"$CC_FOR_BUILD" = x ; then - CC_FOR_BUILD=no_compiler_found ; - fi - ;; - ,,*) CC_FOR_BUILD=$CC ;; - ,*,*) CC_FOR_BUILD=$HOST_CC ;; -esac ;' - -# This is needed to find uname on a Pyramid OSx when run in the BSD universe. -# (ghazi@noc.rutgers.edu 1994-08-24) -if (test -f /.attbin/uname) >/dev/null 2>&1 ; then - PATH=$PATH:/.attbin ; export PATH -fi - -UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown -UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown -UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown -UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown - -# Note: order is significant - the case branches are not exclusive. - -case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in - *:NetBSD:*:*) - # NetBSD (nbsd) targets should (where applicable) match one or - # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, - # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently - # switched to ELF, *-*-netbsd* would select the old - # object file format. This provides both forward - # compatibility and a consistent mechanism for selecting the - # object file format. - # - # Note: NetBSD doesn't particularly care about the vendor - # portion of the name. We always set it to "unknown". - sysctl="sysctl -n hw.machine_arch" - UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ - /usr/sbin/$sysctl 2>/dev/null || echo unknown)` - case "${UNAME_MACHINE_ARCH}" in - armeb) machine=armeb-unknown ;; - arm*) machine=arm-unknown ;; - sh3el) machine=shl-unknown ;; - sh3eb) machine=sh-unknown ;; - *) machine=${UNAME_MACHINE_ARCH}-unknown ;; - esac - # The Operating System including object format, if it has switched - # to ELF recently, or will in the future. - case "${UNAME_MACHINE_ARCH}" in - arm*|i386|m68k|ns32k|sh3*|sparc|vax) - eval $set_cc_for_build - if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ - | grep __ELF__ >/dev/null - then - # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). - # Return netbsd for either. FIX? - os=netbsd - else - os=netbsdelf - fi - ;; - *) - os=netbsd - ;; - esac - # The OS release - # Debian GNU/NetBSD machines have a different userland, and - # thus, need a distinct triplet. However, they do not need - # kernel version information, so it can be replaced with a - # suitable tag, in the style of linux-gnu. - case "${UNAME_VERSION}" in - Debian*) - release='-gnu' - ;; - *) - release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` - ;; - esac - # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: - # contains redundant information, the shorter form: - # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. - echo "${machine}-${os}${release}" - exit 0 ;; - amd64:OpenBSD:*:*) - echo x86_64-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - amiga:OpenBSD:*:*) - echo m68k-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - arc:OpenBSD:*:*) - echo mipsel-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - cats:OpenBSD:*:*) - echo arm-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - hp300:OpenBSD:*:*) - echo m68k-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - mac68k:OpenBSD:*:*) - echo m68k-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - macppc:OpenBSD:*:*) - echo powerpc-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - mvme68k:OpenBSD:*:*) - echo m68k-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - mvme88k:OpenBSD:*:*) - echo m88k-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - mvmeppc:OpenBSD:*:*) - echo powerpc-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - pegasos:OpenBSD:*:*) - echo powerpc-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - pmax:OpenBSD:*:*) - echo mipsel-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - sgi:OpenBSD:*:*) - echo mipseb-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - sun3:OpenBSD:*:*) - echo m68k-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - wgrisc:OpenBSD:*:*) - echo mipsel-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - *:OpenBSD:*:*) - echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - *:ekkoBSD:*:*) - echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} - exit 0 ;; - macppc:MirBSD:*:*) - echo powerppc-unknown-mirbsd${UNAME_RELEASE} - exit 0 ;; - *:MirBSD:*:*) - echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} - exit 0 ;; - alpha:OSF1:*:*) - case $UNAME_RELEASE in - *4.0) - UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` - ;; - *5.*) - UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` - ;; - esac - # According to Compaq, /usr/sbin/psrinfo has been available on - # OSF/1 and Tru64 systems produced since 1995. I hope that - # covers most systems running today. This code pipes the CPU - # types through head -n 1, so we only detect the type of CPU 0. - ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` - case "$ALPHA_CPU_TYPE" in - "EV4 (21064)") - UNAME_MACHINE="alpha" ;; - "EV4.5 (21064)") - UNAME_MACHINE="alpha" ;; - "LCA4 (21066/21068)") - UNAME_MACHINE="alpha" ;; - "EV5 (21164)") - UNAME_MACHINE="alphaev5" ;; - "EV5.6 (21164A)") - UNAME_MACHINE="alphaev56" ;; - "EV5.6 (21164PC)") - UNAME_MACHINE="alphapca56" ;; - "EV5.7 (21164PC)") - UNAME_MACHINE="alphapca57" ;; - "EV6 (21264)") - UNAME_MACHINE="alphaev6" ;; - "EV6.7 (21264A)") - UNAME_MACHINE="alphaev67" ;; - "EV6.8CB (21264C)") - UNAME_MACHINE="alphaev68" ;; - "EV6.8AL (21264B)") - UNAME_MACHINE="alphaev68" ;; - "EV6.8CX (21264D)") - UNAME_MACHINE="alphaev68" ;; - "EV6.9A (21264/EV69A)") - UNAME_MACHINE="alphaev69" ;; - "EV7 (21364)") - UNAME_MACHINE="alphaev7" ;; - "EV7.9 (21364A)") - UNAME_MACHINE="alphaev79" ;; - esac - # A Pn.n version is a patched version. - # A Vn.n version is a released version. - # A Tn.n version is a released field test version. - # A Xn.n version is an unreleased experimental baselevel. - # 1.2 uses "1.2" for uname -r. - echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` - exit 0 ;; - Alpha*:OpenVMS:*:*) - echo alpha-hp-vms - exit 0 ;; - Alpha\ *:Windows_NT*:*) - # How do we know it's Interix rather than the generic POSIX subsystem? - # Should we change UNAME_MACHINE based on the output of uname instead - # of the specific Alpha model? - echo alpha-pc-interix - exit 0 ;; - 21064:Windows_NT:50:3) - echo alpha-dec-winnt3.5 - exit 0 ;; - Amiga*:UNIX_System_V:4.0:*) - echo m68k-unknown-sysv4 - exit 0;; - *:[Aa]miga[Oo][Ss]:*:*) - echo ${UNAME_MACHINE}-unknown-amigaos - exit 0 ;; - *:[Mm]orph[Oo][Ss]:*:*) - echo ${UNAME_MACHINE}-unknown-morphos - exit 0 ;; - *:OS/390:*:*) - echo i370-ibm-openedition - exit 0 ;; - *:OS400:*:*) - echo powerpc-ibm-os400 - exit 0 ;; - arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) - echo arm-acorn-riscix${UNAME_RELEASE} - exit 0;; - SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) - echo hppa1.1-hitachi-hiuxmpp - exit 0;; - Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) - # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. - if test "`(/bin/universe) 2>/dev/null`" = att ; then - echo pyramid-pyramid-sysv3 - else - echo pyramid-pyramid-bsd - fi - exit 0 ;; - NILE*:*:*:dcosx) - echo pyramid-pyramid-svr4 - exit 0 ;; - DRS?6000:unix:4.0:6*) - echo sparc-icl-nx6 - exit 0 ;; - DRS?6000:UNIX_SV:4.2*:7*) - case `/usr/bin/uname -p` in - sparc) echo sparc-icl-nx7 && exit 0 ;; - esac ;; - sun4H:SunOS:5.*:*) - echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit 0 ;; - sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) - echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit 0 ;; - i86pc:SunOS:5.*:*) - echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit 0 ;; - sun4*:SunOS:6*:*) - # According to config.sub, this is the proper way to canonicalize - # SunOS6. Hard to guess exactly what SunOS6 will be like, but - # it's likely to be more like Solaris than SunOS4. - echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit 0 ;; - sun4*:SunOS:*:*) - case "`/usr/bin/arch -k`" in - Series*|S4*) - UNAME_RELEASE=`uname -v` - ;; - esac - # Japanese Language versions have a version number like `4.1.3-JL'. - echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` - exit 0 ;; - sun3*:SunOS:*:*) - echo m68k-sun-sunos${UNAME_RELEASE} - exit 0 ;; - sun*:*:4.2BSD:*) - UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` - test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 - case "`/bin/arch`" in - sun3) - echo m68k-sun-sunos${UNAME_RELEASE} - ;; - sun4) - echo sparc-sun-sunos${UNAME_RELEASE} - ;; - esac - exit 0 ;; - aushp:SunOS:*:*) - echo sparc-auspex-sunos${UNAME_RELEASE} - exit 0 ;; - # The situation for MiNT is a little confusing. The machine name - # can be virtually everything (everything which is not - # "atarist" or "atariste" at least should have a processor - # > m68000). The system name ranges from "MiNT" over "FreeMiNT" - # to the lowercase version "mint" (or "freemint"). Finally - # the system name "TOS" denotes a system which is actually not - # MiNT. But MiNT is downward compatible to TOS, so this should - # be no problem. - atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} - exit 0 ;; - atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} - exit 0 ;; - *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} - exit 0 ;; - milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) - echo m68k-milan-mint${UNAME_RELEASE} - exit 0 ;; - hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) - echo m68k-hades-mint${UNAME_RELEASE} - exit 0 ;; - *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) - echo m68k-unknown-mint${UNAME_RELEASE} - exit 0 ;; - m68k:machten:*:*) - echo m68k-apple-machten${UNAME_RELEASE} - exit 0 ;; - powerpc:machten:*:*) - echo powerpc-apple-machten${UNAME_RELEASE} - exit 0 ;; - RISC*:Mach:*:*) - echo mips-dec-mach_bsd4.3 - exit 0 ;; - RISC*:ULTRIX:*:*) - echo mips-dec-ultrix${UNAME_RELEASE} - exit 0 ;; - VAX*:ULTRIX*:*:*) - echo vax-dec-ultrix${UNAME_RELEASE} - exit 0 ;; - 2020:CLIX:*:* | 2430:CLIX:*:*) - echo clipper-intergraph-clix${UNAME_RELEASE} - exit 0 ;; - mips:*:*:UMIPS | mips:*:*:RISCos) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c -#ifdef __cplusplus -#include /* for printf() prototype */ - int main (int argc, char *argv[]) { -#else - int main (argc, argv) int argc; char *argv[]; { -#endif - #if defined (host_mips) && defined (MIPSEB) - #if defined (SYSTYPE_SYSV) - printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); - #endif - #if defined (SYSTYPE_SVR4) - printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); - #endif - #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) - printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); - #endif - #endif - exit (-1); - } -EOF - $CC_FOR_BUILD -o $dummy $dummy.c \ - && $dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \ - && exit 0 - echo mips-mips-riscos${UNAME_RELEASE} - exit 0 ;; - Motorola:PowerMAX_OS:*:*) - echo powerpc-motorola-powermax - exit 0 ;; - Motorola:*:4.3:PL8-*) - echo powerpc-harris-powermax - exit 0 ;; - Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) - echo powerpc-harris-powermax - exit 0 ;; - Night_Hawk:Power_UNIX:*:*) - echo powerpc-harris-powerunix - exit 0 ;; - m88k:CX/UX:7*:*) - echo m88k-harris-cxux7 - exit 0 ;; - m88k:*:4*:R4*) - echo m88k-motorola-sysv4 - exit 0 ;; - m88k:*:3*:R3*) - echo m88k-motorola-sysv3 - exit 0 ;; - AViiON:dgux:*:*) - # DG/UX returns AViiON for all architectures - UNAME_PROCESSOR=`/usr/bin/uname -p` - if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] - then - if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ - [ ${TARGET_BINARY_INTERFACE}x = x ] - then - echo m88k-dg-dgux${UNAME_RELEASE} - else - echo m88k-dg-dguxbcs${UNAME_RELEASE} - fi - else - echo i586-dg-dgux${UNAME_RELEASE} - fi - exit 0 ;; - M88*:DolphinOS:*:*) # DolphinOS (SVR3) - echo m88k-dolphin-sysv3 - exit 0 ;; - M88*:*:R3*:*) - # Delta 88k system running SVR3 - echo m88k-motorola-sysv3 - exit 0 ;; - XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) - echo m88k-tektronix-sysv3 - exit 0 ;; - Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) - echo m68k-tektronix-bsd - exit 0 ;; - *:IRIX*:*:*) - echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` - exit 0 ;; - ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. - echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id - exit 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX ' - i*86:AIX:*:*) - echo i386-ibm-aix - exit 0 ;; - ia64:AIX:*:*) - if [ -x /usr/bin/oslevel ] ; then - IBM_REV=`/usr/bin/oslevel` - else - IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} - fi - echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} - exit 0 ;; - *:AIX:2:3) - if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #include - - main() - { - if (!__power_pc()) - exit(1); - puts("powerpc-ibm-aix3.2.5"); - exit(0); - } -EOF - $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0 - echo rs6000-ibm-aix3.2.5 - elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then - echo rs6000-ibm-aix3.2.4 - else - echo rs6000-ibm-aix3.2 - fi - exit 0 ;; - *:AIX:*:[45]) - IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` - if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then - IBM_ARCH=rs6000 - else - IBM_ARCH=powerpc - fi - if [ -x /usr/bin/oslevel ] ; then - IBM_REV=`/usr/bin/oslevel` - else - IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} - fi - echo ${IBM_ARCH}-ibm-aix${IBM_REV} - exit 0 ;; - *:AIX:*:*) - echo rs6000-ibm-aix - exit 0 ;; - ibmrt:4.4BSD:*|romp-ibm:BSD:*) - echo romp-ibm-bsd4.4 - exit 0 ;; - ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and - echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to - exit 0 ;; # report: romp-ibm BSD 4.3 - *:BOSX:*:*) - echo rs6000-bull-bosx - exit 0 ;; - DPX/2?00:B.O.S.:*:*) - echo m68k-bull-sysv3 - exit 0 ;; - 9000/[34]??:4.3bsd:1.*:*) - echo m68k-hp-bsd - exit 0 ;; - hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) - echo m68k-hp-bsd4.4 - exit 0 ;; - 9000/[34678]??:HP-UX:*:*) - HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` - case "${UNAME_MACHINE}" in - 9000/31? ) HP_ARCH=m68000 ;; - 9000/[34]?? ) HP_ARCH=m68k ;; - 9000/[678][0-9][0-9]) - if [ -x /usr/bin/getconf ]; then - sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` - sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` - case "${sc_cpu_version}" in - 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 - 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 - 532) # CPU_PA_RISC2_0 - case "${sc_kernel_bits}" in - 32) HP_ARCH="hppa2.0n" ;; - 64) HP_ARCH="hppa2.0w" ;; - '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 - esac ;; - esac - fi - if [ "${HP_ARCH}" = "" ]; then - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - - #define _HPUX_SOURCE - #include - #include - - int main () - { - #if defined(_SC_KERNEL_BITS) - long bits = sysconf(_SC_KERNEL_BITS); - #endif - long cpu = sysconf (_SC_CPU_VERSION); - - switch (cpu) - { - case CPU_PA_RISC1_0: puts ("hppa1.0"); break; - case CPU_PA_RISC1_1: puts ("hppa1.1"); break; - case CPU_PA_RISC2_0: - #if defined(_SC_KERNEL_BITS) - switch (bits) - { - case 64: puts ("hppa2.0w"); break; - case 32: puts ("hppa2.0n"); break; - default: puts ("hppa2.0"); break; - } break; - #else /* !defined(_SC_KERNEL_BITS) */ - puts ("hppa2.0"); break; - #endif - default: puts ("hppa1.0"); break; - } - exit (0); - } -EOF - (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` - test -z "$HP_ARCH" && HP_ARCH=hppa - fi ;; - esac - if [ ${HP_ARCH} = "hppa2.0w" ] - then - # avoid double evaluation of $set_cc_for_build - test -n "$CC_FOR_BUILD" || eval $set_cc_for_build - if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E -) | grep __LP64__ >/dev/null - then - HP_ARCH="hppa2.0w" - else - HP_ARCH="hppa64" - fi - fi - echo ${HP_ARCH}-hp-hpux${HPUX_REV} - exit 0 ;; - ia64:HP-UX:*:*) - HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` - echo ia64-hp-hpux${HPUX_REV} - exit 0 ;; - 3050*:HI-UX:*:*) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #include - int - main () - { - long cpu = sysconf (_SC_CPU_VERSION); - /* The order matters, because CPU_IS_HP_MC68K erroneously returns - true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct - results, however. */ - if (CPU_IS_PA_RISC (cpu)) - { - switch (cpu) - { - case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; - case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; - case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; - default: puts ("hppa-hitachi-hiuxwe2"); break; - } - } - else if (CPU_IS_HP_MC68K (cpu)) - puts ("m68k-hitachi-hiuxwe2"); - else puts ("unknown-hitachi-hiuxwe2"); - exit (0); - } -EOF - $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0 - echo unknown-hitachi-hiuxwe2 - exit 0 ;; - 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) - echo hppa1.1-hp-bsd - exit 0 ;; - 9000/8??:4.3bsd:*:*) - echo hppa1.0-hp-bsd - exit 0 ;; - *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) - echo hppa1.0-hp-mpeix - exit 0 ;; - hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) - echo hppa1.1-hp-osf - exit 0 ;; - hp8??:OSF1:*:*) - echo hppa1.0-hp-osf - exit 0 ;; - i*86:OSF1:*:*) - if [ -x /usr/sbin/sysversion ] ; then - echo ${UNAME_MACHINE}-unknown-osf1mk - else - echo ${UNAME_MACHINE}-unknown-osf1 - fi - exit 0 ;; - parisc*:Lites*:*:*) - echo hppa1.1-hp-lites - exit 0 ;; - C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) - echo c1-convex-bsd - exit 0 ;; - C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) - if getsysinfo -f scalar_acc - then echo c32-convex-bsd - else echo c2-convex-bsd - fi - exit 0 ;; - C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) - echo c34-convex-bsd - exit 0 ;; - C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) - echo c38-convex-bsd - exit 0 ;; - C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) - echo c4-convex-bsd - exit 0 ;; - CRAY*Y-MP:*:*:*) - echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit 0 ;; - CRAY*[A-Z]90:*:*:*) - echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ - | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ - -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ - -e 's/\.[^.]*$/.X/' - exit 0 ;; - CRAY*TS:*:*:*) - echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit 0 ;; - CRAY*T3E:*:*:*) - echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit 0 ;; - CRAY*SV1:*:*:*) - echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit 0 ;; - *:UNICOS/mp:*:*) - echo nv1-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit 0 ;; - F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) - FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` - FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` - FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` - echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" - exit 0 ;; - 5000:UNIX_System_V:4.*:*) - FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` - FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` - echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" - exit 0 ;; - i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) - echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} - exit 0 ;; - sparc*:BSD/OS:*:*) - echo sparc-unknown-bsdi${UNAME_RELEASE} - exit 0 ;; - *:BSD/OS:*:*) - echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} - exit 0 ;; - *:FreeBSD:*:*) - # Determine whether the default compiler uses glibc. - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #include - #if __GLIBC__ >= 2 - LIBC=gnu - #else - LIBC= - #endif -EOF - eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=` - # GNU/KFreeBSD systems have a "k" prefix to indicate we are using - # FreeBSD's kernel, but not the complete OS. - case ${LIBC} in gnu) kernel_only='k' ;; esac - echo ${UNAME_MACHINE}-unknown-${kernel_only}freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`${LIBC:+-$LIBC} - exit 0 ;; - i*:CYGWIN*:*) - echo ${UNAME_MACHINE}-pc-cygwin - exit 0 ;; - i*:MINGW*:*) - echo ${UNAME_MACHINE}-pc-mingw32 - exit 0 ;; - i*:PW*:*) - echo ${UNAME_MACHINE}-pc-pw32 - exit 0 ;; - x86:Interix*:[34]*) - echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//' - exit 0 ;; - [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) - echo i${UNAME_MACHINE}-pc-mks - exit 0 ;; - i*:Windows_NT*:* | Pentium*:Windows_NT*:*) - # How do we know it's Interix rather than the generic POSIX subsystem? - # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we - # UNAME_MACHINE based on the output of uname instead of i386? - echo i586-pc-interix - exit 0 ;; - i*:UWIN*:*) - echo ${UNAME_MACHINE}-pc-uwin - exit 0 ;; - p*:CYGWIN*:*) - echo powerpcle-unknown-cygwin - exit 0 ;; - prep*:SunOS:5.*:*) - echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit 0 ;; - *:GNU:*:*) - # the GNU system - echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` - exit 0 ;; - *:GNU/*:*:*) - # other systems with GNU libc and userland - echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu - exit 0 ;; - i*86:Minix:*:*) - echo ${UNAME_MACHINE}-pc-minix - exit 0 ;; - arm*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit 0 ;; - cris:Linux:*:*) - echo cris-axis-linux-gnu - exit 0 ;; - ia64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit 0 ;; - m68*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit 0 ;; - mips:Linux:*:*) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #undef CPU - #undef mips - #undef mipsel - #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) - CPU=mipsel - #else - #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) - CPU=mips - #else - CPU= - #endif - #endif -EOF - eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=` - test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0 - ;; - mips64:Linux:*:*) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #undef CPU - #undef mips64 - #undef mips64el - #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) - CPU=mips64el - #else - #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) - CPU=mips64 - #else - CPU= - #endif - #endif -EOF - eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=` - test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0 - ;; - ppc:Linux:*:*) - echo powerpc-unknown-linux-gnu - exit 0 ;; - ppc64:Linux:*:*) - echo powerpc64-unknown-linux-gnu - exit 0 ;; - alpha:Linux:*:*) - case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in - EV5) UNAME_MACHINE=alphaev5 ;; - EV56) UNAME_MACHINE=alphaev56 ;; - PCA56) UNAME_MACHINE=alphapca56 ;; - PCA57) UNAME_MACHINE=alphapca56 ;; - EV6) UNAME_MACHINE=alphaev6 ;; - EV67) UNAME_MACHINE=alphaev67 ;; - EV68*) UNAME_MACHINE=alphaev68 ;; - esac - objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null - if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi - echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} - exit 0 ;; - parisc:Linux:*:* | hppa:Linux:*:*) - # Look for CPU level - case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in - PA7*) echo hppa1.1-unknown-linux-gnu ;; - PA8*) echo hppa2.0-unknown-linux-gnu ;; - *) echo hppa-unknown-linux-gnu ;; - esac - exit 0 ;; - parisc64:Linux:*:* | hppa64:Linux:*:*) - echo hppa64-unknown-linux-gnu - exit 0 ;; - s390:Linux:*:* | s390x:Linux:*:*) - echo ${UNAME_MACHINE}-ibm-linux - exit 0 ;; - sh64*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit 0 ;; - sh*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit 0 ;; - sparc:Linux:*:* | sparc64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit 0 ;; - x86_64:Linux:*:*) - echo x86_64-unknown-linux-gnu - exit 0 ;; - i*86:Linux:*:*) - # The BFD linker knows what the default object file format is, so - # first see if it will tell us. cd to the root directory to prevent - # problems with other programs or directories called `ld' in the path. - # Set LC_ALL=C to ensure ld outputs messages in English. - ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \ - | sed -ne '/supported targets:/!d - s/[ ][ ]*/ /g - s/.*supported targets: *// - s/ .*// - p'` - case "$ld_supported_targets" in - elf32-i386) - TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" - ;; - a.out-i386-linux) - echo "${UNAME_MACHINE}-pc-linux-gnuaout" - exit 0 ;; - coff-i386) - echo "${UNAME_MACHINE}-pc-linux-gnucoff" - exit 0 ;; - "") - # Either a pre-BFD a.out linker (linux-gnuoldld) or - # one that does not give us useful --help. - echo "${UNAME_MACHINE}-pc-linux-gnuoldld" - exit 0 ;; - esac - # Determine whether the default compiler is a.out or elf - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #include - #ifdef __ELF__ - # ifdef __GLIBC__ - # if __GLIBC__ >= 2 - LIBC=gnu - # else - LIBC=gnulibc1 - # endif - # else - LIBC=gnulibc1 - # endif - #else - #ifdef __INTEL_COMPILER - LIBC=gnu - #else - LIBC=gnuaout - #endif - #endif - #ifdef __dietlibc__ - LIBC=dietlibc - #endif -EOF - eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=` - test x"${LIBC}" != x && echo "${UNAME_MACHINE}-pc-linux-${LIBC}" && exit 0 - test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0 - ;; - i*86:DYNIX/ptx:4*:*) - # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. - # earlier versions are messed up and put the nodename in both - # sysname and nodename. - echo i386-sequent-sysv4 - exit 0 ;; - i*86:UNIX_SV:4.2MP:2.*) - # Unixware is an offshoot of SVR4, but it has its own version - # number series starting with 2... - # I am not positive that other SVR4 systems won't match this, - # I just have to hope. -- rms. - # Use sysv4.2uw... so that sysv4* matches it. - echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} - exit 0 ;; - i*86:OS/2:*:*) - # If we were able to find `uname', then EMX Unix compatibility - # is probably installed. - echo ${UNAME_MACHINE}-pc-os2-emx - exit 0 ;; - i*86:XTS-300:*:STOP) - echo ${UNAME_MACHINE}-unknown-stop - exit 0 ;; - i*86:atheos:*:*) - echo ${UNAME_MACHINE}-unknown-atheos - exit 0 ;; - i*86:syllable:*:*) - echo ${UNAME_MACHINE}-pc-syllable - exit 0 ;; - i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*) - echo i386-unknown-lynxos${UNAME_RELEASE} - exit 0 ;; - i*86:*DOS:*:*) - echo ${UNAME_MACHINE}-pc-msdosdjgpp - exit 0 ;; - i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) - UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` - if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then - echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} - else - echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} - fi - exit 0 ;; - i*86:*:5:[78]*) - case `/bin/uname -X | grep "^Machine"` in - *486*) UNAME_MACHINE=i486 ;; - *Pentium) UNAME_MACHINE=i586 ;; - *Pent*|*Celeron) UNAME_MACHINE=i686 ;; - esac - echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} - exit 0 ;; - i*86:*:3.2:*) - if test -f /usr/options/cb.name; then - UNAME_REL=`sed -n 's/.*Version //p' /dev/null >/dev/null ; then - UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` - (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 - (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ - && UNAME_MACHINE=i586 - (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ - && UNAME_MACHINE=i686 - (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ - && UNAME_MACHINE=i686 - echo ${UNAME_MACHINE}-pc-sco$UNAME_REL - else - echo ${UNAME_MACHINE}-pc-sysv32 - fi - exit 0 ;; - pc:*:*:*) - # Left here for compatibility: - # uname -m prints for DJGPP always 'pc', but it prints nothing about - # the processor, so we play safe by assuming i386. - echo i386-pc-msdosdjgpp - exit 0 ;; - Intel:Mach:3*:*) - echo i386-pc-mach3 - exit 0 ;; - paragon:*:*:*) - echo i860-intel-osf1 - exit 0 ;; - i860:*:4.*:*) # i860-SVR4 - if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then - echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 - else # Add other i860-SVR4 vendors below as they are discovered. - echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 - fi - exit 0 ;; - mini*:CTIX:SYS*5:*) - # "miniframe" - echo m68010-convergent-sysv - exit 0 ;; - mc68k:UNIX:SYSTEM5:3.51m) - echo m68k-convergent-sysv - exit 0 ;; - M680?0:D-NIX:5.3:*) - echo m68k-diab-dnix - exit 0 ;; - M68*:*:R3V[567]*:*) - test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;; - 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0) - OS_REL='' - test -r /etc/.relid \ - && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` - /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ - && echo i486-ncr-sysv4.3${OS_REL} && exit 0 - /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ - && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;; - 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) - /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ - && echo i486-ncr-sysv4 && exit 0 ;; - m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) - echo m68k-unknown-lynxos${UNAME_RELEASE} - exit 0 ;; - mc68030:UNIX_System_V:4.*:*) - echo m68k-atari-sysv4 - exit 0 ;; - TSUNAMI:LynxOS:2.*:*) - echo sparc-unknown-lynxos${UNAME_RELEASE} - exit 0 ;; - rs6000:LynxOS:2.*:*) - echo rs6000-unknown-lynxos${UNAME_RELEASE} - exit 0 ;; - PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*) - echo powerpc-unknown-lynxos${UNAME_RELEASE} - exit 0 ;; - SM[BE]S:UNIX_SV:*:*) - echo mips-dde-sysv${UNAME_RELEASE} - exit 0 ;; - RM*:ReliantUNIX-*:*:*) - echo mips-sni-sysv4 - exit 0 ;; - RM*:SINIX-*:*:*) - echo mips-sni-sysv4 - exit 0 ;; - *:SINIX-*:*:*) - if uname -p 2>/dev/null >/dev/null ; then - UNAME_MACHINE=`(uname -p) 2>/dev/null` - echo ${UNAME_MACHINE}-sni-sysv4 - else - echo ns32k-sni-sysv - fi - exit 0 ;; - PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort - # says - echo i586-unisys-sysv4 - exit 0 ;; - *:UNIX_System_V:4*:FTX*) - # From Gerald Hewes . - # How about differentiating between stratus architectures? -djm - echo hppa1.1-stratus-sysv4 - exit 0 ;; - *:*:*:FTX*) - # From seanf@swdc.stratus.com. - echo i860-stratus-sysv4 - exit 0 ;; - *:VOS:*:*) - # From Paul.Green@stratus.com. - echo hppa1.1-stratus-vos - exit 0 ;; - mc68*:A/UX:*:*) - echo m68k-apple-aux${UNAME_RELEASE} - exit 0 ;; - news*:NEWS-OS:6*:*) - echo mips-sony-newsos6 - exit 0 ;; - R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) - if [ -d /usr/nec ]; then - echo mips-nec-sysv${UNAME_RELEASE} - else - echo mips-unknown-sysv${UNAME_RELEASE} - fi - exit 0 ;; - BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. - echo powerpc-be-beos - exit 0 ;; - BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. - echo powerpc-apple-beos - exit 0 ;; - BePC:BeOS:*:*) # BeOS running on Intel PC compatible. - echo i586-pc-beos - exit 0 ;; - SX-4:SUPER-UX:*:*) - echo sx4-nec-superux${UNAME_RELEASE} - exit 0 ;; - SX-5:SUPER-UX:*:*) - echo sx5-nec-superux${UNAME_RELEASE} - exit 0 ;; - SX-6:SUPER-UX:*:*) - echo sx6-nec-superux${UNAME_RELEASE} - exit 0 ;; - Power*:Rhapsody:*:*) - echo powerpc-apple-rhapsody${UNAME_RELEASE} - exit 0 ;; - *:Rhapsody:*:*) - echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} - exit 0 ;; - *:Darwin:*:*) - case `uname -p` in - *86) UNAME_PROCESSOR=i686 ;; - powerpc) UNAME_PROCESSOR=powerpc ;; - esac - echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} - exit 0 ;; - *:procnto*:*:* | *:QNX:[0123456789]*:*) - UNAME_PROCESSOR=`uname -p` - if test "$UNAME_PROCESSOR" = "x86"; then - UNAME_PROCESSOR=i386 - UNAME_MACHINE=pc - fi - echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} - exit 0 ;; - *:QNX:*:4*) - echo i386-pc-qnx - exit 0 ;; - NSR-?:NONSTOP_KERNEL:*:*) - echo nsr-tandem-nsk${UNAME_RELEASE} - exit 0 ;; - *:NonStop-UX:*:*) - echo mips-compaq-nonstopux - exit 0 ;; - BS2000:POSIX*:*:*) - echo bs2000-siemens-sysv - exit 0 ;; - DS/*:UNIX_System_V:*:*) - echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} - exit 0 ;; - *:Plan9:*:*) - # "uname -m" is not consistent, so use $cputype instead. 386 - # is converted to i386 for consistency with other x86 - # operating systems. - if test "$cputype" = "386"; then - UNAME_MACHINE=i386 - else - UNAME_MACHINE="$cputype" - fi - echo ${UNAME_MACHINE}-unknown-plan9 - exit 0 ;; - *:TOPS-10:*:*) - echo pdp10-unknown-tops10 - exit 0 ;; - *:TENEX:*:*) - echo pdp10-unknown-tenex - exit 0 ;; - KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) - echo pdp10-dec-tops20 - exit 0 ;; - XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) - echo pdp10-xkl-tops20 - exit 0 ;; - *:TOPS-20:*:*) - echo pdp10-unknown-tops20 - exit 0 ;; - *:ITS:*:*) - echo pdp10-unknown-its - exit 0 ;; - SEI:*:*:SEIUX) - echo mips-sei-seiux${UNAME_RELEASE} - exit 0 ;; - *:DragonFly:*:*) - echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` - exit 0 ;; -esac - -#echo '(No uname command or uname output not recognized.)' 1>&2 -#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 - -eval $set_cc_for_build -cat >$dummy.c < -# include -#endif -main () -{ -#if defined (sony) -#if defined (MIPSEB) - /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, - I don't know.... */ - printf ("mips-sony-bsd\n"); exit (0); -#else -#include - printf ("m68k-sony-newsos%s\n", -#ifdef NEWSOS4 - "4" -#else - "" -#endif - ); exit (0); -#endif -#endif - -#if defined (__arm) && defined (__acorn) && defined (__unix) - printf ("arm-acorn-riscix"); exit (0); -#endif - -#if defined (hp300) && !defined (hpux) - printf ("m68k-hp-bsd\n"); exit (0); -#endif - -#if defined (NeXT) -#if !defined (__ARCHITECTURE__) -#define __ARCHITECTURE__ "m68k" -#endif - int version; - version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; - if (version < 4) - printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); - else - printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); - exit (0); -#endif - -#if defined (MULTIMAX) || defined (n16) -#if defined (UMAXV) - printf ("ns32k-encore-sysv\n"); exit (0); -#else -#if defined (CMU) - printf ("ns32k-encore-mach\n"); exit (0); -#else - printf ("ns32k-encore-bsd\n"); exit (0); -#endif -#endif -#endif - -#if defined (__386BSD__) - printf ("i386-pc-bsd\n"); exit (0); -#endif - -#if defined (sequent) -#if defined (i386) - printf ("i386-sequent-dynix\n"); exit (0); -#endif -#if defined (ns32000) - printf ("ns32k-sequent-dynix\n"); exit (0); -#endif -#endif - -#if defined (_SEQUENT_) - struct utsname un; - - uname(&un); - - if (strncmp(un.version, "V2", 2) == 0) { - printf ("i386-sequent-ptx2\n"); exit (0); - } - if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ - printf ("i386-sequent-ptx1\n"); exit (0); - } - printf ("i386-sequent-ptx\n"); exit (0); - -#endif - -#if defined (vax) -# if !defined (ultrix) -# include -# if defined (BSD) -# if BSD == 43 - printf ("vax-dec-bsd4.3\n"); exit (0); -# else -# if BSD == 199006 - printf ("vax-dec-bsd4.3reno\n"); exit (0); -# else - printf ("vax-dec-bsd\n"); exit (0); -# endif -# endif -# else - printf ("vax-dec-bsd\n"); exit (0); -# endif -# else - printf ("vax-dec-ultrix\n"); exit (0); -# endif -#endif - -#if defined (alliant) && defined (i860) - printf ("i860-alliant-bsd\n"); exit (0); -#endif - - exit (1); -} -EOF - -$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && $dummy && exit 0 - -# Apollos put the system type in the environment. - -test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; } - -# Convex versions that predate uname can use getsysinfo(1) - -if [ -x /usr/convex/getsysinfo ] -then - case `getsysinfo -f cpu_type` in - c1*) - echo c1-convex-bsd - exit 0 ;; - c2*) - if getsysinfo -f scalar_acc - then echo c32-convex-bsd - else echo c2-convex-bsd - fi - exit 0 ;; - c34*) - echo c34-convex-bsd - exit 0 ;; - c38*) - echo c38-convex-bsd - exit 0 ;; - c4*) - echo c4-convex-bsd - exit 0 ;; - esac -fi - -cat >&2 < in order to provide the needed -information to handle your system. - -config.guess timestamp = $timestamp - -uname -m = `(uname -m) 2>/dev/null || echo unknown` -uname -r = `(uname -r) 2>/dev/null || echo unknown` -uname -s = `(uname -s) 2>/dev/null || echo unknown` -uname -v = `(uname -v) 2>/dev/null || echo unknown` - -/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` -/bin/uname -X = `(/bin/uname -X) 2>/dev/null` - -hostinfo = `(hostinfo) 2>/dev/null` -/bin/universe = `(/bin/universe) 2>/dev/null` -/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` -/bin/arch = `(/bin/arch) 2>/dev/null` -/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` -/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` - -UNAME_MACHINE = ${UNAME_MACHINE} -UNAME_RELEASE = ${UNAME_RELEASE} -UNAME_SYSTEM = ${UNAME_SYSTEM} -UNAME_VERSION = ${UNAME_VERSION} -EOF - -exit 1 - -# Local variables: -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "timestamp='" -# time-stamp-format: "%:y-%02m-%02d" -# time-stamp-end: "'" -# End: DELETED ffcall/autoconf/config.sub Index: ffcall/autoconf/config.sub ================================================================== --- ffcall/autoconf/config.sub +++ /dev/null @@ -1,1549 +0,0 @@ -#! /bin/sh -# Configuration validation subroutine script. -# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -# 2000, 2001, 2002, 2003 Free Software Foundation, Inc. - -timestamp='2004-02-23' - -# This file is (in principle) common to ALL GNU software. -# The presence of a machine in this file suggests that SOME GNU software -# can handle that machine. It does not imply ALL GNU software can. -# -# This file is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, -# Boston, MA 02111-1307, USA. - -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# Please send patches to . Submit a context -# diff and a properly formatted ChangeLog entry. -# -# Configuration subroutine to validate and canonicalize a configuration type. -# Supply the specified configuration type as an argument. -# If it is invalid, we print an error message on stderr and exit with code 1. -# Otherwise, we print the canonical config type on stdout and succeed. - -# This file is supposed to be the same for all GNU packages -# and recognize all the CPU types, system types and aliases -# that are meaningful with *any* GNU software. -# Each package is responsible for reporting which valid configurations -# it does not support. The user should be able to distinguish -# a failure to support a valid configuration from a meaningless -# configuration. - -# The goal of this file is to map all the various variations of a given -# machine specification into a single specification in the form: -# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM -# or in some cases, the newer four-part form: -# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM -# It is wrong to echo any other type of specification. - -me=`echo "$0" | sed -e 's,.*/,,'` - -usage="\ -Usage: $0 [OPTION] CPU-MFR-OPSYS - $0 [OPTION] ALIAS - -Canonicalize a configuration name. - -Operation modes: - -h, --help print this help, then exit - -t, --time-stamp print date of last modification, then exit - -v, --version print version number, then exit - -Report bugs and patches to ." - -version="\ -GNU config.sub ($timestamp) - -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 -Free Software Foundation, Inc. - -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." - -help=" -Try \`$me --help' for more information." - -# Parse command line -while test $# -gt 0 ; do - case $1 in - --time-stamp | --time* | -t ) - echo "$timestamp" ; exit 0 ;; - --version | -v ) - echo "$version" ; exit 0 ;; - --help | --h* | -h ) - echo "$usage"; exit 0 ;; - -- ) # Stop option processing - shift; break ;; - - ) # Use stdin as input. - break ;; - -* ) - echo "$me: invalid option $1$help" - exit 1 ;; - - *local*) - # First pass through any local machine types. - echo $1 - exit 0;; - - * ) - break ;; - esac -done - -case $# in - 0) echo "$me: missing argument$help" >&2 - exit 1;; - 1) ;; - *) echo "$me: too many arguments$help" >&2 - exit 1;; -esac - -# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). -# Here we must recognize all the valid KERNEL-OS combinations. -maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` -case $maybe_os in - nto-qnx* | linux-gnu* | linux-dietlibc | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | \ - kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*) - os=-$maybe_os - basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` - ;; - *) - basic_machine=`echo $1 | sed 's/-[^-]*$//'` - if [ $basic_machine != $1 ] - then os=`echo $1 | sed 's/.*-/-/'` - else os=; fi - ;; -esac - -### Let's recognize common machines as not being operating systems so -### that things like config.sub decstation-3100 work. We also -### recognize some manufacturers as not being operating systems, so we -### can provide default operating systems below. -case $os in - -sun*os*) - # Prevent following clause from handling this invalid input. - ;; - -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ - -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ - -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ - -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ - -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ - -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ - -apple | -axis) - os= - basic_machine=$1 - ;; - -sim | -cisco | -oki | -wec | -winbond) - os= - basic_machine=$1 - ;; - -scout) - ;; - -wrs) - os=-vxworks - basic_machine=$1 - ;; - -chorusos*) - os=-chorusos - basic_machine=$1 - ;; - -chorusrdb) - os=-chorusrdb - basic_machine=$1 - ;; - -hiux*) - os=-hiuxwe2 - ;; - -sco5) - os=-sco3.2v5 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco4) - os=-sco3.2v4 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco3.2.[4-9]*) - os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco3.2v[4-9]*) - # Don't forget version if it is 3.2v4 or newer. - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco*) - os=-sco3.2v2 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -udk*) - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -isc) - os=-isc2.2 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -clix*) - basic_machine=clipper-intergraph - ;; - -isc*) - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -lynx*) - os=-lynxos - ;; - -ptx*) - basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` - ;; - -windowsnt*) - os=`echo $os | sed -e 's/windowsnt/winnt/'` - ;; - -psos*) - os=-psos - ;; - -mint | -mint[0-9]*) - basic_machine=m68k-atari - os=-mint - ;; -esac - -# Decode aliases for certain CPU-COMPANY combinations. -case $basic_machine in - # Recognize the basic CPU types without company name. - # Some are omitted here because they have special meanings below. - 1750a | 580 \ - | a29k \ - | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ - | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ - | am33_2.0 \ - | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \ - | c4x | clipper \ - | d10v | d30v | dlx | dsp16xx \ - | fr30 | frv \ - | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ - | i370 | i860 | i960 | ia64 \ - | ip2k | iq2000 \ - | m32r | m68000 | m68k | m88k | mcore \ - | mips | mipsbe | mipseb | mipsel | mipsle \ - | mips16 \ - | mips64 | mips64el \ - | mips64vr | mips64vrel \ - | mips64orion | mips64orionel \ - | mips64vr4100 | mips64vr4100el \ - | mips64vr4300 | mips64vr4300el \ - | mips64vr5000 | mips64vr5000el \ - | mipsisa32 | mipsisa32el \ - | mipsisa32r2 | mipsisa32r2el \ - | mipsisa64 | mipsisa64el \ - | mipsisa64r2 | mipsisa64r2el \ - | mipsisa64sb1 | mipsisa64sb1el \ - | mipsisa64sr71k | mipsisa64sr71kel \ - | mipstx39 | mipstx39el \ - | mn10200 | mn10300 \ - | msp430 \ - | ns16k | ns32k \ - | openrisc | or32 \ - | pdp10 | pdp11 | pj | pjl \ - | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ - | pyramid \ - | sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \ - | sh64 | sh64le \ - | sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv9 | sparcv9b \ - | strongarm \ - | tahoe | thumb | tic4x | tic80 | tron \ - | v850 | v850e \ - | we32k \ - | x86 | xscale | xstormy16 | xtensa \ - | z8k) - basic_machine=$basic_machine-unknown - ;; - m6811 | m68hc11 | m6812 | m68hc12) - # Motorola 68HC11/12. - basic_machine=$basic_machine-unknown - os=-none - ;; - m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) - ;; - - # We use `pc' rather than `unknown' - # because (1) that's what they normally are, and - # (2) the word "unknown" tends to confuse beginning users. - i*86 | x86_64) - basic_machine=$basic_machine-pc - ;; - # Object if more than one company name word. - *-*-*) - echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 - exit 1 - ;; - # Recognize the basic CPU types with company name. - 580-* \ - | a29k-* \ - | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ - | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ - | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ - | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ - | avr-* \ - | bs2000-* \ - | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ - | clipper-* | cydra-* \ - | d10v-* | d30v-* | dlx-* \ - | elxsi-* \ - | f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \ - | h8300-* | h8500-* \ - | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ - | i*86-* | i860-* | i960-* | ia64-* \ - | ip2k-* | iq2000-* \ - | m32r-* \ - | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ - | m88110-* | m88k-* | mcore-* \ - | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ - | mips16-* \ - | mips64-* | mips64el-* \ - | mips64vr-* | mips64vrel-* \ - | mips64orion-* | mips64orionel-* \ - | mips64vr4100-* | mips64vr4100el-* \ - | mips64vr4300-* | mips64vr4300el-* \ - | mips64vr5000-* | mips64vr5000el-* \ - | mipsisa32-* | mipsisa32el-* \ - | mipsisa32r2-* | mipsisa32r2el-* \ - | mipsisa64-* | mipsisa64el-* \ - | mipsisa64r2-* | mipsisa64r2el-* \ - | mipsisa64sb1-* | mipsisa64sb1el-* \ - | mipsisa64sr71k-* | mipsisa64sr71kel-* \ - | mipstx39-* | mipstx39el-* \ - | msp430-* \ - | none-* | np1-* | nv1-* | ns16k-* | ns32k-* \ - | orion-* \ - | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ - | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ - | pyramid-* \ - | romp-* | rs6000-* \ - | sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \ - | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ - | sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \ - | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \ - | tahoe-* | thumb-* \ - | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ - | tron-* \ - | v850-* | v850e-* | vax-* \ - | we32k-* \ - | x86-* | x86_64-* | xps100-* | xscale-* | xstormy16-* \ - | xtensa-* \ - | ymp-* \ - | z8k-*) - ;; - # Recognize the various machine names and aliases which stand - # for a CPU type and a company and sometimes even an OS. - 386bsd) - basic_machine=i386-unknown - os=-bsd - ;; - 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) - basic_machine=m68000-att - ;; - 3b*) - basic_machine=we32k-att - ;; - a29khif) - basic_machine=a29k-amd - os=-udi - ;; - abacus) - basic_machine=abacus-unknown - ;; - adobe68k) - basic_machine=m68010-adobe - os=-scout - ;; - alliant | fx80) - basic_machine=fx80-alliant - ;; - altos | altos3068) - basic_machine=m68k-altos - ;; - am29k) - basic_machine=a29k-none - os=-bsd - ;; - amd64) - basic_machine=x86_64-pc - ;; - amd64-*) - basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - amdahl) - basic_machine=580-amdahl - os=-sysv - ;; - amiga | amiga-*) - basic_machine=m68k-unknown - ;; - amigaos | amigados) - basic_machine=m68k-unknown - os=-amigaos - ;; - amigaunix | amix) - basic_machine=m68k-unknown - os=-sysv4 - ;; - apollo68) - basic_machine=m68k-apollo - os=-sysv - ;; - apollo68bsd) - basic_machine=m68k-apollo - os=-bsd - ;; - aux) - basic_machine=m68k-apple - os=-aux - ;; - balance) - basic_machine=ns32k-sequent - os=-dynix - ;; - c90) - basic_machine=c90-cray - os=-unicos - ;; - convex-c1) - basic_machine=c1-convex - os=-bsd - ;; - convex-c2) - basic_machine=c2-convex - os=-bsd - ;; - convex-c32) - basic_machine=c32-convex - os=-bsd - ;; - convex-c34) - basic_machine=c34-convex - os=-bsd - ;; - convex-c38) - basic_machine=c38-convex - os=-bsd - ;; - cray | j90) - basic_machine=j90-cray - os=-unicos - ;; - cr16c) - basic_machine=cr16c-unknown - os=-elf - ;; - crds | unos) - basic_machine=m68k-crds - ;; - cris | cris-* | etrax*) - basic_machine=cris-axis - ;; - crx) - basic_machine=crx-unknown - os=-elf - ;; - da30 | da30-*) - basic_machine=m68k-da30 - ;; - decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) - basic_machine=mips-dec - ;; - decsystem10* | dec10*) - basic_machine=pdp10-dec - os=-tops10 - ;; - decsystem20* | dec20*) - basic_machine=pdp10-dec - os=-tops20 - ;; - delta | 3300 | motorola-3300 | motorola-delta \ - | 3300-motorola | delta-motorola) - basic_machine=m68k-motorola - ;; - delta88) - basic_machine=m88k-motorola - os=-sysv3 - ;; - dpx20 | dpx20-*) - basic_machine=rs6000-bull - os=-bosx - ;; - dpx2* | dpx2*-bull) - basic_machine=m68k-bull - os=-sysv3 - ;; - ebmon29k) - basic_machine=a29k-amd - os=-ebmon - ;; - elxsi) - basic_machine=elxsi-elxsi - os=-bsd - ;; - encore | umax | mmax) - basic_machine=ns32k-encore - ;; - es1800 | OSE68k | ose68k | ose | OSE) - basic_machine=m68k-ericsson - os=-ose - ;; - fx2800) - basic_machine=i860-alliant - ;; - genix) - basic_machine=ns32k-ns - ;; - gmicro) - basic_machine=tron-gmicro - os=-sysv - ;; - go32) - basic_machine=i386-pc - os=-go32 - ;; - h3050r* | hiux*) - basic_machine=hppa1.1-hitachi - os=-hiuxwe2 - ;; - h8300hms) - basic_machine=h8300-hitachi - os=-hms - ;; - h8300xray) - basic_machine=h8300-hitachi - os=-xray - ;; - h8500hms) - basic_machine=h8500-hitachi - os=-hms - ;; - harris) - basic_machine=m88k-harris - os=-sysv3 - ;; - hp300-*) - basic_machine=m68k-hp - ;; - hp300bsd) - basic_machine=m68k-hp - os=-bsd - ;; - hp300hpux) - basic_machine=m68k-hp - os=-hpux - ;; - hp3k9[0-9][0-9] | hp9[0-9][0-9]) - basic_machine=hppa1.0-hp - ;; - hp9k2[0-9][0-9] | hp9k31[0-9]) - basic_machine=m68000-hp - ;; - hp9k3[2-9][0-9]) - basic_machine=m68k-hp - ;; - hp9k6[0-9][0-9] | hp6[0-9][0-9]) - basic_machine=hppa1.0-hp - ;; - hp9k7[0-79][0-9] | hp7[0-79][0-9]) - basic_machine=hppa1.1-hp - ;; - hp9k78[0-9] | hp78[0-9]) - # FIXME: really hppa2.0-hp - basic_machine=hppa1.1-hp - ;; - hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) - # FIXME: really hppa2.0-hp - basic_machine=hppa1.1-hp - ;; - hp9k8[0-9][13679] | hp8[0-9][13679]) - basic_machine=hppa1.1-hp - ;; - hp9k8[0-9][0-9] | hp8[0-9][0-9]) - basic_machine=hppa1.0-hp - ;; - hppa-next) - os=-nextstep3 - ;; - hppaosf) - basic_machine=hppa1.1-hp - os=-osf - ;; - hppro) - basic_machine=hppa1.1-hp - os=-proelf - ;; - i370-ibm* | ibm*) - basic_machine=i370-ibm - ;; -# I'm not sure what "Sysv32" means. Should this be sysv3.2? - i*86v32) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv32 - ;; - i*86v4*) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv4 - ;; - i*86v) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv - ;; - i*86sol2) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-solaris2 - ;; - i386mach) - basic_machine=i386-mach - os=-mach - ;; - i386-vsta | vsta) - basic_machine=i386-unknown - os=-vsta - ;; - iris | iris4d) - basic_machine=mips-sgi - case $os in - -irix*) - ;; - *) - os=-irix4 - ;; - esac - ;; - isi68 | isi) - basic_machine=m68k-isi - os=-sysv - ;; - m88k-omron*) - basic_machine=m88k-omron - ;; - magnum | m3230) - basic_machine=mips-mips - os=-sysv - ;; - merlin) - basic_machine=ns32k-utek - os=-sysv - ;; - mingw32) - basic_machine=i386-pc - os=-mingw32 - ;; - miniframe) - basic_machine=m68000-convergent - ;; - *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) - basic_machine=m68k-atari - os=-mint - ;; - mips3*-*) - basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` - ;; - mips3*) - basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown - ;; - mmix*) - basic_machine=mmix-knuth - os=-mmixware - ;; - monitor) - basic_machine=m68k-rom68k - os=-coff - ;; - morphos) - basic_machine=powerpc-unknown - os=-morphos - ;; - msdos) - basic_machine=i386-pc - os=-msdos - ;; - mvs) - basic_machine=i370-ibm - os=-mvs - ;; - ncr3000) - basic_machine=i486-ncr - os=-sysv4 - ;; - netbsd386) - basic_machine=i386-unknown - os=-netbsd - ;; - netwinder) - basic_machine=armv4l-rebel - os=-linux - ;; - news | news700 | news800 | news900) - basic_machine=m68k-sony - os=-newsos - ;; - news1000) - basic_machine=m68030-sony - os=-newsos - ;; - news-3600 | risc-news) - basic_machine=mips-sony - os=-newsos - ;; - necv70) - basic_machine=v70-nec - os=-sysv - ;; - next | m*-next ) - basic_machine=m68k-next - case $os in - -nextstep* ) - ;; - -ns2*) - os=-nextstep2 - ;; - *) - os=-nextstep3 - ;; - esac - ;; - nh3000) - basic_machine=m68k-harris - os=-cxux - ;; - nh[45]000) - basic_machine=m88k-harris - os=-cxux - ;; - nindy960) - basic_machine=i960-intel - os=-nindy - ;; - mon960) - basic_machine=i960-intel - os=-mon960 - ;; - nonstopux) - basic_machine=mips-compaq - os=-nonstopux - ;; - np1) - basic_machine=np1-gould - ;; - nv1) - basic_machine=nv1-cray - os=-unicosmp - ;; - nsr-tandem) - basic_machine=nsr-tandem - ;; - op50n-* | op60c-*) - basic_machine=hppa1.1-oki - os=-proelf - ;; - or32 | or32-*) - basic_machine=or32-unknown - os=-coff - ;; - os400) - basic_machine=powerpc-ibm - os=-os400 - ;; - OSE68000 | ose68000) - basic_machine=m68000-ericsson - os=-ose - ;; - os68k) - basic_machine=m68k-none - os=-os68k - ;; - pa-hitachi) - basic_machine=hppa1.1-hitachi - os=-hiuxwe2 - ;; - paragon) - basic_machine=i860-intel - os=-osf - ;; - pbd) - basic_machine=sparc-tti - ;; - pbb) - basic_machine=m68k-tti - ;; - pc532 | pc532-*) - basic_machine=ns32k-pc532 - ;; - pentium | p5 | k5 | k6 | nexgen | viac3) - basic_machine=i586-pc - ;; - pentiumpro | p6 | 6x86 | athlon | athlon_*) - basic_machine=i686-pc - ;; - pentiumii | pentium2 | pentiumiii | pentium3) - basic_machine=i686-pc - ;; - pentium4) - basic_machine=i786-pc - ;; - pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) - basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pentiumpro-* | p6-* | 6x86-* | athlon-*) - basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) - basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pentium4-*) - basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pn) - basic_machine=pn-gould - ;; - power) basic_machine=power-ibm - ;; - ppc) basic_machine=powerpc-unknown - ;; - ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ppcle | powerpclittle | ppc-le | powerpc-little) - basic_machine=powerpcle-unknown - ;; - ppcle-* | powerpclittle-*) - basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ppc64) basic_machine=powerpc64-unknown - ;; - ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ppc64le | powerpc64little | ppc64-le | powerpc64-little) - basic_machine=powerpc64le-unknown - ;; - ppc64le-* | powerpc64little-*) - basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ps2) - basic_machine=i386-ibm - ;; - pw32) - basic_machine=i586-unknown - os=-pw32 - ;; - rom68k) - basic_machine=m68k-rom68k - os=-coff - ;; - rm[46]00) - basic_machine=mips-siemens - ;; - rtpc | rtpc-*) - basic_machine=romp-ibm - ;; - s390 | s390-*) - basic_machine=s390-ibm - ;; - s390x | s390x-*) - basic_machine=s390x-ibm - ;; - sa29200) - basic_machine=a29k-amd - os=-udi - ;; - sb1) - basic_machine=mipsisa64sb1-unknown - ;; - sb1el) - basic_machine=mipsisa64sb1el-unknown - ;; - sei) - basic_machine=mips-sei - os=-seiux - ;; - sequent) - basic_machine=i386-sequent - ;; - sh) - basic_machine=sh-hitachi - os=-hms - ;; - sh64) - basic_machine=sh64-unknown - ;; - sparclite-wrs | simso-wrs) - basic_machine=sparclite-wrs - os=-vxworks - ;; - sps7) - basic_machine=m68k-bull - os=-sysv2 - ;; - spur) - basic_machine=spur-unknown - ;; - st2000) - basic_machine=m68k-tandem - ;; - stratus) - basic_machine=i860-stratus - os=-sysv4 - ;; - sun2) - basic_machine=m68000-sun - ;; - sun2os3) - basic_machine=m68000-sun - os=-sunos3 - ;; - sun2os4) - basic_machine=m68000-sun - os=-sunos4 - ;; - sun3os3) - basic_machine=m68k-sun - os=-sunos3 - ;; - sun3os4) - basic_machine=m68k-sun - os=-sunos4 - ;; - sun4os3) - basic_machine=sparc-sun - os=-sunos3 - ;; - sun4os4) - basic_machine=sparc-sun - os=-sunos4 - ;; - sun4sol2) - basic_machine=sparc-sun - os=-solaris2 - ;; - sun3 | sun3-*) - basic_machine=m68k-sun - ;; - sun4) - basic_machine=sparc-sun - ;; - sun386 | sun386i | roadrunner) - basic_machine=i386-sun - ;; - sv1) - basic_machine=sv1-cray - os=-unicos - ;; - symmetry) - basic_machine=i386-sequent - os=-dynix - ;; - t3e) - basic_machine=alphaev5-cray - os=-unicos - ;; - t90) - basic_machine=t90-cray - os=-unicos - ;; - tic54x | c54x*) - basic_machine=tic54x-unknown - os=-coff - ;; - tic55x | c55x*) - basic_machine=tic55x-unknown - os=-coff - ;; - tic6x | c6x*) - basic_machine=tic6x-unknown - os=-coff - ;; - tx39) - basic_machine=mipstx39-unknown - ;; - tx39el) - basic_machine=mipstx39el-unknown - ;; - toad1) - basic_machine=pdp10-xkl - os=-tops20 - ;; - tower | tower-32) - basic_machine=m68k-ncr - ;; - tpf) - basic_machine=s390x-ibm - os=-tpf - ;; - udi29k) - basic_machine=a29k-amd - os=-udi - ;; - ultra3) - basic_machine=a29k-nyu - os=-sym1 - ;; - v810 | necv810) - basic_machine=v810-nec - os=-none - ;; - vaxv) - basic_machine=vax-dec - os=-sysv - ;; - vms) - basic_machine=vax-dec - os=-vms - ;; - vpp*|vx|vx-*) - basic_machine=f301-fujitsu - ;; - vxworks960) - basic_machine=i960-wrs - os=-vxworks - ;; - vxworks68) - basic_machine=m68k-wrs - os=-vxworks - ;; - vxworks29k) - basic_machine=a29k-wrs - os=-vxworks - ;; - w65*) - basic_machine=w65-wdc - os=-none - ;; - w89k-*) - basic_machine=hppa1.1-winbond - os=-proelf - ;; - xps | xps100) - basic_machine=xps100-honeywell - ;; - ymp) - basic_machine=ymp-cray - os=-unicos - ;; - z8k-*-coff) - basic_machine=z8k-unknown - os=-sim - ;; - none) - basic_machine=none-none - os=-none - ;; - -# Here we handle the default manufacturer of certain CPU types. It is in -# some cases the only manufacturer, in others, it is the most popular. - w89k) - basic_machine=hppa1.1-winbond - ;; - op50n) - basic_machine=hppa1.1-oki - ;; - op60c) - basic_machine=hppa1.1-oki - ;; - romp) - basic_machine=romp-ibm - ;; - rs6000) - basic_machine=rs6000-ibm - ;; - vax) - basic_machine=vax-dec - ;; - pdp10) - # there are many clones, so DEC is not a safe bet - basic_machine=pdp10-unknown - ;; - pdp11) - basic_machine=pdp11-dec - ;; - we32k) - basic_machine=we32k-att - ;; - sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele) - basic_machine=sh-unknown - ;; - sh64) - basic_machine=sh64-unknown - ;; - sparc | sparcv9 | sparcv9b) - basic_machine=sparc-sun - ;; - cydra) - basic_machine=cydra-cydrome - ;; - orion) - basic_machine=orion-highlevel - ;; - orion105) - basic_machine=clipper-highlevel - ;; - mac | mpw | mac-mpw) - basic_machine=m68k-apple - ;; - pmac | pmac-mpw) - basic_machine=powerpc-apple - ;; - *-unknown) - # Make sure to match an already-canonicalized machine name. - ;; - *) - echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 - exit 1 - ;; -esac - -# Here we canonicalize certain aliases for manufacturers. -case $basic_machine in - *-digital*) - basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` - ;; - *-commodore*) - basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` - ;; - *) - ;; -esac - -# Decode manufacturer-specific aliases for certain operating systems. - -if [ x"$os" != x"" ] -then -case $os in - # First match some system type aliases - # that might get confused with valid system types. - # -solaris* is a basic system type, with this one exception. - -solaris1 | -solaris1.*) - os=`echo $os | sed -e 's|solaris1|sunos4|'` - ;; - -solaris) - os=-solaris2 - ;; - -svr4*) - os=-sysv4 - ;; - -unixware*) - os=-sysv4.2uw - ;; - -gnu/linux*) - os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` - ;; - # First accept the basic system types. - # The portable systems comes first. - # Each alternative MUST END IN A *, to match a version number. - # -sysv* is not here because it comes later, after sysvr4. - -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ - | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ - | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ - | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ - | -aos* \ - | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ - | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ - | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* | -openbsd* \ - | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ - | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ - | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ - | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ - | -chorusos* | -chorusrdb* \ - | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ - | -mingw32* | -linux-gnu* | -linux-uclibc* | -uxpv* | -beos* | -mpeix* | -udk* \ - | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ - | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ - | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ - | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ - | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ - | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly*) - # Remember, each alternative MUST END IN *, to match a version number. - ;; - -qnx*) - case $basic_machine in - x86-* | i*86-*) - ;; - *) - os=-nto$os - ;; - esac - ;; - -nto-qnx*) - ;; - -nto*) - os=`echo $os | sed -e 's|nto|nto-qnx|'` - ;; - -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ - | -windows* | -osx | -abug | -netware* | -os9* | -beos* \ - | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) - ;; - -mac*) - os=`echo $os | sed -e 's|mac|macos|'` - ;; - -linux-dietlibc) - os=-linux-dietlibc - ;; - -linux*) - os=`echo $os | sed -e 's|linux|linux-gnu|'` - ;; - -sunos5*) - os=`echo $os | sed -e 's|sunos5|solaris2|'` - ;; - -sunos6*) - os=`echo $os | sed -e 's|sunos6|solaris3|'` - ;; - -opened*) - os=-openedition - ;; - -os400*) - os=-os400 - ;; - -wince*) - os=-wince - ;; - -osfrose*) - os=-osfrose - ;; - -osf*) - os=-osf - ;; - -utek*) - os=-bsd - ;; - -dynix*) - os=-bsd - ;; - -acis*) - os=-aos - ;; - -atheos*) - os=-atheos - ;; - -syllable*) - os=-syllable - ;; - -386bsd) - os=-bsd - ;; - -ctix* | -uts*) - os=-sysv - ;; - -nova*) - os=-rtmk-nova - ;; - -ns2 ) - os=-nextstep2 - ;; - -nsk*) - os=-nsk - ;; - # Preserve the version number of sinix5. - -sinix5.*) - os=`echo $os | sed -e 's|sinix|sysv|'` - ;; - -sinix*) - os=-sysv4 - ;; - -tpf*) - os=-tpf - ;; - -triton*) - os=-sysv3 - ;; - -oss*) - os=-sysv3 - ;; - -svr4) - os=-sysv4 - ;; - -svr3) - os=-sysv3 - ;; - -sysvr4) - os=-sysv4 - ;; - # This must come after -sysvr4. - -sysv*) - ;; - -ose*) - os=-ose - ;; - -es1800*) - os=-ose - ;; - -xenix) - os=-xenix - ;; - -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) - os=-mint - ;; - -aros*) - os=-aros - ;; - -kaos*) - os=-kaos - ;; - -none) - ;; - *) - # Get rid of the `-' at the beginning of $os. - os=`echo $os | sed 's/[^-]*-//'` - echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 - exit 1 - ;; -esac -else - -# Here we handle the default operating systems that come with various machines. -# The value should be what the vendor currently ships out the door with their -# machine or put another way, the most popular os provided with the machine. - -# Note that if you're going to try to match "-MANUFACTURER" here (say, -# "-sun"), then you have to tell the case statement up towards the top -# that MANUFACTURER isn't an operating system. Otherwise, code above -# will signal an error saying that MANUFACTURER isn't an operating -# system, and we'll never get to this point. - -case $basic_machine in - *-acorn) - os=-riscix1.2 - ;; - arm*-rebel) - os=-linux - ;; - arm*-semi) - os=-aout - ;; - c4x-* | tic4x-*) - os=-coff - ;; - # This must come before the *-dec entry. - pdp10-*) - os=-tops20 - ;; - pdp11-*) - os=-none - ;; - *-dec | vax-*) - os=-ultrix4.2 - ;; - m68*-apollo) - os=-domain - ;; - i386-sun) - os=-sunos4.0.2 - ;; - m68000-sun) - os=-sunos3 - # This also exists in the configure program, but was not the - # default. - # os=-sunos4 - ;; - m68*-cisco) - os=-aout - ;; - mips*-cisco) - os=-elf - ;; - mips*-*) - os=-elf - ;; - or32-*) - os=-coff - ;; - *-tti) # must be before sparc entry or we get the wrong os. - os=-sysv3 - ;; - sparc-* | *-sun) - os=-sunos4.1.1 - ;; - *-be) - os=-beos - ;; - *-ibm) - os=-aix - ;; - *-wec) - os=-proelf - ;; - *-winbond) - os=-proelf - ;; - *-oki) - os=-proelf - ;; - *-hp) - os=-hpux - ;; - *-hitachi) - os=-hiux - ;; - i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) - os=-sysv - ;; - *-cbm) - os=-amigaos - ;; - *-dg) - os=-dgux - ;; - *-dolphin) - os=-sysv3 - ;; - m68k-ccur) - os=-rtu - ;; - m88k-omron*) - os=-luna - ;; - *-next ) - os=-nextstep - ;; - *-sequent) - os=-ptx - ;; - *-crds) - os=-unos - ;; - *-ns) - os=-genix - ;; - i370-*) - os=-mvs - ;; - *-next) - os=-nextstep3 - ;; - *-gould) - os=-sysv - ;; - *-highlevel) - os=-bsd - ;; - *-encore) - os=-bsd - ;; - *-sgi) - os=-irix - ;; - *-siemens) - os=-sysv4 - ;; - *-masscomp) - os=-rtu - ;; - f30[01]-fujitsu | f700-fujitsu) - os=-uxpv - ;; - *-rom68k) - os=-coff - ;; - *-*bug) - os=-coff - ;; - *-apple) - os=-macos - ;; - *-atari*) - os=-mint - ;; - *) - os=-none - ;; -esac -fi - -# Here we handle the case where we know the os, and the CPU type, but not the -# manufacturer. We pick the logical manufacturer. -vendor=unknown -case $basic_machine in - *-unknown) - case $os in - -riscix*) - vendor=acorn - ;; - -sunos*) - vendor=sun - ;; - -aix*) - vendor=ibm - ;; - -beos*) - vendor=be - ;; - -hpux*) - vendor=hp - ;; - -mpeix*) - vendor=hp - ;; - -hiux*) - vendor=hitachi - ;; - -unos*) - vendor=crds - ;; - -dgux*) - vendor=dg - ;; - -luna*) - vendor=omron - ;; - -genix*) - vendor=ns - ;; - -mvs* | -opened*) - vendor=ibm - ;; - -os400*) - vendor=ibm - ;; - -ptx*) - vendor=sequent - ;; - -tpf*) - vendor=ibm - ;; - -vxsim* | -vxworks* | -windiss*) - vendor=wrs - ;; - -aux*) - vendor=apple - ;; - -hms*) - vendor=hitachi - ;; - -mpw* | -macos*) - vendor=apple - ;; - -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) - vendor=atari - ;; - -vos*) - vendor=stratus - ;; - esac - basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` - ;; -esac - -echo $basic_machine$os -exit 0 - -# Local variables: -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "timestamp='" -# time-stamp-format: "%:y-%02m-%02d" -# time-stamp-end: "'" -# End: DELETED ffcall/autoconf/ltmain.sh Index: ffcall/autoconf/ltmain.sh ================================================================== --- ffcall/autoconf/ltmain.sh +++ /dev/null @@ -1,4946 +0,0 @@ -# ltmain.sh - Provide generalized library-building support services. -# NOTE: Changing this file will not affect anything until you rerun configure. -# -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001 -# Free Software Foundation, Inc. -# Originally by Gordon Matzigkeit , 1996 -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# Check that we have a working $echo. -if test "X$1" = X--no-reexec; then - # Discard the --no-reexec flag, and continue. - shift -elif test "X$1" = X--fallback-echo; then - # Avoid inline document here, it may be left over - : -elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then - # Yippee, $echo works! - : -else - # Restart under the correct shell, and then maybe $echo will work. - exec $SHELL "$0" --no-reexec ${1+"$@"} -fi - -if test "X$1" = X--fallback-echo; then - # used as fallback echo - shift - cat <&2 - echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2 - exit 1 -fi - -# Global variables. -mode=$default_mode -nonopt= -prev= -prevopt= -run= -show="$echo" -show_help= -execute_dlfiles= -lo2o="s/\\.lo\$/.${objext}/" -o2lo="s/\\.${objext}\$/.lo/" - -# Parse our command line options once, thoroughly. -while test $# -gt 0 -do - arg="$1" - shift - - case $arg in - -*=*) optarg=`$echo "X$arg" | $Xsed -e 's/[-_a-zA-Z0-9]*=//'` ;; - *) optarg= ;; - esac - - # If the previous option needs an argument, assign it. - if test -n "$prev"; then - case $prev in - execute_dlfiles) - execute_dlfiles="$execute_dlfiles $arg" - ;; - *) - eval "$prev=\$arg" - ;; - esac - - prev= - prevopt= - continue - fi - - # Have we seen a non-optional argument yet? - case $arg in - --help) - show_help=yes - ;; - - --version) - echo "$PROGRAM (GNU $PACKAGE) $VERSION$TIMESTAMP" - exit 0 - ;; - - --config) - sed -e '1,/^# ### BEGIN LIBTOOL CONFIG/d' -e '/^# ### END LIBTOOL CONFIG/,$d' $0 - exit 0 - ;; - - --debug) - echo "$progname: enabling shell trace mode" - set -x - ;; - - --dry-run | -n) - run=: - ;; - - --features) - echo "host: $host" - if test "$build_libtool_libs" = yes; then - echo "enable shared libraries" - else - echo "disable shared libraries" - fi - if test "$build_old_libs" = yes; then - echo "enable static libraries" - else - echo "disable static libraries" - fi - exit 0 - ;; - - --finish) mode="finish" ;; - - --mode) prevopt="--mode" prev=mode ;; - --mode=*) mode="$optarg" ;; - - --quiet | --silent) - show=: - ;; - - -dlopen) - prevopt="-dlopen" - prev=execute_dlfiles - ;; - - -*) - $echo "$modename: unrecognized option \`$arg'" 1>&2 - $echo "$help" 1>&2 - exit 1 - ;; - - *) - nonopt="$arg" - break - ;; - esac -done - -if test -n "$prevopt"; then - $echo "$modename: option \`$prevopt' requires an argument" 1>&2 - $echo "$help" 1>&2 - exit 1 -fi - -if test -z "$show_help"; then - - # Infer the operation mode. - if test -z "$mode"; then - case $nonopt in - *cc | *++ | gcc* | *-gcc*) - mode=link - for arg - do - case $arg in - -c) - mode=compile - break - ;; - esac - done - ;; - *db | *dbx | *strace | *truss) - mode=execute - ;; - *install*|cp|mv) - mode=install - ;; - *rm) - mode=uninstall - ;; - *) - # If we have no mode, but dlfiles were specified, then do execute mode. - test -n "$execute_dlfiles" && mode=execute - - # 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 - else - $echo "$modename: warning: cannot infer operation mode without MODE-ARGS" 1>&2 - fi - fi - ;; - esac - fi - - # 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 "$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." - - # These modes are in order of execution frequency so that they run quickly. - case $mode in - # libtool compile mode - compile) - modename="$modename: compile" - # Get the compilation command and the source file. - base_compile= - prev= - lastarg= - srcfile="$nonopt" - suppress_output= - - user_target=no - for arg - do - case $prev in - "") ;; - xcompiler) - # Aesthetically quote the previous argument. - prev= - lastarg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` - - case $arg in - # Double-quote args containing other shell metacharacters. - # Many Bourne shells cannot handle close brackets correctly - # in scan sets, so we specify it separately. - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - arg="\"$arg\"" - ;; - esac - - # Add the previous argument to base_compile. - if test -z "$base_compile"; then - base_compile="$lastarg" - else - base_compile="$base_compile $lastarg" - fi - continue - ;; - esac - - # Accept any command-line options. - case $arg in - -o) - if test "$user_target" != "no"; then - $echo "$modename: you cannot specify \`-o' more than once" 1>&2 - exit 1 - fi - user_target=next - ;; - - -static) - build_old_libs=yes - continue - ;; - - -prefer-pic) - pic_mode=yes - continue - ;; - - -prefer-non-pic) - pic_mode=no - continue - ;; - - -Xcompiler) - prev=xcompiler - continue - ;; - - -Wc,*) - args=`$echo "X$arg" | $Xsed -e "s/^-Wc,//"` - lastarg= - IFS="${IFS= }"; save_ifs="$IFS"; IFS=',' - for arg in $args; do - IFS="$save_ifs" - - # Double-quote args containing other shell metacharacters. - # Many Bourne shells cannot handle close brackets correctly - # in scan sets, so we specify it separately. - case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - arg="\"$arg\"" - ;; - esac - lastarg="$lastarg $arg" - done - IFS="$save_ifs" - lastarg=`$echo "X$lastarg" | $Xsed -e "s/^ //"` - - # Add the arguments to base_compile. - if test -z "$base_compile"; then - base_compile="$lastarg" - else - base_compile="$base_compile $lastarg" - fi - continue - ;; - esac - - case $user_target in - next) - # The next one is the -o target name - user_target=yes - continue - ;; - yes) - # We got the output file - user_target=set - libobj="$arg" - continue - ;; - esac - - # Accept the current argument as the source file. - lastarg="$srcfile" - srcfile="$arg" - - # Aesthetically quote the previous argument. - - # Backslashify any backslashes, double quotes, and dollar signs. - # These are the only characters that are still specially - # interpreted inside of double-quoted scrings. - lastarg=`$echo "X$lastarg" | $Xsed -e "$sed_quote_subst"` - - # Double-quote args containing other shell metacharacters. - # Many Bourne shells cannot handle close brackets correctly - # in scan sets, so we specify it separately. - case $lastarg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - lastarg="\"$lastarg\"" - ;; - esac - - # Add the previous argument to base_compile. - if test -z "$base_compile"; then - base_compile="$lastarg" - else - base_compile="$base_compile $lastarg" - fi - done - - case $user_target in - set) - ;; - no) - # Get the name of the library object. - libobj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%'` - ;; - *) - $echo "$modename: you must specify a target with \`-o'" 1>&2 - exit 1 - ;; - esac - - # Recognize several different file suffixes. - # If the user specifies -o file.o, it is replaced with file.lo - xform='[cCFSfmso]' - case $libobj in - *.ada) xform=ada ;; - *.adb) xform=adb ;; - *.ads) xform=ads ;; - *.asm) xform=asm ;; - *.c++) xform=c++ ;; - *.cc) xform=cc ;; - *.cpp) xform=cpp ;; - *.cxx) xform=cxx ;; - *.f90) xform=f90 ;; - *.for) xform=for ;; - esac - - libobj=`$echo "X$libobj" | $Xsed -e "s/\.$xform$/.lo/"` - - case $libobj in - *.lo) obj=`$echo "X$libobj" | $Xsed -e "$lo2o"` ;; - *) - $echo "$modename: cannot determine name of library object from \`$libobj'" 1>&2 - exit 1 - ;; - esac - - if test -z "$base_compile"; then - $echo "$modename: you must specify a compilation command" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - # Delete any leftover library objects. - if test "$build_old_libs" = yes; then - removelist="$obj $libobj" - else - removelist="$libobj" - fi - - $run $rm $removelist - trap "$run $rm $removelist; exit 1" 1 2 15 - - # On Cygwin there's no "real" PIC flag so we must build both object types - case $host_os in - cygwin* | mingw* | pw32* | os2*) - pic_mode=default - ;; - esac - if test $pic_mode = no && test "$deplibs_check_method" != pass_all; then - # non-PIC code in shared libraries is not supported - pic_mode=default - fi - - # Calculate the filename of the output object if compiler does - # not support -o with -c - if test "$compiler_c_o" = no; then - output_obj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\.[^.]*$%%'`.${objext} - lockfile="$output_obj.lock" - removelist="$removelist $output_obj $lockfile" - trap "$run $rm $removelist; exit 1" 1 2 15 - else - need_locks=no - lockfile= - fi - - # Lock this critical section if it is needed - # We use this script file to make the link, it avoids creating a new file - if test "$need_locks" = yes; then - until $run ln "$0" "$lockfile" 2>/dev/null; do - $show "Waiting for $lockfile to be removed" - sleep 2 - done - elif test "$need_locks" = warn; then - if test -f "$lockfile"; then - echo "\ -*** ERROR, $lockfile exists and contains: -`cat $lockfile 2>/dev/null` - -This indicates that another process is trying to use the same -temporary object file, and libtool could not work around it because -your compiler does not support \`-c' and \`-o' together. If you -repeat this compilation, it may succeed, by chance, but you had better -avoid parallel builds (make -j) in this platform, or get a better -compiler." - - $run $rm $removelist - exit 1 - fi - echo $srcfile > "$lockfile" - fi - - if test -n "$fix_srcfile_path"; then - eval srcfile=\"$fix_srcfile_path\" - fi - - # Only build a PIC object if we are building libtool libraries. - if test "$build_libtool_libs" = yes; then - # Without this assignment, base_compile gets emptied. - fbsd_hideous_sh_bug=$base_compile - - if test "$pic_mode" != no; then - # All platforms use -DPIC, to notify preprocessed assembler code. - command="$base_compile $srcfile $pic_flag -DPIC" - else - # Don't build PIC code - command="$base_compile $srcfile" - fi - if test "$build_old_libs" = yes; then - lo_libobj="$libobj" - dir=`$echo "X$libobj" | $Xsed -e 's%/[^/]*$%%'` - if test "X$dir" = "X$libobj"; then - dir="$objdir" - else - dir="$dir/$objdir" - fi - libobj="$dir/"`$echo "X$libobj" | $Xsed -e 's%^.*/%%'` - - if test -d "$dir"; then - $show "$rm $libobj" - $run $rm $libobj - else - $show "$mkdir $dir" - $run $mkdir $dir - status=$? - if test $status -ne 0 && test ! -d $dir; then - exit $status - fi - fi - fi - if test "$compiler_o_lo" = yes; then - output_obj="$libobj" - command="$command -o $output_obj" - elif test "$compiler_c_o" = yes; then - output_obj="$obj" - command="$command -o $output_obj" - fi - - $run $rm "$output_obj" - $show "$command" - if $run eval "$command"; then : - else - test -n "$output_obj" && $run $rm $removelist - exit 1 - fi - - if test "$need_locks" = warn && - test x"`cat $lockfile 2>/dev/null`" != x"$srcfile"; then - echo "\ -*** ERROR, $lockfile contains: -`cat $lockfile 2>/dev/null` - -but it should contain: -$srcfile - -This indicates that another process is trying to use the same -temporary object file, and libtool could not work around it because -your compiler does not support \`-c' and \`-o' together. If you -repeat this compilation, it may succeed, by chance, but you had better -avoid parallel builds (make -j) in this platform, or get a better -compiler." - - $run $rm $removelist - exit 1 - fi - - # Just move the object if needed, then go on to compile the next one - if test x"$output_obj" != x"$libobj"; then - $show "$mv $output_obj $libobj" - if $run $mv $output_obj $libobj; then : - else - error=$? - $run $rm $removelist - exit $error - fi - fi - - # If we have no pic_flag, then copy the object into place and finish. - if (test -z "$pic_flag" || test "$pic_mode" != default) && - test "$build_old_libs" = yes; then - # Rename the .lo from within objdir to obj - if test -f $obj; then - $show $rm $obj - $run $rm $obj - fi - - $show "$mv $libobj $obj" - if $run $mv $libobj $obj; then : - else - error=$? - $run $rm $removelist - exit $error - fi - - xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'` - if test "X$xdir" = "X$obj"; then - xdir="." - else - xdir="$xdir" - fi - baseobj=`$echo "X$obj" | $Xsed -e "s%.*/%%"` - libobj=`$echo "X$baseobj" | $Xsed -e "$o2lo"` - # Now arrange that obj and lo_libobj become the same file - $show "(cd $xdir && $LN_S $baseobj $libobj)" - if $run eval '(cd $xdir && $LN_S $baseobj $libobj)'; then - exit 0 - else - error=$? - $run $rm $removelist - exit $error - fi - fi - - # Allow error messages only from the first compilation. - suppress_output=' >/dev/null 2>&1' - fi - - # Only build a position-dependent object if we build old libraries. - if test "$build_old_libs" = yes; then - if test "$pic_mode" != yes; then - # Don't build PIC code - command="$base_compile $srcfile" - else - # All platforms use -DPIC, to notify preprocessed assembler code. - command="$base_compile $srcfile $pic_flag -DPIC" - fi - if test "$compiler_c_o" = yes; then - command="$command -o $obj" - output_obj="$obj" - fi - - # Suppress compiler output if we already did a PIC compilation. - command="$command$suppress_output" - $run $rm "$output_obj" - $show "$command" - if $run eval "$command"; then : - else - $run $rm $removelist - exit 1 - fi - - if test "$need_locks" = warn && - test x"`cat $lockfile 2>/dev/null`" != x"$srcfile"; then - echo "\ -*** ERROR, $lockfile contains: -`cat $lockfile 2>/dev/null` - -but it should contain: -$srcfile - -This indicates that another process is trying to use the same -temporary object file, and libtool could not work around it because -your compiler does not support \`-c' and \`-o' together. If you -repeat this compilation, it may succeed, by chance, but you had better -avoid parallel builds (make -j) in this platform, or get a better -compiler." - - $run $rm $removelist - exit 1 - fi - - # Just move the object if needed - if test x"$output_obj" != x"$obj"; then - $show "$mv $output_obj $obj" - if $run $mv $output_obj $obj; then : - else - error=$? - $run $rm $removelist - exit $error - fi - fi - - # Create an invalid libtool object if no PIC, so that we do not - # accidentally link it into a program. - if test "$build_libtool_libs" != yes; then - $show "echo timestamp > $libobj" - $run eval "echo timestamp > \$libobj" || exit $? - else - # Move the .lo from within objdir - $show "$mv $libobj $lo_libobj" - if $run $mv $libobj $lo_libobj; then : - else - error=$? - $run $rm $removelist - exit $error - fi - fi - fi - - # Unlock the critical section if it was locked - if test "$need_locks" != no; then - $run $rm "$lockfile" - fi - - exit 0 - ;; - - # libtool link mode - link | relink) - modename="$modename: link" - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) - # It is impossible to link a dll without this setting, and - # we shouldn't force the makefile maintainer to figure out - # which system we are compiling for in order to pass an extra - # flag for every libtool invokation. - # allow_undefined=no - - # FIXME: Unfortunately, there are problems with the above when trying - # to make a dll which has undefined symbols, in which case not - # even a static library is built. For now, we need to specify - # -no-undefined on the libtool link line when we can be certain - # that all symbols are satisfied, otherwise we get a static library. - allow_undefined=yes - ;; - *) - allow_undefined=yes - ;; - esac - libtool_args="$nonopt" - compile_command="$nonopt" - finalize_command="$nonopt" - - compile_rpath= - finalize_rpath= - compile_shlibpath= - finalize_shlibpath= - convenience= - old_convenience= - deplibs= - old_deplibs= - compiler_flags= - linker_flags= - dllsearchpath= - lib_search_path=`pwd` - - avoid_version=no - dlfiles= - dlprefiles= - dlself=no - export_dynamic=no - export_symbols= - export_symbols_regex= - generated= - libobjs= - ltlibs= - module=no - no_install=no - objs= - prefer_static_libs=no - preload=no - prev= - prevarg= - release= - rpath= - xrpath= - perm_rpath= - temp_rpath= - thread_safe=no - vinfo= - - # We need to know -static, to get the right output filenames. - for arg - do - case $arg in - -all-static | -static) - if test "X$arg" = "X-all-static"; then - if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then - $echo "$modename: warning: complete static linking is impossible in this configuration" 1>&2 - fi - if test -n "$link_static_flag"; then - dlopen_self=$dlopen_self_static - fi - else - if test -z "$pic_flag" && test -n "$link_static_flag"; then - dlopen_self=$dlopen_self_static - fi - fi - build_libtool_libs=no - build_old_libs=yes - prefer_static_libs=yes - break - ;; - esac - done - - # See if our shared archives depend on static archives. - test -n "$old_archive_from_new_cmds" && build_old_libs=yes - - # Go through the arguments, transforming them on the way. - while test $# -gt 0; do - arg="$1" - shift - case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - qarg=\"`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`\" ### testsuite: skip nested quoting test - ;; - *) qarg=$arg ;; - esac - libtool_args="$libtool_args $qarg" - - # If the previous option needs an argument, assign it. - if test -n "$prev"; then - case $prev in - output) - compile_command="$compile_command @OUTPUT@" - finalize_command="$finalize_command @OUTPUT@" - ;; - esac - - case $prev in - dlfiles|dlprefiles) - if test "$preload" = no; then - # Add the symbol object into the linking commands. - compile_command="$compile_command @SYMFILE@" - finalize_command="$finalize_command @SYMFILE@" - preload=yes - fi - case $arg in - *.la | *.lo) ;; # We handle these cases below. - force) - if test "$dlself" = no; then - dlself=needless - export_dynamic=yes - fi - prev= - continue - ;; - self) - if test "$prev" = dlprefiles; then - dlself=yes - elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then - dlself=yes - else - dlself=needless - export_dynamic=yes - fi - prev= - continue - ;; - *) - if test "$prev" = dlfiles; then - dlfiles="$dlfiles $arg" - else - dlprefiles="$dlprefiles $arg" - fi - prev= - continue - ;; - esac - ;; - expsyms) - export_symbols="$arg" - if test ! -f "$arg"; then - $echo "$modename: symbol file \`$arg' does not exist" - exit 1 - fi - prev= - continue - ;; - expsyms_regex) - export_symbols_regex="$arg" - prev= - continue - ;; - release) - release="-$arg" - prev= - continue - ;; - rpath | xrpath) - # We need an absolute path. - case $arg in - [\\/]* | [A-Za-z]:[\\/]*) ;; - *) - $echo "$modename: only absolute run-paths are allowed" 1>&2 - exit 1 - ;; - esac - if test "$prev" = rpath; then - case "$rpath " in - *" $arg "*) ;; - *) rpath="$rpath $arg" ;; - esac - else - case "$xrpath " in - *" $arg "*) ;; - *) xrpath="$xrpath $arg" ;; - esac - fi - prev= - continue - ;; - xcompiler) - compiler_flags="$compiler_flags $qarg" - prev= - compile_command="$compile_command $qarg" - finalize_command="$finalize_command $qarg" - continue - ;; - xlinker) - linker_flags="$linker_flags $qarg" - compiler_flags="$compiler_flags $wl$qarg" - prev= - compile_command="$compile_command $wl$qarg" - finalize_command="$finalize_command $wl$qarg" - continue - ;; - *) - eval "$prev=\"\$arg\"" - prev= - continue - ;; - esac - fi # test -n $prev - - prevarg="$arg" - - case $arg in - -all-static) - if test -n "$link_static_flag"; then - compile_command="$compile_command $link_static_flag" - finalize_command="$finalize_command $link_static_flag" - fi - continue - ;; - - -allow-undefined) - # FIXME: remove this flag sometime in the future. - $echo "$modename: \`-allow-undefined' is deprecated because it is the default" 1>&2 - continue - ;; - - -avoid-version) - avoid_version=yes - continue - ;; - - -dlopen) - prev=dlfiles - continue - ;; - - -dlpreopen) - prev=dlprefiles - continue - ;; - - -export-dynamic) - export_dynamic=yes - continue - ;; - - -export-symbols | -export-symbols-regex) - if test -n "$export_symbols" || test -n "$export_symbols_regex"; then - $echo "$modename: more than one -exported-symbols argument is not allowed" - exit 1 - fi - if test "X$arg" = "X-export-symbols"; then - prev=expsyms - else - prev=expsyms_regex - fi - continue - ;; - - # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:* - # so, if we see these flags be careful not to treat them like -L - -L[A-Z][A-Z]*:*) - case $with_gcc/$host in - no/*-*-irix*) - compile_command="$compile_command $arg" - finalize_command="$finalize_command $arg" - ;; - esac - continue - ;; - - -L*) - dir=`$echo "X$arg" | $Xsed -e 's/^-L//'` - # We need an absolute path. - case $dir in - [\\/]* | [A-Za-z]:[\\/]*) ;; - *) - absdir=`cd "$dir" && pwd` - if test -z "$absdir"; then - $echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2 - exit 1 - fi - dir="$absdir" - ;; - esac - case "$deplibs " in - *" -L$dir "*) ;; - *) - deplibs="$deplibs -L$dir" - lib_search_path="$lib_search_path $dir" - ;; - esac - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) - case :$dllsearchpath: in - *":$dir:"*) ;; - *) dllsearchpath="$dllsearchpath:$dir";; - esac - ;; - esac - continue - ;; - - -l*) - if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then - case $host in - *-*-cygwin* | *-*-pw32* | *-*-beos*) - # These systems don't actually have a C or math library (as such) - continue - ;; - *-*-mingw* | *-*-os2*) - # These systems don't actually have a C library (as such) - test "X$arg" = "X-lc" && continue - ;; - esac - fi - deplibs="$deplibs $arg" - continue - ;; - - -module) - module=yes - continue - ;; - - -no-fast-install) - fast_install=no - continue - ;; - - -no-install) - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) - # The PATH hackery in wrapper scripts is required on Windows - # in order for the loader to find any dlls it needs. - $echo "$modename: warning: \`-no-install' is ignored for $host" 1>&2 - $echo "$modename: warning: assuming \`-no-fast-install' instead" 1>&2 - fast_install=no - ;; - *) no_install=yes ;; - esac - continue - ;; - - -no-undefined) - allow_undefined=no - continue - ;; - - -o) prev=output ;; - - -release) - prev=release - continue - ;; - - -rpath) - prev=rpath - continue - ;; - - -R) - prev=xrpath - continue - ;; - - -R*) - dir=`$echo "X$arg" | $Xsed -e 's/^-R//'` - # We need an absolute path. - case $dir in - [\\/]* | [A-Za-z]:[\\/]*) ;; - *) - $echo "$modename: only absolute run-paths are allowed" 1>&2 - exit 1 - ;; - esac - case "$xrpath " in - *" $dir "*) ;; - *) xrpath="$xrpath $dir" ;; - esac - continue - ;; - - -static) - # The effects of -static are defined in a previous loop. - # We used to do the same as -all-static on platforms that - # didn't have a PIC flag, but the assumption that the effects - # would be equivalent was wrong. It would break on at least - # Digital Unix and AIX. - continue - ;; - - -thread-safe) - thread_safe=yes - continue - ;; - - -version-info) - prev=vinfo - continue - ;; - - -Wc,*) - args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wc,//'` - arg= - IFS="${IFS= }"; save_ifs="$IFS"; IFS=',' - for flag in $args; do - IFS="$save_ifs" - case $flag in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - flag="\"$flag\"" - ;; - esac - arg="$arg $wl$flag" - compiler_flags="$compiler_flags $flag" - done - IFS="$save_ifs" - arg=`$echo "X$arg" | $Xsed -e "s/^ //"` - ;; - - -Wl,*) - args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wl,//'` - arg= - IFS="${IFS= }"; save_ifs="$IFS"; IFS=',' - for flag in $args; do - IFS="$save_ifs" - case $flag in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - flag="\"$flag\"" - ;; - esac - arg="$arg $wl$flag" - compiler_flags="$compiler_flags $wl$flag" - linker_flags="$linker_flags $flag" - done - IFS="$save_ifs" - arg=`$echo "X$arg" | $Xsed -e "s/^ //"` - ;; - - -Xcompiler) - prev=xcompiler - continue - ;; - - -Xlinker) - prev=xlinker - continue - ;; - - # Some other compiler flag. - -* | +*) - # Unknown arguments in both finalize_command and compile_command need - # to be aesthetically quoted because they are evaled later. - arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` - case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - arg="\"$arg\"" - ;; - esac - ;; - - *.lo | *.$objext) - # A library or standard object. - if test "$prev" = dlfiles; then - # This file was specified with -dlopen. - if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then - dlfiles="$dlfiles $arg" - prev= - continue - else - # If libtool objects are unsupported, then we need to preload. - prev=dlprefiles - fi - fi - - if test "$prev" = dlprefiles; then - # Preload the old-style object. - dlprefiles="$dlprefiles "`$echo "X$arg" | $Xsed -e "$lo2o"` - prev= - else - case $arg in - *.lo) libobjs="$libobjs $arg" ;; - *) objs="$objs $arg" ;; - esac - fi - ;; - - *.$libext) - # An archive. - deplibs="$deplibs $arg" - old_deplibs="$old_deplibs $arg" - continue - ;; - - *.la) - # A libtool-controlled library. - - if test "$prev" = dlfiles; then - # This library was specified with -dlopen. - dlfiles="$dlfiles $arg" - prev= - elif test "$prev" = dlprefiles; then - # The library was specified with -dlpreopen. - dlprefiles="$dlprefiles $arg" - prev= - else - deplibs="$deplibs $arg" - fi - continue - ;; - - # Some other compiler argument. - *) - # Unknown arguments in both finalize_command and compile_command need - # to be aesthetically quoted because they are evaled later. - arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` - case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - arg="\"$arg\"" - ;; - esac - ;; - esac # arg - - # Now actually substitute the argument into the commands. - if test -n "$arg"; then - compile_command="$compile_command $arg" - finalize_command="$finalize_command $arg" - fi - done # argument parsing loop - - if test -n "$prev"; then - $echo "$modename: the \`$prevarg' option requires an argument" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then - eval arg=\"$export_dynamic_flag_spec\" - compile_command="$compile_command $arg" - finalize_command="$finalize_command $arg" - fi - - # calculate the name of the file, without its directory - outputname=`$echo "X$output" | $Xsed -e 's%^.*/%%'` - libobjs_save="$libobjs" - - if test -n "$shlibpath_var"; then - # get the directories listed in $shlibpath_var - eval shlib_search_path=\`\$echo \"X\${$shlibpath_var}\" \| \$Xsed -e \'s/:/ /g\'\` - else - shlib_search_path= - fi - eval sys_lib_search_path=\"$sys_lib_search_path_spec\" - eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\" - - output_objdir=`$echo "X$output" | $Xsed -e 's%/[^/]*$%%'` - if test "X$output_objdir" = "X$output"; then - output_objdir="$objdir" - else - output_objdir="$output_objdir/$objdir" - fi - # Create the object directory. - if test ! -d $output_objdir; then - $show "$mkdir $output_objdir" - $run $mkdir $output_objdir - status=$? - if test $status -ne 0 && test ! -d $output_objdir; then - exit $status - fi - fi - - # Determine the type of output - case $output in - "") - $echo "$modename: you must specify an output file" 1>&2 - $echo "$help" 1>&2 - exit 1 - ;; - *.$libext) linkmode=oldlib ;; - *.lo | *.$objext) linkmode=obj ;; - *.la) linkmode=lib ;; - *) linkmode=prog ;; # Anything else should be a program. - esac - - specialdeplibs= - libs= - # Find all interdependent deplibs by searching for libraries - # that are linked more than once (e.g. -la -lb -la) - for deplib in $deplibs; do - case "$libs " in - *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; - esac - libs="$libs $deplib" - done - deplibs= - newdependency_libs= - newlib_search_path= - need_relink=no # whether we're linking any uninstalled libtool libraries - notinst_deplibs= # not-installed libtool libraries - notinst_path= # paths that contain not-installed libtool libraries - case $linkmode in - lib) - passes="conv link" - for file in $dlfiles $dlprefiles; do - case $file in - *.la) ;; - *) - $echo "$modename: libraries can \`-dlopen' only libtool libraries: $file" 1>&2 - exit 1 - ;; - esac - done - ;; - prog) - compile_deplibs= - finalize_deplibs= - alldeplibs=no - newdlfiles= - newdlprefiles= - passes="conv scan dlopen dlpreopen link" - ;; - *) passes="conv" - ;; - esac - for pass in $passes; do - if test $linkmode = prog; then - # Determine which files to process - case $pass in - dlopen) - libs="$dlfiles" - save_deplibs="$deplibs" # Collect dlpreopened libraries - deplibs= - ;; - dlpreopen) libs="$dlprefiles" ;; - link) libs="$deplibs %DEPLIBS% $dependency_libs" ;; - esac - fi - for deplib in $libs; do - lib= - found=no - case $deplib in - -l*) - if test $linkmode = oldlib && test $linkmode = obj; then - $echo "$modename: warning: \`-l' is ignored for archives/objects: $deplib" 1>&2 - continue - fi - if test $pass = conv; then - deplibs="$deplib $deplibs" - continue - fi - name=`$echo "X$deplib" | $Xsed -e 's/^-l//'` - for searchdir in $newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path; do - # Search the libtool library - lib="$searchdir/lib${name}.la" - if test -f "$lib"; then - found=yes - break - fi - done - if test "$found" != yes; then - # deplib doesn't seem to be a libtool library - if test "$linkmode,$pass" = "prog,link"; then - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - else - deplibs="$deplib $deplibs" - test $linkmode = lib && newdependency_libs="$deplib $newdependency_libs" - fi - continue - fi - ;; # -l - -L*) - case $linkmode in - lib) - deplibs="$deplib $deplibs" - test $pass = conv && continue - newdependency_libs="$deplib $newdependency_libs" - newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'` - ;; - prog) - if test $pass = conv; then - deplibs="$deplib $deplibs" - continue - fi - if test $pass = scan; then - deplibs="$deplib $deplibs" - newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'` - else - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - fi - ;; - *) - $echo "$modename: warning: \`-L' is ignored for archives/objects: $deplib" 1>&2 - ;; - esac # linkmode - continue - ;; # -L - -R*) - if test $pass = link; then - dir=`$echo "X$deplib" | $Xsed -e 's/^-R//'` - # Make sure the xrpath contains only unique directories. - case "$xrpath " in - *" $dir "*) ;; - *) xrpath="$xrpath $dir" ;; - esac - fi - deplibs="$deplib $deplibs" - continue - ;; - *.la) lib="$deplib" ;; - *.$libext) - if test $pass = conv; then - deplibs="$deplib $deplibs" - continue - fi - case $linkmode in - lib) - if test "$deplibs_check_method" != pass_all; then - echo - echo "*** Warning: This library needs some functionality provided by $deplib." - echo "*** I have the capability to make that library automatically link in when" - echo "*** you link to this library. But I can only do this if you have a" - echo "*** shared version of the library, which you do not appear to have." - else - echo - echo "*** Warning: Linking the shared library $output against the" - echo "*** static library $deplib is not portable!" - deplibs="$deplib $deplibs" - fi - continue - ;; - prog) - if test $pass != link; then - deplibs="$deplib $deplibs" - else - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - fi - continue - ;; - esac # linkmode - ;; # *.$libext - *.lo | *.$objext) - if test $pass = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then - # If there is no dlopen support or we're linking statically, - # we need to preload. - newdlprefiles="$newdlprefiles $deplib" - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - else - newdlfiles="$newdlfiles $deplib" - fi - continue - ;; - %DEPLIBS%) - alldeplibs=yes - continue - ;; - esac # case $deplib - if test $found = yes || test -f "$lib"; then : - else - $echo "$modename: cannot find the library \`$lib'" 1>&2 - exit 1 - fi - - # Check to see that this really is a libtool archive. - if (sed -e '2q' $lib | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : - else - $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 - exit 1 - fi - - ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'` - test "X$ladir" = "X$lib" && ladir="." - - dlname= - dlopen= - dlpreopen= - libdir= - library_names= - old_library= - # If the library was installed with an old release of libtool, - # it will not redefine variable installed. - installed=yes - - # Read the .la file - case $lib in - */* | *\\*) . $lib ;; - *) . ./$lib ;; - esac - - if test "$linkmode,$pass" = "lib,link" || - test "$linkmode,$pass" = "prog,scan" || - { test $linkmode = oldlib && test $linkmode = obj; }; then - # Add dl[pre]opened files of deplib - test -n "$dlopen" && dlfiles="$dlfiles $dlopen" - test -n "$dlpreopen" && dlprefiles="$dlprefiles $dlpreopen" - fi - - if test $pass = conv; then - # Only check for convenience libraries - deplibs="$lib $deplibs" - if test -z "$libdir"; then - if test -z "$old_library"; then - $echo "$modename: cannot find name of link library for \`$lib'" 1>&2 - exit 1 - fi - # It is a libtool convenience library, so add in its objects. - convenience="$convenience $ladir/$objdir/$old_library" - old_convenience="$old_convenience $ladir/$objdir/$old_library" - tmp_libs= - for deplib in $dependency_libs; do - deplibs="$deplib $deplibs" - case "$tmp_libs " in - *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; - esac - tmp_libs="$tmp_libs $deplib" - done - elif test $linkmode != prog && test $linkmode != lib; then - $echo "$modename: \`$lib' is not a convenience library" 1>&2 - exit 1 - fi - continue - fi # $pass = conv - - # Get the name of the library we link against. - linklib= - for l in $old_library $library_names; do - linklib="$l" - done - if test -z "$linklib"; then - $echo "$modename: cannot find name of link library for \`$lib'" 1>&2 - exit 1 - fi - - # This library was specified with -dlopen. - if test $pass = dlopen; then - if test -z "$libdir"; then - $echo "$modename: cannot -dlopen a convenience library: \`$lib'" 1>&2 - exit 1 - fi - if test -z "$dlname" || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then - # If there is no dlname, no dlopen support or we're linking - # statically, we need to preload. - dlprefiles="$dlprefiles $lib" - else - newdlfiles="$newdlfiles $lib" - fi - continue - fi # $pass = dlopen - - # We need an absolute path. - case $ladir in - [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;; - *) - abs_ladir=`cd "$ladir" && pwd` - if test -z "$abs_ladir"; then - $echo "$modename: warning: cannot determine absolute directory name of \`$ladir'" 1>&2 - $echo "$modename: passing it literally to the linker, although it might fail" 1>&2 - abs_ladir="$ladir" - fi - ;; - esac - laname=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` - - # Find the relevant object directory and library name. - if test "X$installed" = Xyes; then - if test ! -f "$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then - $echo "$modename: warning: library \`$lib' was moved." 1>&2 - dir="$ladir" - absdir="$abs_ladir" - libdir="$abs_ladir" - else - dir="$libdir" - absdir="$libdir" - fi - else - dir="$ladir/$objdir" - absdir="$abs_ladir/$objdir" - # Remove this search path later - notinst_path="$notinst_path $abs_ladir" - fi # $installed = yes - name=`$echo "X$laname" | $Xsed -e 's/\.la$//' -e 's/^lib//'` - - # This library was specified with -dlpreopen. - if test $pass = dlpreopen; then - if test -z "$libdir"; then - $echo "$modename: cannot -dlpreopen a convenience library: \`$lib'" 1>&2 - exit 1 - fi - # Prefer using a static library (so that no silly _DYNAMIC symbols - # are required to link). - if test -n "$old_library"; then - newdlprefiles="$newdlprefiles $dir/$old_library" - # Otherwise, use the dlname, so that lt_dlopen finds it. - elif test -n "$dlname"; then - newdlprefiles="$newdlprefiles $dir/$dlname" - else - newdlprefiles="$newdlprefiles $dir/$linklib" - fi - fi # $pass = dlpreopen - - if test -z "$libdir"; then - # Link the convenience library - if test $linkmode = lib; then - deplibs="$dir/$old_library $deplibs" - elif test "$linkmode,$pass" = "prog,link"; then - compile_deplibs="$dir/$old_library $compile_deplibs" - finalize_deplibs="$dir/$old_library $finalize_deplibs" - else - deplibs="$lib $deplibs" - fi - continue - fi - - if test $linkmode = prog && test $pass != link; then - newlib_search_path="$newlib_search_path $ladir" - deplibs="$lib $deplibs" - - linkalldeplibs=no - if test "$link_all_deplibs" != no || test -z "$library_names" || - test "$build_libtool_libs" = no; then - linkalldeplibs=yes - fi - - tmp_libs= - for deplib in $dependency_libs; do - case $deplib in - -L*) newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`;; ### testsuite: skip nested quoting test - esac - # Need to link against all dependency_libs? - if test $linkalldeplibs = yes; then - deplibs="$deplib $deplibs" - else - # Need to hardcode shared library paths - # or/and link against static libraries - newdependency_libs="$deplib $newdependency_libs" - fi - case "$tmp_libs " in - *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; - esac - tmp_libs="$tmp_libs $deplib" - done # for deplib - continue - fi # $linkmode = prog... - - link_static=no # Whether the deplib will be linked statically - if test -n "$library_names" && - { test "$prefer_static_libs" = no || test -z "$old_library"; }; then - # Link against this shared library - - if test "$linkmode,$pass" = "prog,link" || - { test $linkmode = lib && test $hardcode_into_libs = yes; }; then - # Hardcode the library path. - # Skip directories that are in the system default run-time - # search path. - case " $sys_lib_dlsearch_path " in - *" $absdir "*) ;; - *) - case "$compile_rpath " in - *" $absdir "*) ;; - *) compile_rpath="$compile_rpath $absdir" - esac - ;; - esac - case " $sys_lib_dlsearch_path " in - *" $libdir "*) ;; - *) - case "$finalize_rpath " in - *" $libdir "*) ;; - *) finalize_rpath="$finalize_rpath $libdir" - esac - ;; - esac - if test $linkmode = prog; then - # We need to hardcode the library path - if test -n "$shlibpath_var"; then - # Make sure the rpath contains only unique directories. - case "$temp_rpath " in - *" $dir "*) ;; - *" $absdir "*) ;; - *) temp_rpath="$temp_rpath $dir" ;; - esac - fi - fi - fi # $linkmode,$pass = prog,link... - - if test "$alldeplibs" = yes && - { test "$deplibs_check_method" = pass_all || - { test "$build_libtool_libs" = yes && - test -n "$library_names"; }; }; then - # We only need to search for static libraries - continue - fi - - if test "$installed" = no; then - notinst_deplibs="$notinst_deplibs $lib" - need_relink=yes - fi - - if test -n "$old_archive_from_expsyms_cmds"; then - # figure out the soname - set dummy $library_names - realname="$2" - shift; shift - libname=`eval \\$echo \"$libname_spec\"` - # use dlname if we got it. it's perfectly good, no? - if test -n "$dlname"; then - soname="$dlname" - elif test -n "$soname_spec"; then - # bleh windows - case $host in - *cygwin*) - major=`expr $current - $age` - versuffix="-$major" - ;; - esac - eval soname=\"$soname_spec\" - else - soname="$realname" - fi - - # Make a new name for the extract_expsyms_cmds to use - soroot="$soname" - soname=`echo $soroot | sed -e 's/^.*\///'` - newlib="libimp-`echo $soname | sed 's/^lib//;s/\.dll$//'`.a" - - # If the library has no export list, then create one now - if test -f "$output_objdir/$soname-def"; then : - else - $show "extracting exported symbol list from \`$soname'" - IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' - eval cmds=\"$extract_expsyms_cmds\" - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - fi - - # Create $newlib - if test -f "$output_objdir/$newlib"; then :; else - $show "generating import library for \`$soname'" - IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' - eval cmds=\"$old_archive_from_expsyms_cmds\" - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - fi - # make sure the library variables are pointing to the new library - dir=$output_objdir - linklib=$newlib - fi # test -n $old_archive_from_expsyms_cmds - - if test $linkmode = prog || test "$mode" != relink; then - add_shlibpath= - add_dir= - add= - lib_linked=yes - case $hardcode_action in - immediate | unsupported) - if test "$hardcode_direct" = no; then - add="$dir/$linklib" - elif test "$hardcode_minus_L" = no; then - case $host in - *-*-sunos*) add_shlibpath="$dir" ;; - esac - add_dir="-L$dir" - add="-l$name" - elif test "$hardcode_shlibpath_var" = no; then - add_shlibpath="$dir" - add="-l$name" - else - lib_linked=no - fi - ;; - relink) - if test "$hardcode_direct" = yes; then - add="$dir/$linklib" - elif test "$hardcode_minus_L" = yes; then - add_dir="-L$dir" - add="-l$name" - elif test "$hardcode_shlibpath_var" = yes; then - add_shlibpath="$dir" - add="-l$name" - else - lib_linked=no - fi - ;; - *) lib_linked=no ;; - esac - - if test "$lib_linked" != yes; then - $echo "$modename: configuration error: unsupported hardcode properties" - exit 1 - fi - - if test -n "$add_shlibpath"; then - case :$compile_shlibpath: in - *":$add_shlibpath:"*) ;; - *) compile_shlibpath="$compile_shlibpath$add_shlibpath:" ;; - esac - fi - if test $linkmode = prog; then - test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs" - test -n "$add" && compile_deplibs="$add $compile_deplibs" - else - test -n "$add_dir" && deplibs="$add_dir $deplibs" - test -n "$add" && deplibs="$add $deplibs" - if test "$hardcode_direct" != yes && \ - test "$hardcode_minus_L" != yes && \ - test "$hardcode_shlibpath_var" = yes; then - case :$finalize_shlibpath: in - *":$libdir:"*) ;; - *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;; - esac - fi - fi - fi - - if test $linkmode = prog || test "$mode" = relink; then - add_shlibpath= - add_dir= - add= - # Finalize command for both is simple: just hardcode it. - if test "$hardcode_direct" = yes; then - add="$libdir/$linklib" - elif test "$hardcode_minus_L" = yes; then - add_dir="-L$libdir" - add="-l$name" - elif test "$hardcode_shlibpath_var" = yes; then - case :$finalize_shlibpath: in - *":$libdir:"*) ;; - *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;; - esac - add="-l$name" - else - # We cannot seem to hardcode it, guess we'll fake it. - add_dir="-L$libdir" - add="-l$name" - fi - - if test $linkmode = prog; then - test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs" - test -n "$add" && finalize_deplibs="$add $finalize_deplibs" - else - test -n "$add_dir" && deplibs="$add_dir $deplibs" - test -n "$add" && deplibs="$add $deplibs" - fi - fi - elif test $linkmode = prog; then - if test "$alldeplibs" = yes && - { test "$deplibs_check_method" = pass_all || - { test "$build_libtool_libs" = yes && - test -n "$library_names"; }; }; then - # We only need to search for static libraries - continue - fi - - # Try to link the static library - # Here we assume that one of hardcode_direct or hardcode_minus_L - # is not unsupported. This is valid on all known static and - # shared platforms. - if test "$hardcode_direct" != unsupported; then - test -n "$old_library" && linklib="$old_library" - compile_deplibs="$dir/$linklib $compile_deplibs" - finalize_deplibs="$dir/$linklib $finalize_deplibs" - else - compile_deplibs="-l$name -L$dir $compile_deplibs" - finalize_deplibs="-l$name -L$dir $finalize_deplibs" - fi - elif test "$build_libtool_libs" = yes; then - # Not a shared library - if test "$deplibs_check_method" != pass_all; then - # We're trying link a shared library against a static one - # but the system doesn't support it. - - # Just print a warning and add the library to dependency_libs so - # that the program can be linked against the static library. - echo - echo "*** Warning: This library needs some functionality provided by $lib." - echo "*** I have the capability to make that library automatically link in when" - echo "*** you link to this library. But I can only do this if you have a" - echo "*** shared version of the library, which you do not appear to have." - if test "$module" = yes; then - echo "*** Therefore, libtool will create a static module, that should work " - echo "*** as long as the dlopening application is linked with the -dlopen flag." - if test -z "$global_symbol_pipe"; then - echo - echo "*** However, this would only work if libtool was able to extract symbol" - echo "*** lists from a program, using \`nm' or equivalent, but libtool could" - echo "*** not find such a program. So, this module is probably useless." - echo "*** \`nm' from GNU binutils and a full rebuild may help." - fi - if test "$build_old_libs" = no; then - build_libtool_libs=module - build_old_libs=yes - else - build_libtool_libs=no - fi - fi - else - convenience="$convenience $dir/$old_library" - old_convenience="$old_convenience $dir/$old_library" - deplibs="$dir/$old_library $deplibs" - link_static=yes - fi - fi # link shared/static library? - - if test $linkmode = lib; then - if test -n "$dependency_libs" && - { test $hardcode_into_libs != yes || test $build_old_libs = yes || - test $link_static = yes; }; then - # Extract -R from dependency_libs - temp_deplibs= - for libdir in $dependency_libs; do - case $libdir in - -R*) temp_xrpath=`$echo "X$libdir" | $Xsed -e 's/^-R//'` - case " $xrpath " in - *" $temp_xrpath "*) ;; - *) xrpath="$xrpath $temp_xrpath";; - esac;; - *) temp_deplibs="$temp_deplibs $libdir";; - esac - done - dependency_libs="$temp_deplibs" - fi - - newlib_search_path="$newlib_search_path $absdir" - # Link against this library - test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs" - # ... and its dependency_libs - tmp_libs= - for deplib in $dependency_libs; do - newdependency_libs="$deplib $newdependency_libs" - case "$tmp_libs " in - *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; - esac - tmp_libs="$tmp_libs $deplib" - done - - if test $link_all_deplibs != no; then - # Add the search paths of all dependency libraries - for deplib in $dependency_libs; do - case $deplib in - -L*) path="$deplib" ;; - *.la) - dir=`$echo "X$deplib" | $Xsed -e 's%/[^/]*$%%'` - test "X$dir" = "X$deplib" && dir="." - # We need an absolute path. - case $dir in - [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;; - *) - absdir=`cd "$dir" && pwd` - if test -z "$absdir"; then - $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2 - absdir="$dir" - fi - ;; - esac - if grep "^installed=no" $deplib > /dev/null; then - path="-L$absdir/$objdir" - else - eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` - if test -z "$libdir"; then - $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2 - exit 1 - fi - if test "$absdir" != "$libdir"; then - $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2 - fi - path="-L$absdir" - fi - ;; - *) continue ;; - esac - case " $deplibs " in - *" $path "*) ;; - *) deplibs="$deplibs $path" ;; - esac - done - fi # link_all_deplibs != no - fi # linkmode = lib - done # for deplib in $libs - if test $pass = dlpreopen; then - # Link the dlpreopened libraries before other libraries - for deplib in $save_deplibs; do - deplibs="$deplib $deplibs" - done - fi - if test $pass != dlopen; then - test $pass != scan && dependency_libs="$newdependency_libs" - if test $pass != conv; then - # Make sure lib_search_path contains only unique directories. - lib_search_path= - for dir in $newlib_search_path; do - case "$lib_search_path " in - *" $dir "*) ;; - *) lib_search_path="$lib_search_path $dir" ;; - esac - done - newlib_search_path= - fi - - if test "$linkmode,$pass" != "prog,link"; then - vars="deplibs" - else - vars="compile_deplibs finalize_deplibs" - fi - for var in $vars dependency_libs; do - # Add libraries to $var in reverse order - eval tmp_libs=\"\$$var\" - new_libs= - for deplib in $tmp_libs; do - case $deplib in - -L*) new_libs="$deplib $new_libs" ;; - *) - case " $specialdeplibs " in - *" $deplib "*) new_libs="$deplib $new_libs" ;; - *) - case " $new_libs " in - *" $deplib "*) ;; - *) new_libs="$deplib $new_libs" ;; - esac - ;; - esac - ;; - esac - done - tmp_libs= - for deplib in $new_libs; do - case $deplib in - -L*) - case " $tmp_libs " in - *" $deplib "*) ;; - *) tmp_libs="$tmp_libs $deplib" ;; - esac - ;; - *) tmp_libs="$tmp_libs $deplib" ;; - esac - done - eval $var=\"$tmp_libs\" - done # for var - fi - if test "$pass" = "conv" && - { test "$linkmode" = "lib" || test "$linkmode" = "prog"; }; then - libs="$deplibs" # reset libs - deplibs= - fi - done # for pass - if test $linkmode = prog; then - dlfiles="$newdlfiles" - dlprefiles="$newdlprefiles" - fi - - case $linkmode in - oldlib) - if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then - $echo "$modename: warning: \`-dlopen' is ignored for archives" 1>&2 - fi - - if test -n "$rpath"; then - $echo "$modename: warning: \`-rpath' is ignored for archives" 1>&2 - fi - - if test -n "$xrpath"; then - $echo "$modename: warning: \`-R' is ignored for archives" 1>&2 - fi - - if test -n "$vinfo"; then - $echo "$modename: warning: \`-version-info' is ignored for archives" 1>&2 - fi - - if test -n "$release"; then - $echo "$modename: warning: \`-release' is ignored for archives" 1>&2 - fi - - if test -n "$export_symbols" || test -n "$export_symbols_regex"; then - $echo "$modename: warning: \`-export-symbols' is ignored for archives" 1>&2 - fi - - # Now set the variables for building old libraries. - build_libtool_libs=no - oldlibs="$output" - objs="$objs$old_deplibs" - ;; - - lib) - # Make sure we only generate libraries of the form `libNAME.la'. - case $outputname in - lib*) - name=`$echo "X$outputname" | $Xsed -e 's/\.la$//' -e 's/^lib//'` - eval libname=\"$libname_spec\" - ;; - *) - if test "$module" = no; then - $echo "$modename: libtool library \`$output' must begin with \`lib'" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - if test "$need_lib_prefix" != no; then - # Add the "lib" prefix for modules if required - name=`$echo "X$outputname" | $Xsed -e 's/\.la$//'` - eval libname=\"$libname_spec\" - else - libname=`$echo "X$outputname" | $Xsed -e 's/\.la$//'` - fi - ;; - esac - - if test -n "$objs"; then - if test "$deplibs_check_method" != pass_all; then - $echo "$modename: cannot build libtool library \`$output' from non-libtool objects on this host:$objs" 2>&1 - exit 1 - else - echo - echo "*** Warning: Linking the shared library $output against the non-libtool" - echo "*** objects $objs is not portable!" - libobjs="$libobjs $objs" - fi - fi - - if test "$dlself" != no; then - $echo "$modename: warning: \`-dlopen self' is ignored for libtool libraries" 1>&2 - fi - - set dummy $rpath - if test $# -gt 2; then - $echo "$modename: warning: ignoring multiple \`-rpath's for a libtool library" 1>&2 - fi - install_libdir="$2" - - oldlibs= - if test -z "$rpath"; then - if test "$build_libtool_libs" = yes; then - # Building a libtool convenience library. - libext=al - oldlibs="$output_objdir/$libname.$libext $oldlibs" - build_libtool_libs=convenience - build_old_libs=yes - fi - - if test -n "$vinfo"; then - $echo "$modename: warning: \`-version-info' is ignored for convenience libraries" 1>&2 - fi - - if test -n "$release"; then - $echo "$modename: warning: \`-release' is ignored for convenience libraries" 1>&2 - fi - else - - # Parse the version information argument. - IFS="${IFS= }"; save_ifs="$IFS"; IFS=':' - set dummy $vinfo 0 0 0 - IFS="$save_ifs" - - if test -n "$8"; then - $echo "$modename: too many parameters to \`-version-info'" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - current="$2" - revision="$3" - age="$4" - - # Check that each of the things are valid numbers. - case $current in - 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;; - *) - $echo "$modename: CURRENT \`$current' is not a nonnegative integer" 1>&2 - $echo "$modename: \`$vinfo' is not valid version information" 1>&2 - exit 1 - ;; - esac - - case $revision in - 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;; - *) - $echo "$modename: REVISION \`$revision' is not a nonnegative integer" 1>&2 - $echo "$modename: \`$vinfo' is not valid version information" 1>&2 - exit 1 - ;; - esac - - case $age in - 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;; - *) - $echo "$modename: AGE \`$age' is not a nonnegative integer" 1>&2 - $echo "$modename: \`$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 - exit 1 - fi - - # Calculate the version variables. - major= - versuffix= - verstring= - case $version_type in - none) ;; - - darwin) - # Like Linux, but with the current version available in - # verstring for coding it into the library header - major=.`expr $current - $age` - versuffix="$major.$age.$revision" - # Darwin ld doesn't like 0 for these options... - minor_current=`expr $current + 1` - verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" - ;; - - freebsd-aout) - major=".$current" - versuffix=".$current.$revision"; - ;; - - freebsd-elf) - major=".$current" - versuffix=".$current"; - ;; - - irix) - major=`expr $current - $age + 1` - verstring="sgi$major.$revision" - - # Add in all the interfaces that we are compatible with. - loop=$revision - while test $loop != 0; do - iface=`expr $revision - $loop` - loop=`expr $loop - 1` - verstring="sgi$major.$iface:$verstring" - done - - # Before this point, $major must not contain `.'. - major=.$major - versuffix="$major.$revision" - ;; - - linux) - major=.`expr $current - $age` - versuffix="$major.$age.$revision" - ;; - - osf) - major=`expr $current - $age` - versuffix=".$current.$age.$revision" - verstring="$current.$age.$revision" - - # Add in all the interfaces that we are compatible with. - loop=$age - while test $loop != 0; do - iface=`expr $current - $loop` - loop=`expr $loop - 1` - verstring="$verstring:${iface}.0" - done - - # Make executables depend on our current version. - verstring="$verstring:${current}.0" - ;; - - sunos) - major=".$current" - versuffix=".$current.$revision" - ;; - - windows) - # Use '-' rather than '.', since we only want one - # extension on DOS 8.3 filesystems. - major=`expr $current - $age` - versuffix="-$major" - ;; - - *) - $echo "$modename: unknown library version type \`$version_type'" 1>&2 - echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2 - exit 1 - ;; - esac - - # Clear the version info if we defaulted, and they specified a release. - if test -z "$vinfo" && test -n "$release"; then - major= - verstring="0.0" - if test "$need_version" = no; then - versuffix= - else - versuffix=".0.0" - fi - fi - - # Remove version info from name if versioning should be avoided - if test "$avoid_version" = yes && test "$need_version" = no; then - major= - versuffix= - verstring="" - fi - - # 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 - build_libtool_libs=no - build_old_libs=yes - fi - else - # Don't allow undefined symbols. - allow_undefined_flag="$no_undefined_flag" - fi - fi - - if test "$mode" != relink; then - # Remove our outputs. - $show "${rm}r $output_objdir/$outputname $output_objdir/$libname.* $output_objdir/${libname}${release}.*" - $run ${rm}r $output_objdir/$outputname $output_objdir/$libname.* $output_objdir/${libname}${release}.* - fi - - # Now set the variables for building old libraries. - if test "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; then - oldlibs="$oldlibs $output_objdir/$libname.$libext" - - # Transform .lo files to .o files. - oldobjs="$objs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e "$lo2o" | $NL2SP` - fi - - # Eliminate all temporary directories. - for path in $notinst_path; do - lib_search_path=`echo "$lib_search_path " | sed -e 's% $path % %g'` - deplibs=`echo "$deplibs " | sed -e 's% -L$path % %g'` - dependency_libs=`echo "$dependency_libs " | sed -e 's% -L$path % %g'` - done - - if test -n "$xrpath"; then - # If the user specified any rpath flags, then add them. - temp_xrpath= - for libdir in $xrpath; do - temp_xrpath="$temp_xrpath -R$libdir" - case "$finalize_rpath " in - *" $libdir "*) ;; - *) finalize_rpath="$finalize_rpath $libdir" ;; - esac - done - if test $hardcode_into_libs != yes || test $build_old_libs = yes; then - dependency_libs="$temp_xrpath $dependency_libs" - fi - fi - - # Make sure dlfiles contains only unique files that won't be dlpreopened - old_dlfiles="$dlfiles" - dlfiles= - for lib in $old_dlfiles; do - case " $dlprefiles $dlfiles " in - *" $lib "*) ;; - *) dlfiles="$dlfiles $lib" ;; - esac - done - - # Make sure dlprefiles contains only unique files - old_dlprefiles="$dlprefiles" - dlprefiles= - for lib in $old_dlprefiles; do - case "$dlprefiles " in - *" $lib "*) ;; - *) dlprefiles="$dlprefiles $lib" ;; - esac - done - - if test "$build_libtool_libs" = yes; then - if test -n "$rpath"; then - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos*) - # these systems don't actually have a c library (as such)! - ;; - *-*-rhapsody* | *-*-darwin1.[012]) - # Rhapsody C library is in the System framework - deplibs="$deplibs -framework System" - ;; - *-*-netbsd*) - # Don't link with libc until the a.out ld.so is fixed. - ;; - *) - # Add libc to deplibs on all other systems if necessary. - if test $build_libtool_need_lc = "yes"; then - deplibs="$deplibs -lc" - fi - ;; - esac - fi - - # Transform deplibs into only deplibs that can be linked in shared. - name_save=$name - libname_save=$libname - release_save=$release - versuffix_save=$versuffix - major_save=$major - # I'm not sure if I'm treating the release correctly. I think - # release should show up in the -l (ie -lgmp5) so we don't want to - # add it in twice. Is that correct? - release="" - versuffix="" - major="" - newdeplibs= - droppeddeps=no - case $deplibs_check_method in - pass_all) - # Don't check for shared/static. Everything works. - # This might be a little naive. We might want to check - # whether the library exists or not. But this is on - # osf3 & osf4 and I'm not really sure... Just - # implementing what was already the behaviour. - newdeplibs=$deplibs - ;; - test_compile) - # This code stresses the "libraries are programs" paradigm to its - # limits. Maybe even breaks it. We compile a program, linking it - # against the deplibs as a proxy for the library. Then we can check - # whether they linked in statically or dynamically with ldd. - $rm conftest.c - cat > conftest.c </dev/null` - for potent_lib in $potential_libs; do - # Follow soft links. - if ls -lLd "$potent_lib" 2>/dev/null \ - | grep " -> " >/dev/null; then - continue - fi - # The statement above tries to avoid entering an - # endless loop below, in case of cyclic links. - # We might still enter an endless loop, since a link - # loop can be closed while we follow links, - # but so what? - potlib="$potent_lib" - while test -h "$potlib" 2>/dev/null; do - potliblink=`ls -ld $potlib | sed 's/.* -> //'` - case $potliblink in - [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";; - *) potlib=`$echo "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";; - esac - done - if eval $file_magic_cmd \"\$potlib\" 2>/dev/null \ - | sed 10q \ - | egrep "$file_magic_regex" > /dev/null; then - newdeplibs="$newdeplibs $a_deplib" - a_deplib="" - break 2 - fi - done - done - if test -n "$a_deplib" ; then - droppeddeps=yes - echo - echo "*** Warning: This library needs some functionality provided by $a_deplib." - echo "*** I have the capability to make that library automatically link in when" - echo "*** you link to this library. But I can only do this if you have a" - echo "*** shared version of the library, which you do not appear to have." - fi - else - # Add a -L argument. - newdeplibs="$newdeplibs $a_deplib" - fi - done # Gone through all deplibs. - ;; - match_pattern*) - set dummy $deplibs_check_method - match_pattern_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"` - for a_deplib in $deplibs; do - name="`expr $a_deplib : '-l\(.*\)'`" - # If $name is empty we are operating on a -L argument. - if test -n "$name" && test "$name" != "0"; then - libname=`eval \\$echo \"$libname_spec\"` - for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do - potential_libs=`ls $i/$libname[.-]* 2>/dev/null` - for potent_lib in $potential_libs; do - if eval echo \"$potent_lib\" 2>/dev/null \ - | sed 10q \ - | egrep "$match_pattern_regex" > /dev/null; then - newdeplibs="$newdeplibs $a_deplib" - a_deplib="" - break 2 - fi - done - done - if test -n "$a_deplib" ; then - droppeddeps=yes - echo - echo "*** Warning: This library needs some functionality provided by $a_deplib." - echo "*** I have the capability to make that library automatically link in when" - echo "*** you link to this library. But I can only do this if you have a" - echo "*** shared version of the library, which you do not appear to have." - fi - else - # Add a -L argument. - newdeplibs="$newdeplibs $a_deplib" - fi - done # Gone through all deplibs. - ;; - none | unknown | *) - newdeplibs="" - if $echo "X $deplibs" | $Xsed -e 's/ -lc$//' \ - -e 's/ -[LR][^ ]*//g' -e 's/[ ]//g' | - grep . >/dev/null; then - echo - if test "X$deplibs_check_method" = "Xnone"; then - echo "*** Warning: inter-library dependencies are not supported in this platform." - else - echo "*** Warning: inter-library dependencies are not known to be supported." - fi - echo "*** All declared inter-library dependencies are being dropped." - droppeddeps=yes - fi - ;; - esac - versuffix=$versuffix_save - major=$major_save - release=$release_save - libname=$libname_save - name=$name_save - - case $host in - *-*-rhapsody* | *-*-darwin1.[012]) - # On Rhapsody replace the C library is the System framework - newdeplibs=`$echo "X $newdeplibs" | $Xsed -e 's/ -lc / -framework System /'` - ;; - esac - - if test "$droppeddeps" = yes; then - if test "$module" = yes; then - echo - echo "*** Warning: libtool could not satisfy all declared inter-library" - echo "*** dependencies of module $libname. Therefore, libtool will create" - echo "*** a static module, that should work as long as the dlopening" - echo "*** application is linked with the -dlopen flag." - if test -z "$global_symbol_pipe"; then - echo - echo "*** However, this would only work if libtool was able to extract symbol" - echo "*** lists from a program, using \`nm' or equivalent, but libtool could" - echo "*** not find such a program. So, this module is probably useless." - echo "*** \`nm' from GNU binutils and a full rebuild may help." - fi - if test "$build_old_libs" = no; then - oldlibs="$output_objdir/$libname.$libext" - build_libtool_libs=module - build_old_libs=yes - else - build_libtool_libs=no - fi - else - echo "*** The inter-library dependencies that have been dropped here will be" - echo "*** automatically added whenever a program is linked with this library" - echo "*** or is declared to -dlopen it." - - if test $allow_undefined = no; then - echo - echo "*** Since this library must not contain undefined symbols," - echo "*** because either the platform does not support them or" - echo "*** it was explicitly requested with -no-undefined," - echo "*** libtool will only create a static version of it." - if test "$build_old_libs" = no; then - oldlibs="$output_objdir/$libname.$libext" - build_libtool_libs=module - build_old_libs=yes - else - build_libtool_libs=no - fi - fi - fi - fi - # Done checking deplibs! - deplibs=$newdeplibs - fi - - # All the library-specific variables (install_libdir is set above). - library_names= - old_library= - dlname= - - # Test again, we may have decided not to build it any more - if test "$build_libtool_libs" = yes; then - if test $hardcode_into_libs = yes; then - # Hardcode the library paths - hardcode_libdirs= - dep_rpath= - rpath="$finalize_rpath" - test "$mode" != relink && rpath="$compile_rpath$rpath" - for libdir in $rpath; do - if test -n "$hardcode_libdir_flag_spec"; then - if test -n "$hardcode_libdir_separator"; then - if test -z "$hardcode_libdirs"; then - hardcode_libdirs="$libdir" - else - # Just accumulate the unique libdirs. - case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in - *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) - ;; - *) - hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" - ;; - esac - fi - else - eval flag=\"$hardcode_libdir_flag_spec\" - dep_rpath="$dep_rpath $flag" - fi - elif test -n "$runpath_var"; then - case "$perm_rpath " in - *" $libdir "*) ;; - *) perm_rpath="$perm_rpath $libdir" ;; - esac - fi - done - # Substitute the hardcoded libdirs into the rpath. - if test -n "$hardcode_libdir_separator" && - test -n "$hardcode_libdirs"; then - libdir="$hardcode_libdirs" - eval dep_rpath=\"$hardcode_libdir_flag_spec\" - fi - if test -n "$runpath_var" && test -n "$perm_rpath"; then - # We should set the runpath_var. - rpath= - for dir in $perm_rpath; do - rpath="$rpath$dir:" - done - eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var" - fi - test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs" - fi - - shlibpath="$finalize_shlibpath" - test "$mode" != relink && shlibpath="$compile_shlibpath$shlibpath" - if test -n "$shlibpath"; then - eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var" - fi - - # Get the real and link names of the library. - eval library_names=\"$library_names_spec\" - set dummy $library_names - realname="$2" - shift; shift - - if test -n "$soname_spec"; then - eval soname=\"$soname_spec\" - else - soname="$realname" - fi - test -z "$dlname" && dlname=$soname - - lib="$output_objdir/$realname" - for link - do - linknames="$linknames $link" - done - - # Ensure that we have .o objects for linkers which dislike .lo - # (e.g. aix) in case we are running --disable-static - for obj in $libobjs; do - xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'` - if test "X$xdir" = "X$obj"; then - xdir="." - else - xdir="$xdir" - fi - baseobj=`$echo "X$obj" | $Xsed -e 's%^.*/%%'` - oldobj=`$echo "X$baseobj" | $Xsed -e "$lo2o"` - if test ! -f $xdir/$oldobj; then - $show "(cd $xdir && ${LN_S} $baseobj $oldobj)" - $run eval '(cd $xdir && ${LN_S} $baseobj $oldobj)' || exit $? - fi - done - - # Use standard objects if they are pic - test -z "$pic_flag" && libobjs=`$echo "X$libobjs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` - - # Prepare the list of exported symbols - if test -z "$export_symbols"; then - if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then - $show "generating symbol list for \`$libname.la'" - export_symbols="$output_objdir/$libname.exp" - $run $rm $export_symbols - eval cmds=\"$export_symbols_cmds\" - IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - if test -n "$export_symbols_regex"; then - $show "egrep -e \"$export_symbols_regex\" \"$export_symbols\" > \"${export_symbols}T\"" - $run eval 'egrep -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' - $show "$mv \"${export_symbols}T\" \"$export_symbols\"" - $run eval '$mv "${export_symbols}T" "$export_symbols"' - fi - fi - fi - - if test -n "$export_symbols" && test -n "$include_expsyms"; then - $run eval '$echo "X$include_expsyms" | $SP2NL >> "$export_symbols"' - fi - - if test -n "$convenience"; then - if test -n "$whole_archive_flag_spec"; then - eval libobjs=\"\$libobjs $whole_archive_flag_spec\" - else - gentop="$output_objdir/${outputname}x" - $show "${rm}r $gentop" - $run ${rm}r "$gentop" - $show "mkdir $gentop" - $run mkdir "$gentop" - status=$? - if test $status -ne 0 && test ! -d "$gentop"; then - exit $status - fi - generated="$generated $gentop" - - for xlib in $convenience; do - # Extract the objects. - case $xlib in - [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; - *) xabs=`pwd`"/$xlib" ;; - esac - xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` - xdir="$gentop/$xlib" - - $show "${rm}r $xdir" - $run ${rm}r "$xdir" - $show "mkdir $xdir" - $run mkdir "$xdir" - status=$? - if test $status -ne 0 && test ! -d "$xdir"; then - exit $status - fi - $show "(cd $xdir && $AR x $xabs)" - $run eval "(cd \$xdir && $AR x \$xabs)" || exit $? - - libobjs="$libobjs "`find $xdir -name \*.o -print -o -name \*.lo -print | $NL2SP` - done - fi - fi - - if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then - eval flag=\"$thread_safe_flag_spec\" - linker_flags="$linker_flags $flag" - fi - - # Make a backup of the uninstalled library when relinking - if test "$mode" = relink; then - $run eval '(cd $output_objdir && $rm ${realname}U && $mv $realname ${realname}U)' || exit $? - fi - - # Do each of the archive commands. - if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then - eval cmds=\"$archive_expsym_cmds\" - else - eval cmds=\"$archive_cmds\" - fi - IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - - # Restore the uninstalled library and exit - if test "$mode" = relink; then - $run eval '(cd $output_objdir && $rm ${realname}T && $mv $realname ${realname}T && $mv "$realname"U $realname)' || exit $? - exit 0 - fi - - # Create links to the real library. - for linkname in $linknames; do - if test "$realname" != "$linkname"; then - $show "(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)" - $run eval '(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)' || exit $? - fi - done - - # If -module or -export-dynamic was specified, set the dlname. - if test "$module" = yes || test "$export_dynamic" = yes; then - # On all known operating systems, these are identical. - dlname="$soname" - fi - fi - ;; - - obj) - if test -n "$deplibs"; then - $echo "$modename: warning: \`-l' and \`-L' are ignored for objects" 1>&2 - fi - - if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then - $echo "$modename: warning: \`-dlopen' is ignored for objects" 1>&2 - fi - - if test -n "$rpath"; then - $echo "$modename: warning: \`-rpath' is ignored for objects" 1>&2 - fi - - if test -n "$xrpath"; then - $echo "$modename: warning: \`-R' is ignored for objects" 1>&2 - fi - - if test -n "$vinfo"; then - $echo "$modename: warning: \`-version-info' is ignored for objects" 1>&2 - fi - - if test -n "$release"; then - $echo "$modename: warning: \`-release' is ignored for objects" 1>&2 - fi - - case $output in - *.lo) - if test -n "$objs$old_deplibs"; then - $echo "$modename: cannot build library object \`$output' from non-libtool objects" 1>&2 - exit 1 - fi - libobj="$output" - obj=`$echo "X$output" | $Xsed -e "$lo2o"` - ;; - *) - libobj= - obj="$output" - ;; - esac - - # Delete the old objects. - $run $rm $obj $libobj - - # Objects from convenience libraries. This assumes - # single-version convenience libraries. Whenever we create - # different ones for PIC/non-PIC, this we'll have to duplicate - # the extraction. - reload_conv_objs= - gentop= - # reload_cmds runs $LD directly, so let us get rid of - # -Wl from whole_archive_flag_spec - wl= - - if test -n "$convenience"; then - if test -n "$whole_archive_flag_spec"; then - eval reload_conv_objs=\"\$reload_objs $whole_archive_flag_spec\" - else - gentop="$output_objdir/${obj}x" - $show "${rm}r $gentop" - $run ${rm}r "$gentop" - $show "mkdir $gentop" - $run mkdir "$gentop" - status=$? - if test $status -ne 0 && test ! -d "$gentop"; then - exit $status - fi - generated="$generated $gentop" - - for xlib in $convenience; do - # Extract the objects. - case $xlib in - [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; - *) xabs=`pwd`"/$xlib" ;; - esac - xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` - xdir="$gentop/$xlib" - - $show "${rm}r $xdir" - $run ${rm}r "$xdir" - $show "mkdir $xdir" - $run mkdir "$xdir" - status=$? - if test $status -ne 0 && test ! -d "$xdir"; then - exit $status - fi - $show "(cd $xdir && $AR x $xabs)" - $run eval "(cd \$xdir && $AR x \$xabs)" || exit $? - - reload_conv_objs="$reload_objs "`find $xdir -name \*.o -print -o -name \*.lo -print | $NL2SP` - done - fi - fi - - # Create the old-style object. - reload_objs="$objs$old_deplibs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test - - output="$obj" - eval cmds=\"$reload_cmds\" - IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - - # Exit if we aren't doing a library object file. - if test -z "$libobj"; then - if test -n "$gentop"; then - $show "${rm}r $gentop" - $run ${rm}r $gentop - fi - - exit 0 - fi - - if test "$build_libtool_libs" != yes; then - if test -n "$gentop"; then - $show "${rm}r $gentop" - $run ${rm}r $gentop - fi - - # 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 $? - exit 0 - fi - - if test -n "$pic_flag" || test "$pic_mode" != default; then - # Only do commands if we really have different PIC objects. - reload_objs="$libobjs $reload_conv_objs" - output="$libobj" - eval cmds=\"$reload_cmds\" - IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - else - # Just create a symlink. - $show $rm $libobj - $run $rm $libobj - xdir=`$echo "X$libobj" | $Xsed -e 's%/[^/]*$%%'` - if test "X$xdir" = "X$libobj"; then - xdir="." - else - xdir="$xdir" - fi - baseobj=`$echo "X$libobj" | $Xsed -e 's%^.*/%%'` - oldobj=`$echo "X$baseobj" | $Xsed -e "$lo2o"` - $show "(cd $xdir && $LN_S $oldobj $baseobj)" - $run eval '(cd $xdir && $LN_S $oldobj $baseobj)' || exit $? - fi - - if test -n "$gentop"; then - $show "${rm}r $gentop" - $run ${rm}r $gentop - fi - - exit 0 - ;; - - prog) - case $host in - *cygwin*) output=`echo $output | sed -e 's,.exe$,,;s,$,.exe,'` ;; - esac - if test -n "$vinfo"; then - $echo "$modename: warning: \`-version-info' is ignored for programs" 1>&2 - fi - - if test -n "$release"; then - $echo "$modename: warning: \`-release' is ignored for programs" 1>&2 - fi - - if test "$preload" = yes; then - if test "$dlopen_support" = unknown && test "$dlopen_self" = unknown && - test "$dlopen_self_static" = unknown; then - $echo "$modename: warning: \`AC_LIBTOOL_DLOPEN' not used. Assuming no dlopen support." - fi - fi - - case $host in - *-*-rhapsody* | *-*-darwin1.[012]) - # On Rhapsody replace the C library is the System framework - compile_deplibs=`$echo "X $compile_deplibs" | $Xsed -e 's/ -lc / -framework System /'` - finalize_deplibs=`$echo "X $finalize_deplibs" | $Xsed -e 's/ -lc / -framework System /'` - ;; - esac - - compile_command="$compile_command $compile_deplibs" - finalize_command="$finalize_command $finalize_deplibs" - - if test -n "$rpath$xrpath"; then - # If the user specified any rpath flags, then add them. - for libdir in $rpath $xrpath; do - # This is the magic to use -rpath. - case "$finalize_rpath " in - *" $libdir "*) ;; - *) finalize_rpath="$finalize_rpath $libdir" ;; - esac - done - fi - - # Now hardcode the library paths - rpath= - hardcode_libdirs= - for libdir in $compile_rpath $finalize_rpath; do - if test -n "$hardcode_libdir_flag_spec"; then - if test -n "$hardcode_libdir_separator"; then - if test -z "$hardcode_libdirs"; then - hardcode_libdirs="$libdir" - else - # Just accumulate the unique libdirs. - case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in - *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) - ;; - *) - hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" - ;; - esac - fi - else - eval flag=\"$hardcode_libdir_flag_spec\" - rpath="$rpath $flag" - fi - elif test -n "$runpath_var"; then - case "$perm_rpath " in - *" $libdir "*) ;; - *) perm_rpath="$perm_rpath $libdir" ;; - esac - fi - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) - case :$dllsearchpath: in - *":$libdir:"*) ;; - *) dllsearchpath="$dllsearchpath:$libdir";; - esac - ;; - esac - done - # Substitute the hardcoded libdirs into the rpath. - if test -n "$hardcode_libdir_separator" && - test -n "$hardcode_libdirs"; then - libdir="$hardcode_libdirs" - eval rpath=\" $hardcode_libdir_flag_spec\" - fi - compile_rpath="$rpath" - - rpath= - hardcode_libdirs= - for libdir in $finalize_rpath; do - if test -n "$hardcode_libdir_flag_spec"; then - if test -n "$hardcode_libdir_separator"; then - if test -z "$hardcode_libdirs"; then - hardcode_libdirs="$libdir" - else - # Just accumulate the unique libdirs. - case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in - *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) - ;; - *) - hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" - ;; - esac - fi - else - eval flag=\"$hardcode_libdir_flag_spec\" - rpath="$rpath $flag" - fi - elif test -n "$runpath_var"; then - case "$finalize_perm_rpath " in - *" $libdir "*) ;; - *) finalize_perm_rpath="$finalize_perm_rpath $libdir" ;; - esac - fi - done - # Substitute the hardcoded libdirs into the rpath. - if test -n "$hardcode_libdir_separator" && - test -n "$hardcode_libdirs"; then - libdir="$hardcode_libdirs" - eval rpath=\" $hardcode_libdir_flag_spec\" - fi - finalize_rpath="$rpath" - - if test -n "$libobjs" && test "$build_old_libs" = yes; then - # Transform all the library objects into standard objects. - compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` - finalize_command=`$echo "X$finalize_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` - fi - - dlsyms= - if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then - if test -n "$NM" && test -n "$global_symbol_pipe"; then - dlsyms="${outputname}S.c" - else - $echo "$modename: not configured to extract global symbols from dlpreopened files" 1>&2 - fi - fi - - if test -n "$dlsyms"; then - case $dlsyms in - "") ;; - *.c) - # Discover the nlist of each of the dlfiles. - nlist="$output_objdir/${outputname}.nm" - - $show "$rm $nlist ${nlist}S ${nlist}T" - $run $rm "$nlist" "${nlist}S" "${nlist}T" - - # Parse the name list into a source file. - $show "creating $output_objdir/$dlsyms" - - test -z "$run" && $echo > "$output_objdir/$dlsyms" "\ -/* $dlsyms - symbol resolution table for \`$outputname' dlsym emulation. */ -/* Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP */ - -#ifdef __cplusplus -extern \"C\" { -#endif - -/* Prevent the only kind of declaration conflicts we can make. */ -#define lt_preloaded_symbols some_other_symbol - -/* External symbol declarations for the compiler. */\ -" - - if test "$dlself" = yes; then - $show "generating symbol list for \`$output'" - - test -z "$run" && $echo ': @PROGRAM@ ' > "$nlist" - - # Add our own program objects to the symbol list. - progfiles=`$echo "X$objs$old_deplibs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` - for arg in $progfiles; do - $show "extracting global C symbols from \`$arg'" - $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'" - done - - if test -n "$exclude_expsyms"; then - $run eval 'egrep -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T' - $run eval '$mv "$nlist"T "$nlist"' - fi - - if test -n "$export_symbols_regex"; then - $run eval 'egrep -e "$export_symbols_regex" "$nlist" > "$nlist"T' - $run eval '$mv "$nlist"T "$nlist"' - fi - - # Prepare the list of exported symbols - if test -z "$export_symbols"; then - export_symbols="$output_objdir/$output.exp" - $run $rm $export_symbols - $run eval "sed -n -e '/^: @PROGRAM@$/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' - else - $run eval "sed -e 's/\([][.*^$]\)/\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$output.exp"' - $run eval 'grep -f "$output_objdir/$output.exp" < "$nlist" > "$nlist"T' - $run eval 'mv "$nlist"T "$nlist"' - fi - fi - - for arg in $dlprefiles; do - $show "extracting global C symbols from \`$arg'" - name=`echo "$arg" | sed -e 's%^.*/%%'` - $run eval 'echo ": $name " >> "$nlist"' - $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'" - done - - if test -z "$run"; then - # Make sure we have at least an empty file. - test -f "$nlist" || : > "$nlist" - - if test -n "$exclude_expsyms"; then - egrep -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T - $mv "$nlist"T "$nlist" - fi - - # Try sorting and uniquifying the output. - if grep -v "^: " < "$nlist" | sort +2 | uniq > "$nlist"S; then - : - else - grep -v "^: " < "$nlist" > "$nlist"S - fi - - if test -f "$nlist"S; then - eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$dlsyms"' - else - echo '/* NONE */' >> "$output_objdir/$dlsyms" - fi - - $echo >> "$output_objdir/$dlsyms" "\ - -#undef lt_preloaded_symbols - -#if defined (__STDC__) && __STDC__ -# define lt_ptr_t void * -#else -# define lt_ptr_t char * -# define const -#endif - -/* The mapping between symbol names and symbols. */ -const struct { - const char *name; - lt_ptr_t address; -} -lt_preloaded_symbols[] = -{\ -" - - sed -n -e 's/^: \([^ ]*\) $/ {\"\1\", (lt_ptr_t) 0},/p' \ - -e 's/^. \([^ ]*\) \([^ ]*\)$/ {"\2", (lt_ptr_t) \&\2},/p' \ - < "$nlist" >> "$output_objdir/$dlsyms" - - $echo >> "$output_objdir/$dlsyms" "\ - {0, (lt_ptr_t) 0} -}; - -/* This works around a problem in FreeBSD linker */ -#ifdef FREEBSD_WORKAROUND -static const void *lt_preloaded_setup() { - return lt_preloaded_symbols; -} -#endif - -#ifdef __cplusplus -} -#endif\ -" - fi - - pic_flag_for_symtable= - case $host in - # compiling the symbol table file with pic_flag works around - # a FreeBSD bug that causes programs to crash when -lm is - # linked before any other PIC object. But we must not use - # pic_flag when linking with -static. The problem exists in - # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1. - *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*) - case "$compile_command " in - *" -static "*) ;; - *) pic_flag_for_symtable=" $pic_flag -DPIC -DFREEBSD_WORKAROUND";; - esac;; - *-*-hpux*) - case "$compile_command " in - *" -static "*) ;; - *) pic_flag_for_symtable=" $pic_flag -DPIC";; - esac - esac - - # Now compile the dynamic symbol file. - $show "(cd $output_objdir && $CC -c$no_builtin_flag$pic_flag_for_symtable \"$dlsyms\")" - $run eval '(cd $output_objdir && $CC -c$no_builtin_flag$pic_flag_for_symtable "$dlsyms")' || exit $? - - # Clean up the generated files. - $show "$rm $output_objdir/$dlsyms $nlist ${nlist}S ${nlist}T" - $run $rm "$output_objdir/$dlsyms" "$nlist" "${nlist}S" "${nlist}T" - - # Transform the symbol file into the correct name. - compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"` - finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"` - ;; - *) - $echo "$modename: unknown suffix for \`$dlsyms'" 1>&2 - exit 1 - ;; - esac - else - # We keep going just in case the user didn't refer to - # lt_preloaded_symbols. The linker will fail if global_symbol_pipe - # really was required. - - # Nullify the symbol file. - compile_command=`$echo "X$compile_command" | $Xsed -e "s% @SYMFILE@%%"` - finalize_command=`$echo "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"` - fi - - if test $need_relink = no || test "$build_libtool_libs" != yes; then - # Replace the output file specification. - compile_command=`$echo "X$compile_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'` - link_command="$compile_command$compile_rpath" - - # We have no uninstalled library dependencies, so finalize right now. - $show "$link_command" - $run eval "$link_command" - status=$? - - # Delete the generated files. - if test -n "$dlsyms"; then - $show "$rm $output_objdir/${outputname}S.${objext}" - $run $rm "$output_objdir/${outputname}S.${objext}" - fi - - exit $status - fi - - if test -n "$shlibpath_var"; then - # We should set the shlibpath_var - rpath= - for dir in $temp_rpath; do - case $dir in - [\\/]* | [A-Za-z]:[\\/]*) - # Absolute path. - rpath="$rpath$dir:" - ;; - *) - # Relative path: add a thisdir entry. - rpath="$rpath\$thisdir/$dir:" - ;; - esac - done - temp_rpath="$rpath" - fi - - if test -n "$compile_shlibpath$finalize_shlibpath"; then - compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command" - fi - if test -n "$finalize_shlibpath"; then - finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command" - fi - - compile_var= - finalize_var= - if test -n "$runpath_var"; then - if test -n "$perm_rpath"; then - # We should set the runpath_var. - rpath= - for dir in $perm_rpath; do - rpath="$rpath$dir:" - done - compile_var="$runpath_var=\"$rpath\$$runpath_var\" " - fi - if test -n "$finalize_perm_rpath"; then - # We should set the runpath_var. - rpath= - for dir in $finalize_perm_rpath; do - rpath="$rpath$dir:" - done - finalize_var="$runpath_var=\"$rpath\$$runpath_var\" " - fi - fi - - if test "$no_install" = yes; then - # We don't need to create a wrapper script. - link_command="$compile_var$compile_command$compile_rpath" - # Replace the output file specification. - link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'` - # Delete the old output file. - $run $rm $output - # Link the executable and exit - $show "$link_command" - $run eval "$link_command" || exit $? - exit 0 - fi - - if test "$hardcode_action" = relink; then - # Fast installation is not supported - link_command="$compile_var$compile_command$compile_rpath" - relink_command="$finalize_var$finalize_command$finalize_rpath" - - $echo "$modename: warning: this platform does not like uninstalled shared libraries" 1>&2 - $echo "$modename: \`$output' will be relinked during installation" 1>&2 - else - if test "$fast_install" != no; then - link_command="$finalize_var$compile_command$finalize_rpath" - if test "$fast_install" = yes; then - relink_command=`$echo "X$compile_var$compile_command$compile_rpath" | $Xsed -e 's%@OUTPUT@%\$progdir/\$file%g'` - else - # fast_install is set to needless - relink_command= - fi - else - link_command="$compile_var$compile_command$compile_rpath" - relink_command="$finalize_var$finalize_command$finalize_rpath" - fi - fi - - # Replace the output file specification. - link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'` - - # Delete the old output files. - $run $rm $output $output_objdir/$outputname $output_objdir/lt-$outputname - - $show "$link_command" - $run eval "$link_command" || exit $? - - # Now create the wrapper script. - $show "creating $output" - - # Quote the relink command for shipping. - if test -n "$relink_command"; then - # Preserve any variables that may affect compiler behavior - for var in $variables_saved_for_relink; do - if eval test -z \"\${$var+set}\"; then - relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command" - elif eval var_value=\$$var; test -z "$var_value"; then - relink_command="$var=; export $var; $relink_command" - else - var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"` - relink_command="$var=\"$var_value\"; export $var; $relink_command" - fi - done - relink_command="cd `pwd`; $relink_command" - relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"` - fi - - # Quote $echo for shipping. - if test "X$echo" = "X$SHELL $0 --fallback-echo"; then - case $0 in - [\\/]* | [A-Za-z]:[\\/]*) qecho="$SHELL $0 --fallback-echo";; - *) qecho="$SHELL `pwd`/$0 --fallback-echo";; - esac - qecho=`$echo "X$qecho" | $Xsed -e "$sed_quote_subst"` - else - qecho=`$echo "X$echo" | $Xsed -e "$sed_quote_subst"` - fi - - # Only actually do things if our run command is non-null. - if test -z "$run"; then - # win32 will think the script is a binary if it has - # a .exe suffix, so we strip it off here. - case $output in - *.exe) output=`echo $output|sed 's,.exe$,,'` ;; - esac - # test for cygwin because mv fails w/o .exe extensions - case $host in - *cygwin*) exeext=.exe ;; - *) exeext= ;; - esac - $rm $output - trap "$rm $output; exit 1" 1 2 15 - - $echo > $output "\ -#! $SHELL - -# $output - temporary wrapper script for $objdir/$outputname -# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP -# -# The $output program cannot be directly executed until all the libtool -# libraries that it depends on are installed. -# -# This wrapper script should never be moved out of the build directory. -# If it is, it will not operate correctly. - -# Sed substitution that helps us do robust quoting. It backslashifies -# metacharacters that are still active within double-quoted strings. -Xsed='sed -e 1s/^X//' -sed_quote_subst='$sed_quote_subst' - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -if test \"\${CDPATH+set}\" = set; then CDPATH=:; export CDPATH; fi - -relink_command=\"$relink_command\" - -# This environment variable determines our operation mode. -if test \"\$libtool_install_magic\" = \"$magic\"; then - # install mode needs the following variable: - notinst_deplibs='$notinst_deplibs' -else - # When we are sourced in execute mode, \$file and \$echo are already set. - if test \"\$libtool_execute_magic\" != \"$magic\"; then - echo=\"$qecho\" - file=\"\$0\" - # Make sure echo works. - if test \"X\$1\" = X--no-reexec; then - # Discard the --no-reexec flag, and continue. - shift - elif test \"X\`(\$echo '\t') 2>/dev/null\`\" = 'X\t'; then - # Yippee, \$echo works! - : - else - # Restart under the correct shell, and then maybe \$echo will work. - exec $SHELL \"\$0\" --no-reexec \${1+\"\$@\"} - fi - fi\ -" - $echo >> $output "\ - - # Find the directory that this script lives in. - thisdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*$%%'\` - test \"x\$thisdir\" = \"x\$file\" && thisdir=. - - # Follow symbolic links until we get to the real thisdir. - file=\`ls -ld \"\$file\" | sed -n 's/.*-> //p'\` - while test -n \"\$file\"; do - destdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\` - - # If there was a directory component, then change thisdir. - if test \"x\$destdir\" != \"x\$file\"; then - case \"\$destdir\" in - [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;; - *) thisdir=\"\$thisdir/\$destdir\" ;; - esac - fi - - file=\`\$echo \"X\$file\" | \$Xsed -e 's%^.*/%%'\` - file=\`ls -ld \"\$thisdir/\$file\" | sed -n 's/.*-> //p'\` - done - - # Try to get the absolute directory name. - absdir=\`cd \"\$thisdir\" && pwd\` - test -n \"\$absdir\" && thisdir=\"\$absdir\" -" - - if test "$fast_install" = yes; then - echo >> $output "\ - program=lt-'$outputname'$exeext - progdir=\"\$thisdir/$objdir\" - - if test ! -f \"\$progdir/\$program\" || \\ - { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | sed 1q\`; \\ - test \"X\$file\" != \"X\$progdir/\$program\"; }; then - - file=\"\$\$-\$program\" - - if test ! -d \"\$progdir\"; then - $mkdir \"\$progdir\" - else - $rm \"\$progdir/\$file\" - fi" - - echo >> $output "\ - - # relink executable if necessary - if test -n \"\$relink_command\"; then - if (eval \$relink_command); then : - else - $rm \"\$progdir/\$file\" - exit 1 - fi - fi - - $mv \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null || - { $rm \"\$progdir/\$program\"; - $mv \"\$progdir/\$file\" \"\$progdir/\$program\"; } - $rm \"\$progdir/\$file\" - fi" - else - echo >> $output "\ - program='$outputname' - progdir=\"\$thisdir/$objdir\" -" - fi - - echo >> $output "\ - - if test -f \"\$progdir/\$program\"; then" - - # Export our shlibpath_var if we have one. - if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then - $echo >> $output "\ - # Add our own library path to $shlibpath_var - $shlibpath_var=\"$temp_rpath\$$shlibpath_var\" - - # Some systems cannot cope with colon-terminated $shlibpath_var - # The second colon is a workaround for a bug in BeOS R4 sed - $shlibpath_var=\`\$echo \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\` - - export $shlibpath_var -" - fi - - # fixup the dll searchpath if we need to. - if test -n "$dllsearchpath"; then - $echo >> $output "\ - # Add the dll search path components to the executable PATH - PATH=$dllsearchpath:\$PATH -" - fi - - $echo >> $output "\ - if test \"\$libtool_execute_magic\" != \"$magic\"; then - # Run the actual program with our arguments. -" - case $host in - # win32 systems need to use the prog path for dll - # lookup to work - *-*-cygwin* | *-*-pw32*) - $echo >> $output "\ - exec \$progdir/\$program \${1+\"\$@\"} -" - ;; - - # Backslashes separate directories on plain windows - *-*-mingw | *-*-os2*) - $echo >> $output "\ - exec \$progdir\\\\\$program \${1+\"\$@\"} -" - ;; - - *) - $echo >> $output "\ - # Export the path to the program. - PATH=\"\$progdir:\$PATH\" - export PATH - - exec \$program \${1+\"\$@\"} -" - ;; - esac - $echo >> $output "\ - \$echo \"\$0: cannot exec \$program \${1+\"\$@\"}\" - exit 1 - fi - else - # 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 - exit 1 - fi -fi\ -" - chmod +x $output - fi - exit 0 - ;; - esac - - # See if we need to build an old-fashioned archive. - for oldlib in $oldlibs; do - - if test "$build_libtool_libs" = convenience; then - oldobjs="$libobjs_save" - addlibs="$convenience" - build_libtool_libs=no - else - if test "$build_libtool_libs" = module; then - oldobjs="$libobjs_save" - build_libtool_libs=no - else - oldobjs="$objs$old_deplibs "`$echo "X$libobjs_save" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP` - fi - addlibs="$old_convenience" - fi - - if test -n "$addlibs"; then - gentop="$output_objdir/${outputname}x" - $show "${rm}r $gentop" - $run ${rm}r "$gentop" - $show "mkdir $gentop" - $run mkdir "$gentop" - status=$? - if test $status -ne 0 && test ! -d "$gentop"; then - exit $status - fi - generated="$generated $gentop" - - # Add in members from convenience archives. - for xlib in $addlibs; do - # Extract the objects. - case $xlib in - [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; - *) xabs=`pwd`"/$xlib" ;; - esac - xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` - xdir="$gentop/$xlib" - - $show "${rm}r $xdir" - $run ${rm}r "$xdir" - $show "mkdir $xdir" - $run mkdir "$xdir" - status=$? - if test $status -ne 0 && test ! -d "$xdir"; then - exit $status - fi - $show "(cd $xdir && $AR x $xabs)" - $run eval "(cd \$xdir && $AR x \$xabs)" || exit $? - - oldobjs="$oldobjs "`find $xdir -name \*.${objext} -print -o -name \*.lo -print | $NL2SP` - done - fi - - # Do each command in the archive commands. - if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then - eval cmds=\"$old_archive_from_new_cmds\" - else - # Ensure that we have .o objects in place in case we decided - # not to build a shared library, and have fallen back to building - # static libs even though --disable-static was passed! - for oldobj in $oldobjs; do - if test ! -f $oldobj; then - xdir=`$echo "X$oldobj" | $Xsed -e 's%/[^/]*$%%'` - if test "X$xdir" = "X$oldobj"; then - xdir="." - else - xdir="$xdir" - fi - baseobj=`$echo "X$oldobj" | $Xsed -e 's%^.*/%%'` - obj=`$echo "X$baseobj" | $Xsed -e "$o2lo"` - $show "(cd $xdir && ${LN_S} $obj $baseobj)" - $run eval '(cd $xdir && ${LN_S} $obj $baseobj)' || exit $? - fi - done - - eval cmds=\"$old_archive_cmds\" - fi - IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - done - - if test -n "$generated"; then - $show "${rm}r$generated" - $run ${rm}r$generated - fi - - # Now create the libtool archive. - case $output in - *.la) - old_library= - test "$build_old_libs" = yes && old_library="$libname.$libext" - $show "creating $output" - - # Preserve any variables that may affect compiler behavior - for var in $variables_saved_for_relink; do - if eval test -z \"\${$var+set}\"; then - relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command" - elif eval var_value=\$$var; test -z "$var_value"; then - relink_command="$var=; export $var; $relink_command" - else - var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"` - relink_command="$var=\"$var_value\"; export $var; $relink_command" - fi - done - # Quote the link command for shipping. - relink_command="cd `pwd`; $SHELL $0 --mode=relink $libtool_args" - relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"` - - # Only create the output if not a dry run. - if test -z "$run"; then - for installed in no yes; do - if test "$installed" = yes; then - if test -z "$install_libdir"; then - break - fi - output="$output_objdir/$outputname"i - # Replace all uninstalled libtool libraries with the installed ones - newdependency_libs= - for deplib in $dependency_libs; do - case $deplib in - *.la) - name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'` - eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` - if test -z "$libdir"; then - $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2 - exit 1 - fi - newdependency_libs="$newdependency_libs $libdir/$name" - ;; - *) newdependency_libs="$newdependency_libs $deplib" ;; - esac - done - dependency_libs="$newdependency_libs" - newdlfiles= - for lib in $dlfiles; do - name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` - eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $lib` - if test -z "$libdir"; then - $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 - exit 1 - fi - newdlfiles="$newdlfiles $libdir/$name" - done - dlfiles="$newdlfiles" - newdlprefiles= - for lib in $dlprefiles; do - name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` - eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $lib` - if test -z "$libdir"; then - $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 - exit 1 - fi - newdlprefiles="$newdlprefiles $libdir/$name" - done - dlprefiles="$newdlprefiles" - fi - $rm $output - # place dlname in correct position for cygwin - tdlname=$dlname - case $host,$output,$installed,$module,$dlname in - *cygwin*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;; - esac - $echo > $output "\ -# $outputname - a libtool library file -# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP -# -# Please DO NOT delete this file! -# It is necessary for linking the library. - -# The name that we can dlopen(3). -dlname='$tdlname' - -# Names of this library. -library_names='$library_names' - -# The name of the static archive. -old_library='$old_library' - -# Libraries that this one depends upon. -dependency_libs='$dependency_libs' - -# Version information for $libname. -current=$current -age=$age -revision=$revision - -# Is this an already installed library? -installed=$installed - -# Files to dlopen/dlpreopen -dlopen='$dlfiles' -dlpreopen='$dlprefiles' - -# Directory that this library needs to be installed in: -libdir='$install_libdir'" - if test "$installed" = no && test $need_relink = yes; then - $echo >> $output "\ -relink_command=\"$relink_command\"" - fi - done - fi - - # Do a symbolic link so that the libtool archive can be found in - # LD_LIBRARY_PATH before the program is installed. - $show "(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)" - $run eval '(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)' || exit $? - ;; - esac - exit 0 - ;; - - # libtool install mode - install) - modename="$modename: install" - - # There may be an optional sh(1) argument at the beginning of - # install_prog (especially on Windows NT). - if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh || - # Allow the use of GNU shtool's install command. - $echo "X$nonopt" | $Xsed | grep shtool > /dev/null; then - # Aesthetically quote it. - arg=`$echo "X$nonopt" | $Xsed -e "$sed_quote_subst"` - case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) - arg="\"$arg\"" - ;; - esac - install_prog="$arg " - arg="$1" - shift - else - install_prog= - arg="$nonopt" - fi - - # The real first argument should be the name of the installation program. - # Aesthetically quote it. - arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` - case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) - arg="\"$arg\"" - ;; - esac - install_prog="$install_prog$arg" - - # We need to accept at least all the BSD install flags. - dest= - files= - opts= - prev= - install_type= - isdir=no - stripme= - for arg - do - if test -n "$dest"; then - files="$files $dest" - dest="$arg" - continue - fi - - case $arg in - -d) isdir=yes ;; - -f) prev="-f" ;; - -g) prev="-g" ;; - -m) prev="-m" ;; - -o) prev="-o" ;; - -s) - stripme=" -s" - continue - ;; - -*) ;; - - *) - # If the previous option needed an argument, then skip it. - if test -n "$prev"; then - prev= - else - dest="$arg" - continue - fi - ;; - esac - - # Aesthetically quote the argument. - arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` - case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) - arg="\"$arg\"" - ;; - esac - install_prog="$install_prog $arg" - done - - if test -z "$install_prog"; then - $echo "$modename: 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 "$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 - else - $echo "$modename: you must specify a destination" 1>&2 - fi - $echo "$help" 1>&2 - exit 1 - fi - - # Strip any trailing slash from the destination. - dest=`$echo "X$dest" | $Xsed -e 's%/$%%'` - - # Check to see that the destination is a directory. - test -d "$dest" && isdir=yes - if test "$isdir" = yes; then - destdir="$dest" - destname= - else - destdir=`$echo "X$dest" | $Xsed -e 's%/[^/]*$%%'` - test "X$destdir" = "X$dest" && destdir=. - destname=`$echo "X$dest" | $Xsed -e 's%^.*/%%'` - - # 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 "$help" 1>&2 - exit 1 - fi - fi - case $destdir in - [\\/]* | [A-Za-z]:[\\/]*) ;; - *) - for file in $files; do - case $file in - *.lo) ;; - *) - $echo "$modename: \`$destdir' must be an absolute directory name" 1>&2 - $echo "$help" 1>&2 - exit 1 - ;; - esac - done - ;; - esac - - # This variable tells wrapper scripts just to set variables rather - # than running their programs. - libtool_install_magic="$magic" - - staticlibs= - future_libdirs= - current_libdirs= - for file in $files; do - - # Do each installation. - case $file in - *.$libext) - # Do the static libraries later. - staticlibs="$staticlibs $file" - ;; - - *.la) - # Check to see that this really is a libtool archive. - if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : - else - $echo "$modename: \`$file' is not a valid libtool archive" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - library_names= - old_library= - relink_command= - # If there is no directory component, then add one. - case $file in - */* | *\\*) . $file ;; - *) . ./$file ;; - esac - - # Add the libdir to current_libdirs if it is the destination. - if test "X$destdir" = "X$libdir"; then - case "$current_libdirs " in - *" $libdir "*) ;; - *) current_libdirs="$current_libdirs $libdir" ;; - esac - else - # Note the libdir as a future libdir. - case "$future_libdirs " in - *" $libdir "*) ;; - *) future_libdirs="$future_libdirs $libdir" ;; - esac - fi - - dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`/ - test "X$dir" = "X$file/" && dir= - dir="$dir$objdir" - - if test -n "$relink_command"; then - $echo "$modename: warning: relinking \`$file'" 1>&2 - $show "$relink_command" - if $run eval "$relink_command"; then : - else - $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2 - continue - fi - fi - - # See the names of the shared library. - set dummy $library_names - if test -n "$2"; then - realname="$2" - shift - shift - - srcname="$realname" - test -n "$relink_command" && srcname="$realname"T - - # Install the shared library and build the symlinks. - $show "$install_prog $dir/$srcname $destdir/$realname" - $run eval "$install_prog $dir/$srcname $destdir/$realname" || exit $? - if test -n "$stripme" && test -n "$striplib"; then - $show "$striplib $destdir/$realname" - $run eval "$striplib $destdir/$realname" || exit $? - fi - - if test $# -gt 0; then - # Delete the old symlinks, and create new ones. - for linkname - do - if test "$linkname" != "$realname"; then - $show "(cd $destdir && $rm $linkname && $LN_S $realname $linkname)" - $run eval "(cd $destdir && $rm $linkname && $LN_S $realname $linkname)" - fi - done - fi - - # Do each command in the postinstall commands. - lib="$destdir/$realname" - eval cmds=\"$postinstall_cmds\" - IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - fi - - # Install the pseudo-library for information purposes. - name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` - instname="$dir/$name"i - $show "$install_prog $instname $destdir/$name" - $run eval "$install_prog $instname $destdir/$name" || exit $? - - # Maybe install the static library, too. - test -n "$old_library" && staticlibs="$staticlibs $dir/$old_library" - ;; - - *.lo) - # Install (i.e. copy) a libtool object. - - # Figure out destination file name, if it wasn't already specified. - if test -n "$destname"; then - destfile="$destdir/$destname" - else - destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'` - destfile="$destdir/$destfile" - fi - - # Deduce the name of the destination old-style object file. - case $destfile in - *.lo) - staticdest=`$echo "X$destfile" | $Xsed -e "$lo2o"` - ;; - *.$objext) - staticdest="$destfile" - destfile= - ;; - *) - $echo "$modename: cannot copy a libtool object to \`$destfile'" 1>&2 - $echo "$help" 1>&2 - exit 1 - ;; - esac - - # Install the libtool object if requested. - if test -n "$destfile"; then - $show "$install_prog $file $destfile" - $run eval "$install_prog $file $destfile" || exit $? - fi - - # Install the old object if enabled. - if test "$build_old_libs" = yes; then - # Deduce the name of the old-style object file. - staticobj=`$echo "X$file" | $Xsed -e "$lo2o"` - - $show "$install_prog $staticobj $staticdest" - $run eval "$install_prog \$staticobj \$staticdest" || exit $? - fi - exit 0 - ;; - - *) - # Figure out destination file name, if it wasn't already specified. - if test -n "$destname"; then - destfile="$destdir/$destname" - else - destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'` - destfile="$destdir/$destfile" - fi - - # Do a test to see if this is really a libtool program. - if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then - notinst_deplibs= - relink_command= - - # If there is no directory component, then add one. - case $file in - */* | *\\*) . $file ;; - *) . ./$file ;; - esac - - # Check the variables that should have been set. - if test -z "$notinst_deplibs"; then - $echo "$modename: invalid libtool wrapper script \`$file'" 1>&2 - exit 1 - fi - - finalize=yes - for lib in $notinst_deplibs; do - # Check to see that each library is installed. - libdir= - if test -f "$lib"; then - # If there is no directory component, then add one. - case $lib in - */* | *\\*) . $lib ;; - *) . ./$lib ;; - esac - fi - libfile="$libdir/"`$echo "X$lib" | $Xsed -e 's%^.*/%%g'` ### testsuite: skip nested quoting test - if test -n "$libdir" && test ! -f "$libfile"; then - $echo "$modename: warning: \`$lib' has not been installed in \`$libdir'" 1>&2 - finalize=no - fi - done - - relink_command= - # If there is no directory component, then add one. - case $file in - */* | *\\*) . $file ;; - *) . ./$file ;; - esac - - outputname= - if test "$fast_install" = no && test -n "$relink_command"; then - if test "$finalize" = yes && test -z "$run"; then - tmpdir="/tmp" - test -n "$TMPDIR" && tmpdir="$TMPDIR" - tmpdir="$tmpdir/libtool-$$" - if $mkdir -p "$tmpdir" && chmod 700 "$tmpdir"; then : - else - $echo "$modename: error: cannot create temporary directory \`$tmpdir'" 1>&2 - continue - fi - file=`$echo "X$file" | $Xsed -e 's%^.*/%%'` - outputname="$tmpdir/$file" - # Replace the output file specification. - relink_command=`$echo "X$relink_command" | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g'` - - $show "$relink_command" - if $run eval "$relink_command"; then : - else - $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2 - ${rm}r "$tmpdir" - continue - fi - file="$outputname" - else - $echo "$modename: warning: cannot relink \`$file'" 1>&2 - fi - else - # Install the binary that we compiled earlier. - file=`$echo "X$file" | $Xsed -e "s%\([^/]*\)$%$objdir/\1%"` - fi - fi - - # remove .exe since cygwin /usr/bin/install will append another - # one anyways - case $install_prog,$host in - /usr/bin/install*,*cygwin*) - case $file:$destfile in - *.exe:*.exe) - # this is ok - ;; - *.exe:*) - destfile=$destfile.exe - ;; - *:*.exe) - destfile=`echo $destfile | sed -e 's,.exe$,,'` - ;; - esac - ;; - esac - $show "$install_prog$stripme $file $destfile" - $run eval "$install_prog\$stripme \$file \$destfile" || exit $? - test -n "$outputname" && ${rm}r "$tmpdir" - ;; - esac - done - - for file in $staticlibs; do - name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` - - # Set up the ranlib parameters. - oldlib="$destdir/$name" - - $show "$install_prog $file $oldlib" - $run eval "$install_prog \$file \$oldlib" || exit $? - - if test -n "$stripme" && test -n "$striplib"; then - $show "$old_striplib $oldlib" - $run eval "$old_striplib $oldlib" || exit $? - fi - - # Do each command in the postinstall commands. - eval cmds=\"$old_postinstall_cmds\" - IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - done - - if test -n "$future_libdirs"; then - $echo "$modename: warning: remember to run \`$progname --finish$future_libdirs'" 1>&2 - fi - - if test -n "$current_libdirs"; then - # Maybe just do a dry run. - test -n "$run" && current_libdirs=" -n$current_libdirs" - exec $SHELL $0 --finish$current_libdirs - exit 1 - fi - - exit 0 - ;; - - # libtool finish mode - finish) - modename="$modename: finish" - libdirs="$nonopt" - admincmds= - - if test -n "$finish_cmds$finish_eval" && 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. - eval cmds=\"$finish_cmds\" - IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || admincmds="$admincmds - $cmd" - done - IFS="$save_ifs" - fi - if test -n "$finish_eval"; then - # Do the single finish_eval. - eval cmds=\"$finish_eval\" - $run eval "$cmds" || admincmds="$admincmds - $cmds" - fi - done - fi - - # Exit here if they wanted silent mode. - test "$show" = ":" && exit 0 - - echo "----------------------------------------------------------------------" - echo "Libraries have been installed in:" - for libdir in $libdirs; do - echo " $libdir" - done - echo - echo "If you ever happen to want to link against installed libraries" - echo "in a given directory, LIBDIR, you must either use libtool, and" - echo "specify the full pathname of the library, or use the \`-LLIBDIR'" - echo "flag during linking and do at least one of the following:" - if test -n "$shlibpath_var"; then - echo " - add LIBDIR to the \`$shlibpath_var' environment variable" - echo " during execution" - fi - if test -n "$runpath_var"; then - echo " - add LIBDIR to the \`$runpath_var' environment variable" - echo " during linking" - fi - if test -n "$hardcode_libdir_flag_spec"; then - libdir=LIBDIR - eval flag=\"$hardcode_libdir_flag_spec\" - - echo " - use the \`$flag' linker flag" - fi - if test -n "$admincmds"; then - echo " - have your system administrator run these commands:$admincmds" - fi - if test -f /etc/ld.so.conf; then - echo " - have your system administrator add LIBDIR to \`/etc/ld.so.conf'" - fi - echo - echo "See any operating system documentation about shared libraries for" - echo "more information, such as the ld(1) and ld.so(8) manual pages." - echo "----------------------------------------------------------------------" - exit 0 - ;; - - # libtool execute mode - execute) - modename="$modename: 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 "$help" - exit 1 - fi - - # Handle -dlopen flags immediately. - for file in $execute_dlfiles; do - if test ! -f "$file"; then - $echo "$modename: \`$file' is not a file" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - dir= - case $file in - *.la) - # Check to see that this really is a libtool archive. - if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : - else - $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - # Read the libtool library. - dlname= - library_names= - - # If there is no directory component, then add one. - case $file in - */* | *\\*) . $file ;; - *) . ./$file ;; - esac - - # 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'" - continue - fi - - dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` - test "X$dir" = "X$file" && dir=. - - if test -f "$dir/$objdir/$dlname"; then - dir="$dir/$objdir" - else - $echo "$modename: cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" 1>&2 - exit 1 - fi - ;; - - *.lo) - # Just add the directory containing the .lo file. - dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` - test "X$dir" = "X$file" && dir=. - ;; - - *) - $echo "$modename: warning \`-dlopen' is ignored for non-libtool libraries and objects" 1>&2 - continue - ;; - esac - - # Get the absolute pathname. - absdir=`cd "$dir" && pwd` - test -n "$absdir" && dir="$absdir" - - # Now add the directory to shlibpath_var. - if eval "test -z \"\$$shlibpath_var\""; then - eval "$shlibpath_var=\"\$dir\"" - else - eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\"" - fi - done - - # This variable tells wrapper scripts just to set shlibpath_var - # rather than running their programs. - libtool_execute_magic="$magic" - - # Check if any of the arguments is a wrapper script. - args= - for file - do - case $file in - -*) ;; - *) - # Do a test to see if this is really a libtool program. - if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then - # If there is no directory component, then add one. - case $file in - */* | *\\*) . $file ;; - *) . ./$file ;; - esac - - # Transform arg to wrapped name. - file="$progdir/$program" - fi - ;; - esac - # Quote arguments (to preserve shell metacharacters). - file=`$echo "X$file" | $Xsed -e "$sed_quote_subst"` - args="$args \"$file\"" - done - - if test -z "$run"; then - if test -n "$shlibpath_var"; then - # Export the shlibpath_var. - eval "export $shlibpath_var" - fi - - # Restore saved enviroment variables - if test "${save_LC_ALL+set}" = set; then - LC_ALL="$save_LC_ALL"; export LC_ALL - fi - if test "${save_LANG+set}" = set; then - LANG="$save_LANG"; export LANG - fi - - # Now actually exec the command. - eval "exec \$cmd$args" - - $echo "$modename: cannot exec \$cmd$args" - exit 1 - else - # Display what would be done. - if test -n "$shlibpath_var"; then - eval "\$echo \"\$shlibpath_var=\$$shlibpath_var\"" - $echo "export $shlibpath_var" - fi - $echo "$cmd$args" - exit 0 - fi - ;; - - # libtool clean and uninstall mode - clean | uninstall) - modename="$modename: $mode" - rm="$nonopt" - files= - rmforce= - exit_status=0 - - # This variable tells wrapper scripts just to set variables rather - # than running their programs. - libtool_install_magic="$magic" - - for arg - do - case $arg in - -f) rm="$rm $arg"; rmforce=yes ;; - -*) rm="$rm $arg" ;; - *) files="$files $arg" ;; - esac - done - - if test -z "$rm"; then - $echo "$modename: you must specify an RM program" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - rmdirs= - - for file in $files; do - dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` - if test "X$dir" = "X$file"; then - dir=. - objdir="$objdir" - else - objdir="$dir/$objdir" - fi - name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` - test $mode = uninstall && objdir="$dir" - - # Remember objdir for removal later, being careful to avoid duplicates - if test $mode = clean; then - case " $rmdirs " in - *" $objdir "*) ;; - *) rmdirs="$rmdirs $objdir" ;; - esac - fi - - # Don't error if the file doesn't exist and rm -f was used. - if (test -L "$file") >/dev/null 2>&1 \ - || (test -h "$file") >/dev/null 2>&1 \ - || test -f "$file"; then - : - elif test -d "$file"; then - exit_status=1 - continue - elif test "$rmforce" = yes; then - continue - fi - - rmfiles="$file" - - case $name in - *.la) - # Possibly a libtool archive, so verify it. - if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then - . $dir/$name - - # Delete the libtool libraries and symlinks. - for n in $library_names; do - rmfiles="$rmfiles $objdir/$n" - done - test -n "$old_library" && rmfiles="$rmfiles $objdir/$old_library" - test $mode = clean && rmfiles="$rmfiles $objdir/$name $objdir/${name}i" - - if test $mode = uninstall; then - if test -n "$library_names"; then - # Do each command in the postuninstall commands. - eval cmds=\"$postuninstall_cmds\" - IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" - if test $? != 0 && test "$rmforce" != yes; then - exit_status=1 - fi - done - IFS="$save_ifs" - fi - - if test -n "$old_library"; then - # Do each command in the old_postuninstall commands. - eval cmds=\"$old_postuninstall_cmds\" - IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" - if test $? != 0 && test "$rmforce" != yes; then - exit_status=1 - fi - done - IFS="$save_ifs" - fi - # FIXME: should reinstall the best remaining shared library. - fi - fi - ;; - - *.lo) - if test "$build_old_libs" = yes; then - oldobj=`$echo "X$name" | $Xsed -e "$lo2o"` - rmfiles="$rmfiles $dir/$oldobj" - fi - ;; - - *) - # Do a test to see if this is a libtool program. - if test $mode = clean && - (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then - relink_command= - . $dir/$file - - rmfiles="$rmfiles $objdir/$name $objdir/${name}S.${objext}" - if test "$fast_install" = yes && test -n "$relink_command"; then - rmfiles="$rmfiles $objdir/lt-$name" - fi - fi - ;; - esac - $show "$rm $rmfiles" - $run $rm $rmfiles || exit_status=1 - done - - # Try to remove the ${objdir}s in the directories where we deleted files - for dir in $rmdirs; do - if test -d "$dir"; then - $show "rmdir $dir" - $run rmdir $dir >/dev/null 2>&1 - fi - done - - exit $exit_status - ;; - - "") - $echo "$modename: you must specify a MODE" 1>&2 - $echo "$generic_help" 1>&2 - exit 1 - ;; - esac - - $echo "$modename: invalid operation mode \`$mode'" 1>&2 - $echo "$generic_help" 1>&2 - exit 1 -fi # test -z "$show_help" - -# We need to display help for each of the modes. -case $mode in -"") $echo \ -"Usage: $modename [OPTION]... [MODE-ARG]... - -Provide generalized library-building support services. - - --config show all configuration variables - --debug enable verbose shell tracing --n, --dry-run display commands without modifying any files - --features display basic configuration information and exit - --finish same as \`--mode=finish' - --help display this help message and exit - --mode=MODE use operation mode MODE [default=inferred from MODE-ARGS] - --quiet same as \`--silent' - --silent don't print informational messages - --version print version information - -MODE must be one of the following: - - clean remove files from the build directory - compile compile a source file into a libtool object - execute automatically set library path, then run a program - finish complete the installation of libtool libraries - install install libraries or executables - 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 -a more detailed description of MODE." - exit 0 - ;; - -clean) - $echo \ -"Usage: $modename [OPTION]... --mode=clean RM [RM-OPTION]... FILE... - -Remove files from the build directory. - -RM is the name of the program to use to delete files associated with each FILE -(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed -to RM. - -If FILE is a libtool library, object or program, all the files associated -with it are deleted. Otherwise, only FILE itself is deleted using RM." - ;; - -compile) - $echo \ -"Usage: $modename [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE - -Compile a source file into a libtool library object. - -This mode accepts the following additional options: - - -o OUTPUT-FILE set the output file name to OUTPUT-FILE - -prefer-pic try to building PIC objects only - -prefer-non-pic try to building non-PIC objects only - -static always build a \`.o' file suitable for static linking - -COMPILE-COMMAND is a command to be used in creating a \`standard' object file -from the given SOURCEFILE. - -The output file name is determined by removing the directory component from -SOURCEFILE, then substituting the C source code suffix \`.c' with the -library object suffix, \`.lo'." - ;; - -execute) - $echo \ -"Usage: $modename [OPTION]... --mode=execute COMMAND [ARGS]... - -Automatically set library path, then run a program. - -This mode accepts the following additional options: - - -dlopen FILE add the directory containing FILE to the library path - -This mode sets the library path environment variable according to \`-dlopen' -flags. - -If any of the ARGS are libtool executable wrappers, then they are translated -into their corresponding uninstalled binary, and any of their required library -directories are added to the library path. - -Then, COMMAND is executed, with ARGS as arguments." - ;; - -finish) - $echo \ -"Usage: $modename [OPTION]... --mode=finish [LIBDIR]... - -Complete the installation of libtool libraries. - -Each LIBDIR is a directory that contains libtool libraries. - -The commands that this mode executes may require superuser privileges. Use -the \`--dry-run' option if you just want to see what would be executed." - ;; - -install) - $echo \ -"Usage: $modename [OPTION]... --mode=install INSTALL-COMMAND... - -Install executables or libraries. - -INSTALL-COMMAND is the installation command. The first component should be -either the \`install' or \`cp' program. - -The rest of the components are interpreted as arguments to that command (only -BSD-compatible install options are recognized)." - ;; - -link) - $echo \ -"Usage: $modename [OPTION]... --mode=link LINK-COMMAND... - -Link object files or libraries together to form another library, or to -create an executable program. - -LINK-COMMAND is a command using the C compiler that you would use to create -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 - -avoid-version do not add a version suffix if possible - -dlopen FILE \`-dlpreopen' FILE if it cannot be dlopened at runtime - -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols - -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3) - -export-symbols SYMFILE - try to export only the symbols listed in SYMFILE - -export-symbols-regex REGEX - try to export only the symbols matching REGEX - -LLIBDIR search LIBDIR for required installed libraries - -lNAME OUTPUT-FILE requires the installed library libNAME - -module build a library that can dlopened - -no-fast-install disable the fast-install mode - -no-install link a not-installable executable - -no-undefined declare that a library does not refer to external symbols - -o OUTPUT-FILE create OUTPUT-FILE from the specified objects - -release RELEASE specify package release information - -rpath LIBDIR the created library will eventually be installed in LIBDIR - -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries - -static do not do any dynamic linking of libtool libraries - -version-info CURRENT[:REVISION[:AGE]] - specify library version info [each variable defaults to 0] - -All other options (arguments beginning with \`-') are ignored. - -Every other argument is treated as a filename. Files ending in \`.la' are -treated as uninstalled libtool libraries, other files are standard or library -object files. - -If the OUTPUT-FILE ends in \`.la', then a libtool library is created, -only library objects (\`.lo' files) may be specified, and \`-rpath' is -required, except when creating a convenience library. - -If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created -using \`ar' and \`ranlib', or on Windows using \`lib'. - -If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file -is created, otherwise an executable program is created." - ;; - -uninstall) - $echo \ -"Usage: $modename [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE... - -Remove libraries from an installation directory. - -RM is the name of the program to use to delete files associated with each FILE -(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed -to RM. - -If FILE is a libtool library, all the files associated with it are deleted. -Otherwise, only FILE itself is deleted using RM." - ;; - -*) - $echo "$modename: invalid operation mode \`$mode'" 1>&2 - $echo "$help" 1>&2 - exit 1 - ;; -esac - -echo -$echo "Try \`$modename --help' for more information about other modes." - -exit 0 - -# Local Variables: -# mode:shell-script -# sh-indentation:2 -# End: DELETED ffcall/avcall/COPYING Index: ffcall/avcall/COPYING ================================================================== --- ffcall/avcall/COPYING +++ /dev/null @@ -1,340 +0,0 @@ - GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1989, 1991 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307, - USA. - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -License is intended to guarantee your freedom to share and change free -software--to make sure the software is free for all its users. This -General Public License applies to most of the Free Software -Foundation's software and to any other program whose authors commit to -using it. (Some other Free Software Foundation software is covered by -the GNU Library General Public License instead.) You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if you -distribute copies of the software, or if you modify it. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must give the recipients all the rights that -you have. You must make sure that they, too, receive or can get the -source code. And you must show them these terms so they know their -rights. - - We protect your rights with two steps: (1) copyright the software, and -(2) offer you this license which gives you legal permission to copy, -distribute and/or modify the software. - - Also, for each author's protection and ours, we want to make certain -that everyone understands that there is no warranty for this free -software. If the software is modified by someone else and passed on, we -want its recipients to know that what they have is not the original, so -that any problems introduced by others will not reflect on the original -authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that redistributors of a free -program will individually obtain patent licenses, in effect making the -program proprietary. To prevent this, we have made it clear that any -patent must be licensed for everyone's free use or not licensed at all. - - The precise terms and conditions for copying, distribution and -modification follow. - - GNU GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License applies to any program or other work which contains -a notice placed by the copyright holder saying it may be distributed -under the terms of this General Public License. The "Program", below, -refers to any such program or work, and a "work based on the Program" -means either the Program or any derivative work under copyright law: -that is to say, a work containing the Program or a portion of it, -either verbatim or with modifications and/or translated into another -language. (Hereinafter, translation is included without limitation in -the term "modification".) Each licensee is addressed as "you". - -Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running the Program is not restricted, and the output from the Program -is covered only if its contents constitute a work based on the -Program (independent of having been made by running the Program). -Whether that is true depends on what the Program does. - - 1. You may copy and distribute verbatim copies of the Program's -source code as you receive it, in any medium, provided that you -conspicuously and appropriately publish on each copy an appropriate -copyright notice and disclaimer of warranty; keep intact all the -notices that refer to this License and to the absence of any warranty; -and give any other recipients of the Program a copy of this License -along with the Program. - -You may charge a fee for the physical act of transferring a copy, and -you may at your option offer warranty protection in exchange for a fee. - - 2. You may modify your copy or copies of the Program or any portion -of it, thus forming a work based on the Program, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) You must cause the modified files to carry prominent notices - stating that you changed the files and the date of any change. - - b) You must cause any work that you distribute or publish, that in - whole or in part contains or is derived from the Program or any - part thereof, to be licensed as a whole at no charge to all third - parties under the terms of this License. - - c) If the modified program normally reads commands interactively - when run, you must cause it, when started running for such - interactive use in the most ordinary way, to print or display an - announcement including an appropriate copyright notice and a - notice that there is no warranty (or else, saying that you provide - a warranty) and that users may redistribute the program under - these conditions, and telling the user how to view a copy of this - License. (Exception: if the Program itself is interactive but - does not normally print such an announcement, your work based on - the Program is not required to print an announcement.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Program, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Program, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Program. - -In addition, mere aggregation of another work not based on the Program -with the Program (or with a work based on the Program) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may copy and distribute the Program (or a work based on it, -under Section 2) in object code or executable form under the terms of -Sections 1 and 2 above provided that you also do one of the following: - - a) Accompany it with the complete corresponding machine-readable - source code, which must be distributed under the terms of Sections - 1 and 2 above on a medium customarily used for software interchange; or, - - b) Accompany it with a written offer, valid for at least three - years, to give any third party, for a charge no more than your - cost of physically performing source distribution, a complete - machine-readable copy of the corresponding source code, to be - distributed under the terms of Sections 1 and 2 above on a medium - customarily used for software interchange; or, - - c) Accompany it with the information you received as to the offer - to distribute corresponding source code. (This alternative is - allowed only for noncommercial distribution and only if you - received the program in object code or executable form with such - an offer, in accord with Subsection b above.) - -The source code for a work means the preferred form of the work for -making modifications to it. For an executable work, complete source -code means all the source code for all modules it contains, plus any -associated interface definition files, plus the scripts used to -control compilation and installation of the executable. However, as a -special exception, the source code distributed need not include -anything that is normally distributed (in either source or binary -form) with the major components (compiler, kernel, and so on) of the -operating system on which the executable runs, unless that component -itself accompanies the executable. - -If distribution of executable or object code is made by offering -access to copy from a designated place, then offering equivalent -access to copy the source code from the same place counts as -distribution of the source code, even though third parties are not -compelled to copy the source along with the object code. - - 4. You may not copy, modify, sublicense, or distribute the Program -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense or distribute the Program is -void, and will automatically terminate your rights under this License. -However, parties who have received copies, or rights, from you under -this License will not have their licenses terminated so long as such -parties remain in full compliance. - - 5. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Program or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Program (or any work based on the -Program), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Program or works based on it. - - 6. Each time you redistribute the Program (or any work based on the -Program), the recipient automatically receives a license from the -original licensor to copy, distribute or modify the Program subject to -these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 7. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Program at all. For example, if a patent -license would not permit royalty-free redistribution of the Program by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system, which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 8. If the distribution and/or use of the Program is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Program under this License -may add an explicit geographical distribution limitation excluding -those countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 9. The Free Software Foundation may publish revised and/or new versions -of the General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - -Each version is given a distinguishing version number. If the Program -specifies a version number of this License which applies to it and "any -later version", you have the option of following the terms and conditions -either of that version or of any later version published by the Free -Software Foundation. If the Program does not specify a version number of -this License, you may choose any version ever published by the Free Software -Foundation. - - 10. If you wish to incorporate parts of the Program into other free -programs whose distribution conditions are different, write to the author -to ask for permission. For software which is copyrighted by the Free -Software Foundation, write to the Free Software Foundation; we sometimes -make exceptions for this. Our decision will be guided by the two goals -of preserving the free status of all derivatives of our free software and -of promoting the sharing and reuse of software generally. - - NO WARRANTY - - 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -REPAIR OR CORRECTION. - - 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - - END OF TERMS AND CONDITIONS - - Appendix: How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. - -Also add information on how to contact you by electronic and paper mail. - -If the program is interactive, make it output a short notice like this -when it starts in an interactive mode: - - Gnomovision version 69, Copyright (C) year name of author - Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, the commands you use may -be called something other than `show w' and `show c'; they could even be -mouse-clicks or menu items--whatever suits your program. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the program, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the program - `Gnomovision' (which makes passes at compilers) written by James Hacker. - - , 1 April 1989 - Ty Coon, President of Vice - -This General Public License does not permit incorporating your program into -proprietary programs. If your program is a subroutine library, you may -consider it more useful to permit linking proprietary applications with the -library. If this is what you want to do, use the GNU Library General -Public License instead of this License. DELETED ffcall/avcall/DOC Index: ffcall/avcall/DOC ================================================================== --- ffcall/avcall/DOC +++ /dev/null @@ -1,132 +0,0 @@ - Copyright 1993 Bill Triggs, - - Copyright 1995 Bruno Haible, - - This is free software distributed under the GNU General Public - Licence described in the file COPYING. Contact the author if - you don't have this or can't live with it. There is ABSOLUTELY - NO WARRANTY, explicit or implied, on this software. - ----------------------------------------------------------------------- - AVCALL --- a foreign function interface to ANSI-C ----------------------------------------------------------------------- - -This library allows arbitrary C functions to be called from embedded -interpreters, debuggers, RPC calls, etc, by building up a C argument -list incrementally from explicitly typed arguments. This considerably -reduces the amount of boilerplate glue code required for such -applications. - -The interface is like stdargs/varargs in reverse and is intended to be as -portable as possible, however the details of function calling are highly -machine-dependent so your mileage may vary. At the very least there are -typically built-in limits on the size of the argument-list. The -argument-pushing macros all return 0 for success, < 0 for error (eg, -arg-list overflow). - -Installation instructions are in the Makefile. - ----------------------------------------------------------------------- -DECLARE ALIST -> OPEN ALIST -> SET FLAGS -> PUSH ARGS -> CALL FUNCTION ----------------------------------------------------------------------- - -1) Declare the argument list structure: - - #include "avcall.h" - { - av_alist alist; - -2) Set any special flags. This is architecture and compiler dependent. -Sometimes, compiler options must be flagged by #defines before the -#include . Usually, however, the `configure' script should -have determined which #defines are needed and put them at the head of -avcall.h. - -3) Initialise the alist with the function address and return type. -There is a separate macro for each built-in C type (char, int, float, etc). -Eg, - av_start_int(alist,&func,&return_addr); -or - av_start_double(alist,&func,&return_addr); -etc. -Functions returning a structure or pointer take an extra type argument: -Eg, - av_start_struct(alist,&func,STRUCT_OR_UNION_TYPE,SPLITTABLE,&return_addr); -or - av_start_ptr(alist,&func,POINTER_TYPE,&return_addr); - - -4) Push the arguments one by one in order. There is a macro for each -built-in C type, eg: - av_int(alist,value); -or - av_double(alist,value); - -Structure and pointer arguments require an extra type argument: - - av_struct(alist,STRUCT_TYPE,value); -or - av_ptr(alist,POINTER_TYPE,value); - -5) Call the function, set the return value, and tidy up: - - av_call(alist); - ----------------------------------------------------------------------- - NOTES - -1) Functions declared in K&R style (ie, without a typed arglist) must -use default K&R expression promotions (char,short-->int; float-->double) -whether they are compiled by a K&R or an ANSI compiler, because the -true arg types may not be known at the call point. Such functions -back-convert their arguments to the declared types on function entry. -The only way to pass a true char, short or float (eg, from K&R C to an -ANSI or varargs function) is by an explicit cast: foo((char)c,(float)f). - - !! Hence, for args of functions declared in K&R style you should use - !! av_int() and av_double() instead of av_{char,short}() and av_float(). - -If you use a K&R compiler, the avcall header files may detect this and -define av_float, etc, appropriately, but with an ANSI compiler there's -no way avcall can know how a function was declared, so you have to -correct the argument types yourself. Similarly, some K&R compilers (such -as Sun cc on the sparc) actually return a float as a double. - -2) There are too many possible structure and pointer types to have a -separate macro for each, so the pointer and structure macros take an -explicit type argument which may be used (eg) to calculate the size of -the structure. On most architectures this provides enough information -for the compiler to make the proper call, but there will always be -machines with odd alignment requirements or argument passing -conventions, unusual reprentations for function, char, or void pointers, -etc, for which this scheme will not suffice. These machines may define -additional av_start_TYPE and av_TYPE macros. - -3) The current implementations are pretty flakey in places. I'm happy to -accept new ports and (properly tested) fixes and enhancements. In -particular, many of the routines waste a lot of stack space and generally -do hairy things with stack frames - a bit more assembly code would probably -help things along quite a bit, but I don't speak assembler at all well. - -4) The macros required for all this are pretty grungy, but it does seem -to be possible to port avcall to many machines. Some of the grunge is -usually handled by a C or assembly level glue routine that actually -pushes the arguments, calls the function and unpacks any return value. -This is called __builtin_avcall(). A precompiled assembler version for -people without gcc is also made available. The routine should ideally -have flags for the passing conventions of other compilers. ----------------------------------------------------------------------- - ACKNOWLEDGEMENTS - -I was aware of two similar but rather more restricted foreign function -interfaces when the initial version of this library was written, although -(I believe) all of the present code is my own: the C interface in the zelk -extensions to Oliver Laumann's Elk scheme interpreter -by J.P.Lewis, NEC C&C Research, (for Sun4 and SGI); -and Roy Featherstone's personal C interface -library for Sun3,4 and SGI. I also looked at the comments and some of the -code in the machine-dependent parts of the GCC and GDB distributions, and -put the GCC __asm__ extensions to good use. Thanks guys! - -This work was partly supported by EC-ESPRIT Basic Research Action SECOND. ----------------------------------------------------------------------- DELETED ffcall/avcall/Makefile.devel Index: ffcall/avcall/Makefile.devel ================================================================== --- ffcall/avcall/Makefile.devel +++ /dev/null @@ -1,174 +0,0 @@ -# developer -*-Makefile-*- - -HOST = i486-linux -CPU = i386 -GCC = gcc -GCCFLAGS = -O2 -fomit-frame-pointer -LN = ln -s -RM = rm -f -SED = sed -ROFF_MAN = groff -Tascii -mandoc - -all : avcall-i386-macro.S avcall-i386-msvc.c avcall-i386-mingw32.c avcall.h.msvc avcall.h.mingw32 avcall-m68k.mit.S avcall-m68k.mot.s avcall-m68k-amiga.s avcall-mips.S avcall-mipsn32.S avcall-mips64.S avcall-sparc.S avcall-sparc64.S avcall-alpha.s avcall-hppa.s avcall-arm.S avcall-rs6000-aix.old.s avcall-rs6000-aix.new.s avcall-rs6000-sysv4.s avcall-rs6000-macos.s avcall-m88k.s avcall-convex.s avcall-ia64.s avcall-x86_64.s avcall.man - -avcall-i386-macro.S : avcall-i386.c avcall.h.in asmi386.sh - $(GCC) -V 2.7.2 -b i486-linuxaout $(GCCFLAGS) -D__i386__ -fno-omit-frame-pointer -S avcall-i386.c -o avcall-i386.s - (echo '#include "asmi386.h"' ; sed -e '/\.align.*,0x90$$/d' < avcall-i386.s | ./asmi386.sh) > avcall-i386-macro.S - $(RM) avcall-i386.s - -avcall-i386-msvc.c : avcall-i386-macro.S - cp -p avcall-i386-macro.S avcall-i386-msvc.c - -avcall-i386-mingw32.c : avcall-i386-macro.S - cp -p avcall-i386-macro.S avcall-i386-mingw32.c - -avcall.h.msvc : avcall.h.in - sed -e 's,^#undef __i386__$$,#define __i386__ 1,' -e 's,^#undef __SMALL_STRUCT_RETURN__$$,#define __SMALL_STRUCT_RETURN__ 1,' < avcall.h.in > avcall.h.msvc - -avcall.h.mingw32 : avcall.h.in - sed -e 's,^#undef __i386__$$,#define __i386__ 1,' -e 's,^#undef __SMALL_STRUCT_RETURN__$$,#define __SMALL_STRUCT_RETURN__ 1,' < avcall.h.in > avcall.h.mingw32 - -avcall-m68k.mit.S : avcall-m68k.c avcall.h.in asmm68k.sh - $(GCC) -V 2.95.2 -b m68k-sun $(GCCFLAGS) -D__m68k__ -S avcall-m68k.c -o avcall-m68k.mit.s - (echo '#include "asmm68k.h"' ; ./asmm68k.sh < avcall-m68k.mit.s) > avcall-m68k.mit.S - $(RM) avcall-m68k.mit.s - -avcall-m68k.mot.s : avcall-m68k.c avcall.h.in - $(GCC) -V 2.95.2 -b m68k-linux $(GCCFLAGS) -D__m68k__ -S avcall-m68k.c -o avcall-m68k.mot.s - -avcall-m68k-amiga.s : avcall-m68k-amiga.c avcall.h.in - $(GCC) -V 2.95.2 -b m68k-sun -m68000 $(GCCFLAGS) -D__m68k__ -DAMIGA -S avcall-m68k-amiga.c -o avcall-m68k-amiga.s - -avcall-mips.S : avcall-mips.c avcall.h.in asmmips.sh - $(GCC) -V 2.95.2 -b mips-sgi $(GCCFLAGS) -D__mips__ -fno-omit-frame-pointer -S avcall-mips.c -o avcall-mips.s - (echo '#include "asmmips.h"' ; ./asmmips.sh < avcall-mips.s) > avcall-mips.S - $(RM) avcall-mips.s - -avcall-mipsn32.S : avcall-mipsn32.c avcall.h.in asmmips.sh - $(GCC) -V 2.95.2 -b mips-sgi-irix6 $(GCCFLAGS) -D__mipsn32__ -fno-omit-frame-pointer -S avcall-mipsn32.c -o avcall-mipsn32.s - (echo '#include "asmmips.h"' ; ./asmmips.sh < avcall-mipsn32.s) > avcall-mipsn32.S - $(RM) avcall-mipsn32.s - -avcall-mips64.S : avcall-mips64.c avcall.h.in asmmips.sh - $(GCC) -V 2.95.2 -b mips-sgi -mips3 -mlong64 $(GCCFLAGS) -U__mips__ -D__mips64__ -fno-omit-frame-pointer -S avcall-mips64.c -o avcall-mips64.s - (echo '#include "asmmips.h"' ; ./asmmips.sh < avcall-mips64.s) > avcall-mips64.S - $(RM) avcall-mips64.s - -avcall-sparc.S : avcall-sparc.c avcall.h.in asmsparc.sh - $(GCC) -V 2.95.2 -b sparc-sun $(GCCFLAGS) -D__sparc__ -S avcall-sparc.c -o avcall-sparc.s - (echo '#include "asmsparc.h"' ; ./asmsparc.sh < avcall-sparc.s) > avcall-sparc.S - $(RM) avcall-sparc.s - -avcall-sparc64.S : avcall-sparc64.c avcall.h.in asmsparc.sh - sparc64-linux-gcc -V 2.95.2 -b sparc64-linux $(GCCFLAGS) -D__sparc64__ -S avcall-sparc64.c -o avcall-sparc64.s - (echo '#include "asmsparc.h"' ; ./asmsparc64.sh < avcall-sparc64.s) > avcall-sparc64.S - $(RM) avcall-sparc64.s - -# Patrick Bridges says that on Linux/Alpha, avcall-alpha.s compiled with "-O" -# works but compiled with "-O2" doesn't work. -avcall-alpha.s : avcall-alpha.c avcall.h.in - $(GCC) -V 2.7.2 -b alpha-dec-osf $(GCCFLAGS) -O1 -D__alpha__ -S avcall-alpha.c -o avcall-alpha-temp.s - $(SED) -e '/ldgp/d' < avcall-alpha-temp.s > avcall-alpha.s - $(RM) avcall-alpha-temp.s - -avcall-hppa.s : avcall-hppa.c avcall.h.in - $(GCC) -V 2.6.3 -b hppa1.0-hpux $(GCCFLAGS) -D__hppa__ -S avcall-hppa.c -o avcall-hppa-temp.s - $(SED) -e 's/120/1060/g' < avcall-hppa-temp.s > avcall-hppa.s - $(RM) avcall-hppa-temp.s - -avcall-arm.S : avcall-arm.c avcall.h.in asmarm.sh - $(GCC) -V 2.6.3 -b arm-acorn-riscix $(GCCFLAGS) -D__arm__ -S avcall-arm.c -o avcall-arm.s - (echo '#include "asmarm.h"' ; ./asmarm.sh < avcall-arm.s) > avcall-arm.S - $(RM) avcall-arm.s - -avcall-rs6000-aix.old.s : avcall-rs6000.c avcall.h.in - $(GCC) -V 2.95.2 -b rs6000 -mno-power -mno-power2 -mno-powerpc -mold-mnemonics $(GCCFLAGS) -D__rs6000__ -S avcall-rs6000.c -o avcall-rs6000-aix.old.s - -avcall-rs6000-aix.new.s : avcall-rs6000.c avcall.h.in - $(GCC) -V 2.95.2 -b rs6000 -mno-power -mno-power2 -mno-powerpc -mnew-mnemonics $(GCCFLAGS) -D__rs6000__ -S avcall-rs6000.c -o avcall-rs6000-aix.new.s - -avcall-rs6000-sysv4.s : avcall-rs6000.c avcall.h.in - $(GCC) -V 2.95.2 -b ppc-linux -mno-power -mno-power2 -mno-powerpc $(GCCFLAGS) -D__rs6000__ -S avcall-rs6000.c -o avcall-rs6000-sysv4.s - -avcall-rs6000-macos.s : avcall-rs6000.c avcall.h.in - $(GCC) -V 3.3.2 -b powerpc-darwin $(GCCFLAGS) -D__rs6000__ -S avcall-rs6000.c -o avcall-rs6000-macos.s - -avcall-m88k.s : avcall-m88k.c avcall.h.in - $(GCC) -V 2.95.2 -b m88k-dgux $(GCCFLAGS) -D__m88k__ -S avcall-m88k.c -o avcall-m88k.s - -avcall-convex.s : avcall-convex.c avcall.h.in - $(GCC) -V 2.6.3 -b convex-c2 $(GCCFLAGS) -D__convex__ -S avcall-convex.c -o avcall-convex.s - -avcall-ia64.s : avcall-ia64.c avcall.h.in - $(GCC) -V 2.9-ia64-000216 -b ia64-hp-linux $(GCCFLAGS) -D__ia64__ -S avcall-ia64.c -o avcall-ia64.s - -avcall-x86_64.s : avcall-x86_64.c avcall.h.in - $(GCC) -V 3.2.2 -b x86_64-suse-linux $(GCCFLAGS) -D__x86_64__ -S avcall-x86_64.c -o avcall-x86_64.s - -avcall.man : avcall.3 - $(ROFF_MAN) avcall.3 > avcall.man - - -tests : tests-i386.s tests-m68k.s tests-mips.s tests-sparc.s tests-alpha.s tests-hppa.s tests-arm.s tests-rs6000.s tests-m88k.s tests-convex.s tests-ia64.s tests-x86_64.s - true - -tests-i386.s : tests.c avcall.h.in - $(LN) avcall.h.in avcall.h - $(GCC) -V 2.7.2 -b i486-linuxaout $(GCCFLAGS) -I/usr/include -D__i386__ -S tests.c -o tests-i386.s - $(RM) avcall.h - -tests-m68k.s : tests.c avcall.h.in - $(LN) avcall.h.in avcall.h - $(GCC) -V 2.95.2 -b m68k-sun $(GCCFLAGS) -I/usr/include -D__m68k__ -S tests.c -o tests-m68k.s - $(RM) avcall.h - -tests-mips.s : tests.c avcall.h.in - $(LN) avcall.h.in avcall.h - $(GCC) -V 2.95.2 -b mips-sgi $(GCCFLAGS) -I/usr/include -D__mips__ -S tests.c -o tests-mips.s - $(RM) avcall.h - -tests-sparc.s : tests.c avcall.h.in - $(LN) avcall.h.in avcall.h - $(GCC) -V 2.95.2 -b sparc-sun $(GCCFLAGS) -I/usr/include -D__sparc__ -S tests.c -o tests-sparc.s - $(RM) avcall.h - -tests-alpha.s : tests.c avcall.h.in - $(LN) avcall.h.in avcall.h - $(GCC) -V 2.7.2 -b alpha-dec-osf $(GCCFLAGS) -I/usr/include -D__alpha__ -S tests.c -o tests-alpha.s - $(RM) avcall.h - -tests-hppa.s : tests.c avcall.h.in - $(LN) avcall.h.in avcall.h - $(GCC) -V 2.6.3 -b hppa1.0-hpux $(GCCFLAGS) -I/usr/include -D__hppa__ -S tests.c -o tests-hppa.s - $(RM) avcall.h - -tests-arm.s : tests.c avcall.h.in - $(LN) avcall.h.in avcall.h - $(GCC) -V 2.6.3 -b arm-acorn-riscix $(GCCFLAGS) -I/usr/include -D__arm__ -S tests.c -o tests-arm.s - $(RM) avcall.h - -tests-rs6000.s : tests.c avcall.h.in - $(LN) avcall.h.in avcall.h - $(GCC) -V 2.95.2 -b rs6000 $(GCCFLAGS) -I/usr/include -D__rs6000__ -S tests.c -o tests-rs6000.s - $(RM) avcall.h - -tests-m88k.s : tests.c avcall.h.in - $(LN) avcall.h.in avcall.h - $(GCC) -V 2.95.2 -b m88k-dgux $(GCCFLAGS) -I/usr/include -D__m88k__ -S tests.c -o tests-m88k.s - $(RM) avcall.h - -tests-convex.s : tests.c avcall.h.in - $(LN) avcall.h.in avcall.h - $(GCC) -V 2.6.3 -b convex-c2 $(GCCFLAGS) -I/usr/include -D__convex__ -S tests.c -o tests-convex.s - $(RM) avcall.h - -tests-ia64.s : tests.c avcall.h.in - $(LN) avcall.h.in avcall.h - $(GCC) -V 2.9-ia64-000216 -b ia64-hp-linux $(GCCFLAGS) -I/usr/include -D__ia64__ -S tests.c -o tests-ia64.s - $(RM) avcall.h - -tests-x86_64.s : tests.c avcall.h.in - $(LN) avcall.h.in avcall.h - $(GCC) -V 3.2.2 -b x86_64-suse-linux $(GCCFLAGS) -I/usr/include -D__x86_64__ -S tests.c -o tests-x86_64.s - $(RM) avcall.h - DELETED ffcall/avcall/Makefile.in Index: ffcall/avcall/Makefile.in ================================================================== --- ffcall/avcall/Makefile.in +++ /dev/null @@ -1,230 +0,0 @@ -# Makefile for avcall - -#### Start of system configuration section. #### - -HOST = @host@ -CPU = @host_cpu@ -OS = @host_os@ - -# Directories used by "make": -srcdir = @srcdir@ - -# Directories used by "make install": -prefix = @prefix@ -local_prefix = /usr/local -exec_prefix = @exec_prefix@ -libdir = @libdir@ -includedir = @includedir@ -mandir = @mandir@ -datadir = @datadir@ -htmldir = $(datadir)/html - -# Programs used by "make": -CC = @CC@ -CFLAGS = @CFLAGS@ -CPP = @CPP@ -INCLUDES = -I. -I$(srcdir) -ASPFLAGS = `if test @AS_UNDERSCORE@ = true; then echo '-DASM_UNDERSCORE'; fi` -LIBTOOL = @LIBTOOL@ -LIBTOOL_COMPILE = $(LIBTOOL) --mode=compile -LIBTOOL_LINK = $(LIBTOOL) --mode=link -LIBTOOL_INSTALL = $(LIBTOOL) --mode=install -LIBTOOL_UNINSTALL = $(LIBTOOL) --mode=uninstall -AR = ar -AR_FLAGS = rc -RANLIB = @RANLIB@ -MV = mv -LN = @LN@ -RM = rm -f -@SET_MAKE@ - -# Programs used by "make install": -INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_DATA = @INSTALL_DATA@ - -#### End of system configuration section. #### - -SHELL = /bin/sh - -# Needed by $(LIBTOOL). -top_builddir = . - -OBJECTS = avcall.lo structcpy.lo - -all : $(OBJECTS) libavcall.la avcall.h $(srcdir)/avcall.3 $(srcdir)/avcall.html - -avcall.lo : avcall-$(CPU).lo - $(RM) avcall.lo avcall.o - $(LN) avcall-$(CPU).lo avcall.lo - if test -f avcall-$(CPU).o; then $(LN) avcall-$(CPU).o avcall.o; fi - -avcall-i386.lo : avcall-i386.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c avcall-i386.s - -avcall-i386.s : $(srcdir)/avcall-i386-macro.S - $(CPP) $(ASPFLAGS) $(srcdir)/avcall-i386-macro.S | grep -v '^ *#line' | grep -v '^#ident' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,% ,%,g' -e 's,\. ,.,g' > avcall-i386.s - -avcall-sparc.lo : avcall-sparc.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c avcall-sparc.s - -avcall-sparc.s : $(srcdir)/avcall-sparc.S - $(CPP) $(ASPFLAGS) $(srcdir)/avcall-sparc.S | grep -v '^ *#line' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,//.*$$,,' -e 's,\$$,#,g' > avcall-sparc.s - -avcall-sparc64.lo : avcall-sparc64.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c avcall-sparc64.s - -avcall-sparc64.s : $(srcdir)/avcall-sparc64.S - $(CPP) $(ASPFLAGS) $(srcdir)/avcall-sparc64.S | grep -v '^ *#line' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,//.*$$,,' -e 's,\$$,#,g' > avcall-sparc64.s - -avcall-m68k.lo : avcall-m68k.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c avcall-m68k.s - -avcall-m68k.s : $(srcdir)/avcall-m68k.mit.S $(srcdir)/avcall-m68k.mot.s - $(CPP) $(ASPFLAGS) $(srcdir)/avcall-m68k.mit.S | grep -v '^ *#line' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,//.*$$,,' | if test @AS_UNDERSCORE@ = true; then sed -e 's/\$$//g'; else sed -e 's/\$$/%/g'; fi > avcall-m68k.s - -avcall-mips.lo : avcall-mips.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c avcall-mips.s - -avcall-mips.s : $(srcdir)/avcall-mips.S - $(CPP) $(ASPFLAGS) $(srcdir)/avcall-mips.S | grep -v '^ *#line' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,//.*$$,,' > avcall-mips.s - -avcall-mipsn32.lo : avcall-mipsn32.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c avcall-mipsn32.s - -avcall-mipsn32.s : $(srcdir)/avcall-mipsn32.S - $(CPP) $(ASPFLAGS) $(srcdir)/avcall-mipsn32.S | grep -v '^ *#line' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,//.*$$,,' > avcall-mipsn32.s - -avcall-mips64.lo : avcall-mips64.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c avcall-mips64.s - -avcall-mips64.s : $(srcdir)/avcall-mips64.S - $(CPP) $(ASPFLAGS) $(srcdir)/avcall-mips64.S | grep -v '^ *#line' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,//.*$$,,' > avcall-mips64.s - -avcall-alpha.lo : $(srcdir)/avcall-alpha.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c $(srcdir)/avcall-alpha.s - -avcall-hppa.lo : $(srcdir)/avcall-hppa.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c $(srcdir)/avcall-hppa.s - -avcall-s390.lo : $(srcdir)/avcall-s390.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c $(srcdir)/avcall-s390.s - -avcall-arm.lo : avcall-arm.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c avcall-arm.s - -avcall-arm.s : $(srcdir)/avcall-arm.S - $(CPP) $(ASPFLAGS) $(srcdir)/avcall-arm.S | grep -v '^ *#line' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,//,@,g' -e 's,\$$,#,g' > avcall-arm.s - -avcall-rs6000.lo : $(srcdir)/avcall-rs6000-aix.old.s $(srcdir)/avcall-rs6000-aix.new.s $(srcdir)/avcall-rs6000-sysv4.s $(srcdir)/avcall-rs6000-macos.s - case "$(OS)" in \ - aix3*) syntax=aix.old;; \ - aix*) syntax=aix.new;; \ - linux* | netbsd*) syntax=linux;; \ - macos* | darwin*) syntax=macos;; \ - *) syntax=sysv4;; \ - esac; \ - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c $(srcdir)/avcall-rs6000-$${syntax}.s ; \ - cp avcall-rs6000-$${syntax}.lo avcall-rs6000.lo ; rm -f avcall-rs6000-$${syntax}.lo ; \ - if test -f avcall-rs6000-$${syntax}.o; then mv avcall-rs6000-$${syntax}.o avcall-rs6000.o; fi - -avcall-m88k.lo : $(srcdir)/avcall-m88k.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c $(srcdir)/avcall-m88k.s - -avcall-convex.lo : $(srcdir)/avcall-convex.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c $(srcdir)/avcall-convex.s - -avcall-ia64.lo : $(srcdir)/avcall-ia64.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c $(srcdir)/avcall-ia64.s - -avcall-x86_64.lo : $(srcdir)/avcall-x86_64.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c $(srcdir)/avcall-x86_64.s - -structcpy.lo : $(srcdir)/structcpy.c - $(LIBTOOL_COMPILE) $(CC) $(CFLAGS) -c $(srcdir)/structcpy.c - -libavcall.la : $(OBJECTS) - $(LIBTOOL_LINK) $(CC) -o libavcall.la -rpath $(libdir) $(OBJECTS) - -# Installs the library and include files only. Typically called with only -# $(libdir) and $(includedir) - don't use $(prefix) and $(exec_prefix) here. -install-lib : all force - if [ ! -d $(libdir) ] ; then mkdir $(libdir) ; fi - $(LIBTOOL_INSTALL) $(INSTALL_DATA) libavcall.la $(libdir)/libavcall.la - if [ ! -d $(includedir) ] ; then mkdir $(includedir) ; fi - $(INSTALL_DATA) avcall.h $(includedir)/avcall.h - -install : all force - if [ ! -d $(DESTDIR)$(prefix) ] ; then mkdir $(DESTDIR)$(prefix) ; fi - if [ ! -d $(DESTDIR)$(exec_prefix) ] ; then mkdir $(DESTDIR)$(exec_prefix) ; fi - if [ ! -d $(DESTDIR)$(libdir) ] ; then mkdir $(DESTDIR)$(libdir) ; fi - $(LIBTOOL_INSTALL) $(INSTALL_DATA) libavcall.la $(DESTDIR)$(libdir)/libavcall.la - if [ ! -d $(DESTDIR)$(includedir) ] ; then mkdir $(DESTDIR)$(includedir) ; fi - $(INSTALL_DATA) avcall.h $(DESTDIR)$(includedir)/avcall.h - if [ ! -d $(DESTDIR)$(mandir) ] ; then mkdir $(DESTDIR)$(mandir) ; fi - if [ ! -d $(DESTDIR)$(mandir)/man3 ] ; then mkdir $(DESTDIR)$(mandir)/man3 ; fi - $(INSTALL_DATA) $(srcdir)/avcall.3 $(DESTDIR)$(mandir)/man3/avcall.3 - if [ ! -d $(DESTDIR)$(datadir) ] ; then mkdir $(DESTDIR)$(datadir) ; fi - if [ ! -d $(DESTDIR)$(htmldir) ] ; then mkdir $(DESTDIR)$(htmldir) ; fi - $(INSTALL_DATA) $(srcdir)/avcall.html $(DESTDIR)$(htmldir)/avcall.html - -installdirs : force - if [ ! -d $(DESTDIR)$(prefix) ] ; then mkdir $(DESTDIR)$(prefix) ; fi - if [ ! -d $(DESTDIR)$(exec_prefix) ] ; then mkdir $(DESTDIR)$(exec_prefix) ; fi - if [ ! -d $(DESTDIR)$(libdir) ] ; then mkdir $(DESTDIR)$(libdir) ; fi - if [ ! -d $(DESTDIR)$(includedir) ] ; then mkdir $(DESTDIR)$(includedir) ; fi - if [ ! -d $(DESTDIR)$(mandir) ] ; then mkdir $(DESTDIR)$(mandir) ; fi - if [ ! -d $(DESTDIR)$(mandir)/man3 ] ; then mkdir $(DESTDIR)$(mandir)/man3 ; fi - if [ ! -d $(DESTDIR)$(datadir) ] ; then mkdir $(DESTDIR)$(datadir) ; fi - if [ ! -d $(DESTDIR)$(htmldir) ] ; then mkdir $(DESTDIR)$(htmldir) ; fi - -uninstall : force - $(LIBTOOL_UNINSTALL) $(RM) $(DESTDIR)$(libdir)/libavcall.la - $(RM) $(DESTDIR)$(includedir)/avcall.h - $(RM) $(DESTDIR)$(mandir)/man3/avcall.3 - $(RM) $(DESTDIR)$(htmldir)/avcall.html - -minitests.o : $(srcdir)/minitests.c $(srcdir)/tests.c avcall.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/minitests.c - -minitests.s : $(srcdir)/minitests.c $(srcdir)/tests.c avcall.h - $(CC) $(CFLAGS) $(INCLUDES) -S $(srcdir)/minitests.c - -minitests : minitests.o libavcall.la - $(LIBTOOL_LINK) $(CC) $(CFLAGS) @GCC_X_NONE@ minitests.o libavcall.la -o minitests - -check : all minitests - ./minitests > minitests.out - LC_ALL=C uniq -u < minitests.out > minitests.output.$(HOST) - test '!' -s minitests.output.$(HOST) - -tests.o : $(srcdir)/tests.c avcall.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/tests.c - -tests.s : $(srcdir)/tests.c avcall.h - $(CC) $(CFLAGS) $(INCLUDES) -S $(srcdir)/tests.c - -tests : tests.o libavcall.la - $(LIBTOOL_LINK) $(CC) $(CFLAGS) @GCC_X_NONE@ tests.o libavcall.la -o tests - -extracheck : all tests - ./tests > tests.out - LC_ALL=C uniq -u < tests.out > tests.output.$(HOST) - test '!' -s tests.output.$(HOST) - -mostlyclean : clean - -clean : force - $(RM) *.o *.lo *.a libavcall.* core - $(RM) avcall-i386.s avcall-sparc.s avcall-sparc64.s avcall-m68k.s avcall-mips.s avcall-mipsn32.s avcall-mips64.s avcall-arm.s - $(RM) -r .libs _libs - $(RM) minitests.o minitests.s minitests minitests.out - $(RM) tests.o tests.s tests tests.out - -distclean : clean - $(RM) config.status config.log config.cache Makefile avcall.h libtool minitests.output.* tests.output.* - -maintainer-clean : distclean - -force : - DELETED ffcall/avcall/Makefile.mingw32 Index: ffcall/avcall/Makefile.mingw32 ================================================================== --- ffcall/avcall/Makefile.mingw32 +++ /dev/null @@ -1,107 +0,0 @@ -# -*-Makefile-*- for avcall - -#### Start of system configuration section. #### - -HOST = i386-pc-win32-gcc -CPU = i386 - -# Directories used by "make": -srcdir = . - -# Directories used by "make install": -prefix = /usr/local -local_prefix = /usr/local -exec_prefix = $(prefix) -libdir = $(exec_prefix)/lib -includedir = $(prefix)/include -mandir = $(prefix)/man - -# Programs used by "make": -CC = gcc -mno-cygwin -CFLAGS = -O -CPP = gcc -E -INCLUDES = -I. -I$(srcdir) -ASPFLAGS = -DASM_UNDERSCORE -AR = ar -AR_FLAGS = rc -MV = mv -LN = cp -RM = rm -f - -# Programs used by "make install": -INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_DATA = @INSTALL_DATA@ - -#### End of system configuration section. #### - -SHELL = /bin/sh - -OBJECTS = avcall.o structcpy.o - -all : $(OBJECTS) libavcall.a avcall.h $(srcdir)/avcall.3 $(srcdir)/avcall.html - -avcall.h : avcall.h.mingw32 - $(RM) avcall.h - $(LN) avcall.h.mingw32 avcall.h - -avcall.o : avcall-$(CPU).o - $(RM) avcall.o - $(LN) avcall-$(CPU).o avcall.o - -avcall-i386.o : avcall-i386.asm - $(CC) -c -x assembler avcall-i386.asm - -avcall-i386.asm : $(srcdir)/avcall-i386-macro.S - $(CPP) $(ASPFLAGS) $(srcdir)/avcall-i386-macro.S | grep -v '^ *#line' | grep -v '^#ident' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,\. ,.,g' > avcall-i386.asm - -structcpy.o : $(srcdir)/structcpy.c - $(CC) $(CFLAGS) -c $(srcdir)/structcpy.c - -libavcall.a : $(OBJECTS) - $(RM) libavcall.a - $(AR) $(AR_FLAGS) libavcall.a $(OBJECTS) - -minitests.o : $(srcdir)/minitests.c avcall.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/minitests.c - -minitests.s : $(srcdir)/minitests.c avcall.h - $(CC) $(CFLAGS) $(INCLUDES) -S $(srcdir)/minitests.c - -minitests.exe : minitests.o $(OBJECTS) - $(CC) $(CFLAGS) minitests.o $(OBJECTS) -o minitests.exe - -check : all minitests.exe - minitests.exe > minitests.out - LC_ALL=C uniq -u < minitests.out > minitests.output.$(HOST) -# You have to check by hand that minitests.output.$(HOST) is empty. - -tests.o : $(srcdir)/tests.c avcall.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/tests.c - -tests.s : $(srcdir)/tests.c avcall.h - $(CC) $(CFLAGS) $(INCLUDES) -S $(srcdir)/tests.c - -tests.exe : tests.o $(OBJECTS) - $(CC) $(CFLAGS) tests.o $(OBJECTS) -o tests.exe - -extracheck : all tests.exe - tests.exe > tests.out - LC_ALL=C uniq -u < tests.out > tests.output.$(HOST) -# You have to check by hand that tests.output.$(HOST) is empty. - -mostlyclean : clean - -clean : force - $(RM) *.o *.a core - $(RM) avcall-i386.asm - $(RM) minitests.o minitests.s minitests.exe minitests.out - $(RM) tests.o tests.s tests.exe tests.out - -distclean : clean - $(RM) config.status config.log config.cache Makefile avcall.h tests.output.* - -maintainer-clean : distclean - -force : - DELETED ffcall/avcall/Makefile.msvc Index: ffcall/avcall/Makefile.msvc ================================================================== --- ffcall/avcall/Makefile.msvc +++ /dev/null @@ -1,127 +0,0 @@ -# -*- Makefile -*- for avcall - -#### Start of system configuration section. #### - -# Flags that can be set on the nmake command line: -# MFLAGS={-ML|-MT|-MD} for defining the compilation model -# MFLAGS=-ML (the default) Single-threaded, statically linked - libc.lib -# MFLAGS=-MT Multi-threaded, statically linked - libcmt.lib -# MFLAGS=-MD Multi-threaded, dynamically linked - msvcrt.lib -# DEBUG=1 for compiling with debugging information -# Note that nmake command line flags are automatically passed to subdirectory -# Makefiles. Therefore we don't need to pass them explicitly to subdirectory -# Makefiles, but the subdirectory Makefiles need to have the same defaults. -# Building as a DLL not supported yet. -DLL=0 -!if !defined(DEBUG) -DEBUG=0 -!endif -!if !defined(MFLAGS) -!if !$(DLL) -MFLAGS= -!else -MFLAGS=-MD -!endif -!endif - -!if $(DEBUG) -OPTIMFLAGS = -Od -Z7 -!else -OPTIMFLAGS = -D_NDEBUG -O1 -!endif - -HOST = i386-pc-win32-msvc -CPU = i386 - -# Directories used by "make": -srcdir = . - -# Directories used by "make install": -prefix = /usr/local -local_prefix = /usr/local -exec_prefix = $(prefix) -libdir = $(exec_prefix)/lib -includedir = $(prefix)/include -mandir = $(prefix)/man - -# Programs used by "make": -CC = cl -CFLAGS = $(MFLAGS) $(OPTIMFLAGS) -CPP = cl -E -INCLUDES = -I. -I$(srcdir) -AR = lib -AR_FLAGS = /out: -MV = ren -LN = copy -RM = -del - -# Programs used by "make install": -INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_DATA = @INSTALL_DATA@ - -#### End of system configuration section. #### - -SHELL = /bin/sh - -OBJECTS = avcall.obj structcpy.obj - -all : $(OBJECTS) avcall.lib avcall.h $(srcdir)/avcall.3 $(srcdir)/avcall.html - -avcall.h : avcall.h.msvc - $(RM) avcall.h - $(LN) avcall.h.msvc avcall.h - -avcall.obj : avcall-$(CPU).obj - $(RM) avcall.obj - $(LN) avcall-$(CPU).obj avcall.obj - -avcall-i386.obj : $(srcdir)/avcall-i386-msvc.c - $(RM) avcall-i386.obj - $(CC) -c $(srcdir)/avcall-i386-msvc.c /Foavcall-i386.obj - -structcpy.obj : $(srcdir)/structcpy.c - $(CC) $(CFLAGS) -c $(srcdir)/structcpy.c - -!if !$(DLL) -avcall.lib : $(OBJECTS) - $(RM) avcall.lib - $(AR) $(AR_FLAGS)avcall.lib $(OBJECTS) -!else -# avcall.dll and avcall.lib are created together. -avcall.lib : $(OBJECTS) - $(CC) $(MFLAGS) -LD $(OBJECTS) -!endif - -tests.obj : $(srcdir)/tests.c avcall.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/tests.c - -tests.s : $(srcdir)/tests.c avcall.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/tests.c /FAs /Fatests.s - -tests.exe : tests.obj avcall.lib - $(CC) $(CFLAGS) tests.obj avcall.lib /Fetests.exe - -uniq-u.exe : $(srcdir)/uniq-u.c - $(CC) $(CFLAGS) $(srcdir)/uniq-u.c -Feuniq-u.exe - $(RM) uniq-u.obj - -check : all tests.exe uniq-u.exe - tests.exe > tests.out - uniq-u < tests.out > tests.output.$(HOST) -# You have to check by hand that tests.output.$(HOST) is empty. - -mostlyclean : clean - -clean : force - $(RM) *.obj *.lib *.exp *.dll core - $(RM) avcall-i386.s - $(RM) tests.obj tests.s tests.exe uniq-u.exe tests.out - -distclean : clean - $(RM) config.status config.log config.cache Makefile avcall.h tests.output.* - -maintainer-clean : distclean - -force : - DELETED ffcall/avcall/PLATFORMS Index: ffcall/avcall/PLATFORMS ================================================================== --- ffcall/avcall/PLATFORMS +++ /dev/null @@ -1,40 +0,0 @@ -Supported CPUs: (Put the GNU config.guess values here.) - - CPU GNU config.guess value machine OS - - i386 i486-unknown-linux (gcc) i386/486/586 Linux - i386-unknown-sysv4.0 (gcc, i386 Consensys - /usr/bin/cc, /usr/ucb/cc) - i386-pc-solaris2.6 (gcc) i386/486/586 Solaris - i486-unknown-sco3.2v4.2 (gcc, cc -Of) i386/486/586 SCO - i386-pc-cygwin32 (gcc) i386/486/586 Cygwin32 - i386-pc-win32 (msvc4, msvc5) i386/486/586 Win32 - m68k m68k-next-nextstep3 (cc) NeXT NeXTstep 3 - m68k-sun-sunos4.0 (cc) Sun3 SunOS 4.0.3 - m68k-unknown-linux (gcc) Amiga3000 Linux - mips mips-sgi-irix4.0.5 (gcc, SGI mips Irix 4.0.x - cc -ansi, cc -D__STDC__, cc -cckr) - mips-sgi-irix5.2 (gcc, cc -ansi, ...) SGI mips Irix 5.2 - mips-sgi-irix5.3 (gcc, cc -ansi, ...) SGI mips Irix 5.3 - mips-sgi-irix6.2 (cc -32) SGI mips3 Irix 6.2 - mips-sgi-irix6.4 (cc -32, -n32, -64) SGI mips3 Irix 6.4 - sparc sparc-sun-sunos4.1.1 (gcc, cc) Sun4 Sparc SunOS 4.x - sparc-sun-solaris2.3 (gcc) Sun4 Sparc SunOS 5.x - sparc-sun-solaris2.4 (gcc, cc) Sun4 Sparc SunOS 5.x - alpha alpha-dec-osf3.0 (gcc, cc) DEC Alpha OSF/1 3.0 - alpha-dec-osf4.0 (gcc, cc) DEC Alpha OSF/1 4.0 - hppa hppa1.0-hp-hpux8.00 (gcc, HP 9000/8xx HP-UX 8.0x - cc, c89, cc -Aa) - hppa1.1-hp-hpux9.05 (cc) HP 9000/8xx HP-UX 9.0x - hppa1.1-hp-hpux10.01 (cc) HP 9000/8xx HP-UX 10.0x - hppa2.0-hp-hpux10.20 (cc +DA1.1) HP 9000/8xx HP-UX 10.20 - arm -- untested - rs6000 rs6000-ibm-aix3.2.5 (gcc, cc, c89, xlc) IBM RS/6000 AIX 3.2.5 - powerpc-ibm-aix4.1.4.0 (cc) - powerpc-unknown-linux (gcc) Apple PPC LinuxPPC - powerpc-apple-darwin6.8 (gcc) Apple PPC MacOS X - m88k -- untested - convex -- untested - ia64 ia64-unknown-linux (gcc) HP NUE/x86 Linux - x86_64 x86_64-suse-linux (gcc) AMD64 Linux - DELETED ffcall/avcall/README Index: ffcall/avcall/README ================================================================== --- ffcall/avcall/README +++ /dev/null @@ -1,69 +0,0 @@ -avcall - calling C functions with variable arguments - -This library allows arbitrary C functions to be called from embedded -interpreters, debuggers, RPC calls, etc, by building up a C -argument-list incrementally from explicitly typed arguments. This -considerably reduces the amount of boilerplate glue code required -for such applications. - -The interface is like stdargs/varargs in reverse and is intended to be as -portable as possible, however the details of function calling are highly -machine-dependent so your mileage may vary. At the very least there are -typically built-in limits on the size of the argument-list. The -argument-pushing macros all return 0 for success, < 0 for error (eg, -arg-list overflow). - - -Installation instructions: - ./configure - make - make check - make install - - -Files in this package: - - Documentation: - - README this text - COPYING free software license - PLATFORMS list of supported platforms - avcall.3 manual page in Unix man format - avcall.man manual page - avcall.html manual page in HTML format - DOC documentation - - Source: - - avcall.h.in master for main include file avcall.h - avcall-*.c source for the interface function - avcall-*.[sS] its translation to assembly language - structcpy.c auxiliary function - tests.c test program - - Installation: - - configure configuration script - configure.in autoconf-2.12 source for the configuration script - ../autoconf/* auxiliary configuration scripts - Makefile.in Makefile master - config.h.in config.h master - - Porting: - - Makefile.devel developer's Makefile - underscore.h used to build the *.S files - - -The current code is under the GNU licence, but the interface (macro -names, arguments & functionality but not the actual macro or function -code in avcall.[ch]) is absolutely free and any port conforming to it is -welcome. - ------------------------------------------------------- -Bill Triggs | Bill.Triggs@inrialpes.fr -Oxford University Robotics Group | Bill.Triggs@imag.fr -19 Parks Rd, Oxford OX1 3PJ, G.B. | fax +44-865-273908 ------------------------------------------------------- -Bruno Haible - DELETED ffcall/avcall/asmarm.h Index: ffcall/avcall/asmarm.h ================================================================== --- ffcall/avcall/asmarm.h +++ /dev/null @@ -1,20 +0,0 @@ -// Assembly language support for arm CPU. -// Bruno Haible 29.5.1999 - -#ifdef ASM_UNDERSCORE -#ifdef __STDC__ -#define C(entrypoint) _##entrypoint -#else -#define C(entrypoint) _/**/entrypoint -#endif -#else -#define C(entrypoint) entrypoint -#endif - -// When assembly language code is compiled into a shared library, ELF linkers -// need to know which symbols are functions. -#if defined(__NetBSD__) -#define DECLARE_FUNCTION(name) .type C(name),%function -#else -#define DECLARE_FUNCTION(name) -#endif DELETED ffcall/avcall/asmarm.sh Index: ffcall/avcall/asmarm.sh ================================================================== --- ffcall/avcall/asmarm.sh +++ /dev/null @@ -1,35 +0,0 @@ -#!/bin/sh -# Translate the assembler syntax of arm assembler programs -# Usage: asmarm < riscix-asm-file > portable-asm-file -# The portable-asm-file has to be -# 1. preprocessed, -# 2. grep -v '^ *#line' | grep -v '^#' -# 3. sed -e 's,% ,%,g' -e 's,//,@,g' -e 's,\$,#,g' - -tmpscript1=sed$$tmp1 -tmpscript2=sed$$tmp2 -tmpremove='rm -f $tmpscript1 $tmpscript2' -trap "$tmpremove" 1 2 15 - -cat > $tmpscript1 << \EOF -# ----------- Remove gcc self-identification -/gcc2_compiled/d -/gnu_compiled_c/d -EOF - -cat > $tmpscript2 << \EOF -# ----------- Hide comments, to avoid trouble in preprocessing -s,@,//,g -# ----------- Turn # into $, to avoid trouble in preprocessing -s,#,\$,g -# ----------- Declare global symbols as functions (we have no variables) -s/\.global _\([A-Za-z0-9_]*\)$/.global _\1\ - DECLARE_FUNCTION(\1)/ -# ----------- Global symbols depends on ASM_UNDERSCORE -s/_\([A-Za-z0-9_:]*\)/C(\1)/ -EOF - -sed -f $tmpscript1 | \ -sed -f $tmpscript2 - -eval "$tmpremove" DELETED ffcall/avcall/asmi386.h Index: ffcall/avcall/asmi386.h ================================================================== --- ffcall/avcall/asmi386.h +++ /dev/null @@ -1,263 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -#ifdef _MSC_VER -#define C(entrypoint) entrypoint -#define L(label) L##label -#else -#ifdef ASM_UNDERSCORE -#define C(entrypoint) _##entrypoint -#define L(label) L##label -#else -#define C(entrypoint) entrypoint -#define L(label) .L##label -#endif -#endif - - - - - -#ifdef _MSC_VER -#define INTEL_SYNTAX -#else - - - -#ifdef ASM_UNDERSCORE -#define BSD_SYNTAX -#else -#define ELF_SYNTAX -#endif -#endif - -#if defined (BSD_SYNTAX) || defined (ELF_SYNTAX) -#define R(r) %r -#define NUM(n) $##n -#define ADDR(a) $##a -#define X1 -#define X2 -#define X4 -#define X8 -#define MEM(base)(R(base)) -#define MEM_DISP(base,displacement)displacement(R(base)) -#define MEM_INDEX(base,index)(R(base),R(index)) -#define MEM_SHINDEX(base,index,size)(R(base),R(index),size) -#define MEM_DISP_SHINDEX0(displacement,index,size)displacement(,R(index),size) -#define MEM_DISP_SHINDEX(base,displacement,index,size)displacement(R(base),R(index),size) -#define INDIR(value)*value -#define INSNCONC(mnemonic,size_suffix)mnemonic##size_suffix -#define INSN1(mnemonic,size_suffix,dst)INSNCONC(mnemonic,size_suffix) dst -#define INSN2(mnemonic,size_suffix,src,dst)INSNCONC(mnemonic,size_suffix) src,dst -#define INSN2MOVX(mnemonic,size_suffix,src,dst)INSNCONC(mnemonic,size_suffix##l) src,dst -#if defined(BSD_SYNTAX) || defined(COHERENT) -#define INSN2SHCL(mnemonic,size_suffix,src,dst)INSNCONC(mnemonic,size_suffix) R(cl),src,dst -#define REPZ repe ; -#else -#define INSN2SHCL(mnemonic,size_suffix,src,dst)INSNCONC(mnemonic,size_suffix) src,dst -#define REPZ repz ; -#endif -#define REP rep ; -#if defined(BSD_SYNTAX) && !(defined(__CYGWIN32__) || defined(__MINGW32__)) -#define ALIGN(log) .align log,0x90 -#endif -#if defined(ELF_SYNTAX) || defined(__CYGWIN32__) || defined(__MINGW32__) -#define ALIGN(log) .align 1< all-asm-file -# Warning! All comments are stripped. - -tmpscript01=sed$$tmp01 -tmpscript02=sed$$tmp02 -tmpscript03=sed$$tmp03 -tmpscript04=sed$$tmp04 -tmpscript05=sed$$tmp05 -tmpscript06=sed$$tmp06 -tmpscript07=sed$$tmp07 -tmpscript08=sed$$tmp08 -tmpscript09=sed$$tmp09 -tmpscript10=sed$$tmp10 -tmpscript11=sed$$tmp11 -tmpremove='rm -f $tmpscript01 $tmpscript02 $tmpscript03 $tmpscript04 $tmpscript05 $tmpscript06 $tmpscript07 $tmpscript08 $tmpscript09 $tmpscript10 $tmpscript11' -trap "$tmpremove" 1 2 15 - -cat > $tmpscript01 << \EOF -# ----------- Strip comments -s,# .*,, -s,[ ][ ]*$,, -EOF - -cat > $tmpscript02 << \EOF -# ----------- Remove #APP/#NO_APP lines, add a blank line at the end -/^#APP$/d -/^#NO_APP$/d -/gcc2_compiled/d -/gnu_compiled_c/d -EOF - -cat > $tmpscript03 << \EOF -# ----------- Global symbols depends on ASM_UNDERSCORE -s/_\([A-Za-z0-9_:]*\)/C(\1)/ -EOF - -cat > $tmpscript04 << \EOF -# ----------- Introduce macro syntax for operands -s/\([-+0-9A-Z_]\+\)[(]%\(e..\)[)]/MEM_DISP(\2,\1)/g -s/[(]%\(e..\)[)]/MEM(\1)/g -s/\([-+0-9A-Z_]\+\)[(],%\(e..\),\([0-9]*\)[)]/MEM_DISP_SHINDEX0(\1,\2,\3)/g -s/\([-+0-9A-Z_]\+\)[(]%\(e..\),%\(e..\),\([0-9]*\)[)]/MEM_DISP_SHINDEX(\2,\1,\3,\4)/g -s/[(]%\(e..\),%\(e..\),\([0-9]*\)[)]/MEM_SHINDEX(\1,\2,\3)/g -s/[(]%\(e..\),%\(e..\)[)]/MEM_INDEX(\1,\2)/g -EOF - -cat > $tmpscript05 << \EOF -# ----------- Introduce macro syntax for instructions -s/\(push\|pop\|mul\|div\|not\|neg\|inc\|dec\|fld\|fstp\)\(.\)\( \+\)\(.*\)$/INSN1(\1,\2 ,\4)/ -s/\(call\|jmp\|jc\|jnc\|je\|jne\|jz\|jnz\|ja\|jae\|jb\|jbe\|jl\|jge\|js\|jns\)\( \+\)\(.*\)$/INSN1(\1,_ ,\3)/ -s/\(movs\|movz\)\(.\)l\( \+\)\(.*\)$/INSN2MOVX(\1,\2 ,\4)/ -s/\(mov\|add\|sub\|adc\|sbb\|xor\|test\|cmp\|rcl\|rcr\|and\|or\|sar\|shr\|shl\|lea\)\(.\)\( \+\)\(.*\)$/INSN2(\1,\2 ,\4)/ -s/\(shld\|shrd\)\(.\)\( \+\)shcl\( \+\)\(.*\)$/INSN2SHCL(\1,\2 ,\5)/ -s/rep ;/REP/ -s/repz ;/REPZ/ -EOF - -cat > $tmpscript06 << \EOF -# ----------- Add size prefixes to memory references' \ -s/\([(]f[^(,]*,s.*\),MEM/\1,X4 MEM/g -s/\([(]f[^(,]*,l.*\),MEM/\1,X8 MEM/g -s/\([(][^(,]*,b.*\),MEM/\1,X1 MEM/g -s/\([(][^(,]*,w.*\),MEM/\1,X2 MEM/g -s/\([(][^(,]*,l.*\),MEM/\1,X4 MEM/g -EOF - -cat > $tmpscript07 << \EOF -# ----------- Introduce macro syntax for register names -s/%\(e..\)/R(\1)/g -s/%\(..\)/R(\1)/g -s/\$\([-0-9]*\)/NUM(\1)/g -EOF - -cat > $tmpscript08 << \EOF -# ----------- Treat table jumps (hairy) -# (Needed because the MSVC inline assembler does not have pseudo-ops. -# Note that we transform a table of absolute addresses with 4 bytes -# per entry into a table of absolute addresses with 8 bytes per entry.) -s/^ \.long \(.*\)$/#ifdef _MSC_VER\ - nop\ - nop\ - push \1\ -#else\ - .long \1\ -#endif/ -s/^ \(INSN1[(]jmp,_[^,]*,\)\*MEM_DISP_SHINDEX0[(]\([^,)]*\),\([^,)]*\),4[)][)]$/#ifdef _MSC_VER\ - INSN2(lea,l ,MEM_DISP_SHINDEX0(\2+8,\3,8),R(\3))\ - INSN2(mov,l ,X4 MEM_DISP(\3,-4),R(\3))\ - INSN1(jmp,_ ,INDIR(R(\3)))\ -#else\ - \1INDIR(MEM_DISP_SHINDEX0(\2,\3,4)))\ -#endif/ -EOF - -cat > $tmpscript09 << \EOF -# ----------- Treat indirect calls -s/\(INSN1[(]\(call\|jmp\),_[^,]*,\)\*\(R[(][^)]*[)]\)[)]$/\1INDIR(\3))/ -EOF - -cat > $tmpscript10 << \EOF -# ----------- Introduce macro syntax for assembler pseudo-ops -/\.file\([ ]\+\)/d -s/\.text/TEXT()/ -s/^\([^#]*\)\.align \(.*\)/\1ALIGN(\2)/ -s/\.globl\( \+\)\(.*\)$/GLOBL(\2)/ -s/^C(\([A-Za-z0-9_]*\):)/FUNBEGIN(\1)/ -# The next 5 lines add FUNEND() after each ret followed by an empty line -/[ ]ret *$/{ -n -/^$/s/^$/FUNEND()\ -/ -} -EOF - -cat > $tmpscript11 << \EOF -# ----------- Declare global symbols as functions (we have no variables) -s/GLOBL(C(\([A-Za-z0-9_]*\)))$/GLOBL(C(\1))\ - DECLARE_FUNCTION(\1)/ -EOF - -sed -f $tmpscript01 | \ -sed -f $tmpscript02 | \ -(cat - ; echo) | \ -(if [ $# = 1 -a "x$1" = "x-no-C" ] ; then cat - ; else sed -f $tmpscript03 ; fi) | \ -sed -f $tmpscript04 | \ -sed -f $tmpscript05 | \ -sed -f $tmpscript06 | \ -sed -f $tmpscript07 | \ -sed -f $tmpscript08 | \ -sed -f $tmpscript09 | \ -sed -f $tmpscript10 | \ -(if [ $# = 1 -a "x$1" = "x-no-C" ] ; then cat - ; else sed -f $tmpscript11 ; fi) - -eval "$tmpremove" - DELETED ffcall/avcall/asmm68k.h Index: ffcall/avcall/asmm68k.h ================================================================== --- ffcall/avcall/asmm68k.h +++ /dev/null @@ -1,22 +0,0 @@ -// Assembly language support for m68k CPU. -// Bruno Haible 29.5.1999 - -#ifdef ASM_UNDERSCORE -// SunOS, NetBSD, OpenBSD, Linux/a.out -#ifdef __STDC__ -#define C(entrypoint) _##entrypoint -#else -#define C(entrypoint) _/**/entrypoint -#endif -#else -// SVR4, A/UX, AMIX, Atari, Linux/ELF -#define C(entrypoint) entrypoint -#endif - -// When assembly language code is compiled into a shared library, ELF linkers -// need to know which symbols are functions. -#if defined(__NetBSD__) || defined(__OpenBSD__) || defined(__ELF__) || defined(__svr4__) -#define DECLARE_FUNCTION(name) .type C(name),@function -#else -#define DECLARE_FUNCTION(name) -#endif DELETED ffcall/avcall/asmm68k.sh Index: ffcall/avcall/asmm68k.sh ================================================================== --- ffcall/avcall/asmm68k.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/bin/sh -# Translate the assembler syntax of m68k assembler programs -# Usage: asmm68k < sunos-asm-file > portable-asm-file -# The portable-asm-file has to be -# 1. preprocessed, -# 2. grep -v '^ *#line' | grep -v '^#' -# 3. sed -e 's,% ,%,g' -e 's,//.*$,,' - -tmpscript1=sed$$tmp1 -tmpscript2=sed$$tmp2 -tmpremove='rm -f $tmpscript1 $tmpscript2' -trap "$tmpremove" 1 2 15 - -cat > $tmpscript1 << \EOF -# ----------- Remove #APP/#NO_APP lines -/^#APP$/d -/^#NO_APP$/d -# ----------- Remove gcc self-identification -/gcc2_compiled/d -/gnu_compiled_c/d -EOF - -cat > $tmpscript2 << \EOF -# ----------- Prefix register names with $, to be turned into % later -s/,/, /g -s/\([^A-Za-z0-9_]\)\([ad][0-7]\|sp\|fp[0-7]\)\([^A-Za-z0-9_]\)/\1$\2\3/g -s/\([^A-Za-z0-9_]\)\([ad][0-7]\|sp\|fp[0-7]\)$/\1$\2/g -s/, /,/g -# ----------- Declare global symbols as functions (we have no variables) -s/\.globl _\([A-Za-z0-9_]*\)$/.globl _\1\ - DECLARE_FUNCTION(\1)/ -# ----------- Global symbols depends on ASM_UNDERSCORE -s/_\([A-Za-z0-9_:]*\)/C(\1)/ -EOF - -sed -f $tmpscript1 | \ -sed -f $tmpscript2 - -eval "$tmpremove" DELETED ffcall/avcall/asmmips.h Index: ffcall/avcall/asmmips.h ================================================================== --- ffcall/avcall/asmmips.h +++ /dev/null @@ -1,10 +0,0 @@ -// Assembly language support for mips CPU. -// Bruno Haible 29.5.1999 - -// When assembly language code is compiled into a shared library, ELF linkers -// need to know which symbols are functions. -#if defined(__GNU__) || defined(__NetBSD__) -#define DECLARE_FUNCTION(name) .type name,@function -#else -#define DECLARE_FUNCTION(name) -#endif DELETED ffcall/avcall/asmmips.sh Index: ffcall/avcall/asmmips.sh ================================================================== --- ffcall/avcall/asmmips.sh +++ /dev/null @@ -1,31 +0,0 @@ -#!/bin/sh -# Translate the assembler syntax of mips assembler programs -# Usage: asmmips < irix-asm-file > portable-asm-file -# The portable-asm-file has to be -# 1. preprocessed, -# 2. grep -v '^ *#line' | grep -v '^#' -# 3. sed -e 's,% ,%,g' -e 's,//.*$,,' - -tmpscript1=sed$$tmp1 -tmpscript2=sed$$tmp2 -tmpremove='rm -f $tmpscript1 $tmpscript2' -trap "$tmpremove" 1 2 15 - -cat > $tmpscript1 << \EOF -# ----------- Remove gcc self-identification -/gcc2_compiled/d -/gnu_compiled_c/d -EOF - -cat > $tmpscript2 << \EOF -# ----------- Remove comments, they would cause trouble in preprocessing -s,#.*$,, -# ----------- Declare global symbols as functions (we have no variables) -s/\.globl \([A-Za-z0-9_]*\)$/.globl \1\ - DECLARE_FUNCTION(\1)/ -EOF - -sed -f $tmpscript1 | \ -sed -f $tmpscript2 - -eval "$tmpremove" DELETED ffcall/avcall/asmsparc.h Index: ffcall/avcall/asmsparc.h ================================================================== --- ffcall/avcall/asmsparc.h +++ /dev/null @@ -1,29 +0,0 @@ -// Assembly language support for sparc CPU. -// Bruno Haible 29.5.1999 - -#ifdef ASM_UNDERSCORE -// SunOS4, Linux/a.out -#ifdef __STDC__ -#define C(entrypoint) _##entrypoint -#else -#define C(entrypoint) _/**/entrypoint -#endif -#else -// Solaris, Linux/ELF -#define C(entrypoint) entrypoint -#endif - -// When assembly language code is compiled into a shared library, ELF linkers -// need to know which symbols are functions. -#if defined(__NetBSD__) || defined(__OpenBSD__) -#define DECLARE_FUNCTION(name) .type C(name),@function -#elif defined(__svr4__) || defined(__ELF__) -// Solaris, Linux/ELF -// Some preprocessors keep the backslash in place, some don't. -// Some complain about the # being not in front of an ANSI C macro. -// Therefore we use a dollar, which will be sed-converted to # later. -#define DECLARE_FUNCTION(name) .type C(name),$function -#else -// SunOS4, Linux/a.out -#define DECLARE_FUNCTION(name) -#endif DELETED ffcall/avcall/asmsparc.sh Index: ffcall/avcall/asmsparc.sh ================================================================== --- ffcall/avcall/asmsparc.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/sh -# Translate the assembler syntax of sparc assembler programs -# Usage: asmsparc < sunos4-asm-file > portable-asm-file -# The portable-asm-file has to be -# 1. preprocessed, -# 2. grep -v '^ *#line' | grep -v '^#' -# 3. sed -e 's,% ,%,g' -e 's,//.*$,,' -e 's,\$,#,g' - -tmpscript1=sed$$tmp1 -tmpscript2=sed$$tmp2 -tmpremove='rm -f $tmpscript1 $tmpscript2' -trap "$tmpremove" 1 2 15 - -cat > $tmpscript1 << \EOF -# ----------- Remove gcc self-identification -/gcc2_compiled/d -/gnu_compiled_c/d -EOF - -cat > $tmpscript2 << \EOF -# ----------- Turn # into $, to avoid trouble in preprocessing -s,#,\$,g -# ----------- Declare global symbols as functions (we have no variables) -s/\.global _\([A-Za-z0-9_]*\)$/.global _\1\ - DECLARE_FUNCTION(\1)/ -# ----------- Global symbols depends on ASM_UNDERSCORE -s/_\([A-Za-z0-9_:]*\)/C(\1)/ -EOF - -sed -f $tmpscript1 | \ -sed -f $tmpscript2 - -eval "$tmpremove" DELETED ffcall/avcall/asmsparc64.sh Index: ffcall/avcall/asmsparc64.sh ================================================================== --- ffcall/avcall/asmsparc64.sh +++ /dev/null @@ -1,31 +0,0 @@ -#!/bin/sh -# Translate the assembler syntax of sparc64 assembler programs -# Usage: asmsparc < sparclinux-asm-file > portable-asm-file -# The portable-asm-file has to be -# 1. preprocessed, -# 2. grep -v '^ *#line' | grep -v '^#' -# 3. sed -e 's,% ,%,g' -e 's,//.*$,,' -e 's,\$,#,g' - -tmpscript1=sed$$tmp1 -tmpscript2=sed$$tmp2 -tmpremove='rm -f $tmpscript1 $tmpscript2' -trap "$tmpremove" 1 2 15 - -cat > $tmpscript1 << \EOF -# ----------- Remove gcc self-identification -/gcc2_compiled/d -/gnu_compiled_c/d -EOF - -cat > $tmpscript2 << \EOF -# ----------- Turn # into $, to avoid trouble in preprocessing -s,#,\$,g -# ----------- Declare global symbols as functions (we have no variables) -s/\.global \([A-Za-z0-9_]*\)$/.global \1\ - DECLARE_FUNCTION(\1)/ -EOF - -sed -f $tmpscript1 | \ -sed -f $tmpscript2 - -eval "$tmpremove" DELETED ffcall/avcall/avcall-alpha.c Index: ffcall/avcall/avcall-alpha.c ================================================================== --- ffcall/avcall/avcall-alpha.c +++ /dev/null @@ -1,183 +0,0 @@ -#ifndef _avcall_alpha_c /*-*- C -*-*/ -#define _avcall_alpha_c -/** - Copyright 1993 Bill Triggs, - Copyright 1995-1999 Bruno Haible, - - This is free software distributed under the GNU General Public - Licence described in the file COPYING. Contact the author if - you don't have this or can't live with it. There is ABSOLUTELY - NO WARRANTY, explicit or implied, on this software. -**/ -/*---------------------------------------------------------------------- - !!! THIS ROUTINE MUST BE COMPILED gcc -O !!! - - Foreign function interface for a DEC Alpha with gcc. - - This calls a C function with an argument list built up using macros - defined in av_call.h. - - Alpha Argument Passing Conventions - - The first 6 arguments are passed in registers $16-$21 for integers, - in registers $f16-$f21 for floats. From then on, everything is passed - on the stack. - - Everything on the stack is word-aligned. - - Integers and pointers are returned in $0, floats and doubles in $f0. - To return a structure, the called function copies the value to space - pointed to by its first argument, and all other arguments are shifted - down by one. - - Compile this routine with gcc for the __asm__ extensions and with - optimisation on (-O or -O2 or -g -O) so that argframe is set to the - correct offset. - ----------------------------------------------------------------------*/ -#include "avcall.h.in" - -#define RETURN(TYPE,VAL) (*(TYPE*)l->raddr = (TYPE)(VAL)) - -int -__builtin_avcall(av_alist* l) -{ - register __avword* sp __asm__("$30"); /* C names for registers */ - register long arg1 __asm__("$16"); - register long arg2 __asm__("$17"); - register long arg3 __asm__("$18"); - register long arg4 __asm__("$19"); - register long arg5 __asm__("$20"); - register long arg6 __asm__("$21"); - register double fret __asm__("$f0"); - register double farg1 __asm__("$f16"); - register double farg2 __asm__("$f17"); - register double farg3 __asm__("$f18"); - register double farg4 __asm__("$f19"); - register double farg5 __asm__("$f20"); - register double farg6 __asm__("$f21"); -/*register __avword iret __asm__("$0"); */ - register __avword iret2 __asm__("$1"); - - __avword* argframe = (sp -= __AV_ALIST_WORDS); /* make room for argument list */ - int arglen = ((unsigned long) l->aptr - (unsigned long) l->args) >> 3; - __avword i, i2; - - for (i = 6; i < arglen; i++) /* push excess function args */ - argframe[i-6] = l->args[i]; - - /* call function with 1st 6 args */ - /* we pass the args both in the integer registers and the floating point - registers, so we don't have to store the argument types. */ - __asm__ __volatile__ ("ldq $16,%0" : : "m" (l->args[0])); /* arg1 = l->args[0]; */ - __asm__ __volatile__ ("ldt $f16,%0" : : "m" (l->args[0])); /* farg1 = *(double*) &l->args[0]; */ - __asm__ __volatile__ ("ldq $17,%0" : : "m" (l->args[1])); /* arg2 = l->args[1]; */ - __asm__ __volatile__ ("ldt $f17,%0" : : "m" (l->args[1])); /* farg2 = *(double*) &l->args[1]; */ - __asm__ __volatile__ ("ldq $18,%0" : : "m" (l->args[2])); /* arg3 = l->args[2]; */ - __asm__ __volatile__ ("ldt $f18,%0" : : "m" (l->args[2])); /* farg3 = *(double*) &l->args[2]; */ - __asm__ __volatile__ ("ldq $19,%0" : : "m" (l->args[3])); /* arg4 = l->args[3]; */ - __asm__ __volatile__ ("ldt $f19,%0" : : "m" (l->args[3])); /* farg4 = *(double*) &l->args[3]; */ - __asm__ __volatile__ ("ldq $20,%0" : : "m" (l->args[4])); /* arg5 = l->args[4]; */ - __asm__ __volatile__ ("ldt $f20,%0" : : "m" (l->args[4])); /* farg5 = *(double*) &l->args[4]; */ - __asm__ __volatile__ ("ldq $21,%0" : : "m" (l->args[5])); /* arg6 = l->args[5]; */ - __asm__ __volatile__ ("ldt $f21,%0" : : "m" (l->args[5])); /* farg6 = *(double*) &l->args[5]; */ - i = (*l->func)(); - i2 = iret2; - sp += __AV_ALIST_WORDS; /* remove argument list from the stack */ - /* this is apparently not needed, but better safe than sorry... */ - __asm__ __volatile__ ("" : : : - /* clobber */ "$16", "$17", "$18", "$19", "$20", "$21", - "$f16","$f17","$f18","$f19","$f20","$f21"); - - /* save return value */ - if (l->rtype == __AVvoid) { - } else - if (l->rtype == __AVword) { - RETURN(__avword, i); - } else - if (l->rtype == __AVchar) { - RETURN(char, i); - } else - if (l->rtype == __AVschar) { - RETURN(signed char, i); - } else - if (l->rtype == __AVuchar) { - RETURN(unsigned char, i); - } else - if (l->rtype == __AVshort) { - RETURN(short, i); - } else - if (l->rtype == __AVushort) { - RETURN(unsigned short, i); - } else - if (l->rtype == __AVint) { - RETURN(int, i); - } else - if (l->rtype == __AVuint) { - RETURN(unsigned int, i); - } else - if (l->rtype == __AVlong) { - RETURN(long, i); - } else - if (l->rtype == __AVulong) { - RETURN(unsigned long, i); - } else - if (l->rtype == __AVlonglong) { - RETURN(long long, i); - } else - if (l->rtype == __AVulonglong) { - RETURN(unsigned long long, i); - } else - if (l->rtype == __AVfloat) { - RETURN(float, fret); - } else - if (l->rtype == __AVdouble) { - RETURN(double, fret); - } else - if (l->rtype == __AVvoidp) { - RETURN(void*, i); - } else - if (l->rtype == __AVstruct) { - if (l->flags & __AV_PCC_STRUCT_RETURN) { - /* pcc struct return convention: need a *(TYPE*)l->raddr = *(TYPE*)i; */ - if (l->rsize == sizeof(char)) { - RETURN(char, *(char*)i); - } else - if (l->rsize == sizeof(short)) { - RETURN(short, *(short*)i); - } else - if (l->rsize == sizeof(int)) { - RETURN(int, *(int*)i); - } else - if (l->rsize == sizeof(long)) { - RETURN(long, *(long*)i); - } else { - int n = (l->rsize + sizeof(__avword)-1)/sizeof(__avword); - while (--n >= 0) - ((__avword*)l->raddr)[n] = ((__avword*)i)[n]; - } - } else { - /* normal struct return convention */ - if (l->flags & __AV_REGISTER_STRUCT_RETURN) { - if (l->rsize == sizeof(char)) { - RETURN(char, i); - } else - if (l->rsize == sizeof(short)) { - RETURN(short, i); - } else - if (l->rsize == sizeof(int)) { - RETURN(int, i); - } else - if (l->rsize == sizeof(long)) { - RETURN(long, i); - } else - if (l->rsize == 2*sizeof(__avword)) { - ((__avword*)l->raddr)[0] = i; - ((__avword*)l->raddr)[1] = i2; - } - } - } - } - return 0; -} - -#endif /*_avcall_alpha_c */ DELETED ffcall/avcall/avcall-alpha.s Index: ffcall/avcall/avcall-alpha.s ================================================================== --- ffcall/avcall/avcall-alpha.s +++ /dev/null @@ -1,251 +0,0 @@ - .set noreorder - .set volatile - .set noat - .file 1 "avcall-alpha.c" -gcc2_compiled.: -__gnu_compiled_c: -.text - .align 3 - .globl __builtin_avcall - .ent __builtin_avcall -__builtin_avcall: -__builtin_avcall..ng: - lda $30,-16($30) - .frame $30,16,$26,0 - stq $26,0($30) - stq $9,8($30) - .mask 0x4000200,-16 - .prologue 1 - bis $16,$16,$9 - lda $30,-2048($30) - bis $30,$30,$4 - ldq $1,40($9) - subq $1,48,$1 - subq $1,$9,$1 - srl $1,3,$1 - addl $1,$31,$3 - bis $31,6,$0 - cmplt $0,$3,$1 - beq $1,$35 - .align 5 -$37: - s8addq $0,0,$1 - addq $1,$4,$2 - addq $9,$1,$1 - ldt $f1,48($1) - stt $f1,-48($2) - addq $0,1,$0 - cmplt $0,$3,$1 - bne $1,$37 -$35: - ldq $16,48($9) - ldt $f16,48($9) - ldq $17,56($9) - ldt $f17,56($9) - ldq $18,64($9) - ldt $f18,64($9) - ldq $19,72($9) - ldt $f19,72($9) - ldq $20,80($9) - ldt $f20,80($9) - ldq $21,88($9) - ldt $f21,88($9) - ldq $27,0($9) - jsr $26,($27),0 - bis $1,$1,$3 - lda $30,2048($30) - ldl $1,24($9) - zapnot $1,15,$2 - subq $2,1,$1 - beq $1,$40 - beq $2,$96 - ldl $1,24($9) - subl $1,2,$1 - beq $1,$97 - ldl $1,24($9) - subl $1,3,$1 - beq $1,$97 - ldl $1,24($9) - subl $1,4,$1 - beq $1,$97 - ldl $1,24($9) - subl $1,5,$1 - beq $1,$98 - ldl $1,24($9) - subl $1,6,$1 - beq $1,$98 - ldl $1,24($9) - subl $1,7,$1 - beq $1,$99 - ldl $1,24($9) - subl $1,8,$1 - beq $1,$99 - ldl $1,24($9) - subl $1,9,$1 - beq $1,$96 - ldl $1,24($9) - subl $1,10,$1 - beq $1,$96 - ldl $1,24($9) - subl $1,11,$1 - beq $1,$96 - ldl $1,24($9) - subl $1,12,$1 - beq $1,$96 - ldl $1,24($9) - subl $1,13,$1 - bne $1,$65 - ldq $1,16($9) - cvtts $f0,$f0 - sts $f0,0($1) - br $31,$40 - .align 4 -$65: - ldl $1,24($9) - subl $1,14,$1 - bne $1,$67 - ldq $1,16($9) - stt $f0,0($1) - br $31,$40 - .align 4 -$67: - ldl $1,24($9) - subl $1,15,$1 - beq $1,$96 - ldl $1,24($9) - subl $1,16,$1 - bne $1,$40 - ldl $1,8($9) - blbc $1,$72 - ldq $1,32($9) - subq $1,1,$1 - bne $1,$73 - ldq $1,16($9) - ldq_u $2,0($0) - extbl $2,$0,$2 - ldq_u $3,0($1) - mskbl $3,$1,$3 - insbl $2,$1,$2 - bis $2,$3,$2 - stq_u $2,0($1) - br $31,$40 - .align 4 -$73: - ldq $1,32($9) - subq $1,2,$1 - bne $1,$75 - ldq $3,16($9) - bic $0,6,$1 - ldq $2,0($1) - bic $0,1,$1 - extwl $2,$1,$2 - bic $3,6,$4 - ldq $1,0($4) - bic $3,1,$3 - mskwl $1,$3,$1 - inswl $2,$3,$2 - bis $1,$2,$1 - stq $1,0($4) - br $31,$40 - .align 4 -$75: - ldq $1,32($9) - subq $1,4,$1 - bne $1,$77 - ldq $1,16($9) - lds $f1,0($0) - sts $f1,0($1) - br $31,$40 - .align 4 -$77: - ldq $1,32($9) - subq $1,8,$1 - bne $1,$79 - ldq $1,16($9) - ldt $f1,0($0) - stt $f1,0($1) - br $31,$40 - .align 4 -$79: - ldq $24,32($9) - addq $24,7,$24 - srl $24,3,$24 - subl $24,1,$3 - blt $3,$40 - .align 5 -$83: - s8addq $3,0,$1 - ldq $2,16($9) - addq $2,$1,$2 - addq $0,$1,$1 - ldt $f1,0($1) - stt $f1,0($2) - subl $3,1,$3 - cmplt $3,0,$1 - beq $1,$83 - br $31,$40 - .align 4 -$72: - ldl $1,8($9) - srl $1,9,$1 - blbc $1,$40 - ldq $1,32($9) - subq $1,1,$1 - bne $1,$87 -$97: - ldq $3,16($9) - ldq_u $2,0($3) - mskbl $2,$3,$2 - insbl $0,$3,$1 - bis $1,$2,$1 - stq_u $1,0($3) - br $31,$40 - .align 4 -$87: - ldq $1,32($9) - subq $1,2,$1 - bne $1,$89 -$98: - ldq $1,16($9) - bic $1,6,$3 - ldq $2,0($3) - bic $1,1,$1 - mskwl $2,$1,$2 - inswl $0,$1,$1 - bis $2,$1,$2 - stq $2,0($3) - br $31,$40 - .align 4 -$89: - ldq $1,32($9) - subq $1,4,$1 - bne $1,$91 -$99: - ldq $1,16($9) - stl $0,0($1) - br $31,$40 - .align 4 -$91: - ldq $1,32($9) - subq $1,8,$1 - bne $1,$93 -$96: - ldq $1,16($9) - stq $0,0($1) - br $31,$40 - .align 4 -$93: - ldq $1,32($9) - subq $1,16,$1 - bne $1,$40 - ldq $1,16($9) - stq $0,0($1) - ldq $1,16($9) - stq $3,8($1) -$40: - bis $31,$31,$0 - ldq $26,0($30) - ldq $9,8($30) - addq $30,16,$30 - ret $31,($26),1 - .end __builtin_avcall DELETED ffcall/avcall/avcall-arm.c Index: ffcall/avcall/avcall-arm.c ================================================================== --- ffcall/avcall/avcall-arm.c +++ /dev/null @@ -1,144 +0,0 @@ -#ifndef _avcall_arm_c /*-*- C -*-*/ -#define _avcall_arm_c -/** - Copyright 1993 Bill Triggs, - Copyright 1995-1999 Bruno Haible, - - This is free software distributed under the GNU General Public - Licence described in the file COPYING. Contact the author if - you don't have this or can't live with it. There is ABSOLUTELY - NO WARRANTY, explicit or implied, on this software. -**/ -/*---------------------------------------------------------------------- - !!! THIS ROUTINE MUST BE COMPILED gcc -O !!! - - Foreign function interface for an Acorn Risc Maschine with gcc. - - This calls a C function with an argument list built up using macros - defined in av_call.h. - - ARM Argument Passing Conventions: - - All arguments, except the first 4 words, are passed on the stack with - word alignment. Doubles take two words. Structure args are passed as - true structures embedded in the argument stack. To return a structure, - the called function copies the return value to the address supplied - in register "%r0". - - Compile this routine with gcc -O (or -O2 or -g -O) to get the right - register variables, or use the assembler version. - ----------------------------------------------------------------------*/ -#include "avcall.h.in" - -#define RETURN(TYPE,VAL) (*(TYPE*)l->raddr = (TYPE)(VAL)) - -int -__builtin_avcall(av_alist* l) -{ - register __avword* sp __asm__("r13"); /* C names for registers */ -/*register __avword iret __asm__("r0"); */ - register __avword iret2 __asm__("r1"); - register float fret __asm__("r0"); /* r0 */ - register double dret __asm__("r0"); /* r0,r1 */ - - __avword space[__AV_ALIST_WORDS]; /* space for callee's stack frame */ - __avword* argframe = sp; /* stack offset for argument list */ - int arglen = l->aptr - l->args; - __avword i; - - for (i = 4; i < arglen; i++) /* push function args onto stack */ - argframe[i-4] = l->args[i]; - - /* call function, pass 4 args in registers */ - i = (*l->func)(l->args[0], l->args[1], l->args[2], l->args[3]); - - /* save return value */ - if (l->rtype == __AVvoid) { - } else - if (l->rtype == __AVword) { - RETURN(__avword, i); - } else - if (l->rtype == __AVchar) { - RETURN(char, i); - } else - if (l->rtype == __AVschar) { - RETURN(signed char, i); - } else - if (l->rtype == __AVuchar) { - RETURN(unsigned char, i); - } else - if (l->rtype == __AVshort) { - RETURN(short, i); - } else - if (l->rtype == __AVushort) { - RETURN(unsigned short, i); - } else - if (l->rtype == __AVint) { - RETURN(int, i); - } else - if (l->rtype == __AVuint) { - RETURN(unsigned int, i); - } else - if (l->rtype == __AVlong) { - RETURN(long, i); - } else - if (l->rtype == __AVulong) { - RETURN(unsigned long, i); - } else - if (l->rtype == __AVlonglong || l->rtype == __AVulonglong) { - ((__avword*)l->raddr)[0] = i; - ((__avword*)l->raddr)[1] = iret2; - } else - if (l->rtype == __AVfloat) { - RETURN(float, fret); - } else - if (l->rtype == __AVdouble) { - RETURN(double, dret); - } else - if (l->rtype == __AVvoidp) { - RETURN(void*, i); - } else - if (l->rtype == __AVstruct) { - /* NB: On arm, all structure sizes are divisible by 4. */ - if (l->flags & __AV_PCC_STRUCT_RETURN) { - /* pcc struct return convention: need a *(TYPE*)l->raddr = *(TYPE*)i; */ - if (l->rsize == sizeof(char)) { /* can't occur */ - RETURN(char, *(char*)i); - } else - if (l->rsize == sizeof(short)) { /* can't occur */ - RETURN(short, *(short*)i); - } else - if (l->rsize == sizeof(int)) { - RETURN(int, *(int*)i); - } else - if (l->rsize == sizeof(double)) { - ((int*)l->raddr)[0] = ((int*)i)[0]; - ((int*)l->raddr)[1] = ((int*)i)[1]; - } else { - int n = (l->rsize+3)/4; - while (--n >= 0) - ((__avword*)l->raddr)[n] = ((__avword*)i)[n]; - } - } else { - /* normal struct return convention */ - if (l->flags & __AV_REGISTER_STRUCT_RETURN) { - if (l->rsize == sizeof(char)) { /* can't occur */ - RETURN(char, i); - } else - if (l->rsize == sizeof(short)) { /* can't occur */ - RETURN(short, i); - } else - if (l->rsize == sizeof(int)) { - RETURN(int, i); - } else - if (l->rsize == 2*sizeof(__avword)) { - ((__avword*)l->raddr)[0] = i; - ((__avword*)l->raddr)[1] = iret2; - } - } - } - } - return 0; -} - -#endif /*_avcall_arm_c */ DELETED ffcall/avcall/avcall-convex.c Index: ffcall/avcall/avcall-convex.c ================================================================== --- ffcall/avcall/avcall-convex.c +++ /dev/null @@ -1,144 +0,0 @@ -#ifndef _avcall_convex_c /*-*- C -*-*/ -#define _avcall_convex_c -/** - Copyright 1993 Bill Triggs, - Copyright 1995-1999 Bruno Haible, - - This is free software distributed under the GNU General Public - Licence described in the file COPYING. Contact the author if - you don't have this or can't live with it. There is ABSOLUTELY - NO WARRANTY, explicit or implied, on this software. -**/ -/*---------------------------------------------------------------------- - !!! THIS ROUTINE MUST BE COMPILED gcc -O !!! - - Foreign function interface for a Convex C2 with gcc. - - This calls a C function with an argument list built up using macros - defined in av_call.h. - - Convex Argument Passing Conventions: - - All arguments are passed on the stack with word alignment. Doubles take - two words. Structure args are passed as true structures embedded in the - argument stack. To return a structure, the -fpcc-struct-return convention - is used. - - Compile this routine with gcc -O (or -O2 or -g -O) to get the right - register variables, or use the assembler version. - ----------------------------------------------------------------------*/ -#include "avcall.h.in" - -#define RETURN(TYPE,VAL) (*(TYPE*)l->raddr = (TYPE)(VAL)) - -int -__builtin_avcall(av_alist* l) -{ - register __avword* sp __asm__("sp"); /* C names for registers */ - register long long llret __asm__("s0"); - register float fret __asm__("s0"); - register double dret __asm__("s0"); - - __avword space[__AV_ALIST_WORDS]; /* space for callee's stack frame */ - __avword* argframe = sp; /* stack offset for argument list */ - int arglen = l->aptr - l->args; - __avword i; - - { - int i; - for (i = 0; i < arglen; i++) /* push function args onto stack */ - argframe[i] = l->args[i]; - } - - i = (*l->func)(); /* call function */ - - /* save return value */ - if (l->rtype == __AVvoid) { - } else - if (l->rtype == __AVword) { - RETURN(__avword, i); - } else - if (l->rtype == __AVchar) { - RETURN(char, i); - } else - if (l->rtype == __AVschar) { - RETURN(signed char, i); - } else - if (l->rtype == __AVuchar) { - RETURN(unsigned char, i); - } else - if (l->rtype == __AVshort) { - RETURN(short, i); - } else - if (l->rtype == __AVushort) { - RETURN(unsigned short, i); - } else - if (l->rtype == __AVint) { - RETURN(int, i); - } else - if (l->rtype == __AVuint) { - RETURN(unsigned int, i); - } else - if (l->rtype == __AVlong) { - RETURN(long, i); - } else - if (l->rtype == __AVulong) { - RETURN(unsigned long, i); - } else - if (l->rtype == __AVlonglong) { - RETURN(long long, llret); - } else - if (l->rtype == __AVulonglong) { - RETURN(unsigned long long, llret); - } else - if (l->rtype == __AVfloat) { - RETURN(float, fret); - } else - if (l->rtype == __AVdouble) { - RETURN(double, dret); - } else - if (l->rtype == __AVvoidp) { - RETURN(void*, i); - } else - if (l->rtype == __AVstruct) { - if (l->flags & __AV_PCC_STRUCT_RETURN) { - /* pcc struct return convention: need a *(TYPE*)l->raddr = *(TYPE*)i; */ - if (l->rsize == sizeof(char)) { - RETURN(char, *(char*)i); - } else - if (l->rsize == sizeof(short)) { - RETURN(short, *(short*)i); - } else - if (l->rsize == sizeof(int)) { - RETURN(int, *(int*)i); - } else - if (l->rsize == sizeof(double)) { - ((int*)l->raddr)[0] = ((int*)i)[0]; - ((int*)l->raddr)[1] = ((int*)i)[1]; - } else { - int n = (l->rsize + sizeof(__avword)-1)/sizeof(__avword); - while (--n >= 0) - ((__avword*)l->raddr)[n] = ((__avword*)i)[n]; - } - } else { - /* normal struct return convention */ - if (l->flags & __AV_REGISTER_STRUCT_RETURN) { - if (l->rsize == sizeof(char)) { - RETURN(char, i); - } else - if (l->rsize == sizeof(short)) { - RETURN(short, i); - } else - if (l->rsize == sizeof(int)) { - RETURN(int, i); - } else - if (l->rsize == 2*sizeof(__avword)) { - RETURN(long long, llret); - } - } - } - } - return 0; -} - -#endif /*_avcall_convex_c */ DELETED ffcall/avcall/avcall-convex.s Index: ffcall/avcall/avcall-convex.s ================================================================== --- ffcall/avcall/avcall-convex.s +++ /dev/null @@ -1,178 +0,0 @@ -;NO_APP -.fpmode native -gcc2_compiled.: -___gnu_compiled_c: -.text -.text -.align 2 -.globl ___builtin_avcall - ds.b "g263" - ds.b "+01\0" -___builtin_avcall: - sub.w #1032,sp - ld.w (ap),a4 - ld.w 20(a4),s1 - mov a4,s3 - add.w #-32,s1 - sub.w s3,s1 - cvtw.l s1,s2 - shf #-2,s2 - ld.w #0,s1 - lt.w s1,s2 - jbrs.f L2 - mov sp,a2 - mov a4,a3 - mov s2,a1 - shf #2,a1 - add.w sp,a1 -L4: - ld.w 32(a3),s1 - add.w #4,a3 - st.w s1,(a2) - add.w #4,a2 - lt.w a2,a1 - jbra.t L4 -L2: - ld.w (a4),a1 - st.w a4,-1028(fp) - mov sp,ap - calls (a1) - ld.w 12(fp),ap - ld.w -1028(fp),a4 - ld.w 12(a4),s1 - mov s0,a3 - eq.w #1,s1 - jbrs.t L7 - eq.w #0,s1 - jbrs.t L61 - eq.w #2,s1 - jbrs.t L62 - eq.w #3,s1 - jbrs.t L62 - eq.w #4,s1 - jbrs.t L62 - eq.w #5,s1 - jbrs.t L63 - eq.w #6,s1 - jbrs.t L63 - eq.w #7,s1 - jbrs.t L61 - eq.w #8,s1 - jbrs.t L61 - eq.w #9,s1 - jbrs.t L61 - eq.w #10,s1 - jbrs.t L61 - ld.w 12(a4),s1 - eq.w #11,s1 - jbrs.t L64 - eq.w #12,s1 - jbrs.t L64 - eq.w #13,s1 - jbrs.f L32 - ld.w 8(a4),a1 - st.s s0,(a1) - jbr L7 -L32: - eq.w #14,s1 - jbrs.f L34 - ld.w 8(a4),a1 - st.d s0,(a1) - jbr L7 -L34: - eq.w #15,s1 - jbrs.t L61 - eq.w #16,s1 - jbrs.f L7 - ld.w 4(a4),s2 - mov.w s2,s1 - and #1,s1 - eq.w #0,s1 - jbrs.t L39 - ld.w 16(a4),s1 - eq.w #1,s1 - jbrs.f L40 - ld.w 8(a4),a1 - ld.b (a3),s1 - st.b s1,(a1) - jbr L7 -L40: - eq.w #2,s1 - jbrs.f L42 - ld.w 8(a4),a1 - ld.h (a3),s1 - st.h s1,(a1) - jbr L7 -L42: - eq.w #4,s1 - jbrs.f L44 - ld.w 8(a4),a1 - ld.w (a3),s1 - st.w s1,(a1) - jbr L7 -L44: - eq.w #8,s1 - jbrs.f L46 - ld.w 8(a4),a1 - ld.w (a3),s1 - st.w s1,(a1) - ld.w 8(a4),a1 - ld.w 4(a3),s1 - st.w s1,4(a1) - jbr L7 -L46: - add.w #3,s1 - shf.w #-2,s1 - add.w #-1,s1 - le.w #0,s1 - jbrs.f L7 - shf.w #2,s1 - mov s1,a2 - add.w a3,a2 - mov.w s1,s2 -L50: - ld.w 8(a4),a1 - ld.w (a2),s1 - add.w #-4,a2 - add.w s2,a1 - add.w #-4,s2 - st.w s1,(a1) - lt.w a2,a3 - jbra.f L50 - jbr L7 -L39: - mov.w s2,s1 - and #512,s1 - eq.w #0,s1 - jbrs.t L7 - ld.w 16(a4),s1 - eq.w #1,s1 - jbrs.f L54 -L62: - ld.w 8(a4),a1 - st.b a3,(a1) - jbr L7 -L54: - eq.w #2,s1 - jbrs.f L56 -L63: - ld.w 8(a4),a1 - st.h a3,(a1) - jbr L7 -L56: - eq.w #4,s1 - jbrs.f L58 -L61: - ld.w 8(a4),a1 - st.w a3,(a1) - jbr L7 -L58: - eq.w #8,s1 - jbrs.f L7 -L64: - ld.w 8(a4),a1 - st.l s0,(a1) -L7: - ld.w #0,s0 - rtn - ds.h 0 DELETED ffcall/avcall/avcall-hppa.c Index: ffcall/avcall/avcall-hppa.c ================================================================== --- ffcall/avcall/avcall-hppa.c +++ /dev/null @@ -1,218 +0,0 @@ -#ifndef _avcall_hppa_c /*-*- C -*-*/ -#define _avcall_hppa_c -/** - Copyright 1993 Bill Triggs, - Copyright 1995-1999 Bruno Haible, - - This is free software distributed under the GNU General Public - Licence described in the file COPYING. Contact the author if - you don't have this or can't live with it. There is ABSOLUTELY - NO WARRANTY, explicit or implied, on this software. -**/ -/*---------------------------------------------------------------------- - !!! THIS ROUTINE MUST BE COMPILED gcc -O !!! - - Foreign function interface for a HP Precision Architecture 1.0 with gcc - - This calls a C function with an argument list built up using macros - defined in av_call.h. - - HPPA Argument Passing Conventions: - - All arguments, except the first 4 words, are passed on the stack - - growing down! - with word alignment. Doubles take two words and force - double alignment. Small structures args are passed as true structures - embedded in the argument stack. They force double alignment and - if they - don't fit entirely in the 4 register words - are passed in memory. - The first 2 words are passed like this: - %r26 = first integer arg, %r25 = second integer arg, or - %r26 = high word of double arg, %r25 = low word of double arg. - Similarly for the next 2 words, passed in %r24 and %r23. - Note that other calling conventions would be in effect if we would call - an explicitly named function! - - To return a structure, the called function copies the return value to - the address supplied in register "%r28". - - It is forbidden to modify the stack pointer. - - Compile this routine with gcc -O2 -fomit-frame-pointer to get the right - register variables, then replace the -120 in the second save statement - "stw %r3,-120(0,%r30)" by -1060, or use the assembler version. - ----------------------------------------------------------------------*/ -#include "avcall.h.in" - -#define RETURN(TYPE,VAL) (*(TYPE*)l->raddr = (TYPE)(VAL)) - -/* This declaration tells gcc not to modify %r28. */ -register __avword* sret __asm__("%r28"); /* structure return pointer */ - -int -__builtin_avcall(av_alist* l) -{ - register __avword* sp __asm__("%r30"); /* C names for registers */ - register float fret __asm__("%fr4"); - register double dret __asm__("%fr4"); -/*register __avword iret1 __asm__("%r28"); */ - register __avword iret2 __asm__("%r29"); - - __avword space[__AV_ALIST_WORDS]; /* space for callee's stack frame */ - __avword* argframe = sp - 8; /* stack offset for argument list */ - int arglen = &l->args[__AV_ALIST_WORDS] - l->aptr; - __avword i; - - { - int i; - for (i = -arglen; i < -4; i++) /* push function args onto stack */ - argframe[i] = l->args[__AV_ALIST_WORDS+i]; - } - - if (l->rtype == __AVstruct) /* push struct return address */ - sret = l->raddr; - - /* call function, pass 4 args in registers */ - i = (*l->func)(l->args[__AV_ALIST_WORDS-1], l->args[__AV_ALIST_WORDS-2], - l->args[__AV_ALIST_WORDS-3], l->args[__AV_ALIST_WORDS-4]); - - /* save return value */ - if (l->rtype == __AVvoid) { - } else - if (l->rtype == __AVword) { - RETURN(__avword, i); - } else - if (l->rtype == __AVchar) { - RETURN(char, i); - } else - if (l->rtype == __AVschar) { - RETURN(signed char, i); - } else - if (l->rtype == __AVuchar) { - RETURN(unsigned char, i); - } else - if (l->rtype == __AVshort) { - RETURN(short, i); - } else - if (l->rtype == __AVushort) { - RETURN(unsigned short, i); - } else - if (l->rtype == __AVint) { - RETURN(int, i); - } else - if (l->rtype == __AVuint) { - RETURN(unsigned int, i); - } else - if (l->rtype == __AVlong) { - RETURN(long, i); - } else - if (l->rtype == __AVulong) { - RETURN(unsigned long, i); - } else - if (l->rtype == __AVlonglong || l->rtype == __AVulonglong) { - ((__avword*)l->raddr)[0] = i; - ((__avword*)l->raddr)[1] = iret2; - } else - if (l->rtype == __AVfloat) { - RETURN(float, fret); - } else - if (l->rtype == __AVdouble) { - RETURN(double, dret); - } else - if (l->rtype == __AVvoidp) { - RETURN(void*, i); - } else - if (l->rtype == __AVstruct) { - if (l->flags & __AV_PCC_STRUCT_RETURN) { - /* pcc struct return convention: need a *(TYPE*)l->raddr = *(TYPE*)i; */ - if (l->rsize == sizeof(char)) { - RETURN(char, *(char*)i); - } else - if (l->rsize == sizeof(short)) { - RETURN(short, *(short*)i); - } else - if (l->rsize == sizeof(int)) { - RETURN(int, *(int*)i); - } else - if (l->rsize == sizeof(double)) { - ((int*)l->raddr)[0] = ((int*)i)[0]; - ((int*)l->raddr)[1] = ((int*)i)[1]; - } else { - int n = (l->rsize + sizeof(__avword)-1)/sizeof(__avword); - while (--n >= 0) - ((__avword*)l->raddr)[n] = ((__avword*)i)[n]; - } - } else { - /* normal struct return convention */ - if (l->flags & __AV_SMALL_STRUCT_RETURN) { - if (l->flags & __AV_OLDGCC_STRUCT_RETURN) { - /* gcc <= 2.6.3 returns structs of size 1,2,4 in registers. */ - if (l->rsize == sizeof(char)) { - RETURN(char, i); - } else - if (l->rsize == sizeof(short)) { - RETURN(short, i); - } else - if (l->rsize == sizeof(int)) { - RETURN(int, i); - } - } else { - /* cc, c89 and gcc >= 2.7 return structs of size <= 8 in registers. */ - if (l->rsize == 1) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i); - } else - if (l->rsize == 2) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i>>8); - ((unsigned char *)l->raddr)[1] = (unsigned char)(i); - } else - if (l->rsize == 3) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i>>16); - ((unsigned char *)l->raddr)[1] = (unsigned char)(i>>8); - ((unsigned char *)l->raddr)[2] = (unsigned char)(i); - } else - if (l->rsize == 4) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i>>24); - ((unsigned char *)l->raddr)[1] = (unsigned char)(i>>16); - ((unsigned char *)l->raddr)[2] = (unsigned char)(i>>8); - ((unsigned char *)l->raddr)[3] = (unsigned char)(i); - } else - if (l->rsize == 5) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i>>24); - ((unsigned char *)l->raddr)[1] = (unsigned char)(i>>16); - ((unsigned char *)l->raddr)[2] = (unsigned char)(i>>8); - ((unsigned char *)l->raddr)[3] = (unsigned char)(i); - ((unsigned char *)l->raddr)[4] = (unsigned char)(iret2); - } else - if (l->rsize == 6) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i>>24); - ((unsigned char *)l->raddr)[1] = (unsigned char)(i>>16); - ((unsigned char *)l->raddr)[2] = (unsigned char)(i>>8); - ((unsigned char *)l->raddr)[3] = (unsigned char)(i); - ((unsigned char *)l->raddr)[4] = (unsigned char)(iret2>>8); - ((unsigned char *)l->raddr)[5] = (unsigned char)(iret2); - } else - if (l->rsize == 7) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i>>24); - ((unsigned char *)l->raddr)[1] = (unsigned char)(i>>16); - ((unsigned char *)l->raddr)[2] = (unsigned char)(i>>8); - ((unsigned char *)l->raddr)[3] = (unsigned char)(i); - ((unsigned char *)l->raddr)[4] = (unsigned char)(iret2>>16); - ((unsigned char *)l->raddr)[5] = (unsigned char)(iret2>>8); - ((unsigned char *)l->raddr)[6] = (unsigned char)(iret2); - } else - if (l->rsize == 8) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i>>24); - ((unsigned char *)l->raddr)[1] = (unsigned char)(i>>16); - ((unsigned char *)l->raddr)[2] = (unsigned char)(i>>8); - ((unsigned char *)l->raddr)[3] = (unsigned char)(i); - ((unsigned char *)l->raddr)[4] = (unsigned char)(iret2>>24); - ((unsigned char *)l->raddr)[5] = (unsigned char)(iret2>>16); - ((unsigned char *)l->raddr)[6] = (unsigned char)(iret2>>8); - ((unsigned char *)l->raddr)[7] = (unsigned char)(iret2); - } - } - } - } - } - return 0; -} - -#endif /*_avcall_hppa_c */ DELETED ffcall/avcall/avcall-hppa.s Index: ffcall/avcall/avcall-hppa.s ================================================================== --- ffcall/avcall/avcall-hppa.s +++ /dev/null @@ -1,270 +0,0 @@ - .code - .IMPORT $global$,DATA - .IMPORT $$dyncall,MILLICODE -; gcc_compiled.: - .code - - .align 4 - .EXPORT __builtin_avcall,ENTRY,PRIV_LEV=3,ARGW0=GR,RTNVAL=GR - .label __builtin_avcall - .PROC - .CALLINFO FRAME=1152,CALLS,SAVE_RP,ENTRY_GR=3 - .ENTRY - stw %r2,-20(0,%r30) - ldo 1152(%r30),%r30 - stw %r3,-1060(0,%r30) - copy %r26,%r3 - ldw 20(0,%r3),%r19 - ldo -1064(%r19),%r19 - sub %r3,%r19,%r19 - extrs %r19,29,30,%r19 - sub 0,%r19,%r21 - comib,<= -4,%r21,L$0003 - ldo -32(%r30),%r20 - zdep %r21,29,30,%r19 - addl %r19,%r20,%r20 - addl %r19,%r3,%r22 - .label L$0005 - ldw 1064(0,%r22),%r19 - ldo 4(%r22),%r22 - ldo 1(%r21),%r21 - comib,> -4,%r21,L$0005 - stws,ma %r19,4(0,%r20) - .label L$0003 - ldw 12(0,%r3),%r20 - ldi 16,%r19 - comclr,<> %r19,%r20,0 - ldw 8(0,%r3),%r28 - .label L$0007 - ldw 0(0,%r3),%r19 - ldw 1060(0,%r3),%r26 - ldw 1056(0,%r3),%r25 - ldw 1052(0,%r3),%r24 - ldw 1048(0,%r3),%r23 - copy %r19,%r22 - .CALL ARGW0=GR - bl $$dyncall,%r31 - copy %r31,%r2 - ldw 12(0,%r3),%r19 - comib,= 1,%r19,L$0009 - copy %r28,%r22 - comib,=,n 0,%r19,L$0076 - comib,=,n 2,%r19,L$0077 - comib,=,n 3,%r19,L$0077 - comib,=,n 4,%r19,L$0077 - comib,=,n 5,%r19,L$0078 - comib,=,n 6,%r19,L$0078 - comib,=,n 7,%r19,L$0076 - comib,=,n 8,%r19,L$0076 - comib,=,n 9,%r19,L$0076 - comib,=,n 10,%r19,L$0076 - ldw 12(0,%r3),%r20 - ldo -11(%r20),%r19 - comib,<<,n 1,%r19,L$0030 - ldw 8(0,%r3),%r19 - stw %r22,0(0,%r19) - ldw 8(0,%r3),%r19 - bl L$0009,0 - stw %r29,4(0,%r19) - .label L$0030 - comib,<>,n 13,%r20,L$0032 - ldw 8(0,%r3),%r19 - bl L$0009,0 - fstws %fr4L,0(0,%r19) - .label L$0032 - comib,<>,n 14,%r20,L$0034 - ldw 8(0,%r3),%r19 - bl L$0009,0 - fstds %fr4,0(0,%r19) - .label L$0034 - comib,= 15,%r20,L$0076 - ldi 16,%r19 - comb,<>,n %r19,%r20,L$0009 - ldw 4(0,%r3),%r19 - bb,>=,n %r19,31,L$0039 - ldw 16(0,%r3),%r19 - comib,<>,n 1,%r19,L$0040 - ldw 8(0,%r3),%r20 - ldb 0(0,%r22),%r19 - bl L$0009,0 - stb %r19,0(0,%r20) - .label L$0040 - comib,<>,n 2,%r19,L$0042 - ldw 8(0,%r3),%r20 - ldh 0(0,%r22),%r19 - bl L$0009,0 - sth %r19,0(0,%r20) - .label L$0042 - comib,<>,n 4,%r19,L$0044 - ldw 8(0,%r3),%r20 - ldw 0(0,%r22),%r19 - bl L$0009,0 - stw %r19,0(0,%r20) - .label L$0044 - comib,<> 8,%r19,L$0046 - ldo 3(%r19),%r19 - ldw 8(0,%r3),%r20 - ldw 0(0,%r22),%r19 - stw %r19,0(0,%r20) - ldw 8(0,%r3),%r20 - ldw 4(0,%r22),%r19 - bl L$0009,0 - stw %r19,4(0,%r20) - .label L$0046 - extru %r19,29,30,%r21 - addib,<,n -1,%r21,L$0009 - .label L$0050 - ldw 8(0,%r3),%r19 - ldwx,s %r21(0,%r22),%r20 - sh2addl %r21,%r19,%r19 - addib,>= -1,%r21,L$0050 - stw %r20,0(0,%r19) - bl L$0079,0 - ldi 0,%r28 - .label L$0039 - bb,>=,n %r19,30,L$0009 - bb,>= %r19,28,L$0054 - ldw 16(0,%r3),%r19 - comib,=,n 1,%r19,L$0077 - comib,<>,n 2,%r19,L$0057 - .label L$0078 - ldw 8(0,%r3),%r19 - bl L$0009,0 - sth %r22,0(0,%r19) - .label L$0057 - comib,<> 4,%r19,L$0079 - ldi 0,%r28 - .label L$0076 - ldw 8(0,%r3),%r19 - bl L$0009,0 - stw %r22,0(0,%r19) - .label L$0054 - comib,<>,n 1,%r19,L$0061 - .label L$0077 - ldw 8(0,%r3),%r19 - bl L$0009,0 - stb %r22,0(0,%r19) - .label L$0061 - comib,<>,n 2,%r19,L$0063 - ldw 8(0,%r3),%r19 - extrs %r22,23,24,%r20 - stb %r20,0(0,%r19) - ldw 8(0,%r3),%r19 - bl L$0009,0 - stb %r22,1(0,%r19) - .label L$0063 - comib,<>,n 3,%r19,L$0065 - ldw 8(0,%r3),%r20 - extrs %r22,15,16,%r19 - stb %r19,0(0,%r20) - ldw 8(0,%r3),%r20 - extrs %r22,23,24,%r19 - stb %r19,1(0,%r20) - ldw 8(0,%r3),%r19 - bl L$0009,0 - stb %r22,2(0,%r19) - .label L$0065 - comib,<>,n 4,%r19,L$0067 - ldw 8(0,%r3),%r20 - extrs %r22,7,8,%r19 - stb %r19,0(0,%r20) - ldw 8(0,%r3),%r20 - extrs %r22,15,16,%r19 - stb %r19,1(0,%r20) - ldw 8(0,%r3),%r20 - extrs %r22,23,24,%r19 - stb %r19,2(0,%r20) - ldw 8(0,%r3),%r19 - bl L$0009,0 - stb %r22,3(0,%r19) - .label L$0067 - comib,<>,n 5,%r19,L$0069 - ldw 8(0,%r3),%r20 - extrs %r22,7,8,%r19 - stb %r19,0(0,%r20) - ldw 8(0,%r3),%r20 - extrs %r22,15,16,%r19 - stb %r19,1(0,%r20) - ldw 8(0,%r3),%r20 - extrs %r22,23,24,%r19 - stb %r19,2(0,%r20) - ldw 8(0,%r3),%r19 - stb %r22,3(0,%r19) - ldw 8(0,%r3),%r19 - bl L$0009,0 - stb %r29,4(0,%r19) - .label L$0069 - comib,<>,n 6,%r19,L$0071 - ldw 8(0,%r3),%r20 - extrs %r22,7,8,%r19 - stb %r19,0(0,%r20) - ldw 8(0,%r3),%r20 - extrs %r22,15,16,%r19 - stb %r19,1(0,%r20) - ldw 8(0,%r3),%r20 - extrs %r22,23,24,%r19 - stb %r19,2(0,%r20) - ldw 8(0,%r3),%r19 - stb %r22,3(0,%r19) - ldw 8(0,%r3),%r20 - extrs %r29,23,24,%r19 - stb %r19,4(0,%r20) - ldw 8(0,%r3),%r19 - bl L$0009,0 - stb %r29,5(0,%r19) - .label L$0071 - comib,<>,n 7,%r19,L$0073 - ldw 8(0,%r3),%r20 - extrs %r22,7,8,%r19 - stb %r19,0(0,%r20) - ldw 8(0,%r3),%r20 - extrs %r22,15,16,%r19 - stb %r19,1(0,%r20) - ldw 8(0,%r3),%r20 - extrs %r22,23,24,%r19 - stb %r19,2(0,%r20) - ldw 8(0,%r3),%r19 - stb %r22,3(0,%r19) - ldw 8(0,%r3),%r20 - extrs %r29,15,16,%r19 - stb %r19,4(0,%r20) - ldw 8(0,%r3),%r20 - extrs %r29,23,24,%r19 - stb %r19,5(0,%r20) - ldw 8(0,%r3),%r19 - bl L$0009,0 - stb %r29,6(0,%r19) - .label L$0073 - comib,<> 8,%r19,L$0079 - ldi 0,%r28 - ldw 8(0,%r3),%r20 - extrs %r22,7,8,%r19 - stb %r19,0(0,%r20) - ldw 8(0,%r3),%r20 - extrs %r22,15,16,%r19 - stb %r19,1(0,%r20) - ldw 8(0,%r3),%r20 - extrs %r22,23,24,%r19 - stb %r19,2(0,%r20) - ldw 8(0,%r3),%r19 - stb %r22,3(0,%r19) - ldw 8(0,%r3),%r20 - extrs %r29,7,8,%r19 - stb %r19,4(0,%r20) - ldw 8(0,%r3),%r20 - extrs %r29,15,16,%r19 - stb %r19,5(0,%r20) - ldw 8(0,%r3),%r20 - extrs %r29,23,24,%r19 - stb %r19,6(0,%r20) - ldw 8(0,%r3),%r19 - stb %r29,7(0,%r19) - .label L$0009 - ldi 0,%r28 - .label L$0079 - ldw -1172(0,%r30),%r2 - ldw -1060(0,%r30),%r3 - bv 0(%r2) - ldo -1152(%r30),%r30 - .EXIT - .PROCEND DELETED ffcall/avcall/avcall-i386-macro.S Index: ffcall/avcall/avcall-i386-macro.S ================================================================== --- ffcall/avcall/avcall-i386-macro.S +++ /dev/null @@ -1,174 +0,0 @@ -#include "asmi386.h" -TEXT() - ALIGN(2) -GLOBL(C(__builtin_avcall)) - DECLARE_FUNCTION(__builtin_avcall) -FUNBEGIN(__builtin_avcall) - INSN1(push,l ,R(ebp)) - INSN2(mov,l ,R(esp),R(ebp)) - INSN1(push,l ,R(esi)) - INSN1(push,l ,R(ebx)) - INSN2(mov,l ,X4 MEM_DISP(ebp,8),R(esi)) - INSN2(add,l ,NUM(-1024),R(esp)) - INSN2(mov,l ,R(esp),R(ecx)) - INSN2(mov,l ,X4 MEM_DISP(esi,20),R(eax)) - INSN2(add,l ,NUM(-32),R(eax)) - INSN2(sub,l ,R(esi),R(eax)) - INSN2(mov,l ,R(eax),R(edx)) - INSN2(sar,l ,NUM(2),R(edx)) - INSN2(xor,l ,R(ebx),R(ebx)) - INSN2(cmp,l ,R(edx),R(ebx)) - INSN1(jge,_ ,L3) -L5: - INSN2(mov,l ,X4 MEM_DISP_SHINDEX(esi,32,ebx,4),R(eax)) - INSN2(mov,l ,R(eax),X4 MEM_SHINDEX(ecx,ebx,4)) - INSN1(inc,l ,R(ebx)) - INSN2(cmp,l ,R(edx),R(ebx)) - INSN1(jl,_ ,L5) -L3: - INSN2(test,b ,NUM(8),X1 MEM_DISP(esi,4)) - INSN1(je,_ ,L7) - INSN2(cmp,l ,NUM(16),X4 MEM_DISP(esi,12)) - INSN1(jne,_ ,L7) - INSN2(mov,l ,X4 MEM_DISP(esi,8),R(ebx)) -L7: - INSN2(mov,l ,X4 MEM_DISP(esi,12),R(eax)) - INSN2(cmp,l ,NUM(13),R(eax)) - INSN1(jne,_ ,L8) - INSN2(mov,l ,X4 MEM(esi),R(eax)) - INSN1(call,_ ,INDIR(R(eax))) - INSN2(mov,l ,X4 MEM_DISP(esi,8),R(eax)) - INSN1(fstp,s ,X4 MEM(eax)) - INSN1(jmp,_ ,L9) -L8: - INSN2(cmp,l ,NUM(14),R(eax)) - INSN1(jne,_ ,L10) - INSN2(mov,l ,X4 MEM(esi),R(eax)) - INSN1(call,_ ,INDIR(R(eax))) - INSN2(mov,l ,X4 MEM_DISP(esi,8),R(eax)) - INSN1(fstp,l ,X8 MEM(eax)) - INSN1(jmp,_ ,L9) -L10: - INSN2(mov,l ,X4 MEM(esi),R(eax)) - INSN1(call,_ ,INDIR(R(eax))) - INSN2(mov,l ,R(eax),R(ebx)) - INSN2(mov,l ,X4 MEM_DISP(esi,12),R(eax)) - INSN2(cmp,l ,NUM(1),R(eax)) - INSN1(je,_ ,L9) - INSN2(test,l ,R(eax),R(eax)) - INSN1(je,_ ,L61) - INSN2(cmp,l ,NUM(2),R(eax)) - INSN1(je,_ ,L62) - INSN2(cmp,l ,NUM(3),R(eax)) - INSN1(je,_ ,L62) - INSN2(cmp,l ,NUM(4),R(eax)) - INSN1(je,_ ,L62) - INSN2(cmp,l ,NUM(5),R(eax)) - INSN1(je,_ ,L63) - INSN2(cmp,l ,NUM(6),R(eax)) - INSN1(je,_ ,L63) - INSN2(cmp,l ,NUM(7),R(eax)) - INSN1(je,_ ,L61) - INSN2(cmp,l ,NUM(8),R(eax)) - INSN1(je,_ ,L61) - INSN2(cmp,l ,NUM(9),R(eax)) - INSN1(je,_ ,L61) - INSN2(cmp,l ,NUM(10),R(eax)) - INSN1(je,_ ,L61) - INSN2(mov,l ,X4 MEM_DISP(esi,12),R(ecx)) - INSN2(lea,l ,X4 MEM_DISP(ecx,-11),R(eax)) - INSN2(cmp,l ,NUM(1),R(eax)) - INSN1(jbe,_ ,L64) - INSN2(cmp,l ,NUM(15),R(ecx)) - INSN1(je,_ ,L61) - INSN2(cmp,l ,NUM(16),R(ecx)) - INSN1(jne,_ ,L9) - INSN2(mov,l ,X4 MEM_DISP(esi,4),R(eax)) - INSN2(test,b ,NUM(1),R(al)) - INSN1(je,_ ,L39) - INSN2(mov,l ,X4 MEM_DISP(esi,16),R(eax)) - INSN2(cmp,l ,NUM(1),R(eax)) - INSN1(jne,_ ,L40) - INSN2(mov,l ,X4 MEM_DISP(esi,8),R(edx)) - INSN2(mov,b ,X1 MEM(ebx),R(al)) - INSN2(mov,b ,R(al),X1 MEM(edx)) - INSN1(jmp,_ ,L9) -L40: - INSN2(cmp,l ,NUM(2),R(eax)) - INSN1(jne,_ ,L42) - INSN2(mov,l ,X4 MEM_DISP(esi,8),R(edx)) - INSN2(mov,w ,X2 MEM(ebx),R(ax)) - INSN2(mov,w ,R(ax),X2 MEM(edx)) - INSN1(jmp,_ ,L9) -L42: - INSN2(cmp,l ,NUM(4),R(eax)) - INSN1(jne,_ ,L44) - INSN2(mov,l ,X4 MEM_DISP(esi,8),R(edx)) - INSN2(mov,l ,X4 MEM(ebx),R(eax)) - INSN2(mov,l ,R(eax),X4 MEM(edx)) - INSN1(jmp,_ ,L9) -L44: - INSN2(cmp,l ,NUM(8),R(eax)) - INSN1(jne,_ ,L46) - INSN2(mov,l ,X4 MEM_DISP(esi,8),R(edx)) - INSN2(mov,l ,X4 MEM(ebx),R(eax)) - INSN2(mov,l ,R(eax),X4 MEM(edx)) - INSN2(mov,l ,X4 MEM_DISP(esi,8),R(edx)) - INSN2(mov,l ,X4 MEM_DISP(ebx,4),R(eax)) - INSN2(mov,l ,R(eax),X4 MEM_DISP(edx,4)) - INSN1(jmp,_ ,L9) -L46: - INSN2(add,l ,NUM(3),R(eax)) - INSN2(mov,l ,R(eax),R(ecx)) - INSN2(shr,l ,NUM(2),R(ecx)) - INSN1(dec,l ,R(ecx)) - INSN1(js,_ ,L9) -L50: - INSN2(mov,l ,X4 MEM_DISP(esi,8),R(edx)) - INSN2(mov,l ,X4 MEM_SHINDEX(ebx,ecx,4),R(eax)) - INSN2(mov,l ,R(eax),X4 MEM_SHINDEX(edx,ecx,4)) - INSN1(dec,l ,R(ecx)) - INSN1(jns,_ ,L50) - INSN1(jmp,_ ,L9) -L39: - INSN2(test,b ,NUM(2),R(ah)) - INSN1(je,_ ,L9) - INSN2(mov,l ,X4 MEM_DISP(esi,16),R(eax)) - INSN2(cmp,l ,NUM(1),R(eax)) - INSN1(jne,_ ,L54) -L62: - INSN2(mov,l ,X4 MEM_DISP(esi,8),R(eax)) - INSN2(mov,b ,R(bl),X1 MEM(eax)) - INSN1(jmp,_ ,L9) -L54: - INSN2(cmp,l ,NUM(2),R(eax)) - INSN1(jne,_ ,L56) -L63: - INSN2(mov,l ,X4 MEM_DISP(esi,8),R(eax)) - INSN2(mov,w ,R(bx),X2 MEM(eax)) - INSN1(jmp,_ ,L9) -L56: - INSN2(cmp,l ,NUM(4),R(eax)) - INSN1(jne,_ ,L58) -L61: - INSN2(mov,l ,X4 MEM_DISP(esi,8),R(eax)) - INSN2(mov,l ,R(ebx),X4 MEM(eax)) - INSN1(jmp,_ ,L9) -L58: - INSN2(cmp,l ,NUM(8),R(eax)) - INSN1(jne,_ ,L9) -L64: - INSN2(mov,l ,X4 MEM_DISP(esi,8),R(eax)) - INSN2(mov,l ,R(ebx),X4 MEM(eax)) - INSN2(mov,l ,X4 MEM_DISP(esi,8),R(eax)) - INSN2(mov,l ,R(edx),X4 MEM_DISP(eax,4)) -L9: - INSN2(xor,l ,R(eax),R(eax)) - INSN2(lea,l ,X4 MEM_DISP(ebp,-8),R(esp)) - INSN1(pop,l ,R(ebx)) - INSN1(pop,l ,R(esi)) - INSN2(mov,l ,R(ebp),R(esp)) - INSN1(pop,l ,R(ebp)) - ret -FUNEND() - DELETED ffcall/avcall/avcall-i386-msvc.c Index: ffcall/avcall/avcall-i386-msvc.c ================================================================== --- ffcall/avcall/avcall-i386-msvc.c +++ /dev/null @@ -1,174 +0,0 @@ -#include "asmi386.h" -TEXT() - ALIGN(2) -GLOBL(C(__builtin_avcall)) - DECLARE_FUNCTION(__builtin_avcall) -FUNBEGIN(__builtin_avcall) - INSN1(push,l ,R(ebp)) - INSN2(mov,l ,R(esp),R(ebp)) - INSN1(push,l ,R(esi)) - INSN1(push,l ,R(ebx)) - INSN2(mov,l ,X4 MEM_DISP(ebp,8),R(esi)) - INSN2(add,l ,NUM(-1024),R(esp)) - INSN2(mov,l ,R(esp),R(ecx)) - INSN2(mov,l ,X4 MEM_DISP(esi,20),R(eax)) - INSN2(add,l ,NUM(-32),R(eax)) - INSN2(sub,l ,R(esi),R(eax)) - INSN2(mov,l ,R(eax),R(edx)) - INSN2(sar,l ,NUM(2),R(edx)) - INSN2(xor,l ,R(ebx),R(ebx)) - INSN2(cmp,l ,R(edx),R(ebx)) - INSN1(jge,_ ,L3) -L5: - INSN2(mov,l ,X4 MEM_DISP_SHINDEX(esi,32,ebx,4),R(eax)) - INSN2(mov,l ,R(eax),X4 MEM_SHINDEX(ecx,ebx,4)) - INSN1(inc,l ,R(ebx)) - INSN2(cmp,l ,R(edx),R(ebx)) - INSN1(jl,_ ,L5) -L3: - INSN2(test,b ,NUM(8),X1 MEM_DISP(esi,4)) - INSN1(je,_ ,L7) - INSN2(cmp,l ,NUM(16),X4 MEM_DISP(esi,12)) - INSN1(jne,_ ,L7) - INSN2(mov,l ,X4 MEM_DISP(esi,8),R(ebx)) -L7: - INSN2(mov,l ,X4 MEM_DISP(esi,12),R(eax)) - INSN2(cmp,l ,NUM(13),R(eax)) - INSN1(jne,_ ,L8) - INSN2(mov,l ,X4 MEM(esi),R(eax)) - INSN1(call,_ ,INDIR(R(eax))) - INSN2(mov,l ,X4 MEM_DISP(esi,8),R(eax)) - INSN1(fstp,s ,X4 MEM(eax)) - INSN1(jmp,_ ,L9) -L8: - INSN2(cmp,l ,NUM(14),R(eax)) - INSN1(jne,_ ,L10) - INSN2(mov,l ,X4 MEM(esi),R(eax)) - INSN1(call,_ ,INDIR(R(eax))) - INSN2(mov,l ,X4 MEM_DISP(esi,8),R(eax)) - INSN1(fstp,l ,X8 MEM(eax)) - INSN1(jmp,_ ,L9) -L10: - INSN2(mov,l ,X4 MEM(esi),R(eax)) - INSN1(call,_ ,INDIR(R(eax))) - INSN2(mov,l ,R(eax),R(ebx)) - INSN2(mov,l ,X4 MEM_DISP(esi,12),R(eax)) - INSN2(cmp,l ,NUM(1),R(eax)) - INSN1(je,_ ,L9) - INSN2(test,l ,R(eax),R(eax)) - INSN1(je,_ ,L61) - INSN2(cmp,l ,NUM(2),R(eax)) - INSN1(je,_ ,L62) - INSN2(cmp,l ,NUM(3),R(eax)) - INSN1(je,_ ,L62) - INSN2(cmp,l ,NUM(4),R(eax)) - INSN1(je,_ ,L62) - INSN2(cmp,l ,NUM(5),R(eax)) - INSN1(je,_ ,L63) - INSN2(cmp,l ,NUM(6),R(eax)) - INSN1(je,_ ,L63) - INSN2(cmp,l ,NUM(7),R(eax)) - INSN1(je,_ ,L61) - INSN2(cmp,l ,NUM(8),R(eax)) - INSN1(je,_ ,L61) - INSN2(cmp,l ,NUM(9),R(eax)) - INSN1(je,_ ,L61) - INSN2(cmp,l ,NUM(10),R(eax)) - INSN1(je,_ ,L61) - INSN2(mov,l ,X4 MEM_DISP(esi,12),R(ecx)) - INSN2(lea,l ,X4 MEM_DISP(ecx,-11),R(eax)) - INSN2(cmp,l ,NUM(1),R(eax)) - INSN1(jbe,_ ,L64) - INSN2(cmp,l ,NUM(15),R(ecx)) - INSN1(je,_ ,L61) - INSN2(cmp,l ,NUM(16),R(ecx)) - INSN1(jne,_ ,L9) - INSN2(mov,l ,X4 MEM_DISP(esi,4),R(eax)) - INSN2(test,b ,NUM(1),R(al)) - INSN1(je,_ ,L39) - INSN2(mov,l ,X4 MEM_DISP(esi,16),R(eax)) - INSN2(cmp,l ,NUM(1),R(eax)) - INSN1(jne,_ ,L40) - INSN2(mov,l ,X4 MEM_DISP(esi,8),R(edx)) - INSN2(mov,b ,X1 MEM(ebx),R(al)) - INSN2(mov,b ,R(al),X1 MEM(edx)) - INSN1(jmp,_ ,L9) -L40: - INSN2(cmp,l ,NUM(2),R(eax)) - INSN1(jne,_ ,L42) - INSN2(mov,l ,X4 MEM_DISP(esi,8),R(edx)) - INSN2(mov,w ,X2 MEM(ebx),R(ax)) - INSN2(mov,w ,R(ax),X2 MEM(edx)) - INSN1(jmp,_ ,L9) -L42: - INSN2(cmp,l ,NUM(4),R(eax)) - INSN1(jne,_ ,L44) - INSN2(mov,l ,X4 MEM_DISP(esi,8),R(edx)) - INSN2(mov,l ,X4 MEM(ebx),R(eax)) - INSN2(mov,l ,R(eax),X4 MEM(edx)) - INSN1(jmp,_ ,L9) -L44: - INSN2(cmp,l ,NUM(8),R(eax)) - INSN1(jne,_ ,L46) - INSN2(mov,l ,X4 MEM_DISP(esi,8),R(edx)) - INSN2(mov,l ,X4 MEM(ebx),R(eax)) - INSN2(mov,l ,R(eax),X4 MEM(edx)) - INSN2(mov,l ,X4 MEM_DISP(esi,8),R(edx)) - INSN2(mov,l ,X4 MEM_DISP(ebx,4),R(eax)) - INSN2(mov,l ,R(eax),X4 MEM_DISP(edx,4)) - INSN1(jmp,_ ,L9) -L46: - INSN2(add,l ,NUM(3),R(eax)) - INSN2(mov,l ,R(eax),R(ecx)) - INSN2(shr,l ,NUM(2),R(ecx)) - INSN1(dec,l ,R(ecx)) - INSN1(js,_ ,L9) -L50: - INSN2(mov,l ,X4 MEM_DISP(esi,8),R(edx)) - INSN2(mov,l ,X4 MEM_SHINDEX(ebx,ecx,4),R(eax)) - INSN2(mov,l ,R(eax),X4 MEM_SHINDEX(edx,ecx,4)) - INSN1(dec,l ,R(ecx)) - INSN1(jns,_ ,L50) - INSN1(jmp,_ ,L9) -L39: - INSN2(test,b ,NUM(2),R(ah)) - INSN1(je,_ ,L9) - INSN2(mov,l ,X4 MEM_DISP(esi,16),R(eax)) - INSN2(cmp,l ,NUM(1),R(eax)) - INSN1(jne,_ ,L54) -L62: - INSN2(mov,l ,X4 MEM_DISP(esi,8),R(eax)) - INSN2(mov,b ,R(bl),X1 MEM(eax)) - INSN1(jmp,_ ,L9) -L54: - INSN2(cmp,l ,NUM(2),R(eax)) - INSN1(jne,_ ,L56) -L63: - INSN2(mov,l ,X4 MEM_DISP(esi,8),R(eax)) - INSN2(mov,w ,R(bx),X2 MEM(eax)) - INSN1(jmp,_ ,L9) -L56: - INSN2(cmp,l ,NUM(4),R(eax)) - INSN1(jne,_ ,L58) -L61: - INSN2(mov,l ,X4 MEM_DISP(esi,8),R(eax)) - INSN2(mov,l ,R(ebx),X4 MEM(eax)) - INSN1(jmp,_ ,L9) -L58: - INSN2(cmp,l ,NUM(8),R(eax)) - INSN1(jne,_ ,L9) -L64: - INSN2(mov,l ,X4 MEM_DISP(esi,8),R(eax)) - INSN2(mov,l ,R(ebx),X4 MEM(eax)) - INSN2(mov,l ,X4 MEM_DISP(esi,8),R(eax)) - INSN2(mov,l ,R(edx),X4 MEM_DISP(eax,4)) -L9: - INSN2(xor,l ,R(eax),R(eax)) - INSN2(lea,l ,X4 MEM_DISP(ebp,-8),R(esp)) - INSN1(pop,l ,R(ebx)) - INSN1(pop,l ,R(esi)) - INSN2(mov,l ,R(ebp),R(esp)) - INSN1(pop,l ,R(ebp)) - ret -FUNEND() - DELETED ffcall/avcall/avcall-i386.c Index: ffcall/avcall/avcall-i386.c ================================================================== --- ffcall/avcall/avcall-i386.c +++ /dev/null @@ -1,166 +0,0 @@ -#ifndef _avcall_i386_c /*-*- C -*-*/ -#define _avcall_i386_c -/** - Copyright 1993 Bill Triggs, - Copyright 1995-1999 Bruno Haible, - - This is free software distributed under the GNU General Public - Licence described in the file COPYING. Contact the author if - you don't have this or can't live with it. There is ABSOLUTELY - NO WARRANTY, explicit or implied, on this software. -**/ -/*---------------------------------------------------------------------- - !!! THIS ROUTINE MUST BE COMPILED gcc -O -fno-omit-frame-pointer !!! - - Foreign function interface for a Linux i386/486 with gcc. - - This calls a C function with an argument list built up using macros - defined in av_call.h. - - i386 Argument Passing Conventions: - - All arguments are passed on the stack with word alignment. Doubles take - two words. Structure args are passed as true structures embedded in the - argument stack. Float and double returns often come from FPU registers. - - To return a structure, the called function copies the value to space - pointed to by its first argument, and all other arguments are shifted - down by one. On NeXTstep, however, the called function copies the return - value to the address supplied in register "%ebx". Gcc without - -fpcc-struct-return returns <= 4 byte structures as integers. - - Compile this routine with gcc -O (or -O2 -fno-omit-frame-pointer or -g -O) - to get the right register variables. For other compilers use the - pre-compiled assembler version. - - -fomit-frame-pointer is forbidden because when calling structure returning - functions (the "i = (*l->func)();" line below) the called functions pops - the return value container pointer from the stack: "ret $4" instead of - "ret". (See gcc-2.6.3 macro RETURN_POPS_ARGS.) From our point of view, %esp - gets magically incremented. A workaround would be to push the return value - container pointer using an __asm__("pushl %0" : : : ...) instruction. - Similarly, when calling functions with `stdcall' linkage, %esp also gets - incremented: all arguments (including the return value container pointer) - are popped from the stack. - ----------------------------------------------------------------------*/ -#include "avcall.h.in" - -#define RETURN(TYPE,VAL) (*(TYPE*)l->raddr = (TYPE)(VAL)) - -int -__builtin_avcall(av_alist* l) -{ - register __avword* sp __asm__("sp"); /* C names for registers */ -/*register __avword iret __asm__("eax"); */ - register __avword iret2 __asm__("edx"); - - __avword* argframe = (sp -= __AV_ALIST_WORDS); /* make room for argument list */ - int arglen = l->aptr - l->args; - __avword i; - - for (i = 0; i < arglen; i++) /* push function args onto stack */ - argframe[i] = l->args[i]; - - /* struct return address */ - if ((l->flags & __AV_NEXTGCC_STRUCT_RETURN) && (l->rtype == __AVstruct)) - __asm__("movl %0,%%ebx" : : "g" (l->raddr) : "bx" /* %ebx */); - - /* call function */ - if (l->rtype == __AVfloat) { - *(float*)l->raddr = (*(float(*)())l->func)(); - } else - if (l->rtype == __AVdouble) { - *(double*)l->raddr = (*(double(*)())l->func)(); - } else { - i = (*l->func)(); - - /* save return value */ - if (l->rtype == __AVvoid) { - } else - if (l->rtype == __AVword) { - RETURN(__avword, i); - } else - if (l->rtype == __AVchar) { - RETURN(char, i); - } else - if (l->rtype == __AVschar) { - RETURN(signed char, i); - } else - if (l->rtype == __AVuchar) { - RETURN(unsigned char, i); - } else - if (l->rtype == __AVshort) { - RETURN(short, i); - } else - if (l->rtype == __AVushort) { - RETURN(unsigned short, i); - } else - if (l->rtype == __AVint) { - RETURN(int, i); - } else - if (l->rtype == __AVuint) { - RETURN(unsigned int, i); - } else - if (l->rtype == __AVlong) { - RETURN(long, i); - } else - if (l->rtype == __AVulong) { - RETURN(unsigned long, i); - } else - if (l->rtype == __AVlonglong || l->rtype == __AVulonglong) { - ((__avword*)l->raddr)[0] = i; - ((__avword*)l->raddr)[1] = iret2; - } else - /* see above - if (l->rtype == __AVfloat) { - } else - if (l->rtype == __AVdouble) { - } else - */ - if (l->rtype == __AVvoidp) { - RETURN(void*, i); - } else - if (l->rtype == __AVstruct) { - if (l->flags & __AV_PCC_STRUCT_RETURN) { - /* pcc struct return convention: need a *(TYPE*)l->raddr = *(TYPE*)i; */ - if (l->rsize == sizeof(char)) { - RETURN(char, *(char*)i); - } else - if (l->rsize == sizeof(short)) { - RETURN(short, *(short*)i); - } else - if (l->rsize == sizeof(int)) { - RETURN(int, *(int*)i); - } else - if (l->rsize == sizeof(double)) { - ((int*)l->raddr)[0] = ((int*)i)[0]; - ((int*)l->raddr)[1] = ((int*)i)[1]; - } else { - int n = (l->rsize + sizeof(__avword)-1)/sizeof(__avword); - while (--n >= 0) - ((__avword*)l->raddr)[n] = ((__avword*)i)[n]; - } - } else { - /* normal struct return convention */ - if (l->flags & __AV_REGISTER_STRUCT_RETURN) { - if (l->rsize == sizeof(char)) { - RETURN(char, i); - } else - if (l->rsize == sizeof(short)) { - RETURN(short, i); - } else - if (l->rsize == sizeof(int)) { - RETURN(int, i); - } else - if (l->rsize == 2*sizeof(__avword)) { - ((__avword*)l->raddr)[0] = i; - ((__avword*)l->raddr)[1] = iret2; - } - } - } - } - } - return 0; -} - -#endif /*_avcall_i386_c */ DELETED ffcall/avcall/avcall-ia64.c Index: ffcall/avcall/avcall-ia64.c ================================================================== --- ffcall/avcall/avcall-ia64.c +++ /dev/null @@ -1,259 +0,0 @@ -#ifndef _avcall_ia64_c /*-*- C -*-*/ -#define _avcall_ia64_c -/** - Copyright 1993 Bill Triggs, - Copyright 1995-2001 Bruno Haible, - - This is free software distributed under the GNU General Public - Licence described in the file COPYING. Contact the author if - you don't have this or can't live with it. There is ABSOLUTELY - NO WARRANTY, explicit or implied, on this software. -**/ -/*---------------------------------------------------------------------- - !!! THIS ROUTINE MUST BE COMPILED gcc -O !!! - - Foreign function interface for a Intel IA-64 in little-endian mode with gcc. - - This calls a C function with an argument list built up using macros - defined in av_call.h. - - IA-64 64-bit Argument Passing Conventions: - - The argument sequence is mapped linearly on the registers r32,...,r39, - and continued on the stack, in [r12+16], [r12+24], ... - Items in this sequence are word-aligned. Structures larger than a single - word are even two-word-aligned. - Integer/pointer arguments are passed in the allocated slots (registers - or stack slots). The first 8 float/double arguments are passed in - registers f8,...,f15 instead, but their slots are kept allocated. - Structure args are passed like multiple integer arguments; except that - structures consisting only of floats or only of doubles are passed like - multiple float arguments or multiple double arguments, respectively. - - Integers and pointers are returned in r8, floats and doubles in f8. - Structures consisting only of at most 8 floats or only of at most 8 doubles - are returned in f8,...,f15. Other than that, structures of size <= 32 bytes - are returned in r8,...,r11, as if these were 4 contiguous words in memory. - Larger structures are returned in memory; the caller passes the address - of the target memory area in r8, and it is returned unmodified in r8. - ----------------------------------------------------------------------*/ -#include "avcall.h.in" - -#define RETURN(TYPE,VAL) (*(TYPE*)l->raddr = (TYPE)(VAL)) - -register __avword* sret __asm__("r8"); /* structure return pointer */ -register __avword iret __asm__("r8"); -register __avword iret2 __asm__("r9"); -register __avword iret3 __asm__("r10"); -register __avword iret4 __asm__("r11"); -/*register float fret __asm__("f8");*/ -/*register double dret __asm__("f8");*/ -register double farg1 __asm__("f8"); -register double farg2 __asm__("f9"); -register double farg3 __asm__("f10"); -register double farg4 __asm__("f11"); -register double farg5 __asm__("f12"); -register double farg6 __asm__("f13"); -register double farg7 __asm__("f14"); -register double farg8 __asm__("f15"); - -int -__builtin_avcall(av_alist* l) -{ - register __avword* sp __asm__("r12"); /* C names for registers */ - - __avword* argframe = (sp -= __AV_ALIST_WORDS) + 2; /* make room for argument list */ - int arglen = l->aptr - l->args; - int farglen = l->faptr - l->fargs; - __avword i; - - for (i = 8; i < arglen; i++) /* push function args onto stack */ - argframe[i-8] = l->args[i]; - - /* struct return address */ - if (l->rtype == __AVstruct) - sret = l->raddr; - - /* put max. 8 double args in registers */ - if (farglen > 0) { - farg1 = l->fargs[0]; - if (farglen > 1) { - farg2 = l->fargs[1]; - if (farglen > 2) { - farg3 = l->fargs[2]; - if (farglen > 3) { - farg4 = l->fargs[3]; - if (farglen > 4) { - farg5 = l->fargs[4]; - if (farglen > 5) { - farg6 = l->fargs[5]; - if (farglen > 6) { - farg7 = l->fargs[6]; - if (farglen > 7) - farg8 = l->fargs[7]; - } - } - } - } - } - } - } - - /* call function, pass 8 integer and 8 double args in registers */ - if (l->rtype == __AVfloat) { - *(float*)l->raddr = (*(float(*)())l->func)(l->args[0], l->args[1], - l->args[2], l->args[3], - l->args[4], l->args[5], - l->args[6], l->args[7]); - } else - if (l->rtype == __AVdouble) { - *(double*)l->raddr = (*(double(*)())l->func)(l->args[0], l->args[1], - l->args[2], l->args[3], - l->args[4], l->args[5], - l->args[6], l->args[7]); - } else { - i = (*l->func)(l->args[0], l->args[1], l->args[2], l->args[3], - l->args[4], l->args[5], l->args[6], l->args[7]); - - /* save return value */ - if (l->rtype == __AVvoid) { - } else - if (l->rtype == __AVword) { - RETURN(__avword, i); - } else - if (l->rtype == __AVchar) { - RETURN(char, i); - } else - if (l->rtype == __AVschar) { - RETURN(signed char, i); - } else - if (l->rtype == __AVuchar) { - RETURN(unsigned char, i); - } else - if (l->rtype == __AVshort) { - RETURN(short, i); - } else - if (l->rtype == __AVushort) { - RETURN(unsigned short, i); - } else - if (l->rtype == __AVint) { - RETURN(int, i); - } else - if (l->rtype == __AVuint) { - RETURN(unsigned int, i); - } else - if (l->rtype == __AVlong || l->rtype == __AVlonglong) { - RETURN(long, i); - } else - if (l->rtype == __AVulong || l->rtype == __AVulonglong) { - RETURN(unsigned long, i); - } else - /* see above - if (l->rtype == __AVfloat) { - } else - if (l->rtype == __AVdouble) { - } else - */ - if (l->rtype == __AVvoidp) { - RETURN(void*, i); - } else - if (l->rtype == __AVstruct) { - if (l->flags & __AV_PCC_STRUCT_RETURN) { - /* pcc struct return convention: need a *(TYPE*)l->raddr = *(TYPE*)i; */ - if (l->rsize == sizeof(char)) { - RETURN(char, *(char*)i); - } else - if (l->rsize == sizeof(short)) { - RETURN(short, *(short*)i); - } else - if (l->rsize == sizeof(int)) { - RETURN(int, *(int*)i); - } else - if (l->rsize == sizeof(long)) { - RETURN(long, *(long*)i); - } else { - int n = (l->rsize + sizeof(__avword)-1)/sizeof(__avword); - while (--n >= 0) - ((__avword*)l->raddr)[n] = ((__avword*)i)[n]; - } - } else { - /* normal struct return convention */ - if (l->flags & __AV_REGISTER_STRUCT_RETURN) { - /* Return structs of size <= 32 in registers. */ - if (l->rsize > 0 && l->rsize <= 32) { - if (l->rsize >= 1) - ((unsigned char *)l->raddr)[0] = (unsigned char)(i); - if (l->rsize >= 2) - ((unsigned char *)l->raddr)[1] = (unsigned char)(i>>8); - if (l->rsize >= 3) - ((unsigned char *)l->raddr)[2] = (unsigned char)(i>>16); - if (l->rsize >= 4) - ((unsigned char *)l->raddr)[3] = (unsigned char)(i>>24); - if (l->rsize >= 5) - ((unsigned char *)l->raddr)[4] = (unsigned char)(i>>32); - if (l->rsize >= 6) - ((unsigned char *)l->raddr)[5] = (unsigned char)(i>>40); - if (l->rsize >= 7) - ((unsigned char *)l->raddr)[6] = (unsigned char)(i>>48); - if (l->rsize >= 8) - ((unsigned char *)l->raddr)[7] = (unsigned char)(i>>56); - if (l->rsize >= 9) { - ((unsigned char *)l->raddr)[8] = (unsigned char)(iret2); - if (l->rsize >= 10) - ((unsigned char *)l->raddr)[9] = (unsigned char)(iret2>>8); - if (l->rsize >= 11) - ((unsigned char *)l->raddr)[10] = (unsigned char)(iret2>>16); - if (l->rsize >= 12) - ((unsigned char *)l->raddr)[11] = (unsigned char)(iret2>>24); - if (l->rsize >= 13) - ((unsigned char *)l->raddr)[12] = (unsigned char)(iret2>>32); - if (l->rsize >= 14) - ((unsigned char *)l->raddr)[13] = (unsigned char)(iret2>>40); - if (l->rsize >= 15) - ((unsigned char *)l->raddr)[14] = (unsigned char)(iret2>>48); - if (l->rsize >= 16) - ((unsigned char *)l->raddr)[15] = (unsigned char)(iret2>>56); - if (l->rsize >= 17) { - ((unsigned char *)l->raddr)[16] = (unsigned char)(iret3); - if (l->rsize >= 18) - ((unsigned char *)l->raddr)[17] = (unsigned char)(iret3>>8); - if (l->rsize >= 19) - ((unsigned char *)l->raddr)[18] = (unsigned char)(iret3>>16); - if (l->rsize >= 20) - ((unsigned char *)l->raddr)[19] = (unsigned char)(iret3>>24); - if (l->rsize >= 21) - ((unsigned char *)l->raddr)[20] = (unsigned char)(iret3>>32); - if (l->rsize >= 22) - ((unsigned char *)l->raddr)[21] = (unsigned char)(iret3>>40); - if (l->rsize >= 23) - ((unsigned char *)l->raddr)[22] = (unsigned char)(iret3>>48); - if (l->rsize >= 24) - ((unsigned char *)l->raddr)[23] = (unsigned char)(iret3>>56); - if (l->rsize >= 25) { - ((unsigned char *)l->raddr)[24] = (unsigned char)(iret4); - if (l->rsize >= 26) - ((unsigned char *)l->raddr)[25] = (unsigned char)(iret4>>8); - if (l->rsize >= 27) - ((unsigned char *)l->raddr)[26] = (unsigned char)(iret4>>16); - if (l->rsize >= 28) - ((unsigned char *)l->raddr)[27] = (unsigned char)(iret4>>24); - if (l->rsize >= 29) - ((unsigned char *)l->raddr)[28] = (unsigned char)(iret4>>32); - if (l->rsize >= 30) - ((unsigned char *)l->raddr)[29] = (unsigned char)(iret4>>40); - if (l->rsize >= 31) - ((unsigned char *)l->raddr)[30] = (unsigned char)(iret4>>48); - if (l->rsize >= 32) - ((unsigned char *)l->raddr)[31] = (unsigned char)(iret4>>56); - } - } - } - } - } - } - } - } - return 0; -} - -#endif /*_avcall_ia64_c */ DELETED ffcall/avcall/avcall-ia64.s Index: ffcall/avcall/avcall-ia64.s ================================================================== --- ffcall/avcall/avcall-ia64.s +++ /dev/null @@ -1,739 +0,0 @@ - .file "avcall-ia64.c" - .version "01.01" - .global __divdi3# -.text - .align 16 - .global __builtin_avcall# - .proc __builtin_avcall# -__builtin_avcall: - alloc r37 = ar.pfs, 1, 5, 8, 0 - mov r34 = r32 - adds r12 = -16, r12 - mov r33 = r1 - ;; - adds r15 = 40, r34 - adds r12 = -2048, r12 - mov r36 = b0 - ;; - ld8 r14 = [r15] - adds r35 = 16, r12 - addl r39 = 8, r0 - ;; - sub r14 = r14, r34 - ;; - adds r38 = -120, r14 - br.call.sptk.many b0 = __divdi3# ;; - adds r15 = 48, r34 - mov r1 = r33 - addl r39 = 8, r0 - ;; - ld8 r14 = [r15] - sxt4 r33 = r8 - ;; - sub r14 = r14, r34 - ;; - adds r38 = -56, r14 - br.call.sptk.many b0 = __divdi3# ;; - addl r18 = 8, r0 - sxt4 r17 = r8 - ;; - cmp.gt p6, p7 = r33, r18 - (p7) br.cond.dpnt .L97 - adds r23 = 120, r34 - ;; - mov r19 = r23 -.L6: - shl r14 = r18, 3 - ;; - add r16 = r19, r14 - adds r18 = 1, r18 - add r14 = r35, r14 - ;; - ld8 r15 = [r16] - cmp.gt p6, p7 = r33, r18 - adds r14 = -64, r14 - ;; - st8 [r14] = r15 - (p6) br.cond.dptk .L6 - br .L96 -.L97: - adds r23 = 120, r34 -.L96: - adds r33 = 24, r34 - ;; - ld4 r14 = [r33] - ;; - cmp4.ne p6, p7 = 16, r14 - (p6) br.cond.dptk .L8 - adds r14 = 16, r34 - ;; - ld8 r8 = [r14] -.L8: - cmp4.ge p6, p7 = 0, r17 - (p6) br.cond.dptk .L9 - adds r14 = 56, r34 - ;; - cmp4.ge p6, p7 = 1, r17 - ldfd f8 = [r14] - (p6) br.cond.dptk .L9 - adds r14 = 64, r34 - ;; - cmp4.ge p6, p7 = 2, r17 - ldfd f9 = [r14] - (p6) br.cond.dptk .L9 - adds r14 = 72, r34 - ;; - cmp4.ge p6, p7 = 3, r17 - ldfd f10 = [r14] - (p6) br.cond.dptk .L9 - adds r14 = 80, r34 - ;; - cmp4.ge p6, p7 = 4, r17 - ldfd f11 = [r14] - (p6) br.cond.dptk .L9 - adds r14 = 88, r34 - ;; - cmp4.ge p6, p7 = 5, r17 - ldfd f12 = [r14] - (p6) br.cond.dptk .L9 - adds r14 = 96, r34 - ;; - cmp4.ge p6, p7 = 6, r17 - ldfd f13 = [r14] - (p6) br.cond.dptk .L9 - adds r14 = 104, r34 - ;; - cmp4.ge p6, p7 = 7, r17 - ldfd f14 = [r14] - (p6) br.cond.dptk .L9 - adds r14 = 112, r34 - ;; - ldfd f15 = [r14] -.L9: - ld4 r14 = [r33] - ;; - cmp4.ne p6, p7 = 13, r14 - (p6) br.cond.dptk .L17 - ld8 r21 = [r34] - adds r14 = 144, r34 - adds r15 = 152, r34 - ;; - ld8 r22 = [r21], 8 - adds r19 = 128, r34 - adds r20 = 136, r34 - adds r16 = 160, r34 - adds r17 = 168, r34 - adds r18 = 176, r34 - ld8 r41 = [r14] - ld8 r42 = [r15] - ld8 r38 = [r23] - ;; - ld8 r39 = [r19] - ld8 r40 = [r20] - ld8 r43 = [r16] - ld8 r44 = [r17] - ld8 r45 = [r18] - ld8 r1 = [r21] - mov b6 = r22 - ;; - br.call.sptk.many b0 = b6 ;; - adds r14 = 16, r34 - ;; - ld8 r15 = [r14] - ;; - stfs [r15] = f8 - br .L18 -.L17: - cmp4.ne p6, p7 = 14, r14 - (p6) br.cond.dptk .L19 - ld8 r21 = [r34] - adds r14 = 144, r34 - adds r15 = 152, r34 - ;; - ld8 r22 = [r21], 8 - adds r19 = 128, r34 - adds r20 = 136, r34 - adds r16 = 160, r34 - adds r17 = 168, r34 - adds r18 = 176, r34 - ld8 r41 = [r14] - ld8 r42 = [r15] - ld8 r38 = [r23] - ;; - ld8 r39 = [r19] - ld8 r40 = [r20] - ld8 r43 = [r16] - ld8 r44 = [r17] - ld8 r45 = [r18] - ld8 r1 = [r21] - mov b6 = r22 - ;; - br.call.sptk.many b0 = b6 ;; - adds r14 = 16, r34 - ;; - ld8 r15 = [r14] - ;; - stfd [r15] = f8 - br .L18 -.L19: - ld8 r21 = [r34] - adds r14 = 144, r34 - adds r18 = 176, r34 - ;; - ld8 r22 = [r21], 8 - adds r19 = 128, r34 - adds r20 = 136, r34 - adds r15 = 152, r34 - adds r16 = 160, r34 - adds r17 = 168, r34 - ld8 r41 = [r14] - ld8 r45 = [r18] - ld8 r38 = [r23] - ;; - ld8 r39 = [r19] - ld8 r40 = [r20] - ld8 r42 = [r15] - ld8 r43 = [r16] - ld8 r44 = [r17] - ld8 r1 = [r21] - mov b6 = r22 - ;; - br.call.sptk.many b0 = b6 ;; - ld4 r14 = [r33] - mov r18 = r8 - ;; - cmp4.ne p6, p7 = 1, r14 - (p7) br.cond.dpnt .L18 - ;; - cmp4.ne p6, p7 = 0, r14 - (p7) br.cond.dpnt .L98 - ;; - cmp4.ne p6, p7 = 2, r14 - (p7) br.cond.dpnt .L99 - ;; - cmp4.ne p6, p7 = 3, r14 - (p7) br.cond.dpnt .L99 - ;; - cmp4.ne p6, p7 = 4, r14 - (p6) br.cond.dptk .L29 -.L99: - adds r14 = 16, r34 - ;; - ld8 r15 = [r14] - ;; - st1 [r15] = r18 - br .L18 -.L29: - cmp4.ne p6, p7 = 5, r14 - (p7) br.cond.dpnt .L100 - ;; - cmp4.ne p6, p7 = 6, r14 - (p6) br.cond.dptk .L33 -.L100: - adds r14 = 16, r34 - ;; - ld8 r15 = [r14] - ;; - st2 [r15] = r18 - br .L18 -.L33: - cmp4.ne p6, p7 = 7, r14 - (p7) br.cond.dpnt .L101 - ;; - cmp4.ne p6, p7 = 8, r14 - (p6) br.cond.dptk .L37 -.L101: - adds r14 = 16, r34 - ;; - ld8 r15 = [r14] - ;; - st4 [r15] = r18 - br .L18 -.L37: - mov r15 = r14 - ;; - cmp4.eq p6, p7 = 9, r15 - (p6) br.cond.dptk .L98 - ;; - cmp4.eq p6, p7 = 11, r15 - (p6) br.cond.dptk .L98 - ;; - cmp4.eq p6, p7 = 10, r15 - (p6) br.cond.dptk .L98 - ;; - cmp4.eq p6, p7 = 12, r15 - (p6) br.cond.dptk .L98 - ;; - cmp4.ne p6, p7 = 15, r15 - (p6) br.cond.dptk .L45 -.L98: - adds r14 = 16, r34 - ;; - ld8 r15 = [r14] - ;; - st8 [r15] = r18 - br .L18 -.L45: - cmp4.ne p6, p7 = 16, r14 - (p6) br.cond.dptk .L18 - adds r15 = 8, r34 - ;; - ld4 r14 = [r15] - ;; - and r14 = 1, r14 - ;; - cmp4.eq p6, p7 = 0, r14 - (p6) br.cond.dptk .L48 - adds r14 = 32, r34 - ;; - ld8 r14 = [r14] - ;; - cmp.ne p6, p7 = 1, r14 - (p6) br.cond.dptk .L49 - adds r14 = 16, r34 - ld1 r16 = [r18] - ;; - ld8 r15 = [r14] - ;; - st1 [r15] = r16 - br .L18 -.L49: - cmp.ne p6, p7 = 2, r14 - (p6) br.cond.dptk .L51 - adds r14 = 16, r34 - ld2 r16 = [r18] - ;; - ld8 r15 = [r14] - ;; - st2 [r15] = r16 - br .L18 -.L51: - cmp.ne p6, p7 = 4, r14 - (p6) br.cond.dptk .L53 - adds r14 = 16, r34 - ld4 r16 = [r18] - ;; - ld8 r15 = [r14] - ;; - st4 [r15] = r16 - br .L18 -.L53: - cmp.ne p6, p7 = 8, r14 - (p6) br.cond.dptk .L55 - adds r14 = 16, r34 - ld8 r16 = [r18] - ;; - ld8 r15 = [r14] - ;; - st8 [r15] = r16 - br .L18 -.L55: - adds r14 = 7, r14 - ;; - shr.u r14 = r14, 3 - ;; - adds r14 = -1, r14 - ;; - cmp4.le p6, p7 = 0, r14 - sxt4 r17 = r14 - (p7) br.cond.dpnt .L18 - adds r14 = 16, r34 - ;; - ld8 r19 = [r14] -.L59: - shl r14 = r17, 3 - adds r17 = -1, r17 - ;; - add r16 = r18, r14 - add r14 = r19, r14 - cmp4.le p6, p7 = 0, r17 - ;; - ld8 r15 = [r16] - sxt4 r17 = r17 - ;; - st8 [r14] = r15 - (p6) br.cond.dptk .L59 - br .L18 -.L48: - ld4 r14 = [r15] - addl r15 = 512, r0 - ;; - and r14 = r15, r14 - ;; - cmp4.eq p6, p7 = 0, r14 - (p6) br.cond.dptk .L18 - adds r22 = 32, r34 - ;; - ld8 r15 = [r22] - ;; - adds r14 = -1, r15 - ;; - cmp.ltu p6, p7 = 31, r14 - (p6) br.cond.dptk .L18 - ;; - cmp.eq p6, p7 = 0, r15 - (p6) br.cond.dptk .L64 - adds r14 = 16, r34 - ;; - ld8 r15 = [r14] - ;; - st1 [r15] = r18 - ld8 r15 = [r22] - ;; -.L64: - cmp.geu p6, p7 = 1, r15 - (p6) br.cond.dptk .L65 - adds r14 = 16, r34 - shr r16 = r18, 8 - ;; - ld8 r15 = [r14] - ;; - adds r15 = 1, r15 - ;; - st1 [r15] = r16 - ld8 r15 = [r22] - ;; -.L65: - cmp.geu p6, p7 = 2, r15 - (p6) br.cond.dptk .L66 - adds r14 = 16, r34 - shr r16 = r18, 16 - ;; - ld8 r15 = [r14] - ;; - adds r15 = 2, r15 - ;; - st1 [r15] = r16 - ld8 r15 = [r22] - ;; -.L66: - cmp.geu p6, p7 = 3, r15 - (p6) br.cond.dptk .L67 - adds r14 = 16, r34 - shr r16 = r18, 24 - ;; - ld8 r15 = [r14] - ;; - adds r15 = 3, r15 - ;; - st1 [r15] = r16 - ld8 r15 = [r22] - ;; -.L67: - cmp.geu p6, p7 = 4, r15 - (p6) br.cond.dptk .L68 - adds r14 = 16, r34 - shr r16 = r18, 32 - ;; - ld8 r15 = [r14] - ;; - adds r15 = 4, r15 - ;; - st1 [r15] = r16 - ld8 r15 = [r22] - ;; -.L68: - cmp.geu p6, p7 = 5, r15 - (p6) br.cond.dptk .L69 - adds r14 = 16, r34 - shr r16 = r18, 40 - ;; - ld8 r15 = [r14] - ;; - adds r15 = 5, r15 - ;; - st1 [r15] = r16 - ld8 r15 = [r22] - ;; -.L69: - cmp.geu p6, p7 = 6, r15 - (p6) br.cond.dptk .L70 - adds r14 = 16, r34 - shr r16 = r18, 48 - ;; - ld8 r15 = [r14] - ;; - adds r15 = 6, r15 - ;; - st1 [r15] = r16 - ld8 r15 = [r22] - ;; -.L70: - cmp.geu p6, p7 = 7, r15 - (p6) br.cond.dptk .L71 - adds r14 = 16, r34 - shr r16 = r18, 56 - ;; - ld8 r15 = [r14] - ;; - adds r15 = 7, r15 - ;; - st1 [r15] = r16 - ld8 r15 = [r22] - ;; -.L71: - cmp.geu p6, p7 = 8, r15 - (p6) br.cond.dptk .L18 - adds r16 = 16, r34 - ;; - ld8 r14 = [r16] - ;; - adds r14 = 8, r14 - ;; - st1 [r14] = r9 - ld8 r15 = [r22] - ;; - cmp.geu p6, p7 = 9, r15 - (p6) br.cond.dptk .L73 - ld8 r14 = [r16] - shr r15 = r9, 8 - ;; - adds r14 = 9, r14 - ;; - st1 [r14] = r15 - ld8 r15 = [r22] - ;; -.L73: - cmp.geu p6, p7 = 10, r15 - (p6) br.cond.dptk .L74 - ld8 r14 = [r16] - shr r15 = r9, 16 - ;; - adds r14 = 10, r14 - ;; - st1 [r14] = r15 -.L74: - ld8 r14 = [r22] - ;; - cmp.geu p6, p7 = 11, r14 - (p6) br.cond.dptk .L75 - ld8 r14 = [r16] - shr r15 = r9, 24 - ;; - adds r14 = 11, r14 - ;; - st1 [r14] = r15 - ld8 r14 = [r22] - ;; -.L75: - cmp.geu p6, p7 = 12, r14 - (p6) br.cond.dptk .L76 - ld8 r14 = [r16] - shr r15 = r9, 32 - ;; - adds r14 = 12, r14 - ;; - st1 [r14] = r15 - ld8 r14 = [r22] - ;; -.L76: - cmp.geu p6, p7 = 13, r14 - (p6) br.cond.dptk .L77 - ld8 r14 = [r16] - shr r15 = r9, 40 - ;; - adds r14 = 13, r14 - ;; - st1 [r14] = r15 - ld8 r14 = [r22] - ;; -.L77: - cmp.geu p6, p7 = 14, r14 - (p6) br.cond.dptk .L78 - ld8 r14 = [r16] - shr r15 = r9, 48 - ;; - adds r14 = 14, r14 - ;; - st1 [r14] = r15 - ld8 r14 = [r22] - ;; -.L78: - cmp.geu p6, p7 = 15, r14 - (p6) br.cond.dptk .L79 - ld8 r14 = [r16] - shr r15 = r9, 56 - ;; - adds r14 = 15, r14 - ;; - st1 [r14] = r15 - ld8 r14 = [r22] - ;; -.L79: - cmp.geu p6, p7 = 16, r14 - (p6) br.cond.dptk .L18 - ld8 r14 = [r16] - ;; - adds r14 = 16, r14 - ;; - st1 [r14] = r10 - ld8 r14 = [r22] - ;; - cmp.geu p6, p7 = 17, r14 - (p6) br.cond.dptk .L81 - ld8 r14 = [r16] - shr r15 = r10, 8 - ;; - adds r14 = 17, r14 - ;; - st1 [r14] = r15 - ld8 r14 = [r22] - ;; -.L81: - cmp.geu p6, p7 = 18, r14 - (p6) br.cond.dptk .L82 - ld8 r14 = [r16] - shr r15 = r10, 16 - ;; - adds r14 = 18, r14 - ;; - st1 [r14] = r15 - ld8 r14 = [r22] - ;; -.L82: - cmp.geu p6, p7 = 19, r14 - (p6) br.cond.dptk .L83 - ld8 r14 = [r16] - shr r15 = r10, 24 - ;; - adds r14 = 19, r14 - ;; - st1 [r14] = r15 - ld8 r14 = [r22] - ;; -.L83: - cmp.geu p6, p7 = 20, r14 - (p6) br.cond.dptk .L84 - ld8 r14 = [r16] - shr r15 = r10, 32 - ;; - adds r14 = 20, r14 - ;; - st1 [r14] = r15 - ld8 r14 = [r22] - ;; -.L84: - cmp.geu p6, p7 = 21, r14 - (p6) br.cond.dptk .L85 - ld8 r14 = [r16] - shr r15 = r10, 40 - ;; - adds r14 = 21, r14 - ;; - st1 [r14] = r15 -.L85: - ld8 r14 = [r22] - ;; - cmp.geu p6, p7 = 22, r14 - (p6) br.cond.dptk .L86 - ld8 r14 = [r16] - shr r15 = r10, 48 - ;; - adds r14 = 22, r14 - ;; - st1 [r14] = r15 - ld8 r14 = [r22] - ;; -.L86: - cmp.geu p6, p7 = 23, r14 - (p6) br.cond.dptk .L87 - ld8 r14 = [r16] - shr r15 = r10, 56 - ;; - adds r14 = 23, r14 - ;; - st1 [r14] = r15 - ld8 r14 = [r22] - ;; -.L87: - cmp.geu p6, p7 = 24, r14 - (p6) br.cond.dptk .L18 - ld8 r14 = [r16] - ;; - adds r14 = 24, r14 - ;; - st1 [r14] = r11 - ld8 r14 = [r22] - ;; - cmp.geu p6, p7 = 25, r14 - (p6) br.cond.dptk .L89 - ld8 r14 = [r16] - shr r15 = r11, 8 - ;; - adds r14 = 25, r14 - ;; - st1 [r14] = r15 - ld8 r14 = [r22] - ;; -.L89: - cmp.geu p6, p7 = 26, r14 - (p6) br.cond.dptk .L90 - ld8 r14 = [r16] - shr r15 = r11, 16 - ;; - adds r14 = 26, r14 - ;; - st1 [r14] = r15 - ld8 r14 = [r22] - ;; -.L90: - cmp.geu p6, p7 = 27, r14 - (p6) br.cond.dptk .L91 - ld8 r14 = [r16] - shr r15 = r11, 24 - ;; - adds r14 = 27, r14 - ;; - st1 [r14] = r15 - ld8 r14 = [r22] - ;; -.L91: - cmp.geu p6, p7 = 28, r14 - (p6) br.cond.dptk .L92 - ld8 r14 = [r16] - shr r15 = r11, 32 - ;; - adds r14 = 28, r14 - ;; - st1 [r14] = r15 - ld8 r14 = [r22] - ;; -.L92: - cmp.geu p6, p7 = 29, r14 - (p6) br.cond.dptk .L93 - ld8 r14 = [r16] - shr r15 = r11, 40 - ;; - adds r14 = 29, r14 - ;; - st1 [r14] = r15 - ld8 r14 = [r22] - ;; -.L93: - cmp.geu p6, p7 = 30, r14 - (p6) br.cond.dptk .L94 - ld8 r14 = [r16] - shr r15 = r11, 48 - ;; - adds r14 = 30, r14 - ;; - st1 [r14] = r15 - ld8 r14 = [r22] - ;; -.L94: - cmp.geu p6, p7 = 31, r14 - (p6) br.cond.dptk .L18 - ld8 r14 = [r16] - shr r15 = r11, 56 - ;; - adds r14 = 31, r14 - ;; - st1 [r14] = r15 -.L18: - addl r8 = 0, r0 - adds r12 = 16, r12 - mov ar.pfs = r37 - mov b0 = r36 - br.ret.sptk.many b0 - .endp __builtin_avcall# - .ident "GCC: (GNU) 2.9-ia64-000216 snap-000324" DELETED ffcall/avcall/avcall-m68k-amiga.c Index: ffcall/avcall/avcall-m68k-amiga.c ================================================================== --- ffcall/avcall/avcall-m68k-amiga.c +++ /dev/null @@ -1,189 +0,0 @@ -#ifndef _avcall_m68k_amiga_c /*-*- C -*-*/ -#define _avcall_m68k_amiga_c -/** - Copyright 1993 Bill Triggs, - Copyright 1995-1999 Bruno Haible, - Copyright 1997 Jörg Höhle, - - This is free software distributed under the GNU General Public - Licence described in the file COPYING. Contact the author if - you don't have this or can't live with it. There is ABSOLUTELY - NO WARRANTY, explicit or implied, on this software. -**/ -/*---------------------------------------------------------------------- - !!! THIS ROUTINE MUST BE COMPILED gcc -O !!! - - Foreign function interface for a m68k Amiga with gcc. - - This calls a C function with an argument list built up using macros - defined in av_call.h. - - M68k Argument Passing Conventions: - - All arguments are passed on the stack with word alignment. Doubles take - two words. Structure args are passed as true structures embedded in the - argument stack. To return a structure, the called function copies the - return value to the address supplied in register "a1". Gcc without - -fpcc-struct-return returns <= 4 byte structures as integers. - - Some specific arguments may be passed in registers. - - Compile this routine with gcc -O (or -O2 or -g -O) to get the right - register variables, or use the assembler version. - ----------------------------------------------------------------------*/ -#include "avcall.h.in" - -#define RETURN(TYPE,VAL) (*(TYPE*)l->raddr = (TYPE)(VAL)) - -int -__builtin_avcall(av_alist* l) -{ - register __avword* sp __asm__("sp"); /* C names for registers */ - register __avword* sret __asm__("a1"); /* structure return pointer */ - register __avword iret __asm__("d0"); - register __avword iret2 __asm__("d1"); - register float fret __asm__("d0"); /* d0 */ - register double dret __asm__("d0"); /* d0,d1 */ - - #define __NUM_SAVED_REGS (6+7) /* save d2-d7/a0-a6 */ - #define __SAVED_REGS 0x7ffc /* moveml mask for d2-d7/a0-a6 */ - /* space for callee's stack frame and temp space for saving registers */ - sp -= __AV_ALIST_WORDS + __NUM_SAVED_REGS; - #define regspace (sp+__AV_ALIST_WORDS) /* temp space for saving registers */ - - { - __avword* argframe = sp; /* stack offset for argument list */ - int arglen = l->aptr - l->args; - int i; - - for (i = 0; i < arglen; i++) /* push function args onto stack */ - argframe[i] = l->args[i]; - } - - if (l->rtype == __AVstruct) /* put struct return address into a1 */ - l->regargs[8+1] = (__avword)(l->raddr); - - /* Save most registers by hand. There is no way to persuade gcc that - * they are clobbered, no matter how large we make the clobber list of - * of the asm statements. - */ - __asm__("moveml %1,%0" /* %1 == #0x7ffc == d2-d7/a0-a6 */ - : "=m" (regspace[0]) : "n" (__SAVED_REGS)); - - __asm__("movel %0,sp@-" : : "g" (&&return_here)); /* prepare function call */ - __asm__("movel %0,sp@-" : : "g" (l->func)); - - /* put some arguments into registers */ - __asm__("moveml %0,#x7fff" /* 0x7fff == d0-d7/a0-a6 */ - : - : "m" (l->regargs[0]) - /* no need for a clobber list since we save the registers ourselves */ - ); - - __asm__("rts" : "=d" (iret) : : "d1"); /* call function */ - return_here: /* function returns here */ - - __asm__("moveml %0,%1" /* %1 == #0x7ffc == d2-d7/a0-a6 */ - : : "m" (regspace[0]), "n" (__SAVED_REGS) ); /* restore registers */ - - sp += __AV_ALIST_WORDS + __NUM_SAVED_REGS; /* restore stack pointer */ - - /* save return value */ - if (l->rtype == __AVvoid) { - } else - if (l->rtype == __AVword) { - RETURN(__avword, iret); - } else - if (l->rtype == __AVchar) { - RETURN(char, iret); - } else - if (l->rtype == __AVschar) { - RETURN(signed char, iret); - } else - if (l->rtype == __AVuchar) { - RETURN(unsigned char, iret); - } else - if (l->rtype == __AVshort) { - RETURN(short, iret); - } else - if (l->rtype == __AVushort) { - RETURN(unsigned short, iret); - } else - if (l->rtype == __AVint) { - RETURN(int, iret); - } else - if (l->rtype == __AVuint) { - RETURN(unsigned int, iret); - } else - if (l->rtype == __AVlong) { - RETURN(long, iret); - } else - if (l->rtype == __AVulong) { - RETURN(unsigned long, iret); - } else - if (l->rtype == __AVlonglong || l->rtype == __AVulonglong) { - ((__avword*)l->raddr)[0] = iret; - ((__avword*)l->raddr)[1] = iret2; - } else - if (l->rtype == __AVfloat) { - if (l->flags & __AV_SUNCC_FLOAT_RETURN) { - RETURN(float, (float)dret); - } else { - RETURN(float, fret); - } - } else - if (l->rtype == __AVdouble) { - RETURN(double, dret); - } else - if (l->rtype == __AVvoidp) { - RETURN(void*, iret); - } else - if (l->rtype == __AVstruct) { - /* NB: On m68k, all structure sizes are divisible by 2. */ - if (l->flags & __AV_REGISTER_STRUCT_RETURN) { - if (l->rsize == sizeof(char)) { /* can't occur */ - RETURN(char, iret); - goto done; - } else - if (l->rsize == sizeof(short)) { - RETURN(short, iret); - goto done; - } else - if (l->rsize == sizeof(int)) { - RETURN(int, iret); - goto done; - } else - if (l->rsize == 2*sizeof(__avword)) { - ((__avword*)l->raddr)[0] = iret; - ((__avword*)l->raddr)[1] = iret2; - goto done; - } - } - if (l->flags & __AV_PCC_STRUCT_RETURN) { - /* pcc struct return convention: need a *(TYPE*)l->raddr = *(TYPE*)iret; */ - if (l->rsize == sizeof(char)) { /* can't occur */ - RETURN(char, *(char*)iret); - } else - if (l->rsize == sizeof(short)) { - RETURN(short, *(short*)iret); - } else - if (l->rsize == sizeof(int)) { - RETURN(int, *(int*)iret); - } else - if (l->rsize == sizeof(double)) { - ((int*)l->raddr)[0] = ((int*)iret)[0]; - ((int*)l->raddr)[1] = ((int*)iret)[1]; - } else { - int n = (l->rsize + sizeof(__avword)-1)/sizeof(__avword); - while (--n >= 0) - ((__avword*)l->raddr)[n] = ((__avword*)iret)[n]; - } - } else { - /* normal struct return convention */ - } - done: ; - } - return 0; -} - -#endif /*_avcall_m68k_amiga_c */ DELETED ffcall/avcall/avcall-m68k-amiga.s Index: ffcall/avcall/avcall-m68k-amiga.s ================================================================== --- ffcall/avcall/avcall-m68k-amiga.s +++ /dev/null @@ -1,217 +0,0 @@ -#NO_APP -gcc2_compiled.: -___gnu_compiled_c: -.text - .even -.globl ___builtin_avcall -___builtin_avcall: - moveml #0x3020,sp@- - movel sp@(16),a2 - lea sp@(-1076),sp - moveq #-32,d0 - addl a2@(20),d0 - subl a2,d0 - asrl #2,d0 - jle L4 - movel sp,a1 - lea a2@(32),a0 - .even -L6: - movel a0@+,a1@+ - subql #1,d0 - jne L6 -L4: - moveq #16,d0 - cmpl a2@(12),d0 - jne L8 - movel a2@(8),a2@(1092) -L8: -#APP - moveml #32764,sp@(1024) - movel #L9,sp@- - movel a2@,sp@- - moveml a2@(1056),#x7fff - rts -#NO_APP -L9: -#APP - moveml sp@(1024),#32764 -#NO_APP - lea sp@(1076),sp - movel a2@(12),a0 - moveq #1,d2 - cmpl a0,d2 - jeq L11 - cmpw #0,a0 - jeq L66 - moveq #2,d3 - cmpl a0,d3 - jeq L67 - moveq #3,d2 - cmpl a0,d2 - jeq L67 - moveq #4,d3 - cmpl a0,d3 - jeq L67 - moveq #5,d2 - cmpl a0,d2 - jeq L68 - moveq #6,d3 - cmpl a0,d3 - jeq L68 - moveq #7,d2 - cmpl a0,d2 - jeq L66 - moveq #8,d3 - cmpl a0,d3 - jeq L66 - moveq #9,d2 - cmpl a0,d2 - jeq L66 - moveq #10,d3 - cmpl a0,d3 - jeq L66 - moveq #-11,d2 - addl a0,d2 - moveq #1,d3 - cmpl d2,d3 - jcc L69 - moveq #13,d2 - cmpl a0,d2 - jne L34 - btst #5,a2@(7) - jeq L35 - movel a2@(8),a2 - movel d1,sp@- - movel d0,sp@- - jbsr ___truncdfsf2 - addql #8,sp - movel d0,a2@ - jra L11 - .even -L35: - movel a2@(8),a0 - movel d0,a0@ - jra L11 - .even -L34: - moveq #14,d3 - cmpl a0,d3 - jne L38 - movel a2@(8),a0 - movel d0,a0@ - movel d1,a0@(4) - jra L11 - .even -L38: - moveq #15,d2 - cmpl a0,d2 - jeq L66 - moveq #16,d3 - cmpl a0,d3 - jne L11 - movel a2@(4),d2 - btst #9,d2 - jeq L43 - movel a2@(16),a0 - moveq #1,d3 - cmpl a0,d3 - jne L44 -L67: - movel a2@(8),a0 - moveb d0,a0@ - jra L11 - .even -L44: - moveq #2,d3 - cmpl a0,d3 - jne L47 -L68: - movel a2@(8),a0 - movew d0,a0@ - jra L11 - .even -L47: - moveq #4,d3 - cmpl a0,d3 - jne L49 -L66: - movel a2@(8),a0 - movel d0,a0@ - jra L11 - .even -L49: - moveq #8,d3 - cmpl a0,d3 - jne L43 -L69: - movel a2@(8),a0 - movel d0,a0@ - movel a2@(8),a0 - movel d1,a0@(4) - jra L11 - .even -L43: - btst #0,d2 - jeq L11 - movel a2@(16),d1 - moveq #1,d2 - cmpl d1,d2 - jne L53 - movel a2@(8),a1 - movel d0,a0 - moveb a0@,a1@ - jra L11 - .even -L53: - moveq #2,d3 - cmpl d1,d3 - jne L55 - movel a2@(8),a1 - movel d0,a0 - movew a0@,a1@ - jra L11 - .even -L55: - moveq #4,d2 - cmpl d1,d2 - jne L57 - movel a2@(8),a1 - movel d0,a0 - movel a0@,a1@ - jra L11 - .even -L57: - moveq #8,d3 - cmpl d1,d3 - jne L59 - movel a2@(8),a0 - movel d0,a1 - movel a1@,a0@ - movel a2@(8),a0 - moveq #4,d0 - movel a1@(d0:l),a0@(4) - jra L11 - .even -L59: - addql #3,d1 - lsrl #2,d1 - subql #1,d1 - jmi L11 - movel d1,a1 - movel a1,d2 - lsll #2,d2 - movel d2,a1 - .even -L63: - movel a2@(8),a0 - movel a1@(d0:l),a0@(a1:l) - subql #4,a1 - dbra d1,L63 - clrw d1 - subql #1,d1 - jcc L63 -L11: - moveq #0,d0 - moveml sp@+,#0x40c - rts DELETED ffcall/avcall/avcall-m68k.c Index: ffcall/avcall/avcall-m68k.c ================================================================== --- ffcall/avcall/avcall-m68k.c +++ /dev/null @@ -1,168 +0,0 @@ -#ifndef _avcall_m68k_c /*-*- C -*-*/ -#define _avcall_m68k_c -/** - Copyright 1993 Bill Triggs, - Copyright 1995-1999 Bruno Haible, - - This is free software distributed under the GNU General Public - Licence described in the file COPYING. Contact the author if - you don't have this or can't live with it. There is ABSOLUTELY - NO WARRANTY, explicit or implied, on this software. -**/ -/*---------------------------------------------------------------------- - !!! THIS ROUTINE MUST BE COMPILED gcc -O !!! - - Foreign function interface for a m68k Sun3 with gcc/sun-cc. - - This calls a C function with an argument list built up using macros - defined in av_call.h. - - M68k Argument Passing Conventions: - - All arguments are passed on the stack with word alignment. Doubles take - two words. Structure args are passed as true structures embedded in the - argument stack. To return a structure, the called function copies the - return value to the address supplied in register "a1". Gcc without - -fpcc-struct-return returns <= 4 byte structures as integers. - - Compile this routine with gcc -O (or -O2 or -g -O) to get the right - register variables, or use the assembler version. - ----------------------------------------------------------------------*/ -#include "avcall.h.in" - -#define RETURN(TYPE,VAL) (*(TYPE*)l->raddr = (TYPE)(VAL)) - -int -__builtin_avcall(av_alist* l) -{ - register __avword* sp __asm__("sp"); /* C names for registers */ - register __avword* sret __asm__("a1"); /* structure return pointer */ -/*register __avword iret __asm__("d0"); */ - register __avword iret2 __asm__("d1"); - register float fret __asm__("d0"); /* d0 */ - register double dret __asm__("d0"); /* d0,d1 */ - register float fp_fret __asm__("fp0"); - register double fp_dret __asm__("fp0"); - - __avword* argframe = (sp -= __AV_ALIST_WORDS); /* make room for argument list */ - int arglen = l->aptr - l->args; - __avword i; - __avword i2; - - for (i = 0; i < arglen; i++) /* push function args onto stack */ - argframe[i] = l->args[i]; - - if (l->rtype == __AVstruct) /* push struct return address */ - __asm__("move%.l %0,%/a1" : : "g" (l->raddr)); - - i = (*l->func)(); /* call function */ - i2 = iret2; - - /* save return value */ - if (l->rtype == __AVvoid) { - } else - if (l->rtype == __AVword) { - RETURN(__avword, i); - } else - if (l->rtype == __AVchar) { - RETURN(char, i); - } else - if (l->rtype == __AVschar) { - RETURN(signed char, i); - } else - if (l->rtype == __AVuchar) { - RETURN(unsigned char, i); - } else - if (l->rtype == __AVshort) { - RETURN(short, i); - } else - if (l->rtype == __AVushort) { - RETURN(unsigned short, i); - } else - if (l->rtype == __AVint) { - RETURN(int, i); - } else - if (l->rtype == __AVuint) { - RETURN(unsigned int, i); - } else - if (l->rtype == __AVlong) { - RETURN(long, i); - } else - if (l->rtype == __AVulong) { - RETURN(unsigned long, i); - } else - if (l->rtype == __AVlonglong || l->rtype == __AVulonglong) { - ((__avword*)l->raddr)[0] = i; - ((__avword*)l->raddr)[1] = i2; - } else - if (l->rtype == __AVfloat) { - if (l->flags & __AV_FREG_FLOAT_RETURN) { - RETURN(float, fp_fret); - } else { - if (l->flags & __AV_SUNCC_FLOAT_RETURN) { - RETURN(float, (float)dret); - } else { - RETURN(float, fret); - } - } - } else - if (l->rtype == __AVdouble) { - if (l->flags & __AV_FREG_FLOAT_RETURN) { - RETURN(double, fp_dret); - } else { - RETURN(double, dret); - } - } else - if (l->rtype == __AVvoidp) { - RETURN(void*, i); - } else - if (l->rtype == __AVstruct) { - /* NB: On m68k, all structure sizes are divisible by 2. */ - if (l->flags & __AV_REGISTER_STRUCT_RETURN) { - if (l->rsize == sizeof(char)) { /* can't occur */ - RETURN(char, i); - goto done; - } else - if (l->rsize == sizeof(short)) { - RETURN(short, i); - goto done; - } else - if (l->rsize == sizeof(int)) { - RETURN(int, i); - goto done; - } else - if (l->rsize == 2*sizeof(__avword)) { - ((__avword*)l->raddr)[0] = i; - ((__avword*)l->raddr)[1] = i2; - goto done; - } - } - if (l->flags & __AV_PCC_STRUCT_RETURN) { - /* pcc struct return convention: need a *(TYPE*)l->raddr = *(TYPE*)i; */ - if (l->rsize == sizeof(char)) { /* can't occur */ - RETURN(char, *(char*)i); - } else - if (l->rsize == sizeof(short)) { - RETURN(short, *(short*)i); - } else - if (l->rsize == sizeof(int)) { - RETURN(int, *(int*)i); - } else - if (l->rsize == sizeof(double)) { - ((int*)l->raddr)[0] = ((int*)i)[0]; - ((int*)l->raddr)[1] = ((int*)i)[1]; - } else { - int n = (l->rsize + sizeof(__avword)-1)/sizeof(__avword); - while (--n >= 0) - ((__avword*)l->raddr)[n] = ((__avword*)i)[n]; - } - } else { - /* normal struct return convention */ - } - done: ; - } - sp += __AV_ALIST_WORDS; - return 0; -} - -#endif /*_avcall_m68k_c */ DELETED ffcall/avcall/avcall-m68k.mit.S Index: ffcall/avcall/avcall-m68k.mit.S ================================================================== --- ffcall/avcall/avcall-m68k.mit.S +++ /dev/null @@ -1,225 +0,0 @@ -#include "asmm68k.h" -.text - .even -.globl C(__builtin_avcall) - DECLARE_FUNCTION(__builtin_avcall) -C(__builtin_avcall:) - moveml #0x3030,$sp@- - movel $sp@(20),$a2 - lea $sp@(-1024),$sp - moveq #-32,$d0 - addl $a2@(20),$d0 - subl $a2,$d0 - asrl #2,$d0 - jle L4 - movel $sp,$a3 - lea $a2@(32),$a0 - movel $d0,$a1 - .even -L6: - movel $a0@+,$a3@+ - subql #1,$a1 - tstl $a1 - jne L6 -L4: - moveq #16,$d0 - cmpl $a2@(12),$d0 - jne L8 - movel $a2@(8),$a1 -L8: - movel $a2@,$a0 - jbsr $a0@ - movel $d0,$a1 - movel $d1,$a3 - movel $a2@(12),$d2 - moveq #1,$d1 - cmpl $d2,$d1 - jeq L10 - tstl $d2 - jeq L69 - moveq #2,$d3 - cmpl $d2,$d3 - jeq L70 - moveq #3,$d3 - cmpl $d2,$d3 - jeq L70 - moveq #4,$d3 - cmpl $d2,$d3 - jne L17 -L70: - movel $a2@(8),$a0 - movew $a1,$d0 - moveb $d0,$a0@ - jra L10 - .even -L17: - moveq #5,$d3 - cmpl $d2,$d3 - jeq L71 - moveq #6,$d3 - cmpl $d2,$d3 - jeq L71 - moveq #7,$d3 - cmpl $d2,$d3 - jeq L69 - moveq #8,$d3 - cmpl $d2,$d3 - jeq L69 - moveq #9,$d3 - cmpl $d2,$d3 - jeq L69 - moveq #10,$d3 - cmpl $d2,$d3 - jeq L69 - movel $a2@(12),$a0 - moveq #-11,$d2 - addl $a0,$d2 - moveq #1,$d3 - cmpl $d2,$d3 - jcc L72 - moveq #13,$d2 - cmpl $a0,$d2 - jne L33 - movel $a2@(4),$d2 - btst #6,$d2 - jeq L34 - movel $a2@(8),$a0 - fmoves $fp0,$a0@ - jra L10 - .even -L34: - btst #5,$d2 - jeq L36 - movel $a2@(8),$a0 - movel $d1,$sp@- - movel $d0,$sp@- - fmoved $sp@+,$fp0 - fmoves $fp0,$a0@ - jra L10 - .even -L36: - movel $a2@(8),$a0 - movel $d0,$a0@ - jra L10 - .even -L33: - moveq #14,$d2 - cmpl $a0,$d2 - jne L39 - btst #6,$a2@(7) - jeq L40 - movel $a2@(8),$a0 - fmoved $fp0,$a0@ - jra L10 - .even -L40: - movel $a2@(8),$a0 - movel $d0,$a0@ - movel $d1,$a0@(4) - jra L10 - .even -L39: - moveq #15,$d3 - cmpl $a0,$d3 - jeq L69 - moveq #16,$d0 - cmpl $a0,$d0 - jne L10 - movel $a2@(4),$d0 - btst #9,$d0 - jeq L46 - movel $a2@(16),$d1 - moveq #1,$d2 - cmpl $d1,$d2 - jne L47 - movel $a2@(8),$a0 - movew $a1,$d3 - moveb $d3,$a0@ - jra L10 - .even -L47: - moveq #2,$d2 - cmpl $d1,$d2 - jne L50 -L71: - movel $a2@(8),$a0 - movew $a1,$a0@ - jra L10 - .even -L50: - moveq #4,$d3 - cmpl $d1,$d3 - jne L52 -L69: - movel $a2@(8),$a0 - movel $a1,$a0@ - jra L10 - .even -L52: - moveq #8,$d2 - cmpl $d1,$d2 - jne L46 -L72: - movel $a2@(8),$a0 - movel $a1,$a0@ - movel $a2@(8),$a0 - movel $a3,$a0@(4) - jra L10 - .even -L46: - btst #0,$d0 - jeq L10 - movel $a2@(16),$d0 - moveq #1,$d3 - cmpl $d0,$d3 - jne L56 - movel $a2@(8),$a0 - moveb $a1@,$a0@ - jra L10 - .even -L56: - moveq #2,$d1 - cmpl $d0,$d1 - jne L58 - movel $a2@(8),$a0 - movew $a1@,$a0@ - jra L10 - .even -L58: - moveq #4,$d2 - cmpl $d0,$d2 - jne L60 - movel $a2@(8),$a0 - movel $a1@,$a0@ - jra L10 - .even -L60: - moveq #8,$d3 - cmpl $d0,$d3 - jne L62 - movel $a2@(8),$a0 - movel $a1@,$a0@ - movel $a2@(8),$a0 - movel $a1@(4),$a0@(4) - jra L10 - .even -L62: - addql #3,$d0 - lsrl #2,$d0 - subql #1,$d0 - jmi L10 - lea $a1@($d0:l:4),$a1 - .even -L66: - movel $a2@(8),$a0 - movel $a1@,$a0@($d0:l:4) - subql #4,$a1 - dbra $d0,L66 - clrw $d0 - subql #1,$d0 - jcc L66 -L10: - lea $sp@(1024),$sp - clrl $d0 - moveml $sp@+,#0xc0c - rts DELETED ffcall/avcall/avcall-m68k.mot.s Index: ffcall/avcall/avcall-m68k.mot.s ================================================================== --- ffcall/avcall/avcall-m68k.mot.s +++ /dev/null @@ -1,232 +0,0 @@ - .file "avcall-m68k.c" - .version "01.01" -gcc2_compiled.: -.text - .align 2 -.globl __builtin_avcall - .type __builtin_avcall,@function -__builtin_avcall: - movm.l #0x3030,-(%sp) - move.l 20(%sp),%a2 - lea (-1024,%sp),%sp - moveq.l #-32,%d0 - add.l 20(%a2),%d0 - sub.l %a2,%d0 - asr.l #2,%d0 - jble .L4 - move.l %sp,%a3 - lea (32,%a2),%a0 - move.l %d0,%a1 - .align 2 -.L6: - move.l (%a0)+,(%a3)+ - subq.l #1,%a1 - tst.l %a1 - jbne .L6 -.L4: - moveq.l #16,%d0 - cmp.l 12(%a2),%d0 - jbne .L8 -#APP - move.l 8(%a2),%a1 -#NO_APP -.L8: - move.l (%a2),%a0 - jbsr (%a0) - move.l %d0,%a1 - move.l %d1,%a3 - move.l 12(%a2),%d2 - moveq.l #1,%d1 - cmp.l %d2,%d1 - jbeq .L10 - tst.l %d2 - jbeq .L69 - moveq.l #2,%d3 - cmp.l %d2,%d3 - jbeq .L70 - moveq.l #3,%d3 - cmp.l %d2,%d3 - jbeq .L70 - moveq.l #4,%d3 - cmp.l %d2,%d3 - jbne .L17 -.L70: - move.l 8(%a2),%a0 - move.w %a1,%d0 - move.b %d0,(%a0) - jbra .L10 - .align 2 -.L17: - moveq.l #5,%d3 - cmp.l %d2,%d3 - jbeq .L71 - moveq.l #6,%d3 - cmp.l %d2,%d3 - jbeq .L71 - moveq.l #7,%d3 - cmp.l %d2,%d3 - jbeq .L69 - moveq.l #8,%d3 - cmp.l %d2,%d3 - jbeq .L69 - moveq.l #9,%d3 - cmp.l %d2,%d3 - jbeq .L69 - moveq.l #10,%d3 - cmp.l %d2,%d3 - jbeq .L69 - move.l 12(%a2),%a0 - moveq.l #-11,%d2 - add.l %a0,%d2 - moveq.l #1,%d3 - cmp.l %d2,%d3 - jbcc .L72 - moveq.l #13,%d2 - cmp.l %a0,%d2 - jbne .L33 - move.l 4(%a2),%d2 - btst #6,%d2 - jbeq .L34 - move.l 8(%a2),%a0 - fmove.s %fp0,(%a0) - jbra .L10 - .align 2 -.L34: - btst #5,%d2 - jbeq .L36 - move.l 8(%a2),%a0 - move.l %d1,-(%sp) - move.l %d0,-(%sp) - fmove.d (%sp)+,%fp0 - fmove.s %fp0,(%a0) - jbra .L10 - .align 2 -.L36: - move.l 8(%a2),%a0 - move.l %d0,(%a0) - jbra .L10 - .align 2 -.L33: - moveq.l #14,%d2 - cmp.l %a0,%d2 - jbne .L39 - btst #6,7(%a2) - jbeq .L40 - move.l 8(%a2),%a0 - fmove.d %fp0,(%a0) - jbra .L10 - .align 2 -.L40: - move.l 8(%a2),%a0 - move.l %d0,(%a0) - move.l %d1,4(%a0) - jbra .L10 - .align 2 -.L39: - moveq.l #15,%d3 - cmp.l %a0,%d3 - jbeq .L69 - moveq.l #16,%d0 - cmp.l %a0,%d0 - jbne .L10 - move.l 4(%a2),%d0 - btst #9,%d0 - jbeq .L46 - move.l 16(%a2),%d1 - moveq.l #1,%d2 - cmp.l %d1,%d2 - jbne .L47 - move.l 8(%a2),%a0 - move.w %a1,%d3 - move.b %d3,(%a0) - jbra .L10 - .align 2 -.L47: - moveq.l #2,%d2 - cmp.l %d1,%d2 - jbne .L50 -.L71: - move.l 8(%a2),%a0 - move.w %a1,(%a0) - jbra .L10 - .align 2 -.L50: - moveq.l #4,%d3 - cmp.l %d1,%d3 - jbne .L52 -.L69: - move.l 8(%a2),%a0 - move.l %a1,(%a0) - jbra .L10 - .align 2 -.L52: - moveq.l #8,%d2 - cmp.l %d1,%d2 - jbne .L46 -.L72: - move.l 8(%a2),%a0 - move.l %a1,(%a0) - move.l 8(%a2),%a0 - move.l %a3,4(%a0) - jbra .L10 - .align 2 -.L46: - btst #0,%d0 - jbeq .L10 - move.l 16(%a2),%d0 - moveq.l #1,%d3 - cmp.l %d0,%d3 - jbne .L56 - move.l 8(%a2),%a0 - move.b (%a1),(%a0) - jbra .L10 - .align 2 -.L56: - moveq.l #2,%d1 - cmp.l %d0,%d1 - jbne .L58 - move.l 8(%a2),%a0 - move.w (%a1),(%a0) - jbra .L10 - .align 2 -.L58: - moveq.l #4,%d2 - cmp.l %d0,%d2 - jbne .L60 - move.l 8(%a2),%a0 - move.l (%a1),(%a0) - jbra .L10 - .align 2 -.L60: - moveq.l #8,%d3 - cmp.l %d0,%d3 - jbne .L62 - move.l 8(%a2),%a0 - move.l (%a1),(%a0) - move.l 8(%a2),%a0 - move.l 4(%a1),4(%a0) - jbra .L10 - .align 2 -.L62: - addq.l #3,%d0 - lsr.l #2,%d0 - subq.l #1,%d0 - jbmi .L10 - lea (%a1,%d0.l*4),%a1 - .align 2 -.L66: - move.l 8(%a2),%a0 - move.l (%a1),(%a0,%d0.l*4) - subq.l #4,%a1 - dbra %d0,.L66 - clr.w %d0 - subq.l #1,%d0 - jbcc .L66 -.L10: - lea (1024,%sp),%sp - clr.l %d0 - movm.l (%sp)+,#0xc0c - rts -.Lfe1: - .size __builtin_avcall,.Lfe1-__builtin_avcall - .ident "GCC: (GNU) 2.95.2 19991024 (release)" DELETED ffcall/avcall/avcall-m88k.c Index: ffcall/avcall/avcall-m88k.c ================================================================== --- ffcall/avcall/avcall-m88k.c +++ /dev/null @@ -1,149 +0,0 @@ -#ifndef _avcall_m88k_c /*-*- C -*-*/ -#define _avcall_m88k_c -/** - Copyright 1993 Bill Triggs, - Copyright 1995-1999 Bruno Haible, - - This is free software distributed under the GNU General Public - Licence described in the file COPYING. Contact the author if - you don't have this or can't live with it. There is ABSOLUTELY - NO WARRANTY, explicit or implied, on this software. -**/ -/*---------------------------------------------------------------------- - !!! THIS ROUTINE MUST BE COMPILED gcc -O -fno-omit-frame-pointer !!! - - Foreign function interface for a M88000 with gcc. - - This calls a C function with an argument list built up using macros - defined in av_call.h. - - M88k Argument Passing Conventions: - - All arguments, except the non-structs among the first 8 words, are passed - on the stack with word alignment. Doubles take two words and force double - alignment. Scalars among the first 8 words are passed in registers. - Structure args are are passed as true structures embedded in the argument - stack. - - To return a structure, the called function copies the return value to the - address supplied in register "r12". - - Compile this routine with gcc -O (or -O2 -fno-omit-frame-pointer or -g -O) - to get the right register variables. For other compilers use the - pre-compiled assembler version. - ----------------------------------------------------------------------*/ -#include "avcall.h.in" - -#define RETURN(TYPE,VAL) (*(TYPE*)l->raddr = (TYPE)(VAL)) - -register __avword* sret __asm__("r12"); /* structure return pointer */ - -int -__builtin_avcall(av_alist* l) -{ - register __avword* sp __asm__("r31"); /* C names for registers */ -/*register __avword iret __asm__("r2"); */ - register __avword iret2 __asm__("r3"); - register float fret __asm__("r2"); - register double dret __asm__("r2"); - - __avword* argframe = (sp -= __AV_ALIST_WORDS); /* make room for argument list */ - int arglen = l->aptr - l->args; - __avword i; - - for (i = 0; i < arglen; i++) /* push function args onto stack */ - argframe[i] = l->args[i]; - - if (l->rtype == __AVstruct) /* pass struct return address */ - sret = l->raddr; - - /* call function, pass 8 args in registers */ - i = (*l->func)(l->args[0], l->args[1], l->args[2], l->args[3], - l->args[4], l->args[5], l->args[6], l->args[7]); - - /* save return value */ - if (l->rtype == __AVvoid) { - } else - if (l->rtype == __AVword) { - RETURN(__avword, i); - } else - if (l->rtype == __AVchar) { - RETURN(char, i); - } else - if (l->rtype == __AVschar) { - RETURN(signed char, i); - } else - if (l->rtype == __AVuchar) { - RETURN(unsigned char, i); - } else - if (l->rtype == __AVshort) { - RETURN(short, i); - } else - if (l->rtype == __AVushort) { - RETURN(unsigned short, i); - } else - if (l->rtype == __AVint) { - RETURN(int, i); - } else - if (l->rtype == __AVuint) { - RETURN(unsigned int, i); - } else - if (l->rtype == __AVlong) { - RETURN(long, i); - } else - if (l->rtype == __AVulong) { - RETURN(unsigned long, i); - } else - if (l->rtype == __AVlonglong || l->rtype == __AVulonglong) { - ((__avword*)l->raddr)[0] = i; - ((__avword*)l->raddr)[1] = iret2; - } else - if (l->rtype == __AVfloat) { - RETURN(float, fret); - } else - if (l->rtype == __AVdouble) { - RETURN(double, dret); - } else - if (l->rtype == __AVvoidp) { - RETURN(void*, i); - } else - if (l->rtype == __AVstruct) { - if (l->flags & __AV_PCC_STRUCT_RETURN) { - /* pcc struct return convention: need a *(TYPE*)l->raddr = *(TYPE*)i; */ - if (l->rsize == sizeof(char)) { - RETURN(char, *(char*)i); - } else - if (l->rsize == sizeof(short)) { - RETURN(short, *(short*)i); - } else - if (l->rsize == sizeof(int)) { - RETURN(int, *(int*)i); - } else - if (l->rsize == sizeof(double)) { - ((int*)l->raddr)[0] = ((int*)i)[0]; - ((int*)l->raddr)[1] = ((int*)i)[1]; - } else { - int n = (l->rsize + sizeof(__avword)-1)/sizeof(__avword); - while (--n >= 0) - ((__avword*)l->raddr)[n] = ((__avword*)i)[n]; - } - } else { - /* normal struct return convention */ - if (l->flags & __AV_SMALL_STRUCT_RETURN) { - if (l->rsize == sizeof(char)) { - RETURN(char, i); - } else - if (l->rsize == sizeof(short)) { - RETURN(short, i); - } else - if (l->rsize == sizeof(int)) { - RETURN(int, i); - } - } - } - } - sp += __AV_ALIST_WORDS; - return 0; -} - -#endif /*_avcall_m88k_c */ DELETED ffcall/avcall/avcall-m88k.s Index: ffcall/avcall/avcall-m88k.s ================================================================== --- ffcall/avcall/avcall-m88k.s +++ /dev/null @@ -1,186 +0,0 @@ - version "03.00" - file "avcall-m88k.c" -data -gcc2_compiled.: -text - align 8 - global __builtin_avcall - type __builtin_avcall,#function -__builtin_avcall: - subu #r31,#r31,48 - st #r1,#r31,36 - st #r25,#r31,32 -.Ltb0: - or #r25,#r0,#r2 - ld #r13,#r25,20 - subu #r13,#r13,24 - or #r9,#r0,0 - subu #r13,#r13,#r25 - subu #r31,#r31,1024 - ext #r11,#r13,0<2> - bcnd.n #le0,#r11,.L4 - or #r8,#r0,#r31 - addu #r10,#r25,24 -.L6: - ld #r13,#r10[#r9] - st #r13,#r8[#r9] - addu #r9,#r9,1 - cmp #r13,#r9,#r11 - bb1 #lt,#r13,.L6 -.L4: - ld #r13,#r25,12 - cmp #r13,#r13,16 - bb1 #ne,#r13,.L8 - ld #r12,#r25,8 -.L8: - ld #r2,#r25,24 - ld #r13,#r0,#r25 - ld #r3,#r25,28 - ld #r4,#r25,32 - ld #r5,#r25,36 - ld #r6,#r25,40 - ld #r7,#r25,44 - ld #r8,#r25,48 - jsr.n #r13 - ld #r9,#r25,52 - ld #r11,#r25,12 - cmp #r13,#r11,1 - bb0.n #ne,#r13,.L10 - or #r9,#r0,#r2 - bcnd.n #eq0,#r11,.L60 - cmp #r13,#r11,2 - bb0.n #ne,#r13,.L61 - cmp #r13,#r11,3 - bb0.n #ne,#r13,.L61 - cmp #r13,#r11,4 - bb0.n #ne,#r13,.L61 - cmp #r13,#r11,5 - bb0.n #ne,#r13,.L62 - cmp #r13,#r11,6 - bb0.n #ne,#r13,.L62 - cmp #r13,#r11,7 - bb0.n #ne,#r13,.L60 - cmp #r13,#r11,8 - bb0.n #ne,#r13,.L60 - cmp #r13,#r11,9 - bb0.n #ne,#r13,.L60 - cmp #r13,#r11,10 - bb0.n #ne,#r13,.L60 - subu #r13,#r11,11 - cmp #r13,#r13,1 - bb0 #ls,#r13,.L31 - ld #r13,#r25,8 - st #r9,#r0,#r13 - ld #r11,#r25,8 - br.n .L10 - st #r3,#r11,4 - align 4 -.L31: - cmp #r13,#r11,13 - bb1.n #ne,#r13,.L33 - cmp #r13,#r11,14 - ld #r13,#r25,8 - br.n .L10 - st #r2,#r0,#r13 - align 4 -.L33: - bb1.n #ne,#r13,.L35 - cmp #r13,#r11,15 - ld #r13,#r25,8 - br.n .L10 - st.d #r2,#r0,#r13 - align 4 -.L35: - bb0.n #ne,#r13,.L60 - cmp #r13,#r11,16 - bb0 #eq,#r13,.L10 - ld #r13,#r25,4 - bb0 (31-31),#r13,.L40 - ld #r11,#r25,16 - cmp #r13,#r11,1 - bb1.n #ne,#r13,.L41 - cmp #r13,#r11,2 - ld #r11,#r25,8 - ld.bu #r13,#r0,#r9 - br.n .L10 - st.b #r13,#r0,#r11 - align 4 -.L41: - bb1.n #ne,#r13,.L43 - cmp #r13,#r11,4 - ld #r11,#r25,8 - ld.hu #r13,#r0,#r9 - br.n .L10 - st.h #r13,#r0,#r11 - align 4 -.L43: - bb1.n #ne,#r13,.L45 - cmp #r13,#r11,8 - ld #r11,#r25,8 - ld #r13,#r0,#r9 - br.n .L10 - st #r13,#r0,#r11 - align 4 -.L45: - bb1.n #ne,#r13,.L47 - addu #r13,#r11,3 - ld #r11,#r25,8 - ld #r13,#r0,#r9 - st #r13,#r0,#r11 - ld #r10,#r25,8 - ld #r13,#r9,4 - br.n .L10 - st #r13,#r10,4 - align 4 -.L47: - extu #r10,#r13,0<2> - subu #r10,#r10,1 - bcnd #lt0,#r10,.L10 -.L51: - ld #r11,#r25,8 - ld #r13,#r9[#r10] - st #r13,#r11[#r10] - subu #r10,#r10,1 - bcnd #ge0,#r10,.L51 - addu #r31,#r31,1024 - br .L63 - align 4 -.L40: - bb0 (31-30),#r13,.L10 - ld #r11,#r25,16 - cmp #r13,#r11,1 - bb1.n #ne,#r13,.L55 - cmp #r13,#r11,2 -.L61: - ld #r13,#r25,8 - br.n .L10 - st.b #r9,#r0,#r13 - align 4 -.L55: - bb1.n #ne,#r13,.L57 - cmp #r13,#r11,4 -.L62: - ld #r13,#r25,8 - br.n .L10 - st.h #r9,#r0,#r13 - align 4 -.L57: - bb1 #ne,#r13,.L10 -.L60: - ld #r13,#r25,8 - st #r9,#r0,#r13 -.L10: - addu #r31,#r31,1024 -.L63: -.Lte0: - ld #r1,#r31,36 - or #r2,#r0,0 - ld #r25,#r31,32 - jmp.n #r1 - addu #r31,#r31,48 - -section .tdesc,"a" - word 66,1,.Ltb0,.Lte0,0x100103f,0x30,0xfffffff4,0xfffffff0 -text -.Lfe1: - size __builtin_avcall,.Lfe1-__builtin_avcall DELETED ffcall/avcall/avcall-mips.c Index: ffcall/avcall/avcall-mips.c ================================================================== --- ffcall/avcall/avcall-mips.c +++ /dev/null @@ -1,158 +0,0 @@ -#ifndef _avcall_mips_c /*-*- C -*-*/ -#define _avcall_mips_c -/** - Copyright 1993 Bill Triggs, - Copyright 1995-1999 Bruno Haible, - - This is free software distributed under the GNU General Public - Licence described in the file COPYING. Contact the author if - you don't have this or can't live with it. There is ABSOLUTELY - NO WARRANTY, explicit or implied, on this software. -**/ -/*---------------------------------------------------------------------- - !!! THIS ROUTINE MUST BE COMPILED gcc -O !!! - - Foreign function interface for an SGI MIPS with gcc/sgi-cc. - - This calls a C function with an argument list built up using macros - defined in av_call.h. - - SGI MIPS Argument Passing Conventions - - - The entire argument list forms a structure with all the appropriate - holes & alignments, and space for this is allocated in the stack frame. - - Shorter integers are promoted to word length (sizeof(int)=sizeof(long)=4). - - Doubles are 2 words aligned on even boundaries. - - The first 4 words of the structure are passed in registers $4...$7, stack - space for these is always allocated. Remaining words are passed on the - stack. - - If the first two args are floats or doubles, they are also passed in $f12 - and $f14. But varargs functions will expect them in the integer registers - and we can't tell whether the function is varargs so we pass them both ways. - - Structure arguments are copies embedded in the arglist structure. - - Structure returns are pointers to caller-allocated space passed in as the - first argument of the list. The function also returns the pointer. - - Integer/pointer returns are in $2, float/double returns in $f0. - - Under IRIX 5, the called function expects to see its own address in $25. - - This file needs to be compiled with gcc for the asm extensions, but the - assembly version of it and the header file seem to work with SGI cc. - ----------------------------------------------------------------------*/ -#include "avcall.h.in" - -#define RETURN(TYPE,VAL) (*(TYPE*)l->raddr = (TYPE)(VAL)) -#define OFFSETOF(struct,member) ((int)&(((struct*)0)->member)) - -typedef __avword (*func_pointer)(); -register func_pointer t9 __asm__("$25"); - -int -__builtin_avcall(av_alist* l) -{ - register __avword* sp __asm__("$sp"); /* C names for registers */ - register __avword iret2 __asm__("$3"); - register float fret __asm__("$f0"); - register double dret __asm__("$f0"); - __avword *space = __builtin_alloca(__AV_ALIST_WORDS * sizeof(__avword)); /* big space for child's stack frame */ - __avword *argframe = (__avword*)sp; /* stack offset for argument list is 0 */ - int arglen = l->aptr - l->args; - __avword i; - - if (l->flags & __AV_FLOAT_1) /* push leading float args */ - { - __asm__("l.d $f12,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,floatarg[0])); - if (l->flags & __AV_FLOAT_2) - __asm__("l.d $f14,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,floatarg[1])); - } - - for (i = 4; i < arglen; i++) /* push excess function args */ - argframe[i] = l->args[i]; - - i = (*(t9 = l->func))(l->args[0], l->args[1], /* call function with 1st 4 args */ - l->args[2], l->args[3]); - - /* save return value */ - if (l->rtype == __AVvoid) { - } else - if (l->rtype == __AVword) { - RETURN(__avword, i); - } else - if (l->rtype == __AVchar) { - RETURN(char, i); - } else - if (l->rtype == __AVschar) { - RETURN(signed char, i); - } else - if (l->rtype == __AVuchar) { - RETURN(unsigned char, i); - } else - if (l->rtype == __AVshort) { - RETURN(short, i); - } else - if (l->rtype == __AVushort) { - RETURN(unsigned short, i); - } else - if (l->rtype == __AVint) { - RETURN(int, i); - } else - if (l->rtype == __AVuint) { - RETURN(unsigned int, i); - } else - if (l->rtype == __AVlong) { - RETURN(long, i); - } else - if (l->rtype == __AVulong) { - RETURN(unsigned long, i); - } else - if (l->rtype == __AVlonglong || l->rtype == __AVulonglong) { - ((__avword*)l->raddr)[0] = i; - ((__avword*)l->raddr)[1] = iret2; - } else - if (l->rtype == __AVfloat) { - RETURN(float, fret); - } else - if (l->rtype == __AVdouble) { - RETURN(double, dret); - } else - if (l->rtype == __AVvoidp) { - RETURN(void*, i); - } else - if (l->rtype == __AVstruct) { - if (l->flags & __AV_PCC_STRUCT_RETURN) { - /* pcc struct return convention: need a *(TYPE*)l->raddr = *(TYPE*)i; */ - if (l->rsize == sizeof(char)) { - RETURN(char, *(char*)i); - } else - if (l->rsize == sizeof(short)) { - RETURN(short, *(short*)i); - } else - if (l->rsize == sizeof(int)) { - RETURN(int, *(int*)i); - } else - if (l->rsize == sizeof(double)) { - ((int*)l->raddr)[0] = ((int*)i)[0]; - ((int*)l->raddr)[1] = ((int*)i)[1]; - } else { - int n = (l->rsize + sizeof(__avword)-1)/sizeof(__avword); - while (--n >= 0) - ((__avword*)l->raddr)[n] = ((__avword*)i)[n]; - } - } else { - /* normal struct return convention */ - if (l->flags & __AV_SMALL_STRUCT_RETURN) { - if (l->rsize == sizeof(char)) { - RETURN(char, i); - } else - if (l->rsize == sizeof(short)) { - RETURN(short, i); - } else - if (l->rsize == sizeof(int)) { - RETURN(int, i); - } - } - } - } - return 0; -} - -#endif /*_avcall_mips_c */ DELETED ffcall/avcall/avcall-mips64.c Index: ffcall/avcall/avcall-mips64.c ================================================================== --- ffcall/avcall/avcall-mips64.c +++ /dev/null @@ -1,322 +0,0 @@ -#ifndef _avcall_mips64_c /*-*- C -*-*/ -#define _avcall_mips64_c -/** - Copyright 1993 Bill Triggs, - Copyright 1995-1999 Bruno Haible, - - This is free software distributed under the GNU General Public - Licence described in the file COPYING. Contact the author if - you don't have this or can't live with it. There is ABSOLUTELY - NO WARRANTY, explicit or implied, on this software. -**/ -/*---------------------------------------------------------------------- - !!! THIS ROUTINE MUST BE COMPILED gcc -O !!! - - Foreign function interface for an SGI 64-bit MIPS with sgi-cc. - - This calls a C function with an argument list built up using macros - defined in av_call.h. - - SGI MIPS 64-bit Argument Passing Conventions - - - The entire argument list forms a structure with all the appropriate - holes & alignments, and space for this is allocated in the stack frame. - - Shorter integers are promoted to longword length (sizeof(long)=8). - - Doubles are 1 longword. - - Structure arguments are copies embedded in the arglist structure. - - The first 8 longwords of the structure are passed in registers $4...$11, - except that float arguments are passed in registers $f12...$f19, and - that double arguments and structure elements of type double are passed - in registers $f12...$f19. (But varargs functions may expect them in the - integer registers and we can't tell whether the function is varargs so - we pass them both ways.) - Remaining longwords are passed on the stack. No stack space is allocated - for the first 8 longwords of the structure. - - Structure returns of structures > 16 bytes: pointers to caller-allocated - space are passed in as the first argument of the list. - - Structure returns of structures <= 16 bytes: in the registers $2 (for the - first 8 bytes) and $3 (for the next 8 bytes). - A structure of 1 or 2 floats or doubles is returned in $f0 and $f2: - the first float or double in $f0, the second float or double in $f2. - - Integer/pointer returns are in $2, float/double returns in $f0. - - The called function expects to see its own address in $25. - - This file needs to be compiled with gcc for the asm extensions, but the - assembly version of it and the header file seem to work with SGI cc. - ----------------------------------------------------------------------*/ -#include "avcall.h.in" - -#define RETURN(TYPE,VAL) (*(TYPE*)l->raddr = (TYPE)(VAL)) -#define OFFSETOF(struct,member) ((int)&(((struct*)0)->member)) - -typedef __avword (*func_pointer)(); -register func_pointer t9 __asm__("$25"); - -int -__builtin_avcall(av_alist* l) -{ - register __avword* sp __asm__("$sp"); /* C names for registers */ - register float fret __asm__("$f0"); - register double dret __asm__("$f0"); -/*register __avword iret1 __asm__("$2"); */ - register __avword iret2 __asm__("$3"); - __avword space[__AV_ALIST_WORDS]; /* big space for child's stack frame */ - __avword *argframe = (__avword*)sp; /* stack offset for argument list is 0 */ - int arglen = l->aptr - l->args; - __avword i; - - if (l->farg_mask) - { /* push leading float args */ - if (l->farg_mask & (1<<0)) - __asm__("lwc1 $f12,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,farg[0])); - if (l->farg_mask & (1<<1)) - __asm__("lwc1 $f13,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,farg[1])); - if (l->farg_mask & (1<<2)) - __asm__("lwc1 $f14,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,farg[2])); - if (l->farg_mask & (1<<3)) - __asm__("lwc1 $f15,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,farg[3])); - if (l->farg_mask & (1<<4)) - __asm__("lwc1 $f16,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,farg[4])); - if (l->farg_mask & (1<<5)) - __asm__("lwc1 $f17,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,farg[5])); - if (l->farg_mask & (1<<6)) - __asm__("lwc1 $f18,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,farg[6])); - if (l->farg_mask & (1<<7)) - __asm__("lwc1 $f19,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,farg[7])); - } - if (l->darg_mask) - { /* push leading double args */ - if (l->darg_mask & (1<<0)) - __asm__("ldc1 $f12,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,args[0])); - if (l->darg_mask & (1<<1)) - __asm__("ldc1 $f13,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,args[1])); - if (l->darg_mask & (1<<2)) - __asm__("ldc1 $f14,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,args[2])); - if (l->darg_mask & (1<<3)) - __asm__("ldc1 $f15,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,args[3])); - if (l->darg_mask & (1<<4)) - __asm__("ldc1 $f16,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,args[4])); - if (l->darg_mask & (1<<5)) - __asm__("ldc1 $f17,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,args[5])); - if (l->darg_mask & (1<<6)) - __asm__("ldc1 $f18,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,args[6])); - if (l->darg_mask & (1<<7)) - __asm__("ldc1 $f19,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,args[7])); - } - - for (i = 8; i < arglen; i++) /* push excess function args */ - argframe[i-8] = l->args[i]; - - /* call function with 1st 8 args */ - __asm__ __volatile__ ("ld $4,%0" : : "m" (l->args[0]) : "$4"); /* arg1 = l->args[0]; */ - __asm__ __volatile__ ("ld $5,%0" : : "m" (l->args[1]) : "$5"); /* arg1 = l->args[1]; */ - __asm__ __volatile__ ("ld $6,%0" : : "m" (l->args[2]) : "$6"); /* arg1 = l->args[2]; */ - __asm__ __volatile__ ("ld $7,%0" : : "m" (l->args[3]) : "$7"); /* arg1 = l->args[3]; */ - __asm__ __volatile__ ("ld $8,%0" : : "m" (l->args[4]) : "$8"); /* arg1 = l->args[4]; */ - __asm__ __volatile__ ("ld $9,%0" : : "m" (l->args[5]) : "$9"); /* arg1 = l->args[5]; */ - __asm__ __volatile__ ("ld $10,%0" : : "m" (l->args[6]) : "$10"); /* arg1 = l->args[6]; */ - __asm__ __volatile__ ("ld $11,%0" : : "m" (l->args[7]) : "$11"); /* arg1 = l->args[7]; */ - i = (*(t9 = l->func))(); - - /* save return value */ - if (l->rtype == __AVvoid) { - } else - if (l->rtype == __AVword) { - RETURN(__avword, i); - } else - if (l->rtype == __AVchar) { - RETURN(char, i); - } else - if (l->rtype == __AVschar) { - RETURN(signed char, i); - } else - if (l->rtype == __AVuchar) { - RETURN(unsigned char, i); - } else - if (l->rtype == __AVshort) { - RETURN(short, i); - } else - if (l->rtype == __AVushort) { - RETURN(unsigned short, i); - } else - if (l->rtype == __AVint) { - RETURN(int, i); - } else - if (l->rtype == __AVuint) { - RETURN(unsigned int, i); - } else - if (l->rtype == __AVlong) { - RETURN(long, i); - } else - if (l->rtype == __AVulong) { - RETURN(unsigned long, i); - } else - if (l->rtype == __AVlonglong) { - RETURN(long long, i); - } else - if (l->rtype == __AVulonglong) { - RETURN(unsigned long long, i); - } else - if (l->rtype == __AVfloat) { - RETURN(float, fret); - } else - if (l->rtype == __AVdouble) { - RETURN(double, dret); - } else - if (l->rtype == __AVvoidp) { - RETURN(void*, i); - } else - if (l->rtype == __AVstruct) { - if (l->flags & __AV_PCC_STRUCT_RETURN) { - /* pcc struct return convention: need a *(TYPE*)l->raddr = *(TYPE*)i; */ - if (l->rsize == sizeof(char)) { - RETURN(char, *(char*)i); - } else - if (l->rsize == sizeof(short)) { - RETURN(short, *(short*)i); - } else - if (l->rsize == sizeof(int)) { - RETURN(int, *(int*)i); - } else - if (l->rsize == sizeof(long)) { - RETURN(long, *(long*)i); - } else { - int n = (l->rsize + sizeof(__avword)-1)/sizeof(__avword); - while (--n >= 0) - ((__avword*)l->raddr)[n] = ((__avword*)i)[n]; - } - } else { - /* normal struct return convention */ - if (l->flags & __AV_REGISTER_STRUCT_RETURN) { - if (l->flags & __AV_GCC_STRUCT_RETURN) { - /* gcc returns structs of size 1,2,4,8 in registers. */ - if (l->rsize == sizeof(char)) { - RETURN(char, i); - } else - if (l->rsize == sizeof(short)) { - RETURN(short, i); - } else - if (l->rsize == sizeof(int)) { - RETURN(int, i); - } else - if (l->rsize == sizeof(long)) { - RETURN(long, i); - } - } else { - /* cc returns structs of size <= 16 in registers. */ - if (l->rsize > 0 && l->rsize <= 16) { - if (l->rsize == 1) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i>>56); - } else - if (l->rsize == 2) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i>>56); - ((unsigned char *)l->raddr)[1] = (unsigned char)(i>>48); - } else - if (l->rsize == 3) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i>>56); - ((unsigned char *)l->raddr)[1] = (unsigned char)(i>>48); - ((unsigned char *)l->raddr)[2] = (unsigned char)(i>>40); - } else - if (l->rsize == 4) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i>>56); - ((unsigned char *)l->raddr)[1] = (unsigned char)(i>>48); - ((unsigned char *)l->raddr)[2] = (unsigned char)(i>>40); - ((unsigned char *)l->raddr)[3] = (unsigned char)(i>>32); - } else - if (l->rsize == 5) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i>>56); - ((unsigned char *)l->raddr)[1] = (unsigned char)(i>>48); - ((unsigned char *)l->raddr)[2] = (unsigned char)(i>>40); - ((unsigned char *)l->raddr)[3] = (unsigned char)(i>>32); - ((unsigned char *)l->raddr)[4] = (unsigned char)(i>>24); - } else - if (l->rsize == 6) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i>>56); - ((unsigned char *)l->raddr)[1] = (unsigned char)(i>>48); - ((unsigned char *)l->raddr)[2] = (unsigned char)(i>>40); - ((unsigned char *)l->raddr)[3] = (unsigned char)(i>>32); - ((unsigned char *)l->raddr)[4] = (unsigned char)(i>>24); - ((unsigned char *)l->raddr)[5] = (unsigned char)(i>>16); - } else - if (l->rsize == 7) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i>>56); - ((unsigned char *)l->raddr)[1] = (unsigned char)(i>>48); - ((unsigned char *)l->raddr)[2] = (unsigned char)(i>>40); - ((unsigned char *)l->raddr)[3] = (unsigned char)(i>>32); - ((unsigned char *)l->raddr)[4] = (unsigned char)(i>>24); - ((unsigned char *)l->raddr)[5] = (unsigned char)(i>>16); - ((unsigned char *)l->raddr)[6] = (unsigned char)(i>>8); - } else - if (l->rsize >= 8 && l->rsize <= 16) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i>>56); - ((unsigned char *)l->raddr)[1] = (unsigned char)(i>>48); - ((unsigned char *)l->raddr)[2] = (unsigned char)(i>>40); - ((unsigned char *)l->raddr)[3] = (unsigned char)(i>>32); - ((unsigned char *)l->raddr)[4] = (unsigned char)(i>>24); - ((unsigned char *)l->raddr)[5] = (unsigned char)(i>>16); - ((unsigned char *)l->raddr)[6] = (unsigned char)(i>>8); - ((unsigned char *)l->raddr)[7] = (unsigned char)(i); - if (l->rsize == 8) { - } else - if (l->rsize == 9) { - ((unsigned char *)l->raddr)[8+0] = (unsigned char)(iret2>>56); - } else - if (l->rsize == 10) { - ((unsigned char *)l->raddr)[8+0] = (unsigned char)(iret2>>56); - ((unsigned char *)l->raddr)[8+1] = (unsigned char)(iret2>>48); - } else - if (l->rsize == 11) { - ((unsigned char *)l->raddr)[8+0] = (unsigned char)(iret2>>56); - ((unsigned char *)l->raddr)[8+1] = (unsigned char)(iret2>>48); - ((unsigned char *)l->raddr)[8+2] = (unsigned char)(iret2>>40); - } else - if (l->rsize == 12) { - ((unsigned char *)l->raddr)[8+0] = (unsigned char)(iret2>>56); - ((unsigned char *)l->raddr)[8+1] = (unsigned char)(iret2>>48); - ((unsigned char *)l->raddr)[8+2] = (unsigned char)(iret2>>40); - ((unsigned char *)l->raddr)[8+3] = (unsigned char)(iret2>>32); - } else - if (l->rsize == 13) { - ((unsigned char *)l->raddr)[8+0] = (unsigned char)(iret2>>56); - ((unsigned char *)l->raddr)[8+1] = (unsigned char)(iret2>>48); - ((unsigned char *)l->raddr)[8+2] = (unsigned char)(iret2>>40); - ((unsigned char *)l->raddr)[8+3] = (unsigned char)(iret2>>32); - ((unsigned char *)l->raddr)[8+4] = (unsigned char)(iret2>>24); - } else - if (l->rsize == 14) { - ((unsigned char *)l->raddr)[8+0] = (unsigned char)(iret2>>56); - ((unsigned char *)l->raddr)[8+1] = (unsigned char)(iret2>>48); - ((unsigned char *)l->raddr)[8+2] = (unsigned char)(iret2>>40); - ((unsigned char *)l->raddr)[8+3] = (unsigned char)(iret2>>32); - ((unsigned char *)l->raddr)[8+4] = (unsigned char)(iret2>>24); - ((unsigned char *)l->raddr)[8+5] = (unsigned char)(iret2>>16); - } else - if (l->rsize == 15) { - ((unsigned char *)l->raddr)[8+0] = (unsigned char)(iret2>>56); - ((unsigned char *)l->raddr)[8+1] = (unsigned char)(iret2>>48); - ((unsigned char *)l->raddr)[8+2] = (unsigned char)(iret2>>40); - ((unsigned char *)l->raddr)[8+3] = (unsigned char)(iret2>>32); - ((unsigned char *)l->raddr)[8+4] = (unsigned char)(iret2>>24); - ((unsigned char *)l->raddr)[8+5] = (unsigned char)(iret2>>16); - ((unsigned char *)l->raddr)[8+6] = (unsigned char)(iret2>>8); - } else - if (l->rsize == 16) { - ((unsigned char *)l->raddr)[8+0] = (unsigned char)(iret2>>56); - ((unsigned char *)l->raddr)[8+1] = (unsigned char)(iret2>>48); - ((unsigned char *)l->raddr)[8+2] = (unsigned char)(iret2>>40); - ((unsigned char *)l->raddr)[8+3] = (unsigned char)(iret2>>32); - ((unsigned char *)l->raddr)[8+4] = (unsigned char)(iret2>>24); - ((unsigned char *)l->raddr)[8+5] = (unsigned char)(iret2>>16); - ((unsigned char *)l->raddr)[8+6] = (unsigned char)(iret2>>8); - ((unsigned char *)l->raddr)[8+7] = (unsigned char)(iret2); - } - } - } - } - } - } - } - return 0; -} - -#endif /*_avcall_mips64_c */ DELETED ffcall/avcall/avcall-mipsn32.c Index: ffcall/avcall/avcall-mipsn32.c ================================================================== --- ffcall/avcall/avcall-mipsn32.c +++ /dev/null @@ -1,323 +0,0 @@ -#ifndef _avcall_mipsn32_c /*-*- C -*-*/ -#define _avcall_mipsn32_c -/** - Copyright 1993 Bill Triggs, - Copyright 1995-1999 Bruno Haible, - - This is free software distributed under the GNU General Public - Licence described in the file COPYING. Contact the author if - you don't have this or can't live with it. There is ABSOLUTELY - NO WARRANTY, explicit or implied, on this software. -**/ -/*---------------------------------------------------------------------- - !!! THIS ROUTINE MUST BE COMPILED gcc -O !!! - - Foreign function interface for an SGI 32-bit MIPS III with "cc -n32", - or gcc configured as mips-sgi-irix6. - - This calls a C function with an argument list built up using macros - defined in av_call.h. - - SGI MIPS new 32-bit Argument Passing Conventions - - - The entire argument list forms a structure with all the appropriate - holes & alignments, and space for this is allocated in the stack frame. - - Shorter integers are promoted to long long length (sizeof(long long)=8). - - Doubles are 1 longword. - - Structure arguments are copies embedded in the arglist structure. - - The first 8 longwords of the structure are passed in registers $4...$11, - except that float arguments are passed in registers $f12...$f19, and - that double arguments and structure elements of type double are passed - in registers $f12...$f19. (But varargs functions may expect them in the - integer registers and we can't tell whether the function is varargs so - we pass them both ways.) - Remaining longwords are passed on the stack. No stack space is allocated - for the first 8 longwords of the structure. - - Structure returns of structures > 16 bytes: pointers to caller-allocated - space are passed in as the first argument of the list. - - Structure returns of structures <= 16 bytes: in the registers $2 (for the - first 8 bytes) and $3 (for the next 8 bytes). - A structure of 1 or 2 floats or doubles is returned in $f0 and $f2: - the first float or double in $f0, the second float or double in $f2. - - Integer/pointer returns are in $2, float/double returns in $f0. - - The called function expects to see its own address in $25. - - This file needs to be compiled with gcc for the asm extensions, but the - assembly version of it and the header file seem to work with SGI cc. - ----------------------------------------------------------------------*/ -#include "avcall.h.in" - -#define RETURN(TYPE,VAL) (*(TYPE*)l->raddr = (TYPE)(VAL)) -#define OFFSETOF(struct,member) ((int)&(((struct*)0)->member)) - -typedef __avword (*func_pointer)(); -register func_pointer t9 __asm__("$25"); - -int -__builtin_avcall(av_alist* l) -{ - register __avword* sp __asm__("$sp"); /* C names for registers */ - register float fret __asm__("$f0"); - register double dret __asm__("$f0"); -/*register __avword iret1 __asm__("$2"); */ - register __avword iret2 __asm__("$3"); - __avword space[__AV_ALIST_WORDS]; /* big space for child's stack frame */ - __avword *argframe = (__avword*)sp; /* stack offset for argument list is 0 */ - int arglen = l->aptr - l->args; - __avword i; - - if (l->farg_mask) - { /* push leading float args */ - if (l->farg_mask & (1<<0)) - __asm__("lwc1 $f12,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,farg[0])); - if (l->farg_mask & (1<<1)) - __asm__("lwc1 $f13,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,farg[1])); - if (l->farg_mask & (1<<2)) - __asm__("lwc1 $f14,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,farg[2])); - if (l->farg_mask & (1<<3)) - __asm__("lwc1 $f15,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,farg[3])); - if (l->farg_mask & (1<<4)) - __asm__("lwc1 $f16,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,farg[4])); - if (l->farg_mask & (1<<5)) - __asm__("lwc1 $f17,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,farg[5])); - if (l->farg_mask & (1<<6)) - __asm__("lwc1 $f18,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,farg[6])); - if (l->farg_mask & (1<<7)) - __asm__("lwc1 $f19,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,farg[7])); - } - if (l->darg_mask) - { /* push leading double args */ - if (l->darg_mask & (1<<0)) - __asm__("ldc1 $f12,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,args[0])); - if (l->darg_mask & (1<<1)) - __asm__("ldc1 $f13,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,args[1])); - if (l->darg_mask & (1<<2)) - __asm__("ldc1 $f14,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,args[2])); - if (l->darg_mask & (1<<3)) - __asm__("ldc1 $f15,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,args[3])); - if (l->darg_mask & (1<<4)) - __asm__("ldc1 $f16,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,args[4])); - if (l->darg_mask & (1<<5)) - __asm__("ldc1 $f17,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,args[5])); - if (l->darg_mask & (1<<6)) - __asm__("ldc1 $f18,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,args[6])); - if (l->darg_mask & (1<<7)) - __asm__("ldc1 $f19,%1(%0)" : : "p" (l), "i" OFFSETOF(av_alist,args[7])); - } - - for (i = 8; i < arglen; i++) /* push excess function args */ - argframe[i-8] = l->args[i]; - - /* call function with 1st 8 args */ - __asm__ __volatile__ ("ld $4,%0" : : "m" (l->args[0]) : "$4"); /* arg1 = l->args[0]; */ - __asm__ __volatile__ ("ld $5,%0" : : "m" (l->args[1]) : "$5"); /* arg1 = l->args[1]; */ - __asm__ __volatile__ ("ld $6,%0" : : "m" (l->args[2]) : "$6"); /* arg1 = l->args[2]; */ - __asm__ __volatile__ ("ld $7,%0" : : "m" (l->args[3]) : "$7"); /* arg1 = l->args[3]; */ - __asm__ __volatile__ ("ld $8,%0" : : "m" (l->args[4]) : "$8"); /* arg1 = l->args[4]; */ - __asm__ __volatile__ ("ld $9,%0" : : "m" (l->args[5]) : "$9"); /* arg1 = l->args[5]; */ - __asm__ __volatile__ ("ld $10,%0" : : "m" (l->args[6]) : "$10"); /* arg1 = l->args[6]; */ - __asm__ __volatile__ ("ld $11,%0" : : "m" (l->args[7]) : "$11"); /* arg1 = l->args[7]; */ - i = (*(t9 = l->func))(); - - /* save return value */ - if (l->rtype == __AVvoid) { - } else - if (l->rtype == __AVword) { - RETURN(__avword, i); - } else - if (l->rtype == __AVchar) { - RETURN(char, i); - } else - if (l->rtype == __AVschar) { - RETURN(signed char, i); - } else - if (l->rtype == __AVuchar) { - RETURN(unsigned char, i); - } else - if (l->rtype == __AVshort) { - RETURN(short, i); - } else - if (l->rtype == __AVushort) { - RETURN(unsigned short, i); - } else - if (l->rtype == __AVint) { - RETURN(int, i); - } else - if (l->rtype == __AVuint) { - RETURN(unsigned int, i); - } else - if (l->rtype == __AVlong) { - RETURN(long, i); - } else - if (l->rtype == __AVulong) { - RETURN(unsigned long, i); - } else - if (l->rtype == __AVlonglong) { - RETURN(long long, i); - } else - if (l->rtype == __AVulonglong) { - RETURN(unsigned long long, i); - } else - if (l->rtype == __AVfloat) { - RETURN(float, fret); - } else - if (l->rtype == __AVdouble) { - RETURN(double, dret); - } else - if (l->rtype == __AVvoidp) { - RETURN(void*, i); - } else - if (l->rtype == __AVstruct) { - if (l->flags & __AV_PCC_STRUCT_RETURN) { - /* pcc struct return convention: need a *(TYPE*)l->raddr = *(TYPE*)i; */ - if (l->rsize == sizeof(char)) { - RETURN(char, *(char*)i); - } else - if (l->rsize == sizeof(short)) { - RETURN(short, *(short*)i); - } else - if (l->rsize == sizeof(int)) { - RETURN(int, *(int*)i); - } else - if (l->rsize == sizeof(long long)) { - RETURN(long, *(long long*)i); - } else { - int n = (l->rsize + sizeof(__avword)-1)/sizeof(__avword); - while (--n >= 0) - ((__avword*)l->raddr)[n] = ((__avword*)i)[n]; - } - } else { - /* normal struct return convention */ - if (l->flags & __AV_REGISTER_STRUCT_RETURN) { - if (l->flags & __AV_GCC_STRUCT_RETURN) { - /* gcc returns structs of size 1,2,4,8 in registers. */ - if (l->rsize == sizeof(char)) { - RETURN(char, i); - } else - if (l->rsize == sizeof(short)) { - RETURN(short, i); - } else - if (l->rsize == sizeof(int)) { - RETURN(int, i); - } else - if (l->rsize == sizeof(long long)) { - RETURN(long long, i); - } - } else { - /* cc returns structs of size <= 16 in registers. */ - if (l->rsize > 0 && l->rsize <= 16) { - if (l->rsize == 1) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i>>56); - } else - if (l->rsize == 2) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i>>56); - ((unsigned char *)l->raddr)[1] = (unsigned char)(i>>48); - } else - if (l->rsize == 3) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i>>56); - ((unsigned char *)l->raddr)[1] = (unsigned char)(i>>48); - ((unsigned char *)l->raddr)[2] = (unsigned char)(i>>40); - } else - if (l->rsize == 4) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i>>56); - ((unsigned char *)l->raddr)[1] = (unsigned char)(i>>48); - ((unsigned char *)l->raddr)[2] = (unsigned char)(i>>40); - ((unsigned char *)l->raddr)[3] = (unsigned char)(i>>32); - } else - if (l->rsize == 5) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i>>56); - ((unsigned char *)l->raddr)[1] = (unsigned char)(i>>48); - ((unsigned char *)l->raddr)[2] = (unsigned char)(i>>40); - ((unsigned char *)l->raddr)[3] = (unsigned char)(i>>32); - ((unsigned char *)l->raddr)[4] = (unsigned char)(i>>24); - } else - if (l->rsize == 6) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i>>56); - ((unsigned char *)l->raddr)[1] = (unsigned char)(i>>48); - ((unsigned char *)l->raddr)[2] = (unsigned char)(i>>40); - ((unsigned char *)l->raddr)[3] = (unsigned char)(i>>32); - ((unsigned char *)l->raddr)[4] = (unsigned char)(i>>24); - ((unsigned char *)l->raddr)[5] = (unsigned char)(i>>16); - } else - if (l->rsize == 7) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i>>56); - ((unsigned char *)l->raddr)[1] = (unsigned char)(i>>48); - ((unsigned char *)l->raddr)[2] = (unsigned char)(i>>40); - ((unsigned char *)l->raddr)[3] = (unsigned char)(i>>32); - ((unsigned char *)l->raddr)[4] = (unsigned char)(i>>24); - ((unsigned char *)l->raddr)[5] = (unsigned char)(i>>16); - ((unsigned char *)l->raddr)[6] = (unsigned char)(i>>8); - } else - if (l->rsize >= 8 && l->rsize <= 16) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i>>56); - ((unsigned char *)l->raddr)[1] = (unsigned char)(i>>48); - ((unsigned char *)l->raddr)[2] = (unsigned char)(i>>40); - ((unsigned char *)l->raddr)[3] = (unsigned char)(i>>32); - ((unsigned char *)l->raddr)[4] = (unsigned char)(i>>24); - ((unsigned char *)l->raddr)[5] = (unsigned char)(i>>16); - ((unsigned char *)l->raddr)[6] = (unsigned char)(i>>8); - ((unsigned char *)l->raddr)[7] = (unsigned char)(i); - if (l->rsize == 8) { - } else - if (l->rsize == 9) { - ((unsigned char *)l->raddr)[8+0] = (unsigned char)(iret2>>56); - } else - if (l->rsize == 10) { - ((unsigned char *)l->raddr)[8+0] = (unsigned char)(iret2>>56); - ((unsigned char *)l->raddr)[8+1] = (unsigned char)(iret2>>48); - } else - if (l->rsize == 11) { - ((unsigned char *)l->raddr)[8+0] = (unsigned char)(iret2>>56); - ((unsigned char *)l->raddr)[8+1] = (unsigned char)(iret2>>48); - ((unsigned char *)l->raddr)[8+2] = (unsigned char)(iret2>>40); - } else - if (l->rsize == 12) { - ((unsigned char *)l->raddr)[8+0] = (unsigned char)(iret2>>56); - ((unsigned char *)l->raddr)[8+1] = (unsigned char)(iret2>>48); - ((unsigned char *)l->raddr)[8+2] = (unsigned char)(iret2>>40); - ((unsigned char *)l->raddr)[8+3] = (unsigned char)(iret2>>32); - } else - if (l->rsize == 13) { - ((unsigned char *)l->raddr)[8+0] = (unsigned char)(iret2>>56); - ((unsigned char *)l->raddr)[8+1] = (unsigned char)(iret2>>48); - ((unsigned char *)l->raddr)[8+2] = (unsigned char)(iret2>>40); - ((unsigned char *)l->raddr)[8+3] = (unsigned char)(iret2>>32); - ((unsigned char *)l->raddr)[8+4] = (unsigned char)(iret2>>24); - } else - if (l->rsize == 14) { - ((unsigned char *)l->raddr)[8+0] = (unsigned char)(iret2>>56); - ((unsigned char *)l->raddr)[8+1] = (unsigned char)(iret2>>48); - ((unsigned char *)l->raddr)[8+2] = (unsigned char)(iret2>>40); - ((unsigned char *)l->raddr)[8+3] = (unsigned char)(iret2>>32); - ((unsigned char *)l->raddr)[8+4] = (unsigned char)(iret2>>24); - ((unsigned char *)l->raddr)[8+5] = (unsigned char)(iret2>>16); - } else - if (l->rsize == 15) { - ((unsigned char *)l->raddr)[8+0] = (unsigned char)(iret2>>56); - ((unsigned char *)l->raddr)[8+1] = (unsigned char)(iret2>>48); - ((unsigned char *)l->raddr)[8+2] = (unsigned char)(iret2>>40); - ((unsigned char *)l->raddr)[8+3] = (unsigned char)(iret2>>32); - ((unsigned char *)l->raddr)[8+4] = (unsigned char)(iret2>>24); - ((unsigned char *)l->raddr)[8+5] = (unsigned char)(iret2>>16); - ((unsigned char *)l->raddr)[8+6] = (unsigned char)(iret2>>8); - } else - if (l->rsize == 16) { - ((unsigned char *)l->raddr)[8+0] = (unsigned char)(iret2>>56); - ((unsigned char *)l->raddr)[8+1] = (unsigned char)(iret2>>48); - ((unsigned char *)l->raddr)[8+2] = (unsigned char)(iret2>>40); - ((unsigned char *)l->raddr)[8+3] = (unsigned char)(iret2>>32); - ((unsigned char *)l->raddr)[8+4] = (unsigned char)(iret2>>24); - ((unsigned char *)l->raddr)[8+5] = (unsigned char)(iret2>>16); - ((unsigned char *)l->raddr)[8+6] = (unsigned char)(iret2>>8); - ((unsigned char *)l->raddr)[8+7] = (unsigned char)(iret2); - } - } - } - } - } - } - } - return 0; -} - -#endif /*_avcall_mipsn32_c */ DELETED ffcall/avcall/avcall-rs6000-aix.new.s Index: ffcall/avcall/avcall-rs6000-aix.new.s ================================================================== --- ffcall/avcall/avcall-rs6000-aix.new.s +++ /dev/null @@ -1,258 +0,0 @@ - .file "avcall-rs6000.c" -.toc -.csect .text[PR] -gcc2_compiled.: -__gnu_compiled_c: - .align 2 - .globl __builtin_avcall - .globl .__builtin_avcall -.csect __builtin_avcall[DS] -__builtin_avcall: - .long .__builtin_avcall, TOC[tc0], 0 -.csect .text[PR] -.__builtin_avcall: - .extern __mulh - .extern __mull - .extern __divss - .extern __divus - .extern __quoss - .extern __quous - mflr 0 - stw 29,-12(1) - stw 30,-8(1) - stw 31,-4(1) - stw 0,8(1) - stwu 1,-1096(1) - mr 31,3 - lwz 9,20(31) - addi 0,1,56 - addi 9,9,-32 - subfc 9,31,9 - srawi 3,9,2 - cmpwi 0,3,8 - bc 4,1,L..4 - mr 11,0 - addi 3,3,-8 - addi 9,31,64 -L..6: - lwz 0,0(9) - addic. 3,3,-1 - stw 0,0(11) - addi 9,9,4 - addi 11,11,4 - bc 4,2,L..6 -L..4: - lwz 9,1056(31) - addi 9,9,-1060 - subfc 9,31,9 - srawi. 3,9,3 - bc 12,2,L..9 - cmpwi 0,3,1 - bc 12,2,L..12 - cmpwi 0,3,2 - bc 12,2,L..15 - cmpwi 0,3,3 - bc 12,2,L..18 - cmpwi 0,3,4 - bc 12,2,L..21 - cmpwi 0,3,5 - bc 12,2,L..24 - cmpwi 0,3,6 - bc 12,2,L..27 - cmpwi 0,3,7 - bc 12,2,L..30 - cmpwi 0,3,8 - bc 12,2,L..33 - cmpwi 0,3,9 - bc 12,2,L..36 - cmpwi 0,3,10 - bc 12,2,L..39 - cmpwi 0,3,11 - bc 12,2,L..42 - cmpwi 0,3,12 - bc 12,2,L..45 - lfd 13,1156(31) -L..45: - lfd 12,1148(31) -L..42: - lfd 11,1140(31) -L..39: - lfd 10,1132(31) -L..36: - lfd 9,1124(31) -L..33: - lfd 8,1116(31) -L..30: - lfd 7,1108(31) -L..27: - lfd 6,1100(31) -L..24: - lfd 5,1092(31) -L..21: - lfd 4,1084(31) -L..18: - lfd 3,1076(31) -L..15: - lfd 2,1068(31) -L..12: - lfd 1,1060(31) -L..9: - lwz 29,0(31) - lwz 3,32(31) - lwz 4,36(31) - lwz 5,40(31) - lwz 6,44(31) - lwz 7,48(31) - lwz 8,52(31) - lwz 9,56(31) - lwz 10,60(31) - stw 2,20(1) - lwz 0,0(29) - lwz 2,4(29) - mtlr 0 - lwz 11,8(29) - blrl - lwz 2,20(1) - lwz 0,12(31) - cmpwi 0,0,1 - bc 12,2,L..50 - cmpwi 0,0,0 - bc 12,2,L..102 - cmpwi 0,0,2 - bc 12,2,L..103 - cmpwi 0,0,3 - bc 12,2,L..103 - cmpwi 0,0,4 - bc 12,2,L..103 - cmpwi 0,0,5 - bc 12,2,L..104 - cmpwi 0,0,6 - bc 12,2,L..104 - cmpwi 0,0,7 - bc 12,2,L..102 - cmpwi 0,0,8 - bc 12,2,L..102 - cmpwi 0,0,9 - bc 12,2,L..102 - cmpwi 0,0,10 - bc 12,2,L..102 - lwz 9,12(31) - addi 0,9,-11 - cmplwi 0,0,1 - bc 4,1,L..105 - cmpwi 0,9,13 - bc 4,2,L..73 - lwz 9,8(31) - frsp 0,1 - stfs 0,0(9) - b L..50 -L..73: - cmpwi 0,9,14 - bc 4,2,L..75 - lwz 9,8(31) - stfd 1,0(9) - b L..50 -L..75: - cmpwi 0,9,15 - bc 12,2,L..102 - cmpwi 0,9,16 - bc 4,2,L..50 - lwz 0,4(31) - andi. 9,0,1 - bc 12,2,L..80 - lwz 9,16(31) - cmpwi 0,9,1 - bc 4,2,L..81 - lwz 9,8(31) - lbz 0,0(3) - stb 0,0(9) - b L..50 -L..81: - cmpwi 0,9,2 - bc 4,2,L..83 - lwz 9,8(31) - lhz 0,0(3) - sth 0,0(9) - b L..50 -L..83: - cmpwi 0,9,4 - bc 4,2,L..85 - lwz 9,8(31) - lwz 0,0(3) - stw 0,0(9) - b L..50 -L..85: - cmpwi 0,9,8 - bc 4,2,L..87 - lwz 0,0(3) - lwz 9,8(31) - stw 0,0(9) - lwz 11,8(31) - lwz 0,4(3) - stw 0,4(11) - b L..50 -L..87: - addi 0,9,3 - srwi 10,0,2 - addic. 10,10,-1 - bc 12,0,L..50 - slwi 11,10,2 -L..91: - lwzx 0,11,3 - lwz 9,8(31) - addic. 10,10,-1 - stwx 0,11,9 - addi 11,11,-4 - bc 4,0,L..91 - b L..50 -L..80: - andi. 9,0,512 - bc 12,2,L..50 - lwz 0,16(31) - cmpwi 0,0,1 - bc 4,2,L..95 -L..103: - lwz 9,8(31) - stb 3,0(9) - b L..50 -L..95: - cmpwi 0,0,2 - bc 4,2,L..97 -L..104: - lwz 9,8(31) - sth 3,0(9) - b L..50 -L..97: - cmpwi 0,0,4 - bc 4,2,L..99 -L..102: - lwz 9,8(31) - stw 3,0(9) - b L..50 -L..99: - cmpwi 0,0,8 - bc 4,2,L..50 -L..105: - lwz 9,8(31) - stw 3,0(9) - lwz 11,8(31) - stw 4,4(11) -L..50: - li 3,0 - la 1,1096(1) - lwz 0,8(1) - mtlr 0 - lwz 29,-12(1) - lwz 30,-8(1) - lwz 31,-4(1) - blr -LT..__builtin_avcall: - .long 0 - .byte 0,0,32,65,128,3,1,0 - .long 0 - .long LT..__builtin_avcall-.__builtin_avcall - .short 16 - .byte "__builtin_avcall" -_section_.text: -.csect .data[RW],3 - .long _section_.text DELETED ffcall/avcall/avcall-rs6000-aix.old.s Index: ffcall/avcall/avcall-rs6000-aix.old.s ================================================================== --- ffcall/avcall/avcall-rs6000-aix.old.s +++ /dev/null @@ -1,258 +0,0 @@ - .file "avcall-rs6000.c" -.toc -.csect .text[PR] -gcc2_compiled.: -__gnu_compiled_c: - .align 2 - .globl __builtin_avcall - .globl .__builtin_avcall -.csect __builtin_avcall[DS] -__builtin_avcall: - .long .__builtin_avcall, TOC[tc0], 0 -.csect .text[PR] -.__builtin_avcall: - .extern __mulh - .extern __mull - .extern __divss - .extern __divus - .extern __quoss - .extern __quous - mflr 0 - st 29,-12(1) - st 30,-8(1) - st 31,-4(1) - st 0,8(1) - stu 1,-1096(1) - mr 31,3 - l 9,20(31) - cal 0,56(1) - cal 9,-32(9) - sf 9,31,9 - srai 3,9,2 - cmpi 0,3,8 - bc 4,1,L..4 - mr 11,0 - cal 3,-8(3) - cal 9,64(31) -L..6: - l 0,0(9) - ai. 3,3,-1 - st 0,0(11) - cal 9,4(9) - cal 11,4(11) - bc 4,2,L..6 -L..4: - l 9,1056(31) - cal 9,-1060(9) - sf 9,31,9 - srai. 3,9,3 - bc 12,2,L..9 - cmpi 0,3,1 - bc 12,2,L..12 - cmpi 0,3,2 - bc 12,2,L..15 - cmpi 0,3,3 - bc 12,2,L..18 - cmpi 0,3,4 - bc 12,2,L..21 - cmpi 0,3,5 - bc 12,2,L..24 - cmpi 0,3,6 - bc 12,2,L..27 - cmpi 0,3,7 - bc 12,2,L..30 - cmpi 0,3,8 - bc 12,2,L..33 - cmpi 0,3,9 - bc 12,2,L..36 - cmpi 0,3,10 - bc 12,2,L..39 - cmpi 0,3,11 - bc 12,2,L..42 - cmpi 0,3,12 - bc 12,2,L..45 - lfd 13,1156(31) -L..45: - lfd 12,1148(31) -L..42: - lfd 11,1140(31) -L..39: - lfd 10,1132(31) -L..36: - lfd 9,1124(31) -L..33: - lfd 8,1116(31) -L..30: - lfd 7,1108(31) -L..27: - lfd 6,1100(31) -L..24: - lfd 5,1092(31) -L..21: - lfd 4,1084(31) -L..18: - lfd 3,1076(31) -L..15: - lfd 2,1068(31) -L..12: - lfd 1,1060(31) -L..9: - l 29,0(31) - l 3,32(31) - l 4,36(31) - l 5,40(31) - l 6,44(31) - l 7,48(31) - l 8,52(31) - l 9,56(31) - l 10,60(31) - st 2,20(1) - l 0,0(29) - l 2,4(29) - mtlr 0 - l 11,8(29) - brl - l 2,20(1) - l 0,12(31) - cmpi 0,0,1 - bc 12,2,L..50 - cmpi 0,0,0 - bc 12,2,L..102 - cmpi 0,0,2 - bc 12,2,L..103 - cmpi 0,0,3 - bc 12,2,L..103 - cmpi 0,0,4 - bc 12,2,L..103 - cmpi 0,0,5 - bc 12,2,L..104 - cmpi 0,0,6 - bc 12,2,L..104 - cmpi 0,0,7 - bc 12,2,L..102 - cmpi 0,0,8 - bc 12,2,L..102 - cmpi 0,0,9 - bc 12,2,L..102 - cmpi 0,0,10 - bc 12,2,L..102 - l 9,12(31) - cal 0,-11(9) - cmpli 0,0,1 - bc 4,1,L..105 - cmpi 0,9,13 - bc 4,2,L..73 - l 9,8(31) - frsp 0,1 - stfs 0,0(9) - b L..50 -L..73: - cmpi 0,9,14 - bc 4,2,L..75 - l 9,8(31) - stfd 1,0(9) - b L..50 -L..75: - cmpi 0,9,15 - bc 12,2,L..102 - cmpi 0,9,16 - bc 4,2,L..50 - l 0,4(31) - andil. 9,0,1 - bc 12,2,L..80 - l 9,16(31) - cmpi 0,9,1 - bc 4,2,L..81 - l 9,8(31) - lbz 0,0(3) - stb 0,0(9) - b L..50 -L..81: - cmpi 0,9,2 - bc 4,2,L..83 - l 9,8(31) - lhz 0,0(3) - sth 0,0(9) - b L..50 -L..83: - cmpi 0,9,4 - bc 4,2,L..85 - l 9,8(31) - l 0,0(3) - st 0,0(9) - b L..50 -L..85: - cmpi 0,9,8 - bc 4,2,L..87 - l 0,0(3) - l 9,8(31) - st 0,0(9) - l 11,8(31) - l 0,4(3) - st 0,4(11) - b L..50 -L..87: - cal 0,3(9) - sri 10,0,2 - ai. 10,10,-1 - bc 12,0,L..50 - sli 11,10,2 -L..91: - lx 0,11,3 - l 9,8(31) - ai. 10,10,-1 - stx 0,11,9 - cal 11,-4(11) - bc 4,0,L..91 - b L..50 -L..80: - andil. 9,0,512 - bc 12,2,L..50 - l 0,16(31) - cmpi 0,0,1 - bc 4,2,L..95 -L..103: - l 9,8(31) - stb 3,0(9) - b L..50 -L..95: - cmpi 0,0,2 - bc 4,2,L..97 -L..104: - l 9,8(31) - sth 3,0(9) - b L..50 -L..97: - cmpi 0,0,4 - bc 4,2,L..99 -L..102: - l 9,8(31) - st 3,0(9) - b L..50 -L..99: - cmpi 0,0,8 - bc 4,2,L..50 -L..105: - l 9,8(31) - st 3,0(9) - l 11,8(31) - st 4,4(11) -L..50: - lil 3,0 - cal 1,1096(1) - l 0,8(1) - mtlr 0 - l 29,-12(1) - l 30,-8(1) - l 31,-4(1) - br -LT..__builtin_avcall: - .long 0 - .byte 0,0,32,65,128,3,1,0 - .long 0 - .long LT..__builtin_avcall-.__builtin_avcall - .short 16 - .byte "__builtin_avcall" -_section_.text: -.csect .data[RW],3 - .long _section_.text DELETED ffcall/avcall/avcall-rs6000-linux.s Index: ffcall/avcall/avcall-rs6000-linux.s ================================================================== --- ffcall/avcall/avcall-rs6000-linux.s +++ /dev/null @@ -1,256 +0,0 @@ - .file "avcall-rs6000.c" -gcc2_compiled.: - .section ".text" - .align 2 - .globl __builtin_avcall - .type __builtin_avcall,@function -__builtin_avcall: - stwu 1,-1040(1) - mflr 0 - stw 31,1036(1) - stw 0,1044(1) - mr 31,3 - addi 7,1,8 - lwz 9,20(31) - addi 11,9,-40 - subf 11,31,11 - srawi 11,11,2 - lwz 9,1064(31) - addi 10,9,-1072 - subf 10,31,10 - srawi 10,10,3 - subfic 3,10,8 - cmpw 0,3,11 - bc 4,0,.L4 - addi 8,31,40 -.L6: - add 9,10,3 - slwi 9,9,2 - add 9,9,7 - slwi 0,3,2 - lwzx 0,8,0 - stw 0,-32(9) - addi 3,3,1 - cmpw 0,3,11 - bc 12,0,.L6 -.L4: - lwz 9,1064(31) - addi 11,9,-1072 - subf 11,31,11 - srawi. 11,11,3 - bc 12,2,.L9 - cmpwi 0,11,1 - bc 12,2,.L12 - cmpwi 0,11,2 - bc 12,2,.L15 - cmpwi 0,11,3 - bc 12,2,.L18 - cmpwi 0,11,4 - bc 12,2,.L21 - cmpwi 0,11,5 - bc 12,2,.L24 - cmpwi 0,11,6 - bc 12,2,.L27 - cmpwi 0,11,7 - bc 12,2,.L30 - cmpwi 0,11,8 - bc 12,2,.L33 - cmpwi 0,11,9 - bc 12,2,.L36 - cmpwi 0,11,10 - bc 12,2,.L39 - cmpwi 0,11,11 - bc 12,2,.L42 - cmpwi 0,11,12 - bc 12,2,.L45 - lfd 13,1168(31) -.L45: - lfd 12,1160(31) -.L42: - lfd 11,1152(31) -.L39: - lfd 10,1144(31) -.L36: - lfd 9,1136(31) -.L33: - lfd 8,1128(31) -.L30: - lfd 7,1120(31) -.L27: - lfd 6,1112(31) -.L24: - lfd 5,1104(31) -.L21: - lfd 4,1096(31) -.L18: - lfd 3,1088(31) -.L15: - lfd 2,1080(31) -.L12: - lfd 1,1072(31) -.L9: - lwz 11,0(31) - lwz 3,40(31) - lwz 4,44(31) - lwz 5,48(31) - lwz 6,52(31) - lwz 7,56(31) - lwz 8,60(31) - lwz 9,64(31) - lwz 10,68(31) - mtlr 11 - crxor 6,6,6 - blrl - lwz 0,12(31) - cmpwi 0,0,1 - bc 12,2,.L50 - cmpwi 0,0,0 - bc 12,2,.L102 - lwz 0,12(31) - cmpwi 0,0,2 - bc 12,2,.L103 - lwz 0,12(31) - cmpwi 0,0,3 - bc 12,2,.L103 - lwz 0,12(31) - cmpwi 0,0,4 - bc 12,2,.L103 - lwz 0,12(31) - cmpwi 0,0,5 - bc 12,2,.L104 - lwz 0,12(31) - cmpwi 0,0,6 - bc 12,2,.L104 - lwz 0,12(31) - cmpwi 0,0,7 - bc 12,2,.L102 - lwz 0,12(31) - cmpwi 0,0,8 - bc 12,2,.L102 - lwz 0,12(31) - cmpwi 0,0,9 - bc 12,2,.L102 - lwz 0,12(31) - cmpwi 0,0,10 - bc 12,2,.L102 - lwz 9,12(31) - addi 9,9,-11 - cmplwi 0,9,1 - bc 4,1,.L105 - lwz 0,12(31) - cmpwi 0,0,13 - bc 4,2,.L73 - lwz 9,8(31) - stfs 1,0(9) - b .L50 -.L73: - lwz 0,12(31) - cmpwi 0,0,14 - bc 4,2,.L75 - lwz 9,8(31) - stfd 1,0(9) - b .L50 -.L75: - lwz 0,12(31) - cmpwi 0,0,15 - bc 12,2,.L102 - lwz 0,12(31) - cmpwi 0,0,16 - bc 4,2,.L50 - lwz 0,4(31) - andi. 9,0,1 - bc 12,2,.L80 - lwz 0,16(31) - cmpwi 0,0,1 - bc 4,2,.L81 - lwz 9,8(31) - lbz 0,0(3) - stb 0,0(9) - b .L50 -.L81: - lwz 0,16(31) - cmpwi 0,0,2 - bc 4,2,.L83 - lwz 9,8(31) - lhz 0,0(3) - sth 0,0(9) - b .L50 -.L83: - lwz 0,16(31) - cmpwi 0,0,4 - bc 4,2,.L85 - lwz 9,8(31) - lwz 0,0(3) - stw 0,0(9) - b .L50 -.L85: - lwz 0,16(31) - cmpwi 0,0,8 - bc 4,2,.L87 - lwz 9,8(31) - lwz 0,0(3) - stw 0,0(9) - lwz 9,8(31) - lwz 0,4(3) - stw 0,4(9) - b .L50 -.L87: - lwz 9,16(31) - addi 10,9,3 - srwi 10,10,2 - addic. 10,10,-1 - bc 12,0,.L50 -.L91: - lwz 11,8(31) - slwi 9,10,2 - lwzx 0,9,3 - stwx 0,9,11 - addic. 10,10,-1 - bc 4,0,.L91 - b .L50 -.L80: - lwz 0,4(31) - andi. 9,0,512 - bc 12,2,.L50 - lwz 0,16(31) - cmpwi 0,0,1 - bc 4,2,.L95 -.L103: - lwz 9,8(31) - stb 3,0(9) - b .L50 -.L95: - lwz 0,16(31) - cmpwi 0,0,2 - bc 4,2,.L97 -.L104: - lwz 9,8(31) - sth 3,0(9) - b .L50 -.L97: - lwz 0,16(31) - cmpwi 0,0,4 - bc 4,2,.L99 -.L102: - lwz 9,8(31) - stw 3,0(9) - b .L50 -.L99: - lwz 0,16(31) - cmpwi 0,0,8 - bc 4,2,.L50 -.L105: - lwz 9,8(31) - stw 3,0(9) - lwz 9,8(31) - stw 4,4(9) -.L50: - li 3,0 - lwz 0,1044(1) - mtlr 0 - lwz 31,1036(1) - la 1,1040(1) - blr -.Lfe1: - .size __builtin_avcall,.Lfe1-__builtin_avcall - .ident "GCC: (GNU) 2.95.2 19991024 (release/franzo)" DELETED ffcall/avcall/avcall-rs6000-macos.s Index: ffcall/avcall/avcall-rs6000-macos.s ================================================================== --- ffcall/avcall/avcall-rs6000-macos.s +++ /dev/null @@ -1,222 +0,0 @@ -.text - .align 2 - .globl ___builtin_avcall -___builtin_avcall: - mflr r0 - stmw r30,-8(r1) - stw r0,8(r1) - mr r30,r3 - stwu r1,-1104(r1) - li r3,8 - lwz r9,20(r30) - addi r10,r1,56 - subf r9,r30,r9 - addi r9,r9,-32 - srawi r9,r9,2 - cmpw cr0,r3,r9 - bge- cr0,L102 - addi r9,r9,-8 - mtctr r9 -L106: - slwi r9,r3,2 - addi r3,r3,1 - add r11,r9,r30 - add r9,r9,r10 - lwz r0,32(r11) - stw r0,-32(r9) - bdnz L106 -L102: - lwz r9,1056(r30) - subf r9,r30,r9 - addi r9,r9,-1060 - srawi. r9,r9,3 - beq- cr0,L8 - cmpwi cr0,r9,1 - beq- cr0,L11 - cmpwi cr0,r9,2 - beq- cr0,L14 - cmpwi cr0,r9,3 - beq- cr0,L17 - cmpwi cr0,r9,4 - beq- cr0,L20 - cmpwi cr0,r9,5 - beq- cr0,L23 - cmpwi cr0,r9,6 - beq- cr0,L26 - cmpwi cr0,r9,7 - beq- cr0,L29 - cmpwi cr0,r9,8 - beq- cr0,L32 - cmpwi cr0,r9,9 - beq- cr0,L35 - cmpwi cr0,r9,10 - beq- cr0,L38 - cmpwi cr0,r9,11 - beq- cr0,L41 - cmpwi cr0,r9,12 - beq- cr0,L44 -L47: - lfd f13,1156(r30) -L44: - lfd f12,1148(r30) -L41: - lfd f11,1140(r30) -L38: - lfd f10,1132(r30) -L35: - lfd f9,1124(r30) -L32: - lfd f8,1116(r30) -L29: - lfd f7,1108(r30) -L26: - lfd f6,1100(r30) -L23: - lfd f5,1092(r30) -L20: - lfd f4,1084(r30) -L17: - lfd f3,1076(r30) -L14: - lfd f2,1068(r30) -L11: - lfd f1,1060(r30) -L8: - lwz r0,0(r30) - lwz r9,56(r30) - lwz r3,32(r30) - mtctr r0 - lwz r4,36(r30) - lwz r5,40(r30) - lwz r6,44(r30) - lwz r7,48(r30) - lwz r8,52(r30) - lwz r10,60(r30) - bctrl - lwz r9,12(r30) - cmpwi cr0,r9,1 - beq- cr0,L49 - cmpwi cr0,r9,0 - beq- cr0,L116 - cmpwi cr0,r9,2 - beq- cr0,L109 - cmpwi cr0,r9,3 - beq- cr0,L109 - cmpwi cr0,r9,4 - beq- cr0,L109 - cmpwi cr0,r9,5 - beq- cr0,L108 - cmpwi cr0,r9,6 - beq- cr0,L108 - cmpwi cr0,r9,7 - beq- cr0,L116 - cmpwi cr0,r9,8 - beq- cr0,L116 - cmpwi cr0,r9,9 - beq- cr0,L116 - cmpwi cr0,r9,10 - beq- cr0,L116 - addi r0,r9,-11 - cmplwi cr0,r0,1 - ble- cr0,L115 - cmpwi cr0,r9,13 - beq- cr0,L117 - cmpwi cr0,r9,14 - beq- cr0,L118 - cmpwi cr0,r9,15 - beq- cr0,L116 - cmpwi cr0,r9,16 - beq- cr0,L119 -L49: - addi r1,r1,1104 - li r3,0 - lwz r0,8(r1) - lmw r30,-8(r1) - mtlr r0 - blr -L119: - lwz r0,4(r30) - andi. r9,r0,1 - beq- cr0,L79 - lwz r9,16(r30) - cmpwi cr0,r9,1 - beq- cr0,L120 - cmpwi cr0,r9,2 - beq- cr0,L121 - cmpwi cr0,r9,4 - beq- cr0,L122 - cmpwi cr0,r9,8 - beq- cr0,L123 - addi r0,r9,3 - srwi r11,r0,2 - addic. r11,r11,-1 - blt- cr0,L49 - addi r0,r11,1 - lwz r10,8(r30) - mtctr r0 -L105: - slwi r9,r11,2 - addi r11,r11,-1 - lwzx r0,r9,r3 - stwx r0,r9,r10 - bdnz L105 - b L49 -L123: - lwz r9,8(r30) - lwz r0,0(r3) - stw r0,0(r9) - lwz r11,4(r3) - stw r11,4(r9) - b L49 -L122: - lwz r9,8(r30) - lwz r0,0(r3) - stw r0,0(r9) - b L49 -L121: - lwz r9,8(r30) - lhz r0,0(r3) - sth r0,0(r9) - b L49 -L120: - lwz r9,8(r30) - lbz r0,0(r3) - stb r0,0(r9) - b L49 -L79: - andi. r9,r0,512 - beq- cr0,L49 - lwz r0,16(r30) - cmpwi cr0,r0,1 - beq- cr0,L109 - cmpwi cr0,r0,2 - beq- cr0,L108 - cmpwi cr0,r0,4 - beq- cr0,L116 - cmpwi cr0,r0,8 - bne+ cr0,L49 -L115: - lwz r9,8(r30) - stw r4,4(r9) -L107: - stw r3,0(r9) - b L49 -L116: - lwz r9,8(r30) - b L107 -L108: - lwz r9,8(r30) - sth r3,0(r9) - b L49 -L109: - lwz r9,8(r30) - stb r3,0(r9) - b L49 -L118: - lwz r9,8(r30) - stfd f1,0(r9) - b L49 -L117: - lwz r9,8(r30) - stfs f1,0(r9) - b L49 DELETED ffcall/avcall/avcall-rs6000-sysv4.s Index: ffcall/avcall/avcall-rs6000-sysv4.s ================================================================== --- ffcall/avcall/avcall-rs6000-sysv4.s +++ /dev/null @@ -1,237 +0,0 @@ - .file "avcall-rs6000.c" -gcc2_compiled.: - .section ".text" - .align 2 - .globl __builtin_avcall - .type __builtin_avcall,@function -__builtin_avcall: - .extern __mulh - .extern __mull - .extern __divss - .extern __divus - .extern __quoss - .extern __quous - stwu 1,-1040(1) - mflr 0 - stw 31,1036(1) - stw 0,1044(1) - mr 31,3 - lwz 9,20(31) - addi 0,1,56 - addi 9,9,-32 - subfc 9,31,9 - srawi 3,9,2 - cmpwi 0,3,8 - bc 4,1,.L4 - mr 11,0 - addi 3,3,-8 - addi 9,31,64 -.L6: - lwz 0,0(9) - addic. 3,3,-1 - stw 0,0(11) - addi 9,9,4 - addi 11,11,4 - bc 4,2,.L6 -.L4: - lwz 9,1056(31) - addi 9,9,-1064 - subfc 9,31,9 - srawi. 3,9,3 - bc 12,2,.L9 - cmpwi 0,3,1 - bc 12,2,.L12 - cmpwi 0,3,2 - bc 12,2,.L15 - cmpwi 0,3,3 - bc 12,2,.L18 - cmpwi 0,3,4 - bc 12,2,.L21 - cmpwi 0,3,5 - bc 12,2,.L24 - cmpwi 0,3,6 - bc 12,2,.L27 - cmpwi 0,3,7 - bc 12,2,.L30 - cmpwi 0,3,8 - bc 12,2,.L33 - cmpwi 0,3,9 - bc 12,2,.L36 - cmpwi 0,3,10 - bc 12,2,.L39 - cmpwi 0,3,11 - bc 12,2,.L42 - cmpwi 0,3,12 - bc 12,2,.L45 - lfd 13,1160(31) -.L45: - lfd 12,1152(31) -.L42: - lfd 11,1144(31) -.L39: - lfd 10,1136(31) -.L36: - lfd 9,1128(31) -.L33: - lfd 8,1120(31) -.L30: - lfd 7,1112(31) -.L27: - lfd 6,1104(31) -.L24: - lfd 5,1096(31) -.L21: - lfd 4,1088(31) -.L18: - lfd 3,1080(31) -.L15: - lfd 2,1072(31) -.L12: - lfd 1,1064(31) -.L9: - lwz 11,0(31) - lwz 3,32(31) - lwz 4,36(31) - mtlr 11 - lwz 5,40(31) - lwz 6,44(31) - lwz 7,48(31) - lwz 8,52(31) - lwz 9,56(31) - lwz 10,60(31) - crxor 6,6,6 - blrl - lwz 0,12(31) - cmpwi 0,0,1 - bc 12,2,.L50 - cmpwi 0,0,0 - bc 12,2,.L102 - cmpwi 0,0,2 - bc 12,2,.L103 - cmpwi 0,0,3 - bc 12,2,.L103 - cmpwi 0,0,4 - bc 12,2,.L103 - cmpwi 0,0,5 - bc 12,2,.L104 - cmpwi 0,0,6 - bc 12,2,.L104 - cmpwi 0,0,7 - bc 12,2,.L102 - cmpwi 0,0,8 - bc 12,2,.L102 - cmpwi 0,0,9 - bc 12,2,.L102 - cmpwi 0,0,10 - bc 12,2,.L102 - lwz 9,12(31) - addi 0,9,-11 - cmplwi 0,0,1 - bc 4,1,.L105 - cmpwi 0,9,13 - bc 4,2,.L73 - frsp 0,1 - lwz 9,8(31) - stfs 0,0(9) - b .L50 -.L73: - cmpwi 0,9,14 - bc 4,2,.L75 - lwz 9,8(31) - stfd 1,0(9) - b .L50 -.L75: - cmpwi 0,9,15 - bc 12,2,.L102 - cmpwi 0,9,16 - bc 4,2,.L50 - lwz 0,4(31) - andi. 9,0,1 - bc 12,2,.L80 - lwz 9,16(31) - cmpwi 0,9,1 - bc 4,2,.L81 - lwz 9,8(31) - lbz 0,0(3) - stb 0,0(9) - b .L50 -.L81: - cmpwi 0,9,2 - bc 4,2,.L83 - lwz 9,8(31) - lhz 0,0(3) - sth 0,0(9) - b .L50 -.L83: - cmpwi 0,9,4 - bc 4,2,.L85 - lwz 9,8(31) - lwz 0,0(3) - stw 0,0(9) - b .L50 -.L85: - cmpwi 0,9,8 - bc 4,2,.L87 - lwz 0,0(3) - lwz 9,8(31) - stw 0,0(9) - lwz 11,8(31) - lwz 0,4(3) - stw 0,4(11) - b .L50 -.L87: - addi 0,9,3 - srwi 10,0,2 - addic. 10,10,-1 - bc 12,0,.L50 - slwi 11,10,2 -.L91: - lwzx 0,11,3 - lwz 9,8(31) - addic. 10,10,-1 - stwx 0,11,9 - addi 11,11,-4 - bc 4,0,.L91 - b .L50 -.L80: - andi. 9,0,512 - bc 12,2,.L50 - lwz 0,16(31) - cmpwi 0,0,1 - bc 4,2,.L95 -.L103: - lwz 9,8(31) - stb 3,0(9) - b .L50 -.L95: - cmpwi 0,0,2 - bc 4,2,.L97 -.L104: - lwz 9,8(31) - sth 3,0(9) - b .L50 -.L97: - cmpwi 0,0,4 - bc 4,2,.L99 -.L102: - lwz 9,8(31) - stw 3,0(9) - b .L50 -.L99: - cmpwi 0,0,8 - bc 4,2,.L50 -.L105: - lwz 9,8(31) - stw 3,0(9) - lwz 11,8(31) - stw 4,4(11) -.L50: - li 3,0 - lwz 0,1044(1) - mtlr 0 - lwz 31,1036(1) - la 1,1040(1) - blr -.Lfe1: - .size __builtin_avcall,.Lfe1-__builtin_avcall - .ident "GCC: (GNU) 2.95.2 19991024 (release)" DELETED ffcall/avcall/avcall-rs6000.c Index: ffcall/avcall/avcall-rs6000.c ================================================================== --- ffcall/avcall/avcall-rs6000.c +++ /dev/null @@ -1,217 +0,0 @@ -#ifndef _avcall_rs6000_c /*-*- C -*-*/ -#define _avcall_rs6000_c -/** - Copyright 1993 Bill Triggs, - Copyright 1995-1999 Bruno Haible, - Copyright 2000 Adam Fedor, - Copyright 2004 Paul Guyot, - - This is free software distributed under the GNU General Public - Licence described in the file COPYING. Contact the author if - you don't have this or can't live with it. There is ABSOLUTELY - NO WARRANTY, explicit or implied, on this software. -**/ -/*---------------------------------------------------------------------- - !!! THIS ROUTINE MUST BE COMPILED gcc -O !!! - - Foreign function interface for an IBM RS/6000 with gcc - - This calls a C function with an argument list built up using macros - defined in av_call.h. - - RS6000 Argument Passing Conventions: - - All arguments, except the first 8 words, are passed on the stack with - word alignment. Doubles take two words. The first 13 doubles and floats - are also passed in floating-point-registers. - To return a structure, the called function copies the value to space - pointed to by its first argument, and all other arguments are shifted - down by one. - - Differences between AIX and SysV.4 argument passing conventions: - - AIX: the first 13 doubles and floats are passed in FP registers, - and when they do, there is still room allocated for them in the - argument sequence (integer regs or stack). - SysV.4: the first 8 doubles and floats are passed in FP registers, - and no room is allocated for them in the argument sequence. - - AIX: Structures are passed in the argument sequence. - SysV.4: Structures are passed by reference: only a pointer appears in - the argument sequence. - - AIX: Long longs are only word aligned. - SysV.4: Long longs are two-word aligned, both when passed in registers - (pairs: 3/4, 5/6, 7/8, 9/10) and when passed on the stack. (Recall - that the stack is always 8-byte aligned). - - Compile this routine with gcc -O (or -O2 -fno-omit-frame-pointer or -g -O) - to get the right register variables. For other compilers use the - pre-compiled assembler version. - ----------------------------------------------------------------------*/ -#include "avcall.h.in" - -#ifdef __linux__ -#define STACK_OFFSET 2 -#else -#define STACK_OFFSET 14 -#endif - -#define RETURN(TYPE,VAL) (*(TYPE*)l->raddr = (TYPE)(VAL)) - -register double farg1 __asm__("fr1"); -register double farg2 __asm__("fr2"); -register double farg3 __asm__("fr3"); -register double farg4 __asm__("fr4"); -register double farg5 __asm__("fr5"); -register double farg6 __asm__("fr6"); -register double farg7 __asm__("fr7"); -register double farg8 __asm__("fr8"); -register double farg9 __asm__("fr9"); -register double farg10 __asm__("fr10"); -register double farg11 __asm__("fr11"); -register double farg12 __asm__("fr12"); -register double farg13 __asm__("fr13"); - -int -__builtin_avcall(av_alist* l) -{ - register __avword* sp __asm__("r1"); /* C names for registers */ -/*register __avword iret __asm__("r3"); */ - register __avword iret2 __asm__("r4"); - register float fret __asm__("fr1"); - register double dret __asm__("fr1"); - - __avword space[__AV_ALIST_WORDS]; /* space for callee's stack frame */ - __avword* argframe = sp + STACK_OFFSET;/* stack offset for argument list */ - int arglen = l->aptr - l->args; -#if defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)) - int farglen = 0; -#else - int farglen = l->faptr - l->fargs; -#endif - __avword i; - - for (i = (8-farglen); i < arglen; i++) /* push function args onto stack */ - argframe[i-8+farglen] = l->args[i]; - - /* pass first 13 floating-point args in registers */ - arglen = l->faptr - l->fargs; - if (arglen == 0) goto fargs0; - else if (arglen == 1) goto fargs1; - else if (arglen == 2) goto fargs2; - else if (arglen == 3) goto fargs3; - else if (arglen == 4) goto fargs4; - else if (arglen == 5) goto fargs5; - else if (arglen == 6) goto fargs6; - else if (arglen == 7) goto fargs7; - else if (arglen == 8) goto fargs8; - else if (arglen == 9) goto fargs9; - else if (arglen == 10) goto fargs10; - else if (arglen == 11) goto fargs11; - else if (arglen == 12) goto fargs12; - else if (arglen == 13) goto fargs13; - fargs13: farg13 = l->fargs[12]; - fargs12: farg12 = l->fargs[11]; - fargs11: farg11 = l->fargs[10]; - fargs10: farg10 = l->fargs[9]; - fargs9: farg9 = l->fargs[8]; - fargs8: farg8 = l->fargs[7]; - fargs7: farg7 = l->fargs[6]; - fargs6: farg6 = l->fargs[5]; - fargs5: farg5 = l->fargs[4]; - fargs4: farg4 = l->fargs[3]; - fargs3: farg3 = l->fargs[2]; - fargs2: farg2 = l->fargs[1]; - fargs1: farg1 = l->fargs[0]; - fargs0: ; - /* call function, pass 8 args in registers */ - i = (*l->func)(l->args[0], l->args[1], l->args[2], l->args[3], - l->args[4], l->args[5], l->args[6], l->args[7]); - - /* save return value */ - if (l->rtype == __AVvoid) { - } else - if (l->rtype == __AVword) { - RETURN(__avword, i); - } else - if (l->rtype == __AVchar) { - RETURN(char, i); - } else - if (l->rtype == __AVschar) { - RETURN(signed char, i); - } else - if (l->rtype == __AVuchar) { - RETURN(unsigned char, i); - } else - if (l->rtype == __AVshort) { - RETURN(short, i); - } else - if (l->rtype == __AVushort) { - RETURN(unsigned short, i); - } else - if (l->rtype == __AVint) { - RETURN(int, i); - } else - if (l->rtype == __AVuint) { - RETURN(unsigned int, i); - } else - if (l->rtype == __AVlong) { - RETURN(long, i); - } else - if (l->rtype == __AVulong) { - RETURN(unsigned long, i); - } else - if (l->rtype == __AVlonglong || l->rtype == __AVulonglong) { - ((__avword*)l->raddr)[0] = i; - ((__avword*)l->raddr)[1] = iret2; - } else - if (l->rtype == __AVfloat) { - RETURN(float, fret); - } else - if (l->rtype == __AVdouble) { - RETURN(double, dret); - } else - if (l->rtype == __AVvoidp) { - RETURN(void*, i); - } else - if (l->rtype == __AVstruct) { - if (l->flags & __AV_PCC_STRUCT_RETURN) { - /* pcc struct return convention: need a *(TYPE*)l->raddr = *(TYPE*)i; */ - if (l->rsize == sizeof(char)) { - RETURN(char, *(char*)i); - } else - if (l->rsize == sizeof(short)) { - RETURN(short, *(short*)i); - } else - if (l->rsize == sizeof(int)) { - RETURN(int, *(int*)i); - } else - if (l->rsize == sizeof(double)) { - ((int*)l->raddr)[0] = ((int*)i)[0]; - ((int*)l->raddr)[1] = ((int*)i)[1]; - } else { - int n = (l->rsize + sizeof(__avword)-1)/sizeof(__avword); - while (--n >= 0) - ((__avword*)l->raddr)[n] = ((__avword*)i)[n]; - } - } else { - /* normal struct return convention */ - if (l->flags & __AV_REGISTER_STRUCT_RETURN) { - if (l->rsize == sizeof(char)) { - RETURN(char, i); - } else - if (l->rsize == sizeof(short)) { - RETURN(short, i); - } else - if (l->rsize == sizeof(int)) { - RETURN(int, i); - } else - if (l->rsize == 2*sizeof(__avword)) { - ((__avword*)l->raddr)[0] = i; - ((__avword*)l->raddr)[1] = iret2; - } - } - } - } - return 0; -} - -#endif /*_avcall_rs6000_c */ DELETED ffcall/avcall/avcall-s390.c Index: ffcall/avcall/avcall-s390.c ================================================================== --- ffcall/avcall/avcall-s390.c +++ /dev/null @@ -1,173 +0,0 @@ -#ifndef _avcall_s390_c /*-*- C -*-*/ -#define _avcall_s390_c -/** - Copyright 1993 Bill Triggs, - Copyright 1995-1999 Bruno Haible, - Copyright 2001 Gerhard Tonn, - - This is free software distributed under the GNU General Public - Licence described in the file COPYING. Contact the author if - you don't have this or can't live with it. There is ABSOLUTELY - NO WARRANTY, explicit or implied, on this software. -**/ -/*---------------------------------------------------------------------- - - Foreign function interface for an IBM S/390 with gcc - - This calls a C function with an argument list built up using macros - defined in av_call.h. - - S390 Argument Passing Conventions: - - All arguments, except the first 5 words, are passed on the stack with - word alignment. Doubles take two words. The first 2 doubles and floats - are also passed in floating-point-registers. - To return a structure, the called function copies the value to space - pointed to by its first argument, and all other arguments are shifted - down by one. - - Compile this routine with gcc -O2 to get the right register variables. - For other compilers use the pre-compiled assembler version. - ----------------------------------------------------------------------*/ -#include "avcall.h" - -#define STACK_OFFSET 24 - -#define RETURN(TYPE,VAL) (*(TYPE*)l->raddr = (TYPE)(VAL)) - -register float farg1 __asm__("f0"); -register float farg2 __asm__("f2"); -register double darg1 __asm__("f0"); -register double darg2 __asm__("f2"); - -int -__builtin_avcall(av_alist* l) -{ - register __avword* sp __asm__("r15"); /* C names for registers */ -/*register __avword iret __asm__("r2"); */ - register __avword iret2 __asm__("r3"); - register float fret __asm__("f0"); - register double dret __asm__("f0"); - - __avword space[__AV_ALIST_WORDS]; /* space for callee's stack frame */ - __avword* argframe = sp + STACK_OFFSET;/* stack offset for argument list */ - int arglen = l->aptr - l->args; - int farglen = l->faptr - l->fargs; - int iargwords = (arglen-l->fargwords)<5?arglen-l->fargwords:5; - __avword i; - - for (i = iargwords; i < arglen; i++) /* push function args onto stack */ - argframe[i-iargwords] = l->args[i]; - - /* pass first 2 floating-point args in registers */ - if (farglen == 1) { - if(l->fargsused[0]) farg1 = l->fargs[0]; else darg1 = l->dargs[0]; - } - else if (farglen == 2) { - if(l->fargsused[0] && l->fargsused[1]) { - farg1 = l->fargs[0]; farg2 = l->fargs[1]; - } - else if(l->fargsused[0] && !l->fargsused[1]) { - farg1 = l->fargs[0]; darg2 = l->dargs[1]; - } - else if(!l->fargsused[0] && l->fargsused[1]) { - darg1 = l->dargs[0]; farg2 = l->fargs[1]; - } - else if(!l->fargsused[0] && !l->fargsused[1]) { - darg1 = l->dargs[0]; darg2 = l->dargs[1]; - } - } - - /* call function, pass 5 args in registers */ - i = (*l->func)(l->args[0], l->args[1], l->args[2], l->args[3], - l->args[4]); - - /* save return value */ - if (l->rtype == __AVvoid) { - } else - if (l->rtype == __AVword) { - RETURN(__avword, i); - } else - if (l->rtype == __AVchar) { - RETURN(char, i); - } else - if (l->rtype == __AVschar) { - RETURN(signed char, i); - } else - if (l->rtype == __AVuchar) { - RETURN(unsigned char, i); - } else - if (l->rtype == __AVshort) { - RETURN(short, i); - } else - if (l->rtype == __AVushort) { - RETURN(unsigned short, i); - } else - if (l->rtype == __AVint) { - RETURN(int, i); - } else - if (l->rtype == __AVuint) { - RETURN(unsigned int, i); - } else - if (l->rtype == __AVlong) { - RETURN(long, i); - } else - if (l->rtype == __AVulong) { - RETURN(unsigned long, i); - } else - if (l->rtype == __AVlonglong || l->rtype == __AVulonglong) { - ((__avword*)l->raddr)[0] = i; - ((__avword*)l->raddr)[1] = iret2; - } else - if (l->rtype == __AVfloat) { - RETURN(float, fret); - } else - if (l->rtype == __AVdouble) { - RETURN(double, dret); - } else - if (l->rtype == __AVvoidp) { - RETURN(void*, i); - } else - if (l->rtype == __AVstruct) { - if (l->flags & __AV_PCC_STRUCT_RETURN) { - /* pcc struct return convention: need a *(TYPE*)l->raddr = *(TYPE*)i; */ - if (l->rsize == sizeof(char)) { - RETURN(char, *(char*)i); - } else - if (l->rsize == sizeof(short)) { - RETURN(short, *(short*)i); - } else - if (l->rsize == sizeof(int)) { - RETURN(int, *(int*)i); - } else - if (l->rsize == sizeof(double)) { - ((int*)l->raddr)[0] = ((int*)i)[0]; - ((int*)l->raddr)[1] = ((int*)i)[1]; - } else { - int n = (l->rsize + sizeof(__avword)-1)/sizeof(__avword); - while (--n >= 0) - ((__avword*)l->raddr)[n] = ((__avword*)i)[n]; - } - } else { - /* normal struct return convention */ - if (l->flags & __AV_REGISTER_STRUCT_RETURN) { - if (l->rsize == sizeof(char)) { - RETURN(char, i); - } else - if (l->rsize == sizeof(short)) { - RETURN(short, i); - } else - if (l->rsize == sizeof(int)) { - RETURN(int, i); - } else - if (l->rsize == 2*sizeof(__avword)) { - ((__avword*)l->raddr)[0] = i; - ((__avword*)l->raddr)[1] = iret2; - } - } - } - } - return 0; -} - -#endif /*_avcall_s390_c */ DELETED ffcall/avcall/avcall-s390.s Index: ffcall/avcall/avcall-s390.s ================================================================== --- ffcall/avcall/avcall-s390.s +++ /dev/null @@ -1,237 +0,0 @@ - .file "avcall-s390.c" - .version "01.01" -gcc2_compiled.: -.text - .align 4 -.globl __builtin_avcall - .type __builtin_avcall,@function -__builtin_avcall: -# leaf function 0 -# automatics 1032 -# outgoing args 0 -# need frame pointer 0 -# call alloca 0 -# has varargs 0 -# incoming args (stack) 0 -# function length 702 -# register live 0111111000001011000000000000000001 - stm %r6,%r15,24(%r15) - lr %r1,%r15 - ahi %r15,-1128 - st %r1,0(%r15) - lr %r12,%r2 - la %r2,96(%r15) - l %r3,20(%r12) - ahi %r3,-40 - sr %r3,%r12 - sra %r3,2 - l %r5,1068(%r12) - ahi %r5,-1072 - sr %r5,%r12 - sra %r5,2 - lr %r1,%r3 - s %r1,1064(%r12) - chi %r1,5 - jle .L3 - lhi %r1,5 -.L3: - lr %r4,%r1 - cr %r4,%r3 - jnl .L5 - la %r6,40(%r12) -.L7: - lr %r1,%r4 - sll %r1,2 - l %r1,0(%r6,%r1) - st %r1,0(%r2) - ahi %r2,4 - ahi %r4,1 - cr %r4,%r3 - jl .L7 -.L5: - chi %r5,1 - jne .L9 - icm %r1,15,1084(%r12) - je .L10 - le %f0,1072(%r12) - j .L12 -.L10: - ld %f0,1096(%r12) - j .L12 -.L9: - chi %r5,2 - jne .L12 - icm %r1,15,1084(%r12) - je .L14 - icm %r2,15,1088(%r12) - je .L14 - le %f0,1072(%r12) - le %f2,1076(%r12) - j .L12 -.L14: - ltr %r1,%r1 - je .L16 - icm %r5,15,1088(%r12) - jne .L16 - le %f0,1072(%r12) - j .L74 -.L16: - ltr %r1,%r1 - jne .L18 - icm %r2,15,1088(%r12) - je .L18 - ld %f0,1096(%r12) - le %f2,1076(%r12) - j .L12 -.L18: - ltr %r1,%r1 - jne .L12 - icm %r5,15,1088(%r12) - jne .L12 - ld %f0,1096(%r12) -.L74: - ld %f2,1104(%r12) -.L12: - l %r1,0(%r12) - l %r2,40(%r12) - l %r3,44(%r12) - l %r4,48(%r12) - l %r5,52(%r12) - l %r6,56(%r12) - basr %r14,%r1 - lr %r4,%r2 - l %r1,12(%r12) - chi %r1,1 - je .L22 - ltr %r1,%r1 - je .L75 - chi %r1,2 - je .L76 - chi %r1,3 - je .L76 - chi %r1,4 - je .L76 - chi %r1,5 - je .L77 - chi %r1,6 - je .L77 - chi %r1,7 - je .L75 - chi %r1,8 - je .L75 - chi %r1,9 - je .L75 - chi %r1,10 - je .L75 - l %r2,12(%r12) - lr %r1,%r2 - ahi %r1,-11 - lhi %r5,1 - clr %r1,%r5 - jle .L78 - chi %r2,13 - jne .L45 - l %r1,8(%r12) - ste %f0,0(%r1) - j .L22 -.L45: - chi %r2,14 - jne .L47 - l %r1,8(%r12) - std %f0,0(%r1) - j .L22 -.L47: - chi %r2,15 - je .L75 - chi %r2,16 - jne .L22 - l %r1,4(%r12) - tml %r1,0x1 - je .L52 - l %r1,16(%r12) - chi %r1,1 - jne .L53 - l %r1,8(%r12) - ic %r4,0(%r4) - stc %r4,0(%r1) - j .L22 -.L53: - chi %r1,2 - jne .L55 - l %r1,8(%r12) - lh %r4,0(%r4) - sth %r4,0(%r1) - j .L22 -.L55: - chi %r1,4 - jne .L57 - l %r1,8(%r12) - mvc 0(4,%r1),0(%r4) - j .L22 -.L57: - chi %r1,8 - jne .L59 - l %r1,8(%r12) - mvc 0(4,%r1),0(%r4) - l %r2,8(%r12) - mvc 4(4,%r2),4(%r4) - j .L22 -.L59: - lr %r3,%r1 - ahi %r3,3 - srl %r3,2 - ahi %r3,-1 - ltr %r3,%r3 - jnhe .L22 - lr %r2,%r3 - sll %r2,2 -.L63: - lr %r1,%r2 - a %r1,8(%r12) - l %r5,0(%r2,%r4) - st %r5,0(%r1) - ahi %r2,-4 - ahi %r3,-1 - ltr %r3,%r3 - jhe .L63 - j .L22 -.L52: - tml %r1,0x200 - je .L22 - l %r1,16(%r12) - chi %r1,1 - jne .L67 -.L76: - l %r1,8(%r12) - stc %r4,0(%r1) - j .L22 -.L67: - chi %r1,2 - jne .L69 -.L77: - l %r1,8(%r12) - sth %r4,0(%r1) - j .L22 -.L69: - chi %r1,4 - jne .L71 -.L75: - l %r1,8(%r12) - st %r4,0(%r1) - j .L22 -.L71: - chi %r1,8 - jne .L22 -.L78: - l %r1,8(%r12) - st %r4,0(%r1) - l %r2,8(%r12) - st %r3,4(%r2) -.L22: - lhi %r2,0 - l %r4,1184(%r15) - lm %r6,%r15,1152(%r15) - br %r4 -.Lfe1: - .size __builtin_avcall,.Lfe1-__builtin_avcall - .ident "GCC: (GNU) 2.95.4 (Debian prerelease)" DELETED ffcall/avcall/avcall-sparc.c Index: ffcall/avcall/avcall-sparc.c ================================================================== --- ffcall/avcall/avcall-sparc.c +++ /dev/null @@ -1,241 +0,0 @@ -#ifndef _avcall_sparc_c /*-*- C -*-*/ -#define _avcall_sparc_c -/** - Copyright 1993 Bill Triggs, - Copyright 1995-1999 Bruno Haible, - - This is free software distributed under the GNU General Public - Licence described in the file COPYING. Contact the author if - you don't have this or can't live with it. There is ABSOLUTELY - NO WARRANTY, explicit or implied, on this software. -**/ -/*---------------------------------------------------------------------- - !!! THIS ROUTINE MUST BE COMPILED gcc -O !!! - - Foreign function interface for a Sun4 Sparc with gcc/sun-cc. - - This calls a C function with an argument list built up using macros - defined in av_call.h. - - Sparc Argument Passing Conventions - - The first 6 words of arguments are passed in integer registers o0-o5 - regardless of type or alignment. (Registers are windowed: o0-o5 become - i0-i5 if the called function executes a `save' instruction.) Remaining - arguments are pushed onto the stack starting at a fixed offset - ("argframe"). Space is left on the stack frame for temporary storage of - the register arguments as well. - - Doubles may be cut in half and misaligned. Shorter integers are - always promoted to word-length. Functions with K&R-style declarations - and float args pass them as doubles and truncate them on function entry. - Structures are passed as pointers to a local copy of the structure made - by the caller. - - Integers and pointers are returned in o0, floats in f0, doubles in - f0/f1. If the function returns a structure a pointer to space - allocated by the caller is pushed onto the stack immediately - before the function arguments. Gcc without -fpcc-struct-return returns - <= 4 byte structures as integers. - - Sun cc allocates temporary space for a returned structure just below - the current frame pointer $fp (the $sp of the caller), and the caller - must copy them from there. It also returns the temp address in $o0, but - that gets nuked in the return in the code below so we can't use it. - **The Sun cc struct return stuff below is a kludge**, but seems to work - on the test cases... - - Compile this routine with gcc for the __asm__ extensions and with - optimisation on (-O or -O2 or -g -O) so that argframe is set to the - correct offset. (%sp is used differently in non-optimized code). - For Sun cc, use the pre-compiled assembler version of this routine. - ----------------------------------------------------------------------*/ -#include "avcall.h.in" - -#define RETURN(TYPE,VAL) (*(TYPE*)l->raddr = (TYPE)(VAL)) - -register void* callee __asm__("%g2"); /* any global or local register */ -register __avword o0 __asm__("%o0"); -register __avword o1 __asm__("%o1"); -register __avword o2 __asm__("%o2"); -register __avword o3 __asm__("%o3"); -register __avword o4 __asm__("%o4"); -register __avword o5 __asm__("%o5"); - -int -__builtin_avcall(av_alist* l) -{ - /*?? We probably need to make space for Sun cc - struct return somewhere here. */ - register __avword* sp __asm__("%sp"); /* C names for registers */ - register float fret __asm__("%f0"); /* %f0 */ - register double dret __asm__("%f0"); /* %f0,%f1 */ - - __avword trampoline[6]; /* room for a trampoline */ - __avword space[__AV_ALIST_WORDS]; /* space for callee's stack frame */ - __avword *argframe = sp + 17; /* stack offset for argument list */ - int arglen = l->aptr - l->args; - __avword i; - - if ((l->rtype == __AVstruct) && !(l->flags & __AV_SUNCC_STRUCT_RETURN)) - argframe[-1] = (__avword)l->raddr; /* push struct return address */ - - { - int i; - for (i = 6; i < arglen; i++) /* push excess function args */ - argframe[i] = l->args[i]; - } - - if ((l->rtype == __AVstruct) && (l->flags & __AV_SUNPROCC_STRUCT_RETURN)) - /* SUNWspro cc compiled functions don't copy the structure to the area - * pointed to by argframe[-1] unless the caller has a proper "unimp n" - * instruction. We generate the calling instructions on the stack. */ - { - trampoline[0] = 0x9FC08000; /* call %g2 */ - trampoline[1] = 0x01000000; /* nop */ - trampoline[2] = l->rsize & 0xFFF; /* unimp n */ - trampoline[3] = 0xB0102000; /* mov 0,%i0 */ - trampoline[4] = 0x81C7E008; /* ret */ - trampoline[5] = 0x81E80000; /* restore */ - __asm__ __volatile__ ("iflush %0" : : "r" (&trampoline[0])); - __asm__ __volatile__ ("iflush %0" : : "r" (&trampoline[2])); - __asm__ __volatile__ ("iflush %0" : : "r" (&trampoline[4])); - __asm__ __volatile__ ("iflush %0" : : "r" (&trampoline[5])); - o0 = l->args[0]; o1 = l->args[1]; o2 = l->args[2]; - o3 = l->args[3]; o4 = l->args[4]; o5 = l->args[5]; - callee = l->func; - goto *(void*)trampoline; - } - - /* call function with 1st 6 args */ - i = ({ __avword iret; /* %o0 */ - iret = (*l->func)(l->args[0], l->args[1], l->args[2], - l->args[3], l->args[4], l->args[5]); - asm ("nop"); /* struct returning functions skip this instruction */ - iret; - }); - - /* save return value */ - if (l->rtype == __AVvoid) { - } else - if (l->rtype == __AVword) { - RETURN(__avword, i); - } else - if (l->rtype == __AVchar) { - RETURN(char, i); - } else - if (l->rtype == __AVschar) { - RETURN(signed char, i); - } else - if (l->rtype == __AVuchar) { - RETURN(unsigned char, i); - } else - if (l->rtype == __AVshort) { - RETURN(short, i); - } else - if (l->rtype == __AVushort) { - RETURN(unsigned short, i); - } else - if (l->rtype == __AVint) { - RETURN(int, i); - } else - if (l->rtype == __AVuint) { - RETURN(unsigned int, i); - } else - if (l->rtype == __AVlong) { - RETURN(long, i); - } else - if (l->rtype == __AVulong) { - RETURN(unsigned long, i); - } else - if (l->rtype == __AVlonglong || l->rtype == __AVulonglong) { - ((__avword*)l->raddr)[0] = i; - ((__avword*)l->raddr)[1] = o1; - } else - if (l->rtype == __AVfloat) { - /* old Sun cc returns floats as doubles */ - if (l->flags & __AV_SUNCC_FLOAT_RETURN) { - RETURN(float, (float)dret); - } else { - RETURN(float, fret); - } - } else - if (l->rtype == __AVdouble) { - RETURN(double, dret); - } else - if (l->rtype == __AVvoidp) { - RETURN(void*, i); - } else - if (l->rtype == __AVstruct) { - /* This is a kludge for old Sun cc and is probably fragile. */ - if (l->flags & __AV_SUNCC_STRUCT_RETURN) { - /* Sun cc struct return convention */ - if (l->rsize == sizeof(char)) { - RETURN(char, ((char*)sp)[-1]); - } else - if (l->rsize == sizeof(short)) { - RETURN(short, ((short*)sp)[-1]); - } else - if (l->rsize == sizeof(int)) { - RETURN(int, ((int*)sp)[-1]); - } else - if (l->rsize == sizeof(double)) { - ((int*)l->raddr)[0] = ((int*)sp)[-2]; - ((int*)l->raddr)[1] = ((int*)sp)[-1]; - } else - if (l->rsize % 4) { - char* dstaddr = (char*)l->raddr; - char* srcaddr = (char*)((long)sp - l->rsize); - unsigned int count = l->rsize; - if (count > 4) - srcaddr = (char*)((long)srcaddr & -4); - while (count > 0) { - *dstaddr++ = *srcaddr++; - count--; - } - } else { - __avword* dstaddr = (__avword*)l->raddr; - __avword* srcaddr = (__avword*)((long)sp - l->rsize); - while (srcaddr < sp) - *dstaddr++ = *srcaddr++; - } - } else { - if (l->flags & __AV_PCC_STRUCT_RETURN) { - /* pcc struct return convention: need a *(TYPE*)l->raddr = *(TYPE*)i; */ - if (l->rsize == sizeof(char)) { - RETURN(char, *(char*)i); - } else - if (l->rsize == sizeof(short)) { - RETURN(short, *(short*)i); - } else - if (l->rsize == sizeof(int)) { - RETURN(int, *(int*)i); - } else - if (l->rsize == sizeof(double)) { - ((int*)l->raddr)[0] = ((int*)i)[0]; - ((int*)l->raddr)[1] = ((int*)i)[1]; - } else { - int n = (l->rsize + sizeof(__avword)-1)/sizeof(__avword); - while (--n >= 0) - ((__avword*)l->raddr)[n] = ((__avword*)i)[n]; - } - } else { - /* normal struct return convention */ - if (l->flags & __AV_SMALL_STRUCT_RETURN) { - if (l->rsize == sizeof(char)) { - RETURN(char, i); - } else - if (l->rsize == sizeof(short)) { - RETURN(short, i); - } else - if (l->rsize == sizeof(int)) { - RETURN(int, i); - } - } - } - } - } - return 0; -} - -#endif /*_avcall_sparc_c */ DELETED ffcall/avcall/avcall-sparc64.c Index: ffcall/avcall/avcall-sparc64.c ================================================================== --- ffcall/avcall/avcall-sparc64.c +++ /dev/null @@ -1,488 +0,0 @@ -#ifndef _avcall_sparc64_c /*-*- C -*-*/ -#define _avcall_sparc64_c -/** - Copyright 1993 Bill Triggs, - Copyright 1995-1999 Bruno Haible, - - This is free software distributed under the GNU General Public - Licence described in the file COPYING. Contact the author if - you don't have this or can't live with it. There is ABSOLUTELY - NO WARRANTY, explicit or implied, on this software. -**/ -/*---------------------------------------------------------------------- - !!! THIS ROUTINE MUST BE COMPILED gcc -O !!! - - Foreign function interface for a Sparc v9 in 64-bit mode with gcc. - - This calls a C function with an argument list built up using macros - defined in av_call.h. - - Sparc 64-bit Argument Passing Conventions - - The argument registers are laid out as an array of 16 elements - and arguments are added sequentially. The first 6 int args and up to the - first 16 fp args (depending on size) are passed in regs. - - Slot Stack Integral Float Float in structure Double Long Double - ---- ----- -------- ----- ------------------ ------ ----------- - 15 [SP+248] %f31 %f30,%f31 %d30 - 14 [SP+240] %f29 %f28,%f29 %d28 %q28 - 13 [SP+232] %f27 %f26,%f27 %d26 - 12 [SP+224] %f25 %f24,%f25 %d24 %q24 - 11 [SP+216] %f23 %f22,%f23 %d22 - 10 [SP+208] %f21 %f20,%f21 %d20 %q20 - 9 [SP+200] %f19 %f18,%f19 %d18 - 8 [SP+192] %f17 %f16,%f17 %d16 %q16 - 7 [SP+184] %f15 %f14,%f15 %d14 - 6 [SP+176] %f13 %f12,%f13 %d12 %q12 - 5 [SP+168] %o5 %f11 %f10,%f11 %d10 - 4 [SP+160] %o4 %f9 %f8,%f9 %d8 %q8 - 3 [SP+152] %o3 %f7 %f6,%f7 %d6 - 2 [SP+144] %o2 %f5 %f4,%f5 %d4 %q4 - 1 [SP+136] %o1 %f3 %f2,%f3 %d2 - 0 [SP+128] %o0 %f1 %f0,%f1 %d0 %q0 - - Here SP = %sp if -mno-stack-bias or %sp+stack_bias otherwise. - - Integral arguments are always passed as 64 bit quantities appropriately - extended. - - Passing of floating point values is handled as follows. - If a prototype is in scope: - If the value is in a named argument (i.e. not a stdarg function or a - value not part of the `...') then the value is passed in the appropriate - fp reg. - If the value is part of the `...' and is passed in one of the first 6 - slots then the value is passed in the appropriate int reg. - If the value is part of the `...' and is not passed in one of the first 6 - slots then the value is passed in memory. - If a prototype is not in scope: - If the value is one of the first 6 arguments the value is passed in the - appropriate integer reg and the appropriate fp reg. - If the value is not one of the first 6 arguments the value is passed in - the appropriate fp reg and in memory. - - Remaining arguments are pushed onto the stack starting at a fixed offset - Space is left on the stack frame for temporary storage of the register - arguments as well. - - Integers shorter than `long' are always promoted to word-length - (zero-extended or sign-extended, according to their type). Structures - <= 16 bytes are passed embedded in the argument sequence; bigger structures - are passed by reference. - - Integers and pointers are returned in o0, floats in f0, doubles in - f0/f1. If the function returns a structure a pointer to space - allocated by the caller is pushed onto the stack immediately - before the function arguments. Structures <= 32 bytes are returned in - registers (integer/float/double registers, as appropriate). - - Long doubles are 16-byte aligned, but we don't deal with this here, so - we assume 8-byte alignment for everything. - - ----------------------------------------------------------------------*/ -#include "avcall.h.in" - -#define RETURN(TYPE,VAL) (*(TYPE*)l->raddr = (TYPE)(VAL)) -#define OFFSETOF(struct,member) ((int)&(((struct*)0)->member)) - -register void* callee __asm__("%g2"); /* any global or local register */ -register __avword o0 __asm__("%o0"); -register __avword o1 __asm__("%o1"); -register __avword o2 __asm__("%o2"); -register __avword o3 __asm__("%o3"); -register __avword o4 __asm__("%o4"); -register __avword o5 __asm__("%o5"); - -int -__builtin_avcall(av_alist* l) -{ - register __avword* sp __asm__("%sp"); /* C names for registers */ - register float fret __asm__("%f0"); /* %f0 */ - register double dret __asm__("%f0"); /* %f0,%f1 */ - - __avword trampoline[6]; /* room for a trampoline */ - __avword space[__AV_ALIST_WORDS]; /* space for callee's stack frame */ - __avword *argframe = sp + 17; /* stack offset for argument list */ - int arglen = l->aptr - l->args; - __avword i; - - if (l->farg_mask) { - /* push leading float args */ - if (l->farg_mask & (1<<0)) - __asm__("ld %1(%0),%%f1" : : "p" (l), "i" OFFSETOF(av_alist,args[0])); - if (l->farg_mask & (1<<1)) - __asm__("ld %1(%0),%%f3" : : "p" (l), "i" OFFSETOF(av_alist,args[1])); - if (l->farg_mask & (1<<2)) - __asm__("ld %1(%0),%%f5" : : "p" (l), "i" OFFSETOF(av_alist,args[2])); - if (l->farg_mask & (1<<3)) - __asm__("ld %1(%0),%%f7" : : "p" (l), "i" OFFSETOF(av_alist,args[3])); - if (l->farg_mask & (1<<4)) - __asm__("ld %1(%0),%%f9" : : "p" (l), "i" OFFSETOF(av_alist,args[4])); - if (l->farg_mask & (1<<5)) - __asm__("ld %1(%0),%%f11" : : "p" (l), "i" OFFSETOF(av_alist,args[5])); - if (l->farg_mask & (1<<6)) - __asm__("ld %1(%0),%%f13" : : "p" (l), "i" OFFSETOF(av_alist,args[6])); - if (l->farg_mask & (1<<7)) - __asm__("ld %1(%0),%%f15" : : "p" (l), "i" OFFSETOF(av_alist,args[7])); - if (l->farg_mask & (1<<8)) - __asm__("ld %1(%0),%%f17" : : "p" (l), "i" OFFSETOF(av_alist,args[8])); - if (l->farg_mask & (1<<9)) - __asm__("ld %1(%0),%%f19" : : "p" (l), "i" OFFSETOF(av_alist,args[9])); - if (l->farg_mask & (1<<10)) - __asm__("ld %1(%0),%%f21" : : "p" (l), "i" OFFSETOF(av_alist,args[10])); - if (l->farg_mask & (1<<11)) - __asm__("ld %1(%0),%%f23" : : "p" (l), "i" OFFSETOF(av_alist,args[11])); - if (l->farg_mask & (1<<12)) - __asm__("ld %1(%0),%%f25" : : "p" (l), "i" OFFSETOF(av_alist,args[12])); - if (l->farg_mask & (1<<13)) - __asm__("ld %1(%0),%%f27" : : "p" (l), "i" OFFSETOF(av_alist,args[13])); - if (l->farg_mask & (1<<14)) - __asm__("ld %1(%0),%%f29" : : "p" (l), "i" OFFSETOF(av_alist,args[14])); - if (l->farg_mask & (1<<15)) - __asm__("ld %1(%0),%%f31" : : "p" (l), "i" OFFSETOF(av_alist,args[15])); - } - if (l->darg_mask) { - /* push leading double args */ - if (l->darg_mask & (1<<0)) - __asm__("ldd %1(%0),%%f0" : : "p" (l), "i" OFFSETOF(av_alist,args[0])); - if (l->darg_mask & (1<<1)) - __asm__("ldd %1(%0),%%f2" : : "p" (l), "i" OFFSETOF(av_alist,args[1])); - if (l->darg_mask & (1<<2)) - __asm__("ldd %1(%0),%%f4" : : "p" (l), "i" OFFSETOF(av_alist,args[2])); - if (l->darg_mask & (1<<3)) - __asm__("ldd %1(%0),%%f6" : : "p" (l), "i" OFFSETOF(av_alist,args[3])); - if (l->darg_mask & (1<<4)) - __asm__("ldd %1(%0),%%f8" : : "p" (l), "i" OFFSETOF(av_alist,args[4])); - if (l->darg_mask & (1<<5)) - __asm__("ldd %1(%0),%%f10" : : "p" (l), "i" OFFSETOF(av_alist,args[5])); - if (l->darg_mask & (1<<6)) - __asm__("ldd %1(%0),%%f12" : : "p" (l), "i" OFFSETOF(av_alist,args[6])); - if (l->darg_mask & (1<<7)) - __asm__("ldd %1(%0),%%f14" : : "p" (l), "i" OFFSETOF(av_alist,args[7])); - if (l->darg_mask & (1<<8)) - __asm__("ldd %1(%0),%%f16" : : "p" (l), "i" OFFSETOF(av_alist,args[8])); - if (l->darg_mask & (1<<9)) - __asm__("ldd %1(%0),%%f18" : : "p" (l), "i" OFFSETOF(av_alist,args[9])); - if (l->darg_mask & (1<<10)) - __asm__("ldd %1(%0),%%f20" : : "p" (l), "i" OFFSETOF(av_alist,args[10])); - if (l->darg_mask & (1<<11)) - __asm__("ldd %1(%0),%%f22" : : "p" (l), "i" OFFSETOF(av_alist,args[11])); - if (l->darg_mask & (1<<12)) - __asm__("ldd %1(%0),%%f24" : : "p" (l), "i" OFFSETOF(av_alist,args[12])); - if (l->darg_mask & (1<<13)) - __asm__("ldd %1(%0),%%f26" : : "p" (l), "i" OFFSETOF(av_alist,args[13])); - if (l->darg_mask & (1<<14)) - __asm__("ldd %1(%0),%%f28" : : "p" (l), "i" OFFSETOF(av_alist,args[14])); - if (l->darg_mask & (1<<15)) - __asm__("ldd %1(%0),%%f30" : : "p" (l), "i" OFFSETOF(av_alist,args[15])); - } - - { - int i; - for (i = 6; i < arglen; i++) /* push excess function args */ - argframe[i] = l->args[i]; - } - - /* call function with 1st 6 args */ - i = ({ __avword iret; /* %o0 */ - iret = (*l->func)(l->args[0], l->args[1], l->args[2], - l->args[3], l->args[4], l->args[5]); - asm ("nop"); /* struct returning functions skip this instruction */ - iret; - }); - - /* save return value */ - if (l->rtype == __AVvoid) { - } else - if (l->rtype == __AVword) { - RETURN(__avword, i); - } else - if (l->rtype == __AVchar) { - RETURN(char, i); - } else - if (l->rtype == __AVschar) { - RETURN(signed char, i); - } else - if (l->rtype == __AVuchar) { - RETURN(unsigned char, i); - } else - if (l->rtype == __AVshort) { - RETURN(short, i); - } else - if (l->rtype == __AVushort) { - RETURN(unsigned short, i); - } else - if (l->rtype == __AVint) { - RETURN(int, i); - } else - if (l->rtype == __AVuint) { - RETURN(unsigned int, i); - } else - if (l->rtype == __AVlong) { - RETURN(long, i); - } else - if (l->rtype == __AVulong) { - RETURN(unsigned long, i); - } else - if (l->rtype == __AVlonglong) { - RETURN(long long, i); - } else - if (l->rtype == __AVulonglong) { - RETURN(unsigned long long, i); - } else - if (l->rtype == __AVfloat) { - RETURN(float, fret); - } else - if (l->rtype == __AVdouble) { - RETURN(double, dret); - } else - if (l->rtype == __AVvoidp) { - RETURN(void*, i); - } else - if (l->rtype == __AVstruct) { - if (l->flags & __AV_PCC_STRUCT_RETURN) { - /* pcc struct return convention: need a *(TYPE*)l->raddr = *(TYPE*)i; */ - if (l->rsize == sizeof(char)) { - RETURN(char, *(char*)i); - } else - if (l->rsize == sizeof(short)) { - RETURN(short, *(short*)i); - } else - if (l->rsize == sizeof(int)) { - RETURN(int, *(int*)i); - } else - if (l->rsize == sizeof(long)) { - RETURN(long, *(long*)i); - } else { - int n = (l->rsize + sizeof(__avword)-1)/sizeof(__avword); - while (--n >= 0) - ((__avword*)l->raddr)[n] = ((__avword*)i)[n]; - } - } else { - /* normal struct return convention */ - if (l->flags & __AV_REGISTER_STRUCT_RETURN) { - /* Return structs of size <= 32 in registers. */ - if (l->rsize > 0 && l->rsize <= 32) { - if (l->rsize == 1) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i>>56); - } else - if (l->rsize == 2) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i>>56); - ((unsigned char *)l->raddr)[1] = (unsigned char)(i>>48); - } else - if (l->rsize == 3) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i>>56); - ((unsigned char *)l->raddr)[1] = (unsigned char)(i>>48); - ((unsigned char *)l->raddr)[2] = (unsigned char)(i>>40); - } else - if (l->rsize == 4) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i>>56); - ((unsigned char *)l->raddr)[1] = (unsigned char)(i>>48); - ((unsigned char *)l->raddr)[2] = (unsigned char)(i>>40); - ((unsigned char *)l->raddr)[3] = (unsigned char)(i>>32); - } else - if (l->rsize == 5) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i>>56); - ((unsigned char *)l->raddr)[1] = (unsigned char)(i>>48); - ((unsigned char *)l->raddr)[2] = (unsigned char)(i>>40); - ((unsigned char *)l->raddr)[3] = (unsigned char)(i>>32); - ((unsigned char *)l->raddr)[4] = (unsigned char)(i>>24); - } else - if (l->rsize == 6) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i>>56); - ((unsigned char *)l->raddr)[1] = (unsigned char)(i>>48); - ((unsigned char *)l->raddr)[2] = (unsigned char)(i>>40); - ((unsigned char *)l->raddr)[3] = (unsigned char)(i>>32); - ((unsigned char *)l->raddr)[4] = (unsigned char)(i>>24); - ((unsigned char *)l->raddr)[5] = (unsigned char)(i>>16); - } else - if (l->rsize == 7) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i>>56); - ((unsigned char *)l->raddr)[1] = (unsigned char)(i>>48); - ((unsigned char *)l->raddr)[2] = (unsigned char)(i>>40); - ((unsigned char *)l->raddr)[3] = (unsigned char)(i>>32); - ((unsigned char *)l->raddr)[4] = (unsigned char)(i>>24); - ((unsigned char *)l->raddr)[5] = (unsigned char)(i>>16); - ((unsigned char *)l->raddr)[6] = (unsigned char)(i>>8); - } else - if (l->rsize >= 8 && l->rsize <= 32) { - ((unsigned char *)l->raddr)[0] = (unsigned char)(i>>56); - ((unsigned char *)l->raddr)[1] = (unsigned char)(i>>48); - ((unsigned char *)l->raddr)[2] = (unsigned char)(i>>40); - ((unsigned char *)l->raddr)[3] = (unsigned char)(i>>32); - ((unsigned char *)l->raddr)[4] = (unsigned char)(i>>24); - ((unsigned char *)l->raddr)[5] = (unsigned char)(i>>16); - ((unsigned char *)l->raddr)[6] = (unsigned char)(i>>8); - ((unsigned char *)l->raddr)[7] = (unsigned char)(i); - if (l->rsize == 8) { - } else - if (l->rsize == 9) { - ((unsigned char *)l->raddr)[8+0] = (unsigned char)(o1>>56); - } else - if (l->rsize == 10) { - ((unsigned char *)l->raddr)[8+0] = (unsigned char)(o1>>56); - ((unsigned char *)l->raddr)[8+1] = (unsigned char)(o1>>48); - } else - if (l->rsize == 11) { - ((unsigned char *)l->raddr)[8+0] = (unsigned char)(o1>>56); - ((unsigned char *)l->raddr)[8+1] = (unsigned char)(o1>>48); - ((unsigned char *)l->raddr)[8+2] = (unsigned char)(o1>>40); - } else - if (l->rsize == 12) { - ((unsigned char *)l->raddr)[8+0] = (unsigned char)(o1>>56); - ((unsigned char *)l->raddr)[8+1] = (unsigned char)(o1>>48); - ((unsigned char *)l->raddr)[8+2] = (unsigned char)(o1>>40); - ((unsigned char *)l->raddr)[8+3] = (unsigned char)(o1>>32); - } else - if (l->rsize == 13) { - ((unsigned char *)l->raddr)[8+0] = (unsigned char)(o1>>56); - ((unsigned char *)l->raddr)[8+1] = (unsigned char)(o1>>48); - ((unsigned char *)l->raddr)[8+2] = (unsigned char)(o1>>40); - ((unsigned char *)l->raddr)[8+3] = (unsigned char)(o1>>32); - ((unsigned char *)l->raddr)[8+4] = (unsigned char)(o1>>24); - } else - if (l->rsize == 14) { - ((unsigned char *)l->raddr)[8+0] = (unsigned char)(o1>>56); - ((unsigned char *)l->raddr)[8+1] = (unsigned char)(o1>>48); - ((unsigned char *)l->raddr)[8+2] = (unsigned char)(o1>>40); - ((unsigned char *)l->raddr)[8+3] = (unsigned char)(o1>>32); - ((unsigned char *)l->raddr)[8+4] = (unsigned char)(o1>>24); - ((unsigned char *)l->raddr)[8+5] = (unsigned char)(o1>>16); - } else - if (l->rsize == 15) { - ((unsigned char *)l->raddr)[8+0] = (unsigned char)(o1>>56); - ((unsigned char *)l->raddr)[8+1] = (unsigned char)(o1>>48); - ((unsigned char *)l->raddr)[8+2] = (unsigned char)(o1>>40); - ((unsigned char *)l->raddr)[8+3] = (unsigned char)(o1>>32); - ((unsigned char *)l->raddr)[8+4] = (unsigned char)(o1>>24); - ((unsigned char *)l->raddr)[8+5] = (unsigned char)(o1>>16); - ((unsigned char *)l->raddr)[8+6] = (unsigned char)(o1>>8); - } else - if (l->rsize >= 16 && l->rsize <= 32) { - ((unsigned char *)l->raddr)[8+0] = (unsigned char)(o1>>56); - ((unsigned char *)l->raddr)[8+1] = (unsigned char)(o1>>48); - ((unsigned char *)l->raddr)[8+2] = (unsigned char)(o1>>40); - ((unsigned char *)l->raddr)[8+3] = (unsigned char)(o1>>32); - ((unsigned char *)l->raddr)[8+4] = (unsigned char)(o1>>24); - ((unsigned char *)l->raddr)[8+5] = (unsigned char)(o1>>16); - ((unsigned char *)l->raddr)[8+6] = (unsigned char)(o1>>8); - ((unsigned char *)l->raddr)[8+7] = (unsigned char)(o1); - if (l->rsize == 16) { - } else - if (l->rsize == 17) { - ((unsigned char *)l->raddr)[16+0] = (unsigned char)(o2>>56); - } else - if (l->rsize == 18) { - ((unsigned char *)l->raddr)[16+0] = (unsigned char)(o2>>56); - ((unsigned char *)l->raddr)[16+1] = (unsigned char)(o2>>48); - } else - if (l->rsize == 19) { - ((unsigned char *)l->raddr)[16+0] = (unsigned char)(o2>>56); - ((unsigned char *)l->raddr)[16+1] = (unsigned char)(o2>>48); - ((unsigned char *)l->raddr)[16+2] = (unsigned char)(o2>>40); - } else - if (l->rsize == 20) { - ((unsigned char *)l->raddr)[16+0] = (unsigned char)(o2>>56); - ((unsigned char *)l->raddr)[16+1] = (unsigned char)(o2>>48); - ((unsigned char *)l->raddr)[16+2] = (unsigned char)(o2>>40); - ((unsigned char *)l->raddr)[16+3] = (unsigned char)(o2>>32); - } else - if (l->rsize == 21) { - ((unsigned char *)l->raddr)[16+0] = (unsigned char)(o2>>56); - ((unsigned char *)l->raddr)[16+1] = (unsigned char)(o2>>48); - ((unsigned char *)l->raddr)[16+2] = (unsigned char)(o2>>40); - ((unsigned char *)l->raddr)[16+3] = (unsigned char)(o2>>32); - ((unsigned char *)l->raddr)[16+4] = (unsigned char)(o2>>24); - } else - if (l->rsize == 22) { - ((unsigned char *)l->raddr)[16+0] = (unsigned char)(o2>>56); - ((unsigned char *)l->raddr)[16+1] = (unsigned char)(o2>>48); - ((unsigned char *)l->raddr)[16+2] = (unsigned char)(o2>>40); - ((unsigned char *)l->raddr)[16+3] = (unsigned char)(o2>>32); - ((unsigned char *)l->raddr)[16+4] = (unsigned char)(o2>>24); - ((unsigned char *)l->raddr)[16+5] = (unsigned char)(o2>>16); - } else - if (l->rsize == 23) { - ((unsigned char *)l->raddr)[16+0] = (unsigned char)(o2>>56); - ((unsigned char *)l->raddr)[16+1] = (unsigned char)(o2>>48); - ((unsigned char *)l->raddr)[16+2] = (unsigned char)(o2>>40); - ((unsigned char *)l->raddr)[16+3] = (unsigned char)(o2>>32); - ((unsigned char *)l->raddr)[16+4] = (unsigned char)(o2>>24); - ((unsigned char *)l->raddr)[16+5] = (unsigned char)(o2>>16); - ((unsigned char *)l->raddr)[16+6] = (unsigned char)(o2>>8); - } else - if (l->rsize >= 24 && l->rsize <= 32) { - ((unsigned char *)l->raddr)[16+0] = (unsigned char)(o2>>56); - ((unsigned char *)l->raddr)[16+1] = (unsigned char)(o2>>48); - ((unsigned char *)l->raddr)[16+2] = (unsigned char)(o2>>40); - ((unsigned char *)l->raddr)[16+3] = (unsigned char)(o2>>32); - ((unsigned char *)l->raddr)[16+4] = (unsigned char)(o2>>24); - ((unsigned char *)l->raddr)[16+5] = (unsigned char)(o2>>16); - ((unsigned char *)l->raddr)[16+6] = (unsigned char)(o2>>8); - ((unsigned char *)l->raddr)[16+7] = (unsigned char)(o2); - if (l->rsize == 24) { - } else - if (l->rsize == 25) { - ((unsigned char *)l->raddr)[24+0] = (unsigned char)(o3>>56); - } else - if (l->rsize == 26) { - ((unsigned char *)l->raddr)[24+0] = (unsigned char)(o3>>56); - ((unsigned char *)l->raddr)[24+1] = (unsigned char)(o3>>48); - } else - if (l->rsize == 27) { - ((unsigned char *)l->raddr)[24+0] = (unsigned char)(o3>>56); - ((unsigned char *)l->raddr)[24+1] = (unsigned char)(o3>>48); - ((unsigned char *)l->raddr)[24+2] = (unsigned char)(o3>>40); - } else - if (l->rsize == 28) { - ((unsigned char *)l->raddr)[24+0] = (unsigned char)(o3>>56); - ((unsigned char *)l->raddr)[24+1] = (unsigned char)(o3>>48); - ((unsigned char *)l->raddr)[24+2] = (unsigned char)(o3>>40); - ((unsigned char *)l->raddr)[24+3] = (unsigned char)(o3>>32); - } else - if (l->rsize == 29) { - ((unsigned char *)l->raddr)[24+0] = (unsigned char)(o3>>56); - ((unsigned char *)l->raddr)[24+1] = (unsigned char)(o3>>48); - ((unsigned char *)l->raddr)[24+2] = (unsigned char)(o3>>40); - ((unsigned char *)l->raddr)[24+3] = (unsigned char)(o3>>32); - ((unsigned char *)l->raddr)[24+4] = (unsigned char)(o3>>24); - } else - if (l->rsize == 30) { - ((unsigned char *)l->raddr)[24+0] = (unsigned char)(o3>>56); - ((unsigned char *)l->raddr)[24+1] = (unsigned char)(o3>>48); - ((unsigned char *)l->raddr)[24+2] = (unsigned char)(o3>>40); - ((unsigned char *)l->raddr)[24+3] = (unsigned char)(o3>>32); - ((unsigned char *)l->raddr)[24+4] = (unsigned char)(o3>>24); - ((unsigned char *)l->raddr)[24+5] = (unsigned char)(o3>>16); - } else - if (l->rsize == 31) { - ((unsigned char *)l->raddr)[24+0] = (unsigned char)(o3>>56); - ((unsigned char *)l->raddr)[24+1] = (unsigned char)(o3>>48); - ((unsigned char *)l->raddr)[24+2] = (unsigned char)(o3>>40); - ((unsigned char *)l->raddr)[24+3] = (unsigned char)(o3>>32); - ((unsigned char *)l->raddr)[24+4] = (unsigned char)(o3>>24); - ((unsigned char *)l->raddr)[24+5] = (unsigned char)(o3>>16); - ((unsigned char *)l->raddr)[24+6] = (unsigned char)(o3>>8); - } else - if (l->rsize == 32) { - ((unsigned char *)l->raddr)[24+0] = (unsigned char)(o3>>56); - ((unsigned char *)l->raddr)[24+1] = (unsigned char)(o3>>48); - ((unsigned char *)l->raddr)[24+2] = (unsigned char)(o3>>40); - ((unsigned char *)l->raddr)[24+3] = (unsigned char)(o3>>32); - ((unsigned char *)l->raddr)[24+4] = (unsigned char)(o3>>24); - ((unsigned char *)l->raddr)[24+5] = (unsigned char)(o3>>16); - ((unsigned char *)l->raddr)[24+6] = (unsigned char)(o3>>8); - ((unsigned char *)l->raddr)[24+7] = (unsigned char)(o3); - } - } - } - } - } - } - } - } - return 0; -} - -#endif /*_avcall_sparc64_c */ DELETED ffcall/avcall/avcall-x86_64.c Index: ffcall/avcall/avcall-x86_64.c ================================================================== --- ffcall/avcall/avcall-x86_64.c +++ /dev/null @@ -1,208 +0,0 @@ -#ifndef _avcall_x86_64_c /*-*- C -*-*/ -#define _avcall_x86_64_c -/** - Copyright 1993 Bill Triggs, - Copyright 1995-1999, 2004 Bruno Haible, - - This is free software distributed under the GNU General Public - Licence described in the file COPYING. Contact the author if - you don't have this or can't live with it. There is ABSOLUTELY - NO WARRANTY, explicit or implied, on this software. -**/ -/*---------------------------------------------------------------------- - !!! THIS ROUTINE MUST BE COMPILED gcc -O -fno-omit-frame-pointer !!! - - Foreign function interface for a Linux x86_64 (a.k.a. amd64) with gcc. - - This calls a C function with an argument list built up using macros - defined in av_call.h. - - x86_64 Argument Passing Conventions are documented in - http://www.x86-64.org/abi.pdf. - - Up to six words are passed in integer registers (%rdi, %rsi, %rdx, %rcx, - %r8, %r9). Up to 8 float/double arguments are passed in SSE registers - (%xmm0..%xmm7). Varargs functions expect an upper bound for the number - of SSE register arguments in %al (in the range 0..8). All arguments - are passed on the stack with word alignment. Structure args are passed - as true structures embedded in the argument stack. - - Integers are returned in %rax, %rdx. Float/double values are returned - in %xmm0, %xmm1. To return a structure, the called function copies the - value to space pointed to by its first argument, and all other arguments - are shifted down by one. - ----------------------------------------------------------------------*/ -#include "avcall.h.in" - -#define RETURN(TYPE,VAL) (*(TYPE*)l->raddr = (TYPE)(VAL)) - -register __avword iarg1 __asm__("rdi"); -register __avword iarg2 __asm__("rsi"); -register __avword iarg3 __asm__("rdx"); -register __avword iarg4 __asm__("rcx"); -register __avword iarg5 __asm__("r8"); -register __avword iarg6 __asm__("r9"); - -register double farg1 __asm__("xmm0"); -register double farg2 __asm__("xmm1"); -register double farg3 __asm__("xmm2"); -register double farg4 __asm__("xmm3"); -register double farg5 __asm__("xmm4"); -register double farg6 __asm__("xmm5"); -register double farg7 __asm__("xmm6"); -register double farg8 __asm__("xmm7"); - -int -__builtin_avcall(av_alist* l) -{ - register __avword* sp __asm__("rsp"); /* C names for registers */ - register __avword iret __asm__("rax"); - register __avword iret2 __asm__("rdx"); - register double dret __asm__("xmm0"); - - __avword* argframe = (sp -= __AV_ALIST_WORDS); /* make room for argument list */ - int arglen = l->aptr - l->args; - int farglen = l->faptr - l->fargs; - __avword i, i2; - - for (i = 0; i < arglen; i++) /* push function args onto stack */ - argframe[i] = l->args[i]; - - /* put 6 integer args into registers */ - iarg1 = l->iargs[0]; - iarg2 = l->iargs[1]; - iarg3 = l->iargs[2]; - iarg4 = l->iargs[3]; - iarg5 = l->iargs[4]; - iarg6 = l->iargs[5]; - - /* Call function. It's OK to pass 8 values in SSE registers even if the - called function takes less than 8 float/double arguments. Similarly - for the integer arguments. */ - if (l->rtype == __AVfloat) { - *(float*)l->raddr = - (*(float(*)())l->func)(farglen > 0 ? l->fargs[0] : 0.0, - farglen > 1 ? l->fargs[1] : 0.0, - farglen > 2 ? l->fargs[2] : 0.0, - farglen > 3 ? l->fargs[3] : 0.0, - farglen > 4 ? l->fargs[4] : 0.0, - farglen > 5 ? l->fargs[5] : 0.0, - farglen > 6 ? l->fargs[6] : 0.0, - farglen > 7 ? l->fargs[7] : 0.0); - } else - if (l->rtype == __AVdouble) { - *(double*)l->raddr = - (*(double(*)())l->func)(farglen > 0 ? l->fargs[0] : 0.0, - farglen > 1 ? l->fargs[1] : 0.0, - farglen > 2 ? l->fargs[2] : 0.0, - farglen > 3 ? l->fargs[3] : 0.0, - farglen > 4 ? l->fargs[4] : 0.0, - farglen > 5 ? l->fargs[5] : 0.0, - farglen > 6 ? l->fargs[6] : 0.0, - farglen > 7 ? l->fargs[7] : 0.0); - } else { - i = (*l->func)(farglen > 0 ? l->fargs[0] : 0.0, - farglen > 1 ? l->fargs[1] : 0.0, - farglen > 2 ? l->fargs[2] : 0.0, - farglen > 3 ? l->fargs[3] : 0.0, - farglen > 4 ? l->fargs[4] : 0.0, - farglen > 5 ? l->fargs[5] : 0.0, - farglen > 6 ? l->fargs[6] : 0.0, - farglen > 7 ? l->fargs[7] : 0.0); - i2 = iret2; - - /* save return value */ - if (l->rtype == __AVvoid) { - } else - if (l->rtype == __AVword) { - RETURN(__avword, i); - } else - if (l->rtype == __AVchar) { - RETURN(char, i); - } else - if (l->rtype == __AVschar) { - RETURN(signed char, i); - } else - if (l->rtype == __AVuchar) { - RETURN(unsigned char, i); - } else - if (l->rtype == __AVshort) { - RETURN(short, i); - } else - if (l->rtype == __AVushort) { - RETURN(unsigned short, i); - } else - if (l->rtype == __AVint) { - RETURN(int, i); - } else - if (l->rtype == __AVuint) { - RETURN(unsigned int, i); - } else - if (l->rtype == __AVlong) { - RETURN(long, i); - } else - if (l->rtype == __AVulong) { - RETURN(unsigned long, i); - } else - if (l->rtype == __AVlonglong) { - RETURN(long long, i); - } else - if (l->rtype == __AVulonglong) { - RETURN(unsigned long long, i); - } else - /* see above - if (l->rtype == __AVfloat) { - } else - if (l->rtype == __AVdouble) { - } else - */ - if (l->rtype == __AVvoidp) { - RETURN(void*, i); - } else - if (l->rtype == __AVstruct) { - if (l->flags & __AV_PCC_STRUCT_RETURN) { - /* pcc struct return convention: need a *(TYPE*)l->raddr = *(TYPE*)i; */ - if (l->rsize == sizeof(char)) { - RETURN(char, *(char*)i); - } else - if (l->rsize == sizeof(short)) { - RETURN(short, *(short*)i); - } else - if (l->rsize == sizeof(int)) { - RETURN(int, *(int*)i); - } else - if (l->rsize == sizeof(long)) { - RETURN(long, *(long*)i); - } else { - int n = (l->rsize + sizeof(__avword)-1)/sizeof(__avword); - while (--n >= 0) - ((__avword*)l->raddr)[n] = ((__avword*)i)[n]; - } - } else { - /* normal struct return convention */ - if (l->flags & __AV_REGISTER_STRUCT_RETURN) { - if (l->rsize == sizeof(char)) { - RETURN(char, i); - } else - if (l->rsize == sizeof(short)) { - RETURN(short, i); - } else - if (l->rsize == sizeof(int)) { - RETURN(int, i); - } else - if (l->rsize == sizeof(long)) { - RETURN(long, i); - } else - if (l->rsize == 2*sizeof(__avword)) { - ((__avword*)l->raddr)[0] = i; - ((__avword*)l->raddr)[1] = i2; - } - } - } - } - } - sp += __AV_ALIST_WORDS; - return 0; -} - -#endif /*_avcall_x86_64_c */ DELETED ffcall/avcall/avcall-x86_64.s Index: ffcall/avcall/avcall-x86_64.s ================================================================== --- ffcall/avcall/avcall-x86_64.s +++ /dev/null @@ -1,375 +0,0 @@ - .file "avcall-x86_64.c" - .text - .p2align 4,,15 -.globl __builtin_avcall - .type __builtin_avcall,@function -__builtin_avcall: -.LFB1: - pushq %r12 -.LCFI0: - xorl %r11d, %r11d - pushq %rbp -.LCFI1: - pushq %rbx -.LCFI2: - movq 104(%rdi), %rax - movq 40(%rdi), %r10 - subq $2048, %rsp - movq %rdi, %rbx - movq %rsp, %rbp - subq %rdi, %r10 - subq %rdi, %rax - subq $176, %r10 - subq $112, %rax - shrq $3, %r10 - movq %rax, %r12 - movslq %r10d,%r10 - shrq $3, %r12 - cmpq %r10, %r11 - jge .L113 - .p2align 4,,7 -.L6: - movq 176(%rbx,%r11,8), %rax - movq %rax, (%rbp,%r11,8) - incq %r11 - cmpq %r10, %r11 - jl .L6 -.L113: - movl 24(%rbx), %eax - movq 56(%rbx), %rdi - movq 64(%rbx), %rsi - movq 72(%rbx), %rdx - movq 80(%rbx), %rcx - movq 88(%rbx), %r8 - cmpl $13, %eax - movq 96(%rbx), %r9 - je .L119 - cmpl $14, %eax - je .L120 - cmpl $7, %r12d - xorpd %xmm15, %xmm15 - jle .L44 - movlpd 168(%rbx), %xmm15 -.L44: - cmpl $6, %r12d - xorpd %xmm14, %xmm14 - jle .L46 - movlpd 160(%rbx), %xmm14 -.L46: - cmpl $5, %r12d - xorpd %xmm13, %xmm13 - jle .L48 - movlpd 152(%rbx), %xmm13 -.L48: - cmpl $4, %r12d - xorpd %xmm12, %xmm12 - jle .L50 - movlpd 144(%rbx), %xmm12 -.L50: - cmpl $3, %r12d - xorpd %xmm11, %xmm11 - jle .L52 - movlpd 136(%rbx), %xmm11 -.L52: - cmpl $2, %r12d - xorpd %xmm10, %xmm10 - jle .L54 - movlpd 128(%rbx), %xmm10 -.L54: - cmpl $1, %r12d - xorpd %xmm9, %xmm9 - jle .L56 - movlpd 120(%rbx), %xmm9 -.L56: - testl %r12d, %r12d - xorpd %xmm8, %xmm8 - jle .L58 - movlpd 112(%rbx), %xmm8 -.L58: - movsd %xmm15, %xmm7 - movsd %xmm14, %xmm6 - movsd %xmm13, %xmm5 - movsd %xmm12, %xmm4 - movsd %xmm11, %xmm3 - movsd %xmm10, %xmm2 - movsd %xmm9, %xmm1 - movsd %xmm8, %xmm0 - movl $8, %eax - call *(%rbx) - movq %rax, %r11 - movl 24(%rbx), %eax - cmpl $1, %eax - je .L24 - testl %eax, %eax - je .L115 - cmpl $2, %eax - je .L118 - cmpl $3, %eax - je .L118 - cmpl $4, %eax - je .L118 - cmpl $5, %eax - je .L117 - cmpl $6, %eax - je .L117 - cmpl $7, %eax - je .L116 - cmpl $8, %eax - je .L116 - cmpl $9, %eax - je .L115 - cmpl $10, %eax - je .L115 - cmpl $11, %eax - je .L115 - cmpl $12, %eax - je .L115 - cmpl $15, %eax - je .L115 - cmpl $16, %eax - je .L121 - .p2align 4,,7 -.L24: - addq $2048, %rsp - xorl %eax, %eax - popq %rbx - popq %rbp - popq %r12 - ret -.L121: - movl 8(%rbx), %eax - testl $1, %eax - je .L88 - movq 32(%rbx), %rax - cmpq $1, %rax - je .L122 - cmpq $2, %rax - je .L123 - cmpq $4, %rax - je .L124 - cmpq $8, %rax - je .L125 - addq $7, %rax - movq %rax, %rbp - shrq $3, %rbp - decl %ebp - js .L24 - movq 16(%rbx), %rbx -.L100: - movslq %ebp,%r10 - decl %ebp - movq (%r11,%r10,8), %rax - movq %rax, (%rbx,%r10,8) - jns .L100 - jmp .L24 -.L125: - movq 16(%rbx), %r10 - movq (%r11), %rax - movq %rax, (%r10) - jmp .L24 -.L124: - movq 16(%rbx), %r10 - movl (%r11), %eax - movl %eax, (%r10) - jmp .L24 -.L123: - movzwl (%r11), %eax - movq 16(%rbx), %r10 - movw %ax, (%r10) - jmp .L24 -.L122: - movzbl (%r11), %eax - movq 16(%rbx), %r10 - movb %al, (%r10) - jmp .L24 - .p2align 4,,7 -.L88: - testl $512, %eax - je .L24 - movq 32(%rbx), %rax - cmpq $1, %rax - je .L118 - cmpq $2, %rax - je .L117 - cmpq $4, %rax - je .L116 - cmpq $8, %rax - je .L115 - cmpq $16, %rax - jne .L24 - movq 16(%rbx), %rax - movq %r11, (%rax) - movq %rdx, 8(%rax) - jmp .L24 - .p2align 4,,7 -.L115: - movq 16(%rbx), %rax - movq %r11, (%rax) - jmp .L24 -.L116: - movq 16(%rbx), %rax - movl %r11d, (%rax) - jmp .L24 -.L117: - movq 16(%rbx), %rax - movw %r11w, (%rax) - jmp .L24 -.L118: - movq 16(%rbx), %rax - movb %r11b, (%rax) - jmp .L24 -.L120: - cmpl $7, %r12d - xorpd %xmm15, %xmm15 - jle .L27 - movlpd 168(%rbx), %xmm15 -.L27: - cmpl $6, %r12d - xorpd %xmm14, %xmm14 - jle .L29 - movlpd 160(%rbx), %xmm14 -.L29: - cmpl $5, %r12d - xorpd %xmm13, %xmm13 - jle .L31 - movlpd 152(%rbx), %xmm13 -.L31: - cmpl $4, %r12d - xorpd %xmm12, %xmm12 - jle .L33 - movlpd 144(%rbx), %xmm12 -.L33: - cmpl $3, %r12d - xorpd %xmm11, %xmm11 - jle .L35 - movlpd 136(%rbx), %xmm11 -.L35: - cmpl $2, %r12d - xorpd %xmm10, %xmm10 - jle .L37 - movlpd 128(%rbx), %xmm10 -.L37: - cmpl $1, %r12d - xorpd %xmm9, %xmm9 - jle .L39 - movlpd 120(%rbx), %xmm9 -.L39: - testl %r12d, %r12d - xorpd %xmm8, %xmm8 - jle .L41 - movlpd 112(%rbx), %xmm8 -.L41: - movl $8, %eax - movsd %xmm15, %xmm7 - movsd %xmm14, %xmm6 - movsd %xmm13, %xmm5 - movsd %xmm12, %xmm4 - movsd %xmm11, %xmm3 - movsd %xmm10, %xmm2 - movsd %xmm9, %xmm1 - movsd %xmm8, %xmm0 - call *(%rbx) - movq 16(%rbx), %rax - movsd %xmm0, (%rax) - jmp .L24 -.L119: - cmpl $7, %r12d - xorpd %xmm15, %xmm15 - jle .L9 - movlpd 168(%rbx), %xmm15 -.L9: - cmpl $6, %r12d - xorpd %xmm14, %xmm14 - jle .L11 - movlpd 160(%rbx), %xmm14 -.L11: - cmpl $5, %r12d - xorpd %xmm13, %xmm13 - jle .L13 - movlpd 152(%rbx), %xmm13 -.L13: - cmpl $4, %r12d - xorpd %xmm12, %xmm12 - jle .L15 - movlpd 144(%rbx), %xmm12 -.L15: - cmpl $3, %r12d - xorpd %xmm11, %xmm11 - jle .L17 - movlpd 136(%rbx), %xmm11 -.L17: - cmpl $2, %r12d - xorpd %xmm10, %xmm10 - jle .L19 - movlpd 128(%rbx), %xmm10 -.L19: - cmpl $1, %r12d - xorpd %xmm9, %xmm9 - jle .L21 - movlpd 120(%rbx), %xmm9 -.L21: - testl %r12d, %r12d - xorpd %xmm8, %xmm8 - jle .L23 - movlpd 112(%rbx), %xmm8 -.L23: - movl $8, %eax - movsd %xmm15, %xmm7 - movsd %xmm14, %xmm6 - movsd %xmm13, %xmm5 - movsd %xmm12, %xmm4 - movsd %xmm11, %xmm3 - movsd %xmm10, %xmm2 - movsd %xmm9, %xmm1 - movsd %xmm8, %xmm0 - call *(%rbx) - movq 16(%rbx), %rax - movss %xmm0, (%rax) - jmp .L24 -.LFE1: -.Lfe1: - .size __builtin_avcall,.Lfe1-__builtin_avcall - .section .eh_frame,"aw",@progbits -.Lframe1: - .long .LECIE1-.LSCIE1 -.LSCIE1: - .long 0x0 - .byte 0x1 - .string "" - .uleb128 0x1 - .sleb128 -8 - .byte 0x10 - .byte 0xc - .uleb128 0x7 - .uleb128 0x8 - .byte 0x90 - .uleb128 0x1 - .align 8 -.LECIE1: -.LSFDE1: - .long .LEFDE1-.LASFDE1 -.LASFDE1: - .long .LASFDE1-.Lframe1 - .quad .LFB1 - .quad .LFE1-.LFB1 - .byte 0x4 - .long .LCFI0-.LFB1 - .byte 0xe - .uleb128 0x10 - .byte 0x4 - .long .LCFI1-.LCFI0 - .byte 0xe - .uleb128 0x18 - .byte 0x4 - .long .LCFI2-.LCFI1 - .byte 0xe - .uleb128 0x20 - .byte 0x83 - .uleb128 0x4 - .byte 0x86 - .uleb128 0x3 - .byte 0x8c - .uleb128 0x2 - .align 8 -.LEFDE1: - .ident "GCC: (GNU) 3.2.2 (SuSE Linux)" DELETED ffcall/avcall/avcall.3 Index: ffcall/avcall/avcall.3 ================================================================== --- ffcall/avcall/avcall.3 +++ /dev/null @@ -1,271 +0,0 @@ -.TH AVCALL 3 "14 January 2001" -.SH NAME -avcall \- build a C argument list incrementally and call a C function on it. -.SH SYNOPSIS -.B #include -.LP -.BI "av_alist " alist ";" -.LP -.BI av_start_ type "(" alist ", " "&func" -.RI "[["\c -.BI ", "\c -.I return_type\c -.RB "]" ", "\c -.I "&return_value"\c -.RB "]" ");" -.LP -.BI av_ type "(" alist ", "\c -.RI "["\c -.IB arg_type ","\c -.RI "] "\c -.IB value ");" -.LP -.BI "av_call(" alist ");" -.IX "av_alist" "" "\fLav_alist\fP \(em avcall argument list declaration" -.IX "av_start_type()" "" "\fLav_start_type()\fP \(em initialize avcall function" -.IX "av_type()" "" "\fLav_type()\fP \(em push next argument in avcall list" -.IX "av_call()" "" "\fLav_call()\fP \(em finish avcall argument list and call function" -.SH DESCRIPTION -.LP -This set of macros builds an argument list for a C function and calls -the function on it. It significantly reduces the amount of `glue' code -required for parsers, debuggers, imbedded interpreters, C extensions to -application programs and other situations where collections of functions -need to be called on lists of externally-supplied arguments. - -Function calling conventions differ considerably on different -machines and -.I avcall -attempts to provide some degree of isolation from such architecture -dependencies. - -The interface is like -.BR stdarg (3) -in reverse. All of the macros return 0 for success, < 0 for failure (e.g., -argument list overflow or type-not-supported). -.RS 0 -.TP -(1) -.B #include -.nf -and declare the argument list structure -.BI "av_alist " alist ; -.fi -.TP -(2) -Set any special flags. This is architecture and compiler dependent. -Compiler options that affect passing conventions may need to be flagged -by -.BR "#define" s -before the -.B "#include " -statement. However, the -.I configure -script should have determined which -.BR "#define" s -are needed and put them -at the top of -.BR avcall.h . -.TP -(3) -Initialize the alist with the function address and return value -pointer (if any). There is a separate macro for each simple return type -([u]char, [u]short, [u]int, [u]long, [u]longlong, float, double, where `u' -indicates `unsigned'). The macros for functions returning structures or -pointers require an explicit type argument. -.LP -E.g., -.LP -.BI "av_start_int (" alist ", " &func ", " &int_return ); -.LP -.BI "av_start_double (" alist ", " &func ", " &double_return ); -.LP -.BI "av_start_void (" alist ", " &func ); -.LP -.nf -.BI "av_start_struct (" alist ", " &func ", " struct_type ", " splittable ", " -.BI " " &struct_return ); -.fi -.LP -.nf -.BI "av_start_ptr (" alist ", " &func ", " pointer_type ", " -.BI " " &pointer_return ); -.fi -.LP -The -.I splittable -flag specifies whether the -.I struct_type -can be returned in registers such that every struct field fits entirely in -a single register. This needs to be specified for structs of size -2*sizeof(long). For structs of size <= sizeof(long), -.I splittable -is ignored and assumed to be 1. For structs of size > 2*sizeof(long), -.I splittable -is ignored and assumed to be 0. There are some handy macros for this: -.nf -.BI "av_word_splittable_1 (" type1 ) -.BI "av_word_splittable_2 (" type1 ", " type2 ) -.BI "av_word_splittable_3 (" type1 ", " type2 ", " type3 ) -.BI "av_word_splittable_4 (" type1 ", " type2 ", " type3 ", " type4 ) -.fi -For a struct with three slots -.nf -.BI "struct { " "type1 id1" "; " "type2 id2" "; " "type3 id3" "; }" -.fi -you can specify -.I splittable -as -.BI "av_word_splittable_3 (" type1 ", " type2 ", " type3 ) -.RB . -.TP -(4) -Push the arguments on to the list in order. Again there is a macro -for each simple built-in type, and the macros for structure and pointer -arguments require an extra type argument: -.LP -.BI "av_int (" alist ", " int_value ); -.LP -.BI "av_double (" alist ", " double_value ); -.LP -.BI "av_struct (" alist ", " struct_or_union_type ", " struct_value ); -.LP -.BI "av_ptr (" alist ", " pointer_type ", " pointer_value ); -.TP -(5) -Call the function, set the return value, and tidy up: -.LP -.BI "av_call (" alist ); -.RE - -.SH NOTES - -(1) Functions whose first declaration is in Kernighan & Ritchie style (i.e., -without a typed argument list) MUST use default K&R C expression promotions -(char and short to int, float to double) whether they are compiled by a K&R -or an ANSI compiler, because the true argument types may not be known at the -call point. Such functions typically back-convert their arguments to the -declared types on function entry. (In fact, the only way to pass a true char, -short or float in K&R C is by an explicit cast: -.B func((char)c,(float)f) -). -Similarly, some K&R compilers (such as Sun cc on the sparc) actually -return a float as a double. - -Hence, for arguments of functions declared in K&R style you should use -.B av_int(\|) -and -.B av_double(\|) -rather than -.B av_char(\|), -.B av_short(\|) -or -.B av_float(\|). -If you use a K&R compiler, the avcall header files may be able to -detect this and define -.B av_float(\|), -etc, appropriately, but with an ANSI compiler there is no way -.I avcall -can know how a function was declared, so you have to correct the -argument types yourself. - -(2) The explicit type arguments of the -.B av_struct(\|) -and -.B av_ptr(\|) -macros are typically used to calculate size, alignment, and passing -conventions. This may not be sufficient for some machines with unusual -structure and pointer handling: in this case additional -.B av_start_\c -.I type\c -.B (\|) -and -.B av_\c -.I type\c -.B (\|) -macros may be defined. - -(3) The macros -.BR av_start_longlong(\|) , -.BR av_start_ulonglong(\|) , -.B av_longlong(\|) -and -.B av_ulonglong(\|) -work only if the C compiler has a working -.B long long -64-bit integer type. - -(4) The struct types used in -.B av_start_struct(\|) -and -.B av_struct(\|) -must only contain (signed or unsigned) int, long, long long or pointer fields. -Struct types containing (signed or unsigned) char, short, float, double or -other structs are not supported. - -.SH SEE ALSO -.BR stdarg (3), -.BR varargs (3). - -.SH BUGS - -The current implementations have been tested on a selection of common -cases but there are probably still many bugs. - -There are typically built-in limits on the size of the argument-list, -which may also include the size of any structure arguments. - -The decision whether a struct is to be returned in registers or in memory -considers only the struct's size and alignment. This is inaccurate: for -example, gcc on m68k-next returns -.B "struct { char a,b,c; }" -in registers and -.B "struct { char a[3]; }" -in memory, although both types have the same size and the same alignment. - -.SH NON-BUGS - -All information is passed in CPU registers and the stack. The -.B avcall -package is therefore multithread-safe. - -.SH PORTING AVCALL - -Ports, bug-fixes, and suggestions are most welcome. The macros required -for argument pushing are pretty grungy, but it does seem to be possible -to port avcall to a range of machines. Ports to non-standard or -non-32-bit machines are especially welcome so we can sort the interface -out before it's too late. - -Knowledge about argument passing conventions can be found in the gcc -source, file -.RI gcc-2.6.3/config/ cpu / cpu .h, -section "Stack layout; function entry, exit and calling." - -Some of the grunge is usually handled by a C or assembly level glue -routine that actually pushes the arguments, calls the function and -unpacks any return value. -This is called __builtin_avcall(\|). A precompiled assembler version for -people without gcc is also made available. The routine should ideally -have flags for the passing conventions of other compilers. - -Many of the current routines waste a lot of stack space and generally do -hairy things to stack frames - a bit more assembly code would probably -help things along quite a bit here. - -.SH AUTHOR - -Bill Triggs . - -.SH ACKNOWLEDGEMENTS - -Some initial ideas were stolen from the C interface to the Zelk -extensions to Oliver Laumann's Elk scheme interpreter by J.P.Lewis, NEC -C&C Research, (for Sun4 & SGI), and Roy -Featherstone's personal C interface library -for Sun[34] & SGI. I also looked at the machine-dependent parts of the -GCC and GDB distributions, and put the gcc asm(\|) extensions to good -use. Thanks guys! - -This work was partly supported by EC-ESPRIT Basic Research Action SECOND. - DELETED ffcall/avcall/avcall.h.in Index: ffcall/avcall/avcall.h.in ================================================================== --- ffcall/avcall/avcall.h.in +++ /dev/null @@ -1,1405 +0,0 @@ -#ifndef _avcall_h /*-*- C -*-*/ -#define _avcall_h -/** - Copyright 1993 Bill Triggs, - - Copyright 1995-2004 Bruno Haible, - - This is free software distributed under the GNU General Public - Licence described in the file COPYING. Contact the author if - you don't have this or can't live with it. There is ABSOLUTELY - NO WARRANTY, explicit or implied, on this software. -**/ -/*---------------------------------------------------------------------- - av_call() foreign function interface. - - Varargs-style macros to build a C argument list incrementally - and call a function on it. - ----------------------------------------------------------------------*/ - - -/* These definitions are adjusted by `configure' automatically. */ - -/* CPU */ -#ifndef __i386__ -#undef __i386__ -#endif -#ifndef __m68k__ -#undef __m68k__ -#endif -#ifndef __mips__ -#undef __mips__ -#endif -#ifndef __mipsn32__ -#undef __mipsn32__ -#endif -#ifndef __mips64__ -#undef __mips64__ -#endif -#ifndef __sparc__ -#undef __sparc__ -#endif -#ifndef __sparc64__ -#undef __sparc64__ -#endif -#ifndef __alpha__ -#undef __alpha__ -#endif -#ifndef __hppa__ -#undef __hppa__ -#endif -#ifndef __arm__ -#undef __arm__ -#endif -#ifndef __rs6000__ -#undef __rs6000__ -#endif -#ifndef __s390__ -#undef __s390__ -#endif -#ifndef __m88k__ -#undef __m88k__ -#endif -#ifndef __convex__ -#undef __convex__ -#endif -#ifndef __ia64__ -#undef __ia64__ -#endif -#ifndef __x86_64__ -#undef __x86_64__ -#endif - -/* Calling convention */ -/* Define if using pcc non-reentrant struct return convention */ -#undef __PCC_STRUCT_RETURN__ -/* Define if small structs are returned in registers */ -#undef __SMALL_STRUCT_RETURN__ -/* Define if floating-point results are returned in the integer registers */ -#undef __IREG_FLOAT_RETURN__ - -/* CL_LONGLONG */ -/* Define if your compiler supports the `long long' type. */ -#undef HAVE_LONGLONG - -/* End of definitions adjusted by `configure'. */ - - -/* Max # words in argument-list and temporary structure storage. - */ -#ifndef __AV_ALIST_WORDS -#define __AV_ALIST_WORDS 256 -#endif - -/* Determine the alignment of a type at compile time. - */ -#if defined(__GNUC__) -#define __AV_alignof __alignof__ -#else -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) /* SGI compiler */ -#define __AV_alignof __builtin_alignof -#else -#define __AV_offsetof(type,ident) ((unsigned long)&(((type*)0)->ident)) -#define __AV_alignof(type) __AV_offsetof(struct { char __slot1; type __slot2; }, __slot2) -#endif -#endif - -/* C builtin types. - */ -#if defined(__mipsn32__) -typedef long long __avword; -#else -typedef long __avword; -#endif - -enum __AVtype -{ - __AVword, - __AVvoid, - __AVchar, - __AVschar, - __AVuchar, - __AVshort, - __AVushort, - __AVint, - __AVuint, - __AVlong, - __AVulong, - __AVlonglong, - __AVulonglong, - __AVfloat, - __AVdouble, - __AVvoidp, - __AVstruct -}; - -enum __AV_alist_flags -{ - - /* how to return structs */ - /* There are basically 3 ways to return structs: - * a. The called function returns a pointer to static data. Not reentrant. - * b. The caller passes the return structure address in a dedicated register - * or as a first (or last), invisible argument. The called function stores - * its result there. - * c. Like b, and the called function also returns the return structure - * address in the return value register. (This is not very distinguishable - * from b.) - * Independently of this, - * r. small structures (<= 4 or <= 8 bytes) may be returned in the return - * value register(s), or - * m. even small structures are passed in memory. - */ - /* gcc-2.6.3 employs the following strategy: - * - If PCC_STATIC_STRUCT_RETURN is defined in the machine description - * it uses method a, else method c. - * - If flag_pcc_struct_return is set (either by -fpcc-struct-return or if - * DEFAULT_PCC_STRUCT_RETURN is defined to 1 in the machine description) - * it uses method m, else (either by -freg-struct-return or if - * DEFAULT_PCC_STRUCT_RETURN is defined to 0 in the machine description) - * method r. - */ - __AV_PCC_STRUCT_RETURN = 1<<0, /* a: need to copy the struct */ - __AV_SMALL_STRUCT_RETURN = 1<<1, /* r: special case for small structs */ - __AV_GCC_STRUCT_RETURN = 1<<2, /* consider 8 byte structs as small */ -#if defined(__sparc__) && !defined(__sparc64__) - __AV_SUNCC_STRUCT_RETURN = 1<<3, - __AV_SUNPROCC_STRUCT_RETURN = 1<<4, -#endif -#if defined(__i386__) - __AV_NEXTGCC_STRUCT_RETURN = 1<<3, - __AV_MSVC_STRUCT_RETURN = 1<<4, -#endif -#if defined(__hppa__) - __AV_OLDGCC_STRUCT_RETURN = 1<<3, -#endif - /* the default way to return structs */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another struct returning convention, - * just #define __AV_STRUCT_RETURN ... - * before or after #including . - */ -#ifndef __AV_STRUCT_RETURN - __AV_STRUCT_RETURN = -#if defined(__sparc__) && !defined(__sparc64__) && defined(sun) && defined(__SUNPRO_C) /* SUNWspro cc */ - __AV_SUNPROCC_STRUCT_RETURN, -#else -#if defined(__PCC_STRUCT_RETURN__) /* defined through configure, see above */ - __AV_PCC_STRUCT_RETURN | -#if defined(__sparc__) && !defined(__sparc64__) && defined(sun) && !(defined(__STDC__) || defined(__GNUC__)) /* sun cc */ - __AV_SUNCC_STRUCT_RETURN, -#else - 0, -#endif -#else -#if defined(__SMALL_STRUCT_RETURN__) || defined(__mipsn32__) || defined(__mips64__) /* defined through configure, see above */ - __AV_SMALL_STRUCT_RETURN | -#endif -#if defined(__GNUC__) - __AV_GCC_STRUCT_RETURN | -#endif -#if defined(__i386__) && defined(NeXT) && defined(__GNUC__) /* NeXT gcc-2.5.8 */ - __AV_NEXTGCC_STRUCT_RETURN | -#endif -#if defined(__i386__) && defined(_MSC_VER) /* MSVC 4.0 */ - __AV_MSVC_STRUCT_RETURN | -#endif -#if defined(__hppa__) && defined(__GNUC__) && (__GNUC__ < 3) && (__GNUC_MINOR__ < 7) - __AV_OLDGCC_STRUCT_RETURN | -#endif - 0, -#endif -#endif -#endif - - /* how to return floats */ -#if defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) - __AV_SUNCC_FLOAT_RETURN = 1<<5, -#endif -#if defined(__m68k__) - __AV_FREG_FLOAT_RETURN = 1<<6, -#endif - /* the default way to return floats */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float returning convention, - * just #define __AV_FLOAT_RETURN ... - * before or after #including . - */ -#ifndef __AV_FLOAT_RETURN -#if (defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__))) && !defined(__GNUC__) && defined(sun) && !defined(__SUNPRO_C) /* sun cc */ - __AV_FLOAT_RETURN = __AV_SUNCC_FLOAT_RETURN, -#elif (defined(__m68k__) && !defined(__IREG_FLOAT_RETURN__)) - __AV_FLOAT_RETURN = __AV_FREG_FLOAT_RETURN, -#else - __AV_FLOAT_RETURN = 0, -#endif -#endif - - /* how to pass structs */ -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) - __AV_SGICC_STRUCT_ARGS = 1<<7, -#endif -#if defined(__rs6000__) - __AV_AIXCC_STRUCT_ARGS = 1<<7, -#endif - /* the default way to pass floats */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float passing convention, - * just #define __AV_STRUCT_ARGS ... - * before or after #including . - */ -#ifndef __AV_STRUCT_ARGS -#if (defined(__mips__) || defined(__mipsn32__) || defined(__mips64__)) && !defined(__GNUC__) /* SGI mips cc */ - __AV_STRUCT_ARGS = __AV_SGICC_STRUCT_ARGS, -#else -#if defined(__rs6000__) && defined(_AIX) && !defined(__GNUC__) /* AIX cc, xlc */ - __AV_STRUCT_ARGS = __AV_AIXCC_STRUCT_ARGS, -#else - __AV_STRUCT_ARGS = 0, -#endif -#endif -#endif - - /* how to pass floats */ - /* ANSI C compilers and GNU gcc pass floats as floats. - * K&R C compilers pass floats as doubles. - * (Except some compilers like SGI MIPS "cc" and "cc -cckr" if a prototype is - * known for the called functions. But to compile a program with prototypes, - * "cc -ansi" is better anyway. - */ - __AV_ANSI_FLOAT_ARGS = 0, /* pass floats as floats */ - __AV_TRADITIONAL_FLOAT_ARGS = 1<<8, /* pass floats as doubles */ - /* the default way to pass floats */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float passing convention, - * just #define __AV_FLOAT_ARGS ... - * before or after #including . - */ -#ifndef __AV_FLOAT_ARGS -#if defined(__STDC__) || defined(__GNUC__) /* what about hppa "cc -Aa" ?? */ - __AV_FLOAT_ARGS = __AV_ANSI_FLOAT_ARGS, -#else - __AV_FLOAT_ARGS = __AV_TRADITIONAL_FLOAT_ARGS, -#endif -#endif - - /* how to pass and return small integer arguments */ - __AV_ANSI_INTEGERS = 0, /* no promotions */ - __AV_TRADITIONAL_INTEGERS = 0, /* promote [u]char, [u]short to [u]int */ - /* Fortunately these two methods are compatible. Our macros work with both. */ - /* the default way to pass and return small integer arguments */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float passing convention, - * just #define __AV_INTEGERS ... - * before or after #including . - */ -#ifndef __AV_INTEGERS -#if defined(__STDC__) || defined(__GNUC__) - __AV_INTEGERS = __AV_ANSI_INTEGERS, -#else - __AV_INTEGERS = __AV_TRADITIONAL_INTEGERS, -#endif -#endif - - /* stack cleanup policy */ - __AV_CDECL_CLEANUP = 0, /* caller pops args after return */ - __AV_STDCALL_CLEANUP = 0, /* callee pops args before return */ - /* currently only supported on __i386__ */ -#ifndef __AV_CLEANUP - __AV_CLEANUP = __AV_CDECL_CLEANUP, -#endif - - /* These are for internal use only */ -#if defined(__i386__) || defined(__m68k__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc64__) || defined(__alpha__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__ia64__) || defined(__x86_64__) || defined(__s390__) - __AV_REGISTER_STRUCT_RETURN = 1<<9, -#endif -#if defined(__mips__) && !defined(__mipsn32__) - __AV_FLOAT_1 = 1<<10, - __AV_FLOAT_2 = 1<<11, -#endif - - __AV_flag_for_broken_compilers_that_dont_like_trailing_commas -}; - -typedef struct -{ - /* function to be called */ - __avword (*func)(); - /* some av_... macros need these flags */ - int flags; - /* return type, address for the result */ - void* raddr; - enum __AVtype rtype; - unsigned long rsize; - /* current pointer into the args[] array */ - __avword* aptr; -#if defined(__sparc__) || defined(__sparc64__) || defined(__hppa__) || (defined(__rs6000__) && !defined(_AIX) && !(defined(__MACH__) && defined(__APPLE__))) || defined(__s390__) - /* limit pointer into the args[] array */ - __avword* eptr; -#endif -#if defined(__i386__) && 0 - /* Filler word, needed if the numbers of words up to now in this structure */ - /* is odd (because on MSVC, alignof(double) = 8, normally = 4). */ - __avword filler1; -#endif -#if defined(__i386__) || defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__hppa__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__s390__) - /* temporary storage, used to split doubles into two words */ - union { - double _double; -#if defined(__sparc__) && !defined(__sparc64__) && defined(HAVE_LONGLONG) - long long _longlong; -#endif - __avword words[2]; - } tmp; -#endif -#if defined(__x86_64__) - /* store the integer arguments in an extra array */ - __avword* iaptr; - __avword iargs[6]; -#endif -#if defined(__mips__) && !defined(__mipsn32__) - /* store the floating-point arguments in an extra array */ - int anum; - double floatarg[2]; -#endif -#if defined(__mipsn32__) || defined(__mips64__) - /* store the floating-point arguments in an extra array */ - int anum; /* redundant: (LIST).aptr = &(LIST).args[(LIST).anum] */ - unsigned int farg_mask; /* bitmask of those entries in farg[] which have a value */ - unsigned int darg_mask; /* bitmask of those entries in args[] which have a double value */ - float farg[8]; -#endif -#if defined(__sparc64__) - /* store the floating-point arguments in an extra array */ - int anum; /* redundant: (LIST).aptr = &(LIST).args[(LIST).anum] */ - unsigned int farg_mask; /* bitmask of those entries in farg[] which have a value */ - unsigned int darg_mask; /* bitmask of those entries in args[] which have a double value */ -#endif -#if defined(__ia64__) || defined(__x86_64__) - /* store the floating-point arguments in an extra array */ - double* faptr; - double fargs[8]; -#endif - __avword args[__AV_ALIST_WORDS]; /* sizeof(double)-aligned */ -#if defined(__rs6000__) - /* store the floating-point arguments in an extra array */ - double* faptr; - double fargs[13]; -#endif -#if defined(__s390__) - /* store the floating-point arguments in an extra array */ - int fargwords; - float* faptr; - float fargs[2]; - int* fargsusedptr; - int fargsused[2]; - double* daptr; - double dargs[2]; - int* dargsusedptr; - int dargsused[2]; -#endif -#if defined(AMIGA) - /* store the arguments passed in registers in an extra array */ - __avword regargs[8+7]; -#endif -} av_alist; - -/* The limit for the pointer into the args[] array. */ -#if defined(__sparc__) || defined(__sparc64__) || defined(__hppa__) || (defined(__rs6000__) && !defined(_AIX) && !(defined(__MACH__) && defined(__APPLE__))) || defined(__s390) -#define __av_eptr(LIST) ((LIST).eptr) -#else -#define __av_eptr(LIST) (&(LIST).args[__AV_ALIST_WORDS]) -#endif - -/* Delayed overflow detection */ -#if defined(__hppa__) -#define av_overflown(LIST) ((LIST).aptr < __av_eptr(LIST)) -#else -#define av_overflown(LIST) ((LIST).aptr > __av_eptr(LIST)) -#endif - - -/* - * av_start_ macros which specify the return type - */ - -#define __AV_START_FLAGS \ - __AV_STRUCT_RETURN | __AV_FLOAT_RETURN | __AV_STRUCT_ARGS | __AV_FLOAT_ARGS | __AV_INTEGERS | __AV_CLEANUP - -#define __av_start(LIST,FUNC,RADDR,RETTYPE) \ - ((LIST).func = (__avword(*)())(FUNC), \ - (LIST).raddr = (void*)(RADDR), \ - (LIST).rtype = (RETTYPE), \ - __av_start1(LIST) \ - (LIST).flags = __AV_START_FLAGS) - -#if defined(__i386__) || defined(__m68k__) || defined(__alpha__) || defined(__arm__) || defined(__m88k__) || defined(__convex__) -#define __av_start1(LIST) \ - (LIST).aptr = &(LIST).args[0], -#endif -#if defined(__mips__) && !defined(__mipsn32__) -#define __av_start1(LIST) \ - (LIST).anum = 0, \ - (LIST).aptr = &(LIST).args[0], -#endif -#if defined(__mipsn32__) || defined(__mips64__) -#define __av_start1(LIST) \ - (LIST).anum = 0, \ - (LIST).farg_mask = 0, \ - (LIST).darg_mask = 0, \ - (LIST).aptr = &(LIST).args[0], -#endif -#if defined(__sparc__) && !defined(__sparc64__) -#define __av_start1(LIST) \ - (LIST).aptr = &(LIST).args[0], \ - (LIST).eptr = &(LIST).args[__AV_ALIST_WORDS], -#endif -#if defined(__sparc64__) -#define __av_start1(LIST) \ - (LIST).anum = 0, \ - (LIST).farg_mask = 0, \ - (LIST).darg_mask = 0, \ - (LIST).aptr = &(LIST).args[0], \ - (LIST).eptr = &(LIST).args[__AV_ALIST_WORDS], -#endif -#if defined(__hppa__) -#define __av_start1(LIST) \ - (LIST).aptr = &(LIST).args[__AV_ALIST_WORDS], \ - (LIST).eptr = &(LIST).args[0], -#endif -#if defined(__rs6000__) -#if defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)) -#define __av_start1(LIST) \ - (LIST).aptr = &(LIST).args[0], \ - (LIST).faptr = &(LIST).fargs[0], -#else -#define __av_start1(LIST) \ - (LIST).aptr = &(LIST).args[0], \ - (LIST).faptr = &(LIST).fargs[0], \ - (LIST).eptr = &(LIST).args[__AV_ALIST_WORDS], -#endif -#endif -#if defined(__s390__) -#define __av_start1(LIST) \ - (LIST).aptr = &(LIST).args[0], \ - (LIST).fargwords = 0, \ - (LIST).faptr = &(LIST).fargs[0], \ - (LIST).daptr = &(LIST).dargs[0], \ - (LIST).fargsusedptr = &(LIST).fargsused[0], \ - (LIST).dargsusedptr = &(LIST).dargsused[0], \ - (LIST).eptr = &(LIST).args[__AV_ALIST_WORDS], -#endif -#if defined(__ia64__) -#define __av_start1(LIST) \ - (LIST).aptr = &(LIST).args[0], \ - (LIST).faptr = &(LIST).fargs[0], -#endif -#if defined(__x86_64__) -#define __av_start1(LIST) \ - (LIST).aptr = &(LIST).args[0], \ - (LIST).iaptr = &(LIST).iargs[0], \ - (LIST).faptr = &(LIST).fargs[0], -#endif - -#define av_start_void(LIST,FUNC) __av_start(LIST,FUNC,0, __AVvoid) -#define av_start_char(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVchar) -#define av_start_schar(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVschar) -#define av_start_uchar(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVuchar) -#define av_start_short(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVshort) -#define av_start_ushort(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVushort) -#define av_start_int(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVint) -#define av_start_uint(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVuint) -#define av_start_long(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVlong) -#define av_start_ulong(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVulong) -#define av_start_longlong(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVlonglong) -#define av_start_ulonglong(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVulonglong) -#define av_start_float(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVfloat) -#define av_start_double(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVdouble) -#define av_start_ptr(LIST,FUNC,TYPE,RADDR) __av_start(LIST,FUNC,RADDR,__AVvoidp) - -#define av_start_struct(LIST,FUNC,TYPE,TYPE_SPLITTABLE,RADDR) \ - _av_start_struct(LIST,FUNC,sizeof(TYPE),TYPE_SPLITTABLE,RADDR) -#define _av_start_struct(LIST,FUNC,TYPE_SIZE,TYPE_SPLITTABLE,RADDR) \ - (__av_start(LIST,FUNC,RADDR,__AVstruct), \ - (LIST).rsize = TYPE_SIZE, \ - __av_start_struct1(LIST,TYPE_SIZE,TYPE_SPLITTABLE), \ - 0) - -#define __av_start_struct1(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((LIST).flags & __AV_PCC_STRUCT_RETURN \ - ? /* pcc struct return convention: \ - * called function returns pointer to value, we'll copy its contents afterwards. \ - */ \ - 0 \ - : __av_start_struct2(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ) -#if (defined(__sparc__) && !defined(__sparc64__)) || defined(__m88k__) -/* Return structure pointer is passed in a special register. - */ -#define __av_start_struct2(LIST,TYPE_SIZE,TYPE_SPLITTABLE) 0 -#else -#define __av_start_struct2(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - (((LIST).flags & __AV_SMALL_STRUCT_RETURN) \ - && __av_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ? /* <= Word-sized structures are returned in a register. */ \ - __av_start_struct3(LIST) \ - : __av_start_struct4(LIST,TYPE_SIZE) \ - ) -/* Determines whether a structure is returned in registers, - * depending on its size and its word-splittable flag. - */ -#if (defined(__i386__) && defined(_WIN32)) -#define __av_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 \ - || ((TYPE_SIZE) == 8 \ - && (((LIST).flags & __AV_MSVC_STRUCT_RETURN) \ - || ((TYPE_SPLITTABLE) \ - && ((LIST).flags & __AV_GCC_STRUCT_RETURN) \ - ) ) ) ) -/* Turn on __AV_REGISTER_STRUCT_RETURN if __AV_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __av_start_struct3(LIST) \ - ((LIST).flags |= __AV_REGISTER_STRUCT_RETURN, 0) -#endif -#if (defined(__i386__) && !defined(_WIN32)) || defined(__m68k__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__s390__) -#define __av_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 \ - || ((TYPE_SIZE) == 8 && (TYPE_SPLITTABLE) \ - && ((LIST).flags & __AV_GCC_STRUCT_RETURN) \ - ) ) -/* Turn on __AV_REGISTER_STRUCT_RETURN if __AV_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __av_start_struct3(LIST) \ - ((LIST).flags |= __AV_REGISTER_STRUCT_RETURN, 0) -#endif -#if defined(__alpha__) -#define __av_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 || (TYPE_SIZE) == 8 \ - || ((TYPE_SIZE) == 16 && (TYPE_SPLITTABLE) \ - && ((LIST).flags & __AV_GCC_STRUCT_RETURN) \ - ) ) -/* Turn on __AV_REGISTER_STRUCT_RETURN if __AV_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __av_start_struct3(LIST) \ - ((LIST).flags |= __AV_REGISTER_STRUCT_RETURN, 0) -#endif -#if defined(__hppa__) -#define __av_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((LIST).flags & __AV_OLDGCC_STRUCT_RETURN \ - ? ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4) \ - : ((TYPE_SIZE) <= 8) \ - ) -/* Test both __AV_OLDGCC_STRUCT_RETURN and __AV_SMALL_STRUCT_RETURN at run time. */ -#define __av_start_struct3(LIST) \ - 0 -#endif -#if defined(__mips__) && !defined(__mipsn32__) -#define __av_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4) -/* Test __AV_SMALL_STRUCT_RETURN instead of __AV_REGISTER_STRUCT_RETURN. */ -#define __av_start_struct3(LIST) \ - 0 -#endif -#if defined(__mipsn32__) || defined(__mips64__) -#define __av_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((LIST).flags & __AV_GCC_STRUCT_RETURN \ - ? ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 || (TYPE_SIZE) == 8) \ - : ((TYPE_SIZE) <= 16) \ - ) -/* Turn on __AV_REGISTER_STRUCT_RETURN if __AV_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __av_start_struct3(LIST) \ - ((LIST).flags |= __AV_REGISTER_STRUCT_RETURN, 0) -#endif -#if defined(__sparc64__) || defined(__ia64__) -#define __av_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) <= 32) -/* Turn on __AV_REGISTER_STRUCT_RETURN if __AV_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __av_start_struct3(LIST) \ - ((LIST).flags |= __AV_REGISTER_STRUCT_RETURN, 0) -#endif -#if defined(__x86_64__) -#define __av_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) <= 16) -/* Turn on __AV_REGISTER_STRUCT_RETURN if __AV_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __av_start_struct3(LIST) \ - ((LIST).flags |= __AV_REGISTER_STRUCT_RETURN, 0) -#endif -#if defined(__i386__) -/* Return structure pointer is passed in a special register or as first arg. */ -#define __av_start_struct4(LIST,TYPE_SIZE) \ - ((LIST).flags & __AV_NEXTGCC_STRUCT_RETURN \ - ? 0 /* special register */ \ - : (*(LIST).aptr++ = (__avword)((LIST).raddr), 0) /* first arg */ \ - ) -#endif -#if defined(__m68k__) || defined(__hppa__) || defined(__ia64__) -/* Return structure pointer is passed in a special register. - */ -#define __av_start_struct4(LIST,TYPE_SIZE) 0 -#endif -/* Return structure pointer is passed as first arg. - */ -#if defined(__alpha__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__s390__) -#define __av_start_struct4(LIST,TYPE_SIZE) \ - (*(LIST).aptr++ = (__avword)((LIST).raddr), 0) -#endif -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc64__) -#define __av_start_struct4(LIST,TYPE_SIZE) \ - (*(LIST).aptr++ = (__avword)((LIST).raddr), \ - (LIST).anum++, \ - 0 \ - ) -#endif -#if defined(__x86_64__) -#define __av_start_struct4(LIST,TYPE_SIZE) \ - (*(LIST).iaptr++ = (__avword)((LIST).raddr), 0) -#endif -#endif - - -/* - * av_ macros which specify the argument and its type - */ - -/* - * scalar argument types - */ - -#if defined(__i386__) || defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__alpha__) || defined(__arm__) || defined(__rs6000__) || defined(__m88k__) || defined(__convex__) || defined(__ia64__) || defined(__x86_64__) || defined(__s390__) -/* Floats and all integer types are passed as words, - * doubles as two words. - */ -#define __av_word(LIST,VAL) \ - (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 : ((LIST).aptr[-1] = (__avword)(VAL), 0)) -#endif -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc64__) -/* Most things are passed as integers: - */ -#define __av_word(LIST,VAL) \ - (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 : ((LIST).anum++, (LIST).aptr[-1] = (__avword)(VAL), 0)) -#endif -#if defined(__hppa__) -/* Floats and all integer types are passed as words, - * doubles as two words. - */ -#define __av_word(LIST,VAL) \ - (--(LIST).aptr < __av_eptr(LIST) \ - ? -1 : (*(LIST).aptr = (__avword)(VAL), 0)) -#endif -#if defined(AMIGA) -/* Some arguments are passed in registers. Query the macro AV_ARG_REGNUM. - * This should really be an argument to __av_word. - */ -#undef __av_word /**/ -#define __av_word(LIST,VAL) \ - ((AV_ARG_REGNUM) >= 0 \ - ? ((AV_ARG_REGNUM) < 8+7 \ - ? -1 : ((LIST).regargs[(AV_ARG_REGNUM)] = (__avword)(VAL), 0)) \ - : (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 : ((LIST).aptr[-1] = (__avword)(VAL), 0))) -#endif - -/* integer argument types */ - -#if defined(__x86_64__) -/* The first 6 integer arguments are passed in registers. */ -#define av_long(LIST,VAL) \ - ((LIST).iaptr < &(LIST).iargs[6] \ - ? (*(LIST).iaptr++ = (long)(VAL), 0) \ - : __av_word(LIST,(long)(VAL))) -#else -#define av_long(LIST,VAL) __av_word(LIST,(long)(VAL)) -#endif - -#if defined(__x86_64__) -/* The first 6 integer arguments are passed in registers. */ -#define av_ulong(LIST,VAL) \ - ((LIST).iaptr < &(LIST).iargs[6] \ - ? (*(LIST).iaptr++ = (unsigned long)(VAL), 0) \ - : __av_word(LIST,(unsigned long)(VAL))) -#else -#define av_ulong(LIST,VAL) __av_word(LIST,(unsigned long)(VAL)) -#endif - -#if defined(__x86_64__) -/* The first 6 integer arguments are passed in registers. */ -#define av_ptr(LIST,TYPE,VAL) \ - ((LIST).iaptr < &(LIST).iargs[6] \ - ? (*(LIST).iaptr++ = (__avword)(TYPE)(VAL), 0) \ - : __av_word(LIST,(TYPE)(VAL))) -#else -#define av_ptr(LIST,TYPE,VAL) __av_word(LIST,(TYPE)(VAL)) -#endif - -#define av_char av_long -#define av_schar av_long -#define av_short av_long -#define av_int av_long -#define av_uchar av_ulong -#define av_ushort av_ulong -#define av_uint av_ulong - -#if defined(__mips64__) || defined(__sparc64__) || defined(__alpha__) || defined(__ia64__) || defined(__x86_64__) -/* `long long' and `long' are identical. */ -#define av_longlong av_long -#define av_ulonglong av_ulong -#elif defined(__mipsn32__) -/* `long long' fits in __avword. */ -#define av_longlong __av_word -#define av_ulonglong(LIST,VAL) __av_word(LIST,(unsigned long long)(VAL)) -#elif defined(__i386__) || defined(__m68k__) || defined(__mips__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__hppa__) || defined(__arm__) || defined(__rs6000__) || defined(__m88k__) || defined(__convex__) || defined(__s390__) -/* `long long's are passed embedded on the arg stack. */ -#define av_longlong(LIST,VAL) __av_longlong(LIST,long long,VAL) -#define av_ulonglong(LIST,VAL) __av_longlong(LIST,unsigned long long,VAL) -#if defined(__i386__) || defined(__m68k__) || defined(__arm__) || (defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__convex__) -/* `long long's are (at most) word-aligned. */ -#define __av_longlong(LIST,TYPE,VAL) \ - (((LIST).aptr += sizeof(TYPE)/sizeof(__avword)) > __av_eptr(LIST) \ - ? -1 : (((TYPE*)(LIST).aptr)[-1] = (TYPE)(VAL), 0)) -#endif -#if defined(__mips__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__hppa__) || (defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__m88k__) || defined(__s390__) -/* `long long's have alignment 8. */ -#if defined(__mips__) -#define __av_longlong(LIST,TYPE,VAL) \ - (((LIST).aptr = (__avword*)(((__avword)(LIST).aptr+sizeof(TYPE)+__AV_alignof(TYPE)-1) & -(long)__AV_alignof(TYPE))) > __av_eptr(LIST) \ - ? -1 : ((LIST).anum++, ((TYPE*)(LIST).aptr)[-1] = (TYPE)(VAL), 0)) -#endif -#if defined(__sparc__) && !defined(__sparc64__) -/* Within the arg stack, the alignment is only 4, not 8. */ -/* This assumes sizeof(long long) == 2*sizeof(__avword). */ -#define __av_longlong(LIST,TYPE,VAL) \ - (((LIST).aptr += sizeof(TYPE)/sizeof(__avword)) > __av_eptr(LIST) \ - ? -1 : \ - ((LIST).tmp._longlong = (TYPE)(VAL), \ - (LIST).aptr[-2] = (LIST).tmp.words[0], \ - (LIST).aptr[-1] = (LIST).tmp.words[1], \ - 0)) -#endif -#if defined(__hppa__) -#define __av_longlong(LIST,TYPE,VAL) \ - (((LIST).aptr = (__avword*)(((__avword)(LIST).aptr & -(long)__AV_alignof(TYPE)) - sizeof(TYPE))) < __av_eptr(LIST) \ - ? -1 : (*(TYPE*)(LIST).aptr = (TYPE)(VAL), 0)) -#endif -#if (defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__m88k__) -#define __av_longlong(LIST,TYPE,VAL) \ - (((LIST).aptr = (__avword*)(((__avword)(LIST).aptr+sizeof(TYPE)+__AV_alignof(TYPE)-1) & -(long)__AV_alignof(TYPE))) > __av_eptr(LIST) \ - ? -1 : (((TYPE*)(LIST).aptr)[-1] = (TYPE)(VAL), 0)) -#endif -#if defined(__s390__) -#define __av_longlong(LIST,TYPE,VAL) \ - (((LIST).aptr = (__avword*)(((__avword)(LIST).aptr+sizeof(TYPE)+__AV_alignof(TYPE)-1) & -(long)__AV_alignof(TYPE))) > __av_eptr(LIST) \ - ? -1 : \ - (((LIST).aptr - (LIST).args - (LIST).fargwords == 4 ? ++(LIST).aptr,0 : 0), \ - (((TYPE*)(LIST).aptr)[-1] = (TYPE)(VAL), 0))) -#endif -#endif -#endif - -/* floating-point argument types */ - -#define av_float(LIST,VAL) \ - ((LIST).flags & __AV_TRADITIONAL_FLOAT_ARGS \ - ? av_double(LIST,(float)(VAL)) \ - : __av_float(LIST,VAL)) - -#if defined(__i386__) || defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__arm__) || defined(__convex__) - -#define __av_float(LIST,VAL) \ - (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 : (((float*)(LIST).aptr)[-1] = (float)(VAL), 0)) - -/* This assumes sizeof(double) == 2*sizeof(__avword). */ -#define av_double(LIST,VAL) \ - (((LIST).aptr += 2) > __av_eptr(LIST) \ - ? -1 : \ - ((LIST).tmp._double = (double)(VAL), \ - (LIST).aptr[-2] = (LIST).tmp.words[0], \ - (LIST).aptr[-1] = (LIST).tmp.words[1], \ - 0)) - -#endif - -#if defined(__mips__) && !defined(__mipsn32__) - -/* Up to 2 leading float or double non-varargs args can be passed in - * float registers, but we also push them into the corresponding int - * registers in case of varargs. For doubles we need to align the aptr - * to an even boundary. - */ -#define __av_float(LIST,VAL) \ - (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 : ((++(LIST).anum == 1 \ - ? ((LIST).flags |= __AV_FLOAT_1, \ - ((float*)(LIST).floatarg)[1] = ((float*)(LIST).aptr)[-1] = (float)(VAL))\ - : (LIST).anum == 2 && ((LIST).flags & __AV_FLOAT_1) \ - ? ((LIST).flags |= __AV_FLOAT_2, \ - ((float*)(LIST).floatarg)[3] = ((float*)(LIST).aptr)[-1] = (float)(VAL))\ - : (*(float*)&(LIST).aptr[-1] = (float)(VAL))), \ - 0)) - -#define av_double(LIST,VAL) \ - (((LIST).aptr = (__avword*)(((__avword)(LIST).aptr+15)&-8)) \ - > __av_eptr(LIST) \ - ? -1 : ((++(LIST).anum == 1 \ - ? ((LIST).flags |= __AV_FLOAT_1, \ - (LIST).floatarg[0] = ((double*)(LIST).aptr)[-1] = (double)(VAL))\ - : (LIST).anum == 2 && ((LIST).flags & __AV_FLOAT_1) \ - ? ((LIST).flags |= __AV_FLOAT_2, \ - (LIST).floatarg[1] = ((double*)(LIST).aptr)[-1] = (double)(VAL))\ - : (((double*)(LIST).aptr)[-1] = (double)(VAL))), \ - 0)) - -#endif - -#if defined(__mipsn32__) || defined(__mips64__) - -/* Up to 8 leading float or double non-varargs args can be passed in - * float registers, but we also push them into the corresponding int - * registers in case of varargs. - */ -#define __av_float(LIST,VAL) \ - ((LIST).aptr >= __av_eptr(LIST) \ - ? -1 : (((LIST).anum < 8 \ - ? ((LIST).farg_mask |= (1 << (LIST).anum), \ - (LIST).farg[(LIST).anum] = *(float*)(LIST).aptr = (float)(VAL)) \ - : (*(float*)(LIST).aptr = (float)(VAL))), \ - (LIST).anum++, \ - (LIST).aptr++, \ - 0)) - -#define av_double(LIST,VAL) \ - ((LIST).aptr >= __av_eptr(LIST) \ - ? -1 : (((LIST).anum < 8 && ((LIST).darg_mask |= (1 << (LIST).anum))), \ - *(double*)(LIST).aptr = (double)(VAL), \ - (LIST).anum++, \ - (LIST).aptr++, \ - 0)) - -#endif - -#if defined(__sparc64__) - -/* Up to 16 leading float or double non-varargs args can be passed in - * float registers, but we also push them into the corresponding int - * registers in case of varargs. - */ -#define __av_float(LIST,VAL) \ - ((LIST).aptr >= __av_eptr(LIST) \ - ? -1 : (((LIST).anum < 16 && ((LIST).farg_mask |= (1 << (LIST).anum))), \ - (*(float*)(LIST).aptr = (float)(VAL)), \ - (LIST).anum++, \ - (LIST).aptr++, \ - 0)) - -#define av_double(LIST,VAL) \ - ((LIST).aptr >= __av_eptr(LIST) \ - ? -1 : (((LIST).anum < 16 && ((LIST).darg_mask |= (1 << (LIST).anum))), \ - *(double*)(LIST).aptr = (double)(VAL), \ - (LIST).anum++, \ - (LIST).aptr++, \ - 0)) - -#endif - -#if defined(__alpha__) - -#define av_double(LIST,VAL) \ - (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 : (((double*)(LIST).aptr)[-1] = (double)(VAL), 0)) - -#define __av_float(LIST,VAL) \ - (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 \ - : (((LIST).aptr > &(LIST).args[6] \ - ? /* These args will be fetched from memory using "lds" instructions */ \ - /* therefore store them as floats */ \ - (*(float*)((LIST).aptr-1) = (float)(VAL)) \ - : /* The first 6 args will be put into registers by "ldt" instructions */ \ - /* (see avcall-alpha.c!). Therefore store them as doubles. */ \ - /* When viewed as floats, the value will be the correct one. */\ - (*(double*)((LIST).aptr-1) = (double)(float)(VAL)) \ - ), 0)) - -#endif - -#if defined(__hppa__) - -#define __av_float(LIST,VAL) \ - (--(LIST).aptr < __av_eptr(LIST) \ - ? -1 : (*(float*)(LIST).aptr = (float)(VAL), 0)) - -#define av_double(LIST,VAL) \ - (((LIST).aptr = (__avword*)(((long)(LIST).aptr-sizeof(double)) & -(long)sizeof(double))) \ - < __av_eptr(LIST) \ - ? -1 : (*(double*)(LIST).aptr = (double)(VAL), 0)) - -#endif - -#if defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) - -/* Up to 13 float or double non-varargs args can be passed in - * float registers, but we also push them into the corresponding int - * registers in case of varargs. - */ - -#define __av_float(LIST,VAL) \ - (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 : (((float*)(LIST).aptr)[-1] = (float)(VAL), \ - (LIST).faptr < &(LIST).fargs[13] && \ - (*(LIST).faptr++ = (double)(float)(VAL)), \ - 0)) - -#define av_double(LIST,VAL) \ - (((LIST).aptr += 2) > __av_eptr(LIST) \ - ? -1 : \ - ((LIST).tmp._double = (double)(VAL), \ - (LIST).aptr[-2] = (LIST).tmp.words[0], \ - (LIST).aptr[-1] = (LIST).tmp.words[1], \ - (LIST).faptr < &(LIST).fargs[13] && \ - (*(LIST).faptr++ = (LIST).tmp._double), \ - 0)) - -#endif - -#if defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) - -/* Up to 8 float or double non-varargs args can be passed in - * float registers, without occupying space in the general registers. - */ - -#define __av_float(LIST,VAL) \ - ((LIST).faptr < &(LIST).fargs[8] \ - ? ((*(LIST).faptr++ = (double)(float)(VAL)), 0) \ - : (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 : (((float*)(LIST).aptr)[-1] = (float)(VAL), 0))) - -#define av_double(LIST,VAL) \ - ((LIST).faptr < &(LIST).fargs[8] \ - ? ((*(LIST).faptr++ = (double)(VAL)), 0) \ - : (((LIST).aptr += 2) > __av_eptr(LIST) \ - ? -1 : \ - ((LIST).tmp._double = (double)(VAL), \ - (LIST).aptr[-2] = (LIST).tmp.words[0], \ - (LIST).aptr[-1] = (LIST).tmp.words[1], \ - 0))) - -#endif - -#if defined(__s390__) - -/* Up to 2 float or double non-varargs args can be passed in - * float registers, without occupying space in the general registers. - */ - -#define __av_float(LIST,VAL) \ - ((LIST).faptr < &(LIST).fargs[2] \ - ? (LIST).daptr++, *(LIST).fargsusedptr++ = 1, *(LIST).dargsusedptr++ = 0, ((*(LIST).faptr++ = (float)(VAL)), 0) \ - : (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 : ((LIST).fargwords++, ((float*)(LIST).aptr)[-1] = (float)(VAL), 0))) - -#define av_double(LIST,VAL) \ - ((LIST).daptr < &(LIST).dargs[2] \ - ? (LIST).faptr++, *(LIST).dargsusedptr++ = 1, *(LIST).fargsusedptr++ = 0, ((*(LIST).daptr++ = (double)(VAL)), 0) \ - : (((LIST).aptr += 2) > __av_eptr(LIST) \ - ? -1 : \ - ((LIST).fargwords+=2, (LIST).tmp._double = (double)(VAL), \ - (LIST).aptr[-2] = (LIST).tmp.words[0], \ - (LIST).aptr[-1] = (LIST).tmp.words[1], \ - 0))) - -#endif - -#if defined(__m88k__) - -#define __av_float(LIST,VAL) \ - (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 : (((float*)(LIST).aptr)[-1] = (float)(VAL), 0)) - -#define av_double(LIST,VAL) \ - (((LIST).aptr = (__avword*)(((long)(LIST).aptr+sizeof(double)+sizeof(double)-1) & -(long)sizeof(double))) \ - > __av_eptr(LIST) \ - ? -1 : (((double*)(LIST).aptr)[-1] = (double)(VAL), 0)) - -#endif - -#if defined(__ia64__) - -/* Up to 8 leading float or double non-varargs args can be passed in - * float registers, but we also push them into the corresponding int - * registers in case of varargs. - */ -#define __av_float(LIST,VAL) \ - ((LIST).aptr >= __av_eptr(LIST) \ - ? -1 : ((*(float*)(LIST).aptr = (float)(VAL)), \ - ((LIST).faptr < &(LIST).fargs[8] && (*(LIST).faptr = *(float*)(LIST).aptr, (LIST).faptr++)), \ - (LIST).aptr++, \ - 0)) - -#define av_double(LIST,VAL) \ - ((LIST).aptr >= __av_eptr(LIST) \ - ? -1 : (*(double*)(LIST).aptr = (double)(VAL), \ - ((LIST).faptr < &(LIST).fargs[8] && (*(LIST).faptr = *(double*)(LIST).aptr, (LIST).faptr++)), \ - (LIST).aptr++, \ - 0)) - -#endif - -#if defined(__x86_64__) - -/* Up to 8 leading float or double args can be passed in float registers. - */ -#define __av_float(LIST,VAL) \ - ((LIST).faptr < &(LIST).fargs[8] \ - ? (*(LIST).faptr = 0.0, *(float*)(LIST).faptr = (float)(VAL), \ - (LIST).faptr++, \ - 0) \ - : ((LIST).aptr >= __av_eptr(LIST) \ - ? -1 : ((*(float*)(LIST).aptr = (float)(VAL)), \ - (LIST).aptr++, \ - 0))) - -#define av_double(LIST,VAL) \ - ((LIST).faptr < &(LIST).fargs[8] \ - ? (*(LIST).faptr = (double)(VAL), \ - (LIST).faptr++, \ - 0) \ - : ((LIST).aptr >= __av_eptr(LIST) \ - ? -1 : ((*(double*)(LIST).aptr = (double)(VAL)), \ - (LIST).aptr++, \ - 0))) - -#endif - -/* - * structure argument types - */ - -#define av_struct(LIST,TYPE,VAL) \ - __av_struct(LIST,TYPE,sizeof(TYPE),__AV_alignof(TYPE),__av_struct_assign,VAL) -#define __av_struct_assign(TYPE,TYPE_SIZE,TYPE_ALIGN,PLACE,VAL) \ - *(TYPE*)(PLACE) = (VAL) -/* _av_struct() is like av_struct(), except that you pass the type's size and alignment - * and the value's address instead of the type and the value themselves. - */ -#define _av_struct(LIST,TYPE_SIZE,TYPE_ALIGN,VAL_ADDR) \ - __av_struct(LIST,unknown,TYPE_SIZE,TYPE_ALIGN,__av_struct_copy,VAL_ADDR) -#define __av_struct_copy(TYPE,TYPE_SIZE,TYPE_ALIGN,PLACE,VAL_ADDR) \ - __structcpy(PLACE,VAL_ADDR,TYPE_SIZE,TYPE_ALIGN) -/* Structure argument alignment. */ -#if defined(__i386__) && defined(_MSC_VER) -/* In MSVC, doubles inside structures have alignment 8, i.e. - * __AV_alignof(double) = 8, but doubles (and also structures containing - * doubles) are passed on the stack with alignment 4. Looks really weird. - */ -#define __av_struct_alignment(TYPE_ALIGN) \ - ((TYPE_ALIGN) <= 4 ? (TYPE_ALIGN) : 4) -#else -#define __av_struct_alignment(TYPE_ALIGN) \ - (TYPE_ALIGN) -#endif -#if defined(__i386__) || defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) || defined(__alpha__) || (defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__m88k__) || defined(__ia64__) || defined(__s390__) -/* Structures are passed as fully aligned structures on the arg stack. - * We align the aptr, store the structure, then fill to word alignment. - * Single-small-integer structures are NOT promoted to integers and have - * different alignment. - */ -/* little endian -> small structures < 1 word are adjusted to the left */ -#if defined(__i386__) || defined(__alpha__) || defined(__x86_64__) -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - (((LIST).aptr = \ - (__avword*)(((__avword)(LIST).aptr+(TYPE_SIZE)+__av_struct_alignment(TYPE_ALIGN)-1) & -(long)__av_struct_alignment(TYPE_ALIGN)))\ - > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - (LIST).aptr = (__avword*)(((__avword)(LIST).aptr+sizeof(__avword)-1) & -(long)sizeof(__avword)),\ - 0)) -#endif -#if defined(__ia64__) -/* Types larger than a word have 2-word alignment. */ -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - ((LIST).aptr = (__avword*)(((__avword)(LIST).aptr+(TYPE_SIZE)+__av_struct_alignment(TYPE_ALIGN)-1) & -(long)__av_struct_alignment(TYPE_ALIGN)), \ - ((TYPE_SIZE) > sizeof(__avword) && (((LIST).aptr - &(LIST).args[0]) & 1) ? ++(LIST).aptr : 0), \ - ((LIST).aptr > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - (LIST).aptr = (__avword*)(((__avword)(LIST).aptr+sizeof(__avword)-1) & -(long)sizeof(__avword)),\ - 0))) -#endif -/* small structures < 1 word are adjusted depending on compiler */ -#if defined(__mips__) && !defined(__mipsn32__) -#define __av_struct_leftadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - (((LIST).aptr = \ - (__avword*)(((__avword)(LIST).aptr+(TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN)))\ - > __av_eptr(LIST) \ - ? -1 : (++(LIST).anum, \ - ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - (LIST).aptr = (__avword*)(((__avword)(LIST).aptr+sizeof(__avword)-1) & -(long)sizeof(__avword)),\ - 0)) -#define __av_struct_rightadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - (((LIST).aptr = \ - (__avword*)(((((__avword)(LIST).aptr+(TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN))\ - +sizeof(__avword)-1) & -(long)sizeof(__avword))) \ - > __av_eptr(LIST) \ - ? -1 : (++(LIST).anum, \ - ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - 0)) -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - ((LIST).flags & __AV_SGICC_STRUCT_ARGS \ - ? /* SGI MIPS cc passes small structures left-adjusted, although big-endian! */\ - __av_struct_leftadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - : /* SGI MIPS gcc passes small structures within the first four words left- \ - * adjusted, for compatibility with cc. But structures in memory are passed \ - * right-adjusted!! See gcc-2.6.3/config/mips/mips.c:function_arg(). \ - */ \ - ((LIST).aptr < &(LIST).args[4] \ - ? __av_struct_leftadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - : __av_struct_rightadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL))) -#endif -#if defined(__mipsn32__) || defined(__mips64__) -/* When a structure is passed (partially) in registers, it is passed in the - * integer registers, except that doubles within the structure are passed in - * the floating point registers. Instead of distinguishing these cases, we - * always pass the structure in both the integer and the floating point - * registers. - */ -#define __av_struct_leftadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - (((LIST).aptr = \ - (__avword*)(((__avword)(LIST).aptr+(TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN)))\ - > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - (LIST).aptr = (__avword*)(((__avword)(LIST).aptr+sizeof(__avword)-1) & -(long)sizeof(__avword)),\ - ((LIST).anum < 8 && ((LIST).darg_mask |= (-1 << (LIST).anum))), \ - (LIST).anum += (((((TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN)) + sizeof(__avword)-1) & -(long)sizeof(__avword))/sizeof(__avword),\ - (LIST).darg_mask &= (1 << ((LIST).anum < 8 ? (LIST).anum : 8)) - 1, \ - 0)) -#define __av_struct_rightadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - (((LIST).aptr = \ - (__avword*)(((((__avword)(LIST).aptr+(TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN))\ - +sizeof(__avword)-1) & -(long)sizeof(__avword))) \ - > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - ((LIST).anum < 8 && ((LIST).darg_mask |= (-1 << (LIST).anum))), \ - (LIST).anum += (((((TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN)) + sizeof(__avword)-1) & -(long)sizeof(__avword))/sizeof(__avword),\ - (LIST).darg_mask &= (1 << ((LIST).anum < 8 ? (LIST).anum : 8)) - 1, \ - 0)) -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - ((LIST).flags & __AV_SGICC_STRUCT_ARGS \ - ? /* SGI MIPS cc passes small structures left-adjusted, although big-endian! */\ - __av_struct_leftadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - : /* SGI MIPS gcc passes small structures right-adjusted. */ \ - __av_struct_rightadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL)) -#endif -#if defined(__rs6000__) -#define __av_struct_leftadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL)\ - (((LIST).aptr = \ - (__avword*)(((__avword)(LIST).aptr+(TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN)))\ - > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - (LIST).aptr = (__avword*)(((__avword)(LIST).aptr+sizeof(__avword)-1) & -(long)sizeof(__avword)),\ - 0)) -#define __av_struct_rightadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL)\ - (((LIST).aptr = \ - (__avword*)(((((__avword)(LIST).aptr+(TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN))\ - +sizeof(__avword)-1) & -(long)sizeof(__avword))) \ - > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - 0)) -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - ((LIST).flags & __AV_AIXCC_STRUCT_ARGS \ - ? /* AIX cc and xlc pass small structures left-adjusted, although big-endian! */\ - __av_struct_leftadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - : /* gcc passes small structures right-adjusted. */ \ - __av_struct_rightadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL)) -#endif -#if defined(__s390__) -#define __av_struct_rightadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL)\ - (((LIST).aptr = \ - (__avword*)(((((__avword)(LIST).aptr+(TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN))\ - +sizeof(__avword)-1) & -(long)sizeof(__avword))) \ - > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - 0)) -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ -((TYPE_SIZE) != 1 && (TYPE_SIZE) != 2 && (TYPE_SIZE) != 4 && (TYPE_SIZE) != 8 \ - ? (++(LIST).aptr \ - > ((LIST).eptr = (__avword*)((long)(LIST).eptr - (((TYPE_SIZE)+7)&-8)))\ - ? -1 : \ - (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)(LIST).eptr,VAL), \ - (LIST).aptr[-1] = (__avword)(LIST).eptr, \ - 0)) \ - : (((TYPE_SIZE) == 8 && (LIST).aptr - (LIST).args - (LIST).fargwords == 4 ? ++(LIST).aptr,0 : 0), \ - __av_struct_rightadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL))) -#endif -/* big endian -> small structures < 1 word are adjusted to the right */ -#if defined(__m88k__) -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - (((LIST).aptr = \ - (__avword*)(((((__avword)(LIST).aptr+(TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN))\ - +sizeof(__avword)-1) & -(long)sizeof(__avword))) \ - > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - 0)) -#endif -#endif -#if defined(__m68k__) || defined(__arm__) || defined(__convex__) -/* Structures are passed as embedded copies on the arg stack. - */ -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - (((LIST).aptr = (__avword*)(((long)(LIST).aptr+(TYPE_SIZE)+sizeof(__avword)-1) & -(long)sizeof(__avword))) \ - > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - 0)) -#endif -#if (defined(__sparc__) && !defined(__sparc64__)) || (defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) -/* Structures are passed as pointers to caller-made local copies. We - * grab space for the copies from the end of the argument list space - * and always use maximal (double) alignment. - */ -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - (++(LIST).aptr \ - > ((LIST).eptr = (__avword*)((long)(LIST).eptr - (((TYPE_SIZE)+7)&-8)))\ - ? -1 : \ - (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)(LIST).eptr,VAL), \ - (LIST).aptr[-1] = (__avword)(LIST).eptr, \ - 0)) -#endif -#if defined(__sparc64__) -/* Structures <= 16 bytes are passed as embedded copies on the arg stack, - * left-adjusted (although big-endian!). - * When a structure is passed (partially) in registers, it is passed in the - * integer registers, except that floats and doubles within the structure - * are passed in the floating point registers. Instead of distinguishing - * these cases, we always pass the structure in both the integer and the - * floating point registers. - * Big structures are passed as pointers to caller-made local copies. - * FIXME: Shouldn't (LIST).anum be incremented in sync with (LIST).aptr ? - */ -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - ((TYPE_SIZE) > 16 \ - ? (++(LIST).aptr \ - > ((LIST).eptr = (__avword*)((long)(LIST).eptr - (((TYPE_SIZE)+7)&-8)))\ - ? -1 : \ - (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)(LIST).eptr,VAL), \ - (LIST).aptr[-1] = (__avword)(LIST).eptr, \ - 0)) \ - : (((LIST).aptr = \ - (__avword*)(((__avword)(LIST).aptr+(TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN)))\ - > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - (LIST).aptr = (__avword*)(((__avword)(LIST).aptr+sizeof(__avword)-1) & -(long)sizeof(__avword)),\ - ((LIST).anum < 16 \ - && ((LIST).farg_mask |= (-1 << (LIST).anum), \ - (LIST).darg_mask |= (-1 << (LIST).anum))), \ - (LIST).anum += (((((TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN)) + sizeof(__avword)-1) & -(long)sizeof(__avword))/sizeof(__avword),\ - (LIST).farg_mask &= (1 << ((LIST).anum < 16 ? (LIST).anum : 16)) - 1, \ - (LIST).darg_mask &= (1 << ((LIST).anum < 16 ? (LIST).anum : 16)) - 1, \ - 0))) -#endif -#if defined(__hppa__) -/* Structures <= 8 bytes are passed as embedded copies on the arg stack. - * Big structures are passed as pointers to caller-made local copies. - */ -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - ((TYPE_SIZE) > 8 \ - ? (--(LIST).aptr \ - < ((LIST).eptr = (__avword*)((long)(LIST).eptr + (((TYPE_SIZE) + 7) & -8))) \ - ? -1 \ - : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((long)(LIST).eptr - (((TYPE_SIZE) + 7) & -8)), VAL), \ - *(LIST).aptr = (__avword)((long)(LIST).eptr - (((TYPE_SIZE) + 7) & -8)), \ - 0)) \ - : ((TYPE_SIZE) > 4 \ - ? (((LIST).aptr = (__avword*)((((long)(LIST).aptr & -8) - (long)(TYPE_SIZE)) & -8)) \ - < &(LIST).args[0] \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)(LIST).aptr,VAL), 0)) \ - : /* FIXME: gcc-2.6.3 passes structures <= 4 bytes in memory left-adjusted! ?? */\ - (((LIST).aptr = (__avword*)(((long)(LIST).aptr & -4) - (long)(TYPE_SIZE))) \ - < &(LIST).args[0] \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)(LIST).aptr,VAL), \ - (LIST).aptr = (__avword*)((long)(LIST).aptr & -4), \ - 0)))) -#endif -#if defined(__x86_64__) -/* Structures <= 16 bytes can be passed in integer or floating-point registers - if there is enough room for the whole number of words needed by the structure - in the corresponding iargs/fargs block. We can't distinguish the two cases - and support only passing in integer registers. Other structures are passed - on the arg stack. */ -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - ((LIST).iaptr + ((TYPE_SIZE) + sizeof(__avword)-1) / sizeof(__avword) <= &(LIST).iargs[6] \ - ? (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)(LIST).iaptr,VAL), \ - (LIST).iaptr += ((TYPE_SIZE) + sizeof(__avword)-1) / sizeof(__avword), \ - 0) \ - : ((LIST).aptr = (__avword*)((__avword)(LIST).aptr + (((TYPE_SIZE)+__av_struct_alignment(TYPE_ALIGN)-1) & -(long)__av_struct_alignment(TYPE_ALIGN))), \ - ((LIST).aptr > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr - (((TYPE_SIZE)+__av_struct_alignment(TYPE_ALIGN)-1) & -(long)__av_struct_alignment(TYPE_ALIGN))),VAL),\ - 0)))) -#endif - -/* - * calling the function - */ - -#define av_call(LIST) __builtin_avcall(&(LIST)) - -/* Determine whether a struct type is word-splittable, i.e. whether each of - * its components fit into a register. - * The entire computation is done at compile time. - */ -#define av_word_splittable_1(slot1) \ - (__av_offset1(slot1)/sizeof(__avword) == (__av_offset1(slot1)+sizeof(slot1)-1)/sizeof(__avword)) -#define av_word_splittable_2(slot1,slot2) \ - ((__av_offset1(slot1)/sizeof(__avword) == (__av_offset1(slot1)+sizeof(slot1)-1)/sizeof(__avword)) \ - && (__av_offset2(slot1,slot2)/sizeof(__avword) == (__av_offset2(slot1,slot2)+sizeof(slot2)-1)/sizeof(__avword)) \ - ) -#define av_word_splittable_3(slot1,slot2,slot3) \ - ((__av_offset1(slot1)/sizeof(__avword) == (__av_offset1(slot1)+sizeof(slot1)-1)/sizeof(__avword)) \ - && (__av_offset2(slot1,slot2)/sizeof(__avword) == (__av_offset2(slot1,slot2)+sizeof(slot2)-1)/sizeof(__avword)) \ - && (__av_offset3(slot1,slot2,slot3)/sizeof(__avword) == (__av_offset3(slot1,slot2,slot3)+sizeof(slot3)-1)/sizeof(__avword)) \ - ) -#define av_word_splittable_4(slot1,slot2,slot3,slot4) \ - ((__av_offset1(slot1)/sizeof(__avword) == (__av_offset1(slot1)+sizeof(slot1)-1)/sizeof(__avword)) \ - && (__av_offset2(slot1,slot2)/sizeof(__avword) == (__av_offset2(slot1,slot2)+sizeof(slot2)-1)/sizeof(__avword)) \ - && (__av_offset3(slot1,slot2,slot3)/sizeof(__avword) == (__av_offset3(slot1,slot2,slot3)+sizeof(slot3)-1)/sizeof(__avword)) \ - && (__av_offset4(slot1,slot2,slot3,slot4)/sizeof(__avword) == (__av_offset4(slot1,slot2,slot3,slot4)+sizeof(slot4)-1)/sizeof(__avword)) \ - ) -#define __av_offset1(slot1) \ - 0 -#define __av_offset2(slot1,slot2) \ - ((__av_offset1(slot1)+sizeof(slot1)+__AV_alignof(slot2)-1) & -(long)__AV_alignof(slot2)) -#define __av_offset3(slot1,slot2,slot3) \ - ((__av_offset2(slot1,slot2)+sizeof(slot2)+__AV_alignof(slot3)-1) & -(long)__AV_alignof(slot3)) -#define __av_offset4(slot1,slot2,slot3,slot4) \ - ((__av_offset3(slot1,slot2,slot3)+sizeof(slot3)+__AV_alignof(slot4)-1) & -(long)__AV_alignof(slot4)) - -/* - * Miscellaneous declarations. - */ - -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -extern int __builtin_avcall (av_alist* l); -extern void __structcpy (void* dest, void* src, unsigned long size, unsigned long alignment); -#else -extern int __builtin_avcall (); -extern void __structcpy (); -#endif - -#endif /*_avcall_h */ DELETED ffcall/avcall/avcall.h.mingw32 Index: ffcall/avcall/avcall.h.mingw32 ================================================================== --- ffcall/avcall/avcall.h.mingw32 +++ /dev/null @@ -1,1405 +0,0 @@ -#ifndef _avcall_h /*-*- C -*-*/ -#define _avcall_h -/** - Copyright 1993 Bill Triggs, - - Copyright 1995-2004 Bruno Haible, - - This is free software distributed under the GNU General Public - Licence described in the file COPYING. Contact the author if - you don't have this or can't live with it. There is ABSOLUTELY - NO WARRANTY, explicit or implied, on this software. -**/ -/*---------------------------------------------------------------------- - av_call() foreign function interface. - - Varargs-style macros to build a C argument list incrementally - and call a function on it. - ----------------------------------------------------------------------*/ - - -/* These definitions are adjusted by `configure' automatically. */ - -/* CPU */ -#ifndef __i386__ -#define __i386__ 1 -#endif -#ifndef __m68k__ -#undef __m68k__ -#endif -#ifndef __mips__ -#undef __mips__ -#endif -#ifndef __mipsn32__ -#undef __mipsn32__ -#endif -#ifndef __mips64__ -#undef __mips64__ -#endif -#ifndef __sparc__ -#undef __sparc__ -#endif -#ifndef __sparc64__ -#undef __sparc64__ -#endif -#ifndef __alpha__ -#undef __alpha__ -#endif -#ifndef __hppa__ -#undef __hppa__ -#endif -#ifndef __arm__ -#undef __arm__ -#endif -#ifndef __rs6000__ -#undef __rs6000__ -#endif -#ifndef __s390__ -#undef __s390__ -#endif -#ifndef __m88k__ -#undef __m88k__ -#endif -#ifndef __convex__ -#undef __convex__ -#endif -#ifndef __ia64__ -#undef __ia64__ -#endif -#ifndef __x86_64__ -#undef __x86_64__ -#endif - -/* Calling convention */ -/* Define if using pcc non-reentrant struct return convention */ -#undef __PCC_STRUCT_RETURN__ -/* Define if small structs are returned in registers */ -#define __SMALL_STRUCT_RETURN__ 1 -/* Define if floating-point results are returned in the integer registers */ -#undef __IREG_FLOAT_RETURN__ - -/* CL_LONGLONG */ -/* Define if your compiler supports the `long long' type. */ -#undef HAVE_LONGLONG - -/* End of definitions adjusted by `configure'. */ - - -/* Max # words in argument-list and temporary structure storage. - */ -#ifndef __AV_ALIST_WORDS -#define __AV_ALIST_WORDS 256 -#endif - -/* Determine the alignment of a type at compile time. - */ -#if defined(__GNUC__) -#define __AV_alignof __alignof__ -#else -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) /* SGI compiler */ -#define __AV_alignof __builtin_alignof -#else -#define __AV_offsetof(type,ident) ((unsigned long)&(((type*)0)->ident)) -#define __AV_alignof(type) __AV_offsetof(struct { char __slot1; type __slot2; }, __slot2) -#endif -#endif - -/* C builtin types. - */ -#if defined(__mipsn32__) -typedef long long __avword; -#else -typedef long __avword; -#endif - -enum __AVtype -{ - __AVword, - __AVvoid, - __AVchar, - __AVschar, - __AVuchar, - __AVshort, - __AVushort, - __AVint, - __AVuint, - __AVlong, - __AVulong, - __AVlonglong, - __AVulonglong, - __AVfloat, - __AVdouble, - __AVvoidp, - __AVstruct -}; - -enum __AV_alist_flags -{ - - /* how to return structs */ - /* There are basically 3 ways to return structs: - * a. The called function returns a pointer to static data. Not reentrant. - * b. The caller passes the return structure address in a dedicated register - * or as a first (or last), invisible argument. The called function stores - * its result there. - * c. Like b, and the called function also returns the return structure - * address in the return value register. (This is not very distinguishable - * from b.) - * Independently of this, - * r. small structures (<= 4 or <= 8 bytes) may be returned in the return - * value register(s), or - * m. even small structures are passed in memory. - */ - /* gcc-2.6.3 employs the following strategy: - * - If PCC_STATIC_STRUCT_RETURN is defined in the machine description - * it uses method a, else method c. - * - If flag_pcc_struct_return is set (either by -fpcc-struct-return or if - * DEFAULT_PCC_STRUCT_RETURN is defined to 1 in the machine description) - * it uses method m, else (either by -freg-struct-return or if - * DEFAULT_PCC_STRUCT_RETURN is defined to 0 in the machine description) - * method r. - */ - __AV_PCC_STRUCT_RETURN = 1<<0, /* a: need to copy the struct */ - __AV_SMALL_STRUCT_RETURN = 1<<1, /* r: special case for small structs */ - __AV_GCC_STRUCT_RETURN = 1<<2, /* consider 8 byte structs as small */ -#if defined(__sparc__) && !defined(__sparc64__) - __AV_SUNCC_STRUCT_RETURN = 1<<3, - __AV_SUNPROCC_STRUCT_RETURN = 1<<4, -#endif -#if defined(__i386__) - __AV_NEXTGCC_STRUCT_RETURN = 1<<3, - __AV_MSVC_STRUCT_RETURN = 1<<4, -#endif -#if defined(__hppa__) - __AV_OLDGCC_STRUCT_RETURN = 1<<3, -#endif - /* the default way to return structs */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another struct returning convention, - * just #define __AV_STRUCT_RETURN ... - * before or after #including . - */ -#ifndef __AV_STRUCT_RETURN - __AV_STRUCT_RETURN = -#if defined(__sparc__) && !defined(__sparc64__) && defined(sun) && defined(__SUNPRO_C) /* SUNWspro cc */ - __AV_SUNPROCC_STRUCT_RETURN, -#else -#if defined(__PCC_STRUCT_RETURN__) /* defined through configure, see above */ - __AV_PCC_STRUCT_RETURN | -#if defined(__sparc__) && !defined(__sparc64__) && defined(sun) && !(defined(__STDC__) || defined(__GNUC__)) /* sun cc */ - __AV_SUNCC_STRUCT_RETURN, -#else - 0, -#endif -#else -#if defined(__SMALL_STRUCT_RETURN__) || defined(__mipsn32__) || defined(__mips64__) /* defined through configure, see above */ - __AV_SMALL_STRUCT_RETURN | -#endif -#if defined(__GNUC__) - __AV_GCC_STRUCT_RETURN | -#endif -#if defined(__i386__) && defined(NeXT) && defined(__GNUC__) /* NeXT gcc-2.5.8 */ - __AV_NEXTGCC_STRUCT_RETURN | -#endif -#if defined(__i386__) && defined(_MSC_VER) /* MSVC 4.0 */ - __AV_MSVC_STRUCT_RETURN | -#endif -#if defined(__hppa__) && defined(__GNUC__) && (__GNUC__ < 3) && (__GNUC_MINOR__ < 7) - __AV_OLDGCC_STRUCT_RETURN | -#endif - 0, -#endif -#endif -#endif - - /* how to return floats */ -#if defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) - __AV_SUNCC_FLOAT_RETURN = 1<<5, -#endif -#if defined(__m68k__) - __AV_FREG_FLOAT_RETURN = 1<<6, -#endif - /* the default way to return floats */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float returning convention, - * just #define __AV_FLOAT_RETURN ... - * before or after #including . - */ -#ifndef __AV_FLOAT_RETURN -#if (defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__))) && !defined(__GNUC__) && defined(sun) && !defined(__SUNPRO_C) /* sun cc */ - __AV_FLOAT_RETURN = __AV_SUNCC_FLOAT_RETURN, -#elif (defined(__m68k__) && !defined(__IREG_FLOAT_RETURN__)) - __AV_FLOAT_RETURN = __AV_FREG_FLOAT_RETURN, -#else - __AV_FLOAT_RETURN = 0, -#endif -#endif - - /* how to pass structs */ -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) - __AV_SGICC_STRUCT_ARGS = 1<<7, -#endif -#if defined(__rs6000__) - __AV_AIXCC_STRUCT_ARGS = 1<<7, -#endif - /* the default way to pass floats */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float passing convention, - * just #define __AV_STRUCT_ARGS ... - * before or after #including . - */ -#ifndef __AV_STRUCT_ARGS -#if (defined(__mips__) || defined(__mipsn32__) || defined(__mips64__)) && !defined(__GNUC__) /* SGI mips cc */ - __AV_STRUCT_ARGS = __AV_SGICC_STRUCT_ARGS, -#else -#if defined(__rs6000__) && defined(_AIX) && !defined(__GNUC__) /* AIX cc, xlc */ - __AV_STRUCT_ARGS = __AV_AIXCC_STRUCT_ARGS, -#else - __AV_STRUCT_ARGS = 0, -#endif -#endif -#endif - - /* how to pass floats */ - /* ANSI C compilers and GNU gcc pass floats as floats. - * K&R C compilers pass floats as doubles. - * (Except some compilers like SGI MIPS "cc" and "cc -cckr" if a prototype is - * known for the called functions. But to compile a program with prototypes, - * "cc -ansi" is better anyway. - */ - __AV_ANSI_FLOAT_ARGS = 0, /* pass floats as floats */ - __AV_TRADITIONAL_FLOAT_ARGS = 1<<8, /* pass floats as doubles */ - /* the default way to pass floats */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float passing convention, - * just #define __AV_FLOAT_ARGS ... - * before or after #including . - */ -#ifndef __AV_FLOAT_ARGS -#if defined(__STDC__) || defined(__GNUC__) /* what about hppa "cc -Aa" ?? */ - __AV_FLOAT_ARGS = __AV_ANSI_FLOAT_ARGS, -#else - __AV_FLOAT_ARGS = __AV_TRADITIONAL_FLOAT_ARGS, -#endif -#endif - - /* how to pass and return small integer arguments */ - __AV_ANSI_INTEGERS = 0, /* no promotions */ - __AV_TRADITIONAL_INTEGERS = 0, /* promote [u]char, [u]short to [u]int */ - /* Fortunately these two methods are compatible. Our macros work with both. */ - /* the default way to pass and return small integer arguments */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float passing convention, - * just #define __AV_INTEGERS ... - * before or after #including . - */ -#ifndef __AV_INTEGERS -#if defined(__STDC__) || defined(__GNUC__) - __AV_INTEGERS = __AV_ANSI_INTEGERS, -#else - __AV_INTEGERS = __AV_TRADITIONAL_INTEGERS, -#endif -#endif - - /* stack cleanup policy */ - __AV_CDECL_CLEANUP = 0, /* caller pops args after return */ - __AV_STDCALL_CLEANUP = 0, /* callee pops args before return */ - /* currently only supported on __i386__ */ -#ifndef __AV_CLEANUP - __AV_CLEANUP = __AV_CDECL_CLEANUP, -#endif - - /* These are for internal use only */ -#if defined(__i386__) || defined(__m68k__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc64__) || defined(__alpha__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__ia64__) || defined(__x86_64__) || defined(__s390__) - __AV_REGISTER_STRUCT_RETURN = 1<<9, -#endif -#if defined(__mips__) && !defined(__mipsn32__) - __AV_FLOAT_1 = 1<<10, - __AV_FLOAT_2 = 1<<11, -#endif - - __AV_flag_for_broken_compilers_that_dont_like_trailing_commas -}; - -typedef struct -{ - /* function to be called */ - __avword (*func)(); - /* some av_... macros need these flags */ - int flags; - /* return type, address for the result */ - void* raddr; - enum __AVtype rtype; - unsigned long rsize; - /* current pointer into the args[] array */ - __avword* aptr; -#if defined(__sparc__) || defined(__sparc64__) || defined(__hppa__) || (defined(__rs6000__) && !defined(_AIX) && !(defined(__MACH__) && defined(__APPLE__))) || defined(__s390__) - /* limit pointer into the args[] array */ - __avword* eptr; -#endif -#if defined(__i386__) && 0 - /* Filler word, needed if the numbers of words up to now in this structure */ - /* is odd (because on MSVC, alignof(double) = 8, normally = 4). */ - __avword filler1; -#endif -#if defined(__i386__) || defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__hppa__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__s390__) - /* temporary storage, used to split doubles into two words */ - union { - double _double; -#if defined(__sparc__) && !defined(__sparc64__) && defined(HAVE_LONGLONG) - long long _longlong; -#endif - __avword words[2]; - } tmp; -#endif -#if defined(__x86_64__) - /* store the integer arguments in an extra array */ - __avword* iaptr; - __avword iargs[6]; -#endif -#if defined(__mips__) && !defined(__mipsn32__) - /* store the floating-point arguments in an extra array */ - int anum; - double floatarg[2]; -#endif -#if defined(__mipsn32__) || defined(__mips64__) - /* store the floating-point arguments in an extra array */ - int anum; /* redundant: (LIST).aptr = &(LIST).args[(LIST).anum] */ - unsigned int farg_mask; /* bitmask of those entries in farg[] which have a value */ - unsigned int darg_mask; /* bitmask of those entries in args[] which have a double value */ - float farg[8]; -#endif -#if defined(__sparc64__) - /* store the floating-point arguments in an extra array */ - int anum; /* redundant: (LIST).aptr = &(LIST).args[(LIST).anum] */ - unsigned int farg_mask; /* bitmask of those entries in farg[] which have a value */ - unsigned int darg_mask; /* bitmask of those entries in args[] which have a double value */ -#endif -#if defined(__ia64__) || defined(__x86_64__) - /* store the floating-point arguments in an extra array */ - double* faptr; - double fargs[8]; -#endif - __avword args[__AV_ALIST_WORDS]; /* sizeof(double)-aligned */ -#if defined(__rs6000__) - /* store the floating-point arguments in an extra array */ - double* faptr; - double fargs[13]; -#endif -#if defined(__s390__) - /* store the floating-point arguments in an extra array */ - int fargwords; - float* faptr; - float fargs[2]; - int* fargsusedptr; - int fargsused[2]; - double* daptr; - double dargs[2]; - int* dargsusedptr; - int dargsused[2]; -#endif -#if defined(AMIGA) - /* store the arguments passed in registers in an extra array */ - __avword regargs[8+7]; -#endif -} av_alist; - -/* The limit for the pointer into the args[] array. */ -#if defined(__sparc__) || defined(__sparc64__) || defined(__hppa__) || (defined(__rs6000__) && !defined(_AIX) && !(defined(__MACH__) && defined(__APPLE__))) || defined(__s390) -#define __av_eptr(LIST) ((LIST).eptr) -#else -#define __av_eptr(LIST) (&(LIST).args[__AV_ALIST_WORDS]) -#endif - -/* Delayed overflow detection */ -#if defined(__hppa__) -#define av_overflown(LIST) ((LIST).aptr < __av_eptr(LIST)) -#else -#define av_overflown(LIST) ((LIST).aptr > __av_eptr(LIST)) -#endif - - -/* - * av_start_ macros which specify the return type - */ - -#define __AV_START_FLAGS \ - __AV_STRUCT_RETURN | __AV_FLOAT_RETURN | __AV_STRUCT_ARGS | __AV_FLOAT_ARGS | __AV_INTEGERS | __AV_CLEANUP - -#define __av_start(LIST,FUNC,RADDR,RETTYPE) \ - ((LIST).func = (__avword(*)())(FUNC), \ - (LIST).raddr = (void*)(RADDR), \ - (LIST).rtype = (RETTYPE), \ - __av_start1(LIST) \ - (LIST).flags = __AV_START_FLAGS) - -#if defined(__i386__) || defined(__m68k__) || defined(__alpha__) || defined(__arm__) || defined(__m88k__) || defined(__convex__) -#define __av_start1(LIST) \ - (LIST).aptr = &(LIST).args[0], -#endif -#if defined(__mips__) && !defined(__mipsn32__) -#define __av_start1(LIST) \ - (LIST).anum = 0, \ - (LIST).aptr = &(LIST).args[0], -#endif -#if defined(__mipsn32__) || defined(__mips64__) -#define __av_start1(LIST) \ - (LIST).anum = 0, \ - (LIST).farg_mask = 0, \ - (LIST).darg_mask = 0, \ - (LIST).aptr = &(LIST).args[0], -#endif -#if defined(__sparc__) && !defined(__sparc64__) -#define __av_start1(LIST) \ - (LIST).aptr = &(LIST).args[0], \ - (LIST).eptr = &(LIST).args[__AV_ALIST_WORDS], -#endif -#if defined(__sparc64__) -#define __av_start1(LIST) \ - (LIST).anum = 0, \ - (LIST).farg_mask = 0, \ - (LIST).darg_mask = 0, \ - (LIST).aptr = &(LIST).args[0], \ - (LIST).eptr = &(LIST).args[__AV_ALIST_WORDS], -#endif -#if defined(__hppa__) -#define __av_start1(LIST) \ - (LIST).aptr = &(LIST).args[__AV_ALIST_WORDS], \ - (LIST).eptr = &(LIST).args[0], -#endif -#if defined(__rs6000__) -#if defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)) -#define __av_start1(LIST) \ - (LIST).aptr = &(LIST).args[0], \ - (LIST).faptr = &(LIST).fargs[0], -#else -#define __av_start1(LIST) \ - (LIST).aptr = &(LIST).args[0], \ - (LIST).faptr = &(LIST).fargs[0], \ - (LIST).eptr = &(LIST).args[__AV_ALIST_WORDS], -#endif -#endif -#if defined(__s390__) -#define __av_start1(LIST) \ - (LIST).aptr = &(LIST).args[0], \ - (LIST).fargwords = 0, \ - (LIST).faptr = &(LIST).fargs[0], \ - (LIST).daptr = &(LIST).dargs[0], \ - (LIST).fargsusedptr = &(LIST).fargsused[0], \ - (LIST).dargsusedptr = &(LIST).dargsused[0], \ - (LIST).eptr = &(LIST).args[__AV_ALIST_WORDS], -#endif -#if defined(__ia64__) -#define __av_start1(LIST) \ - (LIST).aptr = &(LIST).args[0], \ - (LIST).faptr = &(LIST).fargs[0], -#endif -#if defined(__x86_64__) -#define __av_start1(LIST) \ - (LIST).aptr = &(LIST).args[0], \ - (LIST).iaptr = &(LIST).iargs[0], \ - (LIST).faptr = &(LIST).fargs[0], -#endif - -#define av_start_void(LIST,FUNC) __av_start(LIST,FUNC,0, __AVvoid) -#define av_start_char(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVchar) -#define av_start_schar(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVschar) -#define av_start_uchar(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVuchar) -#define av_start_short(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVshort) -#define av_start_ushort(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVushort) -#define av_start_int(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVint) -#define av_start_uint(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVuint) -#define av_start_long(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVlong) -#define av_start_ulong(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVulong) -#define av_start_longlong(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVlonglong) -#define av_start_ulonglong(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVulonglong) -#define av_start_float(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVfloat) -#define av_start_double(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVdouble) -#define av_start_ptr(LIST,FUNC,TYPE,RADDR) __av_start(LIST,FUNC,RADDR,__AVvoidp) - -#define av_start_struct(LIST,FUNC,TYPE,TYPE_SPLITTABLE,RADDR) \ - _av_start_struct(LIST,FUNC,sizeof(TYPE),TYPE_SPLITTABLE,RADDR) -#define _av_start_struct(LIST,FUNC,TYPE_SIZE,TYPE_SPLITTABLE,RADDR) \ - (__av_start(LIST,FUNC,RADDR,__AVstruct), \ - (LIST).rsize = TYPE_SIZE, \ - __av_start_struct1(LIST,TYPE_SIZE,TYPE_SPLITTABLE), \ - 0) - -#define __av_start_struct1(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((LIST).flags & __AV_PCC_STRUCT_RETURN \ - ? /* pcc struct return convention: \ - * called function returns pointer to value, we'll copy its contents afterwards. \ - */ \ - 0 \ - : __av_start_struct2(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ) -#if (defined(__sparc__) && !defined(__sparc64__)) || defined(__m88k__) -/* Return structure pointer is passed in a special register. - */ -#define __av_start_struct2(LIST,TYPE_SIZE,TYPE_SPLITTABLE) 0 -#else -#define __av_start_struct2(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - (((LIST).flags & __AV_SMALL_STRUCT_RETURN) \ - && __av_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ? /* <= Word-sized structures are returned in a register. */ \ - __av_start_struct3(LIST) \ - : __av_start_struct4(LIST,TYPE_SIZE) \ - ) -/* Determines whether a structure is returned in registers, - * depending on its size and its word-splittable flag. - */ -#if (defined(__i386__) && defined(_WIN32)) -#define __av_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 \ - || ((TYPE_SIZE) == 8 \ - && (((LIST).flags & __AV_MSVC_STRUCT_RETURN) \ - || ((TYPE_SPLITTABLE) \ - && ((LIST).flags & __AV_GCC_STRUCT_RETURN) \ - ) ) ) ) -/* Turn on __AV_REGISTER_STRUCT_RETURN if __AV_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __av_start_struct3(LIST) \ - ((LIST).flags |= __AV_REGISTER_STRUCT_RETURN, 0) -#endif -#if (defined(__i386__) && !defined(_WIN32)) || defined(__m68k__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__s390__) -#define __av_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 \ - || ((TYPE_SIZE) == 8 && (TYPE_SPLITTABLE) \ - && ((LIST).flags & __AV_GCC_STRUCT_RETURN) \ - ) ) -/* Turn on __AV_REGISTER_STRUCT_RETURN if __AV_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __av_start_struct3(LIST) \ - ((LIST).flags |= __AV_REGISTER_STRUCT_RETURN, 0) -#endif -#if defined(__alpha__) -#define __av_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 || (TYPE_SIZE) == 8 \ - || ((TYPE_SIZE) == 16 && (TYPE_SPLITTABLE) \ - && ((LIST).flags & __AV_GCC_STRUCT_RETURN) \ - ) ) -/* Turn on __AV_REGISTER_STRUCT_RETURN if __AV_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __av_start_struct3(LIST) \ - ((LIST).flags |= __AV_REGISTER_STRUCT_RETURN, 0) -#endif -#if defined(__hppa__) -#define __av_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((LIST).flags & __AV_OLDGCC_STRUCT_RETURN \ - ? ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4) \ - : ((TYPE_SIZE) <= 8) \ - ) -/* Test both __AV_OLDGCC_STRUCT_RETURN and __AV_SMALL_STRUCT_RETURN at run time. */ -#define __av_start_struct3(LIST) \ - 0 -#endif -#if defined(__mips__) && !defined(__mipsn32__) -#define __av_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4) -/* Test __AV_SMALL_STRUCT_RETURN instead of __AV_REGISTER_STRUCT_RETURN. */ -#define __av_start_struct3(LIST) \ - 0 -#endif -#if defined(__mipsn32__) || defined(__mips64__) -#define __av_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((LIST).flags & __AV_GCC_STRUCT_RETURN \ - ? ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 || (TYPE_SIZE) == 8) \ - : ((TYPE_SIZE) <= 16) \ - ) -/* Turn on __AV_REGISTER_STRUCT_RETURN if __AV_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __av_start_struct3(LIST) \ - ((LIST).flags |= __AV_REGISTER_STRUCT_RETURN, 0) -#endif -#if defined(__sparc64__) || defined(__ia64__) -#define __av_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) <= 32) -/* Turn on __AV_REGISTER_STRUCT_RETURN if __AV_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __av_start_struct3(LIST) \ - ((LIST).flags |= __AV_REGISTER_STRUCT_RETURN, 0) -#endif -#if defined(__x86_64__) -#define __av_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) <= 16) -/* Turn on __AV_REGISTER_STRUCT_RETURN if __AV_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __av_start_struct3(LIST) \ - ((LIST).flags |= __AV_REGISTER_STRUCT_RETURN, 0) -#endif -#if defined(__i386__) -/* Return structure pointer is passed in a special register or as first arg. */ -#define __av_start_struct4(LIST,TYPE_SIZE) \ - ((LIST).flags & __AV_NEXTGCC_STRUCT_RETURN \ - ? 0 /* special register */ \ - : (*(LIST).aptr++ = (__avword)((LIST).raddr), 0) /* first arg */ \ - ) -#endif -#if defined(__m68k__) || defined(__hppa__) || defined(__ia64__) -/* Return structure pointer is passed in a special register. - */ -#define __av_start_struct4(LIST,TYPE_SIZE) 0 -#endif -/* Return structure pointer is passed as first arg. - */ -#if defined(__alpha__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__s390__) -#define __av_start_struct4(LIST,TYPE_SIZE) \ - (*(LIST).aptr++ = (__avword)((LIST).raddr), 0) -#endif -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc64__) -#define __av_start_struct4(LIST,TYPE_SIZE) \ - (*(LIST).aptr++ = (__avword)((LIST).raddr), \ - (LIST).anum++, \ - 0 \ - ) -#endif -#if defined(__x86_64__) -#define __av_start_struct4(LIST,TYPE_SIZE) \ - (*(LIST).iaptr++ = (__avword)((LIST).raddr), 0) -#endif -#endif - - -/* - * av_ macros which specify the argument and its type - */ - -/* - * scalar argument types - */ - -#if defined(__i386__) || defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__alpha__) || defined(__arm__) || defined(__rs6000__) || defined(__m88k__) || defined(__convex__) || defined(__ia64__) || defined(__x86_64__) || defined(__s390__) -/* Floats and all integer types are passed as words, - * doubles as two words. - */ -#define __av_word(LIST,VAL) \ - (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 : ((LIST).aptr[-1] = (__avword)(VAL), 0)) -#endif -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc64__) -/* Most things are passed as integers: - */ -#define __av_word(LIST,VAL) \ - (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 : ((LIST).anum++, (LIST).aptr[-1] = (__avword)(VAL), 0)) -#endif -#if defined(__hppa__) -/* Floats and all integer types are passed as words, - * doubles as two words. - */ -#define __av_word(LIST,VAL) \ - (--(LIST).aptr < __av_eptr(LIST) \ - ? -1 : (*(LIST).aptr = (__avword)(VAL), 0)) -#endif -#if defined(AMIGA) -/* Some arguments are passed in registers. Query the macro AV_ARG_REGNUM. - * This should really be an argument to __av_word. - */ -#undef __av_word /**/ -#define __av_word(LIST,VAL) \ - ((AV_ARG_REGNUM) >= 0 \ - ? ((AV_ARG_REGNUM) < 8+7 \ - ? -1 : ((LIST).regargs[(AV_ARG_REGNUM)] = (__avword)(VAL), 0)) \ - : (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 : ((LIST).aptr[-1] = (__avword)(VAL), 0))) -#endif - -/* integer argument types */ - -#if defined(__x86_64__) -/* The first 6 integer arguments are passed in registers. */ -#define av_long(LIST,VAL) \ - ((LIST).iaptr < &(LIST).iargs[6] \ - ? (*(LIST).iaptr++ = (long)(VAL), 0) \ - : __av_word(LIST,(long)(VAL))) -#else -#define av_long(LIST,VAL) __av_word(LIST,(long)(VAL)) -#endif - -#if defined(__x86_64__) -/* The first 6 integer arguments are passed in registers. */ -#define av_ulong(LIST,VAL) \ - ((LIST).iaptr < &(LIST).iargs[6] \ - ? (*(LIST).iaptr++ = (unsigned long)(VAL), 0) \ - : __av_word(LIST,(unsigned long)(VAL))) -#else -#define av_ulong(LIST,VAL) __av_word(LIST,(unsigned long)(VAL)) -#endif - -#if defined(__x86_64__) -/* The first 6 integer arguments are passed in registers. */ -#define av_ptr(LIST,TYPE,VAL) \ - ((LIST).iaptr < &(LIST).iargs[6] \ - ? (*(LIST).iaptr++ = (__avword)(TYPE)(VAL), 0) \ - : __av_word(LIST,(TYPE)(VAL))) -#else -#define av_ptr(LIST,TYPE,VAL) __av_word(LIST,(TYPE)(VAL)) -#endif - -#define av_char av_long -#define av_schar av_long -#define av_short av_long -#define av_int av_long -#define av_uchar av_ulong -#define av_ushort av_ulong -#define av_uint av_ulong - -#if defined(__mips64__) || defined(__sparc64__) || defined(__alpha__) || defined(__ia64__) || defined(__x86_64__) -/* `long long' and `long' are identical. */ -#define av_longlong av_long -#define av_ulonglong av_ulong -#elif defined(__mipsn32__) -/* `long long' fits in __avword. */ -#define av_longlong __av_word -#define av_ulonglong(LIST,VAL) __av_word(LIST,(unsigned long long)(VAL)) -#elif defined(__i386__) || defined(__m68k__) || defined(__mips__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__hppa__) || defined(__arm__) || defined(__rs6000__) || defined(__m88k__) || defined(__convex__) || defined(__s390__) -/* `long long's are passed embedded on the arg stack. */ -#define av_longlong(LIST,VAL) __av_longlong(LIST,long long,VAL) -#define av_ulonglong(LIST,VAL) __av_longlong(LIST,unsigned long long,VAL) -#if defined(__i386__) || defined(__m68k__) || defined(__arm__) || (defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__convex__) -/* `long long's are (at most) word-aligned. */ -#define __av_longlong(LIST,TYPE,VAL) \ - (((LIST).aptr += sizeof(TYPE)/sizeof(__avword)) > __av_eptr(LIST) \ - ? -1 : (((TYPE*)(LIST).aptr)[-1] = (TYPE)(VAL), 0)) -#endif -#if defined(__mips__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__hppa__) || (defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__m88k__) || defined(__s390__) -/* `long long's have alignment 8. */ -#if defined(__mips__) -#define __av_longlong(LIST,TYPE,VAL) \ - (((LIST).aptr = (__avword*)(((__avword)(LIST).aptr+sizeof(TYPE)+__AV_alignof(TYPE)-1) & -(long)__AV_alignof(TYPE))) > __av_eptr(LIST) \ - ? -1 : ((LIST).anum++, ((TYPE*)(LIST).aptr)[-1] = (TYPE)(VAL), 0)) -#endif -#if defined(__sparc__) && !defined(__sparc64__) -/* Within the arg stack, the alignment is only 4, not 8. */ -/* This assumes sizeof(long long) == 2*sizeof(__avword). */ -#define __av_longlong(LIST,TYPE,VAL) \ - (((LIST).aptr += sizeof(TYPE)/sizeof(__avword)) > __av_eptr(LIST) \ - ? -1 : \ - ((LIST).tmp._longlong = (TYPE)(VAL), \ - (LIST).aptr[-2] = (LIST).tmp.words[0], \ - (LIST).aptr[-1] = (LIST).tmp.words[1], \ - 0)) -#endif -#if defined(__hppa__) -#define __av_longlong(LIST,TYPE,VAL) \ - (((LIST).aptr = (__avword*)(((__avword)(LIST).aptr & -(long)__AV_alignof(TYPE)) - sizeof(TYPE))) < __av_eptr(LIST) \ - ? -1 : (*(TYPE*)(LIST).aptr = (TYPE)(VAL), 0)) -#endif -#if (defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__m88k__) -#define __av_longlong(LIST,TYPE,VAL) \ - (((LIST).aptr = (__avword*)(((__avword)(LIST).aptr+sizeof(TYPE)+__AV_alignof(TYPE)-1) & -(long)__AV_alignof(TYPE))) > __av_eptr(LIST) \ - ? -1 : (((TYPE*)(LIST).aptr)[-1] = (TYPE)(VAL), 0)) -#endif -#if defined(__s390__) -#define __av_longlong(LIST,TYPE,VAL) \ - (((LIST).aptr = (__avword*)(((__avword)(LIST).aptr+sizeof(TYPE)+__AV_alignof(TYPE)-1) & -(long)__AV_alignof(TYPE))) > __av_eptr(LIST) \ - ? -1 : \ - (((LIST).aptr - (LIST).args - (LIST).fargwords == 4 ? ++(LIST).aptr,0 : 0), \ - (((TYPE*)(LIST).aptr)[-1] = (TYPE)(VAL), 0))) -#endif -#endif -#endif - -/* floating-point argument types */ - -#define av_float(LIST,VAL) \ - ((LIST).flags & __AV_TRADITIONAL_FLOAT_ARGS \ - ? av_double(LIST,(float)(VAL)) \ - : __av_float(LIST,VAL)) - -#if defined(__i386__) || defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__arm__) || defined(__convex__) - -#define __av_float(LIST,VAL) \ - (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 : (((float*)(LIST).aptr)[-1] = (float)(VAL), 0)) - -/* This assumes sizeof(double) == 2*sizeof(__avword). */ -#define av_double(LIST,VAL) \ - (((LIST).aptr += 2) > __av_eptr(LIST) \ - ? -1 : \ - ((LIST).tmp._double = (double)(VAL), \ - (LIST).aptr[-2] = (LIST).tmp.words[0], \ - (LIST).aptr[-1] = (LIST).tmp.words[1], \ - 0)) - -#endif - -#if defined(__mips__) && !defined(__mipsn32__) - -/* Up to 2 leading float or double non-varargs args can be passed in - * float registers, but we also push them into the corresponding int - * registers in case of varargs. For doubles we need to align the aptr - * to an even boundary. - */ -#define __av_float(LIST,VAL) \ - (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 : ((++(LIST).anum == 1 \ - ? ((LIST).flags |= __AV_FLOAT_1, \ - ((float*)(LIST).floatarg)[1] = ((float*)(LIST).aptr)[-1] = (float)(VAL))\ - : (LIST).anum == 2 && ((LIST).flags & __AV_FLOAT_1) \ - ? ((LIST).flags |= __AV_FLOAT_2, \ - ((float*)(LIST).floatarg)[3] = ((float*)(LIST).aptr)[-1] = (float)(VAL))\ - : (*(float*)&(LIST).aptr[-1] = (float)(VAL))), \ - 0)) - -#define av_double(LIST,VAL) \ - (((LIST).aptr = (__avword*)(((__avword)(LIST).aptr+15)&-8)) \ - > __av_eptr(LIST) \ - ? -1 : ((++(LIST).anum == 1 \ - ? ((LIST).flags |= __AV_FLOAT_1, \ - (LIST).floatarg[0] = ((double*)(LIST).aptr)[-1] = (double)(VAL))\ - : (LIST).anum == 2 && ((LIST).flags & __AV_FLOAT_1) \ - ? ((LIST).flags |= __AV_FLOAT_2, \ - (LIST).floatarg[1] = ((double*)(LIST).aptr)[-1] = (double)(VAL))\ - : (((double*)(LIST).aptr)[-1] = (double)(VAL))), \ - 0)) - -#endif - -#if defined(__mipsn32__) || defined(__mips64__) - -/* Up to 8 leading float or double non-varargs args can be passed in - * float registers, but we also push them into the corresponding int - * registers in case of varargs. - */ -#define __av_float(LIST,VAL) \ - ((LIST).aptr >= __av_eptr(LIST) \ - ? -1 : (((LIST).anum < 8 \ - ? ((LIST).farg_mask |= (1 << (LIST).anum), \ - (LIST).farg[(LIST).anum] = *(float*)(LIST).aptr = (float)(VAL)) \ - : (*(float*)(LIST).aptr = (float)(VAL))), \ - (LIST).anum++, \ - (LIST).aptr++, \ - 0)) - -#define av_double(LIST,VAL) \ - ((LIST).aptr >= __av_eptr(LIST) \ - ? -1 : (((LIST).anum < 8 && ((LIST).darg_mask |= (1 << (LIST).anum))), \ - *(double*)(LIST).aptr = (double)(VAL), \ - (LIST).anum++, \ - (LIST).aptr++, \ - 0)) - -#endif - -#if defined(__sparc64__) - -/* Up to 16 leading float or double non-varargs args can be passed in - * float registers, but we also push them into the corresponding int - * registers in case of varargs. - */ -#define __av_float(LIST,VAL) \ - ((LIST).aptr >= __av_eptr(LIST) \ - ? -1 : (((LIST).anum < 16 && ((LIST).farg_mask |= (1 << (LIST).anum))), \ - (*(float*)(LIST).aptr = (float)(VAL)), \ - (LIST).anum++, \ - (LIST).aptr++, \ - 0)) - -#define av_double(LIST,VAL) \ - ((LIST).aptr >= __av_eptr(LIST) \ - ? -1 : (((LIST).anum < 16 && ((LIST).darg_mask |= (1 << (LIST).anum))), \ - *(double*)(LIST).aptr = (double)(VAL), \ - (LIST).anum++, \ - (LIST).aptr++, \ - 0)) - -#endif - -#if defined(__alpha__) - -#define av_double(LIST,VAL) \ - (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 : (((double*)(LIST).aptr)[-1] = (double)(VAL), 0)) - -#define __av_float(LIST,VAL) \ - (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 \ - : (((LIST).aptr > &(LIST).args[6] \ - ? /* These args will be fetched from memory using "lds" instructions */ \ - /* therefore store them as floats */ \ - (*(float*)((LIST).aptr-1) = (float)(VAL)) \ - : /* The first 6 args will be put into registers by "ldt" instructions */ \ - /* (see avcall-alpha.c!). Therefore store them as doubles. */ \ - /* When viewed as floats, the value will be the correct one. */\ - (*(double*)((LIST).aptr-1) = (double)(float)(VAL)) \ - ), 0)) - -#endif - -#if defined(__hppa__) - -#define __av_float(LIST,VAL) \ - (--(LIST).aptr < __av_eptr(LIST) \ - ? -1 : (*(float*)(LIST).aptr = (float)(VAL), 0)) - -#define av_double(LIST,VAL) \ - (((LIST).aptr = (__avword*)(((long)(LIST).aptr-sizeof(double)) & -(long)sizeof(double))) \ - < __av_eptr(LIST) \ - ? -1 : (*(double*)(LIST).aptr = (double)(VAL), 0)) - -#endif - -#if defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) - -/* Up to 13 float or double non-varargs args can be passed in - * float registers, but we also push them into the corresponding int - * registers in case of varargs. - */ - -#define __av_float(LIST,VAL) \ - (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 : (((float*)(LIST).aptr)[-1] = (float)(VAL), \ - (LIST).faptr < &(LIST).fargs[13] && \ - (*(LIST).faptr++ = (double)(float)(VAL)), \ - 0)) - -#define av_double(LIST,VAL) \ - (((LIST).aptr += 2) > __av_eptr(LIST) \ - ? -1 : \ - ((LIST).tmp._double = (double)(VAL), \ - (LIST).aptr[-2] = (LIST).tmp.words[0], \ - (LIST).aptr[-1] = (LIST).tmp.words[1], \ - (LIST).faptr < &(LIST).fargs[13] && \ - (*(LIST).faptr++ = (LIST).tmp._double), \ - 0)) - -#endif - -#if defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) - -/* Up to 8 float or double non-varargs args can be passed in - * float registers, without occupying space in the general registers. - */ - -#define __av_float(LIST,VAL) \ - ((LIST).faptr < &(LIST).fargs[8] \ - ? ((*(LIST).faptr++ = (double)(float)(VAL)), 0) \ - : (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 : (((float*)(LIST).aptr)[-1] = (float)(VAL), 0))) - -#define av_double(LIST,VAL) \ - ((LIST).faptr < &(LIST).fargs[8] \ - ? ((*(LIST).faptr++ = (double)(VAL)), 0) \ - : (((LIST).aptr += 2) > __av_eptr(LIST) \ - ? -1 : \ - ((LIST).tmp._double = (double)(VAL), \ - (LIST).aptr[-2] = (LIST).tmp.words[0], \ - (LIST).aptr[-1] = (LIST).tmp.words[1], \ - 0))) - -#endif - -#if defined(__s390__) - -/* Up to 2 float or double non-varargs args can be passed in - * float registers, without occupying space in the general registers. - */ - -#define __av_float(LIST,VAL) \ - ((LIST).faptr < &(LIST).fargs[2] \ - ? (LIST).daptr++, *(LIST).fargsusedptr++ = 1, *(LIST).dargsusedptr++ = 0, ((*(LIST).faptr++ = (float)(VAL)), 0) \ - : (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 : ((LIST).fargwords++, ((float*)(LIST).aptr)[-1] = (float)(VAL), 0))) - -#define av_double(LIST,VAL) \ - ((LIST).daptr < &(LIST).dargs[2] \ - ? (LIST).faptr++, *(LIST).dargsusedptr++ = 1, *(LIST).fargsusedptr++ = 0, ((*(LIST).daptr++ = (double)(VAL)), 0) \ - : (((LIST).aptr += 2) > __av_eptr(LIST) \ - ? -1 : \ - ((LIST).fargwords+=2, (LIST).tmp._double = (double)(VAL), \ - (LIST).aptr[-2] = (LIST).tmp.words[0], \ - (LIST).aptr[-1] = (LIST).tmp.words[1], \ - 0))) - -#endif - -#if defined(__m88k__) - -#define __av_float(LIST,VAL) \ - (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 : (((float*)(LIST).aptr)[-1] = (float)(VAL), 0)) - -#define av_double(LIST,VAL) \ - (((LIST).aptr = (__avword*)(((long)(LIST).aptr+sizeof(double)+sizeof(double)-1) & -(long)sizeof(double))) \ - > __av_eptr(LIST) \ - ? -1 : (((double*)(LIST).aptr)[-1] = (double)(VAL), 0)) - -#endif - -#if defined(__ia64__) - -/* Up to 8 leading float or double non-varargs args can be passed in - * float registers, but we also push them into the corresponding int - * registers in case of varargs. - */ -#define __av_float(LIST,VAL) \ - ((LIST).aptr >= __av_eptr(LIST) \ - ? -1 : ((*(float*)(LIST).aptr = (float)(VAL)), \ - ((LIST).faptr < &(LIST).fargs[8] && (*(LIST).faptr = *(float*)(LIST).aptr, (LIST).faptr++)), \ - (LIST).aptr++, \ - 0)) - -#define av_double(LIST,VAL) \ - ((LIST).aptr >= __av_eptr(LIST) \ - ? -1 : (*(double*)(LIST).aptr = (double)(VAL), \ - ((LIST).faptr < &(LIST).fargs[8] && (*(LIST).faptr = *(double*)(LIST).aptr, (LIST).faptr++)), \ - (LIST).aptr++, \ - 0)) - -#endif - -#if defined(__x86_64__) - -/* Up to 8 leading float or double args can be passed in float registers. - */ -#define __av_float(LIST,VAL) \ - ((LIST).faptr < &(LIST).fargs[8] \ - ? (*(LIST).faptr = 0.0, *(float*)(LIST).faptr = (float)(VAL), \ - (LIST).faptr++, \ - 0) \ - : ((LIST).aptr >= __av_eptr(LIST) \ - ? -1 : ((*(float*)(LIST).aptr = (float)(VAL)), \ - (LIST).aptr++, \ - 0))) - -#define av_double(LIST,VAL) \ - ((LIST).faptr < &(LIST).fargs[8] \ - ? (*(LIST).faptr = (double)(VAL), \ - (LIST).faptr++, \ - 0) \ - : ((LIST).aptr >= __av_eptr(LIST) \ - ? -1 : ((*(double*)(LIST).aptr = (double)(VAL)), \ - (LIST).aptr++, \ - 0))) - -#endif - -/* - * structure argument types - */ - -#define av_struct(LIST,TYPE,VAL) \ - __av_struct(LIST,TYPE,sizeof(TYPE),__AV_alignof(TYPE),__av_struct_assign,VAL) -#define __av_struct_assign(TYPE,TYPE_SIZE,TYPE_ALIGN,PLACE,VAL) \ - *(TYPE*)(PLACE) = (VAL) -/* _av_struct() is like av_struct(), except that you pass the type's size and alignment - * and the value's address instead of the type and the value themselves. - */ -#define _av_struct(LIST,TYPE_SIZE,TYPE_ALIGN,VAL_ADDR) \ - __av_struct(LIST,unknown,TYPE_SIZE,TYPE_ALIGN,__av_struct_copy,VAL_ADDR) -#define __av_struct_copy(TYPE,TYPE_SIZE,TYPE_ALIGN,PLACE,VAL_ADDR) \ - __structcpy(PLACE,VAL_ADDR,TYPE_SIZE,TYPE_ALIGN) -/* Structure argument alignment. */ -#if defined(__i386__) && defined(_MSC_VER) -/* In MSVC, doubles inside structures have alignment 8, i.e. - * __AV_alignof(double) = 8, but doubles (and also structures containing - * doubles) are passed on the stack with alignment 4. Looks really weird. - */ -#define __av_struct_alignment(TYPE_ALIGN) \ - ((TYPE_ALIGN) <= 4 ? (TYPE_ALIGN) : 4) -#else -#define __av_struct_alignment(TYPE_ALIGN) \ - (TYPE_ALIGN) -#endif -#if defined(__i386__) || defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) || defined(__alpha__) || (defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__m88k__) || defined(__ia64__) || defined(__s390__) -/* Structures are passed as fully aligned structures on the arg stack. - * We align the aptr, store the structure, then fill to word alignment. - * Single-small-integer structures are NOT promoted to integers and have - * different alignment. - */ -/* little endian -> small structures < 1 word are adjusted to the left */ -#if defined(__i386__) || defined(__alpha__) || defined(__x86_64__) -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - (((LIST).aptr = \ - (__avword*)(((__avword)(LIST).aptr+(TYPE_SIZE)+__av_struct_alignment(TYPE_ALIGN)-1) & -(long)__av_struct_alignment(TYPE_ALIGN)))\ - > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - (LIST).aptr = (__avword*)(((__avword)(LIST).aptr+sizeof(__avword)-1) & -(long)sizeof(__avword)),\ - 0)) -#endif -#if defined(__ia64__) -/* Types larger than a word have 2-word alignment. */ -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - ((LIST).aptr = (__avword*)(((__avword)(LIST).aptr+(TYPE_SIZE)+__av_struct_alignment(TYPE_ALIGN)-1) & -(long)__av_struct_alignment(TYPE_ALIGN)), \ - ((TYPE_SIZE) > sizeof(__avword) && (((LIST).aptr - &(LIST).args[0]) & 1) ? ++(LIST).aptr : 0), \ - ((LIST).aptr > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - (LIST).aptr = (__avword*)(((__avword)(LIST).aptr+sizeof(__avword)-1) & -(long)sizeof(__avword)),\ - 0))) -#endif -/* small structures < 1 word are adjusted depending on compiler */ -#if defined(__mips__) && !defined(__mipsn32__) -#define __av_struct_leftadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - (((LIST).aptr = \ - (__avword*)(((__avword)(LIST).aptr+(TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN)))\ - > __av_eptr(LIST) \ - ? -1 : (++(LIST).anum, \ - ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - (LIST).aptr = (__avword*)(((__avword)(LIST).aptr+sizeof(__avword)-1) & -(long)sizeof(__avword)),\ - 0)) -#define __av_struct_rightadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - (((LIST).aptr = \ - (__avword*)(((((__avword)(LIST).aptr+(TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN))\ - +sizeof(__avword)-1) & -(long)sizeof(__avword))) \ - > __av_eptr(LIST) \ - ? -1 : (++(LIST).anum, \ - ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - 0)) -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - ((LIST).flags & __AV_SGICC_STRUCT_ARGS \ - ? /* SGI MIPS cc passes small structures left-adjusted, although big-endian! */\ - __av_struct_leftadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - : /* SGI MIPS gcc passes small structures within the first four words left- \ - * adjusted, for compatibility with cc. But structures in memory are passed \ - * right-adjusted!! See gcc-2.6.3/config/mips/mips.c:function_arg(). \ - */ \ - ((LIST).aptr < &(LIST).args[4] \ - ? __av_struct_leftadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - : __av_struct_rightadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL))) -#endif -#if defined(__mipsn32__) || defined(__mips64__) -/* When a structure is passed (partially) in registers, it is passed in the - * integer registers, except that doubles within the structure are passed in - * the floating point registers. Instead of distinguishing these cases, we - * always pass the structure in both the integer and the floating point - * registers. - */ -#define __av_struct_leftadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - (((LIST).aptr = \ - (__avword*)(((__avword)(LIST).aptr+(TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN)))\ - > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - (LIST).aptr = (__avword*)(((__avword)(LIST).aptr+sizeof(__avword)-1) & -(long)sizeof(__avword)),\ - ((LIST).anum < 8 && ((LIST).darg_mask |= (-1 << (LIST).anum))), \ - (LIST).anum += (((((TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN)) + sizeof(__avword)-1) & -(long)sizeof(__avword))/sizeof(__avword),\ - (LIST).darg_mask &= (1 << ((LIST).anum < 8 ? (LIST).anum : 8)) - 1, \ - 0)) -#define __av_struct_rightadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - (((LIST).aptr = \ - (__avword*)(((((__avword)(LIST).aptr+(TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN))\ - +sizeof(__avword)-1) & -(long)sizeof(__avword))) \ - > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - ((LIST).anum < 8 && ((LIST).darg_mask |= (-1 << (LIST).anum))), \ - (LIST).anum += (((((TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN)) + sizeof(__avword)-1) & -(long)sizeof(__avword))/sizeof(__avword),\ - (LIST).darg_mask &= (1 << ((LIST).anum < 8 ? (LIST).anum : 8)) - 1, \ - 0)) -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - ((LIST).flags & __AV_SGICC_STRUCT_ARGS \ - ? /* SGI MIPS cc passes small structures left-adjusted, although big-endian! */\ - __av_struct_leftadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - : /* SGI MIPS gcc passes small structures right-adjusted. */ \ - __av_struct_rightadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL)) -#endif -#if defined(__rs6000__) -#define __av_struct_leftadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL)\ - (((LIST).aptr = \ - (__avword*)(((__avword)(LIST).aptr+(TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN)))\ - > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - (LIST).aptr = (__avword*)(((__avword)(LIST).aptr+sizeof(__avword)-1) & -(long)sizeof(__avword)),\ - 0)) -#define __av_struct_rightadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL)\ - (((LIST).aptr = \ - (__avword*)(((((__avword)(LIST).aptr+(TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN))\ - +sizeof(__avword)-1) & -(long)sizeof(__avword))) \ - > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - 0)) -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - ((LIST).flags & __AV_AIXCC_STRUCT_ARGS \ - ? /* AIX cc and xlc pass small structures left-adjusted, although big-endian! */\ - __av_struct_leftadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - : /* gcc passes small structures right-adjusted. */ \ - __av_struct_rightadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL)) -#endif -#if defined(__s390__) -#define __av_struct_rightadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL)\ - (((LIST).aptr = \ - (__avword*)(((((__avword)(LIST).aptr+(TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN))\ - +sizeof(__avword)-1) & -(long)sizeof(__avword))) \ - > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - 0)) -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ -((TYPE_SIZE) != 1 && (TYPE_SIZE) != 2 && (TYPE_SIZE) != 4 && (TYPE_SIZE) != 8 \ - ? (++(LIST).aptr \ - > ((LIST).eptr = (__avword*)((long)(LIST).eptr - (((TYPE_SIZE)+7)&-8)))\ - ? -1 : \ - (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)(LIST).eptr,VAL), \ - (LIST).aptr[-1] = (__avword)(LIST).eptr, \ - 0)) \ - : (((TYPE_SIZE) == 8 && (LIST).aptr - (LIST).args - (LIST).fargwords == 4 ? ++(LIST).aptr,0 : 0), \ - __av_struct_rightadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL))) -#endif -/* big endian -> small structures < 1 word are adjusted to the right */ -#if defined(__m88k__) -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - (((LIST).aptr = \ - (__avword*)(((((__avword)(LIST).aptr+(TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN))\ - +sizeof(__avword)-1) & -(long)sizeof(__avword))) \ - > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - 0)) -#endif -#endif -#if defined(__m68k__) || defined(__arm__) || defined(__convex__) -/* Structures are passed as embedded copies on the arg stack. - */ -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - (((LIST).aptr = (__avword*)(((long)(LIST).aptr+(TYPE_SIZE)+sizeof(__avword)-1) & -(long)sizeof(__avword))) \ - > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - 0)) -#endif -#if (defined(__sparc__) && !defined(__sparc64__)) || (defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) -/* Structures are passed as pointers to caller-made local copies. We - * grab space for the copies from the end of the argument list space - * and always use maximal (double) alignment. - */ -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - (++(LIST).aptr \ - > ((LIST).eptr = (__avword*)((long)(LIST).eptr - (((TYPE_SIZE)+7)&-8)))\ - ? -1 : \ - (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)(LIST).eptr,VAL), \ - (LIST).aptr[-1] = (__avword)(LIST).eptr, \ - 0)) -#endif -#if defined(__sparc64__) -/* Structures <= 16 bytes are passed as embedded copies on the arg stack, - * left-adjusted (although big-endian!). - * When a structure is passed (partially) in registers, it is passed in the - * integer registers, except that floats and doubles within the structure - * are passed in the floating point registers. Instead of distinguishing - * these cases, we always pass the structure in both the integer and the - * floating point registers. - * Big structures are passed as pointers to caller-made local copies. - * FIXME: Shouldn't (LIST).anum be incremented in sync with (LIST).aptr ? - */ -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - ((TYPE_SIZE) > 16 \ - ? (++(LIST).aptr \ - > ((LIST).eptr = (__avword*)((long)(LIST).eptr - (((TYPE_SIZE)+7)&-8)))\ - ? -1 : \ - (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)(LIST).eptr,VAL), \ - (LIST).aptr[-1] = (__avword)(LIST).eptr, \ - 0)) \ - : (((LIST).aptr = \ - (__avword*)(((__avword)(LIST).aptr+(TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN)))\ - > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - (LIST).aptr = (__avword*)(((__avword)(LIST).aptr+sizeof(__avword)-1) & -(long)sizeof(__avword)),\ - ((LIST).anum < 16 \ - && ((LIST).farg_mask |= (-1 << (LIST).anum), \ - (LIST).darg_mask |= (-1 << (LIST).anum))), \ - (LIST).anum += (((((TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN)) + sizeof(__avword)-1) & -(long)sizeof(__avword))/sizeof(__avword),\ - (LIST).farg_mask &= (1 << ((LIST).anum < 16 ? (LIST).anum : 16)) - 1, \ - (LIST).darg_mask &= (1 << ((LIST).anum < 16 ? (LIST).anum : 16)) - 1, \ - 0))) -#endif -#if defined(__hppa__) -/* Structures <= 8 bytes are passed as embedded copies on the arg stack. - * Big structures are passed as pointers to caller-made local copies. - */ -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - ((TYPE_SIZE) > 8 \ - ? (--(LIST).aptr \ - < ((LIST).eptr = (__avword*)((long)(LIST).eptr + (((TYPE_SIZE) + 7) & -8))) \ - ? -1 \ - : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((long)(LIST).eptr - (((TYPE_SIZE) + 7) & -8)), VAL), \ - *(LIST).aptr = (__avword)((long)(LIST).eptr - (((TYPE_SIZE) + 7) & -8)), \ - 0)) \ - : ((TYPE_SIZE) > 4 \ - ? (((LIST).aptr = (__avword*)((((long)(LIST).aptr & -8) - (long)(TYPE_SIZE)) & -8)) \ - < &(LIST).args[0] \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)(LIST).aptr,VAL), 0)) \ - : /* FIXME: gcc-2.6.3 passes structures <= 4 bytes in memory left-adjusted! ?? */\ - (((LIST).aptr = (__avword*)(((long)(LIST).aptr & -4) - (long)(TYPE_SIZE))) \ - < &(LIST).args[0] \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)(LIST).aptr,VAL), \ - (LIST).aptr = (__avword*)((long)(LIST).aptr & -4), \ - 0)))) -#endif -#if defined(__x86_64__) -/* Structures <= 16 bytes can be passed in integer or floating-point registers - if there is enough room for the whole number of words needed by the structure - in the corresponding iargs/fargs block. We can't distinguish the two cases - and support only passing in integer registers. Other structures are passed - on the arg stack. */ -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - ((LIST).iaptr + ((TYPE_SIZE) + sizeof(__avword)-1) / sizeof(__avword) <= &(LIST).iargs[6] \ - ? (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)(LIST).iaptr,VAL), \ - (LIST).iaptr += ((TYPE_SIZE) + sizeof(__avword)-1) / sizeof(__avword), \ - 0) \ - : ((LIST).aptr = (__avword*)((__avword)(LIST).aptr + (((TYPE_SIZE)+__av_struct_alignment(TYPE_ALIGN)-1) & -(long)__av_struct_alignment(TYPE_ALIGN))), \ - ((LIST).aptr > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr - (((TYPE_SIZE)+__av_struct_alignment(TYPE_ALIGN)-1) & -(long)__av_struct_alignment(TYPE_ALIGN))),VAL),\ - 0)))) -#endif - -/* - * calling the function - */ - -#define av_call(LIST) __builtin_avcall(&(LIST)) - -/* Determine whether a struct type is word-splittable, i.e. whether each of - * its components fit into a register. - * The entire computation is done at compile time. - */ -#define av_word_splittable_1(slot1) \ - (__av_offset1(slot1)/sizeof(__avword) == (__av_offset1(slot1)+sizeof(slot1)-1)/sizeof(__avword)) -#define av_word_splittable_2(slot1,slot2) \ - ((__av_offset1(slot1)/sizeof(__avword) == (__av_offset1(slot1)+sizeof(slot1)-1)/sizeof(__avword)) \ - && (__av_offset2(slot1,slot2)/sizeof(__avword) == (__av_offset2(slot1,slot2)+sizeof(slot2)-1)/sizeof(__avword)) \ - ) -#define av_word_splittable_3(slot1,slot2,slot3) \ - ((__av_offset1(slot1)/sizeof(__avword) == (__av_offset1(slot1)+sizeof(slot1)-1)/sizeof(__avword)) \ - && (__av_offset2(slot1,slot2)/sizeof(__avword) == (__av_offset2(slot1,slot2)+sizeof(slot2)-1)/sizeof(__avword)) \ - && (__av_offset3(slot1,slot2,slot3)/sizeof(__avword) == (__av_offset3(slot1,slot2,slot3)+sizeof(slot3)-1)/sizeof(__avword)) \ - ) -#define av_word_splittable_4(slot1,slot2,slot3,slot4) \ - ((__av_offset1(slot1)/sizeof(__avword) == (__av_offset1(slot1)+sizeof(slot1)-1)/sizeof(__avword)) \ - && (__av_offset2(slot1,slot2)/sizeof(__avword) == (__av_offset2(slot1,slot2)+sizeof(slot2)-1)/sizeof(__avword)) \ - && (__av_offset3(slot1,slot2,slot3)/sizeof(__avword) == (__av_offset3(slot1,slot2,slot3)+sizeof(slot3)-1)/sizeof(__avword)) \ - && (__av_offset4(slot1,slot2,slot3,slot4)/sizeof(__avword) == (__av_offset4(slot1,slot2,slot3,slot4)+sizeof(slot4)-1)/sizeof(__avword)) \ - ) -#define __av_offset1(slot1) \ - 0 -#define __av_offset2(slot1,slot2) \ - ((__av_offset1(slot1)+sizeof(slot1)+__AV_alignof(slot2)-1) & -(long)__AV_alignof(slot2)) -#define __av_offset3(slot1,slot2,slot3) \ - ((__av_offset2(slot1,slot2)+sizeof(slot2)+__AV_alignof(slot3)-1) & -(long)__AV_alignof(slot3)) -#define __av_offset4(slot1,slot2,slot3,slot4) \ - ((__av_offset3(slot1,slot2,slot3)+sizeof(slot3)+__AV_alignof(slot4)-1) & -(long)__AV_alignof(slot4)) - -/* - * Miscellaneous declarations. - */ - -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -extern int __builtin_avcall (av_alist* l); -extern void __structcpy (void* dest, void* src, unsigned long size, unsigned long alignment); -#else -extern int __builtin_avcall (); -extern void __structcpy (); -#endif - -#endif /*_avcall_h */ DELETED ffcall/avcall/avcall.h.msvc Index: ffcall/avcall/avcall.h.msvc ================================================================== --- ffcall/avcall/avcall.h.msvc +++ /dev/null @@ -1,1405 +0,0 @@ -#ifndef _avcall_h /*-*- C -*-*/ -#define _avcall_h -/** - Copyright 1993 Bill Triggs, - - Copyright 1995-2004 Bruno Haible, - - This is free software distributed under the GNU General Public - Licence described in the file COPYING. Contact the author if - you don't have this or can't live with it. There is ABSOLUTELY - NO WARRANTY, explicit or implied, on this software. -**/ -/*---------------------------------------------------------------------- - av_call() foreign function interface. - - Varargs-style macros to build a C argument list incrementally - and call a function on it. - ----------------------------------------------------------------------*/ - - -/* These definitions are adjusted by `configure' automatically. */ - -/* CPU */ -#ifndef __i386__ -#define __i386__ 1 -#endif -#ifndef __m68k__ -#undef __m68k__ -#endif -#ifndef __mips__ -#undef __mips__ -#endif -#ifndef __mipsn32__ -#undef __mipsn32__ -#endif -#ifndef __mips64__ -#undef __mips64__ -#endif -#ifndef __sparc__ -#undef __sparc__ -#endif -#ifndef __sparc64__ -#undef __sparc64__ -#endif -#ifndef __alpha__ -#undef __alpha__ -#endif -#ifndef __hppa__ -#undef __hppa__ -#endif -#ifndef __arm__ -#undef __arm__ -#endif -#ifndef __rs6000__ -#undef __rs6000__ -#endif -#ifndef __s390__ -#undef __s390__ -#endif -#ifndef __m88k__ -#undef __m88k__ -#endif -#ifndef __convex__ -#undef __convex__ -#endif -#ifndef __ia64__ -#undef __ia64__ -#endif -#ifndef __x86_64__ -#undef __x86_64__ -#endif - -/* Calling convention */ -/* Define if using pcc non-reentrant struct return convention */ -#undef __PCC_STRUCT_RETURN__ -/* Define if small structs are returned in registers */ -#define __SMALL_STRUCT_RETURN__ 1 -/* Define if floating-point results are returned in the integer registers */ -#undef __IREG_FLOAT_RETURN__ - -/* CL_LONGLONG */ -/* Define if your compiler supports the `long long' type. */ -#undef HAVE_LONGLONG - -/* End of definitions adjusted by `configure'. */ - - -/* Max # words in argument-list and temporary structure storage. - */ -#ifndef __AV_ALIST_WORDS -#define __AV_ALIST_WORDS 256 -#endif - -/* Determine the alignment of a type at compile time. - */ -#if defined(__GNUC__) -#define __AV_alignof __alignof__ -#else -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) /* SGI compiler */ -#define __AV_alignof __builtin_alignof -#else -#define __AV_offsetof(type,ident) ((unsigned long)&(((type*)0)->ident)) -#define __AV_alignof(type) __AV_offsetof(struct { char __slot1; type __slot2; }, __slot2) -#endif -#endif - -/* C builtin types. - */ -#if defined(__mipsn32__) -typedef long long __avword; -#else -typedef long __avword; -#endif - -enum __AVtype -{ - __AVword, - __AVvoid, - __AVchar, - __AVschar, - __AVuchar, - __AVshort, - __AVushort, - __AVint, - __AVuint, - __AVlong, - __AVulong, - __AVlonglong, - __AVulonglong, - __AVfloat, - __AVdouble, - __AVvoidp, - __AVstruct -}; - -enum __AV_alist_flags -{ - - /* how to return structs */ - /* There are basically 3 ways to return structs: - * a. The called function returns a pointer to static data. Not reentrant. - * b. The caller passes the return structure address in a dedicated register - * or as a first (or last), invisible argument. The called function stores - * its result there. - * c. Like b, and the called function also returns the return structure - * address in the return value register. (This is not very distinguishable - * from b.) - * Independently of this, - * r. small structures (<= 4 or <= 8 bytes) may be returned in the return - * value register(s), or - * m. even small structures are passed in memory. - */ - /* gcc-2.6.3 employs the following strategy: - * - If PCC_STATIC_STRUCT_RETURN is defined in the machine description - * it uses method a, else method c. - * - If flag_pcc_struct_return is set (either by -fpcc-struct-return or if - * DEFAULT_PCC_STRUCT_RETURN is defined to 1 in the machine description) - * it uses method m, else (either by -freg-struct-return or if - * DEFAULT_PCC_STRUCT_RETURN is defined to 0 in the machine description) - * method r. - */ - __AV_PCC_STRUCT_RETURN = 1<<0, /* a: need to copy the struct */ - __AV_SMALL_STRUCT_RETURN = 1<<1, /* r: special case for small structs */ - __AV_GCC_STRUCT_RETURN = 1<<2, /* consider 8 byte structs as small */ -#if defined(__sparc__) && !defined(__sparc64__) - __AV_SUNCC_STRUCT_RETURN = 1<<3, - __AV_SUNPROCC_STRUCT_RETURN = 1<<4, -#endif -#if defined(__i386__) - __AV_NEXTGCC_STRUCT_RETURN = 1<<3, - __AV_MSVC_STRUCT_RETURN = 1<<4, -#endif -#if defined(__hppa__) - __AV_OLDGCC_STRUCT_RETURN = 1<<3, -#endif - /* the default way to return structs */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another struct returning convention, - * just #define __AV_STRUCT_RETURN ... - * before or after #including . - */ -#ifndef __AV_STRUCT_RETURN - __AV_STRUCT_RETURN = -#if defined(__sparc__) && !defined(__sparc64__) && defined(sun) && defined(__SUNPRO_C) /* SUNWspro cc */ - __AV_SUNPROCC_STRUCT_RETURN, -#else -#if defined(__PCC_STRUCT_RETURN__) /* defined through configure, see above */ - __AV_PCC_STRUCT_RETURN | -#if defined(__sparc__) && !defined(__sparc64__) && defined(sun) && !(defined(__STDC__) || defined(__GNUC__)) /* sun cc */ - __AV_SUNCC_STRUCT_RETURN, -#else - 0, -#endif -#else -#if defined(__SMALL_STRUCT_RETURN__) || defined(__mipsn32__) || defined(__mips64__) /* defined through configure, see above */ - __AV_SMALL_STRUCT_RETURN | -#endif -#if defined(__GNUC__) - __AV_GCC_STRUCT_RETURN | -#endif -#if defined(__i386__) && defined(NeXT) && defined(__GNUC__) /* NeXT gcc-2.5.8 */ - __AV_NEXTGCC_STRUCT_RETURN | -#endif -#if defined(__i386__) && defined(_MSC_VER) /* MSVC 4.0 */ - __AV_MSVC_STRUCT_RETURN | -#endif -#if defined(__hppa__) && defined(__GNUC__) && (__GNUC__ < 3) && (__GNUC_MINOR__ < 7) - __AV_OLDGCC_STRUCT_RETURN | -#endif - 0, -#endif -#endif -#endif - - /* how to return floats */ -#if defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) - __AV_SUNCC_FLOAT_RETURN = 1<<5, -#endif -#if defined(__m68k__) - __AV_FREG_FLOAT_RETURN = 1<<6, -#endif - /* the default way to return floats */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float returning convention, - * just #define __AV_FLOAT_RETURN ... - * before or after #including . - */ -#ifndef __AV_FLOAT_RETURN -#if (defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__))) && !defined(__GNUC__) && defined(sun) && !defined(__SUNPRO_C) /* sun cc */ - __AV_FLOAT_RETURN = __AV_SUNCC_FLOAT_RETURN, -#elif (defined(__m68k__) && !defined(__IREG_FLOAT_RETURN__)) - __AV_FLOAT_RETURN = __AV_FREG_FLOAT_RETURN, -#else - __AV_FLOAT_RETURN = 0, -#endif -#endif - - /* how to pass structs */ -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) - __AV_SGICC_STRUCT_ARGS = 1<<7, -#endif -#if defined(__rs6000__) - __AV_AIXCC_STRUCT_ARGS = 1<<7, -#endif - /* the default way to pass floats */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float passing convention, - * just #define __AV_STRUCT_ARGS ... - * before or after #including . - */ -#ifndef __AV_STRUCT_ARGS -#if (defined(__mips__) || defined(__mipsn32__) || defined(__mips64__)) && !defined(__GNUC__) /* SGI mips cc */ - __AV_STRUCT_ARGS = __AV_SGICC_STRUCT_ARGS, -#else -#if defined(__rs6000__) && defined(_AIX) && !defined(__GNUC__) /* AIX cc, xlc */ - __AV_STRUCT_ARGS = __AV_AIXCC_STRUCT_ARGS, -#else - __AV_STRUCT_ARGS = 0, -#endif -#endif -#endif - - /* how to pass floats */ - /* ANSI C compilers and GNU gcc pass floats as floats. - * K&R C compilers pass floats as doubles. - * (Except some compilers like SGI MIPS "cc" and "cc -cckr" if a prototype is - * known for the called functions. But to compile a program with prototypes, - * "cc -ansi" is better anyway. - */ - __AV_ANSI_FLOAT_ARGS = 0, /* pass floats as floats */ - __AV_TRADITIONAL_FLOAT_ARGS = 1<<8, /* pass floats as doubles */ - /* the default way to pass floats */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float passing convention, - * just #define __AV_FLOAT_ARGS ... - * before or after #including . - */ -#ifndef __AV_FLOAT_ARGS -#if defined(__STDC__) || defined(__GNUC__) /* what about hppa "cc -Aa" ?? */ - __AV_FLOAT_ARGS = __AV_ANSI_FLOAT_ARGS, -#else - __AV_FLOAT_ARGS = __AV_TRADITIONAL_FLOAT_ARGS, -#endif -#endif - - /* how to pass and return small integer arguments */ - __AV_ANSI_INTEGERS = 0, /* no promotions */ - __AV_TRADITIONAL_INTEGERS = 0, /* promote [u]char, [u]short to [u]int */ - /* Fortunately these two methods are compatible. Our macros work with both. */ - /* the default way to pass and return small integer arguments */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float passing convention, - * just #define __AV_INTEGERS ... - * before or after #including . - */ -#ifndef __AV_INTEGERS -#if defined(__STDC__) || defined(__GNUC__) - __AV_INTEGERS = __AV_ANSI_INTEGERS, -#else - __AV_INTEGERS = __AV_TRADITIONAL_INTEGERS, -#endif -#endif - - /* stack cleanup policy */ - __AV_CDECL_CLEANUP = 0, /* caller pops args after return */ - __AV_STDCALL_CLEANUP = 0, /* callee pops args before return */ - /* currently only supported on __i386__ */ -#ifndef __AV_CLEANUP - __AV_CLEANUP = __AV_CDECL_CLEANUP, -#endif - - /* These are for internal use only */ -#if defined(__i386__) || defined(__m68k__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc64__) || defined(__alpha__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__ia64__) || defined(__x86_64__) || defined(__s390__) - __AV_REGISTER_STRUCT_RETURN = 1<<9, -#endif -#if defined(__mips__) && !defined(__mipsn32__) - __AV_FLOAT_1 = 1<<10, - __AV_FLOAT_2 = 1<<11, -#endif - - __AV_flag_for_broken_compilers_that_dont_like_trailing_commas -}; - -typedef struct -{ - /* function to be called */ - __avword (*func)(); - /* some av_... macros need these flags */ - int flags; - /* return type, address for the result */ - void* raddr; - enum __AVtype rtype; - unsigned long rsize; - /* current pointer into the args[] array */ - __avword* aptr; -#if defined(__sparc__) || defined(__sparc64__) || defined(__hppa__) || (defined(__rs6000__) && !defined(_AIX) && !(defined(__MACH__) && defined(__APPLE__))) || defined(__s390__) - /* limit pointer into the args[] array */ - __avword* eptr; -#endif -#if defined(__i386__) && 0 - /* Filler word, needed if the numbers of words up to now in this structure */ - /* is odd (because on MSVC, alignof(double) = 8, normally = 4). */ - __avword filler1; -#endif -#if defined(__i386__) || defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__hppa__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__s390__) - /* temporary storage, used to split doubles into two words */ - union { - double _double; -#if defined(__sparc__) && !defined(__sparc64__) && defined(HAVE_LONGLONG) - long long _longlong; -#endif - __avword words[2]; - } tmp; -#endif -#if defined(__x86_64__) - /* store the integer arguments in an extra array */ - __avword* iaptr; - __avword iargs[6]; -#endif -#if defined(__mips__) && !defined(__mipsn32__) - /* store the floating-point arguments in an extra array */ - int anum; - double floatarg[2]; -#endif -#if defined(__mipsn32__) || defined(__mips64__) - /* store the floating-point arguments in an extra array */ - int anum; /* redundant: (LIST).aptr = &(LIST).args[(LIST).anum] */ - unsigned int farg_mask; /* bitmask of those entries in farg[] which have a value */ - unsigned int darg_mask; /* bitmask of those entries in args[] which have a double value */ - float farg[8]; -#endif -#if defined(__sparc64__) - /* store the floating-point arguments in an extra array */ - int anum; /* redundant: (LIST).aptr = &(LIST).args[(LIST).anum] */ - unsigned int farg_mask; /* bitmask of those entries in farg[] which have a value */ - unsigned int darg_mask; /* bitmask of those entries in args[] which have a double value */ -#endif -#if defined(__ia64__) || defined(__x86_64__) - /* store the floating-point arguments in an extra array */ - double* faptr; - double fargs[8]; -#endif - __avword args[__AV_ALIST_WORDS]; /* sizeof(double)-aligned */ -#if defined(__rs6000__) - /* store the floating-point arguments in an extra array */ - double* faptr; - double fargs[13]; -#endif -#if defined(__s390__) - /* store the floating-point arguments in an extra array */ - int fargwords; - float* faptr; - float fargs[2]; - int* fargsusedptr; - int fargsused[2]; - double* daptr; - double dargs[2]; - int* dargsusedptr; - int dargsused[2]; -#endif -#if defined(AMIGA) - /* store the arguments passed in registers in an extra array */ - __avword regargs[8+7]; -#endif -} av_alist; - -/* The limit for the pointer into the args[] array. */ -#if defined(__sparc__) || defined(__sparc64__) || defined(__hppa__) || (defined(__rs6000__) && !defined(_AIX) && !(defined(__MACH__) && defined(__APPLE__))) || defined(__s390) -#define __av_eptr(LIST) ((LIST).eptr) -#else -#define __av_eptr(LIST) (&(LIST).args[__AV_ALIST_WORDS]) -#endif - -/* Delayed overflow detection */ -#if defined(__hppa__) -#define av_overflown(LIST) ((LIST).aptr < __av_eptr(LIST)) -#else -#define av_overflown(LIST) ((LIST).aptr > __av_eptr(LIST)) -#endif - - -/* - * av_start_ macros which specify the return type - */ - -#define __AV_START_FLAGS \ - __AV_STRUCT_RETURN | __AV_FLOAT_RETURN | __AV_STRUCT_ARGS | __AV_FLOAT_ARGS | __AV_INTEGERS | __AV_CLEANUP - -#define __av_start(LIST,FUNC,RADDR,RETTYPE) \ - ((LIST).func = (__avword(*)())(FUNC), \ - (LIST).raddr = (void*)(RADDR), \ - (LIST).rtype = (RETTYPE), \ - __av_start1(LIST) \ - (LIST).flags = __AV_START_FLAGS) - -#if defined(__i386__) || defined(__m68k__) || defined(__alpha__) || defined(__arm__) || defined(__m88k__) || defined(__convex__) -#define __av_start1(LIST) \ - (LIST).aptr = &(LIST).args[0], -#endif -#if defined(__mips__) && !defined(__mipsn32__) -#define __av_start1(LIST) \ - (LIST).anum = 0, \ - (LIST).aptr = &(LIST).args[0], -#endif -#if defined(__mipsn32__) || defined(__mips64__) -#define __av_start1(LIST) \ - (LIST).anum = 0, \ - (LIST).farg_mask = 0, \ - (LIST).darg_mask = 0, \ - (LIST).aptr = &(LIST).args[0], -#endif -#if defined(__sparc__) && !defined(__sparc64__) -#define __av_start1(LIST) \ - (LIST).aptr = &(LIST).args[0], \ - (LIST).eptr = &(LIST).args[__AV_ALIST_WORDS], -#endif -#if defined(__sparc64__) -#define __av_start1(LIST) \ - (LIST).anum = 0, \ - (LIST).farg_mask = 0, \ - (LIST).darg_mask = 0, \ - (LIST).aptr = &(LIST).args[0], \ - (LIST).eptr = &(LIST).args[__AV_ALIST_WORDS], -#endif -#if defined(__hppa__) -#define __av_start1(LIST) \ - (LIST).aptr = &(LIST).args[__AV_ALIST_WORDS], \ - (LIST).eptr = &(LIST).args[0], -#endif -#if defined(__rs6000__) -#if defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)) -#define __av_start1(LIST) \ - (LIST).aptr = &(LIST).args[0], \ - (LIST).faptr = &(LIST).fargs[0], -#else -#define __av_start1(LIST) \ - (LIST).aptr = &(LIST).args[0], \ - (LIST).faptr = &(LIST).fargs[0], \ - (LIST).eptr = &(LIST).args[__AV_ALIST_WORDS], -#endif -#endif -#if defined(__s390__) -#define __av_start1(LIST) \ - (LIST).aptr = &(LIST).args[0], \ - (LIST).fargwords = 0, \ - (LIST).faptr = &(LIST).fargs[0], \ - (LIST).daptr = &(LIST).dargs[0], \ - (LIST).fargsusedptr = &(LIST).fargsused[0], \ - (LIST).dargsusedptr = &(LIST).dargsused[0], \ - (LIST).eptr = &(LIST).args[__AV_ALIST_WORDS], -#endif -#if defined(__ia64__) -#define __av_start1(LIST) \ - (LIST).aptr = &(LIST).args[0], \ - (LIST).faptr = &(LIST).fargs[0], -#endif -#if defined(__x86_64__) -#define __av_start1(LIST) \ - (LIST).aptr = &(LIST).args[0], \ - (LIST).iaptr = &(LIST).iargs[0], \ - (LIST).faptr = &(LIST).fargs[0], -#endif - -#define av_start_void(LIST,FUNC) __av_start(LIST,FUNC,0, __AVvoid) -#define av_start_char(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVchar) -#define av_start_schar(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVschar) -#define av_start_uchar(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVuchar) -#define av_start_short(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVshort) -#define av_start_ushort(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVushort) -#define av_start_int(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVint) -#define av_start_uint(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVuint) -#define av_start_long(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVlong) -#define av_start_ulong(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVulong) -#define av_start_longlong(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVlonglong) -#define av_start_ulonglong(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVulonglong) -#define av_start_float(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVfloat) -#define av_start_double(LIST,FUNC,RADDR) __av_start(LIST,FUNC,RADDR,__AVdouble) -#define av_start_ptr(LIST,FUNC,TYPE,RADDR) __av_start(LIST,FUNC,RADDR,__AVvoidp) - -#define av_start_struct(LIST,FUNC,TYPE,TYPE_SPLITTABLE,RADDR) \ - _av_start_struct(LIST,FUNC,sizeof(TYPE),TYPE_SPLITTABLE,RADDR) -#define _av_start_struct(LIST,FUNC,TYPE_SIZE,TYPE_SPLITTABLE,RADDR) \ - (__av_start(LIST,FUNC,RADDR,__AVstruct), \ - (LIST).rsize = TYPE_SIZE, \ - __av_start_struct1(LIST,TYPE_SIZE,TYPE_SPLITTABLE), \ - 0) - -#define __av_start_struct1(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((LIST).flags & __AV_PCC_STRUCT_RETURN \ - ? /* pcc struct return convention: \ - * called function returns pointer to value, we'll copy its contents afterwards. \ - */ \ - 0 \ - : __av_start_struct2(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ) -#if (defined(__sparc__) && !defined(__sparc64__)) || defined(__m88k__) -/* Return structure pointer is passed in a special register. - */ -#define __av_start_struct2(LIST,TYPE_SIZE,TYPE_SPLITTABLE) 0 -#else -#define __av_start_struct2(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - (((LIST).flags & __AV_SMALL_STRUCT_RETURN) \ - && __av_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ? /* <= Word-sized structures are returned in a register. */ \ - __av_start_struct3(LIST) \ - : __av_start_struct4(LIST,TYPE_SIZE) \ - ) -/* Determines whether a structure is returned in registers, - * depending on its size and its word-splittable flag. - */ -#if (defined(__i386__) && defined(_WIN32)) -#define __av_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 \ - || ((TYPE_SIZE) == 8 \ - && (((LIST).flags & __AV_MSVC_STRUCT_RETURN) \ - || ((TYPE_SPLITTABLE) \ - && ((LIST).flags & __AV_GCC_STRUCT_RETURN) \ - ) ) ) ) -/* Turn on __AV_REGISTER_STRUCT_RETURN if __AV_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __av_start_struct3(LIST) \ - ((LIST).flags |= __AV_REGISTER_STRUCT_RETURN, 0) -#endif -#if (defined(__i386__) && !defined(_WIN32)) || defined(__m68k__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__s390__) -#define __av_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 \ - || ((TYPE_SIZE) == 8 && (TYPE_SPLITTABLE) \ - && ((LIST).flags & __AV_GCC_STRUCT_RETURN) \ - ) ) -/* Turn on __AV_REGISTER_STRUCT_RETURN if __AV_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __av_start_struct3(LIST) \ - ((LIST).flags |= __AV_REGISTER_STRUCT_RETURN, 0) -#endif -#if defined(__alpha__) -#define __av_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 || (TYPE_SIZE) == 8 \ - || ((TYPE_SIZE) == 16 && (TYPE_SPLITTABLE) \ - && ((LIST).flags & __AV_GCC_STRUCT_RETURN) \ - ) ) -/* Turn on __AV_REGISTER_STRUCT_RETURN if __AV_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __av_start_struct3(LIST) \ - ((LIST).flags |= __AV_REGISTER_STRUCT_RETURN, 0) -#endif -#if defined(__hppa__) -#define __av_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((LIST).flags & __AV_OLDGCC_STRUCT_RETURN \ - ? ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4) \ - : ((TYPE_SIZE) <= 8) \ - ) -/* Test both __AV_OLDGCC_STRUCT_RETURN and __AV_SMALL_STRUCT_RETURN at run time. */ -#define __av_start_struct3(LIST) \ - 0 -#endif -#if defined(__mips__) && !defined(__mipsn32__) -#define __av_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4) -/* Test __AV_SMALL_STRUCT_RETURN instead of __AV_REGISTER_STRUCT_RETURN. */ -#define __av_start_struct3(LIST) \ - 0 -#endif -#if defined(__mipsn32__) || defined(__mips64__) -#define __av_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((LIST).flags & __AV_GCC_STRUCT_RETURN \ - ? ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 || (TYPE_SIZE) == 8) \ - : ((TYPE_SIZE) <= 16) \ - ) -/* Turn on __AV_REGISTER_STRUCT_RETURN if __AV_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __av_start_struct3(LIST) \ - ((LIST).flags |= __AV_REGISTER_STRUCT_RETURN, 0) -#endif -#if defined(__sparc64__) || defined(__ia64__) -#define __av_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) <= 32) -/* Turn on __AV_REGISTER_STRUCT_RETURN if __AV_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __av_start_struct3(LIST) \ - ((LIST).flags |= __AV_REGISTER_STRUCT_RETURN, 0) -#endif -#if defined(__x86_64__) -#define __av_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) <= 16) -/* Turn on __AV_REGISTER_STRUCT_RETURN if __AV_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __av_start_struct3(LIST) \ - ((LIST).flags |= __AV_REGISTER_STRUCT_RETURN, 0) -#endif -#if defined(__i386__) -/* Return structure pointer is passed in a special register or as first arg. */ -#define __av_start_struct4(LIST,TYPE_SIZE) \ - ((LIST).flags & __AV_NEXTGCC_STRUCT_RETURN \ - ? 0 /* special register */ \ - : (*(LIST).aptr++ = (__avword)((LIST).raddr), 0) /* first arg */ \ - ) -#endif -#if defined(__m68k__) || defined(__hppa__) || defined(__ia64__) -/* Return structure pointer is passed in a special register. - */ -#define __av_start_struct4(LIST,TYPE_SIZE) 0 -#endif -/* Return structure pointer is passed as first arg. - */ -#if defined(__alpha__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__s390__) -#define __av_start_struct4(LIST,TYPE_SIZE) \ - (*(LIST).aptr++ = (__avword)((LIST).raddr), 0) -#endif -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc64__) -#define __av_start_struct4(LIST,TYPE_SIZE) \ - (*(LIST).aptr++ = (__avword)((LIST).raddr), \ - (LIST).anum++, \ - 0 \ - ) -#endif -#if defined(__x86_64__) -#define __av_start_struct4(LIST,TYPE_SIZE) \ - (*(LIST).iaptr++ = (__avword)((LIST).raddr), 0) -#endif -#endif - - -/* - * av_ macros which specify the argument and its type - */ - -/* - * scalar argument types - */ - -#if defined(__i386__) || defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__alpha__) || defined(__arm__) || defined(__rs6000__) || defined(__m88k__) || defined(__convex__) || defined(__ia64__) || defined(__x86_64__) || defined(__s390__) -/* Floats and all integer types are passed as words, - * doubles as two words. - */ -#define __av_word(LIST,VAL) \ - (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 : ((LIST).aptr[-1] = (__avword)(VAL), 0)) -#endif -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc64__) -/* Most things are passed as integers: - */ -#define __av_word(LIST,VAL) \ - (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 : ((LIST).anum++, (LIST).aptr[-1] = (__avword)(VAL), 0)) -#endif -#if defined(__hppa__) -/* Floats and all integer types are passed as words, - * doubles as two words. - */ -#define __av_word(LIST,VAL) \ - (--(LIST).aptr < __av_eptr(LIST) \ - ? -1 : (*(LIST).aptr = (__avword)(VAL), 0)) -#endif -#if defined(AMIGA) -/* Some arguments are passed in registers. Query the macro AV_ARG_REGNUM. - * This should really be an argument to __av_word. - */ -#undef __av_word /**/ -#define __av_word(LIST,VAL) \ - ((AV_ARG_REGNUM) >= 0 \ - ? ((AV_ARG_REGNUM) < 8+7 \ - ? -1 : ((LIST).regargs[(AV_ARG_REGNUM)] = (__avword)(VAL), 0)) \ - : (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 : ((LIST).aptr[-1] = (__avword)(VAL), 0))) -#endif - -/* integer argument types */ - -#if defined(__x86_64__) -/* The first 6 integer arguments are passed in registers. */ -#define av_long(LIST,VAL) \ - ((LIST).iaptr < &(LIST).iargs[6] \ - ? (*(LIST).iaptr++ = (long)(VAL), 0) \ - : __av_word(LIST,(long)(VAL))) -#else -#define av_long(LIST,VAL) __av_word(LIST,(long)(VAL)) -#endif - -#if defined(__x86_64__) -/* The first 6 integer arguments are passed in registers. */ -#define av_ulong(LIST,VAL) \ - ((LIST).iaptr < &(LIST).iargs[6] \ - ? (*(LIST).iaptr++ = (unsigned long)(VAL), 0) \ - : __av_word(LIST,(unsigned long)(VAL))) -#else -#define av_ulong(LIST,VAL) __av_word(LIST,(unsigned long)(VAL)) -#endif - -#if defined(__x86_64__) -/* The first 6 integer arguments are passed in registers. */ -#define av_ptr(LIST,TYPE,VAL) \ - ((LIST).iaptr < &(LIST).iargs[6] \ - ? (*(LIST).iaptr++ = (__avword)(TYPE)(VAL), 0) \ - : __av_word(LIST,(TYPE)(VAL))) -#else -#define av_ptr(LIST,TYPE,VAL) __av_word(LIST,(TYPE)(VAL)) -#endif - -#define av_char av_long -#define av_schar av_long -#define av_short av_long -#define av_int av_long -#define av_uchar av_ulong -#define av_ushort av_ulong -#define av_uint av_ulong - -#if defined(__mips64__) || defined(__sparc64__) || defined(__alpha__) || defined(__ia64__) || defined(__x86_64__) -/* `long long' and `long' are identical. */ -#define av_longlong av_long -#define av_ulonglong av_ulong -#elif defined(__mipsn32__) -/* `long long' fits in __avword. */ -#define av_longlong __av_word -#define av_ulonglong(LIST,VAL) __av_word(LIST,(unsigned long long)(VAL)) -#elif defined(__i386__) || defined(__m68k__) || defined(__mips__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__hppa__) || defined(__arm__) || defined(__rs6000__) || defined(__m88k__) || defined(__convex__) || defined(__s390__) -/* `long long's are passed embedded on the arg stack. */ -#define av_longlong(LIST,VAL) __av_longlong(LIST,long long,VAL) -#define av_ulonglong(LIST,VAL) __av_longlong(LIST,unsigned long long,VAL) -#if defined(__i386__) || defined(__m68k__) || defined(__arm__) || (defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__convex__) -/* `long long's are (at most) word-aligned. */ -#define __av_longlong(LIST,TYPE,VAL) \ - (((LIST).aptr += sizeof(TYPE)/sizeof(__avword)) > __av_eptr(LIST) \ - ? -1 : (((TYPE*)(LIST).aptr)[-1] = (TYPE)(VAL), 0)) -#endif -#if defined(__mips__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__hppa__) || (defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__m88k__) || defined(__s390__) -/* `long long's have alignment 8. */ -#if defined(__mips__) -#define __av_longlong(LIST,TYPE,VAL) \ - (((LIST).aptr = (__avword*)(((__avword)(LIST).aptr+sizeof(TYPE)+__AV_alignof(TYPE)-1) & -(long)__AV_alignof(TYPE))) > __av_eptr(LIST) \ - ? -1 : ((LIST).anum++, ((TYPE*)(LIST).aptr)[-1] = (TYPE)(VAL), 0)) -#endif -#if defined(__sparc__) && !defined(__sparc64__) -/* Within the arg stack, the alignment is only 4, not 8. */ -/* This assumes sizeof(long long) == 2*sizeof(__avword). */ -#define __av_longlong(LIST,TYPE,VAL) \ - (((LIST).aptr += sizeof(TYPE)/sizeof(__avword)) > __av_eptr(LIST) \ - ? -1 : \ - ((LIST).tmp._longlong = (TYPE)(VAL), \ - (LIST).aptr[-2] = (LIST).tmp.words[0], \ - (LIST).aptr[-1] = (LIST).tmp.words[1], \ - 0)) -#endif -#if defined(__hppa__) -#define __av_longlong(LIST,TYPE,VAL) \ - (((LIST).aptr = (__avword*)(((__avword)(LIST).aptr & -(long)__AV_alignof(TYPE)) - sizeof(TYPE))) < __av_eptr(LIST) \ - ? -1 : (*(TYPE*)(LIST).aptr = (TYPE)(VAL), 0)) -#endif -#if (defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__m88k__) -#define __av_longlong(LIST,TYPE,VAL) \ - (((LIST).aptr = (__avword*)(((__avword)(LIST).aptr+sizeof(TYPE)+__AV_alignof(TYPE)-1) & -(long)__AV_alignof(TYPE))) > __av_eptr(LIST) \ - ? -1 : (((TYPE*)(LIST).aptr)[-1] = (TYPE)(VAL), 0)) -#endif -#if defined(__s390__) -#define __av_longlong(LIST,TYPE,VAL) \ - (((LIST).aptr = (__avword*)(((__avword)(LIST).aptr+sizeof(TYPE)+__AV_alignof(TYPE)-1) & -(long)__AV_alignof(TYPE))) > __av_eptr(LIST) \ - ? -1 : \ - (((LIST).aptr - (LIST).args - (LIST).fargwords == 4 ? ++(LIST).aptr,0 : 0), \ - (((TYPE*)(LIST).aptr)[-1] = (TYPE)(VAL), 0))) -#endif -#endif -#endif - -/* floating-point argument types */ - -#define av_float(LIST,VAL) \ - ((LIST).flags & __AV_TRADITIONAL_FLOAT_ARGS \ - ? av_double(LIST,(float)(VAL)) \ - : __av_float(LIST,VAL)) - -#if defined(__i386__) || defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__arm__) || defined(__convex__) - -#define __av_float(LIST,VAL) \ - (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 : (((float*)(LIST).aptr)[-1] = (float)(VAL), 0)) - -/* This assumes sizeof(double) == 2*sizeof(__avword). */ -#define av_double(LIST,VAL) \ - (((LIST).aptr += 2) > __av_eptr(LIST) \ - ? -1 : \ - ((LIST).tmp._double = (double)(VAL), \ - (LIST).aptr[-2] = (LIST).tmp.words[0], \ - (LIST).aptr[-1] = (LIST).tmp.words[1], \ - 0)) - -#endif - -#if defined(__mips__) && !defined(__mipsn32__) - -/* Up to 2 leading float or double non-varargs args can be passed in - * float registers, but we also push them into the corresponding int - * registers in case of varargs. For doubles we need to align the aptr - * to an even boundary. - */ -#define __av_float(LIST,VAL) \ - (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 : ((++(LIST).anum == 1 \ - ? ((LIST).flags |= __AV_FLOAT_1, \ - ((float*)(LIST).floatarg)[1] = ((float*)(LIST).aptr)[-1] = (float)(VAL))\ - : (LIST).anum == 2 && ((LIST).flags & __AV_FLOAT_1) \ - ? ((LIST).flags |= __AV_FLOAT_2, \ - ((float*)(LIST).floatarg)[3] = ((float*)(LIST).aptr)[-1] = (float)(VAL))\ - : (*(float*)&(LIST).aptr[-1] = (float)(VAL))), \ - 0)) - -#define av_double(LIST,VAL) \ - (((LIST).aptr = (__avword*)(((__avword)(LIST).aptr+15)&-8)) \ - > __av_eptr(LIST) \ - ? -1 : ((++(LIST).anum == 1 \ - ? ((LIST).flags |= __AV_FLOAT_1, \ - (LIST).floatarg[0] = ((double*)(LIST).aptr)[-1] = (double)(VAL))\ - : (LIST).anum == 2 && ((LIST).flags & __AV_FLOAT_1) \ - ? ((LIST).flags |= __AV_FLOAT_2, \ - (LIST).floatarg[1] = ((double*)(LIST).aptr)[-1] = (double)(VAL))\ - : (((double*)(LIST).aptr)[-1] = (double)(VAL))), \ - 0)) - -#endif - -#if defined(__mipsn32__) || defined(__mips64__) - -/* Up to 8 leading float or double non-varargs args can be passed in - * float registers, but we also push them into the corresponding int - * registers in case of varargs. - */ -#define __av_float(LIST,VAL) \ - ((LIST).aptr >= __av_eptr(LIST) \ - ? -1 : (((LIST).anum < 8 \ - ? ((LIST).farg_mask |= (1 << (LIST).anum), \ - (LIST).farg[(LIST).anum] = *(float*)(LIST).aptr = (float)(VAL)) \ - : (*(float*)(LIST).aptr = (float)(VAL))), \ - (LIST).anum++, \ - (LIST).aptr++, \ - 0)) - -#define av_double(LIST,VAL) \ - ((LIST).aptr >= __av_eptr(LIST) \ - ? -1 : (((LIST).anum < 8 && ((LIST).darg_mask |= (1 << (LIST).anum))), \ - *(double*)(LIST).aptr = (double)(VAL), \ - (LIST).anum++, \ - (LIST).aptr++, \ - 0)) - -#endif - -#if defined(__sparc64__) - -/* Up to 16 leading float or double non-varargs args can be passed in - * float registers, but we also push them into the corresponding int - * registers in case of varargs. - */ -#define __av_float(LIST,VAL) \ - ((LIST).aptr >= __av_eptr(LIST) \ - ? -1 : (((LIST).anum < 16 && ((LIST).farg_mask |= (1 << (LIST).anum))), \ - (*(float*)(LIST).aptr = (float)(VAL)), \ - (LIST).anum++, \ - (LIST).aptr++, \ - 0)) - -#define av_double(LIST,VAL) \ - ((LIST).aptr >= __av_eptr(LIST) \ - ? -1 : (((LIST).anum < 16 && ((LIST).darg_mask |= (1 << (LIST).anum))), \ - *(double*)(LIST).aptr = (double)(VAL), \ - (LIST).anum++, \ - (LIST).aptr++, \ - 0)) - -#endif - -#if defined(__alpha__) - -#define av_double(LIST,VAL) \ - (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 : (((double*)(LIST).aptr)[-1] = (double)(VAL), 0)) - -#define __av_float(LIST,VAL) \ - (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 \ - : (((LIST).aptr > &(LIST).args[6] \ - ? /* These args will be fetched from memory using "lds" instructions */ \ - /* therefore store them as floats */ \ - (*(float*)((LIST).aptr-1) = (float)(VAL)) \ - : /* The first 6 args will be put into registers by "ldt" instructions */ \ - /* (see avcall-alpha.c!). Therefore store them as doubles. */ \ - /* When viewed as floats, the value will be the correct one. */\ - (*(double*)((LIST).aptr-1) = (double)(float)(VAL)) \ - ), 0)) - -#endif - -#if defined(__hppa__) - -#define __av_float(LIST,VAL) \ - (--(LIST).aptr < __av_eptr(LIST) \ - ? -1 : (*(float*)(LIST).aptr = (float)(VAL), 0)) - -#define av_double(LIST,VAL) \ - (((LIST).aptr = (__avword*)(((long)(LIST).aptr-sizeof(double)) & -(long)sizeof(double))) \ - < __av_eptr(LIST) \ - ? -1 : (*(double*)(LIST).aptr = (double)(VAL), 0)) - -#endif - -#if defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) - -/* Up to 13 float or double non-varargs args can be passed in - * float registers, but we also push them into the corresponding int - * registers in case of varargs. - */ - -#define __av_float(LIST,VAL) \ - (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 : (((float*)(LIST).aptr)[-1] = (float)(VAL), \ - (LIST).faptr < &(LIST).fargs[13] && \ - (*(LIST).faptr++ = (double)(float)(VAL)), \ - 0)) - -#define av_double(LIST,VAL) \ - (((LIST).aptr += 2) > __av_eptr(LIST) \ - ? -1 : \ - ((LIST).tmp._double = (double)(VAL), \ - (LIST).aptr[-2] = (LIST).tmp.words[0], \ - (LIST).aptr[-1] = (LIST).tmp.words[1], \ - (LIST).faptr < &(LIST).fargs[13] && \ - (*(LIST).faptr++ = (LIST).tmp._double), \ - 0)) - -#endif - -#if defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) - -/* Up to 8 float or double non-varargs args can be passed in - * float registers, without occupying space in the general registers. - */ - -#define __av_float(LIST,VAL) \ - ((LIST).faptr < &(LIST).fargs[8] \ - ? ((*(LIST).faptr++ = (double)(float)(VAL)), 0) \ - : (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 : (((float*)(LIST).aptr)[-1] = (float)(VAL), 0))) - -#define av_double(LIST,VAL) \ - ((LIST).faptr < &(LIST).fargs[8] \ - ? ((*(LIST).faptr++ = (double)(VAL)), 0) \ - : (((LIST).aptr += 2) > __av_eptr(LIST) \ - ? -1 : \ - ((LIST).tmp._double = (double)(VAL), \ - (LIST).aptr[-2] = (LIST).tmp.words[0], \ - (LIST).aptr[-1] = (LIST).tmp.words[1], \ - 0))) - -#endif - -#if defined(__s390__) - -/* Up to 2 float or double non-varargs args can be passed in - * float registers, without occupying space in the general registers. - */ - -#define __av_float(LIST,VAL) \ - ((LIST).faptr < &(LIST).fargs[2] \ - ? (LIST).daptr++, *(LIST).fargsusedptr++ = 1, *(LIST).dargsusedptr++ = 0, ((*(LIST).faptr++ = (float)(VAL)), 0) \ - : (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 : ((LIST).fargwords++, ((float*)(LIST).aptr)[-1] = (float)(VAL), 0))) - -#define av_double(LIST,VAL) \ - ((LIST).daptr < &(LIST).dargs[2] \ - ? (LIST).faptr++, *(LIST).dargsusedptr++ = 1, *(LIST).fargsusedptr++ = 0, ((*(LIST).daptr++ = (double)(VAL)), 0) \ - : (((LIST).aptr += 2) > __av_eptr(LIST) \ - ? -1 : \ - ((LIST).fargwords+=2, (LIST).tmp._double = (double)(VAL), \ - (LIST).aptr[-2] = (LIST).tmp.words[0], \ - (LIST).aptr[-1] = (LIST).tmp.words[1], \ - 0))) - -#endif - -#if defined(__m88k__) - -#define __av_float(LIST,VAL) \ - (++(LIST).aptr > __av_eptr(LIST) \ - ? -1 : (((float*)(LIST).aptr)[-1] = (float)(VAL), 0)) - -#define av_double(LIST,VAL) \ - (((LIST).aptr = (__avword*)(((long)(LIST).aptr+sizeof(double)+sizeof(double)-1) & -(long)sizeof(double))) \ - > __av_eptr(LIST) \ - ? -1 : (((double*)(LIST).aptr)[-1] = (double)(VAL), 0)) - -#endif - -#if defined(__ia64__) - -/* Up to 8 leading float or double non-varargs args can be passed in - * float registers, but we also push them into the corresponding int - * registers in case of varargs. - */ -#define __av_float(LIST,VAL) \ - ((LIST).aptr >= __av_eptr(LIST) \ - ? -1 : ((*(float*)(LIST).aptr = (float)(VAL)), \ - ((LIST).faptr < &(LIST).fargs[8] && (*(LIST).faptr = *(float*)(LIST).aptr, (LIST).faptr++)), \ - (LIST).aptr++, \ - 0)) - -#define av_double(LIST,VAL) \ - ((LIST).aptr >= __av_eptr(LIST) \ - ? -1 : (*(double*)(LIST).aptr = (double)(VAL), \ - ((LIST).faptr < &(LIST).fargs[8] && (*(LIST).faptr = *(double*)(LIST).aptr, (LIST).faptr++)), \ - (LIST).aptr++, \ - 0)) - -#endif - -#if defined(__x86_64__) - -/* Up to 8 leading float or double args can be passed in float registers. - */ -#define __av_float(LIST,VAL) \ - ((LIST).faptr < &(LIST).fargs[8] \ - ? (*(LIST).faptr = 0.0, *(float*)(LIST).faptr = (float)(VAL), \ - (LIST).faptr++, \ - 0) \ - : ((LIST).aptr >= __av_eptr(LIST) \ - ? -1 : ((*(float*)(LIST).aptr = (float)(VAL)), \ - (LIST).aptr++, \ - 0))) - -#define av_double(LIST,VAL) \ - ((LIST).faptr < &(LIST).fargs[8] \ - ? (*(LIST).faptr = (double)(VAL), \ - (LIST).faptr++, \ - 0) \ - : ((LIST).aptr >= __av_eptr(LIST) \ - ? -1 : ((*(double*)(LIST).aptr = (double)(VAL)), \ - (LIST).aptr++, \ - 0))) - -#endif - -/* - * structure argument types - */ - -#define av_struct(LIST,TYPE,VAL) \ - __av_struct(LIST,TYPE,sizeof(TYPE),__AV_alignof(TYPE),__av_struct_assign,VAL) -#define __av_struct_assign(TYPE,TYPE_SIZE,TYPE_ALIGN,PLACE,VAL) \ - *(TYPE*)(PLACE) = (VAL) -/* _av_struct() is like av_struct(), except that you pass the type's size and alignment - * and the value's address instead of the type and the value themselves. - */ -#define _av_struct(LIST,TYPE_SIZE,TYPE_ALIGN,VAL_ADDR) \ - __av_struct(LIST,unknown,TYPE_SIZE,TYPE_ALIGN,__av_struct_copy,VAL_ADDR) -#define __av_struct_copy(TYPE,TYPE_SIZE,TYPE_ALIGN,PLACE,VAL_ADDR) \ - __structcpy(PLACE,VAL_ADDR,TYPE_SIZE,TYPE_ALIGN) -/* Structure argument alignment. */ -#if defined(__i386__) && defined(_MSC_VER) -/* In MSVC, doubles inside structures have alignment 8, i.e. - * __AV_alignof(double) = 8, but doubles (and also structures containing - * doubles) are passed on the stack with alignment 4. Looks really weird. - */ -#define __av_struct_alignment(TYPE_ALIGN) \ - ((TYPE_ALIGN) <= 4 ? (TYPE_ALIGN) : 4) -#else -#define __av_struct_alignment(TYPE_ALIGN) \ - (TYPE_ALIGN) -#endif -#if defined(__i386__) || defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) || defined(__alpha__) || (defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__m88k__) || defined(__ia64__) || defined(__s390__) -/* Structures are passed as fully aligned structures on the arg stack. - * We align the aptr, store the structure, then fill to word alignment. - * Single-small-integer structures are NOT promoted to integers and have - * different alignment. - */ -/* little endian -> small structures < 1 word are adjusted to the left */ -#if defined(__i386__) || defined(__alpha__) || defined(__x86_64__) -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - (((LIST).aptr = \ - (__avword*)(((__avword)(LIST).aptr+(TYPE_SIZE)+__av_struct_alignment(TYPE_ALIGN)-1) & -(long)__av_struct_alignment(TYPE_ALIGN)))\ - > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - (LIST).aptr = (__avword*)(((__avword)(LIST).aptr+sizeof(__avword)-1) & -(long)sizeof(__avword)),\ - 0)) -#endif -#if defined(__ia64__) -/* Types larger than a word have 2-word alignment. */ -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - ((LIST).aptr = (__avword*)(((__avword)(LIST).aptr+(TYPE_SIZE)+__av_struct_alignment(TYPE_ALIGN)-1) & -(long)__av_struct_alignment(TYPE_ALIGN)), \ - ((TYPE_SIZE) > sizeof(__avword) && (((LIST).aptr - &(LIST).args[0]) & 1) ? ++(LIST).aptr : 0), \ - ((LIST).aptr > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - (LIST).aptr = (__avword*)(((__avword)(LIST).aptr+sizeof(__avword)-1) & -(long)sizeof(__avword)),\ - 0))) -#endif -/* small structures < 1 word are adjusted depending on compiler */ -#if defined(__mips__) && !defined(__mipsn32__) -#define __av_struct_leftadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - (((LIST).aptr = \ - (__avword*)(((__avword)(LIST).aptr+(TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN)))\ - > __av_eptr(LIST) \ - ? -1 : (++(LIST).anum, \ - ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - (LIST).aptr = (__avword*)(((__avword)(LIST).aptr+sizeof(__avword)-1) & -(long)sizeof(__avword)),\ - 0)) -#define __av_struct_rightadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - (((LIST).aptr = \ - (__avword*)(((((__avword)(LIST).aptr+(TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN))\ - +sizeof(__avword)-1) & -(long)sizeof(__avword))) \ - > __av_eptr(LIST) \ - ? -1 : (++(LIST).anum, \ - ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - 0)) -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - ((LIST).flags & __AV_SGICC_STRUCT_ARGS \ - ? /* SGI MIPS cc passes small structures left-adjusted, although big-endian! */\ - __av_struct_leftadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - : /* SGI MIPS gcc passes small structures within the first four words left- \ - * adjusted, for compatibility with cc. But structures in memory are passed \ - * right-adjusted!! See gcc-2.6.3/config/mips/mips.c:function_arg(). \ - */ \ - ((LIST).aptr < &(LIST).args[4] \ - ? __av_struct_leftadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - : __av_struct_rightadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL))) -#endif -#if defined(__mipsn32__) || defined(__mips64__) -/* When a structure is passed (partially) in registers, it is passed in the - * integer registers, except that doubles within the structure are passed in - * the floating point registers. Instead of distinguishing these cases, we - * always pass the structure in both the integer and the floating point - * registers. - */ -#define __av_struct_leftadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - (((LIST).aptr = \ - (__avword*)(((__avword)(LIST).aptr+(TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN)))\ - > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - (LIST).aptr = (__avword*)(((__avword)(LIST).aptr+sizeof(__avword)-1) & -(long)sizeof(__avword)),\ - ((LIST).anum < 8 && ((LIST).darg_mask |= (-1 << (LIST).anum))), \ - (LIST).anum += (((((TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN)) + sizeof(__avword)-1) & -(long)sizeof(__avword))/sizeof(__avword),\ - (LIST).darg_mask &= (1 << ((LIST).anum < 8 ? (LIST).anum : 8)) - 1, \ - 0)) -#define __av_struct_rightadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - (((LIST).aptr = \ - (__avword*)(((((__avword)(LIST).aptr+(TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN))\ - +sizeof(__avword)-1) & -(long)sizeof(__avword))) \ - > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - ((LIST).anum < 8 && ((LIST).darg_mask |= (-1 << (LIST).anum))), \ - (LIST).anum += (((((TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN)) + sizeof(__avword)-1) & -(long)sizeof(__avword))/sizeof(__avword),\ - (LIST).darg_mask &= (1 << ((LIST).anum < 8 ? (LIST).anum : 8)) - 1, \ - 0)) -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - ((LIST).flags & __AV_SGICC_STRUCT_ARGS \ - ? /* SGI MIPS cc passes small structures left-adjusted, although big-endian! */\ - __av_struct_leftadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - : /* SGI MIPS gcc passes small structures right-adjusted. */ \ - __av_struct_rightadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL)) -#endif -#if defined(__rs6000__) -#define __av_struct_leftadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL)\ - (((LIST).aptr = \ - (__avword*)(((__avword)(LIST).aptr+(TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN)))\ - > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - (LIST).aptr = (__avword*)(((__avword)(LIST).aptr+sizeof(__avword)-1) & -(long)sizeof(__avword)),\ - 0)) -#define __av_struct_rightadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL)\ - (((LIST).aptr = \ - (__avword*)(((((__avword)(LIST).aptr+(TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN))\ - +sizeof(__avword)-1) & -(long)sizeof(__avword))) \ - > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - 0)) -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - ((LIST).flags & __AV_AIXCC_STRUCT_ARGS \ - ? /* AIX cc and xlc pass small structures left-adjusted, although big-endian! */\ - __av_struct_leftadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - : /* gcc passes small structures right-adjusted. */ \ - __av_struct_rightadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL)) -#endif -#if defined(__s390__) -#define __av_struct_rightadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL)\ - (((LIST).aptr = \ - (__avword*)(((((__avword)(LIST).aptr+(TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN))\ - +sizeof(__avword)-1) & -(long)sizeof(__avword))) \ - > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - 0)) -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ -((TYPE_SIZE) != 1 && (TYPE_SIZE) != 2 && (TYPE_SIZE) != 4 && (TYPE_SIZE) != 8 \ - ? (++(LIST).aptr \ - > ((LIST).eptr = (__avword*)((long)(LIST).eptr - (((TYPE_SIZE)+7)&-8)))\ - ? -1 : \ - (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)(LIST).eptr,VAL), \ - (LIST).aptr[-1] = (__avword)(LIST).eptr, \ - 0)) \ - : (((TYPE_SIZE) == 8 && (LIST).aptr - (LIST).args - (LIST).fargwords == 4 ? ++(LIST).aptr,0 : 0), \ - __av_struct_rightadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL))) -#endif -/* big endian -> small structures < 1 word are adjusted to the right */ -#if defined(__m88k__) -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - (((LIST).aptr = \ - (__avword*)(((((__avword)(LIST).aptr+(TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN))\ - +sizeof(__avword)-1) & -(long)sizeof(__avword))) \ - > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - 0)) -#endif -#endif -#if defined(__m68k__) || defined(__arm__) || defined(__convex__) -/* Structures are passed as embedded copies on the arg stack. - */ -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - (((LIST).aptr = (__avword*)(((long)(LIST).aptr+(TYPE_SIZE)+sizeof(__avword)-1) & -(long)sizeof(__avword))) \ - > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - 0)) -#endif -#if (defined(__sparc__) && !defined(__sparc64__)) || (defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) -/* Structures are passed as pointers to caller-made local copies. We - * grab space for the copies from the end of the argument list space - * and always use maximal (double) alignment. - */ -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - (++(LIST).aptr \ - > ((LIST).eptr = (__avword*)((long)(LIST).eptr - (((TYPE_SIZE)+7)&-8)))\ - ? -1 : \ - (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)(LIST).eptr,VAL), \ - (LIST).aptr[-1] = (__avword)(LIST).eptr, \ - 0)) -#endif -#if defined(__sparc64__) -/* Structures <= 16 bytes are passed as embedded copies on the arg stack, - * left-adjusted (although big-endian!). - * When a structure is passed (partially) in registers, it is passed in the - * integer registers, except that floats and doubles within the structure - * are passed in the floating point registers. Instead of distinguishing - * these cases, we always pass the structure in both the integer and the - * floating point registers. - * Big structures are passed as pointers to caller-made local copies. - * FIXME: Shouldn't (LIST).anum be incremented in sync with (LIST).aptr ? - */ -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - ((TYPE_SIZE) > 16 \ - ? (++(LIST).aptr \ - > ((LIST).eptr = (__avword*)((long)(LIST).eptr - (((TYPE_SIZE)+7)&-8)))\ - ? -1 : \ - (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)(LIST).eptr,VAL), \ - (LIST).aptr[-1] = (__avword)(LIST).eptr, \ - 0)) \ - : (((LIST).aptr = \ - (__avword*)(((__avword)(LIST).aptr+(TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN)))\ - > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ - (LIST).aptr = (__avword*)(((__avword)(LIST).aptr+sizeof(__avword)-1) & -(long)sizeof(__avword)),\ - ((LIST).anum < 16 \ - && ((LIST).farg_mask |= (-1 << (LIST).anum), \ - (LIST).darg_mask |= (-1 << (LIST).anum))), \ - (LIST).anum += (((((TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN)) + sizeof(__avword)-1) & -(long)sizeof(__avword))/sizeof(__avword),\ - (LIST).farg_mask &= (1 << ((LIST).anum < 16 ? (LIST).anum : 16)) - 1, \ - (LIST).darg_mask &= (1 << ((LIST).anum < 16 ? (LIST).anum : 16)) - 1, \ - 0))) -#endif -#if defined(__hppa__) -/* Structures <= 8 bytes are passed as embedded copies on the arg stack. - * Big structures are passed as pointers to caller-made local copies. - */ -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - ((TYPE_SIZE) > 8 \ - ? (--(LIST).aptr \ - < ((LIST).eptr = (__avword*)((long)(LIST).eptr + (((TYPE_SIZE) + 7) & -8))) \ - ? -1 \ - : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((long)(LIST).eptr - (((TYPE_SIZE) + 7) & -8)), VAL), \ - *(LIST).aptr = (__avword)((long)(LIST).eptr - (((TYPE_SIZE) + 7) & -8)), \ - 0)) \ - : ((TYPE_SIZE) > 4 \ - ? (((LIST).aptr = (__avword*)((((long)(LIST).aptr & -8) - (long)(TYPE_SIZE)) & -8)) \ - < &(LIST).args[0] \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)(LIST).aptr,VAL), 0)) \ - : /* FIXME: gcc-2.6.3 passes structures <= 4 bytes in memory left-adjusted! ?? */\ - (((LIST).aptr = (__avword*)(((long)(LIST).aptr & -4) - (long)(TYPE_SIZE))) \ - < &(LIST).args[0] \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)(LIST).aptr,VAL), \ - (LIST).aptr = (__avword*)((long)(LIST).aptr & -4), \ - 0)))) -#endif -#if defined(__x86_64__) -/* Structures <= 16 bytes can be passed in integer or floating-point registers - if there is enough room for the whole number of words needed by the structure - in the corresponding iargs/fargs block. We can't distinguish the two cases - and support only passing in integer registers. Other structures are passed - on the arg stack. */ -#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ - ((LIST).iaptr + ((TYPE_SIZE) + sizeof(__avword)-1) / sizeof(__avword) <= &(LIST).iargs[6] \ - ? (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)(LIST).iaptr,VAL), \ - (LIST).iaptr += ((TYPE_SIZE) + sizeof(__avword)-1) / sizeof(__avword), \ - 0) \ - : ((LIST).aptr = (__avword*)((__avword)(LIST).aptr + (((TYPE_SIZE)+__av_struct_alignment(TYPE_ALIGN)-1) & -(long)__av_struct_alignment(TYPE_ALIGN))), \ - ((LIST).aptr > __av_eptr(LIST) \ - ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr - (((TYPE_SIZE)+__av_struct_alignment(TYPE_ALIGN)-1) & -(long)__av_struct_alignment(TYPE_ALIGN))),VAL),\ - 0)))) -#endif - -/* - * calling the function - */ - -#define av_call(LIST) __builtin_avcall(&(LIST)) - -/* Determine whether a struct type is word-splittable, i.e. whether each of - * its components fit into a register. - * The entire computation is done at compile time. - */ -#define av_word_splittable_1(slot1) \ - (__av_offset1(slot1)/sizeof(__avword) == (__av_offset1(slot1)+sizeof(slot1)-1)/sizeof(__avword)) -#define av_word_splittable_2(slot1,slot2) \ - ((__av_offset1(slot1)/sizeof(__avword) == (__av_offset1(slot1)+sizeof(slot1)-1)/sizeof(__avword)) \ - && (__av_offset2(slot1,slot2)/sizeof(__avword) == (__av_offset2(slot1,slot2)+sizeof(slot2)-1)/sizeof(__avword)) \ - ) -#define av_word_splittable_3(slot1,slot2,slot3) \ - ((__av_offset1(slot1)/sizeof(__avword) == (__av_offset1(slot1)+sizeof(slot1)-1)/sizeof(__avword)) \ - && (__av_offset2(slot1,slot2)/sizeof(__avword) == (__av_offset2(slot1,slot2)+sizeof(slot2)-1)/sizeof(__avword)) \ - && (__av_offset3(slot1,slot2,slot3)/sizeof(__avword) == (__av_offset3(slot1,slot2,slot3)+sizeof(slot3)-1)/sizeof(__avword)) \ - ) -#define av_word_splittable_4(slot1,slot2,slot3,slot4) \ - ((__av_offset1(slot1)/sizeof(__avword) == (__av_offset1(slot1)+sizeof(slot1)-1)/sizeof(__avword)) \ - && (__av_offset2(slot1,slot2)/sizeof(__avword) == (__av_offset2(slot1,slot2)+sizeof(slot2)-1)/sizeof(__avword)) \ - && (__av_offset3(slot1,slot2,slot3)/sizeof(__avword) == (__av_offset3(slot1,slot2,slot3)+sizeof(slot3)-1)/sizeof(__avword)) \ - && (__av_offset4(slot1,slot2,slot3,slot4)/sizeof(__avword) == (__av_offset4(slot1,slot2,slot3,slot4)+sizeof(slot4)-1)/sizeof(__avword)) \ - ) -#define __av_offset1(slot1) \ - 0 -#define __av_offset2(slot1,slot2) \ - ((__av_offset1(slot1)+sizeof(slot1)+__AV_alignof(slot2)-1) & -(long)__AV_alignof(slot2)) -#define __av_offset3(slot1,slot2,slot3) \ - ((__av_offset2(slot1,slot2)+sizeof(slot2)+__AV_alignof(slot3)-1) & -(long)__AV_alignof(slot3)) -#define __av_offset4(slot1,slot2,slot3,slot4) \ - ((__av_offset3(slot1,slot2,slot3)+sizeof(slot3)+__AV_alignof(slot4)-1) & -(long)__AV_alignof(slot4)) - -/* - * Miscellaneous declarations. - */ - -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -extern int __builtin_avcall (av_alist* l); -extern void __structcpy (void* dest, void* src, unsigned long size, unsigned long alignment); -#else -extern int __builtin_avcall (); -extern void __structcpy (); -#endif - -#endif /*_avcall_h */ DELETED ffcall/avcall/avcall.html Index: ffcall/avcall/avcall.html ================================================================== --- ffcall/avcall/avcall.html +++ /dev/null @@ -1,265 +0,0 @@ - - AVCALL manual page - - -

AVCALL manual page

- - -

- -


- - -

Name

-
- -avcall - build a C argument list incrementally and call a -C function on it. - - -

Synopsis

-
- -
-#include <avcall.h>
-av_alist alist;
-av_start_type (alist, &func, [[return_type,] &return_value]);
-av_type (alist, [arg_type,] value);
-av_call(alist);
-
- - -

Description

-
- -This set of macros builds an argument list for a C function -and calls the function on it. It significantly -reduces the amount of `glue' code required for parsers, -debuggers, imbedded interpreters, C extensions to application -programs and other situations where collections of -functions need to be called on lists of externally- -supplied arguments. -

-Function calling conventions differ considerably on different -machines and avcall attempts to provide some degree -of isolation from such architecture dependencies. -

-The interface is like stdarg(3) in reverse. All of the -macros return 0 for success, < 0 for failure (e.g., argument -list overflow or type-not-supported). -

-

    -
  1. #include <avcall.h> and declare the argument list -structure av_alist alist; -

    -

  2. Set any special flags. This is architecture and compiler -dependent. -Compiler options that affect passing conventions may need -to be flagged by #defines before the #include <avcall.h> -statement. However, the configure script should have -determined which #defines are needed and put them -at the top of avcall.h. -

    -

  3. Initialize the alist with the function address and -return value pointer (if any). There is a separate macro -for each simple return type ([u]char, [u]short, [u]int, -[u]long, [u]longlong, float, double, where `u' indicates -`unsigned'). The macros for functions returning structures -or pointers require an explicit type argument. -

    -E.g., -

    -av_start_int (alist, &func, &int_return);
    -av_start_double (alist, &func, &double_return);
    -av_start_void (alist, &func);
    -av_start_struct (alist, &func, struct_type, splittable, &struct_return);
    -av_start_ptr (alist, &func, pointer_type, &pointer_return);
    -
    -The splittable flag specifies whether the struct_type can -be returned in registers such that every struct field fits -entirely in a single register. This needs to be specified -for structs of size 2*sizeof(long). For structs of size -<= sizeof(long), splittable is ignored and assumed to be 1. -For structs of size > 2*sizeof(long), splittable is -ignored and assumed to be 0. There are some handy macros -for this: -
    -av_word_splittable_1 (type1)
    -av_word_splittable_2 (type1, type2)
    -av_word_splittable_3 (type1, type2, type3)
    -av_word_splittable_4 (type1, type2, type3, type4)
    -
    -For a struct with three slots -
    -struct { type1 id1; type2 id2; type3 id3; }
    -
    -you can specify splittable as -av_word_splittable_3 (type1, type2, type3). -

    -

  4. Push the arguments on to the list in order. Again -there is a macro for each simple built-in type, and the -macros for structure and pointer arguments require an -extra type argument: -
    -av_int (alist, int_value);
    -av_double (alist, double_value);
    -av_struct (alist, struct_or_union_type, struct_value);
    -av_ptr (alist, pointer_type, pointer_value);
    -
    -
  5. Call the function, set the return value, and tidy up: -av_call (alist); -
- - -

Notes

-
- -
    -
  1. Functions whose first declaration is in Kernighan & -Ritchie style (i.e., without a typed argument list) MUST -use default K&R C expression promotions (char and short to -int, float to double) whether they are compiled by a K&R -or an ANSI compiler, because the true argument types may -not be known at the call point. Such functions typically -back-convert their arguments to the declared types on -function entry. (In fact, the only way to pass a true -char, short or float in K&R C is by an explicit cast: -func((char)c,(float)f) ). Similarly, some K&R compilers -(such as Sun cc on the sparc) actually return a float as a -double. -

    -Hence, for arguments of functions declared in K&R style -you should use av_int() and av_double() rather than -av_char(), av_short() or av_float(). If you use a K&R -compiler, the avcall header files may be able to detect -this and define av_float(), etc, appropriately, but with -an ANSI compiler there is no way avcall can know how a -function was declared, so you have to correct the argument -types yourself. -

    -

  2. The explicit type arguments of the av_struct() and -av_ptr() macros are typically used to calculate size, -alignment, and passing conventions. This may not be sufficient for some machines with unusual structure and -pointer handling: in this case additional av_start_type() -and av_type() macros may be defined. -

    -

  3. The macros av_start_longlong(), -av_start_ulonglong(), av_longlong() and -av_ulonglong() work only if the C compiler has a working -long long 64-bit integer type. -

    -

  4. The struct types used in av_start_struct() and -av_struct() must only contain (signed or unsigned) int, -long, long long or pointer fields. Struct types containing -(signed or unsigned) char, short, float, double or other -structs are not supported. -

    -

- - -

See also

-
-stdarg(3), varargs(3). - - -

Bugs

-
- -
    -
  • -The current implementations have been tested on a selection -of common cases but there are probably still many -bugs. -
  • -There are typically built-in limits on the size of the -argument-list, which may also include the size of any -structure arguments. -
  • -The decision whether a struct is to be returned in registers or in memory -considers only the struct's size and alignment. This is inaccurate: for -example, gcc on m68k-next returns -struct { char a,b,c; } -in registers and -struct { char a[3]; } -in memory, although both types have the same size and the same alignment. -
- - -

Non-Bugs

-
- -All information is passed in CPU registers and the stack. -The avcall package is therefore multithread-safe. - - -

Porting AVCALL

-
- -Ports, bug-fixes, and suggestions are most welcome. The -macros required for argument pushing are pretty grungy, -but it does seem to be possible to port avcall to a range -of machines. Ports to non-standard or non-32-bit machines -are especially welcome so we can sort the interface out -before it's too late. -

-Knowledge about argument passing conventions can be found -in the gcc source, file gcc-2.6.3/config/cpu/cpu.h, section -"Stack layout; function entry, exit and calling." -

-Some of the grunge is usually handled by a C or assembly -level glue routine that actually pushes the arguments, -calls the function and unpacks any return value. This is -called __builtin_avcall(). A precompiled assembler version for -people without gcc is also made available. The routine should ideally -have flags for the passing conventions of other compilers. -

-Many of the current routines waste a lot of stack space -and generally do hairy things to stack frames - a bit more -assembly code would probably help things along quite a bit -here. -

- - -

Author

- - -Bill Triggs <Bill.Triggs@inrialpes.fr>, <Bill.Triggs@imag.fr>. - - -

Acknowledgements

-
- -Some initial ideas were stolen from the C interface to the -Zelk extensions to Oliver Laumann's Elk scheme interpreter -by J.P.Lewis, NEC C&C Research, <zilla@ccrl.nj.nec.com> -(for Sun4 & SGI), and Roy Featherstone's -<roy@robots.oxford.ac.uk> personal C interface library for -Sun3, Sun4 & SGI. I also looked at the machine-dependent -parts of the GCC and GDB distributions, and put the gcc -asm() extensions to good use. Thanks guys! -

-This work was partly supported by EC-ESPRIT Basic Research -Action SECOND. -

- -


- -
AVCALL manual page
-Bruno Haible <bruno@clisp.org> -
-

-Last modified: 14 January 2001. - - - DELETED ffcall/avcall/avcall.man Index: ffcall/avcall/avcall.man ================================================================== --- ffcall/avcall/avcall.man +++ /dev/null @@ -1,264 +0,0 @@ - - - -AVCALL(3) AVCALL(3) - - -NNAAMMEE - avcall - build a C argument list incrementally and call a - C function on it. - -SSYYNNOOPPSSIISS - ##iinncclluuddee <> - - aavv__aalliisstt _a_l_i_s_t;; - - aavv__ssttaarrtt___t_y_p_e((_a_l_i_s_t,, _&_f_u_n_c [[,, _r_e_t_u_r_n___t_y_p_e],, _&_r_e_t_u_r_n___v_a_l_u_e - ]));; - - aavv___t_y_p_e((_a_l_i_s_t,, [_a_r_g___t_y_p_e,,] _v_a_l_u_e));; - - aavv__ccaallll((_a_l_i_s_t));; - -DDEESSCCRRIIPPTTIIOONN - This set of macros builds an argument list for a C func- - tion and calls the function on it. It significantly - reduces the amount of `glue' code required for parsers, - debuggers, imbedded interpreters, C extensions to applica- - tion programs and other situations where collections of - functions need to be called on lists of externally-sup- - plied arguments. - - Function calling conventions differ considerably on dif- - ferent machines and _a_v_c_a_l_l attempts to provide some degree - of isolation from such architecture dependencies. - - The interface is like ssttddaarrgg(3) in reverse. All of the - macros return 0 for success, < 0 for failure (e.g., argu- - ment list overflow or type-not-supported). - - (1) ##iinncclluuddee <> - and declare the argument list structure - aavv__aalliisstt _a_l_i_s_t;; - - (2) Set any special flags. This is architecture and - compiler dependent. Compiler options that affect - passing conventions may need to be flagged by - ##ddeeffiinnees before the ##iinncclluuddee <> statement. - However, the _c_o_n_f_i_g_u_r_e script should have deter- - mined which ##ddeeffiinnees are needed and put them at the - top of aavvccaallll..hh. - - (3) Initialize the alist with the function address and - return value pointer (if any). There is a separate - macro for each simple return type ([u]char, - [u]short, [u]int, [u]long, [u]longlong, float, dou- - ble, where `u' indicates `unsigned'). The macros - for functions returning structures or pointers - require an explicit type argument. - - E.g., - - - - 14 January 2001 1 - - - - - -AVCALL(3) AVCALL(3) - - - aavv__ssttaarrtt__iinntt ((_a_l_i_s_t,, _&_f_u_n_c,, _&_i_n_t___r_e_t_u_r_n));; - - aavv__ssttaarrtt__ddoouubbllee ((_a_l_i_s_t,, _&_f_u_n_c,, _&_d_o_u_b_l_e___r_e_t_u_r_n));; - - aavv__ssttaarrtt__vvooiidd ((_a_l_i_s_t,, _&_f_u_n_c));; - - aavv__ssttaarrtt__ssttrruucctt ((_a_l_i_s_t,, _&_f_u_n_c,, _s_t_r_u_c_t___t_y_p_e,, _s_p_l_i_t_t_a_b_l_e,, - _&_s_t_r_u_c_t___r_e_t_u_r_n));; - - aavv__ssttaarrtt__ppttrr ((_a_l_i_s_t,, _&_f_u_n_c,, _p_o_i_n_t_e_r___t_y_p_e,, - _&_p_o_i_n_t_e_r___r_e_t_u_r_n));; - - The _s_p_l_i_t_t_a_b_l_e flag specifies whether the _s_t_r_u_c_t___t_y_p_e can - be returned in registers such that every struct field fits - entirely in a single register. This needs to be specified - for structs of size 2*sizeof(long). For structs of size <= - sizeof(long), _s_p_l_i_t_t_a_b_l_e is ignored and assumed to be 1. - For structs of size > 2*sizeof(long), _s_p_l_i_t_t_a_b_l_e is - ignored and assumed to be 0. There are some handy macros - for this: - aavv__wwoorrdd__sspplliittttaabbllee__11 ((_t_y_p_e_1)) - aavv__wwoorrdd__sspplliittttaabbllee__22 ((_t_y_p_e_1,, _t_y_p_e_2)) - aavv__wwoorrdd__sspplliittttaabbllee__33 ((_t_y_p_e_1,, _t_y_p_e_2,, _t_y_p_e_3)) - aavv__wwoorrdd__sspplliittttaabbllee__44 ((_t_y_p_e_1,, _t_y_p_e_2,, _t_y_p_e_3,, _t_y_p_e_4)) - For a struct with three slots - ssttrruucctt {{ _t_y_p_e_1 _i_d_1;; _t_y_p_e_2 _i_d_2;; _t_y_p_e_3 _i_d_3;; }} - you can specify _s_p_l_i_t_t_a_b_l_e as aavv__wwoorrdd__sspplliittttaabbllee__33 ((_t_y_p_e_1,, - _t_y_p_e_2,, _t_y_p_e_3)) . - - (4) Push the arguments on to the list in order. Again - there is a macro for each simple built-in type, and - the macros for structure and pointer arguments - require an extra type argument: - - aavv__iinntt ((_a_l_i_s_t,, _i_n_t___v_a_l_u_e));; - - aavv__ddoouubbllee ((_a_l_i_s_t,, _d_o_u_b_l_e___v_a_l_u_e));; - - aavv__ssttrruucctt ((_a_l_i_s_t,, _s_t_r_u_c_t___o_r___u_n_i_o_n___t_y_p_e,, _s_t_r_u_c_t___v_a_l_u_e));; - - aavv__ppttrr ((_a_l_i_s_t,, _p_o_i_n_t_e_r___t_y_p_e,, _p_o_i_n_t_e_r___v_a_l_u_e));; - - (5) Call the function, set the return value, and tidy - up: - - aavv__ccaallll ((_a_l_i_s_t));; - - -NNOOTTEESS - (1) Functions whose first declaration is in Kernighan & - Ritchie style (i.e., without a typed argument list) MUST - use default K&R C expression promotions (char and short to - int, float to double) whether they are compiled by a K&R - or an ANSI compiler, because the true argument types may - - - - 14 January 2001 2 - - - - - -AVCALL(3) AVCALL(3) - - - not be known at the call point. Such functions typically - back-convert their arguments to the declared types on - function entry. (In fact, the only way to pass a true - char, short or float in K&R C is by an explicit cast: - ffuunncc((((cchhaarr))cc,,((ffllooaatt))ff)) ). Similarly, some K&R compilers - (such as Sun cc on the sparc) actually return a float as a - double. - - Hence, for arguments of functions declared in K&R style - you should use aavv__iinntt(()) and aavv__ddoouubbllee(()) rather than - aavv__cchhaarr(()),, aavv__sshhoorrtt(()) or aavv__ffllooaatt(()).. If you use a K&R - compiler, the avcall header files may be able to detect - this and define aavv__ffllooaatt(()),, etc, appropriately, but with - an ANSI compiler there is no way _a_v_c_a_l_l can know how a - function was declared, so you have to correct the argument - types yourself. - - (2) The explicit type arguments of the aavv__ssttrruucctt(()) and - aavv__ppttrr(()) macros are typically used to calculate size, - alignment, and passing conventions. This may not be suf- - ficient for some machines with unusual structure and - pointer handling: in this case additional aavv__ssttaarrtt___t_y_p_e(()) - and aavv___t_y_p_e(()) macros may be defined. - - (3) The macros aavv__ssttaarrtt__lloonngglloonngg(()), aavv__ssttaarrtt__uulloonngglloonngg(()), - aavv__lloonngglloonngg(()) and aavv__uulloonngglloonngg(()) work only if the C com- - piler has a working lloonngg lloonngg 64-bit integer type. - - (4) The struct types used in aavv__ssttaarrtt__ssttrruucctt(()) and - aavv__ssttrruucctt(()) must only contain (signed or unsigned) int, - long, long long or pointer fields. Struct types contain- - ing (signed or unsigned) char, short, float, double or - other structs are not supported. - - -SSEEEE AALLSSOO - ssttddaarrgg(3), vvaarraarrggss(3). - - -BBUUGGSS - The current implementations have been tested on a selec- - tion of common cases but there are probably still many - bugs. - - There are typically built-in limits on the size of the - argument-list, which may also include the size of any - structure arguments. - - The decision whether a struct is to be returned in regis- - ters or in memory considers only the struct's size and - alignment. This is inaccurate: for example, gcc on m68k- - next returns ssttrruucctt {{ cchhaarr aa,,bb,,cc;; }} in registers and - ssttrruucctt {{ cchhaarr aa[[33]];; }} in memory, although both types have - the same size and the same alignment. - - - - 14 January 2001 3 - - - - - -AVCALL(3) AVCALL(3) - - -NNOONN--BBUUGGSS - All information is passed in CPU registers and the stack. - The aavvccaallll package is therefore multithread-safe. - - -PPOORRTTIINNGG AAVVCCAALLLL - Ports, bug-fixes, and suggestions are most welcome. The - macros required for argument pushing are pretty grungy, - but it does seem to be possible to port avcall to a range - of machines. Ports to non-standard or non-32-bit machines - are especially welcome so we can sort the interface out - before it's too late. - - Knowledge about argument passing conventions can be found - in the gcc source, file gcc-2.6.3/config/_c_p_u/_c_p_u.h, sec- - tion "Stack layout; function entry, exit and calling." - - Some of the grunge is usually handled by a C or assembly - level glue routine that actually pushes the arguments, - calls the function and unpacks any return value. This is - called __builtin_avcall(). A precompiled assembler version - for people without gcc is also made available. The routine - should ideally have flags for the passing conventions of - other compilers. - - Many of the current routines waste a lot of stack space - and generally do hairy things to stack frames - a bit more - assembly code would probably help things along quite a bit - here. - - -AAUUTTHHOORR - Bill Triggs . - - -AACCKKNNOOWWLLEEDDGGEEMMEENNTTSS - Some initial ideas were stolen from the C interface to the - Zelk extensions to Oliver Laumann's Elk scheme interpreter - by J.P.Lewis, NEC C&C Research, - (for Sun4 & SGI), and Roy Featherstone's - personal C interface library for - Sun[34] & SGI. I also looked at the machine-dependent - parts of the GCC and GDB distributions, and put the gcc - asm() extensions to good use. Thanks guys! - - This work was partly supported by EC-ESPRIT Basic Research - Action SECOND. - - - - - - - - - - - 14 January 2001 4 - - DELETED ffcall/avcall/configure Index: ffcall/avcall/configure ================================================================== --- ffcall/avcall/configure +++ /dev/null @@ -1,9266 +0,0 @@ -#! /bin/sh -# Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.59. -# -# Copyright (C) 2003 Free Software Foundation, Inc. -# This configure script is free software; the Free Software Foundation -# gives unlimited permission to copy, distribute and modify it. -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## - -# Be Bourne compatible -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' -elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then - set -o posix -fi -DUALCASE=1; export DUALCASE # for MKS sh - -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - - -# Work around bugs in pre-3.0 UWIN ksh. -$as_unset ENV MAIL MAILPATH -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -for as_var in \ - LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ - LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ - LC_TELEPHONE LC_TIME -do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var - else - $as_unset $as_var - fi -done - -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - - -# Name of the executable. -as_me=`$as_basename "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)$' \| \ - . : '\(.\)' 2>/dev/null || -echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } - /^X\/\(\/\/\)$/{ s//\1/; q; } - /^X\/\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - - -# PATH needs CR, and LINENO needs CR and PATH. -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" || { - # Find who we are. Look in the path if we contain no path at all - # relative or not. - case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done - - ;; - esac - # We did not find ourselves, most probably we were run as `sh COMMAND' - # in which case we are not to be found in the path. - if test "x$as_myself" = x; then - as_myself=$0 - fi - if test ! -f "$as_myself"; then - { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2 - { (exit 1); exit 1; }; } - fi - case $CONFIG_SHELL in - '') - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for as_base in sh bash ksh sh5; do - case $as_dir in - /*) - if ("$as_dir/$as_base" -c ' - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then - $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } - $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } - CONFIG_SHELL=$as_dir/$as_base - export CONFIG_SHELL - exec "$CONFIG_SHELL" "$0" ${1+"$@"} - fi;; - esac - done -done -;; - esac - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line before each line; the second 'sed' does the real - # work. The second script uses 'N' to pair each line-number line - # with the numbered line, and appends trailing '-' during - # substitution so that $LINENO is not a special case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) - sed '=' <$as_myself | - sed ' - N - s,$,-, - : loop - s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, - t loop - s,-$,, - s,^['$as_cr_digits']*\n,, - ' >$as_me.lineno && - chmod +x $as_me.lineno || - { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensible to this). - . ./$as_me.lineno - # Exit status is that of the last command. - exit -} - - -case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in - *c*,-n*) ECHO_N= ECHO_C=' -' ECHO_T=' ' ;; - *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; - *) ECHO_N= ECHO_C='\c' ECHO_T= ;; -esac - -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -rm -f conf$$ conf$$.exe conf$$.file -echo >conf$$.file -if ln -s conf$$.file conf$$ 2>/dev/null; then - # We could just check for DJGPP; but this test a) works b) is more generic - # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). - if test -f conf$$.exe; then - # Don't use ln at all; we don't have any links - as_ln_s='cp -p' - else - as_ln_s='ln -s' - fi -elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.file - -if mkdir -p . 2>/dev/null; then - as_mkdir_p=: -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -as_executable_p="test -f" - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -# IFS -# We need space, tab and new line, in precisely that order. -as_nl=' -' -IFS=" $as_nl" - -# CDPATH. -$as_unset CDPATH - - -# Find the correct PATH separator. Usually this is `:', but -# DJGPP uses `;' like DOS. -if test "X${PATH_SEPARATOR+set}" != Xset; then - UNAME=${UNAME-`uname 2>/dev/null`} - case X$UNAME in - *-DOS) lt_cv_sys_path_separator=';' ;; - *) lt_cv_sys_path_separator=':' ;; - esac - PATH_SEPARATOR=$lt_cv_sys_path_separator -fi - - -# Check that we are running under the correct shell. -SHELL=${CONFIG_SHELL-/bin/sh} - -case X$ECHO in -X*--fallback-echo) - # Remove one level of quotation (which was required for Make). - ECHO=`echo "$ECHO" | sed 's,\\\\\$\\$0,'$0','` - ;; -esac - -echo=${ECHO-echo} -if test "X$1" = X--no-reexec; then - # Discard the --no-reexec flag, and continue. - shift -elif test "X$1" = X--fallback-echo; then - # Avoid inline document here, it may be left over - : -elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then - # Yippee, $echo works! - : -else - # Restart under the correct shell. - exec $SHELL "$0" --no-reexec ${1+"$@"} -fi - -if test "X$1" = X--fallback-echo; then - # used as fallback echo - shift - cat </dev/null && - echo_test_string="`eval $cmd`" && - (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null - then - break - fi - done -fi - -if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - : -else - # The Solaris, AIX, and Digital Unix default echo programs unquote - # backslashes. This makes it impossible to quote backslashes using - # echo "$something" | sed 's/\\/\\\\/g' - # - # So, first we look for a working echo in the user's PATH. - - IFS="${IFS= }"; save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for dir in $PATH /usr/ucb; do - if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && - test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - echo="$dir/echo" - break - fi - done - IFS="$save_ifs" - - if test "X$echo" = Xecho; then - # We didn't find a better echo, so look for alternatives. - if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - # This shell has a builtin print -r that does the trick. - echo='print -r' - elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) && - test "X$CONFIG_SHELL" != X/bin/ksh; then - # If we have ksh, try running configure again with it. - ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} - export ORIGINAL_CONFIG_SHELL - CONFIG_SHELL=/bin/ksh - export CONFIG_SHELL - exec $CONFIG_SHELL "$0" --no-reexec ${1+"$@"} - else - # Try using printf. - echo='printf %s\n' - if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - # Cool, printf works - : - elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` && - test "X$echo_testing_string" = 'X\t' && - echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL - export CONFIG_SHELL - SHELL="$CONFIG_SHELL" - export SHELL - echo="$CONFIG_SHELL $0 --fallback-echo" - elif echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` && - test "X$echo_testing_string" = 'X\t' && - echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - echo="$CONFIG_SHELL $0 --fallback-echo" - else - # maybe with a smaller string... - prev=: - - for cmd in 'echo test' 'sed 2q "$0"' 'sed 10q "$0"' 'sed 20q "$0"' 'sed 50q "$0"'; do - if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null - then - break - fi - prev="$cmd" - done - - if test "$prev" != 'sed 50q "$0"'; then - echo_test_string=`eval $prev` - export echo_test_string - exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "$0" ${1+"$@"} - else - # Oops. We lost completely, so just stick with echo. - echo=echo - fi - fi - fi - fi -fi -fi - -# Copy echo and quote the copy suitably for passing to libtool from -# the Makefile, instead of quoting the original, which is used later. -ECHO=$echo -if test "X$ECHO" = "X$CONFIG_SHELL $0 --fallback-echo"; then - ECHO="$CONFIG_SHELL \\\$\$0 --fallback-echo" -fi - - - -# Name of the host. -# hostname on some systems (SVR3.2, Linux) returns a bogus exit status, -# so uname gets run too. -ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` - -exec 6>&1 - -# -# Initializations. -# -ac_default_prefix=/usr/local -ac_config_libobj_dir=. -cross_compiling=no -subdirs= -MFLAGS= -MAKEFLAGS= -SHELL=${CONFIG_SHELL-/bin/sh} - -# Maximum number of lines to put in a shell here document. -# This variable seems obsolete. It should probably be removed, and -# only ac_max_sed_lines should be used. -: ${ac_max_here_lines=38} - -# Identity of this package. -PACKAGE_NAME= -PACKAGE_TARNAME= -PACKAGE_VERSION= -PACKAGE_STRING= -PACKAGE_BUGREPORT= - -ac_unique_file="avcall.h.in" -# Factoring default headers for most tests. -ac_includes_default="\ -#include -#if HAVE_SYS_TYPES_H -# include -#endif -#if HAVE_SYS_STAT_H -# include -#endif -#if STDC_HEADERS -# include -# include -#else -# if HAVE_STDLIB_H -# include -# endif -#endif -#if HAVE_STRING_H -# if !STDC_HEADERS && HAVE_MEMORY_H -# include -# endif -# include -#endif -#if HAVE_STRINGS_H -# include -#endif -#if HAVE_INTTYPES_H -# include -#else -# if HAVE_STDINT_H -# include -# endif -#endif -#if HAVE_UNISTD_H -# include -#endif" - -ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP EGREP CC_GCC GCC_X_NONE AS_UNDERSCORE RANLIB SET_MAKE INSTALL INSTALL_PROGRAM INSTALL_DATA CP LN build build_cpu build_vendor build_os host host_cpu host_vendor host_os LN_S ECHO ac_ct_RANLIB STRIP ac_ct_STRIP LIBTOOL LIBOBJS LTLIBOBJS' -ac_subst_files='' - -# Initialize some variables set by options. -ac_init_help= -ac_init_version=false -# The variables have the same names as the options, with -# dashes changed to underlines. -cache_file=/dev/null -exec_prefix=NONE -no_create= -no_recursion= -prefix=NONE -program_prefix=NONE -program_suffix=NONE -program_transform_name=s,x,x, -silent= -site= -srcdir= -verbose= -x_includes=NONE -x_libraries=NONE - -# Installation directory options. -# These are left unexpanded so users can "make install exec_prefix=/foo" -# and all the variables that are supposed to be based on exec_prefix -# by default will actually change. -# Use braces instead of parens because sh, perl, etc. also accept them. -bindir='${exec_prefix}/bin' -sbindir='${exec_prefix}/sbin' -libexecdir='${exec_prefix}/libexec' -datadir='${prefix}/share' -sysconfdir='${prefix}/etc' -sharedstatedir='${prefix}/com' -localstatedir='${prefix}/var' -libdir='${exec_prefix}/lib' -includedir='${prefix}/include' -oldincludedir='/usr/include' -infodir='${prefix}/info' -mandir='${prefix}/man' - -ac_prev= -for ac_option -do - # If the previous option needs an argument, assign it. - if test -n "$ac_prev"; then - eval "$ac_prev=\$ac_option" - ac_prev= - continue - fi - - ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'` - - # Accept the important Cygnus configure options, so we can diagnose typos. - - case $ac_option in - - -bindir | --bindir | --bindi | --bind | --bin | --bi) - ac_prev=bindir ;; - -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) - bindir=$ac_optarg ;; - - -build | --build | --buil | --bui | --bu) - ac_prev=build_alias ;; - -build=* | --build=* | --buil=* | --bui=* | --bu=*) - build_alias=$ac_optarg ;; - - -cache-file | --cache-file | --cache-fil | --cache-fi \ - | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) - ac_prev=cache_file ;; - -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ - | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) - cache_file=$ac_optarg ;; - - --config-cache | -C) - cache_file=config.cache ;; - - -datadir | --datadir | --datadi | --datad | --data | --dat | --da) - ac_prev=datadir ;; - -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \ - | --da=*) - datadir=$ac_optarg ;; - - -disable-* | --disable-*) - ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid feature name: $ac_feature" >&2 - { (exit 1); exit 1; }; } - ac_feature=`echo $ac_feature | sed 's/-/_/g'` - eval "enable_$ac_feature=no" ;; - - -enable-* | --enable-*) - ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid feature name: $ac_feature" >&2 - { (exit 1); exit 1; }; } - ac_feature=`echo $ac_feature | sed 's/-/_/g'` - case $ac_option in - *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; - *) ac_optarg=yes ;; - esac - eval "enable_$ac_feature='$ac_optarg'" ;; - - -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ - | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ - | --exec | --exe | --ex) - ac_prev=exec_prefix ;; - -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ - | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ - | --exec=* | --exe=* | --ex=*) - exec_prefix=$ac_optarg ;; - - -gas | --gas | --ga | --g) - # Obsolete; use --with-gas. - with_gas=yes ;; - - -help | --help | --hel | --he | -h) - ac_init_help=long ;; - -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) - ac_init_help=recursive ;; - -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) - ac_init_help=short ;; - - -host | --host | --hos | --ho) - ac_prev=host_alias ;; - -host=* | --host=* | --hos=* | --ho=*) - host_alias=$ac_optarg ;; - - -includedir | --includedir | --includedi | --included | --include \ - | --includ | --inclu | --incl | --inc) - ac_prev=includedir ;; - -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ - | --includ=* | --inclu=* | --incl=* | --inc=*) - includedir=$ac_optarg ;; - - -infodir | --infodir | --infodi | --infod | --info | --inf) - ac_prev=infodir ;; - -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) - infodir=$ac_optarg ;; - - -libdir | --libdir | --libdi | --libd) - ac_prev=libdir ;; - -libdir=* | --libdir=* | --libdi=* | --libd=*) - libdir=$ac_optarg ;; - - -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ - | --libexe | --libex | --libe) - ac_prev=libexecdir ;; - -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ - | --libexe=* | --libex=* | --libe=*) - libexecdir=$ac_optarg ;; - - -localstatedir | --localstatedir | --localstatedi | --localstated \ - | --localstate | --localstat | --localsta | --localst \ - | --locals | --local | --loca | --loc | --lo) - ac_prev=localstatedir ;; - -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ - | --localstate=* | --localstat=* | --localsta=* | --localst=* \ - | --locals=* | --local=* | --loca=* | --loc=* | --lo=*) - localstatedir=$ac_optarg ;; - - -mandir | --mandir | --mandi | --mand | --man | --ma | --m) - ac_prev=mandir ;; - -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) - mandir=$ac_optarg ;; - - -nfp | --nfp | --nf) - # Obsolete; use --without-fp. - with_fp=no ;; - - -no-create | --no-create | --no-creat | --no-crea | --no-cre \ - | --no-cr | --no-c | -n) - no_create=yes ;; - - -no-recursion | --no-recursion | --no-recursio | --no-recursi \ - | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) - no_recursion=yes ;; - - -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ - | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ - | --oldin | --oldi | --old | --ol | --o) - ac_prev=oldincludedir ;; - -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ - | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ - | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) - oldincludedir=$ac_optarg ;; - - -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) - ac_prev=prefix ;; - -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) - prefix=$ac_optarg ;; - - -program-prefix | --program-prefix | --program-prefi | --program-pref \ - | --program-pre | --program-pr | --program-p) - ac_prev=program_prefix ;; - -program-prefix=* | --program-prefix=* | --program-prefi=* \ - | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) - program_prefix=$ac_optarg ;; - - -program-suffix | --program-suffix | --program-suffi | --program-suff \ - | --program-suf | --program-su | --program-s) - ac_prev=program_suffix ;; - -program-suffix=* | --program-suffix=* | --program-suffi=* \ - | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) - program_suffix=$ac_optarg ;; - - -program-transform-name | --program-transform-name \ - | --program-transform-nam | --program-transform-na \ - | --program-transform-n | --program-transform- \ - | --program-transform | --program-transfor \ - | --program-transfo | --program-transf \ - | --program-trans | --program-tran \ - | --progr-tra | --program-tr | --program-t) - ac_prev=program_transform_name ;; - -program-transform-name=* | --program-transform-name=* \ - | --program-transform-nam=* | --program-transform-na=* \ - | --program-transform-n=* | --program-transform-=* \ - | --program-transform=* | --program-transfor=* \ - | --program-transfo=* | --program-transf=* \ - | --program-trans=* | --program-tran=* \ - | --progr-tra=* | --program-tr=* | --program-t=*) - program_transform_name=$ac_optarg ;; - - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - silent=yes ;; - - -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) - ac_prev=sbindir ;; - -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ - | --sbi=* | --sb=*) - sbindir=$ac_optarg ;; - - -sharedstatedir | --sharedstatedir | --sharedstatedi \ - | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ - | --sharedst | --shareds | --shared | --share | --shar \ - | --sha | --sh) - ac_prev=sharedstatedir ;; - -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ - | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ - | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ - | --sha=* | --sh=*) - sharedstatedir=$ac_optarg ;; - - -site | --site | --sit) - ac_prev=site ;; - -site=* | --site=* | --sit=*) - site=$ac_optarg ;; - - -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) - ac_prev=srcdir ;; - -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) - srcdir=$ac_optarg ;; - - -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ - | --syscon | --sysco | --sysc | --sys | --sy) - ac_prev=sysconfdir ;; - -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ - | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) - sysconfdir=$ac_optarg ;; - - -target | --target | --targe | --targ | --tar | --ta | --t) - ac_prev=target_alias ;; - -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) - target_alias=$ac_optarg ;; - - -v | -verbose | --verbose | --verbos | --verbo | --verb) - verbose=yes ;; - - -version | --version | --versio | --versi | --vers | -V) - ac_init_version=: ;; - - -with-* | --with-*) - ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid package name: $ac_package" >&2 - { (exit 1); exit 1; }; } - ac_package=`echo $ac_package| sed 's/-/_/g'` - case $ac_option in - *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; - *) ac_optarg=yes ;; - esac - eval "with_$ac_package='$ac_optarg'" ;; - - -without-* | --without-*) - ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid package name: $ac_package" >&2 - { (exit 1); exit 1; }; } - ac_package=`echo $ac_package | sed 's/-/_/g'` - eval "with_$ac_package=no" ;; - - --x) - # Obsolete; use --with-x. - with_x=yes ;; - - -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ - | --x-incl | --x-inc | --x-in | --x-i) - ac_prev=x_includes ;; - -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ - | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) - x_includes=$ac_optarg ;; - - -x-libraries | --x-libraries | --x-librarie | --x-librari \ - | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) - ac_prev=x_libraries ;; - -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ - | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) - x_libraries=$ac_optarg ;; - - -*) { echo "$as_me: error: unrecognized option: $ac_option -Try \`$0 --help' for more information." >&2 - { (exit 1); exit 1; }; } - ;; - - *=*) - ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` - # Reject names that are not valid shell variable names. - expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid variable name: $ac_envvar" >&2 - { (exit 1); exit 1; }; } - ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` - eval "$ac_envvar='$ac_optarg'" - export $ac_envvar ;; - - *) - # FIXME: should be removed in autoconf 3.0. - echo "$as_me: WARNING: you should use --build, --host, --target" >&2 - expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && - echo "$as_me: WARNING: invalid host type: $ac_option" >&2 - : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option} - ;; - - esac -done - -if test -n "$ac_prev"; then - ac_option=--`echo $ac_prev | sed 's/_/-/g'` - { echo "$as_me: error: missing argument to $ac_option" >&2 - { (exit 1); exit 1; }; } -fi - -# Be sure to have absolute paths. -for ac_var in exec_prefix prefix -do - eval ac_val=$`echo $ac_var` - case $ac_val in - [\\/$]* | ?:[\\/]* | NONE | '' ) ;; - *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 - { (exit 1); exit 1; }; };; - esac -done - -# Be sure to have absolute paths. -for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \ - localstatedir libdir includedir oldincludedir infodir mandir -do - eval ac_val=$`echo $ac_var` - case $ac_val in - [\\/$]* | ?:[\\/]* ) ;; - *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 - { (exit 1); exit 1; }; };; - esac -done - -# There might be people who depend on the old broken behavior: `$host' -# used to hold the argument of --host etc. -# FIXME: To remove some day. -build=$build_alias -host=$host_alias -target=$target_alias - -# FIXME: To remove some day. -if test "x$host_alias" != x; then - if test "x$build_alias" = x; then - cross_compiling=maybe - echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host. - If a cross compiler is detected then cross compile mode will be used." >&2 - elif test "x$build_alias" != "x$host_alias"; then - cross_compiling=yes - fi -fi - -ac_tool_prefix= -test -n "$host_alias" && ac_tool_prefix=$host_alias- - -test "$silent" = yes && exec 6>/dev/null - - -# Find the source files, if location was not specified. -if test -z "$srcdir"; then - ac_srcdir_defaulted=yes - # Try the directory containing this script, then its parent. - ac_confdir=`(dirname "$0") 2>/dev/null || -$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$0" : 'X\(//\)[^/]' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$0" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - srcdir=$ac_confdir - if test ! -r $srcdir/$ac_unique_file; then - srcdir=.. - fi -else - ac_srcdir_defaulted=no -fi -if test ! -r $srcdir/$ac_unique_file; then - if test "$ac_srcdir_defaulted" = yes; then - { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2 - { (exit 1); exit 1; }; } - else - { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 - { (exit 1); exit 1; }; } - fi -fi -(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null || - { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2 - { (exit 1); exit 1; }; } -srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'` -ac_env_build_alias_set=${build_alias+set} -ac_env_build_alias_value=$build_alias -ac_cv_env_build_alias_set=${build_alias+set} -ac_cv_env_build_alias_value=$build_alias -ac_env_host_alias_set=${host_alias+set} -ac_env_host_alias_value=$host_alias -ac_cv_env_host_alias_set=${host_alias+set} -ac_cv_env_host_alias_value=$host_alias -ac_env_target_alias_set=${target_alias+set} -ac_env_target_alias_value=$target_alias -ac_cv_env_target_alias_set=${target_alias+set} -ac_cv_env_target_alias_value=$target_alias -ac_env_CC_set=${CC+set} -ac_env_CC_value=$CC -ac_cv_env_CC_set=${CC+set} -ac_cv_env_CC_value=$CC -ac_env_CFLAGS_set=${CFLAGS+set} -ac_env_CFLAGS_value=$CFLAGS -ac_cv_env_CFLAGS_set=${CFLAGS+set} -ac_cv_env_CFLAGS_value=$CFLAGS -ac_env_LDFLAGS_set=${LDFLAGS+set} -ac_env_LDFLAGS_value=$LDFLAGS -ac_cv_env_LDFLAGS_set=${LDFLAGS+set} -ac_cv_env_LDFLAGS_value=$LDFLAGS -ac_env_CPPFLAGS_set=${CPPFLAGS+set} -ac_env_CPPFLAGS_value=$CPPFLAGS -ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set} -ac_cv_env_CPPFLAGS_value=$CPPFLAGS -ac_env_CPP_set=${CPP+set} -ac_env_CPP_value=$CPP -ac_cv_env_CPP_set=${CPP+set} -ac_cv_env_CPP_value=$CPP - -# -# Report the --help message. -# -if test "$ac_init_help" = "long"; then - # Omit some internal or obsolete options to make the list less imposing. - # This message is too long to be a string in the A/UX 3.1 sh. - cat <<_ACEOF -\`configure' configures this package to adapt to many kinds of systems. - -Usage: $0 [OPTION]... [VAR=VALUE]... - -To assign environment variables (e.g., CC, CFLAGS...), specify them as -VAR=VALUE. See below for descriptions of some of the useful variables. - -Defaults for the options are specified in brackets. - -Configuration: - -h, --help display this help and exit - --help=short display options specific to this package - --help=recursive display the short help of all the included packages - -V, --version display version information and exit - -q, --quiet, --silent do not print \`checking...' messages - --cache-file=FILE cache test results in FILE [disabled] - -C, --config-cache alias for \`--cache-file=config.cache' - -n, --no-create do not create output files - --srcdir=DIR find the sources in DIR [configure dir or \`..'] - -_ACEOF - - cat <<_ACEOF -Installation directories: - --prefix=PREFIX install architecture-independent files in PREFIX - [$ac_default_prefix] - --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX - [PREFIX] - -By default, \`make install' will install all the files in -\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify -an installation prefix other than \`$ac_default_prefix' using \`--prefix', -for instance \`--prefix=\$HOME'. - -For better control, use the options below. - -Fine tuning of the installation directories: - --bindir=DIR user executables [EPREFIX/bin] - --sbindir=DIR system admin executables [EPREFIX/sbin] - --libexecdir=DIR program executables [EPREFIX/libexec] - --datadir=DIR read-only architecture-independent data [PREFIX/share] - --sysconfdir=DIR read-only single-machine data [PREFIX/etc] - --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] - --localstatedir=DIR modifiable single-machine data [PREFIX/var] - --libdir=DIR object code libraries [EPREFIX/lib] - --includedir=DIR C header files [PREFIX/include] - --oldincludedir=DIR C header files for non-gcc [/usr/include] - --infodir=DIR info documentation [PREFIX/info] - --mandir=DIR man documentation [PREFIX/man] -_ACEOF - - cat <<\_ACEOF - -System types: - --build=BUILD configure for building on BUILD [guessed] - --host=HOST cross-compile to build programs to run on HOST [BUILD] -_ACEOF -fi - -if test -n "$ac_init_help"; then - - cat <<\_ACEOF - -Optional Features: - --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) - --enable-FEATURE[=ARG] include FEATURE [ARG=yes] - --enable-shared=PKGS build shared libraries default=no - --enable-static=PKGS build static libraries default=yes - --enable-fast-install=PKGS optimize for fast installation default=yes - --disable-libtool-lock avoid locking (might break parallel builds) - -Optional Packages: - --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] - --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) - --with-gnu-ld assume the C compiler uses GNU ld default=no - --with-pic try to use only PIC/non-PIC objects default=use both - -Some influential environment variables: - CC C compiler command - CFLAGS C compiler flags - LDFLAGS linker flags, e.g. -L if you have libraries in a - nonstandard directory - CPPFLAGS C/C++ preprocessor flags, e.g. -I if you have - headers in a nonstandard directory - CPP C preprocessor - -Use these variables to override the choices made by `configure' or to help -it to find libraries and programs with nonstandard names/locations. - -_ACEOF -fi - -if test "$ac_init_help" = "recursive"; then - # If there are subdirs, report their specific --help. - ac_popdir=`pwd` - for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue - test -d $ac_dir || continue - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac - - cd $ac_dir - # Check for guested configure; otherwise get Cygnus style configure. - if test -f $ac_srcdir/configure.gnu; then - echo - $SHELL $ac_srcdir/configure.gnu --help=recursive - elif test -f $ac_srcdir/configure; then - echo - $SHELL $ac_srcdir/configure --help=recursive - elif test -f $ac_srcdir/configure.ac || - test -f $ac_srcdir/configure.in; then - echo - $ac_configure --help - else - echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 - fi - cd $ac_popdir - done -fi - -test -n "$ac_init_help" && exit 0 -if $ac_init_version; then - cat <<\_ACEOF - -Copyright (C) 2003 Free Software Foundation, Inc. -This configure script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it. -_ACEOF - exit 0 -fi -exec 5>config.log -cat >&5 <<_ACEOF -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. - -It was created by $as_me, which was -generated by GNU Autoconf 2.59. Invocation command line was - - $ $0 $@ - -_ACEOF -{ -cat <<_ASUNAME -## --------- ## -## Platform. ## -## --------- ## - -hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` -uname -m = `(uname -m) 2>/dev/null || echo unknown` -uname -r = `(uname -r) 2>/dev/null || echo unknown` -uname -s = `(uname -s) 2>/dev/null || echo unknown` -uname -v = `(uname -v) 2>/dev/null || echo unknown` - -/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` -/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` - -/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` -/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` -/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` -hostinfo = `(hostinfo) 2>/dev/null || echo unknown` -/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` -/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` -/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` - -_ASUNAME - -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - echo "PATH: $as_dir" -done - -} >&5 - -cat >&5 <<_ACEOF - - -## ----------- ## -## Core tests. ## -## ----------- ## - -_ACEOF - - -# Keep a trace of the command line. -# Strip out --no-create and --no-recursion so they do not pile up. -# Strip out --silent because we don't want to record it for future runs. -# Also quote any args containing shell meta-characters. -# Make two passes to allow for proper duplicate-argument suppression. -ac_configure_args= -ac_configure_args0= -ac_configure_args1= -ac_sep= -ac_must_keep_next=false -for ac_pass in 1 2 -do - for ac_arg - do - case $ac_arg in - -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - continue ;; - *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) - ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - case $ac_pass in - 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;; - 2) - ac_configure_args1="$ac_configure_args1 '$ac_arg'" - if test $ac_must_keep_next = true; then - ac_must_keep_next=false # Got value, back to normal. - else - case $ac_arg in - *=* | --config-cache | -C | -disable-* | --disable-* \ - | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ - | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ - | -with-* | --with-* | -without-* | --without-* | --x) - case "$ac_configure_args0 " in - "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; - esac - ;; - -* ) ac_must_keep_next=true ;; - esac - fi - ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'" - # Get rid of the leading space. - ac_sep=" " - ;; - esac - done -done -$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; } -$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; } - -# When interrupted or exit'd, cleanup temporary files, and complete -# config.log. We remove comments because anyway the quotes in there -# would cause problems or look ugly. -# WARNING: Be sure not to use single quotes in there, as some shells, -# such as our DU 5.0 friend, will then `close' the trap. -trap 'exit_status=$? - # Save into config.log some information that might help in debugging. - { - echo - - cat <<\_ASBOX -## ---------------- ## -## Cache variables. ## -## ---------------- ## -_ASBOX - echo - # The following way of writing the cache mishandles newlines in values, -{ - (set) 2>&1 | - case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in - *ac_space=\ *) - sed -n \ - "s/'"'"'/'"'"'\\\\'"'"''"'"'/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p" - ;; - *) - sed -n \ - "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" - ;; - esac; -} - echo - - cat <<\_ASBOX -## ----------------- ## -## Output variables. ## -## ----------------- ## -_ASBOX - echo - for ac_var in $ac_subst_vars - do - eval ac_val=$`echo $ac_var` - echo "$ac_var='"'"'$ac_val'"'"'" - done | sort - echo - - if test -n "$ac_subst_files"; then - cat <<\_ASBOX -## ------------- ## -## Output files. ## -## ------------- ## -_ASBOX - echo - for ac_var in $ac_subst_files - do - eval ac_val=$`echo $ac_var` - echo "$ac_var='"'"'$ac_val'"'"'" - done | sort - echo - fi - - if test -s confdefs.h; then - cat <<\_ASBOX -## ----------- ## -## confdefs.h. ## -## ----------- ## -_ASBOX - echo - sed "/^$/d" confdefs.h | sort - echo - fi - test "$ac_signal" != 0 && - echo "$as_me: caught signal $ac_signal" - echo "$as_me: exit $exit_status" - } >&5 - rm -f core *.core && - rm -rf conftest* confdefs* conf$$* $ac_clean_files && - exit $exit_status - ' 0 -for ac_signal in 1 2 13 15; do - trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal -done -ac_signal=0 - -# confdefs.h avoids OS command line length limits that DEFS can exceed. -rm -rf conftest* confdefs.h -# AIX cpp loses on an empty file, so make sure it contains at least a newline. -echo >confdefs.h - -# Predefined preprocessor variables. - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_NAME "$PACKAGE_NAME" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_TARNAME "$PACKAGE_TARNAME" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_VERSION "$PACKAGE_VERSION" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_STRING "$PACKAGE_STRING" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" -_ACEOF - - -# Let the site file select an alternate cache file if it wants to. -# Prefer explicitly selected file to automatically selected ones. -if test -z "$CONFIG_SITE"; then - if test "x$prefix" != xNONE; then - CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" - else - CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" - fi -fi -for ac_site_file in $CONFIG_SITE; do - if test -r "$ac_site_file"; then - { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5 -echo "$as_me: loading site script $ac_site_file" >&6;} - sed 's/^/| /' "$ac_site_file" >&5 - . "$ac_site_file" - fi -done - -if test -r "$cache_file"; then - # Some versions of bash will fail to source /dev/null (special - # files actually), so we avoid doing that. - if test -f "$cache_file"; then - { echo "$as_me:$LINENO: loading cache $cache_file" >&5 -echo "$as_me: loading cache $cache_file" >&6;} - case $cache_file in - [\\/]* | ?:[\\/]* ) . $cache_file;; - *) . ./$cache_file;; - esac - fi -else - { echo "$as_me:$LINENO: creating cache $cache_file" >&5 -echo "$as_me: creating cache $cache_file" >&6;} - >$cache_file -fi - -# Check that the precious variables saved in the cache have kept the same -# value. -ac_cache_corrupted=false -for ac_var in `(set) 2>&1 | - sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do - eval ac_old_set=\$ac_cv_env_${ac_var}_set - eval ac_new_set=\$ac_env_${ac_var}_set - eval ac_old_val="\$ac_cv_env_${ac_var}_value" - eval ac_new_val="\$ac_env_${ac_var}_value" - case $ac_old_set,$ac_new_set in - set,) - { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 -echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,set) - { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5 -echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,);; - *) - if test "x$ac_old_val" != "x$ac_new_val"; then - { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 -echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} - { echo "$as_me:$LINENO: former value: $ac_old_val" >&5 -echo "$as_me: former value: $ac_old_val" >&2;} - { echo "$as_me:$LINENO: current value: $ac_new_val" >&5 -echo "$as_me: current value: $ac_new_val" >&2;} - ac_cache_corrupted=: - fi;; - esac - # Pass precious variables to config.status. - if test "$ac_new_set" = set; then - case $ac_new_val in - *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) - ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; - *) ac_arg=$ac_var=$ac_new_val ;; - esac - case " $ac_configure_args " in - *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. - *) ac_configure_args="$ac_configure_args '$ac_arg'" ;; - esac - fi -done -if $ac_cache_corrupted; then - { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5 -echo "$as_me: error: changes in the environment can compromise the build" >&2;} - { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 -echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;} - { (exit 1); exit 1; }; } -fi - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - - - - - - - - - - - - - - - - - - - ac_config_headers="$ac_config_headers avcall.h" - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. -set dummy ${ac_tool_prefix}gcc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}gcc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$ac_cv_prog_CC"; then - ac_ct_CC=$CC - # Extract the first word of "gcc", so it can be a program name with args. -set dummy gcc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="gcc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - CC=$ac_ct_CC -else - CC="$ac_cv_prog_CC" -fi - -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. -set dummy ${ac_tool_prefix}cc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$ac_cv_prog_CC"; then - ac_ct_CC=$CC - # Extract the first word of "cc", so it can be a program name with args. -set dummy cc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - CC=$ac_ct_CC -else - CC="$ac_cv_prog_CC" -fi - -fi -if test -z "$CC"; then - # Extract the first word of "cc", so it can be a program name with args. -set dummy cc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else - ac_prog_rejected=no -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then - ac_prog_rejected=yes - continue - fi - ac_cv_prog_CC="cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -if test $ac_prog_rejected = yes; then - # We found a bogon in the path, so make sure we never use it. - set dummy $ac_cv_prog_CC - shift - if test $# != 0; then - # We chose a different compiler from the bogus one. - # However, it has the same basename, so the bogon will be chosen - # first if we set CC to just the basename; use the full file name. - shift - ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" - fi -fi -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - for ac_prog in cl - do - # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="$ac_tool_prefix$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - test -n "$CC" && break - done -fi -if test -z "$CC"; then - ac_ct_CC=$CC - for ac_prog in cl -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - test -n "$ac_ct_CC" && break -done - - CC=$ac_ct_CC -fi - -fi - - -test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH -See \`config.log' for more details." >&5 -echo "$as_me: error: no acceptable C compiler found in \$PATH -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } - -# Provide some information about the compiler. -echo "$as_me:$LINENO:" \ - "checking for C compiler version" >&5 -ac_compiler=`set X $ac_compile; echo $2` -{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version &5\"") >&5 - (eval $ac_compiler --version &5) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v &5\"") >&5 - (eval $ac_compiler -v &5) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V &5\"") >&5 - (eval $ac_compiler -V &5) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files a.out a.exe b.out" -# Try to create an executable without -o first, disregard a.out. -# It will help us diagnose broken compilers, and finding out an intuition -# of exeext. -echo "$as_me:$LINENO: checking for C compiler default output file name" >&5 -echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6 -ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` -if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5 - (eval $ac_link_default) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - # Find the output, starting from the most likely. This scheme is -# not robust to junk in `.', hence go to wildcards (a.*) only as a last -# resort. - -# Be careful to initialize this variable, since it used to be cached. -# Otherwise an old cache value of `no' led to `EXEEXT = no' in a Makefile. -ac_cv_exeext= -# b.out is created by i960 compilers. -for ac_file in a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out -do - test -f "$ac_file" || continue - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) - ;; - conftest.$ac_ext ) - # This is the source file. - ;; - [ab].out ) - # We found the default executable, but exeext='' is most - # certainly right. - break;; - *.* ) - ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - # FIXME: I believe we export ac_cv_exeext for Libtool, - # but it would be cool to find out if it's true. Does anybody - # maintain Libtool? --akim. - export ac_cv_exeext - break;; - * ) - break;; - esac -done -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -{ { echo "$as_me:$LINENO: error: C compiler cannot create executables -See \`config.log' for more details." >&5 -echo "$as_me: error: C compiler cannot create executables -See \`config.log' for more details." >&2;} - { (exit 77); exit 77; }; } -fi - -ac_exeext=$ac_cv_exeext -echo "$as_me:$LINENO: result: $ac_file" >&5 -echo "${ECHO_T}$ac_file" >&6 - -# Check the compiler produces executables we can run. If not, either -# the compiler is broken, or we cross compile. -echo "$as_me:$LINENO: checking whether the C compiler works" >&5 -echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6 -# FIXME: These cross compiler hacks should be removed for Autoconf 3.0 -# If not cross compiling, check that we can run a simple program. -if test "$cross_compiling" != yes; then - if { ac_try='./$ac_file' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cross_compiling=no - else - if test "$cross_compiling" = maybe; then - cross_compiling=yes - else - { { echo "$as_me:$LINENO: error: cannot run C compiled programs. -If you meant to cross compile, use \`--host'. -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot run C compiled programs. -If you meant to cross compile, use \`--host'. -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } - fi - fi -fi -echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 - -rm -f a.out a.exe conftest$ac_cv_exeext b.out -ac_clean_files=$ac_clean_files_save -# Check the compiler produces executables we can run. If not, either -# the compiler is broken, or we cross compile. -echo "$as_me:$LINENO: checking whether we are cross compiling" >&5 -echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6 -echo "$as_me:$LINENO: result: $cross_compiling" >&5 -echo "${ECHO_T}$cross_compiling" >&6 - -echo "$as_me:$LINENO: checking for suffix of executables" >&5 -echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6 -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - # If both `conftest.exe' and `conftest' are `present' (well, observable) -# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will -# work properly (i.e., refer to `conftest.exe'), while it won't with -# `rm'. -for ac_file in conftest.exe conftest conftest.*; do - test -f "$ac_file" || continue - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) ;; - *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - export ac_cv_exeext - break;; - * ) break;; - esac -done -else - { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } -fi - -rm -f conftest$ac_cv_exeext -echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5 -echo "${ECHO_T}$ac_cv_exeext" >&6 - -rm -f conftest.$ac_ext -EXEEXT=$ac_cv_exeext -ac_exeext=$EXEEXT -echo "$as_me:$LINENO: checking for suffix of object files" >&5 -echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6 -if test "${ac_cv_objext+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.o conftest.obj -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg ) ;; - *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` - break;; - esac -done -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot compute suffix of object files: cannot compile -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } -fi - -rm -f conftest.$ac_cv_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 -echo "${ECHO_T}$ac_cv_objext" >&6 -OBJEXT=$ac_cv_objext -ac_objext=$OBJEXT -echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 -echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6 -if test "${ac_cv_c_compiler_gnu+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ -#ifndef __GNUC__ - choke me -#endif - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_compiler_gnu=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_compiler_gnu=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -ac_cv_c_compiler_gnu=$ac_compiler_gnu - -fi -echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5 -echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6 -GCC=`test $ac_compiler_gnu = yes && echo yes` -ac_test_CFLAGS=${CFLAGS+set} -ac_save_CFLAGS=$CFLAGS -CFLAGS="-g" -echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 -echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6 -if test "${ac_cv_prog_cc_g+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_prog_cc_g=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_prog_cc_g=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 -echo "${ECHO_T}$ac_cv_prog_cc_g" >&6 -if test "$ac_test_CFLAGS" = set; then - CFLAGS=$ac_save_CFLAGS -elif test $ac_cv_prog_cc_g = yes; then - if test "$GCC" = yes; then - CFLAGS="-g -O2" - else - CFLAGS="-g" - fi -else - if test "$GCC" = yes; then - CFLAGS="-O2" - else - CFLAGS= - fi -fi -echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5 -echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6 -if test "${ac_cv_prog_cc_stdc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_cv_prog_cc_stdc=no -ac_save_CC=$CC -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include -#include -#include -/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ -struct buf { int x; }; -FILE * (*rcsopen) (struct buf *, struct stat *, int); -static char *e (p, i) - char **p; - int i; -{ - return p[i]; -} -static char *f (char * (*g) (char **, int), char **p, ...) -{ - char *s; - va_list v; - va_start (v,p); - s = g (p, va_arg (v,int)); - va_end (v); - return s; -} - -/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has - function prototypes and stuff, but not '\xHH' hex character constants. - These don't provoke an error unfortunately, instead are silently treated - as 'x'. The following induces an error, until -std1 is added to get - proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an - array size at least. It's necessary to write '\x00'==0 to get something - that's true only with -std1. */ -int osf4_cc_array ['\x00' == 0 ? 1 : -1]; - -int test (int i, double x); -struct s1 {int (*f) (int a);}; -struct s2 {int (*f) (double a);}; -int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); -int argc; -char **argv; -int -main () -{ -return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; - ; - return 0; -} -_ACEOF -# Don't try gcc -ansi; that turns off useful extensions and -# breaks some systems' header files. -# AIX -qlanglvl=ansi -# Ultrix and OSF/1 -std1 -# HP-UX 10.20 and later -Ae -# HP-UX older versions -Aa -D_HPUX_SOURCE -# SVR4 -Xc -D__EXTENSIONS__ -for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" -do - CC="$ac_save_CC $ac_arg" - rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_prog_cc_stdc=$ac_arg -break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext -done -rm -f conftest.$ac_ext conftest.$ac_objext -CC=$ac_save_CC - -fi - -case "x$ac_cv_prog_cc_stdc" in - x|xno) - echo "$as_me:$LINENO: result: none needed" >&5 -echo "${ECHO_T}none needed" >&6 ;; - *) - echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5 -echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6 - CC="$CC $ac_cv_prog_cc_stdc" ;; -esac - -# Some people use a C++ compiler to compile C. Since we use `exit', -# in C++ we need to declare it. In case someone uses the same compiler -# for both compiling C and C++ we need to have the C++ compiler decide -# the declaration of exit, since it's the most demanding environment. -cat >conftest.$ac_ext <<_ACEOF -#ifndef __cplusplus - choke me -#endif -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - for ac_declaration in \ - '' \ - 'extern "C" void std::exit (int) throw (); using std::exit;' \ - 'extern "C" void std::exit (int); using std::exit;' \ - 'extern "C" void exit (int) throw ();' \ - 'extern "C" void exit (int);' \ - 'void exit (int);' -do - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_declaration -#include -int -main () -{ -exit (42); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -continue -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_declaration -int -main () -{ -exit (42); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -done -rm -f conftest* -if test -n "$ac_declaration"; then - echo '#ifdef __cplusplus' >>confdefs.h - echo $ac_declaration >>confdefs.h - echo '#endif' >>confdefs.h -fi - -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5 -echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6 -# On Suns, sometimes $CPP names a directory. -if test -n "$CPP" && test -d "$CPP"; then - CPP= -fi -if test -z "$CPP"; then - if test "${ac_cv_prog_CPP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - # Double quotes because CPP needs to be expanded - for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" - do - ac_preproc_ok=false -for ac_c_preproc_warn_flag in '' yes -do - # Use a header file that comes with gcc, so configuring glibc - # with a fresh cross-compiler works. - # Prefer to if __STDC__ is defined, since - # exists even on freestanding compilers. - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#ifdef __STDC__ -# include -#else -# include -#endif - Syntax error -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Broken: fails on valid input. -continue -fi -rm -f conftest.err conftest.$ac_ext - - # OK, works on sane cases. Now check whether non-existent headers - # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - # Broken: success on invalid input. -continue -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Passes both tests. -ac_preproc_ok=: -break -fi -rm -f conftest.err conftest.$ac_ext - -done -# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.err conftest.$ac_ext -if $ac_preproc_ok; then - break -fi - - done - ac_cv_prog_CPP=$CPP - -fi - CPP=$ac_cv_prog_CPP -else - ac_cv_prog_CPP=$CPP -fi -echo "$as_me:$LINENO: result: $CPP" >&5 -echo "${ECHO_T}$CPP" >&6 -ac_preproc_ok=false -for ac_c_preproc_warn_flag in '' yes -do - # Use a header file that comes with gcc, so configuring glibc - # with a fresh cross-compiler works. - # Prefer to if __STDC__ is defined, since - # exists even on freestanding compilers. - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#ifdef __STDC__ -# include -#else -# include -#endif - Syntax error -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Broken: fails on valid input. -continue -fi -rm -f conftest.err conftest.$ac_ext - - # OK, works on sane cases. Now check whether non-existent headers - # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - # Broken: success on invalid input. -continue -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Passes both tests. -ac_preproc_ok=: -break -fi -rm -f conftest.err conftest.$ac_ext - -done -# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.err conftest.$ac_ext -if $ac_preproc_ok; then - : -else - { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details." >&5 -echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } -fi - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - - -echo "$as_me:$LINENO: checking for egrep" >&5 -echo $ECHO_N "checking for egrep... $ECHO_C" >&6 -if test "${ac_cv_prog_egrep+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if echo a | (grep -E '(a|b)') >/dev/null 2>&1 - then ac_cv_prog_egrep='grep -E' - else ac_cv_prog_egrep='egrep' - fi -fi -echo "$as_me:$LINENO: result: $ac_cv_prog_egrep" >&5 -echo "${ECHO_T}$ac_cv_prog_egrep" >&6 - EGREP=$ac_cv_prog_egrep - - -if test $ac_cv_c_compiler_gnu = yes; then - echo "$as_me:$LINENO: checking whether $CC needs -traditional" >&5 -echo $ECHO_N "checking whether $CC needs -traditional... $ECHO_C" >&6 -if test "${ac_cv_prog_gcc_traditional+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_pattern="Autoconf.*'x'" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -Autoconf TIOCGETP -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "$ac_pattern" >/dev/null 2>&1; then - ac_cv_prog_gcc_traditional=yes -else - ac_cv_prog_gcc_traditional=no -fi -rm -f conftest* - - - if test $ac_cv_prog_gcc_traditional = no; then - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -Autoconf TCGETA -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "$ac_pattern" >/dev/null 2>&1; then - ac_cv_prog_gcc_traditional=yes -fi -rm -f conftest* - - fi -fi -echo "$as_me:$LINENO: result: $ac_cv_prog_gcc_traditional" >&5 -echo "${ECHO_T}$ac_cv_prog_gcc_traditional" >&6 - if test $ac_cv_prog_gcc_traditional = yes; then - CC="$CC -traditional" - fi -fi - - -echo "$as_me:$LINENO: checking whether using GNU C" >&5 -echo $ECHO_N "checking whether using GNU C... $ECHO_C" >&6 -if test "${cl_cv_prog_cc_gcc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#ifdef __GNUC__ - yes -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1; then - cl_cv_prog_cc_gcc=yes -else - cl_cv_prog_cc_gcc=no -fi -rm -f conftest* - - -fi -echo "$as_me:$LINENO: result: $cl_cv_prog_cc_gcc" >&5 -echo "${ECHO_T}$cl_cv_prog_cc_gcc" >&6 -if test $cl_cv_prog_cc_gcc = yes; then - CC_GCC=true - GCC_X_NONE='-x none' -else - CC_GCC=false - GCC_X_NONE='' -fi - - - -echo "$as_me:$LINENO: checking for underscore in external names" >&5 -echo $ECHO_N "checking for underscore in external names... $ECHO_C" >&6 -if test "${cl_cv_prog_as_underscore+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat > conftest.c <&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } >/dev/null 2>&1 -if grep _foo conftest.s >/dev/null ; then - cl_cv_prog_as_underscore=yes -else - cl_cv_prog_as_underscore=no -fi -rm -f conftest* - -fi -echo "$as_me:$LINENO: result: $cl_cv_prog_as_underscore" >&5 -echo "${ECHO_T}$cl_cv_prog_as_underscore" >&6 -if test $cl_cv_prog_as_underscore = yes; then - AS_UNDERSCORE=true - -cat >>confdefs.h <<\_ACEOF -#define ASM_UNDERSCORE -_ACEOF - -else - AS_UNDERSCORE=false -fi - -# Extract the first word of "ranlib", so it can be a program name with args. -set dummy ranlib; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_RANLIB+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$RANLIB"; then - ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_RANLIB="ranlib" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - - test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB="true" -fi -fi -RANLIB=$ac_cv_prog_RANLIB -if test -n "$RANLIB"; then - echo "$as_me:$LINENO: result: $RANLIB" >&5 -echo "${ECHO_T}$RANLIB" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5 -echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6 -set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,:./+-,___p_,'` -if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.make <<\_ACEOF -all: - @echo 'ac_maketemp="$(MAKE)"' -_ACEOF -# GNU make sometimes prints "make[1]: Entering...", which would confuse us. -eval `${MAKE-make} -f conftest.make 2>/dev/null | grep temp=` -if test -n "$ac_maketemp"; then - eval ac_cv_prog_make_${ac_make}_set=yes -else - eval ac_cv_prog_make_${ac_make}_set=no -fi -rm -f conftest.make -fi -if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 - SET_MAKE= -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 - SET_MAKE="MAKE=${MAKE-make}" -fi - -# Find a good install program. We prefer a C program (faster), -# so one script is as good as another. But avoid the broken or -# incompatible versions: -# SysV /etc/install, /usr/sbin/install -# SunOS /usr/etc/install -# IRIX /sbin/install -# AIX /bin/install -# AFS /usr/afsws/bin/install, which mis-handles nonexistent args -# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" -# ./install, which can be erroneously created by make from ./install.sh. -echo "$as_me:$LINENO: checking for a BSD compatible install" >&5 -echo $ECHO_N "checking for a BSD compatible install... $ECHO_C" >&6 -if test -z "$INSTALL"; then -if test "${cl_cv_path_install+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" - for ac_dir in $PATH; do - # Account for people who put trailing slashes in PATH elements. - case "$ac_dir/" in - /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;; - *) - # OSF1 and SCO ODT 3.0 have their own names for install. - # Don't use installbsd from OSF since it installs stuff as root - # by default. - for ac_prog in ginstall scoinst install; do - if test -f $ac_dir/$ac_prog; then - if test $ac_prog = install && - grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then - # AIX install. It has an incompatible calling convention. - : - else - cl_cv_path_install="$ac_dir/$ac_prog -c" - break 2 - fi - fi - done - ;; - esac - done - IFS="$ac_save_ifs" - # As a last resort, use the absolute pathname of cp. - if test -z "$cl_cv_path_install"; then - cl_cv_path_install="cp" - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" - for ac_dir in $PATH; do - if test -f $ac_dir/cp; then - cl_cv_path_install="$ac_dir/cp" - break - fi - done - IFS="$ac_save_ifs" - fi - -fi - INSTALL="$cl_cv_path_install" -fi -echo "$as_me:$LINENO: result: $INSTALL" >&5 -echo "${ECHO_T}$INSTALL" >&6 -# Use test -z because SunOS4 sh mishandles braces in ${var-val}. -# It thinks the first close brace ends the variable substitution. -test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='$(INSTALL)' -if test -z "$INSTALL_DATA"; then - case "$INSTALL" in - cp | */cp ) INSTALL_DATA='$(INSTALL)' ;; - * ) INSTALL_DATA='$(INSTALL) -m 644' ;; - esac -fi - -echo "$as_me:$LINENO: checking how to copy files" >&5 -echo $ECHO_N "checking how to copy files... $ECHO_C" >&6 -if test "${cl_cv_prog_cp+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -echo "blabla" > conftest.x -err=`/bin/sh -c "cp -p conftest.x conftest.y 2>&1"` -if test -z "$err"; then - cl_cv_prog_cp='cp -p' -else - cl_cv_prog_cp='cp' -fi -rm -f conftest* - -fi -echo "$as_me:$LINENO: result: $cl_cv_prog_cp" >&5 -echo "${ECHO_T}$cl_cv_prog_cp" >&6 -CP="$cl_cv_prog_cp" - -echo "$as_me:$LINENO: checking how to make hard links" >&5 -echo $ECHO_N "checking how to make hard links... $ECHO_C" >&6 -if test "${cl_cv_prog_LN+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -rm -f conftestdata conftestfile -echo data > conftestfile -if ln conftestfile conftestdata 2>/dev/null; then - cl_cv_prog_LN=ln -else - cl_cv_prog_LN="$cl_cv_prog_cp" -fi -rm -f conftestdata conftestfile - -fi -echo "$as_me:$LINENO: result: $cl_cv_prog_LN" >&5 -echo "${ECHO_T}$cl_cv_prog_LN" >&6 -LN="$cl_cv_prog_LN" - - ac_aux_dir=${srcdir}/../autoconf -ac_config_guess="$SHELL $ac_aux_dir/config.guess" -ac_config_sub="$SHELL $ac_aux_dir/config.sub" -# Make sure we can run config.sub. -$ac_config_sub sun4 >/dev/null 2>&1 || - { { echo "$as_me:$LINENO: error: cannot run $ac_config_sub" >&5 -echo "$as_me: error: cannot run $ac_config_sub" >&2;} - { (exit 1); exit 1; }; } - -echo "$as_me:$LINENO: checking build system type" >&5 -echo $ECHO_N "checking build system type... $ECHO_C" >&6 -if test "${ac_cv_build+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_cv_build_alias=$build_alias -test -z "$ac_cv_build_alias" && - ac_cv_build_alias=`$ac_config_guess` -test -z "$ac_cv_build_alias" && - { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5 -echo "$as_me: error: cannot guess build type; you must specify one" >&2;} - { (exit 1); exit 1; }; } -ac_cv_build=`$ac_config_sub $ac_cv_build_alias` || - { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_build_alias failed" >&5 -echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed" >&2;} - { (exit 1); exit 1; }; } - -fi -echo "$as_me:$LINENO: result: $ac_cv_build" >&5 -echo "${ECHO_T}$ac_cv_build" >&6 -build=$ac_cv_build -build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` - - -echo "$as_me:$LINENO: checking host system type" >&5 -echo $ECHO_N "checking host system type... $ECHO_C" >&6 -if test "${ac_cv_host+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_cv_host_alias=$host_alias -test -z "$ac_cv_host_alias" && - ac_cv_host_alias=$ac_cv_build_alias -ac_cv_host=`$ac_config_sub $ac_cv_host_alias` || - { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_host_alias failed" >&5 -echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;} - { (exit 1); exit 1; }; } - -fi -echo "$as_me:$LINENO: result: $ac_cv_host" >&5 -echo "${ECHO_T}$ac_cv_host" >&6 -host=$ac_cv_host -host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` - - - - -case "$host_cpu" in - i[4567]86 ) - host_cpu=i386 - ;; - alphaev[4-8] | alphaev56 | alphapca5[67] | alphaev6[78] ) - host_cpu=alpha - ;; - hppa1.0 | hppa1.1 | hppa2.0* | hppa64 ) - host_cpu=hppa - ;; - powerpc ) - host_cpu=rs6000 - ;; - c1 | c2 | c32 | c34 | c38 | c4 ) - host_cpu=convex - ;; - arm* ) - host_cpu=arm - ;; - mips ) - echo "$as_me:$LINENO: checking for 64-bit MIPS" >&5 -echo $ECHO_N "checking for 64-bit MIPS... $ECHO_C" >&6 -if test "${cl_cv_host_mips64+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#if defined(_MIPS_SZLONG) -#if (_MIPS_SZLONG == 64) -/* We should also check for (_MIPS_SZPTR == 64), but gcc keeps this at 32. */ - yes -#endif -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1; then - cl_cv_host_mips64=yes -else - cl_cv_host_mips64=no -fi -rm -f conftest* - - -fi -echo "$as_me:$LINENO: result: $cl_cv_host_mips64" >&5 -echo "${ECHO_T}$cl_cv_host_mips64" >&6 -if test $cl_cv_host_mips64 = yes; then - host_cpu=mips64 -else - echo "$as_me:$LINENO: checking for MIPS with n32 ABI" >&5 -echo $ECHO_N "checking for MIPS with n32 ABI... $ECHO_C" >&6 -if test "${cl_cv_host_mipsn32+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#if __mips >= 3 - yes -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1; then - cl_cv_host_mipsn32=yes -else - cl_cv_host_mipsn32=no -fi -rm -f conftest* - - -fi -echo "$as_me:$LINENO: result: $cl_cv_host_mipsn32" >&5 -echo "${ECHO_T}$cl_cv_host_mipsn32" >&6 -if test $cl_cv_host_mipsn32 = yes; then - host_cpu=mipsn32 -fi -fi - ;; - sparc | sparc64 ) - echo "$as_me:$LINENO: checking for 64-bit SPARC" >&5 -echo $ECHO_N "checking for 64-bit SPARC... $ECHO_C" >&6 -if test "${cl_cv_host_sparc64+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#if defined(__sparcv9) || defined(__arch64__) - yes -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1; then - cl_cv_host_sparc64=yes -else - cl_cv_host_sparc64=no -fi -rm -f conftest* - - -fi -echo "$as_me:$LINENO: result: $cl_cv_host_sparc64" >&5 -echo "${ECHO_T}$cl_cv_host_sparc64" >&6 -if test $cl_cv_host_sparc64 = yes; then - host_cpu=sparc64 -else - host_cpu=sparc -fi - ;; -esac -cat >> confdefs.h </dev/null`} - case X$UNAME in - *-DOS) lt_cv_sys_path_separator=';' ;; - *) lt_cv_sys_path_separator=':' ;; - esac - PATH_SEPARATOR=$lt_cv_sys_path_separator -fi - - -# Check whether --with-gnu-ld or --without-gnu-ld was given. -if test "${with_gnu_ld+set}" = set; then - withval="$with_gnu_ld" - test "$withval" = no || with_gnu_ld=yes -else - with_gnu_ld=no -fi; -ac_prog=ld -if test "$GCC" = yes; then - # Check if gcc -print-prog-name=ld gives a path. - echo "$as_me:$LINENO: checking for ld used by GCC" >&5 -echo $ECHO_N "checking for ld used by GCC... $ECHO_C" >&6 - case $host in - *-*-mingw*) - # gcc leaves a trailing carriage return which upsets mingw - ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; - *) - ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; - esac - case $ac_prog in - # Accept absolute paths. - [\\/]* | [A-Za-z]:[\\/]*) - re_direlt='/[^/][^/]*/\.\./' - # Canonicalize the path of ld - ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` - while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do - ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` - done - test -z "$LD" && LD="$ac_prog" - ;; - "") - # If it fails, then pretend we aren't using GCC. - ac_prog=ld - ;; - *) - # If it is relative, then search for the first ld in PATH. - with_gnu_ld=unknown - ;; - esac -elif test "$with_gnu_ld" = yes; then - echo "$as_me:$LINENO: checking for GNU ld" >&5 -echo $ECHO_N "checking for GNU ld... $ECHO_C" >&6 -else - echo "$as_me:$LINENO: checking for non-GNU ld" >&5 -echo $ECHO_N "checking for non-GNU ld... $ECHO_C" >&6 -fi -if test "${lt_cv_path_LD+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -z "$LD"; then - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH; do - test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then - lt_cv_path_LD="$ac_dir/$ac_prog" - # Check to see if the program is GNU ld. I'd rather use --version, - # but apparently some GNU ld's only accept -v. - # Break only if it was the GNU/non-GNU ld that we prefer. - if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then - test "$with_gnu_ld" != no && break - else - test "$with_gnu_ld" != yes && break - fi - fi - done - IFS="$ac_save_ifs" -else - lt_cv_path_LD="$LD" # Let the user override the test with a path. -fi -fi - -LD="$lt_cv_path_LD" -if test -n "$LD"; then - echo "$as_me:$LINENO: result: $LD" >&5 -echo "${ECHO_T}$LD" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi -test -z "$LD" && { { echo "$as_me:$LINENO: error: no acceptable ld found in \$PATH" >&5 -echo "$as_me: error: no acceptable ld found in \$PATH" >&2;} - { (exit 1); exit 1; }; } -echo "$as_me:$LINENO: checking if the linker ($LD) is GNU ld" >&5 -echo $ECHO_N "checking if the linker ($LD) is GNU ld... $ECHO_C" >&6 -if test "${lt_cv_prog_gnu_ld+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - # I'd rather use --version here, but apparently some GNU ld's only accept -v. -if $LD -v 2>&1 &5; then - lt_cv_prog_gnu_ld=yes -else - lt_cv_prog_gnu_ld=no -fi -fi -echo "$as_me:$LINENO: result: $lt_cv_prog_gnu_ld" >&5 -echo "${ECHO_T}$lt_cv_prog_gnu_ld" >&6 -with_gnu_ld=$lt_cv_prog_gnu_ld - - -echo "$as_me:$LINENO: checking for $LD option to reload object files" >&5 -echo $ECHO_N "checking for $LD option to reload object files... $ECHO_C" >&6 -if test "${lt_cv_ld_reload_flag+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - lt_cv_ld_reload_flag='-r' -fi -echo "$as_me:$LINENO: result: $lt_cv_ld_reload_flag" >&5 -echo "${ECHO_T}$lt_cv_ld_reload_flag" >&6 -reload_flag=$lt_cv_ld_reload_flag -test -n "$reload_flag" && reload_flag=" $reload_flag" - -echo "$as_me:$LINENO: checking for BSD-compatible nm" >&5 -echo $ECHO_N "checking for BSD-compatible nm... $ECHO_C" >&6 -if test "${lt_cv_path_NM+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$NM"; then - # Let the user override the test. - lt_cv_path_NM="$NM" -else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do - test -z "$ac_dir" && ac_dir=. - tmp_nm=$ac_dir/${ac_tool_prefix}nm - if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then - # Check to see if the nm accepts a BSD-compat flag. - # Adding the `sed 1q' prevents false positives on HP-UX, which says: - # nm: unknown option "B" ignored - # Tru64's nm complains that /dev/null is an invalid object file - if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then - lt_cv_path_NM="$tmp_nm -B" - break - elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then - lt_cv_path_NM="$tmp_nm -p" - break - else - lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but - continue # so that we can try to find one that supports BSD flags - fi - fi - done - IFS="$ac_save_ifs" - test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm -fi -fi - -NM="$lt_cv_path_NM" -echo "$as_me:$LINENO: result: $NM" >&5 -echo "${ECHO_T}$NM" >&6 - -echo "$as_me:$LINENO: checking for a sed that does not truncate output" >&5 -echo $ECHO_N "checking for a sed that does not truncate output... $ECHO_C" >&6 -if test "${lt_cv_path_SED+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - # Loop through the user's path and test for sed and gsed. -# Then use that list of sed's as ones to test for truncation. -as_executable_p="test -f" -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in sed gsed; do - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then - _sed_list="$_sed_list $as_dir/$ac_prog$ac_exec_ext" - fi - done - done -done - - # Create a temporary directory, and hook for its removal unless debugging. -$debug || -{ - trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 - trap '{ (exit 1); exit 1; }' 1 2 13 15 -} - -# Create a (secure) tmp directory for tmp files. -: ${TMPDIR=/tmp} -{ - tmp=`(umask 077 && mktemp -d -q "$TMPDIR/sedXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" -} || -{ - tmp=$TMPDIR/sed$$-$RANDOM - (umask 077 && mkdir $tmp) -} || -{ - echo "$me: cannot create a temporary directory in $TMPDIR" >&2 - { (exit 1); exit 1; } -} - _max=0 - _count=0 - # Add /usr/xpg4/bin/sed as it is typically found on Solaris - # along with /bin/sed that truncates output. - for _sed in $_sed_list /usr/xpg4/bin/sed; do - test ! -f ${_sed} && break - cat /dev/null > "$tmp/sed.in" - _count=0 - echo ${ECHO_N-$ac_n} "0123456789${ECHO_C-$ac_c}" >"$tmp/sed.in" - # Check for GNU sed and select it if it is found. - if "${_sed}" --version 2>&1 < /dev/null | egrep '(GNU)' > /dev/null; then - lt_cv_path_SED=${_sed} - break - fi - while true; do - cat "$tmp/sed.in" "$tmp/sed.in" >"$tmp/sed.tmp" - mv "$tmp/sed.tmp" "$tmp/sed.in" - cp "$tmp/sed.in" "$tmp/sed.nl" - echo >>"$tmp/sed.nl" - ${_sed} -e 's/a$//' < "$tmp/sed.nl" >"$tmp/sed.out" || break - cmp -s "$tmp/sed.out" "$tmp/sed.nl" || break - # 40000 chars as input seems more than enough - test $_count -gt 10 && break - _count=`expr $_count + 1` - if test $_count -gt $_max; then - _max=$_count - lt_cv_path_SED=$_sed - fi - done - done - rm -rf "$tmp" - -fi - -if test "X$SED" != "X"; then - lt_cv_path_SED=$SED -else - SED=$lt_cv_path_SED -fi -echo "$as_me:$LINENO: result: $SED" >&5 -echo "${ECHO_T}$SED" >&6 - -echo "$as_me:$LINENO: checking whether ln -s works" >&5 -echo $ECHO_N "checking whether ln -s works... $ECHO_C" >&6 -if test "${cl_cv_prog_LN_S+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -rm -f conftestdata -if ln -s X conftestdata 2>/dev/null; then - cl_cv_prog_LN_S="ln -s" -else - cl_cv_prog_LN_S="$cl_cv_prog_LN" -fi -rm -f conftestdata - -fi -if test "$cl_cv_prog_LN_S" = "ln -s"; then - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi -LN_S="$cl_cv_prog_LN_S" - -echo "$as_me:$LINENO: checking how to recognise dependent libraries" >&5 -echo $ECHO_N "checking how to recognise dependent libraries... $ECHO_C" >&6 -if test "${lt_cv_deplibs_check_method+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - lt_cv_file_magic_cmd='$MAGIC_CMD' -lt_cv_file_magic_test_file= -lt_cv_deplibs_check_method='unknown' -# Need to set the preceding variable on all platforms that support -# interlibrary dependencies. -# 'none' -- dependencies not supported. -# `unknown' -- same as none, but documents that we really don't know. -# 'pass_all' -- all dependencies passed with no checks. -# 'test_compile' -- check by making test program. -# 'file_magic [[regex]]' -- check by looking for files in library path -# which responds to the $file_magic_cmd with a given egrep regex. -# If you have `file' or equivalent on your system and you're not sure -# whether `pass_all' will *always* work, you probably want this one. - -case $host_os in -aix4* | aix5*) - lt_cv_deplibs_check_method=pass_all - ;; - -beos*) - lt_cv_deplibs_check_method=pass_all - ;; - -bsdi4*) - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)' - lt_cv_file_magic_cmd='/usr/bin/file -L' - lt_cv_file_magic_test_file=/shlib/libc.so - ;; - -cygwin* | mingw* | pw32*) - lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' - lt_cv_file_magic_cmd='$OBJDUMP -f' - ;; - -darwin* | rhapsody*) - lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library' - lt_cv_file_magic_cmd='/usr/bin/file -L' - case "$host_os" in - rhapsody* | darwin1.[012]) - lt_cv_file_magic_test_file=`echo /System/Library/Frameworks/System.framework/Versions/*/System | head -1` - ;; - *) # Darwin 1.3 on - lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib' - ;; - esac - ;; - -freebsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - case $host_cpu in - i*86 ) - # Not sure whether the presence of OpenBSD here was a mistake. - # Let's accept both of them until this is cleared up. - lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[3-9]86 (compact )?demand paged shared library' - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` - ;; - esac - else - lt_cv_deplibs_check_method=pass_all - fi - ;; - -gnu*) - lt_cv_deplibs_check_method=pass_all - ;; - -hpux10.20*|hpux11*) - lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library' - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=/usr/lib/libc.sl - ;; - -irix5* | irix6* | nonstopux*) - case $host_os in - irix5* | nonstopux*) - # this will be overridden with pass_all, but let us keep it just in case - lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1" - ;; - *) - case $LD in - *-32|*"-32 ") libmagic=32-bit;; - *-n32|*"-n32 ") libmagic=N32;; - *-64|*"-64 ") libmagic=64-bit;; - *) libmagic=never-match;; - esac - # this will be overridden with pass_all, but let us keep it just in case - lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[1234] dynamic lib MIPS - version 1" - ;; - esac - lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*` - lt_cv_deplibs_check_method=pass_all - ;; - -# This must be Linux ELF. -linux-gnu*) - case $host_cpu in - alpha* | hppa* | i*86 | mips | mipsel | powerpc* | sparc* | ia64*) - lt_cv_deplibs_check_method=pass_all ;; - *) - # glibc up to 2.1.1 does not perform some relocations on ARM - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' ;; - esac - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' - else - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so$' - fi - ;; - -newos6*) - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)' - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=/usr/lib/libnls.so - ;; - -openbsd*) - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB shared object' - else - lt_cv_deplibs_check_method='file_magic OpenBSD.* shared library' - fi - ;; - -osf3* | osf4* | osf5*) - # this will be overridden with pass_all, but let us keep it just in case - lt_cv_deplibs_check_method='file_magic COFF format alpha shared library' - lt_cv_file_magic_test_file=/shlib/libc.so - lt_cv_deplibs_check_method=pass_all - ;; - -sco3.2v5*) - lt_cv_deplibs_check_method=pass_all - ;; - -solaris*) - lt_cv_deplibs_check_method=pass_all - lt_cv_file_magic_test_file=/lib/libc.so - ;; - -sysv5uw[78]* | sysv4*uw2*) - lt_cv_deplibs_check_method=pass_all - ;; - -sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - case $host_vendor in - motorola) - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]' - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` - ;; - ncr) - lt_cv_deplibs_check_method=pass_all - ;; - sequent) - lt_cv_file_magic_cmd='/bin/file' - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' - ;; - sni) - lt_cv_file_magic_cmd='/bin/file' - lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib" - lt_cv_file_magic_test_file=/lib/libc.so - ;; - siemens) - lt_cv_deplibs_check_method=pass_all - ;; - esac - ;; -esac - -fi -echo "$as_me:$LINENO: result: $lt_cv_deplibs_check_method" >&5 -echo "${ECHO_T}$lt_cv_deplibs_check_method" >&6 -file_magic_cmd=$lt_cv_file_magic_cmd -deplibs_check_method=$lt_cv_deplibs_check_method - - - - - - - -# Check for command to grab the raw symbol name followed by C symbol from nm. -echo "$as_me:$LINENO: checking command to parse $NM output" >&5 -echo $ECHO_N "checking command to parse $NM output... $ECHO_C" >&6 -if test "${lt_cv_sys_global_symbol_pipe+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -# These are sane defaults that work on at least a few old systems. -# [They come from Ultrix. What could be older than Ultrix?!! ;)] - -# Character class describing NM global symbol codes. -symcode='[BCDEGRST]' - -# Regexp to match symbols that can be accessed directly from C. -sympat='\([_A-Za-z][_A-Za-z0-9]*\)' - -# Transform the above into a raw symbol and a C symbol. -symxfrm='\1 \2\3 \3' - -# Transform an extracted symbol line into a proper C declaration -lt_cv_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'" - -# Transform an extracted symbol line into symbol name and symbol address -lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([^ ]*\) \([^ ]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" - -# Define system-specific variables. -case $host_os in -aix*) - symcode='[BCDT]' - ;; -cygwin* | mingw* | pw32*) - symcode='[ABCDGISTW]' - ;; -hpux*) # Its linker distinguishes data from code symbols - lt_cv_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" - lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" - ;; -irix* | nonstopux*) - symcode='[BCDEGRST]' - ;; -osf*) - symcode='[BCDEGQRST]' - ;; -solaris* | sysv5*) - symcode='[BDT]' - ;; -sysv4) - symcode='[DFNSTU]' - ;; -esac - -# Handle CRLF in mingw tool chain -opt_cr= -case $host_os in -mingw*) - opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp - ;; -esac - -# If we're using GNU nm, then use its standard symbol codes. -if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then - symcode='[ABCDGISTW]' -fi - -# Try without a prefix undercore, then with it. -for ac_symprfx in "" "_"; do - - # Write the raw and C identifiers. -lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'" - - # Check to see that the pipe works correctly. - pipe_works=no - rm -f conftest* - cat > conftest.$ac_ext <&5 - (eval $ac_compile) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - # Now try to grab the symbols. - nlist=conftest.nm - if { (eval echo "$as_me:$LINENO: \"$NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist\"") >&5 - (eval $NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && test -s "$nlist"; then - # Try sorting and uniquifying the output. - if sort "$nlist" | uniq > "$nlist"T; then - mv -f "$nlist"T "$nlist" - else - rm -f "$nlist"T - fi - - # Make sure that we snagged all the symbols we need. - if egrep ' nm_test_var$' "$nlist" >/dev/null; then - if egrep ' nm_test_func$' "$nlist" >/dev/null; then - cat < conftest.$ac_ext -#ifdef __cplusplus -extern "C" { -#endif - -EOF - # Now generate the symbol file. - eval "$lt_cv_global_symbol_to_cdecl"' < "$nlist" >> conftest.$ac_ext' - - cat <> conftest.$ac_ext -#if defined (__STDC__) && __STDC__ -# define lt_ptr void * -#else -# define lt_ptr char * -# define const -#endif - -/* The mapping between symbol names and symbols. */ -const struct { - const char *name; - lt_ptr address; -} -lt_preloaded_symbols[] = -{ -EOF - sed "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (lt_ptr) \&\2},/" < "$nlist" >> conftest.$ac_ext - cat <<\EOF >> conftest.$ac_ext - {0, (lt_ptr) 0} -}; - -#ifdef __cplusplus -} -#endif -EOF - # Now try linking the two files. - mv conftest.$ac_objext conftstm.$ac_objext - save_LIBS="$LIBS" - save_CFLAGS="$CFLAGS" - LIBS="conftstm.$ac_objext" - CFLAGS="$CFLAGS$no_builtin_flag" - if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && test -s conftest$ac_exeext; then - pipe_works=yes - fi - LIBS="$save_LIBS" - CFLAGS="$save_CFLAGS" - else - echo "cannot find nm_test_func in $nlist" >&5 - fi - else - echo "cannot find nm_test_var in $nlist" >&5 - fi - else - echo "cannot run $lt_cv_sys_global_symbol_pipe" >&5 - fi - else - echo "$progname: failed program was:" >&5 - cat conftest.$ac_ext >&5 - fi - rm -f conftest* conftst* - - # Do not use the global_symbol_pipe unless it works. - if test "$pipe_works" = yes; then - break - else - lt_cv_sys_global_symbol_pipe= - fi -done - -fi - -global_symbol_pipe="$lt_cv_sys_global_symbol_pipe" -if test -z "$lt_cv_sys_global_symbol_pipe"; then - global_symbol_to_cdecl= - global_symbol_to_c_name_address= -else - global_symbol_to_cdecl="$lt_cv_global_symbol_to_cdecl" - global_symbol_to_c_name_address="$lt_cv_global_symbol_to_c_name_address" -fi -if test -z "$global_symbol_pipe$global_symbol_to_cdec$global_symbol_to_c_name_address"; -then - echo "$as_me:$LINENO: result: failed" >&5 -echo "${ECHO_T}failed" >&6 -else - echo "$as_me:$LINENO: result: ok" >&5 -echo "${ECHO_T}ok" >&6 -fi - -echo "$as_me:$LINENO: checking for ANSI C header files" >&5 -echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 -if test "${ac_cv_header_stdc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include -#include -#include - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_header_stdc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_header_stdc=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - -if test $ac_cv_header_stdc = yes; then - # SunOS 4.x string.h does not declare mem*, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "memchr" >/dev/null 2>&1; then - : -else - ac_cv_header_stdc=no -fi -rm -f conftest* - -fi - -if test $ac_cv_header_stdc = yes; then - # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "free" >/dev/null 2>&1; then - : -else - ac_cv_header_stdc=no -fi -rm -f conftest* - -fi - -if test $ac_cv_header_stdc = yes; then - # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. - if test "$cross_compiling" = yes; then - : -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#if ((' ' & 0x0FF) == 0x020) -# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') -# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) -#else -# define ISLOWER(c) \ - (('a' <= (c) && (c) <= 'i') \ - || ('j' <= (c) && (c) <= 'r') \ - || ('s' <= (c) && (c) <= 'z')) -# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) -#endif - -#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) -int -main () -{ - int i; - for (i = 0; i < 256; i++) - if (XOR (islower (i), ISLOWER (i)) - || toupper (i) != TOUPPER (i)) - exit(2); - exit (0); -} -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -ac_cv_header_stdc=no -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -fi -fi -echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 -echo "${ECHO_T}$ac_cv_header_stdc" >&6 -if test $ac_cv_header_stdc = yes; then - -cat >>confdefs.h <<\_ACEOF -#define STDC_HEADERS 1 -_ACEOF - -fi - -# On IRIX 5.3, sys/types and inttypes.h are conflicting. - - - - - - - - - -for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ - inttypes.h stdint.h unistd.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default - -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - eval "$as_ac_Header=yes" -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -eval "$as_ac_Header=no" -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - - -for ac_header in dlfcn.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_header_compiler=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 - -# Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------------ ## -## Report this to the AC_PACKAGE_NAME lists. ## -## ------------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - - - - - -# Only perform the check for file, if the check method requires it -case $deplibs_check_method in -file_magic*) - if test "$file_magic_cmd" = '$MAGIC_CMD'; then - echo "$as_me:$LINENO: checking for ${ac_tool_prefix}file" >&5 -echo $ECHO_N "checking for ${ac_tool_prefix}file... $ECHO_C" >&6 -if test "${lt_cv_path_MAGIC_CMD+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - case $MAGIC_CMD in - /*) - lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. - ;; - ?:/*) - lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path. - ;; - *) - ac_save_MAGIC_CMD="$MAGIC_CMD" - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" - ac_dummy="/usr/bin:$PATH" - for ac_dir in $ac_dummy; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/${ac_tool_prefix}file; then - lt_cv_path_MAGIC_CMD="$ac_dir/${ac_tool_prefix}file" - if test -n "$file_magic_test_file"; then - case $deplibs_check_method in - "file_magic "*) - file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" - MAGIC_CMD="$lt_cv_path_MAGIC_CMD" - if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | - egrep "$file_magic_regex" > /dev/null; then - : - else - cat <&2 - -*** Warning: the command libtool uses to detect shared libraries, -*** $file_magic_cmd, produces output that libtool cannot recognize. -*** The result is that libtool may fail to recognize shared libraries -*** as such. This will affect the creation of libtool libraries that -*** depend on shared libraries, but programs linked with such libtool -*** libraries will work regardless of this problem. Nevertheless, you -*** may want to report the problem to your system manager and/or to -*** bug-libtool@gnu.org - -EOF - fi ;; - esac - fi - break - fi - done - IFS="$ac_save_ifs" - MAGIC_CMD="$ac_save_MAGIC_CMD" - ;; -esac -fi - -MAGIC_CMD="$lt_cv_path_MAGIC_CMD" -if test -n "$MAGIC_CMD"; then - echo "$as_me:$LINENO: result: $MAGIC_CMD" >&5 -echo "${ECHO_T}$MAGIC_CMD" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -if test -z "$lt_cv_path_MAGIC_CMD"; then - if test -n "$ac_tool_prefix"; then - echo "$as_me:$LINENO: checking for file" >&5 -echo $ECHO_N "checking for file... $ECHO_C" >&6 -if test "${lt_cv_path_MAGIC_CMD+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - case $MAGIC_CMD in - /*) - lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. - ;; - ?:/*) - lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path. - ;; - *) - ac_save_MAGIC_CMD="$MAGIC_CMD" - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" - ac_dummy="/usr/bin:$PATH" - for ac_dir in $ac_dummy; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/file; then - lt_cv_path_MAGIC_CMD="$ac_dir/file" - if test -n "$file_magic_test_file"; then - case $deplibs_check_method in - "file_magic "*) - file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" - MAGIC_CMD="$lt_cv_path_MAGIC_CMD" - if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | - egrep "$file_magic_regex" > /dev/null; then - : - else - cat <&2 - -*** Warning: the command libtool uses to detect shared libraries, -*** $file_magic_cmd, produces output that libtool cannot recognize. -*** The result is that libtool may fail to recognize shared libraries -*** as such. This will affect the creation of libtool libraries that -*** depend on shared libraries, but programs linked with such libtool -*** libraries will work regardless of this problem. Nevertheless, you -*** may want to report the problem to your system manager and/or to -*** bug-libtool@gnu.org - -EOF - fi ;; - esac - fi - break - fi - done - IFS="$ac_save_ifs" - MAGIC_CMD="$ac_save_MAGIC_CMD" - ;; -esac -fi - -MAGIC_CMD="$lt_cv_path_MAGIC_CMD" -if test -n "$MAGIC_CMD"; then - echo "$as_me:$LINENO: result: $MAGIC_CMD" >&5 -echo "${ECHO_T}$MAGIC_CMD" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - else - MAGIC_CMD=: - fi -fi - - fi - ;; -esac - -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. -set dummy ${ac_tool_prefix}ranlib; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_RANLIB+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$RANLIB"; then - ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -RANLIB=$ac_cv_prog_RANLIB -if test -n "$RANLIB"; then - echo "$as_me:$LINENO: result: $RANLIB" >&5 -echo "${ECHO_T}$RANLIB" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$ac_cv_prog_RANLIB"; then - ac_ct_RANLIB=$RANLIB - # Extract the first word of "ranlib", so it can be a program name with args. -set dummy ranlib; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_RANLIB"; then - ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_RANLIB="ranlib" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - - test -z "$ac_cv_prog_ac_ct_RANLIB" && ac_cv_prog_ac_ct_RANLIB=":" -fi -fi -ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB -if test -n "$ac_ct_RANLIB"; then - echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5 -echo "${ECHO_T}$ac_ct_RANLIB" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - RANLIB=$ac_ct_RANLIB -else - RANLIB="$ac_cv_prog_RANLIB" -fi - -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. -set dummy ${ac_tool_prefix}strip; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_STRIP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$STRIP"; then - ac_cv_prog_STRIP="$STRIP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_STRIP="${ac_tool_prefix}strip" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -STRIP=$ac_cv_prog_STRIP -if test -n "$STRIP"; then - echo "$as_me:$LINENO: result: $STRIP" >&5 -echo "${ECHO_T}$STRIP" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$ac_cv_prog_STRIP"; then - ac_ct_STRIP=$STRIP - # Extract the first word of "strip", so it can be a program name with args. -set dummy strip; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_STRIP"; then - ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_STRIP="strip" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - - test -z "$ac_cv_prog_ac_ct_STRIP" && ac_cv_prog_ac_ct_STRIP=":" -fi -fi -ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP -if test -n "$ac_ct_STRIP"; then - echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5 -echo "${ECHO_T}$ac_ct_STRIP" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - STRIP=$ac_ct_STRIP -else - STRIP="$ac_cv_prog_STRIP" -fi - - -enable_dlopen=no -enable_win32_dll=no - -# Check whether --enable-libtool-lock or --disable-libtool-lock was given. -if test "${enable_libtool_lock+set}" = set; then - enableval="$enable_libtool_lock" - -fi; -test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes - -# Some flags need to be propagated to the compiler or linker for good -# libtool support. -case $host in -*-*-irix6*) - # Find out which ABI we are using. - echo '#line 4578 "configure"' > conftest.$ac_ext - if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - case `/usr/bin/file conftest.$ac_objext` in - *32-bit*) - LD="${LD-ld} -32" - ;; - *N32*) - LD="${LD-ld} -n32" - ;; - *64-bit*) - LD="${LD-ld} -64" - ;; - esac - fi - rm -rf conftest* - ;; - -*-*-sco3.2v5*) - # On SCO OpenServer 5, we need -belf to get full-featured binaries. - SAVE_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -belf" - echo "$as_me:$LINENO: checking whether the C compiler needs -belf" >&5 -echo $ECHO_N "checking whether the C compiler needs -belf... $ECHO_C" >&6 -if test "${lt_cv_cc_needs_belf+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - - - ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - lt_cv_cc_needs_belf=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -lt_cv_cc_needs_belf=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - -fi -echo "$as_me:$LINENO: result: $lt_cv_cc_needs_belf" >&5 -echo "${ECHO_T}$lt_cv_cc_needs_belf" >&6 - if test x"$lt_cv_cc_needs_belf" != x"yes"; then - # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf - CFLAGS="$SAVE_CFLAGS" - fi - ;; - - -esac - -# Sed substitution that helps us do robust quoting. It backslashifies -# metacharacters that are still active within double-quoted strings. -Xsed='sed -e s/^X//' -sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g' - -# Same as above, but do not quote variable references. -double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g' - -# Sed substitution to delay expansion of an escaped shell variable in a -# double_quote_subst'ed string. -delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' - -# Constants: -rm="rm -f" - -# Global variables: -default_ofile=libtool -can_build_shared=yes - -# All known linkers require a `.a' archive for static linking (except M$VC, -# which needs '.lib'). -libext=a -ltmain="$ac_aux_dir/ltmain.sh" -ofile="$default_ofile" -with_gnu_ld="$lt_cv_prog_gnu_ld" -need_locks="$enable_libtool_lock" - -old_CC="$CC" -old_CFLAGS="$CFLAGS" - -# Set sane defaults for various variables -test -z "$AR" && AR=ar -test -z "$AR_FLAGS" && AR_FLAGS=cru -test -z "$AS" && AS=as -test -z "$CC" && CC=cc -test -z "$DLLTOOL" && DLLTOOL=dlltool -test -z "$LD" && LD=ld -test -z "$LN_S" && LN_S="ln -s" -test -z "$MAGIC_CMD" && MAGIC_CMD=file -test -z "$NM" && NM=nm -test -z "$OBJDUMP" && OBJDUMP=objdump -test -z "$RANLIB" && RANLIB=: -test -z "$STRIP" && STRIP=: -test -z "$ac_objext" && ac_objext=o - -if test x"$host" != x"$build"; then - ac_tool_prefix=${host_alias}- -else - ac_tool_prefix= -fi - -# Transform linux* to *-*-linux-gnu*, to support old configure scripts. -case $host_os in -linux-gnu*) ;; -linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'` -esac - -case $host_os in -aix3*) - # 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. - if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES - fi - ;; -esac - -# Determine commands to create old-style static archives. -old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs' -old_postinstall_cmds='chmod 644 $oldlib' -old_postuninstall_cmds= - -if test -n "$RANLIB"; then - case $host_os in - openbsd*) - old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds" - ;; - *) - old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds" - ;; - esac - old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib" -fi - -# Allow CC to be a program name with arguments. -set dummy $CC -compiler="$2" - -echo "$as_me:$LINENO: checking for objdir" >&5 -echo $ECHO_N "checking for objdir... $ECHO_C" >&6 -rm -f .libs 2>/dev/null -mkdir .libs 2>/dev/null -if test -d .libs; then - objdir=.libs -else - # MS-DOS does not allow filenames that begin with a dot. - objdir=_libs -fi -rmdir .libs 2>/dev/null -echo "$as_me:$LINENO: result: $objdir" >&5 -echo "${ECHO_T}$objdir" >&6 - - - -# Check whether --with-pic or --without-pic was given. -if test "${with_pic+set}" = set; then - withval="$with_pic" - pic_mode="$withval" -else - pic_mode=default -fi; -test -z "$pic_mode" && pic_mode=default - -# We assume here that the value for lt_cv_prog_cc_pic will not be cached -# in isolation, and that seeing it set (from the cache) indicates that -# the associated values are set (in the cache) correctly too. -echo "$as_me:$LINENO: checking for $compiler option to produce PIC" >&5 -echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 -if test "${lt_cv_prog_cc_pic+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - lt_cv_prog_cc_pic= - lt_cv_prog_cc_shlib= - lt_cv_prog_cc_wl= - lt_cv_prog_cc_static= - lt_cv_prog_cc_no_builtin= - lt_cv_prog_cc_can_build_shared=$can_build_shared - - if test "$GCC" = yes; then - lt_cv_prog_cc_wl='-Wl,' - lt_cv_prog_cc_static='-static' - - case $host_os in - aix*) - # Below there is a dirty hack to force normal static linking with -ldl - # The problem is because libdl dynamically linked with both libc and - # libC (AIX C++ library), which obviously doesn't included in libraries - # list by gcc. This cause undefined symbols with -static flags. - # This hack allows C programs to be linked with "-static -ldl", but - # not sure about C++ programs. - lt_cv_prog_cc_static="$lt_cv_prog_cc_static ${lt_cv_prog_cc_wl}-lC" - ;; - 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'. - lt_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4' - ;; - beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) - # PIC is the default for these OSes. - ;; - darwin* | rhapsody*) - # PIC is the default on this platform - # Common symbols not allowed in MH_DYLIB files - lt_cv_prog_cc_pic='-fno-common' - ;; - cygwin* | mingw* | pw32* | os2*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - lt_cv_prog_cc_pic='-DDLL_EXPORT' - ;; - sysv4*MP*) - if test -d /usr/nec; then - lt_cv_prog_cc_pic=-Kconform_pic - fi - ;; - *) - lt_cv_prog_cc_pic='-fPIC' - ;; - esac - else - # PORTME Check for PIC flags for the system compiler. - case $host_os in - aix3* | aix4* | aix5*) - lt_cv_prog_cc_wl='-Wl,' - # All AIX code is PIC. - if test "$host_cpu" = ia64; then - # AIX 5 now supports IA64 processor - lt_cv_prog_cc_static='-Bstatic' - else - lt_cv_prog_cc_static='-bnso -bI:/lib/syscalls.exp' - fi - ;; - - hpux9* | hpux10* | hpux11*) - # Is there a better lt_cv_prog_cc_static that works with the bundled CC? - lt_cv_prog_cc_wl='-Wl,' - lt_cv_prog_cc_static="${lt_cv_prog_cc_wl}-a ${lt_cv_prog_cc_wl}archive" - lt_cv_prog_cc_pic='+Z' - ;; - - irix5* | irix6* | nonstopux*) - lt_cv_prog_cc_wl='-Wl,' - lt_cv_prog_cc_static='-non_shared' - # PIC (with -KPIC) is the default. - ;; - - cygwin* | mingw* | pw32* | os2*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - lt_cv_prog_cc_pic='-DDLL_EXPORT' - ;; - - newsos6) - lt_cv_prog_cc_pic='-KPIC' - lt_cv_prog_cc_static='-Bstatic' - ;; - - osf3* | osf4* | osf5*) - # All OSF/1 code is PIC. - lt_cv_prog_cc_wl='-Wl,' - lt_cv_prog_cc_static='-non_shared' - ;; - - sco3.2v5*) - lt_cv_prog_cc_pic='-Kpic' - lt_cv_prog_cc_static='-dn' - lt_cv_prog_cc_shlib='-belf' - ;; - - solaris*) - lt_cv_prog_cc_pic='-KPIC' - lt_cv_prog_cc_static='-Bstatic' - lt_cv_prog_cc_wl='-Wl,' - ;; - - sunos4*) - lt_cv_prog_cc_pic='-PIC' - lt_cv_prog_cc_static='-Bstatic' - lt_cv_prog_cc_wl='-Qoption ld ' - ;; - - sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - lt_cv_prog_cc_pic='-KPIC' - lt_cv_prog_cc_static='-Bstatic' - lt_cv_prog_cc_wl='-Wl,' - ;; - - uts4*) - lt_cv_prog_cc_pic='-pic' - lt_cv_prog_cc_static='-Bstatic' - ;; - - sysv4*MP*) - if test -d /usr/nec ;then - lt_cv_prog_cc_pic='-Kconform_pic' - lt_cv_prog_cc_static='-Bstatic' - fi - ;; - - *) - lt_cv_prog_cc_can_build_shared=no - ;; - esac - fi - -fi - -if test -z "$lt_cv_prog_cc_pic"; then - echo "$as_me:$LINENO: result: none" >&5 -echo "${ECHO_T}none" >&6 -else - echo "$as_me:$LINENO: result: $lt_cv_prog_cc_pic" >&5 -echo "${ECHO_T}$lt_cv_prog_cc_pic" >&6 - - # Check to make sure the pic_flag actually works. - echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_cv_prog_cc_pic works" >&5 -echo $ECHO_N "checking if $compiler PIC flag $lt_cv_prog_cc_pic works... $ECHO_C" >&6 - if test "${lt_cv_prog_cc_pic_works+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS $lt_cv_prog_cc_pic -DPIC" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - case $host_os in - hpux9* | hpux10* | hpux11*) - # On HP-UX, both CC and GCC only warn that PIC is supported... then - # they create non-PIC objects. So, if there were any warnings, we - # assume that PIC is not supported. - if test -s conftest.err; then - lt_cv_prog_cc_pic_works=no - else - lt_cv_prog_cc_pic_works=yes - fi - ;; - *) - lt_cv_prog_cc_pic_works=yes - ;; - esac - -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - lt_cv_prog_cc_pic_works=no - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - CFLAGS="$save_CFLAGS" - -fi - - - if test "X$lt_cv_prog_cc_pic_works" = Xno; then - lt_cv_prog_cc_pic= - lt_cv_prog_cc_can_build_shared=no - else - lt_cv_prog_cc_pic=" $lt_cv_prog_cc_pic" - fi - - echo "$as_me:$LINENO: result: $lt_cv_prog_cc_pic_works" >&5 -echo "${ECHO_T}$lt_cv_prog_cc_pic_works" >&6 -fi - -# Check for any special shared library compilation flags. -if test -n "$lt_cv_prog_cc_shlib"; then - { echo "$as_me:$LINENO: WARNING: \`$CC' requires \`$lt_cv_prog_cc_shlib' to build shared libraries" >&5 -echo "$as_me: WARNING: \`$CC' requires \`$lt_cv_prog_cc_shlib' to build shared libraries" >&2;} - if echo "$old_CC $old_CFLAGS " | egrep -e "[ ]$lt_cv_prog_cc_shlib[ ]" >/dev/null; then : - else - { echo "$as_me:$LINENO: WARNING: add \`$lt_cv_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure" >&5 -echo "$as_me: WARNING: add \`$lt_cv_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure" >&2;} - lt_cv_prog_cc_can_build_shared=no - fi -fi - -echo "$as_me:$LINENO: checking if $compiler static flag $lt_cv_prog_cc_static works" >&5 -echo $ECHO_N "checking if $compiler static flag $lt_cv_prog_cc_static works... $ECHO_C" >&6 -if test "${lt_cv_prog_cc_static_works+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - lt_cv_prog_cc_static_works=no - save_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS $lt_cv_prog_cc_static" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - lt_cv_prog_cc_static_works=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - LDFLAGS="$save_LDFLAGS" - -fi - - -# Belt *and* braces to stop my trousers falling down: -test "X$lt_cv_prog_cc_static_works" = Xno && lt_cv_prog_cc_static= -echo "$as_me:$LINENO: result: $lt_cv_prog_cc_static_works" >&5 -echo "${ECHO_T}$lt_cv_prog_cc_static_works" >&6 - -pic_flag="$lt_cv_prog_cc_pic" -special_shlib_compile_flags="$lt_cv_prog_cc_shlib" -wl="$lt_cv_prog_cc_wl" -link_static_flag="$lt_cv_prog_cc_static" -no_builtin_flag="$lt_cv_prog_cc_no_builtin" -can_build_shared="$lt_cv_prog_cc_can_build_shared" - - -# Check to see if options -o and -c are simultaneously supported by compiler -echo "$as_me:$LINENO: checking if $compiler supports -c -o file.$ac_objext" >&5 -echo $ECHO_N "checking if $compiler supports -c -o file.$ac_objext... $ECHO_C" >&6 -if test "${lt_cv_compiler_c_o+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -$rm -r conftest 2>/dev/null -mkdir conftest -cd conftest -echo "int some_variable = 0;" > conftest.$ac_ext -mkdir out -# According to Tom Tromey, Ian Lance Taylor reported there are C compilers -# that will create temporary files in the current directory regardless of -# the output directory. Thus, making CWD read-only will cause this test -# to fail, enabling locking or at least warning the user not to do parallel -# builds. -chmod -w . -save_CFLAGS="$CFLAGS" -CFLAGS="$CFLAGS -o out/conftest2.$ac_objext" -compiler_c_o=no -if { (eval echo configure:5136: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s out/conftest.err; then - lt_cv_compiler_c_o=no - else - lt_cv_compiler_c_o=yes - fi -else - # Append any errors to the config.log. - cat out/conftest.err 1>&5 - lt_cv_compiler_c_o=no -fi -CFLAGS="$save_CFLAGS" -chmod u+w . -$rm conftest* out/* -rmdir out -cd .. -rmdir conftest -$rm -r conftest 2>/dev/null - -fi - -compiler_c_o=$lt_cv_compiler_c_o -echo "$as_me:$LINENO: result: $compiler_c_o" >&5 -echo "${ECHO_T}$compiler_c_o" >&6 - -if test x"$compiler_c_o" = x"yes"; then - # Check to see if we can write to a .lo - echo "$as_me:$LINENO: checking if $compiler supports -c -o file.lo" >&5 -echo $ECHO_N "checking if $compiler supports -c -o file.lo... $ECHO_C" >&6 - if test "${lt_cv_compiler_o_lo+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - - lt_cv_compiler_o_lo=no - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -c -o conftest.lo" - save_objext="$ac_objext" - ac_objext=lo - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ -int some_variable = 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s conftest.err; then - lt_cv_compiler_o_lo=no - else - lt_cv_compiler_o_lo=yes - fi - -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - ac_objext="$save_objext" - CFLAGS="$save_CFLAGS" - -fi - - compiler_o_lo=$lt_cv_compiler_o_lo - echo "$as_me:$LINENO: result: $compiler_o_lo" >&5 -echo "${ECHO_T}$compiler_o_lo" >&6 -else - compiler_o_lo=no -fi - -# Check to see if we can do hard links to lock some files if needed -hard_links="nottested" -if test "$compiler_c_o" = no && test "$need_locks" != no; then - # do not overwrite the value of need_locks provided by the user - echo "$as_me:$LINENO: checking if we can lock with hard links" >&5 -echo $ECHO_N "checking if we can lock with hard links... $ECHO_C" >&6 - hard_links=yes - $rm conftest* - ln conftest.a conftest.b 2>/dev/null && hard_links=no - touch conftest.a - ln conftest.a conftest.b 2>&5 || hard_links=no - ln conftest.a conftest.b 2>/dev/null && hard_links=no - echo "$as_me:$LINENO: result: $hard_links" >&5 -echo "${ECHO_T}$hard_links" >&6 - if test "$hard_links" = no; then - { echo "$as_me:$LINENO: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5 -echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;} - need_locks=warn - fi -else - need_locks=no -fi - -if test "$GCC" = yes; then - # Check to see if options -fno-rtti -fno-exceptions are supported by compiler - echo "$as_me:$LINENO: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 -echo $ECHO_N "checking if $compiler supports -fno-rtti -fno-exceptions... $ECHO_C" >&6 - echo "int some_variable = 0;" > conftest.$ac_ext - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.$ac_ext" - compiler_rtti_exceptions=no - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ -int some_variable = 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s conftest.err; then - compiler_rtti_exceptions=no - else - compiler_rtti_exceptions=yes - fi - -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - CFLAGS="$save_CFLAGS" - echo "$as_me:$LINENO: result: $compiler_rtti_exceptions" >&5 -echo "${ECHO_T}$compiler_rtti_exceptions" >&6 - - if test "$compiler_rtti_exceptions" = "yes"; then - no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions' - else - no_builtin_flag=' -fno-builtin' - fi -fi - -# See if the linker supports building shared libraries. -echo "$as_me:$LINENO: checking whether the linker ($LD) supports shared libraries" >&5 -echo $ECHO_N "checking whether the linker ($LD) supports shared libraries... $ECHO_C" >&6 - -allow_undefined_flag= -no_undefined_flag= -need_lib_prefix=unknown -need_version=unknown -# when you set need_version to no, make sure it does not cause -set_version -# flags to be left without arguments -archive_cmds= -archive_expsym_cmds= -old_archive_from_new_cmds= -old_archive_from_expsyms_cmds= -export_dynamic_flag_spec= -whole_archive_flag_spec= -thread_safe_flag_spec= -hardcode_into_libs=no -hardcode_libdir_flag_spec= -hardcode_libdir_separator= -hardcode_direct=no -hardcode_minus_L=no -hardcode_shlibpath_var=unsupported -runpath_var= -link_all_deplibs=unknown -always_export_symbols=no -export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols' -# include_expsyms should be a list of space-separated symbols to be *always* -# included in the symbol list -include_expsyms= -# exclude_expsyms can be an egrep regular expression of symbols to exclude -# it will be wrapped by ` (' and `)$', so one must not match beginning or -# end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', -# as well as any symbol that contains `d'. -exclude_expsyms="_GLOBAL_OFFSET_TABLE_" -# Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out -# platforms (ab)use it in PIC code, but their linkers get confused if -# the symbol is explicitly referenced. Since portable code cannot -# rely on this symbol name, it's probably fine to never include it in -# preloaded symbol tables. -extract_expsyms_cmds= - -case $host_os in -cygwin* | mingw* | pw32*) - # FIXME: the MSVC++ port hasn't been tested in a loooong time - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - if test "$GCC" != yes; then - with_gnu_ld=no - fi - ;; -openbsd*) - with_gnu_ld=no - ;; -esac - -ld_shlibs=yes -if test "$with_gnu_ld" = yes; then - # If archive_cmds runs LD, not CC, wlarc should be empty - wlarc='${wl}' - - # See if GNU ld supports shared libraries. - case $host_os in - aix3* | aix4* | aix5*) - # On AIX, the GNU linker is very broken - # Note:Check GNU linker on AIX 5-IA64 when/if it becomes available. - ld_shlibs=no - cat <&2 - -*** Warning: the GNU linker, at least up to release 2.9.1, is reported -*** to be unable to reliably create shared libraries on AIX. -*** Therefore, libtool is disabling shared libraries support. If you -*** really care for shared libraries, you may want to modify your PATH -*** so that a non-GNU linker is found, and then restart. - -EOF - ;; - - amigaos*) - archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - - # Samuel A. Falvo II reports - # that the semantics of dynamic libraries on AmigaOS, at least up - # to version 4, is to share data among multiple programs linked - # with the same dynamic library. Since this doesn't match the - # behavior of shared libraries on other platforms, we can use - # them. - ld_shlibs=no - ;; - - beos*) - if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then - allow_undefined_flag=unsupported - # Joseph Beckenbach says some releases of gcc - # support --undefined. This deserves some investigation. FIXME - archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - else - ld_shlibs=no - fi - ;; - - cygwin* | mingw* | pw32*) - # hardcode_libdir_flag_spec is actually meaningless, as there is - # no search path for DLLs. - hardcode_libdir_flag_spec='-L$libdir' - allow_undefined_flag=unsupported - always_export_symbols=yes - - extract_expsyms_cmds='test -f $output_objdir/impgen.c || \ - sed -e "/^# \/\* impgen\.c starts here \*\//,/^# \/\* impgen.c ends here \*\// { s/^# //;s/^# *$//; p; }" -e d < $''0 > $output_objdir/impgen.c~ - test -f $output_objdir/impgen.exe || (cd $output_objdir && \ - if test "x$HOST_CC" != "x" ; then $HOST_CC -o impgen impgen.c ; \ - else $CC -o impgen impgen.c ; fi)~ - $output_objdir/impgen $dir/$soroot > $output_objdir/$soname-def' - - old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib' - - # cygwin and mingw dlls have different entry points and sets of symbols - # to exclude. - # FIXME: what about values for MSVC? - dll_entry=__cygwin_dll_entry@12 - dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12~ - case $host_os in - mingw*) - # mingw values - dll_entry=_DllMainCRTStartup@12 - dll_exclude_symbols=DllMain@12,DllMainCRTStartup@12,DllEntryPoint@12~ - ;; - esac - - # mingw and cygwin differ, and it's simplest to just exclude the union - # of the two symbol sets. - dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12,DllMainCRTStartup@12,DllEntryPoint@12 - - # recent cygwin and mingw systems supply a stub DllMain which the user - # can override, but on older systems we have to supply one (in ltdll.c) - if test "x$lt_cv_need_dllmain" = "xyes"; then - ltdll_obj='$output_objdir/$soname-ltdll.'"$ac_objext " - ltdll_cmds='test -f $output_objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $''0 > $output_objdir/$soname-ltdll.c~ - test -f $output_objdir/$soname-ltdll.$ac_objext || (cd $output_objdir && $CC -c $soname-ltdll.c)~' - else - ltdll_obj= - ltdll_cmds= - fi - - # Extract the symbol export list from an `--export-all' def file, - # then regenerate the def file from the symbol export list, so that - # the compiled dll only exports the symbol export list. - # Be careful not to strip the DATA tag left be newer dlltools. - export_symbols_cmds="$ltdll_cmds"' - $DLLTOOL --export-all --exclude-symbols '$dll_exclude_symbols' --output-def $output_objdir/$soname-def '$ltdll_obj'$libobjs $convenience~ - sed -e "1,/EXPORTS/d" -e "s/ @ [0-9]*//" -e "s/ *;.*$//" < $output_objdir/$soname-def > $export_symbols' - - # If the export-symbols file already is a .def file (1st line - # is EXPORTS), use it as is. - # If DATA tags from a recent dlltool are present, honour them! - archive_expsym_cmds='if test "x`sed 1q $export_symbols`" = xEXPORTS; then - cp $export_symbols $output_objdir/$soname-def; - else - echo EXPORTS > $output_objdir/$soname-def; - _lt_hint=1; - cat $export_symbols | while read symbol; do - set dummy \$symbol; - case \$# in - 2) echo " \$2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;; - 4) echo " \$2 \$3 \$4 ; " >> $output_objdir/$soname-def; _lt_hint=`expr \$_lt_hint - 1`;; - *) echo " \$2 @ \$_lt_hint \$3 ; " >> $output_objdir/$soname-def;; - esac; - _lt_hint=`expr 1 + \$_lt_hint`; - done; - fi~ - '"$ltdll_cmds"' - $CC -Wl,--base-file,$output_objdir/$soname-base '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~ - $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp~ - $CC -Wl,--base-file,$output_objdir/$soname-base $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~ - $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp --output-lib $output_objdir/$libname.dll.a~ - $CC $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags' - ;; - - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' - wlarc= - else - archive_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - fi - ;; - - solaris* | sysv5*) - if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then - ld_shlibs=no - cat <&2 - -*** Warning: The releases 2.8.* of the GNU linker cannot reliably -*** create shared libraries on Solaris systems. Therefore, libtool -*** is disabling shared libraries support. We urge you to upgrade GNU -*** binutils to release 2.9.1 or newer. Another option is to modify -*** your PATH or compiler configuration so that the native linker is -*** used, and then restart. - -EOF - elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - else - ld_shlibs=no - fi - ;; - - sunos4*) - archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' - wlarc= - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - *) - if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - else - ld_shlibs=no - fi - ;; - esac - - if test "$ld_shlibs" = yes; then - runpath_var=LD_RUN_PATH - hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir' - export_dynamic_flag_spec='${wl}--export-dynamic' - case $host_os in - cygwin* | mingw* | pw32*) - # dlltool doesn't understand --whole-archive et. al. - whole_archive_flag_spec= - ;; - *) - # ancient GNU ld didn't support --whole-archive et. al. - if $LD --help 2>&1 | egrep 'no-whole-archive' > /dev/null; then - whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' - else - whole_archive_flag_spec= - fi - ;; - esac - fi -else - # PORTME fill in a description of your system's linker (not GNU ld) - case $host_os in - aix3*) - allow_undefined_flag=unsupported - always_export_symbols=yes - archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' - # Note: this linker hardcodes the directories in LIBPATH if there - # are no directories specified by -L. - hardcode_minus_L=yes - if test "$GCC" = yes && test -z "$link_static_flag"; then - # Neither direct hardcoding nor static linking is supported with a - # broken collect2. - hardcode_direct=unsupported - fi - ;; - - aix4* | aix5*) - if test "$host_cpu" = ia64; then - # On IA64, the linker does run time linking by default, so we don't - # have to do anything special. - aix_use_runtimelinking=no - exp_sym_flag='-Bexport' - no_entry_flag="" - else - aix_use_runtimelinking=no - - # Test if we are trying to use run time linking or normal - # AIX style linking. If -brtl is somewhere in LDFLAGS, we - # need to do runtime linking. - case $host_os in aix4.[23]|aix4.[23].*|aix5*) - for ld_flag in $LDFLAGS; do - case $ld_flag in - *-brtl*) - aix_use_runtimelinking=yes - break - ;; - esac - done - esac - - exp_sym_flag='-bexport' - no_entry_flag='-bnoentry' - fi - - # When large executables or shared objects are built, AIX ld can - # have problems creating the table of contents. If linking a library - # or program results in "error TOC overflow" add -mminimal-toc to - # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not - # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. - - hardcode_direct=yes - archive_cmds='' - hardcode_libdir_separator=':' - if test "$GCC" = yes; then - case $host_os in aix4.[012]|aix4.[012].*) - collect2name=`${CC} -print-prog-name=collect2` - if test -f "$collect2name" && \ - strings "$collect2name" | grep resolve_lib_name >/dev/null - then - # We have reworked collect2 - hardcode_direct=yes - else - # We have old collect2 - hardcode_direct=unsupported - # It fails to find uninstalled libraries when the uninstalled - # path is not listed in the libpath. Setting hardcode_minus_L - # to unsupported forces relinking - hardcode_minus_L=yes - hardcode_libdir_flag_spec='-L$libdir' - hardcode_libdir_separator= - fi - esac - - shared_flag='-shared' - else - # not using gcc - if test "$host_cpu" = ia64; then - shared_flag='${wl}-G' - else - if test "$aix_use_runtimelinking" = yes; then - shared_flag='${wl}-G' - else - shared_flag='${wl}-bM:SRE' - fi - fi - fi - - # It seems that -bexpall can do strange things, so it is better to - # generate a list of symbols to export. - always_export_symbols=yes - if test "$aix_use_runtimelinking" = yes; then - # Warning - without using the other runtime loading flags (-brtl), - # -berok will link without error, but may produce a broken library. - allow_undefined_flag='-berok' - hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib' - archive_expsym_cmds="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag" - else - if test "$host_cpu" = ia64; then - hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib' - allow_undefined_flag="-z nodefs" - archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname ${wl}-h$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" - else - hardcode_libdir_flag_spec='${wl}-bnolibpath ${wl}-blibpath:$libdir:/usr/lib:/lib' - # Warning - without using the other run time loading flags, - # -berok will link without error, but may produce a broken library. - allow_undefined_flag='${wl}-berok' - # This is a bit strange, but is similar to how AIX traditionally builds - # it's shared libraries. - archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"' ~$AR -crlo $objdir/$libname$release.a $objdir/$soname' - fi - fi - ;; - - amigaos*) - archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - # see comment about different semantics on the GNU ld section - ld_shlibs=no - ;; - - cygwin* | mingw* | pw32*) - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - # hardcode_libdir_flag_spec is actually meaningless, as there is - # no search path for DLLs. - hardcode_libdir_flag_spec=' ' - allow_undefined_flag=unsupported - # Tell ltmain to make .lib files, not .a files. - libext=lib - # FIXME: Setting linknames here is a bad hack. - archive_cmds='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | sed -e '\''s/ -lc$//'\''` -link -dll~linknames=' - # The linker will automatically build a .lib file if we build a DLL. - old_archive_from_new_cmds='true' - # FIXME: Should let the user specify the lib program. - old_archive_cmds='lib /OUT:$oldlib$oldobjs$old_deplibs' - fix_srcfile_path='`cygpath -w "$srcfile"`' - ;; - - darwin* | rhapsody*) - case "$host_os" in - rhapsody* | darwin1.[012]) - allow_undefined_flag='-undefined suppress' - ;; - *) # Darwin 1.3 on - allow_undefined_flag='-flat_namespace -undefined suppress' - ;; - esac - # FIXME: Relying on posixy $() will cause problems for - # cross-compilation, but unfortunately the echo tests do not - # yet detect zsh echo's removal of \ escapes. Also zsh mangles - # `"' quotes if we put them in here... so don't! - archive_cmds='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs && $CC $(test .$module = .yes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib ${lib}-master.o $deplibs$linker_flags $(test .$module != .yes && echo -install_name $rpath/$soname $verstring)' - # We need to add '_' to the symbols in $export_symbols first - #archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols' - hardcode_direct=yes - hardcode_shlibpath_var=no - whole_archive_flag_spec='-all_load $convenience' - ;; - - freebsd1*) - ld_shlibs=no - ;; - - # 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 - # does not break anything, and helps significantly (at the cost of a little - # extra space). - freebsd2.2*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - # Unfortunately, older versions of FreeBSD 2 do not have this feature. - freebsd2*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes - hardcode_minus_L=yes - hardcode_shlibpath_var=no - ;; - - # FreeBSD 3 and greater uses gcc -shared to do shared libraries. - freebsd*) - archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - hpux9* | hpux10* | hpux11*) - case $host_os in - hpux9*) archive_cmds='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' ;; - *) archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' ;; - esac - hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' - hardcode_libdir_separator=: - hardcode_direct=yes - hardcode_minus_L=yes # Not in the search PATH, but as the default - # location of the library. - export_dynamic_flag_spec='${wl}-E' - ;; - - irix5* | irix6* | nonstopux*) - if test "$GCC" = yes; then - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - else - archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' - hardcode_libdir_flag_spec='-rpath $libdir' - fi - hardcode_libdir_separator=: - link_all_deplibs=yes - ;; - - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out - else - archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF - fi - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - newsos6) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - hardcode_libdir_separator=: - hardcode_shlibpath_var=no - ;; - - openbsd*) - hardcode_direct=yes - hardcode_shlibpath_var=no - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - hardcode_libdir_flag_spec='${wl}-rpath,$libdir' - export_dynamic_flag_spec='${wl}-E' - else - case "$host_os" in - openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-R$libdir' - ;; - *) - archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - hardcode_libdir_flag_spec='${wl}-rpath,$libdir' - ;; - esac - fi - ;; - - os2*) - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - allow_undefined_flag=unsupported - archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' - old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' - ;; - - osf3*) - if test "$GCC" = yes; then - allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' - archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - else - allow_undefined_flag=' -expect_unresolved \*' - archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' - fi - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - hardcode_libdir_separator=: - ;; - - osf4* | osf5*) # as osf3* with the addition of -msym flag - if test "$GCC" = yes; then - allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' - archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - else - allow_undefined_flag=' -expect_unresolved \*' - archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' - archive_expsym_cmds='for i in `cat $export_symbols`; do printf "-exported_symbol " >> $lib.exp; echo "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~ - $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp' - - #Both c and cxx compiler support -rpath directly - hardcode_libdir_flag_spec='-rpath $libdir' - fi - hardcode_libdir_separator=: - ;; - - sco3.2v5*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_shlibpath_var=no - runpath_var=LD_RUN_PATH - hardcode_runpath_var=yes - export_dynamic_flag_spec='${wl}-Bexport' - ;; - - solaris*) - # gcc --version < 3.0 without binutils cannot create self contained - # shared libraries reliably, requiring libgcc.a to resolve some of - # the object symbols generated in some cases. Libraries that use - # assert need libgcc.a to resolve __eprintf, for example. Linking - # a copy of libgcc.a into every shared library to guarantee resolving - # such symbols causes other problems: According to Tim Van Holder - # , C++ libraries end up with a separate - # (to the application) exception stack for one thing. - no_undefined_flag=' -z defs' - if test "$GCC" = yes; then - case `$CC --version 2>/dev/null` in - [12].*) - cat <&2 - -*** Warning: Releases of GCC earlier than version 3.0 cannot reliably -*** create self contained shared libraries on Solaris systems, without -*** introducing a dependency on libgcc.a. Therefore, libtool is disabling -*** -no-undefined support, which will at least allow you to build shared -*** libraries. However, you may find that when you link such libraries -*** into an application without using GCC, you have to manually add -*** \`gcc --print-libgcc-file-name\` to the link command. We urge you to -*** upgrade to a newer version of GCC. Another option is to rebuild your -*** current GCC to use the GNU linker from GNU binutils 2.9.1 or newer. - -EOF - no_undefined_flag= - ;; - esac - fi - # $CC -shared without GNU ld will not create a library from C++ - # object files and a static libstdc++, better avoid it by now - archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' - archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_shlibpath_var=no - case $host_os in - solaris2.[0-5] | solaris2.[0-5].*) ;; - *) # Supported since Solaris 2.6 (maybe 2.5.1?) - whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;; - esac - link_all_deplibs=yes - ;; - - sunos4*) - if test "x$host_vendor" = xsequent; then - # Use $CC to link under sequent, because it throws in some extra .o - # files that make .init and .fini sections work. - archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' - else - archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' - fi - hardcode_libdir_flag_spec='-L$libdir' - hardcode_direct=yes - hardcode_minus_L=yes - hardcode_shlibpath_var=no - ;; - - sysv4) - case $host_vendor in - sni) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes # is this really true??? - ;; - siemens) - ## LD is ld it makes a PLAMLIB - ## CC just makes a GrossModule. - archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' - reload_cmds='$CC -r -o $output$reload_objs' - hardcode_direct=no - ;; - motorola) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=no #Motorola manual says yes, but my tests say they lie - ;; - esac - runpath_var='LD_RUN_PATH' - hardcode_shlibpath_var=no - ;; - - sysv4.3*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_shlibpath_var=no - export_dynamic_flag_spec='-Bexport' - ;; - - sysv5*) - no_undefined_flag=' -z text' - # $CC -shared without GNU ld will not create a library from C++ - # object files and a static libstdc++, better avoid it by now - archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' - archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' - hardcode_libdir_flag_spec= - hardcode_shlibpath_var=no - runpath_var='LD_RUN_PATH' - ;; - - uts4*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_shlibpath_var=no - ;; - - dgux*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_shlibpath_var=no - ;; - - sysv4*MP*) - if test -d /usr/nec; then - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_shlibpath_var=no - runpath_var=LD_RUN_PATH - hardcode_runpath_var=yes - ld_shlibs=yes - fi - ;; - - sysv4.2uw2*) - archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes - hardcode_minus_L=no - hardcode_shlibpath_var=no - hardcode_runpath_var=yes - runpath_var=LD_RUN_PATH - ;; - - sysv5uw7* | unixware7*) - no_undefined_flag='${wl}-z ${wl}text' - if test "$GCC" = yes; then - archive_cmds='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' - else - archive_cmds='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' - fi - runpath_var='LD_RUN_PATH' - hardcode_shlibpath_var=no - ;; - - *) - ld_shlibs=no - ;; - esac -fi -echo "$as_me:$LINENO: result: $ld_shlibs" >&5 -echo "${ECHO_T}$ld_shlibs" >&6 -test "$ld_shlibs" = no && can_build_shared=no - -# Check hardcoding attributes. -echo "$as_me:$LINENO: checking how to hardcode library paths into programs" >&5 -echo $ECHO_N "checking how to hardcode library paths into programs... $ECHO_C" >&6 -hardcode_action= -if test -n "$hardcode_libdir_flag_spec" || \ - test -n "$runpath_var"; then - - # We can hardcode non-existant directories. - if test "$hardcode_direct" != no && - # If the only mechanism to avoid hardcoding is shlibpath_var, we - # have to relink, otherwise we might link with an installed library - # when we should be linking with a yet-to-be-installed one - ## test "$hardcode_shlibpath_var" != no && - test "$hardcode_minus_L" != no; then - # Linking always hardcodes the temporary library directory. - hardcode_action=relink - else - # We can link without hardcoding, and we can hardcode nonexisting dirs. - hardcode_action=immediate - fi -else - # We cannot hardcode anything, or else we can only hardcode existing - # directories. - hardcode_action=unsupported -fi -echo "$as_me:$LINENO: result: $hardcode_action" >&5 -echo "${ECHO_T}$hardcode_action" >&6 - -striplib= -old_striplib= -echo "$as_me:$LINENO: checking whether stripping libraries is possible" >&5 -echo $ECHO_N "checking whether stripping libraries is possible... $ECHO_C" >&6 -if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then - test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" - test -z "$striplib" && striplib="$STRIP --strip-unneeded" - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -reload_cmds='$LD$reload_flag -o $output$reload_objs' -test -z "$deplibs_check_method" && deplibs_check_method=unknown - -# PORTME Fill in your ld.so characteristics -echo "$as_me:$LINENO: checking dynamic linker characteristics" >&5 -echo $ECHO_N "checking dynamic linker characteristics... $ECHO_C" >&6 -library_names_spec= -libname_spec='lib$name' -soname_spec= -postinstall_cmds= -postuninstall_cmds= -finish_cmds= -finish_eval= -shlibpath_var= -shlibpath_overrides_runpath=unknown -version_type=none -dynamic_linker="$host_os ld.so" -sys_lib_dlsearch_path_spec="/lib /usr/lib" -sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" - -case $host_os in -aix3*) - version_type=linux - library_names_spec='${libname}${release}.so$versuffix $libname.a' - shlibpath_var=LIBPATH - - # AIX has no versioning support, so we append a major version to the name. - soname_spec='${libname}${release}.so$major' - ;; - -aix4* | aix5*) - version_type=linux - need_lib_prefix=no - need_version=no - hardcode_into_libs=yes - if test "$host_cpu" = ia64; then - # AIX 5 supports IA64 - library_names_spec='${libname}${release}.so$major ${libname}${release}.so$versuffix $libname.so' - shlibpath_var=LD_LIBRARY_PATH - else - # With GCC up to 2.95.x, collect2 would create an import file - # for dependence libraries. The import file would start with - # the line `#! .'. This would cause the generated library to - # depend on `.', always an invalid library. This was fixed in - # development snapshots of GCC prior to 3.0. - case $host_os in - aix4 | aix4.[01] | aix4.[01].*) - if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' - echo ' yes ' - echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then - : - else - can_build_shared=no - fi - ;; - esac - # AIX (on Power*) has no versioning support, so currently we can - # not hardcode correct soname into executable. Probably we can - # add versioning support to collect2, so additional links can - # be useful in future. - if test "$aix_use_runtimelinking" = yes; then - # If using run time linking (on AIX 4.2 or later) use lib.so - # instead of lib.a to let people know that these are not - # typical AIX shared libraries. - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - else - # We preserve .a as extension for shared libraries through AIX4.2 - # and later when we are not doing run time linking. - library_names_spec='${libname}${release}.a $libname.a' - soname_spec='${libname}${release}.so$major' - fi - shlibpath_var=LIBPATH - fi - hardcode_into_libs=yes - ;; - -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 "X$lib" | $Xsed -e '\''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' - ;; - -beos*) - library_names_spec='${libname}.so' - dynamic_linker="$host_os ld.so" - shlibpath_var=LIBRARY_PATH - ;; - -bsdi4*) - version_type=linux - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' - shlibpath_var=LD_LIBRARY_PATH - sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" - sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" - export_dynamic_flag_spec=-rdynamic - # the default ld.so.conf also contains /usr/contrib/lib and - # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow - # libtool to hard-code these into programs - ;; - -cygwin* | mingw* | pw32*) - version_type=windows - need_version=no - need_lib_prefix=no - case $GCC,$host_os in - yes,cygwin*) - library_names_spec='$libname.dll.a' - soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll' - postinstall_cmds='dlpath=`bash 2>&1 -c '\''. $dir/${file}i;echo \$dlname'\''`~ - dldir=$destdir/`dirname \$dlpath`~ - test -d \$dldir || mkdir -p \$dldir~ - $install_prog .libs/$dlname \$dldir/$dlname' - postuninstall_cmds='dldll=`bash 2>&1 -c '\''. $file; echo \$dlname'\''`~ - dlpath=$dir/\$dldll~ - $rm \$dlpath' - ;; - yes,mingw*) - library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll' - sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g" -e "s,=/,/,g"` - ;; - yes,pw32*) - library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/./-/g'`${versuffix}.dll' - ;; - *) - library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll $libname.lib' - ;; - esac - dynamic_linker='Win32 ld.exe' - # FIXME: first we should search . and the directory the executable is in - shlibpath_var=PATH - ;; - -darwin* | rhapsody*) - dynamic_linker="$host_os dyld" - version_type=darwin - need_lib_prefix=no - need_version=no - # FIXME: Relying on posixy $() will cause problems for - # cross-compilation, but unfortunately the echo tests do not - # yet detect zsh echo's removal of \ escapes. - library_names_spec='${libname}${release}${versuffix}.$(test .$module = .yes && echo so || echo dylib) ${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib) ${libname}.$(test .$module = .yes && echo so || echo dylib)' - soname_spec='${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib)' - shlibpath_overrides_runpath=yes - shlibpath_var=DYLD_LIBRARY_PATH - ;; - -freebsd1*) - dynamic_linker=no - ;; - -freebsd*) - objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` - version_type=freebsd-$objformat - case $version_type in - freebsd-elf*) - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so' - need_version=no - need_lib_prefix=no - ;; - freebsd-*) - library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix' - need_version=yes - ;; - esac - shlibpath_var=LD_LIBRARY_PATH - case $host_os in - freebsd2*) - shlibpath_overrides_runpath=yes - ;; - *) - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - ;; - esac - ;; - -gnu*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so${major} ${libname}.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - hardcode_into_libs=yes - ;; - -hpux9* | hpux10* | hpux11*) - # Give a soname corresponding to the major version so that dld.sl refuses to - # link against other versions. - dynamic_linker="$host_os dld.sl" - version_type=sunos - need_lib_prefix=no - need_version=no - shlibpath_var=SHLIB_PATH - shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH - library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl' - soname_spec='${libname}${release}.sl$major' - # HP-UX runs *really* slowly unless shared libraries are mode 555. - postinstall_cmds='chmod 555 $lib' - ;; - -irix5* | irix6* | nonstopux*) - case $host_os in - nonstopux*) version_type=nonstopux ;; - *) version_type=irix ;; - esac - need_lib_prefix=no - need_version=no - soname_spec='${libname}${release}.so$major' - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so' - case $host_os in - irix5* | nonstopux*) - libsuff= shlibsuff= - ;; - *) - case $LD in # libtool.m4 will add one of these switches to LD - *-32|*"-32 ") libsuff= shlibsuff= libmagic=32-bit;; - *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 libmagic=N32;; - *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;; - *) libsuff= shlibsuff= libmagic=never-match;; - esac - ;; - esac - shlibpath_var=LD_LIBRARY${shlibsuff}_PATH - shlibpath_overrides_runpath=no - sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" - sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" - ;; - -# No shared lib support for Linux oldld, aout, or coff. -linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*) - dynamic_linker=no - ;; - -# This must be Linux ELF. -linux-gnu*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - # This implies no fast_install, which is unacceptable. - # Some rework will be needed to allow for fast_install - # before this can be enabled. - hardcode_into_libs=yes - - # We used to test for /lib/ld.so.1 and disable shared libraries on - # powerpc, because MkLinux only supported shared libraries with the - # GNU dynamic linker. Since this was broken with cross compilers, - # most powerpc-linux boxes support dynamic linking these days and - # people can always --disable-shared, the test was removed, and we - # assume the GNU/Linux dynamic linker is in use. - dynamic_linker='GNU/Linux ld.so' - ;; - -netbsd*) - version_type=sunos - need_lib_prefix=no - need_version=no - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - dynamic_linker='NetBSD (a.out) ld.so' - else - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so' - soname_spec='${libname}${release}.so$major' - dynamic_linker='NetBSD ld.elf_so' - fi - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - ;; - -newsos6) - version_type=linux - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - ;; - -openbsd*) - version_type=sunos - need_lib_prefix=no - need_version=no - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - case "$host_os" in - openbsd2.[89] | openbsd2.[89].*) - shlibpath_overrides_runpath=no - ;; - *) - shlibpath_overrides_runpath=yes - ;; - esac - else - shlibpath_overrides_runpath=yes - fi - library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - shlibpath_var=LD_LIBRARY_PATH - ;; - -os2*) - libname_spec='$name' - need_lib_prefix=no - library_names_spec='$libname.dll $libname.a' - dynamic_linker='OS/2 ld.exe' - shlibpath_var=LIBPATH - ;; - -osf3* | osf4* | osf5*) - version_type=osf - need_version=no - soname_spec='${libname}${release}.so$major' - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - shlibpath_var=LD_LIBRARY_PATH - sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" - sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" - hardcode_into_libs=yes - ;; - -sco3.2v5*) - version_type=osf - soname_spec='${libname}${release}.so$major' - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - shlibpath_var=LD_LIBRARY_PATH - ;; - -solaris*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - # ldd complains unless libraries are executable - postinstall_cmds='chmod +x $lib' - ;; - -sunos4*) - version_type=sunos - library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' - finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - if test "$with_gnu_ld" = yes; then - need_lib_prefix=no - fi - need_version=yes - ;; - -sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - version_type=linux - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - case $host_vendor in - sni) - shlibpath_overrides_runpath=no - need_lib_prefix=no - export_dynamic_flag_spec='${wl}-Blargedynsym' - runpath_var=LD_RUN_PATH - ;; - siemens) - need_lib_prefix=no - ;; - motorola) - need_lib_prefix=no - need_version=no - shlibpath_overrides_runpath=no - sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' - ;; - esac - ;; - -uts4*) - version_type=linux - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - ;; - -dgux*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - ;; - -sysv4*MP*) - if test -d /usr/nec ;then - version_type=linux - library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so' - soname_spec='$libname.so.$major' - shlibpath_var=LD_LIBRARY_PATH - fi - ;; - -*) - dynamic_linker=no - ;; -esac -echo "$as_me:$LINENO: result: $dynamic_linker" >&5 -echo "${ECHO_T}$dynamic_linker" >&6 -test "$dynamic_linker" = no && can_build_shared=no - -# Report the final consequences. -echo "$as_me:$LINENO: checking if libtool supports shared libraries" >&5 -echo $ECHO_N "checking if libtool supports shared libraries... $ECHO_C" >&6 -echo "$as_me:$LINENO: result: $can_build_shared" >&5 -echo "${ECHO_T}$can_build_shared" >&6 - -echo "$as_me:$LINENO: checking whether to build shared libraries" >&5 -echo $ECHO_N "checking whether to build shared libraries... $ECHO_C" >&6 -test "$can_build_shared" = "no" && enable_shared=no - -# On AIX, shared libraries and static libraries use the same namespace, and -# are all built from PIC. -case "$host_os" in -aix3*) - test "$enable_shared" = yes && enable_static=no - if test -n "$RANLIB"; then - archive_cmds="$archive_cmds~\$RANLIB \$lib" - postinstall_cmds='$RANLIB $lib' - fi - ;; - -aix4*) - if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then - test "$enable_shared" = yes && enable_static=no - fi - ;; -esac -echo "$as_me:$LINENO: result: $enable_shared" >&5 -echo "${ECHO_T}$enable_shared" >&6 - -echo "$as_me:$LINENO: checking whether to build static libraries" >&5 -echo $ECHO_N "checking whether to build static libraries... $ECHO_C" >&6 -# Make sure either enable_shared or enable_static is yes. -test "$enable_shared" = yes || enable_static=yes -echo "$as_me:$LINENO: result: $enable_static" >&5 -echo "${ECHO_T}$enable_static" >&6 - -if test "$hardcode_action" = relink; then - # Fast installation is not supported - enable_fast_install=no -elif test "$shlibpath_overrides_runpath" = yes || - test "$enable_shared" = no; then - # Fast installation is not necessary - enable_fast_install=needless -fi - -variables_saved_for_relink="PATH $shlibpath_var $runpath_var" -if test "$GCC" = yes; then - variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" -fi - -if test "x$enable_dlopen" != xyes; then - enable_dlopen=unknown - enable_dlopen_self=unknown - enable_dlopen_self_static=unknown -else - lt_cv_dlopen=no - lt_cv_dlopen_libs= - - case $host_os in - beos*) - lt_cv_dlopen="load_add_on" - lt_cv_dlopen_libs= - lt_cv_dlopen_self=yes - ;; - - cygwin* | mingw* | pw32*) - lt_cv_dlopen="LoadLibrary" - lt_cv_dlopen_libs= - ;; - - *) - echo "$as_me:$LINENO: checking for shl_load" >&5 -echo $ECHO_N "checking for shl_load... $ECHO_C" >&6 -if test "${ac_cv_func_shl_load+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* Define shl_load to an innocuous variant, in case declares shl_load. - For example, HP-UX 11i declares gettimeofday. */ -#define shl_load innocuous_shl_load - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char shl_load (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef shl_load - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -{ -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char shl_load (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_shl_load) || defined (__stub___shl_load) -choke me -#else -char (*f) () = shl_load; -#endif -#ifdef __cplusplus -} -#endif - -int -main () -{ -return f != shl_load; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_shl_load=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_func_shl_load=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_func_shl_load" >&5 -echo "${ECHO_T}$ac_cv_func_shl_load" >&6 -if test $ac_cv_func_shl_load = yes; then - lt_cv_dlopen="shl_load" -else - echo "$as_me:$LINENO: checking for shl_load in -ldld" >&5 -echo $ECHO_N "checking for shl_load in -ldld... $ECHO_C" >&6 -if test "${ac_cv_lib_dld_shl_load+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-ldld $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char shl_load (); -int -main () -{ -shl_load (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_dld_shl_load=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_dld_shl_load=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -echo "$as_me:$LINENO: result: $ac_cv_lib_dld_shl_load" >&5 -echo "${ECHO_T}$ac_cv_lib_dld_shl_load" >&6 -if test $ac_cv_lib_dld_shl_load = yes; then - lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld" -else - echo "$as_me:$LINENO: checking for dlopen" >&5 -echo $ECHO_N "checking for dlopen... $ECHO_C" >&6 -if test "${ac_cv_func_dlopen+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* Define dlopen to an innocuous variant, in case declares dlopen. - For example, HP-UX 11i declares gettimeofday. */ -#define dlopen innocuous_dlopen - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char dlopen (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef dlopen - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -{ -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char dlopen (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_dlopen) || defined (__stub___dlopen) -choke me -#else -char (*f) () = dlopen; -#endif -#ifdef __cplusplus -} -#endif - -int -main () -{ -return f != dlopen; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_dlopen=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_func_dlopen=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_func_dlopen" >&5 -echo "${ECHO_T}$ac_cv_func_dlopen" >&6 -if test $ac_cv_func_dlopen = yes; then - lt_cv_dlopen="dlopen" -else - echo "$as_me:$LINENO: checking for dlopen in -ldl" >&5 -echo $ECHO_N "checking for dlopen in -ldl... $ECHO_C" >&6 -if test "${ac_cv_lib_dl_dlopen+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-ldl $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char dlopen (); -int -main () -{ -dlopen (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_dl_dlopen=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_dl_dlopen=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -echo "$as_me:$LINENO: result: $ac_cv_lib_dl_dlopen" >&5 -echo "${ECHO_T}$ac_cv_lib_dl_dlopen" >&6 -if test $ac_cv_lib_dl_dlopen = yes; then - lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" -else - echo "$as_me:$LINENO: checking for dlopen in -lsvld" >&5 -echo $ECHO_N "checking for dlopen in -lsvld... $ECHO_C" >&6 -if test "${ac_cv_lib_svld_dlopen+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lsvld $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char dlopen (); -int -main () -{ -dlopen (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_svld_dlopen=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_svld_dlopen=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -echo "$as_me:$LINENO: result: $ac_cv_lib_svld_dlopen" >&5 -echo "${ECHO_T}$ac_cv_lib_svld_dlopen" >&6 -if test $ac_cv_lib_svld_dlopen = yes; then - lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld" -else - echo "$as_me:$LINENO: checking for dld_link in -ldld" >&5 -echo $ECHO_N "checking for dld_link in -ldld... $ECHO_C" >&6 -if test "${ac_cv_lib_dld_dld_link+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-ldld $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char dld_link (); -int -main () -{ -dld_link (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_dld_dld_link=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_dld_dld_link=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -echo "$as_me:$LINENO: result: $ac_cv_lib_dld_dld_link" >&5 -echo "${ECHO_T}$ac_cv_lib_dld_dld_link" >&6 -if test $ac_cv_lib_dld_dld_link = yes; then - lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld" -fi - - -fi - - -fi - - -fi - - -fi - - -fi - - ;; - esac - - if test "x$lt_cv_dlopen" != xno; then - enable_dlopen=yes - else - enable_dlopen=no - fi - - case $lt_cv_dlopen in - dlopen) - save_CPPFLAGS="$CPPFLAGS" - test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" - - save_LDFLAGS="$LDFLAGS" - eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" - - save_LIBS="$LIBS" - LIBS="$lt_cv_dlopen_libs $LIBS" - - echo "$as_me:$LINENO: checking whether a program can dlopen itself" >&5 -echo $ECHO_N "checking whether a program can dlopen itself... $ECHO_C" >&6 -if test "${lt_cv_dlopen_self+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test "$cross_compiling" = yes; then : - lt_cv_dlopen_self=cross -else - lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 - lt_status=$lt_dlunknown - cat > conftest.$ac_ext < -#endif - -#include - -#ifdef RTLD_GLOBAL -# define LT_DLGLOBAL RTLD_GLOBAL -#else -# ifdef DL_GLOBAL -# define LT_DLGLOBAL DL_GLOBAL -# else -# define LT_DLGLOBAL 0 -# endif -#endif - -/* We may have to define LT_DLLAZY_OR_NOW in the command line if we - find out it does not work in some platform. */ -#ifndef LT_DLLAZY_OR_NOW -# ifdef RTLD_LAZY -# define LT_DLLAZY_OR_NOW RTLD_LAZY -# else -# ifdef DL_LAZY -# define LT_DLLAZY_OR_NOW DL_LAZY -# else -# ifdef RTLD_NOW -# define LT_DLLAZY_OR_NOW RTLD_NOW -# else -# ifdef DL_NOW -# define LT_DLLAZY_OR_NOW DL_NOW -# else -# define LT_DLLAZY_OR_NOW 0 -# endif -# endif -# endif -# endif -#endif - -#ifdef __cplusplus -extern "C" void exit (int); -#endif - -void fnord() { int i=42;} -int main () -{ - void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); - int status = $lt_dlunknown; - - if (self) - { - if (dlsym (self,"fnord")) status = $lt_dlno_uscore; - else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; - /* dlclose (self); */ - } - - exit (status); -} -EOF - if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then - (./conftest; exit; ) 2>/dev/null - lt_status=$? - case x$lt_status in - x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;; - x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;; - x$lt_unknown|x*) lt_cv_dlopen_self=no ;; - esac - else : - # compilation failed - lt_cv_dlopen_self=no - fi -fi -rm -fr conftest* - - -fi -echo "$as_me:$LINENO: result: $lt_cv_dlopen_self" >&5 -echo "${ECHO_T}$lt_cv_dlopen_self" >&6 - - if test "x$lt_cv_dlopen_self" = xyes; then - LDFLAGS="$LDFLAGS $link_static_flag" - echo "$as_me:$LINENO: checking whether a statically linked program can dlopen itself" >&5 -echo $ECHO_N "checking whether a statically linked program can dlopen itself... $ECHO_C" >&6 -if test "${lt_cv_dlopen_self_static+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test "$cross_compiling" = yes; then : - lt_cv_dlopen_self_static=cross -else - lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 - lt_status=$lt_dlunknown - cat > conftest.$ac_ext < -#endif - -#include - -#ifdef RTLD_GLOBAL -# define LT_DLGLOBAL RTLD_GLOBAL -#else -# ifdef DL_GLOBAL -# define LT_DLGLOBAL DL_GLOBAL -# else -# define LT_DLGLOBAL 0 -# endif -#endif - -/* We may have to define LT_DLLAZY_OR_NOW in the command line if we - find out it does not work in some platform. */ -#ifndef LT_DLLAZY_OR_NOW -# ifdef RTLD_LAZY -# define LT_DLLAZY_OR_NOW RTLD_LAZY -# else -# ifdef DL_LAZY -# define LT_DLLAZY_OR_NOW DL_LAZY -# else -# ifdef RTLD_NOW -# define LT_DLLAZY_OR_NOW RTLD_NOW -# else -# ifdef DL_NOW -# define LT_DLLAZY_OR_NOW DL_NOW -# else -# define LT_DLLAZY_OR_NOW 0 -# endif -# endif -# endif -# endif -#endif - -#ifdef __cplusplus -extern "C" void exit (int); -#endif - -void fnord() { int i=42;} -int main () -{ - void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); - int status = $lt_dlunknown; - - if (self) - { - if (dlsym (self,"fnord")) status = $lt_dlno_uscore; - else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; - /* dlclose (self); */ - } - - exit (status); -} -EOF - if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then - (./conftest; exit; ) 2>/dev/null - lt_status=$? - case x$lt_status in - x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;; - x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;; - x$lt_unknown|x*) lt_cv_dlopen_self_static=no ;; - esac - else : - # compilation failed - lt_cv_dlopen_self_static=no - fi -fi -rm -fr conftest* - - -fi -echo "$as_me:$LINENO: result: $lt_cv_dlopen_self_static" >&5 -echo "${ECHO_T}$lt_cv_dlopen_self_static" >&6 - fi - - CPPFLAGS="$save_CPPFLAGS" - LDFLAGS="$save_LDFLAGS" - LIBS="$save_LIBS" - ;; - esac - - case $lt_cv_dlopen_self in - yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; - *) enable_dlopen_self=unknown ;; - esac - - case $lt_cv_dlopen_self_static in - yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; - *) enable_dlopen_self_static=unknown ;; - esac -fi - - -if test "$enable_shared" = yes && test "$GCC" = yes; then - case $archive_cmds in - *'~'*) - # FIXME: we may have to deal with multi-command sequences. - ;; - '$CC '*) - # Test whether the compiler implicitly links with -lc since on some - # systems, -lgcc has to come before -lc. If gcc already passes -lc - # to ld, don't add -lc before -lgcc. - echo "$as_me:$LINENO: checking whether -lc should be explicitly linked in" >&5 -echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >&6 - if test "${lt_cv_archive_cmds_need_lc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - $rm conftest* - echo 'static int dummy;' > conftest.$ac_ext - - if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - soname=conftest - lib=conftest - libobjs=conftest.$ac_objext - deplibs= - wl=$lt_cv_prog_cc_wl - compiler_flags=-v - linker_flags=-v - verstring= - output_objdir=. - libname=conftest - save_allow_undefined_flag=$allow_undefined_flag - allow_undefined_flag= - if { (eval echo "$as_me:$LINENO: \"$archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1\"") >&5 - (eval $archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } - then - lt_cv_archive_cmds_need_lc=no - else - lt_cv_archive_cmds_need_lc=yes - fi - allow_undefined_flag=$save_allow_undefined_flag - else - cat conftest.err 1>&5 - fi -fi - - echo "$as_me:$LINENO: result: $lt_cv_archive_cmds_need_lc" >&5 -echo "${ECHO_T}$lt_cv_archive_cmds_need_lc" >&6 - ;; - esac -fi -need_lc=${lt_cv_archive_cmds_need_lc-yes} - -# The second clause should only fire when bootstrapping the -# libtool distribution, otherwise you forgot to ship ltmain.sh -# with your package, and you will get complaints that there are -# no rules to generate ltmain.sh. -if test -f "$ltmain"; then - : -else - # If there is no Makefile yet, we rely on a make rule to execute - # `config.status --recheck' to rerun these tests and create the - # libtool script then. - test -f Makefile && make "$ltmain" -fi - -if test -f "$ltmain"; then - trap "$rm \"${ofile}T\"; exit 1" 1 2 15 - $rm -f "${ofile}T" - - echo creating $ofile - - # Now quote all the things that may contain metacharacters while being - # careful not to overquote the AC_SUBSTed values. We take copies of the - # variables and quote the copies for generation of the libtool script. - for var in echo old_CC old_CFLAGS SED \ - AR AR_FLAGS CC LD LN_S NM SHELL \ - reload_flag reload_cmds wl \ - pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \ - thread_safe_flag_spec whole_archive_flag_spec libname_spec \ - library_names_spec soname_spec \ - RANLIB old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \ - old_postuninstall_cmds archive_cmds archive_expsym_cmds postinstall_cmds \ - postuninstall_cmds extract_expsyms_cmds old_archive_from_expsyms_cmds \ - old_striplib striplib file_magic_cmd export_symbols_cmds \ - deplibs_check_method allow_undefined_flag no_undefined_flag \ - finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \ - global_symbol_to_c_name_address \ - hardcode_libdir_flag_spec hardcode_libdir_separator \ - sys_lib_search_path_spec sys_lib_dlsearch_path_spec \ - compiler_c_o compiler_o_lo need_locks exclude_expsyms include_expsyms; do - - case $var in - reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \ - old_postinstall_cmds | old_postuninstall_cmds | \ - export_symbols_cmds | archive_cmds | archive_expsym_cmds | \ - extract_expsyms_cmds | old_archive_from_expsyms_cmds | \ - postinstall_cmds | postuninstall_cmds | \ - finish_cmds | sys_lib_search_path_spec | sys_lib_dlsearch_path_spec) - # Double-quote double-evaled strings. - eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" - ;; - *) - eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\"" - ;; - esac - done - - cat <<__EOF__ > "${ofile}T" -#! $SHELL - -# `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. -# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP) -# NOTE: Changes made to this file will be lost: look at ltmain.sh. -# -# Copyright (C) 1996-2000 Free Software Foundation, Inc. -# Originally by Gordon Matzigkeit , 1996 -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# A sed that does not truncate output. -SED=$lt_SED - -# Sed that helps us avoid accidentally triggering echo(1) options like -n. -Xsed="${SED} -e s/^X//" - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi - -# ### BEGIN LIBTOOL CONFIG - -# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: - -# Shell to use when invoking shell scripts. -SHELL=$lt_SHELL - -# Whether or not to build shared libraries. -build_libtool_libs=$enable_shared - -# Whether or not to build static libraries. -build_old_libs=$enable_static - -# Whether or not to add -lc for building shared libraries. -build_libtool_need_lc=$need_lc - -# Whether or not to optimize for fast installation. -fast_install=$enable_fast_install - -# The host system. -host_alias=$host_alias -host=$host - -# An echo program that does not interpret backslashes. -echo=$lt_echo - -# The archiver. -AR=$lt_AR -AR_FLAGS=$lt_AR_FLAGS - -# The default C compiler. -CC=$lt_CC - -# Is the compiler the GNU C compiler? -with_gcc=$GCC - -# The linker used to build libraries. -LD=$lt_LD - -# Whether we need hard or soft links. -LN_S=$lt_LN_S - -# A BSD-compatible nm program. -NM=$lt_NM - -# A symbol stripping program -STRIP=$STRIP - -# Used to examine libraries when file_magic_cmd begins "file" -MAGIC_CMD=$MAGIC_CMD - -# Used on cygwin: DLL creation program. -DLLTOOL="$DLLTOOL" - -# Used on cygwin: object dumper. -OBJDUMP="$OBJDUMP" - -# Used on cygwin: assembler. -AS="$AS" - -# The name of the directory that contains temporary libtool files. -objdir=$objdir - -# How to create reloadable object files. -reload_flag=$lt_reload_flag -reload_cmds=$lt_reload_cmds - -# How to pass a linker flag through the compiler. -wl=$lt_wl - -# Object file suffix (normally "o"). -objext="$ac_objext" - -# Old archive suffix (normally "a"). -libext="$libext" - -# Executable file suffix (normally ""). -exeext="$exeext" - -# Additional compiler flags for building library objects. -pic_flag=$lt_pic_flag -pic_mode=$pic_mode - -# Does compiler simultaneously support -c and -o options? -compiler_c_o=$lt_compiler_c_o - -# Can we write directly to a .lo ? -compiler_o_lo=$lt_compiler_o_lo - -# Must we lock files when doing compilation ? -need_locks=$lt_need_locks - -# Do we need the lib prefix for modules? -need_lib_prefix=$need_lib_prefix - -# Do we need a version for libraries? -need_version=$need_version - -# Whether dlopen is supported. -dlopen_support=$enable_dlopen - -# Whether dlopen of programs is supported. -dlopen_self=$enable_dlopen_self - -# Whether dlopen of statically linked programs is supported. -dlopen_self_static=$enable_dlopen_self_static - -# Compiler flag to prevent dynamic linking. -link_static_flag=$lt_link_static_flag - -# Compiler flag to turn off builtin functions. -no_builtin_flag=$lt_no_builtin_flag - -# Compiler flag to allow reflexive dlopens. -export_dynamic_flag_spec=$lt_export_dynamic_flag_spec - -# Compiler flag to generate shared objects directly from archives. -whole_archive_flag_spec=$lt_whole_archive_flag_spec - -# Compiler flag to generate thread-safe objects. -thread_safe_flag_spec=$lt_thread_safe_flag_spec - -# Library versioning type. -version_type=$version_type - -# Format of library name prefix. -libname_spec=$lt_libname_spec - -# List of archive names. First name is the real one, the rest are links. -# The last name is the one that the linker finds with -lNAME. -library_names_spec=$lt_library_names_spec - -# The coded name of the library, if different from the real name. -soname_spec=$lt_soname_spec - -# Commands used to build and install an old-style archive. -RANLIB=$lt_RANLIB -old_archive_cmds=$lt_old_archive_cmds -old_postinstall_cmds=$lt_old_postinstall_cmds -old_postuninstall_cmds=$lt_old_postuninstall_cmds - -# Create an old-style archive from a shared archive. -old_archive_from_new_cmds=$lt_old_archive_from_new_cmds - -# Create a temporary old-style archive to link instead of a shared archive. -old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds - -# Commands used to build and install a shared archive. -archive_cmds=$lt_archive_cmds -archive_expsym_cmds=$lt_archive_expsym_cmds -postinstall_cmds=$lt_postinstall_cmds -postuninstall_cmds=$lt_postuninstall_cmds - -# Commands to strip libraries. -old_striplib=$lt_old_striplib -striplib=$lt_striplib - -# Method to check whether dependent libraries are shared objects. -deplibs_check_method=$lt_deplibs_check_method - -# Command to use when deplibs_check_method == file_magic. -file_magic_cmd=$lt_file_magic_cmd - -# Flag that allows shared libraries with undefined symbols to be built. -allow_undefined_flag=$lt_allow_undefined_flag - -# Flag that forces no undefined symbols. -no_undefined_flag=$lt_no_undefined_flag - -# Commands used to finish a libtool library installation in a directory. -finish_cmds=$lt_finish_cmds - -# Same as above, but a single script fragment to be evaled but not shown. -finish_eval=$lt_finish_eval - -# Take the output of nm and produce a listing of raw symbols and C names. -global_symbol_pipe=$lt_global_symbol_pipe - -# Transform the output of nm in a proper C declaration -global_symbol_to_cdecl=$lt_global_symbol_to_cdecl - -# Transform the output of nm in a C name address pair -global_symbol_to_c_name_address=$lt_global_symbol_to_c_name_address - -# This is the shared library runtime path variable. -runpath_var=$runpath_var - -# This is the shared library path variable. -shlibpath_var=$shlibpath_var - -# Is shlibpath searched before the hard-coded library search path? -shlibpath_overrides_runpath=$shlibpath_overrides_runpath - -# How to hardcode a shared library path into an executable. -hardcode_action=$hardcode_action - -# Whether we should hardcode library paths into libraries. -hardcode_into_libs=$hardcode_into_libs - -# Flag to hardcode \$libdir into a binary during linking. -# This must work even if \$libdir does not exist. -hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec - -# Whether we need a single -rpath flag with a separated argument. -hardcode_libdir_separator=$lt_hardcode_libdir_separator - -# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the -# resulting binary. -hardcode_direct=$hardcode_direct - -# Set to yes if using the -LDIR flag during linking hardcodes DIR into the -# resulting binary. -hardcode_minus_L=$hardcode_minus_L - -# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into -# the resulting binary. -hardcode_shlibpath_var=$hardcode_shlibpath_var - -# Variables whose values should be saved in libtool wrapper scripts and -# restored at relink time. -variables_saved_for_relink="$variables_saved_for_relink" - -# Whether libtool must link a program against all its dependency libraries. -link_all_deplibs=$link_all_deplibs - -# Compile-time system search path for libraries -sys_lib_search_path_spec=$lt_sys_lib_search_path_spec - -# Run-time system search path for libraries -sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec - -# Fix the shell variable \$srcfile for the compiler. -fix_srcfile_path="$fix_srcfile_path" - -# Set to yes if exported symbols are required. -always_export_symbols=$always_export_symbols - -# The commands to list exported symbols. -export_symbols_cmds=$lt_export_symbols_cmds - -# The commands to extract the exported symbol list from a shared archive. -extract_expsyms_cmds=$lt_extract_expsyms_cmds - -# Symbols that should not be listed in the preloaded symbols. -exclude_expsyms=$lt_exclude_expsyms - -# Symbols that must always be exported. -include_expsyms=$lt_include_expsyms - -# ### END LIBTOOL CONFIG - -__EOF__ - - case $host_os in - aix3*) - cat <<\EOF >> "${ofile}T" - -# 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. -if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES -fi -EOF - ;; - esac - - case $host_os in - cygwin* | mingw* | pw32* | os2*) - cat <<'EOF' >> "${ofile}T" - # This is a source program that is used to create dlls on Windows - # Don't remove nor modify the starting and closing comments -# /* ltdll.c starts here */ -# #define WIN32_LEAN_AND_MEAN -# #include -# #undef WIN32_LEAN_AND_MEAN -# #include -# -# #ifndef __CYGWIN__ -# # ifdef __CYGWIN32__ -# # define __CYGWIN__ __CYGWIN32__ -# # endif -# #endif -# -# #ifdef __cplusplus -# extern "C" { -# #endif -# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved); -# #ifdef __cplusplus -# } -# #endif -# -# #ifdef __CYGWIN__ -# #include -# DECLARE_CYGWIN_DLL( DllMain ); -# #endif -# HINSTANCE __hDllInstance_base; -# -# BOOL APIENTRY -# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved) -# { -# __hDllInstance_base = hInst; -# return TRUE; -# } -# /* ltdll.c ends here */ - # This is a source program that is used to create import libraries - # on Windows for dlls which lack them. Don't remove nor modify the - # starting and closing comments -# /* impgen.c starts here */ -# /* Copyright (C) 1999-2000 Free Software Foundation, Inc. -# -# This file is part of GNU libtool. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# */ -# -# #include /* for printf() */ -# #include /* for open(), lseek(), read() */ -# #include /* for O_RDONLY, O_BINARY */ -# #include /* for strdup() */ -# -# /* O_BINARY isn't required (or even defined sometimes) under Unix */ -# #ifndef O_BINARY -# #define O_BINARY 0 -# #endif -# -# static unsigned int -# pe_get16 (fd, offset) -# int fd; -# int offset; -# { -# unsigned char b[2]; -# lseek (fd, offset, SEEK_SET); -# read (fd, b, 2); -# return b[0] + (b[1]<<8); -# } -# -# static unsigned int -# pe_get32 (fd, offset) -# int fd; -# int offset; -# { -# unsigned char b[4]; -# lseek (fd, offset, SEEK_SET); -# read (fd, b, 4); -# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24); -# } -# -# static unsigned int -# pe_as32 (ptr) -# void *ptr; -# { -# unsigned char *b = ptr; -# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24); -# } -# -# int -# main (argc, argv) -# int argc; -# char *argv[]; -# { -# int dll; -# unsigned long pe_header_offset, opthdr_ofs, num_entries, i; -# unsigned long export_rva, export_size, nsections, secptr, expptr; -# unsigned long name_rvas, nexp; -# unsigned char *expdata, *erva; -# char *filename, *dll_name; -# -# filename = argv[1]; -# -# dll = open(filename, O_RDONLY|O_BINARY); -# if (dll < 1) -# return 1; -# -# dll_name = filename; -# -# for (i=0; filename[i]; i++) -# if (filename[i] == '/' || filename[i] == '\\' || filename[i] == ':') -# dll_name = filename + i +1; -# -# pe_header_offset = pe_get32 (dll, 0x3c); -# opthdr_ofs = pe_header_offset + 4 + 20; -# num_entries = pe_get32 (dll, opthdr_ofs + 92); -# -# if (num_entries < 1) /* no exports */ -# return 1; -# -# export_rva = pe_get32 (dll, opthdr_ofs + 96); -# export_size = pe_get32 (dll, opthdr_ofs + 100); -# nsections = pe_get16 (dll, pe_header_offset + 4 +2); -# secptr = (pe_header_offset + 4 + 20 + -# pe_get16 (dll, pe_header_offset + 4 + 16)); -# -# expptr = 0; -# for (i = 0; i < nsections; i++) -# { -# char sname[8]; -# unsigned long secptr1 = secptr + 40 * i; -# unsigned long vaddr = pe_get32 (dll, secptr1 + 12); -# unsigned long vsize = pe_get32 (dll, secptr1 + 16); -# unsigned long fptr = pe_get32 (dll, secptr1 + 20); -# lseek(dll, secptr1, SEEK_SET); -# read(dll, sname, 8); -# if (vaddr <= export_rva && vaddr+vsize > export_rva) -# { -# expptr = fptr + (export_rva - vaddr); -# if (export_rva + export_size > vaddr + vsize) -# export_size = vsize - (export_rva - vaddr); -# break; -# } -# } -# -# expdata = (unsigned char*)malloc(export_size); -# lseek (dll, expptr, SEEK_SET); -# read (dll, expdata, export_size); -# erva = expdata - export_rva; -# -# nexp = pe_as32 (expdata+24); -# name_rvas = pe_as32 (expdata+32); -# -# printf ("EXPORTS\n"); -# for (i = 0; i> "${ofile}T" || (rm -f "${ofile}T"; exit 1) - - mv -f "${ofile}T" "$ofile" || \ - (rm -f "$ofile" && cp "${ofile}T" "$ofile" && rm -f "${ofile}T") - chmod +x "$ofile" -fi - - - - - -# This can be used to rebuild libtool when needed -LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh" - -# Always use our own libtool. -LIBTOOL='$(SHELL) $(top_builddir)/libtool' - -# Prevent multiple expansion - - -echo "$as_me:$LINENO: checking for pcc non-reentrant struct return convention" >&5 -echo $ECHO_N "checking for pcc non-reentrant struct return convention... $ECHO_C" >&6 -if test "${cl_cv_c_struct_return_static+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -save_CFLAGS="$CFLAGS" -test $CC_GCC = true && CFLAGS="$CFLAGS -O0" -if test "$cross_compiling" = yes; then - cl_cv_c_struct_return_static="guessing no" -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -typedef struct { int a; int b; int c; int d; int e; } foo; -foo foofun () { static foo foopi = {3141,5926,5358,9793,2385}; return foopi; } -foo* (*fun) () = (foo* (*) ()) foofun; -int main() -{ foo foo1; - foo* fooptr1; - foo foo2; - foo* fooptr2; - foo1 = foofun(); fooptr1 = (*fun)(&foo1); - foo2 = foofun(); fooptr2 = (*fun)(&foo2); - exit(!(fooptr1 == fooptr2 && fooptr1->c == 5358)); -} -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cl_cv_c_struct_return_static=yes -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -rm -f core -cl_cv_c_struct_return_static=no -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -CFLAGS="$save_CFLAGS" - -fi -echo "$as_me:$LINENO: result: $cl_cv_c_struct_return_static" >&5 -echo "${ECHO_T}$cl_cv_c_struct_return_static" >&6 -case "$cl_cv_c_struct_return_static" in - *yes) cat >>confdefs.h <<\_ACEOF -#define __PCC_STRUCT_RETURN__ 1 -_ACEOF - ;; - *no) ;; -esac - -echo "$as_me:$LINENO: checking whether small structs are returned in registers" >&5 -echo $ECHO_N "checking whether small structs are returned in registers... $ECHO_C" >&6 -if test "${cl_cv_c_struct_return_small+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -if test "$cross_compiling" = yes; then - cl_cv_c_struct_return_small="guessing no" -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -typedef struct { int x; } foo; int y; -foo foofun () { foo f; f.x = y; return f; } -int (*fun) () = (int (*) ()) foofun; -int main() -{ y = 37; if ((*fun)() != 37) exit(1); - y = 55; if ((*fun)() != 55) exit(1); - exit(0); -} -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cl_cv_c_struct_return_small=yes -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -rm -f core -cl_cv_c_struct_return_small=no -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi - -fi -echo "$as_me:$LINENO: result: $cl_cv_c_struct_return_small" >&5 -echo "${ECHO_T}$cl_cv_c_struct_return_small" >&6 -case "$cl_cv_c_struct_return_small" in - *yes) cat >>confdefs.h <<\_ACEOF -#define __SMALL_STRUCT_RETURN__ 1 -_ACEOF - ;; - *no) ;; -esac - -echo "$as_me:$LINENO: checking whether floats are returned in integer registers" >&5 -echo $ECHO_N "checking whether floats are returned in integer registers... $ECHO_C" >&6 -if test "${cl_cv_c_float_return_ireg+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -if test "$cross_compiling" = yes; then - cl_cv_c_float_return_ireg="guessing no" -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -float x = (float)1.2; -float y = (float)1.3; -float fun () { return x*y; } -int main() -{ int val = (* (int (*) ()) fun) (); - exit (!(val == 0x3FC7AE15 || val == 0x15AEC73F)); -} -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cl_cv_c_float_return_ireg=yes -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -rm -f core -cl_cv_c_float_return_ireg=no -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi - -fi -echo "$as_me:$LINENO: result: $cl_cv_c_float_return_ireg" >&5 -echo "${ECHO_T}$cl_cv_c_float_return_ireg" >&6 -case "$cl_cv_c_float_return_ireg" in - *yes) cat >>confdefs.h <<\_ACEOF -#define __IREG_FLOAT_RETURN__ 1 -_ACEOF - ;; - *no) ;; -esac - -echo "$as_me:$LINENO: checking for long long type" >&5 -echo $ECHO_N "checking for long long type... $ECHO_C" >&6 -if test "${cl_cv_c_longlong+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -if test "$cross_compiling" = yes; then - cl_cv_c_longlong="guessing no" -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -int main() -{ -/* long longs don't work right with gcc-2.7.2 on m68k */ -/* long longs don't work right with gcc-2.7.2 on rs6000: avcall/tests.c gets - miscompiled. */ -#if defined(__m68k__) || (defined(_IBMR2) || defined(__powerpc)) -#if defined(__GNUC__) && (__GNUC__ == 2) && (__GNUC_MINOR__ <= 7) - exit(1); -#endif -#endif - { long x = 944938507; long y = 737962842; long z = 162359677; - exit(!(((long long) x)*((long long) y)>>32 == z)); - } -} -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cl_cv_c_longlong=yes -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -cl_cv_c_longlong=no -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi - -fi -echo "$as_me:$LINENO: result: $cl_cv_c_longlong" >&5 -echo "${ECHO_T}$cl_cv_c_longlong" >&6 -case "$cl_cv_c_longlong" in - *yes) -cat >>confdefs.h <<\_ACEOF -#define HAVE_LONGLONG -_ACEOF - ;; - *no) ;; -esac - - ac_config_files="$ac_config_files Makefile" -cat >confcache <<\_ACEOF -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs, see configure's option --config-cache. -# It is not useful on other systems. If it contains results you don't -# want to keep, you may remove or edit it. -# -# config.status only pays attention to the cache file if you give it -# the --recheck option to rerun configure. -# -# `ac_cv_env_foo' variables (set or unset) will be overridden when -# loading this file, other *unset* `ac_cv_foo' will be assigned the -# following values. - -_ACEOF - -# The following way of writing the cache mishandles newlines in values, -# but we know of no workaround that is simple, portable, and efficient. -# So, don't put newlines in cache variables' values. -# Ultrix sh set writes to stderr and can't be redirected directly, -# and sets the high bit in the cache file unless we assign to the vars. -{ - (set) 2>&1 | - case `(ac_space=' '; set | grep ac_space) 2>&1` in - *ac_space=\ *) - # `set' does not quote correctly, so add quotes (double-quote - # substitution turns \\\\ into \\, and sed turns \\ into \). - sed -n \ - "s/'/'\\\\''/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" - ;; - *) - # `set' quotes correctly as required by POSIX, so do not add quotes. - sed -n \ - "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" - ;; - esac; -} | - sed ' - t clear - : clear - s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ - t end - /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ - : end' >>confcache -if diff $cache_file confcache >/dev/null 2>&1; then :; else - if test -w $cache_file; then - test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file" - cat confcache >$cache_file - else - echo "not updating unwritable cache $cache_file" - fi -fi -rm -f confcache - -test "x$prefix" = xNONE && prefix=$ac_default_prefix -# Let make expand exec_prefix. -test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' - -# VPATH may cause trouble with some makes, so we remove $(srcdir), -# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and -# trailing colons and then remove the whole line if VPATH becomes empty -# (actually we leave an empty line to preserve line numbers). -if test "x$srcdir" = x.; then - ac_vpsub='/^[ ]*VPATH[ ]*=/{ -s/:*\$(srcdir):*/:/; -s/:*\${srcdir}:*/:/; -s/:*@srcdir@:*/:/; -s/^\([^=]*=[ ]*\):*/\1/; -s/:*$//; -s/^[^=]*=[ ]*$//; -}' -fi - -DEFS=-DHAVE_CONFIG_H - -ac_libobjs= -ac_ltlibobjs= -for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue - # 1. Remove the extension, and $U if already installed. - ac_i=`echo "$ac_i" | - sed 's/\$U\././;s/\.o$//;s/\.obj$//'` - # 2. Add them. - ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext" - ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo' -done -LIBOBJS=$ac_libobjs - -LTLIBOBJS=$ac_ltlibobjs - - - -: ${CONFIG_STATUS=./config.status} -ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files $CONFIG_STATUS" -{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5 -echo "$as_me: creating $CONFIG_STATUS" >&6;} -cat >$CONFIG_STATUS <<_ACEOF -#! $SHELL -# Generated by $as_me. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false -SHELL=\${CONFIG_SHELL-$SHELL} -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## - -# Be Bourne compatible -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' -elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then - set -o posix -fi -DUALCASE=1; export DUALCASE # for MKS sh - -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - - -# Work around bugs in pre-3.0 UWIN ksh. -$as_unset ENV MAIL MAILPATH -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -for as_var in \ - LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ - LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ - LC_TELEPHONE LC_TIME -do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var - else - $as_unset $as_var - fi -done - -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - - -# Name of the executable. -as_me=`$as_basename "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)$' \| \ - . : '\(.\)' 2>/dev/null || -echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } - /^X\/\(\/\/\)$/{ s//\1/; q; } - /^X\/\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - - -# PATH needs CR, and LINENO needs CR and PATH. -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" || { - # Find who we are. Look in the path if we contain no path at all - # relative or not. - case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done - - ;; - esac - # We did not find ourselves, most probably we were run as `sh COMMAND' - # in which case we are not to be found in the path. - if test "x$as_myself" = x; then - as_myself=$0 - fi - if test ! -f "$as_myself"; then - { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5 -echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;} - { (exit 1); exit 1; }; } - fi - case $CONFIG_SHELL in - '') - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for as_base in sh bash ksh sh5; do - case $as_dir in - /*) - if ("$as_dir/$as_base" -c ' - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then - $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } - $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } - CONFIG_SHELL=$as_dir/$as_base - export CONFIG_SHELL - exec "$CONFIG_SHELL" "$0" ${1+"$@"} - fi;; - esac - done -done -;; - esac - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line before each line; the second 'sed' does the real - # work. The second script uses 'N' to pair each line-number line - # with the numbered line, and appends trailing '-' during - # substitution so that $LINENO is not a special case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) - sed '=' <$as_myself | - sed ' - N - s,$,-, - : loop - s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, - t loop - s,-$,, - s,^['$as_cr_digits']*\n,, - ' >$as_me.lineno && - chmod +x $as_me.lineno || - { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5 -echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;} - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensible to this). - . ./$as_me.lineno - # Exit status is that of the last command. - exit -} - - -case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in - *c*,-n*) ECHO_N= ECHO_C=' -' ECHO_T=' ' ;; - *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; - *) ECHO_N= ECHO_C='\c' ECHO_T= ;; -esac - -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -rm -f conf$$ conf$$.exe conf$$.file -echo >conf$$.file -if ln -s conf$$.file conf$$ 2>/dev/null; then - # We could just check for DJGPP; but this test a) works b) is more generic - # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). - if test -f conf$$.exe; then - # Don't use ln at all; we don't have any links - as_ln_s='cp -p' - else - as_ln_s='ln -s' - fi -elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.file - -if mkdir -p . 2>/dev/null; then - as_mkdir_p=: -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -as_executable_p="test -f" - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -# IFS -# We need space, tab and new line, in precisely that order. -as_nl=' -' -IFS=" $as_nl" - -# CDPATH. -$as_unset CDPATH - -exec 6>&1 - -# Open the log real soon, to keep \$[0] and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. Logging --version etc. is OK. -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX -} >&5 -cat >&5 <<_CSEOF - -This file was extended by $as_me, which was -generated by GNU Autoconf 2.59. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -_CSEOF -echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5 -echo >&5 -_ACEOF - -# Files that config.status was made for. -if test -n "$ac_config_files"; then - echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS -fi - -if test -n "$ac_config_headers"; then - echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS -fi - -if test -n "$ac_config_links"; then - echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS -fi - -if test -n "$ac_config_commands"; then - echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS -fi - -cat >>$CONFIG_STATUS <<\_ACEOF - -ac_cs_usage="\ -\`$as_me' instantiates files from templates according to the -current configuration. - -Usage: $0 [OPTIONS] [FILE]... - - -h, --help print this help, then exit - -V, --version print version number, then exit - -q, --quiet do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - --header=FILE[:TEMPLATE] - instantiate the configuration header FILE - -Configuration files: -$config_files - -Configuration headers: -$config_headers - -Report bugs to ." -_ACEOF - -cat >>$CONFIG_STATUS <<_ACEOF -ac_cs_version="\\ -config.status -configured by $0, generated by GNU Autoconf 2.59, - with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" - -Copyright (C) 2003 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." -srcdir=$srcdir -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF -# If no file are specified by the user, then we need to provide default -# value. By we need to know if files were specified by the user. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=*) - ac_option=`expr "x$1" : 'x\([^=]*\)='` - ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'` - ac_shift=: - ;; - -*) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - *) # This is not an option, so the user has probably given explicit - # arguments. - ac_option=$1 - ac_need_defaults=false;; - esac - - case $ac_option in - # Handling of the options. -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --vers* | -V ) - echo "$ac_cs_version"; exit 0 ;; - --he | --h) - # Conflict between --help and --header - { { echo "$as_me:$LINENO: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&2;} - { (exit 1); exit 1; }; };; - --help | --hel | -h ) - echo "$ac_cs_usage"; exit 0 ;; - --debug | --d* | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - CONFIG_FILES="$CONFIG_FILES $ac_optarg" - ac_need_defaults=false;; - --header | --heade | --head | --hea ) - $ac_shift - CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" - ac_need_defaults=false;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&2;} - { (exit 1); exit 1; }; } ;; - - *) ac_config_targets="$ac_config_targets $1" ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF -if \$ac_cs_recheck; then - echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 - exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion -fi - -_ACEOF - - - - - -cat >>$CONFIG_STATUS <<\_ACEOF -for ac_config_target in $ac_config_targets -do - case "$ac_config_target" in - # Handling of arguments. - "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; - "avcall.h" ) CONFIG_HEADERS="$CONFIG_HEADERS avcall.h" ;; - *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 -echo "$as_me: error: invalid argument: $ac_config_target" >&2;} - { (exit 1); exit 1; }; };; - esac -done - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files - test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason to put it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Create a temporary directory, and hook for its removal unless debugging. -$debug || -{ - trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 - trap '{ (exit 1); exit 1; }' 1 2 13 15 -} - -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" -} || -{ - tmp=./confstat$$-$RANDOM - (umask 077 && mkdir $tmp) -} || -{ - echo "$me: cannot create a temporary directory in ." >&2 - { (exit 1); exit 1; } -} - -_ACEOF - -cat >>$CONFIG_STATUS <<_ACEOF - -# -# CONFIG_FILES section. -# - -# No need to generate the scripts if there are no CONFIG_FILES. -# This happens for instance when ./config.status config.h -if test -n "\$CONFIG_FILES"; then - # Protect against being on the right side of a sed subst in config.status. - sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g; - s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF -s,@SHELL@,$SHELL,;t t -s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t -s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t -s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t -s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t -s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t -s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t -s,@exec_prefix@,$exec_prefix,;t t -s,@prefix@,$prefix,;t t -s,@program_transform_name@,$program_transform_name,;t t -s,@bindir@,$bindir,;t t -s,@sbindir@,$sbindir,;t t -s,@libexecdir@,$libexecdir,;t t -s,@datadir@,$datadir,;t t -s,@sysconfdir@,$sysconfdir,;t t -s,@sharedstatedir@,$sharedstatedir,;t t -s,@localstatedir@,$localstatedir,;t t -s,@libdir@,$libdir,;t t -s,@includedir@,$includedir,;t t -s,@oldincludedir@,$oldincludedir,;t t -s,@infodir@,$infodir,;t t -s,@mandir@,$mandir,;t t -s,@build_alias@,$build_alias,;t t -s,@host_alias@,$host_alias,;t t -s,@target_alias@,$target_alias,;t t -s,@DEFS@,$DEFS,;t t -s,@ECHO_C@,$ECHO_C,;t t -s,@ECHO_N@,$ECHO_N,;t t -s,@ECHO_T@,$ECHO_T,;t t -s,@LIBS@,$LIBS,;t t -s,@CC@,$CC,;t t -s,@CFLAGS@,$CFLAGS,;t t -s,@LDFLAGS@,$LDFLAGS,;t t -s,@CPPFLAGS@,$CPPFLAGS,;t t -s,@ac_ct_CC@,$ac_ct_CC,;t t -s,@EXEEXT@,$EXEEXT,;t t -s,@OBJEXT@,$OBJEXT,;t t -s,@CPP@,$CPP,;t t -s,@EGREP@,$EGREP,;t t -s,@CC_GCC@,$CC_GCC,;t t -s,@GCC_X_NONE@,$GCC_X_NONE,;t t -s,@AS_UNDERSCORE@,$AS_UNDERSCORE,;t t -s,@RANLIB@,$RANLIB,;t t -s,@SET_MAKE@,$SET_MAKE,;t t -s,@INSTALL@,$INSTALL,;t t -s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t -s,@INSTALL_DATA@,$INSTALL_DATA,;t t -s,@CP@,$CP,;t t -s,@LN@,$LN,;t t -s,@build@,$build,;t t -s,@build_cpu@,$build_cpu,;t t -s,@build_vendor@,$build_vendor,;t t -s,@build_os@,$build_os,;t t -s,@host@,$host,;t t -s,@host_cpu@,$host_cpu,;t t -s,@host_vendor@,$host_vendor,;t t -s,@host_os@,$host_os,;t t -s,@LN_S@,$LN_S,;t t -s,@ECHO@,$ECHO,;t t -s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t -s,@STRIP@,$STRIP,;t t -s,@ac_ct_STRIP@,$ac_ct_STRIP,;t t -s,@LIBTOOL@,$LIBTOOL,;t t -s,@LIBOBJS@,$LIBOBJS,;t t -s,@LTLIBOBJS@,$LTLIBOBJS,;t t -CEOF - -_ACEOF - - cat >>$CONFIG_STATUS <<\_ACEOF - # Split the substitutions into bite-sized pieces for seds with - # small command number limits, like on Digital OSF/1 and HP-UX. - ac_max_sed_lines=48 - ac_sed_frag=1 # Number of current file. - ac_beg=1 # First line for current file. - ac_end=$ac_max_sed_lines # Line after last line for current file. - ac_more_lines=: - ac_sed_cmds= - while $ac_more_lines; do - if test $ac_beg -gt 1; then - sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - else - sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - fi - if test ! -s $tmp/subs.frag; then - ac_more_lines=false - else - # The purpose of the label and of the branching condition is to - # speed up the sed processing (if there are no `@' at all, there - # is no need to browse any of the substitutions). - # These are the two extra sed commands mentioned above. - (echo ':t - /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed - if test -z "$ac_sed_cmds"; then - ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed" - else - ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed" - fi - ac_sed_frag=`expr $ac_sed_frag + 1` - ac_beg=$ac_end - ac_end=`expr $ac_end + $ac_max_sed_lines` - fi - done - if test -z "$ac_sed_cmds"; then - ac_sed_cmds=cat - fi -fi # test -n "$CONFIG_FILES" - -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF -for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; - esac - - # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories. - ac_dir=`(dirname "$ac_file") 2>/dev/null || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac - - - - if test x"$ac_file" != x-; then - { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - rm -f "$ac_file" - fi - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - configure_input= - else - configure_input="$ac_file. " - fi - configure_input=$configure_input"Generated from `echo $ac_file_in | - sed 's,.*/,,'` by configure." - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF - sed "$ac_vpsub -$extrasub -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s,@configure_input@,$configure_input,;t t -s,@srcdir@,$ac_srcdir,;t t -s,@abs_srcdir@,$ac_abs_srcdir,;t t -s,@top_srcdir@,$ac_top_srcdir,;t t -s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t -s,@builddir@,$ac_builddir,;t t -s,@abs_builddir@,$ac_abs_builddir,;t t -s,@top_builddir@,$ac_top_builddir,;t t -s,@abs_top_builddir@,$ac_abs_top_builddir,;t t -" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out - rm -f $tmp/stdin - if test x"$ac_file" != x-; then - mv $tmp/out $ac_file - else - cat $tmp/out - rm -f $tmp/out - fi - -done -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF - -# -# CONFIG_HEADER section. -# - -# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where -# NAME is the cpp macro being defined and VALUE is the value it is being given. -# -# ac_d sets the value in "#define NAME VALUE" lines. -ac_dA='s,^\([ ]*\)#\([ ]*define[ ][ ]*\)' -ac_dB='[ ].*$,\1#\2' -ac_dC=' ' -ac_dD=',;t' -# ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE". -ac_uA='s,^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' -ac_uB='$,\1#\2define\3' -ac_uC=' ' -ac_uD=',;t' - -for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; - esac - - test x"$ac_file" != x- && { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - # Do quote $f, to prevent DOS paths from being IFS'd. - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } - # Remove the trailing spaces. - sed 's/[ ]*$//' $ac_file_inputs >$tmp/in - -_ACEOF - -# Transform confdefs.h into two sed scripts, `conftest.defines' and -# `conftest.undefs', that substitutes the proper values into -# config.h.in to produce config.h. The first handles `#define' -# templates, and the second `#undef' templates. -# And first: Protect against being on the right side of a sed subst in -# config.status. Protect against being in an unquoted here document -# in config.status. -rm -f conftest.defines conftest.undefs -# Using a here document instead of a string reduces the quoting nightmare. -# Putting comments in sed scripts is not portable. -# -# `end' is used to avoid that the second main sed command (meant for -# 0-ary CPP macros) applies to n-ary macro definitions. -# See the Autoconf documentation for `clear'. -cat >confdef2sed.sed <<\_ACEOF -s/[\\&,]/\\&/g -s,[\\$`],\\&,g -t clear -: clear -s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*\)\(([^)]*)\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1\2${ac_dC}\3${ac_dD},gp -t end -s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD},gp -: end -_ACEOF -# If some macros were called several times there might be several times -# the same #defines, which is useless. Nevertheless, we may not want to -# sort them, since we want the *last* AC-DEFINE to be honored. -uniq confdefs.h | sed -n -f confdef2sed.sed >conftest.defines -sed 's/ac_d/ac_u/g' conftest.defines >conftest.undefs -rm -f confdef2sed.sed - -# This sed command replaces #undef with comments. This is necessary, for -# example, in the case of _POSIX_SOURCE, which is predefined and required -# on some systems where configure will not decide to define it. -cat >>conftest.undefs <<\_ACEOF -s,^[ ]*#[ ]*undef[ ][ ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */, -_ACEOF - -# Break up conftest.defines because some shells have a limit on the size -# of here documents, and old seds have small limits too (100 cmds). -echo ' # Handle all the #define templates only if necessary.' >>$CONFIG_STATUS -echo ' if grep "^[ ]*#[ ]*define" $tmp/in >/dev/null; then' >>$CONFIG_STATUS -echo ' # If there are no defines, we may have an empty if/fi' >>$CONFIG_STATUS -echo ' :' >>$CONFIG_STATUS -rm -f conftest.tail -while grep . conftest.defines >/dev/null -do - # Write a limited-size here document to $tmp/defines.sed. - echo ' cat >$tmp/defines.sed <>$CONFIG_STATUS - # Speed up: don't consider the non `#define' lines. - echo '/^[ ]*#[ ]*define/!b' >>$CONFIG_STATUS - # Work around the forget-to-reset-the-flag bug. - echo 't clr' >>$CONFIG_STATUS - echo ': clr' >>$CONFIG_STATUS - sed ${ac_max_here_lines}q conftest.defines >>$CONFIG_STATUS - echo 'CEOF - sed -f $tmp/defines.sed $tmp/in >$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in -' >>$CONFIG_STATUS - sed 1,${ac_max_here_lines}d conftest.defines >conftest.tail - rm -f conftest.defines - mv conftest.tail conftest.defines -done -rm -f conftest.defines -echo ' fi # grep' >>$CONFIG_STATUS -echo >>$CONFIG_STATUS - -# Break up conftest.undefs because some shells have a limit on the size -# of here documents, and old seds have small limits too (100 cmds). -echo ' # Handle all the #undef templates' >>$CONFIG_STATUS -rm -f conftest.tail -while grep . conftest.undefs >/dev/null -do - # Write a limited-size here document to $tmp/undefs.sed. - echo ' cat >$tmp/undefs.sed <>$CONFIG_STATUS - # Speed up: don't consider the non `#undef' - echo '/^[ ]*#[ ]*undef/!b' >>$CONFIG_STATUS - # Work around the forget-to-reset-the-flag bug. - echo 't clr' >>$CONFIG_STATUS - echo ': clr' >>$CONFIG_STATUS - sed ${ac_max_here_lines}q conftest.undefs >>$CONFIG_STATUS - echo 'CEOF - sed -f $tmp/undefs.sed $tmp/in >$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in -' >>$CONFIG_STATUS - sed 1,${ac_max_here_lines}d conftest.undefs >conftest.tail - rm -f conftest.undefs - mv conftest.tail conftest.undefs -done -rm -f conftest.undefs - -cat >>$CONFIG_STATUS <<\_ACEOF - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - echo "/* Generated by configure. */" >$tmp/config.h - else - echo "/* $ac_file. Generated by configure. */" >$tmp/config.h - fi - cat $tmp/in >>$tmp/config.h - rm -f $tmp/in - if test x"$ac_file" != x-; then - if diff $ac_file $tmp/config.h >/dev/null 2>&1; then - { echo "$as_me:$LINENO: $ac_file is unchanged" >&5 -echo "$as_me: $ac_file is unchanged" >&6;} - else - ac_dir=`(dirname "$ac_file") 2>/dev/null || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - rm -f $ac_file - mv $tmp/config.h $ac_file - fi - else - cat $tmp/config.h - rm -f $tmp/config.h - fi -done -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF - -{ (exit 0); exit 0; } -_ACEOF -chmod +x $CONFIG_STATUS -ac_clean_files=$ac_clean_files_save - - -# configure is writing to config.log, and then calls config.status. -# config.status does its own redirection, appending to config.log. -# Unfortunately, on DOS this fails, as config.log is still kept open -# by configure, so config.status won't be able to write to it; its -# output is simply discarded. So we exec the FD to /dev/null, -# effectively closing config.log, so it can be properly (re)opened and -# appended to by config.status. When coming back to configure, we -# need to make the FD available again. -if test "$no_create" != yes; then - ac_cs_success=: - ac_config_status_args= - test "$silent" = yes && - ac_config_status_args="$ac_config_status_args --quiet" - exec 5>/dev/null - $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false - exec 5>>config.log - # Use ||, not &&, to avoid exiting from the if with $? = 1, which - # would make configure fail if this is the last instruction. - $ac_cs_success || { (exit 1); exit 1; } -fi - DELETED ffcall/avcall/configure.in Index: ffcall/avcall/configure.in ================================================================== --- ffcall/avcall/configure.in +++ /dev/null @@ -1,25 +0,0 @@ -dnl AUTOCONF configuration for AVCALL -dnl Bruno Haible 2000-04-02 -dnl -AC_INIT(avcall.h.in) -AC_CONFIG_HEADER(avcall.h) -AC_PROG_CC -AC_PROG_CPP -AC_PROG_GCC_TRADITIONAL -CL_CC_GCC -CL_AS_UNDERSCORE -CL_PROG_RANLIB -AC_PROG_MAKE_SET -CL_PROG_INSTALL -CL_PROG_CP -CL_PROG_LN -CL_CANONICAL_HOST(../autoconf) -CL_CANONICAL_HOST_CPU_FOR_FFCALL -PACKAGE=avcall -AM_DISABLE_SHARED -AM_PROG_LIBTOOL -CL_PCC_STRUCT_RETURN -CL_SMALL_STRUCT_RETURN -CL_IREG_FLOAT_RETURN -CL_LONGLONG -AC_OUTPUT(Makefile) DELETED ffcall/avcall/minitests.c Index: ffcall/avcall/minitests.c ================================================================== --- ffcall/avcall/minitests.c +++ /dev/null @@ -1,2 +0,0 @@ -#define SKIP_EXTRA_STRUCTS -#include "tests.c" DELETED ffcall/avcall/port-structs.c Index: ffcall/avcall/port-structs.c ================================================================== --- ffcall/avcall/port-structs.c +++ /dev/null @@ -1,356 +0,0 @@ -/* To know more about structure passing conventions, - * compile this to assembly code: $(CC) -O -S port-structs.c - */ - -typedef struct { char x1; } C1; -typedef struct { char x1,x2; } C2; -typedef struct { char x1,x2,x3; } C3; -typedef struct { char x1,x2,x3,x4; } C4; -typedef struct { char x1,x2,x3,x4,x5; } C5; -typedef struct { char x1,x2,x3,x4,x5,x6; } C6; -typedef struct { char x1,x2,x3,x4,x5,x6,x7; } C7; -typedef struct { char x1,x2,x3,x4,x5,x6,x7,x8; } C8; -typedef struct { char x1,x2,x3,x4,x5,x6,x7,x8,x9; } C9; -typedef struct { char x1,x2,x3,x4,x5,x6,x7,x8,x9,x10; } C10; -typedef struct { char x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11; } C11; -typedef struct { char x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11,x12; } C12; -typedef struct { char x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11,x12,x13; } C13; -typedef struct { char x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11,x12,x13,x14; } C14; -typedef struct { char x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11,x12,x13,x14,x15; } C15; -typedef struct { char x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11,x12,x13,x14,x15,x16; } C16; - -typedef struct { char x[1]; } CA1; -typedef struct { char x[2]; } CA2; -typedef struct { char x[3]; } CA3; -typedef struct { char x[4]; } CA4; -typedef struct { char x[5]; } CA5; -typedef struct { char x[6]; } CA6; -typedef struct { char x[7]; } CA7; -typedef struct { char x[8]; } CA8; -typedef struct { char x[9]; } CA9; -typedef struct { char x[10]; } CA10; -typedef struct { char x[11]; } CA11; -typedef struct { char x[12]; } CA12; -typedef struct { char x[13]; } CA13; -typedef struct { char x[14]; } CA14; -typedef struct { char x[15]; } CA15; -typedef struct { char x[16]; } CA16; - -typedef struct { short x1; } S1; -typedef struct { short x1,x2; } S2; -typedef struct { short x1,x2,x3; } S3; -typedef struct { short x1,x2,x3,x4; } S4; -typedef struct { short x1,x2,x3,x4,x5; } S5; -typedef struct { short x1,x2,x3,x4,x5,x6; } S6; -typedef struct { short x1,x2,x3,x4,x5,x6,x7; } S7; -typedef struct { short x1,x2,x3,x4,x5,x6,x7,x8; } S8; - -typedef struct { short x[1]; } SA1; -typedef struct { short x[2]; } SA2; -typedef struct { short x[3]; } SA3; -typedef struct { short x[4]; } SA4; -typedef struct { short x[5]; } SA5; -typedef struct { short x[6]; } SA6; -typedef struct { short x[7]; } SA7; -typedef struct { short x[8]; } SA8; - -typedef struct { int x1; } I1; -typedef struct { int x1,x2; } I2; -typedef struct { int x1,x2,x3; } I3; -typedef struct { int x1,x2,x3,x4; } I4; -typedef struct { int x1,x2,x3,x4,x5; } I5; -typedef struct { int x1,x2,x3,x4,x5,x6; } I6; -typedef struct { int x1,x2,x3,x4,x5,x6,x7; } I7; -typedef struct { int x1,x2,x3,x4,x5,x6,x7,x8; } I8; - -typedef struct { int x[1]; } IA1; -typedef struct { int x[2]; } IA2; -typedef struct { int x[3]; } IA3; -typedef struct { int x[4]; } IA4; -typedef struct { int x[5]; } IA5; -typedef struct { int x[6]; } IA6; -typedef struct { int x[7]; } IA7; -typedef struct { int x[8]; } IA8; - -typedef struct { long x1; } L1; -typedef struct { long x1,x2; } L2; -typedef struct { long x1,x2,x3; } L3; -typedef struct { long x1,x2,x3,x4; } L4; -typedef struct { long x1,x2,x3,x4,x5; } L5; -typedef struct { long x1,x2,x3,x4,x5,x6; } L6; -typedef struct { long x1,x2,x3,x4,x5,x6,x7; } L7; -typedef struct { long x1,x2,x3,x4,x5,x6,x7,x8; } L8; -typedef struct { long x1,x2,x3,x4,x5,x6,x7,x8,x9; } L9; - -typedef struct { long x[1]; } LA1; -typedef struct { long x[2]; } LA2; -typedef struct { long x[3]; } LA3; -typedef struct { long x[4]; } LA4; -typedef struct { long x[5]; } LA5; -typedef struct { long x[6]; } LA6; -typedef struct { long x[7]; } LA7; -typedef struct { long x[8]; } LA8; -typedef struct { long x[9]; } LA9; - -typedef struct { float x1; } F1; -typedef struct { float x1,x2; } F2; -typedef struct { float x1,x2,x3; } F3; -typedef struct { float x1,x2,x3,x4; } F4; - -typedef struct { float x[1]; } FA1; -typedef struct { float x[2]; } FA2; -typedef struct { float x[3]; } FA3; -typedef struct { float x[4]; } FA4; - -typedef struct { double x1; } D1; -typedef struct { double x1,x2; } D2; - -typedef struct { double x[1]; } DA1; -typedef struct { double x[2]; } DA2; - -typedef struct { char c; float f; } CF; - -typedef struct { float f; int i; } FI; -typedef struct { float f; int i,j; } FI2; -typedef struct { float f; int i,j,k; } FI3; - -typedef struct { double d; int i; } DI; -typedef struct { double d; int i,j; } DI2; -typedef struct { double d; int i,j,k; } DI3; - -typedef struct { float f; double d; } FD; -typedef struct { float f,g; double d; } F2D; - -typedef struct { double d; float f; } DF; -typedef struct { double d; float f,g; } DF2; - - -#if defined(__STDC__) || defined(__cplusplus) -#define TEST_STRUCT_ARG(_type_) \ - extern _type_ extern_##_type_; \ - void set_##_type_ (_type_ arg) { extern_##_type_ = arg; } -#define TEST_STRUCT_RETURN(_type_) \ - extern _type_ extern_##_type_; \ - _type_ get_##_type_ () { return extern_##_type_; } -#else -#define TEST_STRUCT_ARG(_type_) \ - extern _type_ extern_/**/_type_; \ - void set_/**/_type_ (arg) _type_ arg; { extern_/**/_type_ = arg; } -#define TEST_STRUCT_RETURN(_type_) \ - extern _type_ extern_/**/_type_; \ - _type_ get_/**/_type_ () { return extern_/**/_type_; } -#endif - - -TEST_STRUCT_ARG(C1) -TEST_STRUCT_ARG(C2) -TEST_STRUCT_ARG(C3) -TEST_STRUCT_ARG(C4) -TEST_STRUCT_ARG(C5) -TEST_STRUCT_ARG(C6) -TEST_STRUCT_ARG(C7) -TEST_STRUCT_ARG(C8) -TEST_STRUCT_ARG(C9) -TEST_STRUCT_ARG(C10) -TEST_STRUCT_ARG(C11) -TEST_STRUCT_ARG(C12) -TEST_STRUCT_ARG(C13) -TEST_STRUCT_ARG(C14) -TEST_STRUCT_ARG(C15) -TEST_STRUCT_ARG(C16) -TEST_STRUCT_ARG(CA1) -TEST_STRUCT_ARG(CA2) -TEST_STRUCT_ARG(CA3) -TEST_STRUCT_ARG(CA4) -TEST_STRUCT_ARG(CA5) -TEST_STRUCT_ARG(CA6) -TEST_STRUCT_ARG(CA7) -TEST_STRUCT_ARG(CA8) -TEST_STRUCT_ARG(CA9) -TEST_STRUCT_ARG(CA10) -TEST_STRUCT_ARG(CA11) -TEST_STRUCT_ARG(CA12) -TEST_STRUCT_ARG(CA13) -TEST_STRUCT_ARG(CA14) -TEST_STRUCT_ARG(CA15) -TEST_STRUCT_ARG(CA16) -TEST_STRUCT_ARG(S1) -TEST_STRUCT_ARG(S2) -TEST_STRUCT_ARG(S3) -TEST_STRUCT_ARG(S4) -TEST_STRUCT_ARG(S5) -TEST_STRUCT_ARG(S6) -TEST_STRUCT_ARG(S7) -TEST_STRUCT_ARG(S8) -TEST_STRUCT_ARG(SA1) -TEST_STRUCT_ARG(SA2) -TEST_STRUCT_ARG(SA3) -TEST_STRUCT_ARG(SA4) -TEST_STRUCT_ARG(SA5) -TEST_STRUCT_ARG(SA6) -TEST_STRUCT_ARG(SA7) -TEST_STRUCT_ARG(SA8) -TEST_STRUCT_ARG(I1) -TEST_STRUCT_ARG(I2) -TEST_STRUCT_ARG(I3) -TEST_STRUCT_ARG(I4) -TEST_STRUCT_ARG(I5) -TEST_STRUCT_ARG(I6) -TEST_STRUCT_ARG(I7) -TEST_STRUCT_ARG(I8) -TEST_STRUCT_ARG(IA1) -TEST_STRUCT_ARG(IA2) -TEST_STRUCT_ARG(IA3) -TEST_STRUCT_ARG(IA4) -TEST_STRUCT_ARG(IA5) -TEST_STRUCT_ARG(IA6) -TEST_STRUCT_ARG(IA7) -TEST_STRUCT_ARG(IA8) -TEST_STRUCT_ARG(L1) -TEST_STRUCT_ARG(L2) -TEST_STRUCT_ARG(L3) -TEST_STRUCT_ARG(L4) -TEST_STRUCT_ARG(L5) -TEST_STRUCT_ARG(L6) -TEST_STRUCT_ARG(L7) -TEST_STRUCT_ARG(L8) -TEST_STRUCT_ARG(L9) -TEST_STRUCT_ARG(LA1) -TEST_STRUCT_ARG(LA2) -TEST_STRUCT_ARG(LA3) -TEST_STRUCT_ARG(LA4) -TEST_STRUCT_ARG(LA5) -TEST_STRUCT_ARG(LA6) -TEST_STRUCT_ARG(LA7) -TEST_STRUCT_ARG(LA8) -TEST_STRUCT_ARG(LA9) -TEST_STRUCT_ARG(F1) -TEST_STRUCT_ARG(F2) -TEST_STRUCT_ARG(F3) -TEST_STRUCT_ARG(F4) -TEST_STRUCT_ARG(FA1) -TEST_STRUCT_ARG(FA2) -TEST_STRUCT_ARG(FA3) -TEST_STRUCT_ARG(FA4) -TEST_STRUCT_ARG(D1) -TEST_STRUCT_ARG(D2) -TEST_STRUCT_ARG(DA1) -TEST_STRUCT_ARG(DA2) -TEST_STRUCT_ARG(CF) -TEST_STRUCT_ARG(FI) -TEST_STRUCT_ARG(FI2) -TEST_STRUCT_ARG(FI3) -TEST_STRUCT_ARG(DI) -TEST_STRUCT_ARG(DI2) -TEST_STRUCT_ARG(DI3) -TEST_STRUCT_ARG(FD) -TEST_STRUCT_ARG(F2D) -TEST_STRUCT_ARG(DF) -TEST_STRUCT_ARG(DF2) - -TEST_STRUCT_RETURN(C1) -TEST_STRUCT_RETURN(C2) -TEST_STRUCT_RETURN(C3) -TEST_STRUCT_RETURN(C4) -TEST_STRUCT_RETURN(C5) -TEST_STRUCT_RETURN(C6) -TEST_STRUCT_RETURN(C7) -TEST_STRUCT_RETURN(C8) -TEST_STRUCT_RETURN(C9) -TEST_STRUCT_RETURN(C10) -TEST_STRUCT_RETURN(C11) -TEST_STRUCT_RETURN(C12) -TEST_STRUCT_RETURN(C13) -TEST_STRUCT_RETURN(C14) -TEST_STRUCT_RETURN(C15) -TEST_STRUCT_RETURN(C16) -TEST_STRUCT_RETURN(CA1) -TEST_STRUCT_RETURN(CA2) -TEST_STRUCT_RETURN(CA3) -TEST_STRUCT_RETURN(CA4) -TEST_STRUCT_RETURN(CA5) -TEST_STRUCT_RETURN(CA6) -TEST_STRUCT_RETURN(CA7) -TEST_STRUCT_RETURN(CA8) -TEST_STRUCT_RETURN(CA9) -TEST_STRUCT_RETURN(CA10) -TEST_STRUCT_RETURN(CA11) -TEST_STRUCT_RETURN(CA12) -TEST_STRUCT_RETURN(CA13) -TEST_STRUCT_RETURN(CA14) -TEST_STRUCT_RETURN(CA15) -TEST_STRUCT_RETURN(CA16) -TEST_STRUCT_RETURN(S1) -TEST_STRUCT_RETURN(S2) -TEST_STRUCT_RETURN(S3) -TEST_STRUCT_RETURN(S4) -TEST_STRUCT_RETURN(S5) -TEST_STRUCT_RETURN(S6) -TEST_STRUCT_RETURN(S7) -TEST_STRUCT_RETURN(S8) -TEST_STRUCT_RETURN(SA1) -TEST_STRUCT_RETURN(SA2) -TEST_STRUCT_RETURN(SA3) -TEST_STRUCT_RETURN(SA4) -TEST_STRUCT_RETURN(SA5) -TEST_STRUCT_RETURN(SA6) -TEST_STRUCT_RETURN(SA7) -TEST_STRUCT_RETURN(SA8) -TEST_STRUCT_RETURN(I1) -TEST_STRUCT_RETURN(I2) -TEST_STRUCT_RETURN(I3) -TEST_STRUCT_RETURN(I4) -TEST_STRUCT_RETURN(I5) -TEST_STRUCT_RETURN(I6) -TEST_STRUCT_RETURN(I7) -TEST_STRUCT_RETURN(I8) -TEST_STRUCT_RETURN(IA1) -TEST_STRUCT_RETURN(IA2) -TEST_STRUCT_RETURN(IA3) -TEST_STRUCT_RETURN(IA4) -TEST_STRUCT_RETURN(IA5) -TEST_STRUCT_RETURN(IA6) -TEST_STRUCT_RETURN(IA7) -TEST_STRUCT_RETURN(IA8) -TEST_STRUCT_RETURN(L1) -TEST_STRUCT_RETURN(L2) -TEST_STRUCT_RETURN(L3) -TEST_STRUCT_RETURN(L4) -TEST_STRUCT_RETURN(L5) -TEST_STRUCT_RETURN(L6) -TEST_STRUCT_RETURN(L7) -TEST_STRUCT_RETURN(L8) -TEST_STRUCT_RETURN(L9) -TEST_STRUCT_RETURN(LA1) -TEST_STRUCT_RETURN(LA2) -TEST_STRUCT_RETURN(LA3) -TEST_STRUCT_RETURN(LA4) -TEST_STRUCT_RETURN(LA5) -TEST_STRUCT_RETURN(LA6) -TEST_STRUCT_RETURN(LA7) -TEST_STRUCT_RETURN(LA8) -TEST_STRUCT_RETURN(LA9) -TEST_STRUCT_RETURN(F1) -TEST_STRUCT_RETURN(F2) -TEST_STRUCT_RETURN(F3) -TEST_STRUCT_RETURN(F4) -TEST_STRUCT_RETURN(FA1) -TEST_STRUCT_RETURN(FA2) -TEST_STRUCT_RETURN(FA3) -TEST_STRUCT_RETURN(FA4) -TEST_STRUCT_RETURN(D1) -TEST_STRUCT_RETURN(D2) -TEST_STRUCT_RETURN(DA1) -TEST_STRUCT_RETURN(DA2) -TEST_STRUCT_RETURN(CF) -TEST_STRUCT_RETURN(FI) -TEST_STRUCT_RETURN(FI2) -TEST_STRUCT_RETURN(FI3) -TEST_STRUCT_RETURN(DI) -TEST_STRUCT_RETURN(DI2) -TEST_STRUCT_RETURN(DI3) -TEST_STRUCT_RETURN(FD) -TEST_STRUCT_RETURN(F2D) -TEST_STRUCT_RETURN(DF) -TEST_STRUCT_RETURN(DF2) - DELETED ffcall/avcall/reg-struct-return Index: ffcall/avcall/reg-struct-return ================================================================== --- ffcall/avcall/reg-struct-return +++ /dev/null @@ -1,16 +0,0 @@ -Return values in registers, with "gcc -freg-struct-return": -"---" means return in memory. - - I_III C_CdC D_fDd J_JiJ T_TcT X_BcdB -i386 eax al --- eax,edx --- --- -m68k d0 d0 --- d0,d1 --- --- -mips $2 $2 --- --- --- --- -sparc %o0 %o0 --- --- --- --- -alpha $0 $0 $0 $0,$1 --- --- -hppa %r28 %r28 --- --- --- --- -arm r0 r0 --- r0,r1 --- --- -rs6000 3 3 --- 3,4 --- --- -m88k r2 --- --- --- --- --- -convex s0 s0 s0 s0.l --- --- -ia64 r8 r8 f8 r8,r9 r8 --- -x86_64 eax eax xmm0 rax,rdx rax DELETED ffcall/avcall/structcpy.c Index: ffcall/avcall/structcpy.c ================================================================== --- ffcall/avcall/structcpy.c +++ /dev/null @@ -1,33 +0,0 @@ -/* copy structs */ - -/* - * Copyright 1995-1999 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -void __structcpy (void* dest, void* src, unsigned long size, unsigned long alignment) -#else -void __structcpy(dest,src,size,alignment) - void* dest; - void* src; - unsigned long size; - unsigned long alignment; -#endif -{ - if (alignment % sizeof(long)) - { char* d = (char*)dest; - char* s = (char*)src; - do { *d++ = *s++; } while (--size > 0); - } - else - /* If the alignment is a multiple of sizeof(long), the size is as well. */ - { long* d = (long*)dest; - long* s = (long*)src; - do { *d++ = *s++; } while ((size -= sizeof(long)) > 0); - } -} DELETED ffcall/avcall/tests.c Index: ffcall/avcall/tests.c ================================================================== --- ffcall/avcall/tests.c +++ /dev/null @@ -1,878 +0,0 @@ -#ifndef _tests_c /*-*- C -*-*/ -#define _tests_c -/** - Copyright 1993 Bill Triggs, - - This is free software distributed under the GNU General Public - Licence described in the file COPYING. Contact the author if - you don't have this or can't live with it. There is ABSOLUTELY - NO WARRANTY, explicit or implied, on this software. -**/ -/*---------------------------------------------------------------------- - Some test routines for avcall foreign function interface. - The coverage is entirely random, this just contains some of the things - that I think are likely to break. - - We really need to add some more pointer (void* / char* / func*) tests - and some varargs ones, and also try to test structure alignment more - throughly. - ----------------------------------------------------------------------*/ -#include -#include -#include -#include "avcall.h" -FILE* out; - -/* NB since K&R C always passes chars and shorts as ints and floats as doubles, - * unprototyped ANSI-C functions must do the same, eg: - * - foo(x) float x; { ... } passes x as a double & converts it to a float internally. - * - foo(float x) { ... } passes x as a float. - */ -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -#define _ , -#define _P(ARGS,TYPES) (TYPES) -#else -#define _ ; -#define _P(ARGS,TYPES) ARGS TYPES; -#endif - -#if defined(__hppa__) && defined(__GNUC__) -#if (__GNUC__ == 2 && __GNUC_MINOR__ < 6) -/* gcc-2.5.2 bugs prevent the T test from working. */ -#define SKIP_T -#endif -#endif -#if defined(__m68k__) && defined(__GNUC__) -/* "gcc-2.6.3 -freg-struct-return" returns T = struct { char c[3]; } (which - * has size 4 !) in memory, in contrast to struct { char a,b,c; } and - * struct { char c[4]; } and struct { char a,b,c,d; } which have the same - * size and the same alignment but are returned in registers. I don't know why. - */ -#define SKIP_T -#endif - -#if defined(AMIGA) -/* We don't test passing arguments in registers yet. - * -1 means passing an argument in the stack instead of a register. - */ -#define AV_ARG_REGNUM -1 -#endif - -#define uchar unsigned char -#define ushort unsigned short -#define uint unsigned int -#define ulong unsigned long - -typedef struct { char x; } Char; -typedef struct { short x; } Short; -typedef struct { int x; } Int; -typedef struct { long x; } Long; -typedef struct { float x; } Float; -typedef struct { double x; } Double; -typedef struct { char c; float f; } A; -typedef struct { double d; int i[3]; } B; -typedef struct { long l1; long l2; } J; -typedef struct { char c[3]; } T; -typedef struct { char c[33],c1; } X; - -char c1='a', c2=127, c3=(char)128, c4=(char)255, c5=-1; -short s1=32767, s2=(short)32768, s3=3, s4=4, s5=5, s6=6, s7=7, s8=8, s9=9; -int i1=1, i2=2, i3=3, i4=4, i5=5, i6=6, i7=7, i8=8, i9=9, - i10=11, i11=12, i12=13, i13=14, i14=15, i15=16, i16=17; -long l1=1, l2=2, l3=3, l4=4, l5=5, l6=6, l7=7, l8=8, l9=9; -#ifdef HAVE_LONGLONG -long long ll1 = 3875056143130689530LL; -#endif -float f1=0.1, f2=0.2, f3=0.3, f4=0.4, f5=0.5, f6=0.6, f7=0.7, f8=0.8, f9=0.9, - f10=1.1, f11=1.2, f12=1.3, f13=1.4, f14=1.5, f15=1.6, f16=1.7; -double d1=0.1, d2=0.2, d3=0.3, d4=0.4, d5=0.5, d6=0.6, d7=0.7, d8=0.8, d9=0.9, - d10=1.1, d11=1.2, d12=1.3, d13=1.4, d14=1.5, d15=1.6, d16=1.7; - -uchar uc1='a', uc2=127, uc3=128, uc4=255, uc5=-1; -ushort us1=1, us2=2, us3=3, us4=4, us5=5, us6=6, us7=7, us8=8, us9=9; -uint ui1=1, ui2=2, ui3=3, ui4=4, ui5=5, ui6=6, ui7=7, ui8=8, ui9=9; -ulong ul1=1, ul2=2, ul3=3, ul4=4, ul5=5, ul6=6, ul7=7, ul8=8, ul9=9; - -char *str1="hello",str2[]="goodbye",*str3="still here?"; -Char C1={'A'}, C2={'B'}, C3={'C'}, C4={'\377'}, C5={-1}; -Short S1={1}, S2={2}, S3={3}, S4={4}, S5={5}, S6={6}, S7={7}, S8={8}, S9={9}; -Int I1={1}, I2={2}, I3={3}, I4={4}, I5={5}, I6={6}, I7={7}, I8={8}, I9={9}; -Float F1={0.1}, F2={0.2}, F3={0.3}, F4={0.4}, F5={0.5}, F6={0.6}, F7={0.7}, F8={0.8}, F9={0.9}; -Double D1={0.1}, D2={0.2}, D3={0.3}, D4={0.4}, D5={0.5}, D6={0.6}, D7={0.7}, D8={0.8}, D9={0.9}; - -A A1={'a',0.1},A2={'b',0.2},A3={'\377',0.3}; -B B1={0.1,{1,2,3}},B2={0.2,{5,4,3}}; -J J1={47,11},J2={73,55}; -T T1={'t','h','e'},T2={'f','o','x'}; -X X1={"abcdefghijklmnopqrstuvwxyzABCDEF",'G'}, X2={"123",'9'}, X3={"return-return-return",'R'}; - -void v_v() -{ - fprintf(out,"void f(void):\n"); - fflush(out); -} -int i_v() -{ - int r=99; - fprintf(out,"int f(void):"); - fflush(out); - return r; -} -int i_i _P((a), int a) -{ - int r=a+1; - fprintf(out,"int f(int):(%d)",a); - fflush(out); - return r; -} -int i_i2 _P((a,b), int a _ int b) -{ - int r=a+b; - fprintf(out,"int f(2*int):(%d,%d)",a,b); - fflush(out); - return r; -} -int i_i4 _P((a,b,c,d), int a _ int b _ int c _ int d) -{ - int r=a+b+c+d; - fprintf(out,"int f(4*int):(%d,%d,%d,%d)",a,b,c,d); - fflush(out); - return r; -} -int i_i8 _P((a,b,c,d,e,f,g,h), - int a _ int b _ int c _ int d _ int e _ int f _ int g _ int h) -{ - int r=a+b+c+d+e+f+g+h; - fprintf(out,"int f(8*int):(%d,%d,%d,%d,%d,%d,%d,%d)",a,b,c,d,e,f,g,h); - fflush(out); - return r; -} -int i_i16 _P((a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p), - int a _ int b _ int c _ int d _ int e _ int f _ int g _ int h - _ int i _ int j _ int k _ int l _ int m _ int n _ int o _ int p) -{ - int r=a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p; - fprintf(out,"int f(16*int):(%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d)", - a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p); - fflush(out); - return r; -} - -float f_f _P((a), float a) -{ - float r=a+1.0; - fprintf(out,"float f(float):(%g)",a); - fflush(out); - return r; -} -float f_f2 _P((a,b), float a _ float b) -{ - float r=a+b; - fprintf(out,"float f(2*float):(%g,%g)",a,b); - fflush(out); - return r; -} -float f_f4 _P((a,b,c,d), float a _ float b _ float c _ float d) -{ - float r=a+b+c+d; - fprintf(out,"float f(4*float):(%g,%g,%g,%g)",a,b,c,d); - fflush(out); - return r; -} -float f_f8 _P((a,b,c,d,e,f,g,h), float a _ float b _ float c _ float d _ float e _ float f - _ float g _ float h) -{ - float r=a+b+c+d+e+f+g+h; - fprintf(out,"float f(8*float):(%g,%g,%g,%g,%g,%g,%g,%g)",a,b,c,d,e,f,g,h); - fflush(out); - return r; -} -float f_f16 _P((a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p), - float a _ float b _ float c _ float d _ float e _ float f _ float g _ float h - _ float i _ float j _ float k _ float l _ float m _ float n _ float o _ float p) -{ - float r=a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p; - fprintf(out,"float f(16*float):(%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g)",a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p); - fflush(out); - return r; -} - -double d_d _P((a), double a) -{ - double r=a+1.0; - fprintf(out,"double f(double):(%g)",a); - fflush(out); - return r; -} -double d_d2 _P((a,b), double a _ double b) -{ - double r=a+b; - fprintf(out,"double f(2*double):(%g,%g)",a,b); - fflush(out); - return r; -} -double d_d4 _P((a,b,c,d), double a _ double b _ double c _ double d) -{ - double r=a+b+c+d; - fprintf(out,"double f(4*double):(%g,%g,%g,%g)",a,b,c,d); - fflush(out); - return r; -} -double d_d8 _P((a,b,c,d,e,f,g,h), - double a _ double b _ double c _ double d _ double e _ double f - _ double g _ double h) -{ - double r=a+b+c+d+e+f+g+h; - fprintf(out,"double f(8*double):(%g,%g,%g,%g,%g,%g,%g,%g)",a,b,c,d,e,f,g,h); - fflush(out); - return r; -} -double d_d16 _P((a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p), - double a _ double b _ double c _ double d _ double e _ double f - _ double g _ double h _ double i _ double j _ double k _ double l - _ double m _ double n _ double o _ double p) -{ - double r=a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p; - fprintf(out,"double f(16*double):(%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g)",a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p); - fflush(out); - return r; -} - -void* vp_vpdpcpsp _P((a,b,c,d), void* a _ double* b _ char* c _ Int* d) -{ - void* ret = (char*)b + 1; - fprintf(out,"void* f(void*,double*,char*,Int*):(0x%lx,0x%lx,0x%lx,0x%lx)",(long)a,(long)b,(long)c,(long)d); - fflush(out); - return ret; -} - -uchar uc_ucsil _P((a,b,c,d), uchar a _ ushort b _ uint c _ ulong d) -{ - uchar r = -1; - fprintf(out,"uchar f(uchar,ushort,uint,ulong):(%u,%u,%u,%lu)",a,b,c,d); - fflush(out); - return r; -} - -double d_iidd _P((a,b,c,d), int a _ int b _ double c _ double d) -{ - double r = a+b+c+d; - fprintf(out,"double f(int,int,double,double):(%d,%d,%g,%g)",a,b,c,d); - fflush(out); - return r; -} -double d_idid _P((a,b,c,d), int a _ double b _ int c _ double d) -{ - double r = a+b+c+d; - fprintf(out,"double f(int,double,int,double):(%d,%g,%d,%g)",a,b,c,d); - fflush(out); - return r; -} -ushort us_cdcd _P((a,b,c,d), char a _ double b _ char c _ double d) -{ - ushort r = (ushort)(a + b + c + d); - fprintf(out,"ushort f(char,double,char,double):('%c',%g,'%c',%g)",a,b,c,d); - fflush(out); - return r; -} - -#ifdef HAVE_LONGLONG -long long ll_flli _P((a,b,c), float a _ long long b _ int c) -{ - long long r = (long long)(int)a + b + (long long)c; - fprintf(out,"long long f(float,long long,int):(%g,0x%lx%08lx,0x%lx)",a,(long)(b>>32),(long)(b&0xffffffff),(long)c); - fflush(out); - return r; -} -#endif - -Int I_III _P((a,b,c), Int a _ Int b _ Int c) -{ - Int r; - r.x = a.x + b.x + c.x; - fprintf(out,"Int f(Int,Int,Int):({%d},{%d},{%d})",a.x,b.x,c.x); - fflush(out); - return r; -} -#ifndef SKIP_EXTRA_STRUCTS -Char C_CdC _P((a,b,c), Char a _ double b _ Char c) -{ - Char r; - r.x = (a.x + c.x)/2; - fprintf(out,"Char f(Char,double,Char):({'%c'},%g,{'%c'})",a.x,b,c.x); - fflush(out); - return r; -} -Float F_Ffd _P((a,b,c), Float a _ float b _ double c) -{ - Float r; - r.x = a.x + b + c; - fprintf(out,"Float f(Float,float,double):({%g},%g,%g)",a.x,b,c); - fflush(out); - return r; -} -Double D_fDd _P((a,b,c), float a _ Double b _ double c) -{ - Double r; - r.x = a + b.x + c; - fprintf(out,"Double f(float,Double,double):(%g,{%g},%g)",a,b.x,c); - fflush(out); - return r; -} -#endif -J J_JiJ _P((a,b,c), J a _ int b _ J c) -{ - J r; - r.l1 = a.l1+c.l1; r.l2 = a.l2+b+c.l2; - fprintf(out,"J f(J,int,J):({%ld,%ld},%d,{%ld,%ld})",a.l1,a.l2,b,c.l1,c.l2); - fflush(out); - return r; -} -#ifndef SKIP_EXTRA_STRUCTS -T T_TcT _P((a,b,c), T a _ char b _ T c) -{ - T r; - r.c[0]='b'; r.c[1]=c.c[1]; r.c[2]=c.c[2]; - fprintf(out,"T f(T,char,T):({\"%c%c%c\"},'%c',{\"%c%c%c\"})",a.c[0],a.c[1],a.c[2],b,c.c[0],c.c[1],c.c[2]); - fflush(out); - return r; -} -X X_BcdB _P((a,b,c,d), B a _ char b _ double c _ B d) -{ - static X xr={"return val",'R'}; - X r; - r = xr; - r.c1 = b; - fprintf(out,"X f(B,char,double,B):({%g,{%d,%d,%d}},'%c',%g,{%g,{%d,%d,%d}})", - a.d,a.i[0],a.i[1],a.i[2],b,c,d.d,d.i[0],d.i[1],d.i[2]); - fflush(out); - return r; -} -#endif - -/* - * The way we run these tests - first call the function directly, then - * through av_call() - there is the danger that arguments or results seem - * to be passed correctly, but what we are seeing are in fact the vestiges - * (traces) or the previous call. This may seriously fake the test. - * Avoid this by clearing the registers between the first and the second call. - */ -long clear_traces_i _P((a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p), - long a _ long b _ long c _ long d _ long e _ long f _ long g _ long h _ - long i _ long j _ long k _ long l _ long m _ long n _ long o _ long p) -{ return 0; } -float clear_traces_f _P((a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p), - float a _ float b _ float c _ float d _ float e _ float f _ float g _ - float h _ float i _ float j _ float k _ float l _ float m _ float n _ - float o _ float p) -{ return 0.0; } -double clear_traces_d _P((a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p), - double a _ double b _ double c _ double d _ double e _ double f _ double g _ - double h _ double i _ double j _ double k _ double l _ double m _ double n _ - double o _ double p) -{ return 0.0; } -J clear_traces_J () -{ J j; j.l1 = j.l2 = 0; return j; } -void clear_traces() -{ clear_traces_i(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); - clear_traces_f(0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0); - clear_traces_d(0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0); - clear_traces_J(); -} - -void - void_tests() -{ - av_alist a; - v_v(); - clear_traces(); - av_start_void(a,v_v); - av_call(a); - return; -} -void - int_tests() -{ - av_alist a; - int ir; - - ir = i_v(); - fprintf(out,"->%d\n",ir); - fflush(out); - ir = 0; clear_traces(); - av_start_int(a,i_v,&ir); - av_call(a); - fprintf(out,"->%d\n",ir); - fflush(out); - - ir = i_i(i1); - fprintf(out,"->%d\n",ir); - fflush(out); - ir = 0; clear_traces(); - av_start_int(a,i_i,&ir); - av_int(a,i1); - av_call(a); - fprintf(out,"->%d\n",ir); - fflush(out); - - ir = i_i2(i1,i2); - fprintf(out,"->%d\n",ir); - fflush(out); - ir = 0; clear_traces(); - av_start_int(a,i_i2,&ir); - av_int(a,i1); - av_int(a,i2); - av_call(a); - fprintf(out,"->%d\n",ir); - fflush(out); - - ir = i_i4(i1,i2,i3,i4); - fprintf(out,"->%d\n",ir); - fflush(out); - ir = 0; clear_traces(); - av_start_int(a,i_i4,&ir); - av_int(a,i1); - av_int(a,i2); - av_int(a,i3); - av_int(a,i4); - av_call(a); - fprintf(out,"->%d\n",ir); - fflush(out); - - ir = i_i8(i1,i2,i3,i4,i5,i6,i7,i8); - fprintf(out,"->%d\n",ir); - fflush(out); - ir = 0; clear_traces(); - av_start_int(a,i_i8,&ir); - av_int(a,i1); - av_int(a,i2); - av_int(a,i3); - av_int(a,i4); - av_int(a,i5); - av_int(a,i6); - av_int(a,i7); - av_int(a,i8); - av_call(a); - fprintf(out,"->%d\n",ir); - fflush(out); - - ir = i_i16(i1,i2,i3,i4,i5,i6,i7,i8,i9,i10,i11,i12,i13,i14,i15,i16); - fprintf(out,"->%d\n",ir); - fflush(out); - ir = 0; clear_traces(); - av_start_int(a,i_i16,&ir); - av_int(a,i1); - av_int(a,i2); - av_int(a,i3); - av_int(a,i4); - av_int(a,i5); - av_int(a,i6); - av_int(a,i7); - av_int(a,i8); - av_int(a,i9); - av_int(a,i10); - av_int(a,i11); - av_int(a,i12); - av_int(a,i13); - av_int(a,i14); - av_int(a,i15); - av_int(a,i16); - av_call(a); - fprintf(out,"->%d\n",ir); - fflush(out); - - return; -} -void - float_tests() -{ - av_alist a; - float fr; - - fr = f_f(f1); - fprintf(out,"->%g\n",fr); - fflush(out); - fr = 0.0; clear_traces(); - av_start_float(a,f_f,&fr); - av_float(a,f1); - av_call(a); - fprintf(out,"->%g\n",fr); - fflush(out); - - fr = f_f2(f1,f2); - fprintf(out,"->%g\n",fr); - fflush(out); - fr = 0.0; clear_traces(); - av_start_float(a,f_f2,&fr); - av_float(a,f1); - av_float(a,f2); - av_call(a); - fprintf(out,"->%g\n",fr); - fflush(out); - - fr = f_f4(f1,f2,f3,f4); - fprintf(out,"->%g\n",fr); - fflush(out); - fr = 0.0; clear_traces(); - av_start_float(a,f_f4,&fr); - av_float(a,f1); - av_float(a,f2); - av_float(a,f3); - av_float(a,f4); - av_call(a); - fprintf(out,"->%g\n",fr); - fflush(out); - - fr = f_f8(f1,f2,f3,f4,f5,f6,f7,f8); - fprintf(out,"->%g\n",fr); - fflush(out); - fr = 0.0; clear_traces(); - av_start_float(a,f_f8,&fr); - av_float(a,f1); - av_float(a,f2); - av_float(a,f3); - av_float(a,f4); - av_float(a,f5); - av_float(a,f6); - av_float(a,f7); - av_float(a,f8); - av_call(a); - fprintf(out,"->%g\n",fr); - fflush(out); - - fr = f_f16(f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12,f13,f14,f15,f16); - fprintf(out,"->%g\n",fr); - fflush(out); - fr = 0.0; clear_traces(); - av_start_float(a,f_f16,&fr); - av_float(a,f1); - av_float(a,f2); - av_float(a,f3); - av_float(a,f4); - av_float(a,f5); - av_float(a,f6); - av_float(a,f7); - av_float(a,f8); - av_float(a,f9); - av_float(a,f10); - av_float(a,f11); - av_float(a,f12); - av_float(a,f13); - av_float(a,f14); - av_float(a,f15); - av_float(a,f16); - av_call(a); - fprintf(out,"->%g\n",fr); - fflush(out); -} -void - double_tests() -{ - av_alist a; - double dr; - - dr = d_d(d1); - fprintf(out,"->%g\n",dr); - fflush(out); - dr = 0.0; clear_traces(); - av_start_double(a,d_d,&dr); - av_double(a,d1); - av_call(a); - fprintf(out,"->%g\n",dr); - fflush(out); - - dr = d_d2(d1,d2); - fprintf(out,"->%g\n",dr); - fflush(out); - dr = 0.0; clear_traces(); - av_start_double(a,d_d2,&dr); - av_double(a,d1); - av_double(a,d2); - av_call(a); - fprintf(out,"->%g\n",dr); - fflush(out); - - dr = d_d4(d1,d2,d3,d4); - fprintf(out,"->%g\n",dr); - fflush(out); - dr = 0.0; clear_traces(); - av_start_double(a,d_d4,&dr); - av_double(a,d1); - av_double(a,d2); - av_double(a,d3); - av_double(a,d4); - av_call(a); - fprintf(out,"->%g\n",dr); - fflush(out); - - dr = d_d8(d1,d2,d3,d4,d5,d6,d7,d8); - fprintf(out,"->%g\n",dr); - fflush(out); - dr = 0.0; clear_traces(); - av_start_double(a,d_d8,&dr); - av_double(a,d1); - av_double(a,d2); - av_double(a,d3); - av_double(a,d4); - av_double(a,d5); - av_double(a,d6); - av_double(a,d7); - av_double(a,d8); - av_call(a); - fprintf(out,"->%g\n",dr); - fflush(out); - - dr = d_d16(d1,d2,d3,d4,d5,d6,d7,d8,d9,d10,d11,d12,d13,d14,d15,d16); - fprintf(out,"->%g\n",dr); - fflush(out); - dr = 0.0; clear_traces(); - av_start_double(a,d_d16,&dr); - av_double(a,d1); - av_double(a,d2); - av_double(a,d3); - av_double(a,d4); - av_double(a,d5); - av_double(a,d6); - av_double(a,d7); - av_double(a,d8); - av_double(a,d9); - av_double(a,d10); - av_double(a,d11); - av_double(a,d12); - av_double(a,d13); - av_double(a,d14); - av_double(a,d15); - av_double(a,d16); - av_call(a); - fprintf(out,"->%g\n",dr); - fflush(out); - - return; -} -void - mixed_number_tests() -{ - av_alist a; - uchar ucr; - ushort usr; - double dr; -#ifdef HAVE_LONGLONG - long long llr; -#endif - - /* Unsigned types. - */ - ucr = uc_ucsil(uc1,us2,ui3,ul4); - fprintf(out,"->%u\n",ucr); - fflush(out); - ucr = 0; clear_traces(); - av_start_uchar(a,uc_ucsil,&ucr); - av_uchar(a,uc1); - av_ushort(a,us2); - av_uint(a,ui3); - av_ulong(a,ul4); - av_call(a); - fprintf(out,"->%u\n",ucr); - fflush(out); - - /* Mixed int & float types. - */ - dr = d_iidd(i1,i2,d3,d4); - fprintf(out,"->%g\n",dr); - fflush(out); - dr = 0.0; clear_traces(); - av_start_double(a,d_iidd,&dr); - av_int(a,i1); - av_int(a,i2); - av_double(a,d3); - av_double(a,d4); - av_call(a); - fprintf(out,"->%g\n",dr); - fflush(out); - - dr = d_idid(i1,d2,i3,d4); - fprintf(out,"->%g\n",dr); - fflush(out); - dr = 0.0; clear_traces(); - av_start_double(a,d_idid,&dr); - av_int(a,i1); - av_double(a,d2); - av_int(a,i3); - av_double(a,d4); - av_call(a); - fprintf(out,"->%g\n",dr); - fflush(out); - - usr = us_cdcd(c1,d2,c3,d4); - fprintf(out,"->%u\n",usr); - fflush(out); - usr = 0; clear_traces(); - av_start_ushort(a,us_cdcd,&usr); - av_char(a,c1); - av_double(a,d2); - av_char(a,c3); - av_double(a,d4); - av_call(a); - fprintf(out,"->%u\n",usr); - fflush(out); - -#ifdef HAVE_LONGLONG - /* Long long types. - */ - llr = ll_flli(f13,ll1,i13); - fprintf(out,"->0x%lx%08lx\n",(long)(llr>>32),(long)(llr&0xffffffff)); - fflush(out); - llr = 0; clear_traces(); - av_start_longlong(a,ll_flli,&llr); - av_float(a,f13); - av_longlong(a,ll1); - av_int(a,i13); - av_call(a); - fprintf(out,"->0x%lx%08lx\n",(long)(llr>>32),(long)(llr&0xffffffff)); - fflush(out); -#endif - - return; -} -void - pointer_tests() -{ - av_alist a; - void* vpr; - - vpr = vp_vpdpcpsp(&uc1,&d2,str3,&I4); - fprintf(out,"->0x%lx\n",(long)vpr); - fflush(out); - vpr = 0; clear_traces(); - av_start_ptr(a,vp_vpdpcpsp,void*,&vpr); - av_ptr(a,void*,&uc1); - av_ptr(a,double*,&d2); - av_ptr(a,char*,str3); - av_ptr(a,Int*,&I4); - av_call(a); - fprintf(out,"->0x%lx\n",(long)vpr); - fflush(out); - - return; -} -void - structure_tests() -{ - av_alist a; - Int Ir; - Char Cr; - Float Fr; - Double Dr; - J Jr; - T Tr; - X Xr; - - Ir = I_III(I1,I2,I3); - fprintf(out,"->{%d}\n",Ir.x); - fflush(out); - Ir.x = 0; clear_traces(); - av_start_struct(a,I_III,Int,1,&Ir); - av_struct(a,Int,I1); - av_struct(a,Int,I2); - av_struct(a,Int,I3); - av_call(a); - fprintf(out,"->{%d}\n",Ir.x); - fflush(out); - -#ifndef SKIP_EXTRA_STRUCTS - Cr = C_CdC(C1,d2,C3); - fprintf(out,"->{'%c'}\n",Cr.x); - fflush(out); - Cr.x = '\0'; clear_traces(); - av_start_struct(a,C_CdC,Char,1,&Cr); - av_struct(a,Char,C1); - av_double(a,d2); - av_struct(a,Char,C3); - av_call(a); - fprintf(out,"->{'%c'}\n",Cr.x); - fflush(out); - - Fr = F_Ffd(F1,f2,d3); - fprintf(out,"->{%g}\n",Fr.x); - fflush(out); - Fr.x = 0.0; clear_traces(); - av_start_struct(a,F_Ffd,Float,av_word_splittable_1(float),&Fr); - av_struct(a,Float,F1); - av_float(a,f2); - av_double(a,d3); - av_call(a); - fprintf(out,"->{%g}\n",Fr.x); - fflush(out); - - Dr = D_fDd(f1,D2,d3); - fprintf(out,"->{%g}\n",Dr.x); - fflush(out); - Dr.x = 0.0; clear_traces(); - av_start_struct(a,D_fDd,Double,av_word_splittable_1(double),&Dr); - av_float(a,f1); - av_struct(a,Double,D2); - av_double(a,d3); - av_call(a); - fprintf(out,"->{%g}\n",Dr.x); - fflush(out); -#endif - - Jr = J_JiJ(J1,i2,J2); - fprintf(out,"->{%ld,%ld}\n",Jr.l1,Jr.l2); - fflush(out); - Jr.l1 = Jr.l2 = 0; clear_traces(); - av_start_struct(a,J_JiJ,J,av_word_splittable_2(long,long),&Jr); - av_struct(a,J,J1); - av_int(a,i2); - av_struct(a,J,J2); - av_call(a); - fprintf(out,"->{%ld,%ld}\n",Jr.l1,Jr.l2); - fflush(out); - -#ifndef SKIP_EXTRA_STRUCTS -#ifndef SKIP_T - Tr = T_TcT(T1,' ',T2); - fprintf(out,"->{\"%c%c%c\"}\n",Tr.c[0],Tr.c[1],Tr.c[2]); - fflush(out); - Tr.c[0] = Tr.c[1] = Tr.c[2] = 0; clear_traces(); - av_start_struct(a,T_TcT,T,1,&Tr); - av_struct(a,T,T1); - av_char(a,' '); - av_struct(a,T,T2); - av_call(a); - fprintf(out,"->{\"%c%c%c\"}\n",Tr.c[0],Tr.c[1],Tr.c[2]); - fflush(out); -#endif - - Xr = X_BcdB(B1,c2,d3,B2); - fprintf(out,"->{\"%s\",'%c'}\n",Xr.c,Xr.c1); - fflush(out); - Xr.c[0]=Xr.c1='\0'; clear_traces(); - av_start_struct(a,X_BcdB,X,0,&Xr); - av_struct(a,B,B1); - av_char(a,c2); - av_double(a,d3); - av_struct(a,B,B2); - av_call(a); - fprintf(out,"->{\"%s\",'%c'}\n",Xr.c,Xr.c1); - fflush(out); -#endif - - return; -} -int - main() -{ - out = stdout; - void_tests(); - int_tests(); - float_tests(); - double_tests(); - mixed_number_tests(); - pointer_tests(); - structure_tests(); - - exit(0); -} - -#endif /*_tests_c */ DELETED ffcall/avcall/tests.output/alpha-dec-osf3.0-cc Index: ffcall/avcall/tests.output/alpha-dec-osf3.0-cc ================================================================== --- ffcall/avcall/tests.output/alpha-dec-osf3.0-cc +++ /dev/null DELETED ffcall/avcall/tests.output/alpha-dec-osf3.0-gcc Index: ffcall/avcall/tests.output/alpha-dec-osf3.0-gcc ================================================================== --- ffcall/avcall/tests.output/alpha-dec-osf3.0-gcc +++ /dev/null DELETED ffcall/avcall/tests.output/alpha-dec-osf4.0-cc-O Index: ffcall/avcall/tests.output/alpha-dec-osf4.0-cc-O ================================================================== --- ffcall/avcall/tests.output/alpha-dec-osf4.0-cc-O +++ /dev/null DELETED ffcall/avcall/tests.output/alpha-dec-osf4.0-gcc Index: ffcall/avcall/tests.output/alpha-dec-osf4.0-gcc ================================================================== --- ffcall/avcall/tests.output/alpha-dec-osf4.0-gcc +++ /dev/null DELETED ffcall/avcall/tests.output/alpha-dec-osf4.0a-gcc Index: ffcall/avcall/tests.output/alpha-dec-osf4.0a-gcc ================================================================== --- ffcall/avcall/tests.output/alpha-dec-osf4.0a-gcc +++ /dev/null DELETED ffcall/avcall/tests.output/hppa1.0-hp-hpux8.00-c89 Index: ffcall/avcall/tests.output/hppa1.0-hp-hpux8.00-c89 ================================================================== --- ffcall/avcall/tests.output/hppa1.0-hp-hpux8.00-c89 +++ /dev/null DELETED ffcall/avcall/tests.output/hppa1.0-hp-hpux8.00-cc Index: ffcall/avcall/tests.output/hppa1.0-hp-hpux8.00-cc ================================================================== --- ffcall/avcall/tests.output/hppa1.0-hp-hpux8.00-cc +++ /dev/null DELETED ffcall/avcall/tests.output/hppa1.0-hp-hpux8.00-cc-Aa Index: ffcall/avcall/tests.output/hppa1.0-hp-hpux8.00-cc-Aa ================================================================== --- ffcall/avcall/tests.output/hppa1.0-hp-hpux8.00-cc-Aa +++ /dev/null DELETED ffcall/avcall/tests.output/hppa1.0-hp-hpux8.00-gcc252 Index: ffcall/avcall/tests.output/hppa1.0-hp-hpux8.00-gcc252 ================================================================== --- ffcall/avcall/tests.output/hppa1.0-hp-hpux8.00-gcc252 +++ /dev/null @@ -1,2 +0,0 @@ -X f(B,char,double,B):({0.1,{1,2,3}},'',0.3,{0.2,{5,4,3}})->{"return val",''} -X f(B,char,double,B):({0.1,{1,2,3}},'',0.1,{0.2,{5,4,3}})->{"return val",''} DELETED ffcall/avcall/tests.output/hppa1.0-hp-hpux8.00-gcc263 Index: ffcall/avcall/tests.output/hppa1.0-hp-hpux8.00-gcc263 ================================================================== --- ffcall/avcall/tests.output/hppa1.0-hp-hpux8.00-gcc263 +++ /dev/null @@ -1,4 +0,0 @@ -Char f(Char,double,Char):({'A'},0.2,{'C'})->{'B'} -Char f(Char,double,Char):({'A'},0.2,{'ÿ'})->{' '} -X f(B,char,double,B):({0.1,{1,2,3}},'',0.3,{0.2,{5,4,3}})->{"return val",''} -X f(B,char,double,B):({0.1,{1,2,3}},'',0,{0.2,{5,4,3}})->{"return val",''} DELETED ffcall/avcall/tests.output/hppa1.1-hp-hpux10.01-cc-O Index: ffcall/avcall/tests.output/hppa1.1-hp-hpux10.01-cc-O ================================================================== --- ffcall/avcall/tests.output/hppa1.1-hp-hpux10.01-cc-O +++ /dev/null DELETED ffcall/avcall/tests.output/hppa1.1-hp-hpux9.05-cc-O Index: ffcall/avcall/tests.output/hppa1.1-hp-hpux9.05-cc-O ================================================================== --- ffcall/avcall/tests.output/hppa1.1-hp-hpux9.05-cc-O +++ /dev/null DELETED ffcall/avcall/tests.output/hppa2.0-hp-hpux10.20-cc-O+DA1.1 Index: ffcall/avcall/tests.output/hppa2.0-hp-hpux10.20-cc-O+DA1.1 ================================================================== --- ffcall/avcall/tests.output/hppa2.0-hp-hpux10.20-cc-O+DA1.1 +++ /dev/null DELETED ffcall/avcall/tests.output/hppa2.0-hp-hpux10.20-gcc Index: ffcall/avcall/tests.output/hppa2.0-hp-hpux10.20-gcc ================================================================== --- ffcall/avcall/tests.output/hppa2.0-hp-hpux10.20-gcc +++ /dev/null @@ -1,2 +0,0 @@ -Char f(Char,double,Char):({'A'},0.2,{'C'})->{'B'} -Char f(Char,double,Char):({'A'},0.2,{' DELETED ffcall/avcall/tests.output/i386-pc-cygwin32-gcc Index: ffcall/avcall/tests.output/i386-pc-cygwin32-gcc ================================================================== --- ffcall/avcall/tests.output/i386-pc-cygwin32-gcc +++ /dev/null DELETED ffcall/avcall/tests.output/i386-pc-solaris2.6-gcc Index: ffcall/avcall/tests.output/i386-pc-solaris2.6-gcc ================================================================== --- ffcall/avcall/tests.output/i386-pc-solaris2.6-gcc +++ /dev/null DELETED ffcall/avcall/tests.output/i386-pc-win32-gcc Index: ffcall/avcall/tests.output/i386-pc-win32-gcc ================================================================== --- ffcall/avcall/tests.output/i386-pc-win32-gcc +++ /dev/null cannot compute difference between binary files DELETED ffcall/avcall/tests.output/i386-pc-win32-msvc4 Index: ffcall/avcall/tests.output/i386-pc-win32-msvc4 ================================================================== --- ffcall/avcall/tests.output/i386-pc-win32-msvc4 +++ /dev/null DELETED ffcall/avcall/tests.output/i386-pc-win32-msvc5 Index: ffcall/avcall/tests.output/i386-pc-win32-msvc5 ================================================================== --- ffcall/avcall/tests.output/i386-pc-win32-msvc5 +++ /dev/null DELETED ffcall/avcall/tests.output/i386-unknown-sysv4.0-gcc Index: ffcall/avcall/tests.output/i386-unknown-sysv4.0-gcc ================================================================== --- ffcall/avcall/tests.output/i386-unknown-sysv4.0-gcc +++ /dev/null DELETED ffcall/avcall/tests.output/i386-unknown-sysv4.0-usr_bin_cc Index: ffcall/avcall/tests.output/i386-unknown-sysv4.0-usr_bin_cc ================================================================== --- ffcall/avcall/tests.output/i386-unknown-sysv4.0-usr_bin_cc +++ /dev/null DELETED ffcall/avcall/tests.output/i386-unknown-sysv4.0-usr_ucb_cc Index: ffcall/avcall/tests.output/i386-unknown-sysv4.0-usr_ucb_cc ================================================================== --- ffcall/avcall/tests.output/i386-unknown-sysv4.0-usr_ucb_cc +++ /dev/null DELETED ffcall/avcall/tests.output/i486-unknown-linux-gcc Index: ffcall/avcall/tests.output/i486-unknown-linux-gcc ================================================================== --- ffcall/avcall/tests.output/i486-unknown-linux-gcc +++ /dev/null DELETED ffcall/avcall/tests.output/i486-unknown-linux-gcc-traditional Index: ffcall/avcall/tests.output/i486-unknown-linux-gcc-traditional ================================================================== --- ffcall/avcall/tests.output/i486-unknown-linux-gcc-traditional +++ /dev/null DELETED ffcall/avcall/tests.output/i486-unknown-sco3.2v4.2-cc-Of Index: ffcall/avcall/tests.output/i486-unknown-sco3.2v4.2-cc-Of ================================================================== --- ffcall/avcall/tests.output/i486-unknown-sco3.2v4.2-cc-Of +++ /dev/null DELETED ffcall/avcall/tests.output/i486-unknown-sco3.2v4.2-cc-Of-Om Index: ffcall/avcall/tests.output/i486-unknown-sco3.2v4.2-cc-Of-Om ================================================================== --- ffcall/avcall/tests.output/i486-unknown-sco3.2v4.2-cc-Of-Om +++ /dev/null DELETED ffcall/avcall/tests.output/i486-unknown-sco3.2v4.2-gcc Index: ffcall/avcall/tests.output/i486-unknown-sco3.2v4.2-gcc ================================================================== --- ffcall/avcall/tests.output/i486-unknown-sco3.2v4.2-gcc +++ /dev/null DELETED ffcall/avcall/tests.output/i586-pc-beos-gcc Index: ffcall/avcall/tests.output/i586-pc-beos-gcc ================================================================== --- ffcall/avcall/tests.output/i586-pc-beos-gcc +++ /dev/null DELETED ffcall/avcall/tests.output/ia64-unknown-linux-gcc Index: ffcall/avcall/tests.output/ia64-unknown-linux-gcc ================================================================== --- ffcall/avcall/tests.output/ia64-unknown-linux-gcc +++ /dev/null @@ -1,6 +0,0 @@ -Float f(Float,float,double):({0.1},0.2,0.3)->{0.6} -Float f(Float,float,double):({0.2},0.3,2)->{0} -Double f(float,Double,double):(0.1,{0.2},0.3)->{0.6} -Double f(float,Double,double):(0.1,{0.3},2)->{0} -X f(B,char,double,B):({0.1,{1,2,3}},'',0.3,{0.2,{5,4,3}})->{"return val",''} -X f(B,char,double,B):({3.2835e-317,{-1717986918,1069128089,1}},'',0.3,{0.7,{-1717986918,1070176665,5}})->{"return val",''} DELETED ffcall/avcall/tests.output/m68k-sun-sunos4.0-cc-O Index: ffcall/avcall/tests.output/m68k-sun-sunos4.0-cc-O ================================================================== --- ffcall/avcall/tests.output/m68k-sun-sunos4.0-cc-O +++ /dev/null DELETED ffcall/avcall/tests.output/m68k-unknown-linuxlibc6-gcc Index: ffcall/avcall/tests.output/m68k-unknown-linuxlibc6-gcc ================================================================== --- ffcall/avcall/tests.output/m68k-unknown-linuxlibc6-gcc +++ /dev/null DELETED ffcall/avcall/tests.output/mips-dec-ultrix4.4-gcc Index: ffcall/avcall/tests.output/mips-dec-ultrix4.4-gcc ================================================================== --- ffcall/avcall/tests.output/mips-dec-ultrix4.4-gcc +++ /dev/null @@ -1,14 +0,0 @@ -float f(float):(0.1)->1.1 -float f(float):(1.4013e-45)->1 -float f(2*float):(0.1,0.2)->0.3 -float f(2*float):(1.4013e-45,4.2039e-45)->5.60519e-45 -float f(4*float):(0.1,0.2,0.3,0.4)->1 -float f(4*float):(1.4013e-45,4.2039e-45,0.3,0.4)->0.7 -float f(8*float):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8)->3.6 -float f(8*float):(1.4013e-45,4.2039e-45,0.3,0.4,0.5,0.6,0.7,0.8)->3.3 -float f(16*float):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8)->7.2 -float f(16*float):(1.4013e-45,4.2039e-45,0.3,0.4,0.5,0.6,0.7,0.8,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8)->6.9 -Char f(Char,double,Char):({'A'},0.2,{'C'})->{'B'} -Char f(Char,double,Char):({' -T f(T,char,T):({"the"},' ',{"fox"})->{"box"} -T f(T,char,T):({"he DELETED ffcall/avcall/tests.output/mips-sgi-irix4.0.5H-cc-D__STDC__ Index: ffcall/avcall/tests.output/mips-sgi-irix4.0.5H-cc-D__STDC__ ================================================================== --- ffcall/avcall/tests.output/mips-sgi-irix4.0.5H-cc-D__STDC__ +++ /dev/null DELETED ffcall/avcall/tests.output/mips-sgi-irix4.0.5H-cc-ansi Index: ffcall/avcall/tests.output/mips-sgi-irix4.0.5H-cc-ansi ================================================================== --- ffcall/avcall/tests.output/mips-sgi-irix4.0.5H-cc-ansi +++ /dev/null DELETED ffcall/avcall/tests.output/mips-sgi-irix4.0.5H-cc-cckr Index: ffcall/avcall/tests.output/mips-sgi-irix4.0.5H-cc-cckr ================================================================== --- ffcall/avcall/tests.output/mips-sgi-irix4.0.5H-cc-cckr +++ /dev/null DELETED ffcall/avcall/tests.output/mips-sgi-irix4.0.5H-gcc-fpcc-struct-return Index: ffcall/avcall/tests.output/mips-sgi-irix4.0.5H-gcc-fpcc-struct-return ================================================================== --- ffcall/avcall/tests.output/mips-sgi-irix4.0.5H-gcc-fpcc-struct-return +++ /dev/null DELETED ffcall/avcall/tests.output/mips-sgi-irix4.0.5H-gcc-freg-struct-return Index: ffcall/avcall/tests.output/mips-sgi-irix4.0.5H-gcc-freg-struct-return ================================================================== --- ffcall/avcall/tests.output/mips-sgi-irix4.0.5H-gcc-freg-struct-return +++ /dev/null DELETED ffcall/avcall/tests.output/mips-sgi-irix5.2-cc Index: ffcall/avcall/tests.output/mips-sgi-irix5.2-cc ================================================================== --- ffcall/avcall/tests.output/mips-sgi-irix5.2-cc +++ /dev/null DELETED ffcall/avcall/tests.output/mips-sgi-irix5.2-cc-D__STDC__ Index: ffcall/avcall/tests.output/mips-sgi-irix5.2-cc-D__STDC__ ================================================================== --- ffcall/avcall/tests.output/mips-sgi-irix5.2-cc-D__STDC__ +++ /dev/null DELETED ffcall/avcall/tests.output/mips-sgi-irix5.2-cc-ansi Index: ffcall/avcall/tests.output/mips-sgi-irix5.2-cc-ansi ================================================================== --- ffcall/avcall/tests.output/mips-sgi-irix5.2-cc-ansi +++ /dev/null DELETED ffcall/avcall/tests.output/mips-sgi-irix5.2-cc-cckr Index: ffcall/avcall/tests.output/mips-sgi-irix5.2-cc-cckr ================================================================== --- ffcall/avcall/tests.output/mips-sgi-irix5.2-cc-cckr +++ /dev/null DELETED ffcall/avcall/tests.output/mips-sgi-irix5.2-gcc Index: ffcall/avcall/tests.output/mips-sgi-irix5.2-gcc ================================================================== --- ffcall/avcall/tests.output/mips-sgi-irix5.2-gcc +++ /dev/null DELETED ffcall/avcall/tests.output/mips-sgi-irix5.2-gcc-fpcc-struct-return Index: ffcall/avcall/tests.output/mips-sgi-irix5.2-gcc-fpcc-struct-return ================================================================== --- ffcall/avcall/tests.output/mips-sgi-irix5.2-gcc-fpcc-struct-return +++ /dev/null DELETED ffcall/avcall/tests.output/mips-sgi-irix5.2-gcc-freg-struct-return Index: ffcall/avcall/tests.output/mips-sgi-irix5.2-gcc-freg-struct-return ================================================================== --- ffcall/avcall/tests.output/mips-sgi-irix5.2-gcc-freg-struct-return +++ /dev/null DELETED ffcall/avcall/tests.output/mips-sgi-irix5.3-cc Index: ffcall/avcall/tests.output/mips-sgi-irix5.3-cc ================================================================== --- ffcall/avcall/tests.output/mips-sgi-irix5.3-cc +++ /dev/null DELETED ffcall/avcall/tests.output/mips-sgi-irix5.3-cc-D__STDC__ Index: ffcall/avcall/tests.output/mips-sgi-irix5.3-cc-D__STDC__ ================================================================== --- ffcall/avcall/tests.output/mips-sgi-irix5.3-cc-D__STDC__ +++ /dev/null DELETED ffcall/avcall/tests.output/mips-sgi-irix5.3-cc-O Index: ffcall/avcall/tests.output/mips-sgi-irix5.3-cc-O ================================================================== --- ffcall/avcall/tests.output/mips-sgi-irix5.3-cc-O +++ /dev/null DELETED ffcall/avcall/tests.output/mips-sgi-irix5.3-cc-ansi Index: ffcall/avcall/tests.output/mips-sgi-irix5.3-cc-ansi ================================================================== --- ffcall/avcall/tests.output/mips-sgi-irix5.3-cc-ansi +++ /dev/null DELETED ffcall/avcall/tests.output/mips-sgi-irix5.3-cc-cckr Index: ffcall/avcall/tests.output/mips-sgi-irix5.3-cc-cckr ================================================================== --- ffcall/avcall/tests.output/mips-sgi-irix5.3-cc-cckr +++ /dev/null DELETED ffcall/avcall/tests.output/mips-sgi-irix5.3-gcc Index: ffcall/avcall/tests.output/mips-sgi-irix5.3-gcc ================================================================== --- ffcall/avcall/tests.output/mips-sgi-irix5.3-gcc +++ /dev/null DELETED ffcall/avcall/tests.output/mips-sgi-irix6.2-cc-32 Index: ffcall/avcall/tests.output/mips-sgi-irix6.2-cc-32 ================================================================== --- ffcall/avcall/tests.output/mips-sgi-irix6.2-cc-32 +++ /dev/null DELETED ffcall/avcall/tests.output/mips-sgi-irix6.2-cc-64 Index: ffcall/avcall/tests.output/mips-sgi-irix6.2-cc-64 ================================================================== --- ffcall/avcall/tests.output/mips-sgi-irix6.2-cc-64 +++ /dev/null @@ -1,4 +0,0 @@ -Float f(Float,float,double):({0.1},0.2,0.3)->{0.6} -Float f(Float,float,double):({0.1},0.2,0.3)->{0} -Double f(float,Double,double):(0.1,{0.2},0.3)->{0.6} -Double f(float,Double,double):(0.1,{0.2},0.3)->{0} DELETED ffcall/avcall/tests.output/mips-sgi-irix6.2-cc-64.README Index: ffcall/avcall/tests.output/mips-sgi-irix6.2-cc-64.README ================================================================== --- ffcall/avcall/tests.output/mips-sgi-irix6.2-cc-64.README +++ /dev/null @@ -1,4 +0,0 @@ -On mips-sgi-irix6.2 with "cc -64", avcall does not handle correctly -structure return values which consist of 1 or 2 floats or doubles. -(The return values are found in $f0 and $f2, but avcall expects them -in $2 and $3.) DELETED ffcall/avcall/tests.output/mips-sgi-irix6.2-cc-o32-O Index: ffcall/avcall/tests.output/mips-sgi-irix6.2-cc-o32-O ================================================================== --- ffcall/avcall/tests.output/mips-sgi-irix6.2-cc-o32-O +++ /dev/null DELETED ffcall/avcall/tests.output/mips-sgi-irix6.4-cc-64 Index: ffcall/avcall/tests.output/mips-sgi-irix6.4-cc-64 ================================================================== --- ffcall/avcall/tests.output/mips-sgi-irix6.4-cc-64 +++ /dev/null @@ -1,4 +0,0 @@ -Float f(Float,float,double):({0.1},0.2,0.3)->{0.6} -Float f(Float,float,double):({0.1},0.2,0.3)->{0} -Double f(float,Double,double):(0.1,{0.2},0.3)->{0.6} -Double f(float,Double,double):(0.1,{0.2},0.3)->{0} DELETED ffcall/avcall/tests.output/mips-sgi-irix6.4-cc-64.README Index: ffcall/avcall/tests.output/mips-sgi-irix6.4-cc-64.README ================================================================== --- ffcall/avcall/tests.output/mips-sgi-irix6.4-cc-64.README +++ /dev/null @@ -1,4 +0,0 @@ -On mips-sgi-irix6.4 with "cc -64", avcall does not handle correctly -structure return values which consist of 1 or 2 floats or doubles. -(The return values are found in $f0 and $f2, but avcall expects them -in $2 and $3.) DELETED ffcall/avcall/tests.output/mips-sgi-irix6.4-cc-n32-O Index: ffcall/avcall/tests.output/mips-sgi-irix6.4-cc-n32-O ================================================================== --- ffcall/avcall/tests.output/mips-sgi-irix6.4-cc-n32-O +++ /dev/null @@ -1,4 +0,0 @@ -Float f(Float,float,double):({0.1},0.2,0.3)->{0.6} -Float f(Float,float,double):({0.1},0.2,0.3)->{0} -Double f(float,Double,double):(0.1,{0.2},0.3)->{0.6} -Double f(float,Double,double):(0.1,{0.2},0.3)->{0} DELETED ffcall/avcall/tests.output/mips-sgi-irix6.4-cc-n32-O.README Index: ffcall/avcall/tests.output/mips-sgi-irix6.4-cc-n32-O.README ================================================================== --- ffcall/avcall/tests.output/mips-sgi-irix6.4-cc-n32-O.README +++ /dev/null @@ -1,4 +0,0 @@ -On mips-sgi-irix6.4 with "cc -n32", avcall does not handle correctly -structure return values which consist of 1 or 2 floats or doubles. -(The return values are found in $f0 and $f2, but avcall expects them -in $2 and $3.) DELETED ffcall/avcall/tests.output/mips-sgi-irix6.4-cc-o32-O Index: ffcall/avcall/tests.output/mips-sgi-irix6.4-cc-o32-O ================================================================== --- ffcall/avcall/tests.output/mips-sgi-irix6.4-cc-o32-O +++ /dev/null DELETED ffcall/avcall/tests.output/mips-sgi-irix6.5-cc-32 Index: ffcall/avcall/tests.output/mips-sgi-irix6.5-cc-32 ================================================================== --- ffcall/avcall/tests.output/mips-sgi-irix6.5-cc-32 +++ /dev/null DELETED ffcall/avcall/tests.output/mips-sgi-irix6.5-gcc Index: ffcall/avcall/tests.output/mips-sgi-irix6.5-gcc ================================================================== --- ffcall/avcall/tests.output/mips-sgi-irix6.5-gcc +++ /dev/null @@ -1,6 +0,0 @@ -Float f(Float,float,double):({0.1},0.2,0.3)->{0.6} -Float f(Float,float,double):({0.1},0.2,0.3)->{0} -Double f(float,Double,double):(0.1,{0.2},0.3)->{0.6} -Double f(float,Double,double):(0.1,{0.2},0.3)->{0} -T f(T,char,T):({"the"},' ',{"fox"})->{"box"} -T f(T,char,T):({"ÿ- "},'e',{" DELETED ffcall/avcall/tests.output/powerpc-ibm-aix4.1.4.0-cc Index: ffcall/avcall/tests.output/powerpc-ibm-aix4.1.4.0-cc ================================================================== --- ffcall/avcall/tests.output/powerpc-ibm-aix4.1.4.0-cc +++ /dev/null DELETED ffcall/avcall/tests.output/powerpc-ibm-aix4.1.4.0-gcc Index: ffcall/avcall/tests.output/powerpc-ibm-aix4.1.4.0-gcc ================================================================== --- ffcall/avcall/tests.output/powerpc-ibm-aix4.1.4.0-gcc +++ /dev/null DELETED ffcall/avcall/tests.output/powerpc-ibm-aix4.1.4.0-xlc Index: ffcall/avcall/tests.output/powerpc-ibm-aix4.1.4.0-xlc ================================================================== --- ffcall/avcall/tests.output/powerpc-ibm-aix4.1.4.0-xlc +++ /dev/null DELETED ffcall/avcall/tests.output/powerpc-ibm-aix4.1.4.0-xlc-O Index: ffcall/avcall/tests.output/powerpc-ibm-aix4.1.4.0-xlc-O ================================================================== --- ffcall/avcall/tests.output/powerpc-ibm-aix4.1.4.0-xlc-O +++ /dev/null DELETED ffcall/avcall/tests.output/powerpc-ibm-aix4.1.5.0-cc Index: ffcall/avcall/tests.output/powerpc-ibm-aix4.1.5.0-cc ================================================================== --- ffcall/avcall/tests.output/powerpc-ibm-aix4.1.5.0-cc +++ /dev/null DELETED ffcall/avcall/tests.output/powerpc-ibm-aix4.1.5.0-cc-O Index: ffcall/avcall/tests.output/powerpc-ibm-aix4.1.5.0-cc-O ================================================================== --- ffcall/avcall/tests.output/powerpc-ibm-aix4.1.5.0-cc-O +++ /dev/null DELETED ffcall/avcall/tests.output/powerpc-ibm-aix4.1.5.0-xlc Index: ffcall/avcall/tests.output/powerpc-ibm-aix4.1.5.0-xlc ================================================================== --- ffcall/avcall/tests.output/powerpc-ibm-aix4.1.5.0-xlc +++ /dev/null DELETED ffcall/avcall/tests.output/powerpc-ibm-aix4.1.5.0-xlc-O Index: ffcall/avcall/tests.output/powerpc-ibm-aix4.1.5.0-xlc-O ================================================================== --- ffcall/avcall/tests.output/powerpc-ibm-aix4.1.5.0-xlc-O +++ /dev/null DELETED ffcall/avcall/tests.output/powerpc-ibm-aix4.3.2.0-cc Index: ffcall/avcall/tests.output/powerpc-ibm-aix4.3.2.0-cc ================================================================== --- ffcall/avcall/tests.output/powerpc-ibm-aix4.3.2.0-cc +++ /dev/null DELETED ffcall/avcall/tests.output/powerpc-ibm-aix4.3.2.0-cc-O Index: ffcall/avcall/tests.output/powerpc-ibm-aix4.3.2.0-cc-O ================================================================== --- ffcall/avcall/tests.output/powerpc-ibm-aix4.3.2.0-cc-O +++ /dev/null DELETED ffcall/avcall/tests.output/powerpc-ibm-aix4.3.2.0-xlc Index: ffcall/avcall/tests.output/powerpc-ibm-aix4.3.2.0-xlc ================================================================== --- ffcall/avcall/tests.output/powerpc-ibm-aix4.3.2.0-xlc +++ /dev/null DELETED ffcall/avcall/tests.output/powerpc-ibm-aix4.3.2.0-xlc-O Index: ffcall/avcall/tests.output/powerpc-ibm-aix4.3.2.0-xlc-O ================================================================== --- ffcall/avcall/tests.output/powerpc-ibm-aix4.3.2.0-xlc-O +++ /dev/null DELETED ffcall/avcall/tests.output/powerpc-unknown-linuxlibc6-gcc Index: ffcall/avcall/tests.output/powerpc-unknown-linuxlibc6-gcc ================================================================== --- ffcall/avcall/tests.output/powerpc-unknown-linuxlibc6-gcc +++ /dev/null DELETED ffcall/avcall/tests.output/rs6000-ibm-aix3.2.5-c89 Index: ffcall/avcall/tests.output/rs6000-ibm-aix3.2.5-c89 ================================================================== --- ffcall/avcall/tests.output/rs6000-ibm-aix3.2.5-c89 +++ /dev/null DELETED ffcall/avcall/tests.output/rs6000-ibm-aix3.2.5-cc Index: ffcall/avcall/tests.output/rs6000-ibm-aix3.2.5-cc ================================================================== --- ffcall/avcall/tests.output/rs6000-ibm-aix3.2.5-cc +++ /dev/null DELETED ffcall/avcall/tests.output/rs6000-ibm-aix3.2.5-gcc Index: ffcall/avcall/tests.output/rs6000-ibm-aix3.2.5-gcc ================================================================== --- ffcall/avcall/tests.output/rs6000-ibm-aix3.2.5-gcc +++ /dev/null @@ -1,38 +0,0 @@ -float f(float):(0.1)->1.1 -float f(float):(5.28219e-315)->1 -float f(2*float):(0.1,0.2)->0.3 -float f(2*float):(5.28219e-315,-1.49167e-154)->-0 -float f(4*float):(0.1,0.2,0.3,0.4)->1 -float f(4*float):(5.28219e-315,-1.49167e-154,-1.49167e-154,2)->2 -float f(8*float):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8)->3.6 -float f(8*float):(5.28219e-315,-1.49167e-154,-1.49167e-154,2,-1.49167e-154,5.29566e-315,2,2.68156e+154)->INF -float f(16*float):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.1,1.2,1.3,1.4,1.5,1.6,1.7)->14.3 -float f(16*float):(5.28219e-315,-1.49167e-154,-1.49167e-154,2,-1.49167e-154,5.29566e-315,2,2.68156e+154,-1.49167e-154,-2,-1.49167e-154,2,-2,1.5,1.6,1.7)->INF -double f(double):(0.1)->1.1 -double f(double):(-1.49167e-154)->1 -double f(2*double):(0.1,0.2)->0.3 -double f(2*double):(-1.49167e-154,-2.35344e-185)->-1.49167e-154 -double f(4*double):(0.1,0.2,0.3,0.4)->1 -double f(4*double):(-1.49167e-154,-2.35344e-185,-2.35344e-185,4.66726e-62)->4.66726e-62 -double f(8*double):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8)->3.6 -double f(8*double):(-1.49167e-154,-2.35344e-185,-2.35344e-185,4.66726e-62,-2.35344e-185,5.29566e-315,4.66726e-62,1.9036e+185)->1.9036e+185 -double f(16*double):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.1,1.2,1.3,1.4,1.5,1.6,1.7)->14.3 -double f(16*double):(-1.49167e-154,-2.35344e-185,-2.35344e-185,4.66726e-62,-2.35344e-185,5.29566e-315,4.66726e-62,1.9036e+185,-2.35344e-185,-9.25597e+61,-2.35344e-185,4.66726e-62,-9.25597e+61,1.5,1.6,1.7)->1.9036e+185 -double f(int,int,double,double):(1,2,0.3,0.4)->3.7 -double f(int,int,double,double):(1,2,-1.49167e-154,4.66726e-62)->3 -double f(int,double,int,double):(1,0.2,3,0.4)->4.6 -double f(int,double,int,double):(1,-1.49167e-154,3,-2.35344e-185)->4 -ushort f(char,double,char,double):('a',0.2,'€',0.4)->225 -ushort f(char,double,char,double):('a',-1.49167e-154,'€',-2.35344e-185)->225 -long long f(float,long long,int):(1.4,0x35c6f707fffffffa,0xe)->0x35c6f70800000009 -long long f(float,long long,int):(-1.49167e-154,0x35c6f707fffffffa,0xe)->0x35c6f70800000008 -Char f(Char,double,Char):({'A'},0.2,{'C'})->{'B'} -Char f(Char,double,Char):({'A'},5.28738e-315,{'C'})->{'B'} -Float f(Float,float,double):({0.1},0.2,0.3)->{0.6} -Float f(Float,float,double):({5.28738e-315},-1.49167e-154,0)->{-0} -Double f(float,Double,double):(0.1,{0.2},0.3)->{0.6} -Double f(float,Double,double):(5.28219e-315,{-1.49167e-154},0)->{-1.49167e-154} -T f(T,char,T):({"the"},' ',{"fox"})->{"box"} -T f(T,char,T):({" ûv"},' ',{"333"})->{"b33"} -X f(B,char,double,B):({0.1,{1,2,3}},'',0.3,{0.2,{5,4,3}})->{"return val",''} -X f(B,char,double,B):({1.81635e-306,{-1717986918,1,2}},' DELETED ffcall/avcall/tests.output/rs6000-ibm-aix3.2.5-xlc Index: ffcall/avcall/tests.output/rs6000-ibm-aix3.2.5-xlc ================================================================== --- ffcall/avcall/tests.output/rs6000-ibm-aix3.2.5-xlc +++ /dev/null DELETED ffcall/avcall/tests.output/rs6000-ibm-aix4.2.0.0-cc Index: ffcall/avcall/tests.output/rs6000-ibm-aix4.2.0.0-cc ================================================================== --- ffcall/avcall/tests.output/rs6000-ibm-aix4.2.0.0-cc +++ /dev/null DELETED ffcall/avcall/tests.output/rs6000-ibm-aix4.2.0.0-cc-O Index: ffcall/avcall/tests.output/rs6000-ibm-aix4.2.0.0-cc-O ================================================================== --- ffcall/avcall/tests.output/rs6000-ibm-aix4.2.0.0-cc-O +++ /dev/null DELETED ffcall/avcall/tests.output/rs6000-ibm-aix4.2.0.0-gcc Index: ffcall/avcall/tests.output/rs6000-ibm-aix4.2.0.0-gcc ================================================================== --- ffcall/avcall/tests.output/rs6000-ibm-aix4.2.0.0-gcc +++ /dev/null @@ -1,8 +0,0 @@ -Float f(Float,float,double):({0.1},0.2,0.3)->{0.6} -Float f(Float,float,double):({0.2},0.3,0)->{0.5} -Double f(float,Double,double):(0.1,{0.2},0.3)->{0.6} -Double f(float,Double,double):(0.1,{0.3},0)->{0.4} -T f(T,char,T):({"the"},' ',{"fox"})->{"box"} -T f(T,char,T):({"/ò"},' ',{" "})->{"b"} -X f(B,char,double,B):({0.1,{1,2,3}},'',0.3,{0.2,{5,4,3}})->{"return val",''} -X f(B,char,double,B):({1.81635e-306,{-1717986918,1,2}},' DELETED ffcall/avcall/tests.output/rs6000-ibm-aix4.2.0.0-gcc-fpcc-struct-return Index: ffcall/avcall/tests.output/rs6000-ibm-aix4.2.0.0-gcc-fpcc-struct-return ================================================================== --- ffcall/avcall/tests.output/rs6000-ibm-aix4.2.0.0-gcc-fpcc-struct-return +++ /dev/null @@ -1,8 +0,0 @@ -Float f(Float,float,double):({0.1},0.2,0.3)->{0.6} -Float f(Float,float,double):({0.2},0.3,0)->{0.5} -Double f(float,Double,double):(0.1,{0.2},0.3)->{0.6} -Double f(float,Double,double):(0.1,{0.3},0)->{0.4} -T f(T,char,T):({"the"},' ',{"fox"})->{"box"} -T f(T,char,T):({"/ò"},' ',{" "})->{"b"} -X f(B,char,double,B):({0.1,{1,2,3}},'',0.3,{0.2,{5,4,3}})->{"return val",''} -X f(B,char,double,B):({1.81635e-306,{-1717986918,1,2}},' DELETED ffcall/avcall/tests.output/rs6000-ibm-aix4.2.0.0-gcc-freg-struct-return Index: ffcall/avcall/tests.output/rs6000-ibm-aix4.2.0.0-gcc-freg-struct-return ================================================================== --- ffcall/avcall/tests.output/rs6000-ibm-aix4.2.0.0-gcc-freg-struct-return +++ /dev/null @@ -1,7 +0,0 @@ -Float f(Float,float,double):({0.1},0.2,0.3)->{0.6} -Float f(Float,float,double):({0.2},0.3,0)->{0.5} -Double f(float,Double,double):(0.1,{0.2},0.3)->{0.6} -Double f(float,Double,double):(0.1,{0.3},0)->{0} -T f(T,char,T):({"the"},' ',{"fox"})->{"box"} -T f(T,char,T):({"X f(B,char,double,B):({0.1,{1,2,3}},'',0.3,{0.2,{5,4,3}})->{"return val",''} -X f(B,char,double,B):({1.81635e-306,{-1717986918,1,2}},' DELETED ffcall/avcall/tests.output/rs6000-ibm-aix4.2.0.0-xlc Index: ffcall/avcall/tests.output/rs6000-ibm-aix4.2.0.0-xlc ================================================================== --- ffcall/avcall/tests.output/rs6000-ibm-aix4.2.0.0-xlc +++ /dev/null DELETED ffcall/avcall/tests.output/rs6000-ibm-aix4.2.0.0-xlc-O Index: ffcall/avcall/tests.output/rs6000-ibm-aix4.2.0.0-xlc-O ================================================================== --- ffcall/avcall/tests.output/rs6000-ibm-aix4.2.0.0-xlc-O +++ /dev/null DELETED ffcall/avcall/tests.output/sparc-sun-solaris2.4-cc Index: ffcall/avcall/tests.output/sparc-sun-solaris2.4-cc ================================================================== --- ffcall/avcall/tests.output/sparc-sun-solaris2.4-cc +++ /dev/null DELETED ffcall/avcall/tests.output/sparc-sun-solaris2.4-cc-O Index: ffcall/avcall/tests.output/sparc-sun-solaris2.4-cc-O ================================================================== --- ffcall/avcall/tests.output/sparc-sun-solaris2.4-cc-O +++ /dev/null DELETED ffcall/avcall/tests.output/sparc-sun-solaris2.4-gcc Index: ffcall/avcall/tests.output/sparc-sun-solaris2.4-gcc ================================================================== --- ffcall/avcall/tests.output/sparc-sun-solaris2.4-gcc +++ /dev/null DELETED ffcall/avcall/tests.output/sparc-sun-solaris2.4-gcc-fpcc-struct-return Index: ffcall/avcall/tests.output/sparc-sun-solaris2.4-gcc-fpcc-struct-return ================================================================== --- ffcall/avcall/tests.output/sparc-sun-solaris2.4-gcc-fpcc-struct-return +++ /dev/null DELETED ffcall/avcall/tests.output/sparc-sun-solaris2.4-gcc-freg-struct-return Index: ffcall/avcall/tests.output/sparc-sun-solaris2.4-gcc-freg-struct-return ================================================================== --- ffcall/avcall/tests.output/sparc-sun-solaris2.4-gcc-freg-struct-return +++ /dev/null @@ -1,4 +0,0 @@ -Float f(Float,float,double):({0.1},0.2,0.3)->{0.6} -Float f(Float,float,double):({0.1},0.2,0.3)->{-1.5842e+29} -Double f(float,Double,double):(0.1,{0.2},0.3)->{0.6} -Double f(float,Double,double):(0.1,{0.2},0.3)->{0} DELETED ffcall/avcall/tests.output/sparc-sun-solaris2.4-gcc-freg-struct-return.README Index: ffcall/avcall/tests.output/sparc-sun-solaris2.4-gcc-freg-struct-return.README ================================================================== --- ffcall/avcall/tests.output/sparc-sun-solaris2.4-gcc-freg-struct-return.README +++ /dev/null @@ -1,3 +0,0 @@ -avcall does not handle correctly structure return values which consist -of 1 float or double. (The return value is found in %f0, but avcall expects -it in integer registers.) DELETED ffcall/avcall/tests.output/sparc-sun-sunos4.1.1-cc Index: ffcall/avcall/tests.output/sparc-sun-sunos4.1.1-cc ================================================================== --- ffcall/avcall/tests.output/sparc-sun-sunos4.1.1-cc +++ /dev/null DELETED ffcall/avcall/tests.output/sparc-sun-sunos4.1.1-gcc Index: ffcall/avcall/tests.output/sparc-sun-sunos4.1.1-gcc ================================================================== --- ffcall/avcall/tests.output/sparc-sun-sunos4.1.1-gcc +++ /dev/null DELETED ffcall/avcall/tests.output/sparc-sun-sunos4.1.3_U1-cc-O Index: ffcall/avcall/tests.output/sparc-sun-sunos4.1.3_U1-cc-O ================================================================== --- ffcall/avcall/tests.output/sparc-sun-sunos4.1.3_U1-cc-O +++ /dev/null DELETED ffcall/avcall/tests.output/sparc-sun-sunos4.1.3_U1-gcc Index: ffcall/avcall/tests.output/sparc-sun-sunos4.1.3_U1-gcc ================================================================== --- ffcall/avcall/tests.output/sparc-sun-sunos4.1.3_U1-gcc +++ /dev/null DELETED ffcall/avcall/tests.output/sparc-unknown-linuxlibc6-gcc Index: ffcall/avcall/tests.output/sparc-unknown-linuxlibc6-gcc ================================================================== --- ffcall/avcall/tests.output/sparc-unknown-linuxlibc6-gcc +++ /dev/null DELETED ffcall/avcall/uniq-u.c Index: ffcall/avcall/uniq-u.c ================================================================== --- ffcall/avcall/uniq-u.c +++ /dev/null @@ -1,278 +0,0 @@ -/* uniq -- remove duplicate lines from a sorted file - Copyright (C) 86, 91, 1995-1998, 1999 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -/* Written by Richard Stallman and David MacKenzie. */ -/* 2000-03-22 Trimmed down to the case of "uniq -u" by Bruno Haible. */ - -#include -#include -#include -#include - -/* The name this program was run with. */ -static char *program_name; - -static void -xalloc_fail (void) -{ - fprintf (stderr, "%s: virtual memory exhausted\n", program_name); - exit (1); -} - -/* Allocate N bytes of memory dynamically, with error checking. */ - -void * -xmalloc (size_t n) -{ - void *p; - - p = malloc (n); - if (p == 0) - xalloc_fail (); - return p; -} - -/* Change the size of an allocated block of memory P to N bytes, - with error checking. - If P is NULL, run xmalloc. */ - -void * -xrealloc (void *p, size_t n) -{ - p = realloc (p, n); - if (p == 0) - xalloc_fail (); - return p; -} - -/* A `struct linebuffer' holds a line of text. */ - -struct linebuffer -{ - size_t size; /* Allocated. */ - size_t length; /* Used. */ - char *buffer; -}; - -/* Initialize linebuffer LINEBUFFER for use. */ - -static void -initbuffer (struct linebuffer *linebuffer) -{ - linebuffer->length = 0; - linebuffer->size = 200; - linebuffer->buffer = (char *) xmalloc (linebuffer->size); -} - -/* Read an arbitrarily long line of text from STREAM into LINEBUFFER. - Keep the newline; append a newline if it's the last line of a file - that ends in a non-newline character. Do not null terminate. - Return LINEBUFFER, except at end of file return 0. */ - -static struct linebuffer * -readline (struct linebuffer *linebuffer, FILE *stream) -{ - int c; - char *buffer = linebuffer->buffer; - char *p = linebuffer->buffer; - char *end = buffer + linebuffer->size - 1; /* Sentinel. */ - - if (feof (stream) || ferror (stream)) - return 0; - - do - { - c = getc (stream); - if (c == EOF) - { - if (p == buffer) - return 0; - if (p[-1] == '\n') - break; - c = '\n'; - } - if (p == end) - { - linebuffer->size *= 2; - buffer = (char *) xrealloc (buffer, linebuffer->size); - p = p - linebuffer->buffer + buffer; - linebuffer->buffer = buffer; - end = buffer + linebuffer->size - 1; - } - *p++ = c; - } - while (c != '\n'); - - linebuffer->length = p - buffer; - return linebuffer; -} - -/* Free linebuffer LINEBUFFER's data. */ - -static void -freebuffer (struct linebuffer *linebuffer) -{ - free (linebuffer->buffer); -} - -/* Undefine, to avoid warning about redefinition on some systems. */ -#undef min -#define min(x, y) ((x) < (y) ? (x) : (y)) - -/* Return zero if two strings OLD and NEW match, nonzero if not. - OLD and NEW point not to the beginnings of the lines - but rather to the beginnings of the fields to compare. - OLDLEN and NEWLEN are their lengths. */ - -static int -different (const char *old, const char *new, size_t oldlen, size_t newlen) -{ - int order; - - order = memcmp (old, new, min (oldlen, newlen)); - - if (order == 0) - return oldlen - newlen; - return order; -} - -/* Output the line in linebuffer LINE to stream STREAM - provided that the switches say it should be output. - If requested, print the number of times it occurred, as well; - LINECOUNT + 1 is the number of times that the line occurred. */ - -static void -writeline (const struct linebuffer *line, FILE *stream, int linecount) -{ - if (linecount == 0) - fwrite (line->buffer, 1, line->length, stream); -} - -/* Process input file INFILE with output to OUTFILE. - If either is "-", use the standard I/O stream for it instead. */ - -static void -check_file (const char *infile, const char *outfile) -{ - FILE *istream; - FILE *ostream; - struct linebuffer lb1, lb2; - struct linebuffer *thisline, *prevline, *exch; - char *prevfield, *thisfield; - size_t prevlen, thislen; - int match_count = 0; - - if (!strcmp (infile, "-")) - istream = stdin; - else - istream = fopen (infile, "r"); - if (istream == NULL) - { - fprintf (stderr, "%s: error opening %s\n", program_name, infile); - exit (1); - } - - if (!strcmp (outfile, "-")) - ostream = stdout; - else - ostream = fopen (outfile, "w"); - if (ostream == NULL) - { - fprintf (stderr, "%s: error opening %s\n", program_name, outfile); - exit (1); - } - - thisline = &lb1; - prevline = &lb2; - - initbuffer (thisline); - initbuffer (prevline); - - if (readline (prevline, istream) == 0) - goto closefiles; - prevfield = prevline->buffer; - prevlen = prevline->length; - - while (!feof (istream)) - { - int match; - if (readline (thisline, istream) == 0) - break; - thisfield = thisline->buffer; - thislen = thisline->length; - match = !different (thisfield, prevfield, thislen, prevlen); - - if (match) - ++match_count; - - if (!match) - { - writeline (prevline, ostream, match_count); - exch = prevline; - prevline = thisline; - thisline = exch; - prevfield = thisfield; - prevlen = thislen; - if (!match) - match_count = 0; - } - } - - writeline (prevline, ostream, match_count); - - closefiles: - if (ferror (istream) || fclose (istream) == EOF) - { - fprintf (stderr, "%s: error reading %s\n", program_name, infile); - exit (1); - } - - if (ferror (ostream) || fclose (ostream) == EOF) - { - fprintf (stderr, "%s: error writing %s\n", program_name, outfile); - exit (1); - } - - freebuffer (&lb1); - freebuffer (&lb2); -} - -int -main (int argc, char **argv) -{ - const char *infile = "-"; - const char *outfile = "-"; - int optind = 1; - - program_name = argv[0]; - - if (optind < argc) - infile = argv[optind++]; - - if (optind < argc) - outfile = argv[optind++]; - - if (optind < argc) - { - fprintf (stderr, "%s: too many arguments\n", program_name); - exit (1); - } - - check_file (infile, outfile); - - exit (0); -} DELETED ffcall/callback/COPYING Index: ffcall/callback/COPYING ================================================================== --- ffcall/callback/COPYING +++ /dev/null @@ -1,340 +0,0 @@ - GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1989, 1991 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307, - USA. - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -License is intended to guarantee your freedom to share and change free -software--to make sure the software is free for all its users. This -General Public License applies to most of the Free Software -Foundation's software and to any other program whose authors commit to -using it. (Some other Free Software Foundation software is covered by -the GNU Library General Public License instead.) You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if you -distribute copies of the software, or if you modify it. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must give the recipients all the rights that -you have. You must make sure that they, too, receive or can get the -source code. And you must show them these terms so they know their -rights. - - We protect your rights with two steps: (1) copyright the software, and -(2) offer you this license which gives you legal permission to copy, -distribute and/or modify the software. - - Also, for each author's protection and ours, we want to make certain -that everyone understands that there is no warranty for this free -software. If the software is modified by someone else and passed on, we -want its recipients to know that what they have is not the original, so -that any problems introduced by others will not reflect on the original -authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that redistributors of a free -program will individually obtain patent licenses, in effect making the -program proprietary. To prevent this, we have made it clear that any -patent must be licensed for everyone's free use or not licensed at all. - - The precise terms and conditions for copying, distribution and -modification follow. - - GNU GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License applies to any program or other work which contains -a notice placed by the copyright holder saying it may be distributed -under the terms of this General Public License. The "Program", below, -refers to any such program or work, and a "work based on the Program" -means either the Program or any derivative work under copyright law: -that is to say, a work containing the Program or a portion of it, -either verbatim or with modifications and/or translated into another -language. (Hereinafter, translation is included without limitation in -the term "modification".) Each licensee is addressed as "you". - -Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running the Program is not restricted, and the output from the Program -is covered only if its contents constitute a work based on the -Program (independent of having been made by running the Program). -Whether that is true depends on what the Program does. - - 1. You may copy and distribute verbatim copies of the Program's -source code as you receive it, in any medium, provided that you -conspicuously and appropriately publish on each copy an appropriate -copyright notice and disclaimer of warranty; keep intact all the -notices that refer to this License and to the absence of any warranty; -and give any other recipients of the Program a copy of this License -along with the Program. - -You may charge a fee for the physical act of transferring a copy, and -you may at your option offer warranty protection in exchange for a fee. - - 2. You may modify your copy or copies of the Program or any portion -of it, thus forming a work based on the Program, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) You must cause the modified files to carry prominent notices - stating that you changed the files and the date of any change. - - b) You must cause any work that you distribute or publish, that in - whole or in part contains or is derived from the Program or any - part thereof, to be licensed as a whole at no charge to all third - parties under the terms of this License. - - c) If the modified program normally reads commands interactively - when run, you must cause it, when started running for such - interactive use in the most ordinary way, to print or display an - announcement including an appropriate copyright notice and a - notice that there is no warranty (or else, saying that you provide - a warranty) and that users may redistribute the program under - these conditions, and telling the user how to view a copy of this - License. (Exception: if the Program itself is interactive but - does not normally print such an announcement, your work based on - the Program is not required to print an announcement.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Program, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Program, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Program. - -In addition, mere aggregation of another work not based on the Program -with the Program (or with a work based on the Program) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may copy and distribute the Program (or a work based on it, -under Section 2) in object code or executable form under the terms of -Sections 1 and 2 above provided that you also do one of the following: - - a) Accompany it with the complete corresponding machine-readable - source code, which must be distributed under the terms of Sections - 1 and 2 above on a medium customarily used for software interchange; or, - - b) Accompany it with a written offer, valid for at least three - years, to give any third party, for a charge no more than your - cost of physically performing source distribution, a complete - machine-readable copy of the corresponding source code, to be - distributed under the terms of Sections 1 and 2 above on a medium - customarily used for software interchange; or, - - c) Accompany it with the information you received as to the offer - to distribute corresponding source code. (This alternative is - allowed only for noncommercial distribution and only if you - received the program in object code or executable form with such - an offer, in accord with Subsection b above.) - -The source code for a work means the preferred form of the work for -making modifications to it. For an executable work, complete source -code means all the source code for all modules it contains, plus any -associated interface definition files, plus the scripts used to -control compilation and installation of the executable. However, as a -special exception, the source code distributed need not include -anything that is normally distributed (in either source or binary -form) with the major components (compiler, kernel, and so on) of the -operating system on which the executable runs, unless that component -itself accompanies the executable. - -If distribution of executable or object code is made by offering -access to copy from a designated place, then offering equivalent -access to copy the source code from the same place counts as -distribution of the source code, even though third parties are not -compelled to copy the source along with the object code. - - 4. You may not copy, modify, sublicense, or distribute the Program -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense or distribute the Program is -void, and will automatically terminate your rights under this License. -However, parties who have received copies, or rights, from you under -this License will not have their licenses terminated so long as such -parties remain in full compliance. - - 5. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Program or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Program (or any work based on the -Program), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Program or works based on it. - - 6. Each time you redistribute the Program (or any work based on the -Program), the recipient automatically receives a license from the -original licensor to copy, distribute or modify the Program subject to -these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 7. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Program at all. For example, if a patent -license would not permit royalty-free redistribution of the Program by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system, which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 8. If the distribution and/or use of the Program is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Program under this License -may add an explicit geographical distribution limitation excluding -those countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 9. The Free Software Foundation may publish revised and/or new versions -of the General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - -Each version is given a distinguishing version number. If the Program -specifies a version number of this License which applies to it and "any -later version", you have the option of following the terms and conditions -either of that version or of any later version published by the Free -Software Foundation. If the Program does not specify a version number of -this License, you may choose any version ever published by the Free Software -Foundation. - - 10. If you wish to incorporate parts of the Program into other free -programs whose distribution conditions are different, write to the author -to ask for permission. For software which is copyrighted by the Free -Software Foundation, write to the Free Software Foundation; we sometimes -make exceptions for this. Our decision will be guided by the two goals -of preserving the free status of all derivatives of our free software and -of promoting the sharing and reuse of software generally. - - NO WARRANTY - - 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -REPAIR OR CORRECTION. - - 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - - END OF TERMS AND CONDITIONS - - Appendix: How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. - -Also add information on how to contact you by electronic and paper mail. - -If the program is interactive, make it output a short notice like this -when it starts in an interactive mode: - - Gnomovision version 69, Copyright (C) year name of author - Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, the commands you use may -be called something other than `show w' and `show c'; they could even be -mouse-clicks or menu items--whatever suits your program. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the program, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the program - `Gnomovision' (which makes passes at compilers) written by James Hacker. - - , 1 April 1989 - Ty Coon, President of Vice - -This General Public License does not permit incorporating your program into -proprietary programs. If your program is a subroutine library, you may -consider it more useful to permit linking proprietary applications with the -library. If this is what you want to do, use the GNU Library General -Public License instead of this License. DELETED ffcall/callback/MIGRATION Index: ffcall/callback/MIGRATION ================================================================== --- ffcall/callback/MIGRATION +++ /dev/null @@ -1,58 +0,0 @@ -Migration Guide -=============== - -When switching from vacall+trampoline to callback, you need to make the -following changes to your code: - - vacall+trampoline callback - ----------------- -------- - - -- Include files -- - -#include "vacall/vacall.h" #include "callback/callback.h" -#include "trampoline/trampoline.h" - - -- Variable declarations -- - -static void* trampvar; - - -- Callback declaration -- - -static void static void -mycallback (va_alist args) mycallback (void* data, va_alist args) -{ { - void* data = trampvar; ... - ... - - -- Initialization -- - -vacall_function = &mycallback; - - -- Allocating a callback -- - -void* trampoline = void* trampoline = - alloc_trampoline( alloc_callback(&mycallback,data); - (__TR_function)&vacall, - &trampvar, - data); - - -- Testing for a callback -- - -if if -(is_trampoline(address) (is_callback(address) - && (trampoline_address(address) && (callback_address(address) - == (__TR_function)&vacall) == &mycallback) - && (trampoline_variable(address) ) - == &trampvar) -) - -void* data = trampoline_data(address); void* data = callback_data(address); - - -- Deallocating a callback -- - -free_trampoline(address); free_callback(address); - - -- Libraries -- - -libvacall.a libtrampoline.a libcallback.a - DELETED ffcall/callback/Makefile.devel Index: ffcall/callback/Makefile.devel ================================================================== --- ffcall/callback/Makefile.devel +++ /dev/null @@ -1,36 +0,0 @@ -# This is the developer's -*-Makefile-*-, not the user's makefile. -# Do not use it unless you know exactly what you do! - -SHELL = /bin/sh -MAKE = make - -ROFF_MAN = groff -Tascii -mandoc - -all : callback.man vacall_r/config.h.msvc vacall_r/config.h.mingw32 vacall_r/vacall_r.h.msvc vacall_r/vacall_r.h.mingw32 vacall_r/vacall-i386-msvc.c vacall_r/vacall-i386-mingw32.c trampoline_r/config.h.msvc trampoline_r/config.h.mingw32 - -callback.man : callback.3 - $(ROFF_MAN) callback.3 > callback.man - -vacall_r/config.h.msvc : vacall_r/config.h.in - cd vacall_r ; $(MAKE) -f Makefile.devel config.h.msvc - -vacall_r/config.h.mingw32 : vacall_r/config.h.in - cd vacall_r ; $(MAKE) -f Makefile.devel config.h.mingw32 - -vacall_r/vacall_r.h.msvc : vacall_r/vacall_r.h.in - cd vacall_r ; $(MAKE) -f Makefile.devel vacall_r.h.msvc - -vacall_r/vacall_r.h.mingw32 : vacall_r/vacall_r.h.in - cd vacall_r ; $(MAKE) -f Makefile.devel vacall_r.h.mingw32 - -vacall_r/vacall-i386-msvc.c : vacall_r/vacall-i386-macro.S vacall_r/asmi386.sh - cd vacall_r ; $(MAKE) -f Makefile.devel vacall-i386-msvc.c - -vacall_r/vacall-i386-mingw32.c : vacall_r/vacall-i386-macro.S vacall_r/asmi386.sh - cd vacall_r ; $(MAKE) -f Makefile.devel vacall-i386-mingw32.c - -trampoline_r/config.h.msvc : trampoline_r/config.h.in - cd trampoline_r ; $(MAKE) -f Makefile.devel config.h.msvc - -trampoline_r/config.h.mingw32 : trampoline_r/config.h.in - cd trampoline_r ; $(MAKE) -f Makefile.devel config.h.mingw32 DELETED ffcall/callback/Makefile.in Index: ffcall/callback/Makefile.in ================================================================== --- ffcall/callback/Makefile.in +++ /dev/null @@ -1,168 +0,0 @@ -# Makefile for callback - -#### Start of system configuration section. #### - -HOST = @host@ -CPU = @host_cpu@ - -# Directories used by "make": -srcdir = @srcdir@ - -# Directories used by "make install": -prefix = @prefix@ -local_prefix = /usr/local -exec_prefix = @exec_prefix@ -libdir = @libdir@ -includedir = @includedir@ -mandir = @mandir@ -datadir = @datadir@ -htmldir = $(datadir)/html - -# Programs used by "make": -CC = @CC@ -CFLAGS = @CFLAGS@ -CPP = @CPP@ -INCLUDES = -I. -I$(srcdir) -LIBTOOL = @LIBTOOL@ -LIBTOOL_LINK = $(LIBTOOL) --mode=link -LIBTOOL_INSTALL = $(LIBTOOL) --mode=install -LIBTOOL_UNINSTALL = $(LIBTOOL) --mode=uninstall -AR = ar -AR_FLAGS = rc -RANLIB = @RANLIB@ -LN_S = @LN_S@ -RM = rm -f -@SET_MAKE@ - -# Programs used by "make install": -INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_DATA = @INSTALL_DATA@ - -#### End of system configuration section. #### - -SHELL = /bin/sh - -# Needed by $(LIBTOOL). -top_builddir = . - -all : all-subdirs callback.h vacall_r.h trampoline_r.h libcallback.la $(srcdir)/callback.3 $(srcdir)/callback.html - -all-subdirs : force - cd @subdir@; $(MAKE) all - -callback.h : - $(LN_S) $(srcdir)/callback.h.in callback.h - -vacall_r.h : - $(LN_S) vacall_r/vacall_r.h vacall_r.h - -trampoline_r.h : - $(LN_S) trampoline_r/trampoline_r.h trampoline_r.h - -libcallback.la : vacall_r/libvacall.la trampoline_r/libtrampoline.la - $(LIBTOOL_LINK) $(CC) -o libcallback.la -rpath $(libdir) vacall_r/vacall.lo vacall_r/misc.lo vacall_r/structcpy.lo trampoline_r/*.lo - -# Installs the library and include files only. Typically called with only -# $(libdir) and $(includedir) - don't use $(prefix) and $(exec_prefix) here. -install-lib : all force - cd @subdir@; $(MAKE) install-lib libdir='$(libdir)' includedir='$(includedir)' - if [ ! -d $(libdir) ] ; then mkdir $(libdir) ; fi - $(LIBTOOL_INSTALL) $(INSTALL_DATA) libcallback.la $(libdir)/libcallback.la - if [ ! -d $(includedir) ] ; then mkdir $(includedir) ; fi - $(INSTALL_DATA) callback.h $(includedir)/callback.h - -install : force - cd @subdir@; $(MAKE) install - if [ ! -d $(DESTDIR)$(prefix) ] ; then mkdir $(DESTDIR)$(prefix) ; fi - if [ ! -d $(DESTDIR)$(exec_prefix) ] ; then mkdir $(DESTDIR)$(exec_prefix) ; fi - if [ ! -d $(DESTDIR)$(libdir) ] ; then mkdir $(DESTDIR)$(libdir) ; fi - $(LIBTOOL_INSTALL) $(INSTALL_DATA) libcallback.la $(DESTDIR)$(libdir)/libcallback.la - if [ ! -d $(DESTDIR)$(includedir) ] ; then mkdir $(DESTDIR)$(includedir) ; fi - $(INSTALL_DATA) callback.h $(DESTDIR)$(includedir)/callback.h - if [ ! -d $(DESTDIR)$(mandir) ] ; then mkdir $(DESTDIR)$(mandir) ; fi - if [ ! -d $(DESTDIR)$(mandir)/man3 ] ; then mkdir $(DESTDIR)$(mandir)/man3 ; fi - $(INSTALL_DATA) $(srcdir)/callback.3 $(DESTDIR)$(mandir)/man3/callback.3 - if [ ! -d $(DESTDIR)$(datadir) ] ; then mkdir $(DESTDIR)$(datadir) ; fi - if [ ! -d $(DESTDIR)$(htmldir) ] ; then mkdir $(DESTDIR)$(htmldir) ; fi - $(INSTALL_DATA) $(srcdir)/callback.html $(DESTDIR)$(htmldir)/callback.html - -installdirs : force - cd @subdir@; $(MAKE) installdirs - if [ ! -d $(DESTDIR)$(prefix) ] ; then mkdir $(DESTDIR)$(prefix) ; fi - if [ ! -d $(DESTDIR)$(exec_prefix) ] ; then mkdir $(DESTDIR)$(exec_prefix) ; fi - if [ ! -d $(DESTDIR)$(libdir) ] ; then mkdir $(DESTDIR)$(libdir) ; fi - if [ ! -d $(DESTDIR)$(includedir) ] ; then mkdir $(DESTDIR)$(includedir) ; fi - if [ ! -d $(DESTDIR)$(mandir) ] ; then mkdir $(DESTDIR)$(mandir) ; fi - if [ ! -d $(DESTDIR)$(mandir)/man3 ] ; then mkdir $(DESTDIR)$(mandir)/man3 ; fi - if [ ! -d $(DESTDIR)$(datadir) ] ; then mkdir $(DESTDIR)$(datadir) ; fi - if [ ! -d $(DESTDIR)$(htmldir) ] ; then mkdir $(DESTDIR)$(htmldir) ; fi - -uninstall : force - cd @subdir@; $(MAKE) uninstall - $(LIBTOOL_UNINSTALL) $(RM) $(DESTDIR)$(libdir)/libcallback.la - $(RM) $(DESTDIR)$(includedir)/callback.h - $(RM) $(DESTDIR)$(mandir)/man3/callback.3 - $(RM) $(DESTDIR)$(htmldir)/callback.html - -minitests.o : $(srcdir)/minitests.c $(srcdir)/tests.c callback.h vacall_r.h trampoline_r.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/minitests.c - -minitests.s : $(srcdir)/minitests.c $(srcdir)/tests.c callback.h vacall_r.h trampoline_r.h - $(CC) $(CFLAGS) $(INCLUDES) -S $(srcdir)/minitests.c - -minitests : minitests.o libcallback.la - $(LIBTOOL_LINK) $(CC) $(CFLAGS) @GCC_X_NONE@ minitests.o libcallback.la -o minitests - -check-subdirs : force - cd @subdir@; $(MAKE) check - -check : all check-subdirs minitests - ./minitests > minitests.out - LC_ALL=C uniq -u < minitests.out > minitests.output.$(HOST) - test '!' -s minitests.output.$(HOST) - -tests.o : $(srcdir)/tests.c callback.h vacall_r.h trampoline_r.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/tests.c - -tests.s : $(srcdir)/tests.c callback.h vacall_r.h trampoline_r.h - $(CC) $(CFLAGS) $(INCLUDES) -S $(srcdir)/tests.c - -tests : tests.o libcallback.la - $(LIBTOOL_LINK) $(CC) $(CFLAGS) @GCC_X_NONE@ tests.o libcallback.la -o tests - -extracheck-subdirs : force - cd @subdir@; $(MAKE) extracheck - -extracheck : all extracheck-subdirs tests - ./tests > tests.out - LC_ALL=C uniq -u < tests.out > tests.output.$(HOST) - test '!' -s tests.output.$(HOST) - -mostlyclean : force - cd @subdir@; $(MAKE) mostlyclean - -clean-subdirs : force - cd @subdir@; $(MAKE) clean - -clean : clean-subdirs - $(RM) *.o *.lo core - $(RM) callback.h vacall_r.h trampoline_r.h libcallback.* - $(RM) -r .libs _libs - $(RM) minitests.o minitests.s minitests minitests.out - $(RM) tests.o tests.s tests tests.out - -distclean-subdirs : force - cd @subdir@; if test -f Makefile; then $(MAKE) distclean; fi - -distclean : clean distclean-subdirs - $(RM) config.status config.log config.cache Makefile libtool minitests.output.* tests.output.* - -maintainer-clean-subdirs : force - cd @subdir@; if test -f Makefile; then $(MAKE) maintainer-clean; fi - -maintainer-clean : distclean maintainer-clean-subdirs - $(RM) config.status config.log config.cache Makefile - -force : - DELETED ffcall/callback/Makefile.mingw32 Index: ffcall/callback/Makefile.mingw32 ================================================================== --- ffcall/callback/Makefile.mingw32 +++ /dev/null @@ -1,122 +0,0 @@ -# -*-Makefile-*- for callback - -#### Start of system configuration section. #### - -HOST = i386-pc-win32-gcc -CPU = i386 - -# Directories used by "make": -srcdir = . - -# Directories used by "make install": -prefix = /usr/local -local_prefix = /usr/local -exec_prefix = $(prefix) -libdir = $(exec_prefix)/lib -includedir = $(prefix)/include -mandir = $(prefix)/man - -# Programs used by "make": -CC = gcc -mno-cygwin -CFLAGS = -O -CPP = gcc -E -INCLUDES = -I. -I$(srcdir) -AR = ar -AR_FLAGS = rc -MV = mv -LN = cp -RM = rm -f - -# Programs used by "make install": -INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_DATA = @INSTALL_DATA@ - -#### End of system configuration section. #### - -SHELL = /bin/sh - -OBJECTS = vacall.o misc.o structcpy.o trampoline.o - -all : all-subdirs callback.h vacall_r.h trampoline_r.h libcallback.a $(srcdir)/callback.3 $(srcdir)/callback.html - -all-subdirs : force - $(MAKE) -C vacall_r -f Makefile.mingw32 all - $(MAKE) -C trampoline_r -f Makefile.mingw32 all - -callback.h : $(srcdir)/callback.h.in - -$(LN) $(srcdir)/callback.h.in callback.h - -vacall_r.h : vacall_r/vacall_r.h - $(LN) vacall_r/vacall_r.h vacall_r.h - -trampoline_r.h : trampoline_r/trampoline_r.h - $(LN) trampoline_r/trampoline_r.h trampoline_r.h - -libcallback.a : vacall_r/libvacall.a trampoline_r/libtrampoline.a - $(RM) libcallback.a - $(AR) x vacall_r/libvacall.a - $(AR) x trampoline_r/libtrampoline.a - $(AR) $(AR_FLAGS) libcallback.a $(OBJECTS) - $(RM) $(OBJECTS) - -minitests.o : $(srcdir)/minitests.c callback.h vacall_r.h trampoline_r.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/minitests.c - -minitests.s : $(srcdir)/minitests.c callback.h vacall_r.h trampoline_r.h - $(CC) $(CFLAGS) $(INCLUDES) -S $(srcdir)/minitests.c - -minitests.exe : minitests.o libcallback.a - $(CC) $(CFLAGS) minitests.o libcallback.a -o minitests.exe - -check-subdirs : force - $(MAKE) -C vacall_r -f Makefile.mingw32 check - $(MAKE) -C trampoline_r -f Makefile.mingw32 check - -check : all check-subdirs minitests.exe - minitests.exe > minitests.out - LC_ALL=C uniq -u < minitests.out > minitests.output.$(HOST) - -tests.o : $(srcdir)/tests.c callback.h vacall_r.h trampoline_r.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/tests.c - -tests.s : $(srcdir)/tests.c callback.h vacall_r.h trampoline_r.h - $(CC) $(CFLAGS) $(INCLUDES) -S $(srcdir)/tests.c - -tests.exe : tests.o libcallback.a - $(CC) $(CFLAGS) tests.o libcallback.a -o tests.exe - -extracheck-subdirs : force - $(MAKE) -C vacall_r -f Makefile.mingw32 extracheck - $(MAKE) -C trampoline_r -f Makefile.mingw32 extracheck - -extracheck : all extracheck-subdirs tests.exe - tests.exe > tests.out - LC_ALL=C uniq -u < tests.out > tests.output.$(HOST) - -mostlyclean : force - $(MAKE) -C vacall_r -f Makefile.mingw32 mostlyclean - $(MAKE) -C trampoline_r -f Makefile.mingw32 mostlyclean - -clean-subdirs : force - $(MAKE) -C vacall_r -f Makefile.mingw32 clean - $(MAKE) -C trampoline_r -f Makefile.mingw32 clean - -clean : clean-subdirs - $(RM) $(OBJECTS) *.a core - $(RM) vacall_r.h trampoline_r.h libcallback.a - $(RM) minitests.o minitests.s minitests.exe minitests.out - $(RM) tests.o tests.s tests.exe tests.out - -distclean-subdirs : clean - $(MAKE) -C vacall_r -f Makefile.mingw32 distclean - $(MAKE) -C trampoline_r -f Makefile.mingw32 distclean - -distclean : clean distclean-subdirs - $(RM) config.status config.log config.cache Makefile tests.output.* - -maintainer-clean : clean distclean-subdirs - $(RM) config.status config.log config.cache Makefile - -force : - DELETED ffcall/callback/Makefile.msvc Index: ffcall/callback/Makefile.msvc ================================================================== --- ffcall/callback/Makefile.msvc +++ /dev/null @@ -1,174 +0,0 @@ -# -*- Makefile -*- for callback - -#### Start of system configuration section. #### - -# Flags that can be set on the nmake command line: -# MFLAGS={-ML|-MT|-MD} for defining the compilation model -# MFLAGS=-ML (the default) Single-threaded, statically linked - libc.lib -# MFLAGS=-MT Multi-threaded, statically linked - libcmt.lib -# MFLAGS=-MD Multi-threaded, dynamically linked - msvcrt.lib -# DEBUG=1 for compiling with debugging information -# Note that nmake command line flags are automatically passed to subdirectory -# Makefiles. Therefore we don't need to pass them explicitly to subdirectory -# Makefiles, but the subdirectory Makefiles need to have the same defaults. -# Building as a DLL not supported yet. -DLL=0 -!if !defined(DEBUG) -DEBUG=0 -!endif -!if !defined(MFLAGS) -!if !$(DLL) -MFLAGS= -!else -MFLAGS=-MD -!endif -!endif - -!if $(DEBUG) -OPTIMFLAGS = -Od -Z7 -!else -OPTIMFLAGS = -D_NDEBUG -O1 -!endif - -HOST = i386-pc-win32-msvc -CPU = i386 - -# Directories used by "make": -srcdir = . - -# Directories used by "make install": -prefix = /usr/local -local_prefix = /usr/local -exec_prefix = $(prefix) -libdir = $(exec_prefix)/lib -includedir = $(prefix)/include -mandir = $(prefix)/man - -# Programs used by "make": -CC = cl -CFLAGS = $(MFLAGS) $(OPTIMFLAGS) -CPP = cl -E -INCLUDES = -I. -I$(srcdir) -AR = lib -AR_FLAGS = /out: -MV = ren -LN = copy -RM = -del - -# Programs used by "make install": -INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_DATA = @INSTALL_DATA@ - -#### End of system configuration section. #### - -SHELL = /bin/sh - -OBJECTS = vacall_r/vacall.obj vacall_r/misc.obj vacall_r/structcpy.obj trampoline_r/trampoline.obj - -all : $(OBJECTS) callback.h vacall_r.h trampoline_r.h callback.lib $(srcdir)/callback.3 $(srcdir)/callback.html - -callback.h : $(srcdir)/callback.h.in - -$(LN) $(srcdir)\callback.h.in callback.h - -vacall_r.h : vacall_r/vacall_r.h - $(LN) vacall_r\vacall_r.h vacall_r.h - -vacall_r/vacall_r.h : vacall_r/vacall_r.h.msvc - $(RM) vacall_r\vacall_r.h - $(LN) vacall_r\vacall_r.h.msvc vacall_r\vacall_r.h - -vacall_r/config.h : vacall_r/config.h.msvc - $(RM) vacall_r\config.h - $(LN) vacall_r\config.h.msvc vacall_r\config.h - -vacall_r/vacall.obj : vacall_r/vacall-$(CPU).obj - $(RM) vacall_r\vacall.obj - $(LN) vacall_r\vacall-$(CPU).obj vacall_r\vacall.obj - -vacall_r/vacall-i386.obj : $(srcdir)/vacall_r/vacall-i386-msvc.c vacall_r/vacall_r.h - $(RM) vacall_r\vacall-i386.obj - $(CC) -c $(srcdir)/vacall_r/vacall-i386-msvc.c /Fovacall_r/vacall-i386.obj - -vacall_r/misc.obj : $(srcdir)/vacall_r/misc.c vacall_r/vacall_r.h vacall_r/config.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/vacall_r/misc.c /Fovacall_r/misc.obj - -vacall_r/structcpy.obj : $(srcdir)/vacall_r/structcpy.c - $(CC) $(CFLAGS) -c $(srcdir)/vacall_r/structcpy.c /Fovacall_r/structcpy.obj - -trampoline_r.h : trampoline_r/trampoline_r.h - $(LN) trampoline_r\trampoline_r.h trampoline_r.h - -trampoline_r/trampoline_r.h : $(srcdir)/trampoline_r/trampoline_r.h.in - -$(LN) $(srcdir)\trampoline_r\trampoline_r.h.in trampoline_r\trampoline_r.h - -trampoline_r/config.h : $(srcdir)/trampoline_r/config.h.msvc - -$(LN) $(srcdir)\trampoline_r\config.h.msvc trampoline_r\config.h - -trampoline_r/trampoline.obj : $(srcdir)/trampoline_r/trampoline.c trampoline_r/trampoline_r.h trampoline_r/config.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/trampoline_r/trampoline.c /Fotrampoline_r/trampoline.obj - -!if !$(DLL) -callback.lib : $(OBJECTS) - $(RM) callback.lib - $(AR) $(AR_FLAGS)callback.lib $(OBJECTS) -!else -# callback.dll and callback.lib are created together. -callback.lib : $(OBJECTS) - $(CC) $(MFLAGS) -LD $(OBJECTS) -Fecallback.dll -!endif - -test1.obj : $(srcdir)/trampoline_r/test1.c trampoline_r/trampoline_r.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/trampoline_r/test1.c - -test1.exe : test1.obj callback.lib - $(RM) test1.ilk - $(CC) $(CFLAGS) test1.obj callback.lib /Fetest1.exe - -test2.obj : $(srcdir)/trampoline_r/test2.c trampoline_r/trampoline_r.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/trampoline_r/test2.c - -test2.exe : test2.obj callback.lib - $(RM) test2.ilk - $(CC) $(CFLAGS) test2.obj callback.lib /Fetest2.exe - -tests.obj : $(srcdir)/tests.c callback.h vacall_r.h trampoline_r.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/tests.c - -tests.s : $(srcdir)/tests.c callback.h vacall_r.h trampoline_r.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/tests.c /FAs /Fatests.s - -tests.exe : tests.obj callback.lib - $(CC) $(CFLAGS) tests.obj callback.lib /Fetests.exe - -uniq-u.exe : $(srcdir)/uniq-u.c - $(CC) $(CFLAGS) $(srcdir)/uniq-u.c -Feuniq-u.exe - $(RM) uniq-u.obj - -check1 : all test1.exe - test1.exe - -check2 : all test1.exe test2.exe - test1.exe - test2.exe - -check : all test1.exe test2.exe tests.exe uniq-u.exe - test1.exe - test2.exe - tests.exe > tests.out - uniq-u < tests.out > tests.output.$(HOST) - -mostlyclean : clean - -clean : force - $(RM) vacall_r\vacall.obj vacall_r\vacall-i386.obj vacall_r\misc.obj vacall_r\structcpy.obj trampoline_r\trampoline.obj callback.lib callback.exp callback.dll core - $(RM) test1.obj test1.exe test2.obj test2.exe - $(RM) tests.obj tests.s tests.exe uniq-u.exe tests.out - -distclean : clean - $(RM) config.status config.log config.cache Makefile vacall_r\vacall_r.h vacall_r\config.h trampoline_r\config.h trampoline_r\trampoline_r.h vacall_r.h trampoline_r.h tests.output.* - -maintainer-clean : distclean - -force : - DELETED ffcall/callback/PLATFORMS Index: ffcall/callback/PLATFORMS ================================================================== --- ffcall/callback/PLATFORMS +++ /dev/null @@ -1,16 +0,0 @@ -Supported CPUs: (Put the GNU config.guess values here.) - i386 i486-pc-linuxelf (gcc), i386-pc-solaris2.6 (gcc) - m68k m68k-unknown-linux (gcc) - mips mips-sgi-irix5.3 (gcc), mips-sgi-irix6.4 (cc -32, -n32, -64) - sparc sparc-sun-solaris2.4 (gcc), sparc-sun-sunos4.1.3_U1 (gcc) - alpha alpha-dec-osf3.2 (gcc), alpha-dec-osf4.0 (gcc, cc) - hppa hppa1.1-hp-hpux9.05 (cc), hppa1.1-hp-hpux10.01 (cc), - hppa2.0-hp-hpux10.20 (cc +DA1.1) - arm -- untested - rs6000 rs6000-ibm-aix3.2.5 (xlc, gcc), - powerpc-unknown-linux (gcc), powerpc-apple-darwin6.8 (gcc) - m88k -- untested - convex -- untested - ia64 ia64-unknown-linux (gcc) - x86_64 x86_64-suse-linux (gcc) - DELETED ffcall/callback/README Index: ffcall/callback/README ================================================================== --- ffcall/callback/README +++ /dev/null @@ -1,64 +0,0 @@ -callback - closures with variable arguments as first-class C functions - -This library implements closures with variable arguments and variable return -values as first-class C functions. A closure consists of a regular C function -and a piece of data which gets passed to the C function when the closure is -called. - -This library is especially suited to the implementation of call-back functions -in embedded interpreters. - - -Installation instructions: - - ./configure - make - make check - make install - - -Files in this package: - - Documentation: - - README this text - COPYING free software license - PLATFORMS list of supported platforms - MIGRATION migration guide from vacall+trampoline - callback.3 manual page in Unix man format - callback.man manual page - callback.html manual page in HTML format - - Source: - - callback.h include file - tests.c test program - vacall_r/* a reentrant version of the vacall package - trampoline_r/* a reentrant version of the trampoline package - - Installation: - - configure configuration script - configure.in autoconf-2.12 source for the configuration script - ../autoconf/* auxiliary configuration scripts - Makefile.in Makefile master - - Porting: - - Makefile.devel developer's Makefile - call-used-registers table of call-used registers on different CPUs - - -Copyright notice: - -Copyright 1995 Bruno Haible, - -This is free software distributed under the GNU General Public Licence -described in the file COPYING. Contact the author if you don't have this -or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, -on this software. - - -Bruno Haible - - DELETED ffcall/callback/call-used-registers Index: ffcall/callback/call-used-registers ================================================================== --- ffcall/callback/call-used-registers +++ /dev/null @@ -1,31 +0,0 @@ -Call-used general-purpose/integer registers, not interfering with arg registers: - -grep CALL_USED in the machine description. - -Compile the small program: -extern void* volatile x; -extern void* volatile y; -int foo (int a0, int a1, int a2, int a3, int a4, int a5, int a6, int a7) -{ void* a = x; void* b = y; y = a; x = b; - return a0+a1+a2+a3+a4+a5+a6+a7; -} - -Among these, we can use the lexical closure reg, because __vacall_r has no -lexical closure (more precisely, we are building a lexical closure for it). - -grep STATIC_CHAIN_REGNUM and TRAMPOLINE_TEMPLATE in the machine description. - - Machine description first two (a,b) Lexical closure reg -i386 eax,edx,ecx eax,edx ecx -m68k d0,d1,a0,a1 d0,d1 a0 -mips r2-r15 $2=v0,$3=v1,$8=t0 $2 -sparc g1-g4 g1-g3 g2 -sparc64 g1-g5 g1-g3 g5 -alpha $0-$8,$22-$25,$28 $2,$1 $1 -hppa 20-22,28-29 r19,r20,r21,r22 r29 -arm r12=ip r0,r1,r3,r2 r12 (!) -rs6000 0,3-12 0,11,12 11 -m88k 10,13,11(?) r10,r13,r11,r12 r11 -convex s0-s7,a1-a5 s1,s2 s0 -ia64 r14-r31,r8-r11 r8,r14,r15...r19 r15 -x86_64 rax,rdx,rcx,rsi,rdi,r8-r15 rax,r10 r10 DELETED ffcall/callback/callback.3 Index: ffcall/callback/callback.3 ================================================================== --- ffcall/callback/callback.3 +++ /dev/null @@ -1,264 +0,0 @@ -.TH CALLBACK 3 "14 January 2001" -.SH NAME -callback \- closures with variable arguments as first-class C functions -.SH SYNOPSIS -.B #include -.LP -.nf -.BI "void " function " (" data ", " alist ")" -.BI " void* " data ";" -.BI " va_alist " alist ";" -.BI "{" -.BI " va_start_" type "(" alist "[, " return_type "]);" -.BI " " arg " = va_arg_" type "(" alist "[, " arg_type "]);" -.BI " va_return_" type "(" alist "[[, " return_type "], " return_value "]);" -.BI "}" -.fi -.LP -.IB callback " = alloc_callback(" "&function" ", " data ");" -.LP -.BI "free_callback(" callback ");" -.LP -.nf -.BI "is_callback(" callback ")" -.BI "callback_address(" callback ")" -.BI "callback_data(" callback ")" -.fi -.SH DESCRIPTION -.LP -These functions implement -.I closures -with variable arguments as first-class C functions. - -Closures as -.I first-class C functions -means that they fit into a function pointer and can be called exactly -like any other C function. Moreover, they can be called with variable -arguments and can return variable return values. - -.IB callback " = alloc_callback(" "&function" ", " data ")" -allocates a callback. When -.I callback -gets called, it arranges to call -.IR function "," -passing -.I data -as first argument and, as second argument, the entire sequence of arguments -passed to -.IR callback . - -Function calling conventions differ considerably on different machines, -therefore the arguments are accessed and the result value is stored -through the same macros as used by the -.I vacall -package, see below. - -The callbacks are functions with indefinite extent: -.I callback -is only deallocated when -.BI free_callback( callback ) -is called. - -.BI "is_callback(" callback ")" -checks whether the C function -.I callback -was produced by a call to -.IR alloc_callback . -If this returns true, the arguments given to -.I alloc_callback -can be retrieved: -.RS 4 -.LP -.BI "callback_address(" callback ")" -returns -.IR "&function" , -.LP -.BI "callback_data(" callback ")" -returns -.IR data . -.RE - -.SH VACALL MACROS - -Within -.IR function , -the following macros can be used to walk through the argument list and -specify a return value: -.RS 0 -.TP -.BI "va_start_" type "(" alist "[, " return_type "]);" -starts the walk through the argument list and specifies the return type. -.TP -.IB arg " = va_arg_" type "(" alist "[, " arg_type "]);" -fetches the next argument from the argument list. -.TP -.BI "va_return_" type "(" alist "[[, " return_type "], " return_value "]);" -ends the walk through the argument list and specifies the return value. -.RE - -The -.I type -in -.BI va_start_ type -and -.BI va_return_ type -shall be one of -.BR void ", " int ", " uint ", " long ", " ulong ", " longlong ", " ulonglong ", " double ", " struct ", " ptr -or (for ANSI C calling conventions only) -.BR char ", " schar ", " uchar ", " short ", " ushort ", " float , -depending on the class of -.IR return_type . - -The -.I type -specifiers in -.BI va_start_ type -and -.BI va_return_ type -must be the same. -The -.I return_type -specifiers passed to -.BI va_start_ type -and -.BI va_return_ type -must be the same. - -The -.I type -in -.BI va_arg_ type -shall be one of -.BR int ", " uint ", " long ", " ulong ", " longlong ", " ulonglong ", " double ", " struct ", " ptr -or (for ANSI C calling conventions only) -.BR char ", " schar ", " uchar ", " short ", " ushort ", " float , -depending on the class of -.IR arg_type . - -In -.BI "va_start_struct(" alist ", " return_type ", " splittable ); -the -.I splittable -flag specifies whether the struct -.I return_type -can be returned in registers such that every struct field fits entirely in -a single register. This needs to be specified for structs of size -2*sizeof(long). For structs of size <= sizeof(long), -.I splittable -is ignored and assumed to be 1. For structs of size > 2*sizeof(long), -.I splittable -is ignored and assumed to be 0. There are some handy macros for this: -.nf -.BI "va_word_splittable_1 (" type1 ) -.BI "va_word_splittable_2 (" type1 ", " type2 ) -.BI "va_word_splittable_3 (" type1 ", " type2 ", " type3 ) -.BI "va_word_splittable_4 (" type1 ", " type2 ", " type3 ", " type4 ) -.fi -For a struct with three slots -.nf -.BI "struct { " "type1 id1" "; " "type2 id2" "; " "type3 id3" "; }" -.fi -you can specify -.I splittable -as -.BI "va_word_splittable_3 (" type1 ", " type2 ", " type3 ) -.RB . - -.SH NOTES - -Functions which want to emulate Kernighan & Ritchie style functions (i.e., -in ANSI C, functions without a typed argument list) cannot use the -.I type -values -.BR char ", " schar ", " uchar ", " short ", " ushort ", " float . -As prescribed by the default K&R C expression promotions, they have -to use -.B int -instead of -.BR char ", " schar ", " uchar ", " short ", " ushort -and -.B double -instead of -.BR float . - -The macros -.BR va_start_longlong(\|) , -.BR va_start_ulonglong(\|) , -.BR va_return_longlong(\|) , -.BR va_return_ulonglong(\|) , -.B va_arg_longlong(\|) -and -.B va_arg_ulonglong(\|) -work only if the C compiler has a working -.B long long -64-bit integer type. - -The struct types used in -.B va_start_struct(\|) -and -.B va_struct(\|) -must only contain (signed or unsigned) int, long, long long or pointer fields. -Struct types containing (signed or unsigned) char, short, float, double or -other structs are not supported. - -.SH SEE ALSO -.BR vacall (3), -.BR trampoline (3). - -.SH BUGS - -The current implementations have been tested on a selection of common -cases but there are probably still many bugs. - -There are typically built-in limits on the size of the argument-list, -which may also include the size of any structure arguments. - -The decision whether a struct is to be returned in registers or in memory -considers only the struct's size and alignment. This is inaccurate: for -example, gcc on m68k-next returns -.B "struct { char a,b,c; }" -in registers and -.B "struct { char a[3]; }" -in memory, although both types have the same size and the same alignment. - -.B -cannot be included when -.B -or -.B -is included. -(Name clash for -.BR va_alist ".)" - -The argument list can only be walked once. - -.SH NON-BUGS - -All information is passed in CPU registers and the stack. The -.B callback -package is therefore multithread-safe. - -.SH PORTING - -Porting -.B callback -consists in first porting the -.B vacall -and -.B trampoline -packages, then choosing a CPU register for passing the closure from -.B trampoline -to -.BR vacall . -This register is normally the register designated by STATIC_CHAIN_REGNUM -in the gcc source, file -.RI gcc-2.7.2/config/ cpu / cpu .h. - -.SH AUTHOR - -Bruno Haible - -.SH ACKNOWLEDGEMENTS - -Many ideas were cribbed from the gcc source. - DELETED ffcall/callback/callback.h.in Index: ffcall/callback/callback.h.in ================================================================== --- ffcall/callback/callback.h.in +++ /dev/null @@ -1,43 +0,0 @@ -#ifndef _CALLBACK_H -#define _CALLBACK_H - -/* - * Copyright 1997-1999 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#include "vacall_r.h" -#include "trampoline_r.h" - -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -typedef void (*__VA_function) (void*, va_alist); -#else -typedef void (*__VA_function) (); -#endif - -#if 0 -extern __TR_function alloc_callback (__VA_function, void*); -extern void free_callback (__TR_function); -extern int is_callback (void*); -extern __VA_function callback_address (void*); -extern void* callback_data (void*); -#else -#define alloc_callback(address,data) \ - alloc_trampoline_r((__TR_function)&__vacall_r,(void*)(__VA_function)(address),(void*)(data)) -#define free_callback(function) \ - free_trampoline_r(function) -#define is_callback(function) \ - (is_trampoline_r(function) \ - && trampoline_r_address(function) == (__TR_function)&__vacall_r \ - ) -#define callback_address(function) \ - (__VA_function)trampoline_r_data0(function) -#define callback_data(function) \ - trampoline_r_data1(function) -#endif - -#endif /* _CALLBACK_H */ DELETED ffcall/callback/callback.html Index: ffcall/callback/callback.html ================================================================== --- ffcall/callback/callback.html +++ /dev/null @@ -1,272 +0,0 @@ - - CALLBACK manual page - - -

CALLBACK manual page

- - -

- -


- - -

Name

-
- -callback - closures with variable arguments as first-class -C functions - - -

Synopsis

-
- -
-#include <callback.h>
-
-

-

-void function (data, alist)
-  void* data;
-  va_alist alist;
-{
-  va_start_type(alist[, return_type]);
-  arg = va_arg_type(alist[, arg_type]);
-  va_return_type(alist[[, return_type], return_value]);
-}
-
-

-

-callback = alloc_callback(&function, data);
-
-

-

-free_callback(callback);
-
-

-

-is_callback(callback)
-callback_address(callback)
-callback_data(callback)
-
- - -

Description

-
- -These functions implement closures with variable arguments -as first-class C functions. -

-Closures as first-class C functions means that they fit -into a function pointer and can be called exactly like any -other C function. Moreover, they can be called with variable -arguments and can return variable return values. -

-callback = alloc_callback(&function, data) -allocates a -callback. When callback gets called, it arranges to call -function, passing data as first argument and, as second -argument, the entire sequence of arguments passed to callback. -

-Function calling conventions differ considerably on different -machines, therefore the arguments are accessed and -the result value is stored through the same macros as used -by the vacall package, see below. -

-The callbacks are functions with indefinite extent: callback -is only deallocated when free_callback(callback) is -called. -

-is_callback(callback) -checks whether the C function callback -was produced by a call to alloc_callback. If this -returns true, the arguments given to alloc_callback can be -retrieved: -

    -
  • callback_address(callback) returns &function, -
  • callback_data(callback) returns data. -
- - -

VACALL macros

-
- -Within function, the following macros can be used to walk -through the argument list and specify a return value: -

-

-va_start_type(alist[, return_type]);
-
-starts the walk through the argument list and specifies the return type. -

-

-arg = va_arg_type(alist[, arg_type]);
-
-fetches the next argument from the argument list. -

-

-va_return_type(alist[[, return_type], return_value]);
-
-ends the walk through the argument list and specifies the return value. -

-The type in va_start_type - and va_return_type shall be one -of void, int, uint, long, -ulong, longlong, ulonglong, -double, struct, ptr -or -(for ANSI C calling conventions only) -char, schar, uchar, -short, ushort, float, -depending on the class of return_type. -

-The type specifiers in -va_start_type and va_return_type - must be the same. -The return_type specifiers passed to -va_start_type and va_return_type - must be the same. -

-The type in va_arg_type -shall be one of int, uint, long, -ulong, longlong, ulonglong, -double, struct, ptr -or (for ANSI C calling conventions only) -char, schar, uchar, -short, ushort, float, -depending on the class of arg_type. -

-In va_start_struct(alist, return_type, splittable); the -splittable flag specifies whether the struct return_type can -be returned in registers such that every struct field fits -entirely in a single register. This needs to be specified -for structs of size 2*sizeof(long). For structs of size -<= sizeof(long), splittable is ignored and assumed to be 1. -For structs of size > 2*sizeof(long), splittable is -ignored and assumed to be 0. There are some handy macros -for this: -

-va_word_splittable_1 (type1)
-va_word_splittable_2 (type1, type2)
-va_word_splittable_3 (type1, type2, type3)
-va_word_splittable_4 (type1, type2, type3, type4)
-
-For a struct with three slots -
-struct { type1 id1; type2 id2; type3 id3; }
-
-you can specify splittable as -va_word_splittable_3 (type1, type2, type3). - - -

Notes

-
- -
    -
  1. Functions which want to emulate Kernighan & Ritchie style -functions (i.e., in ANSI C, functions without a typed -argument list) cannot use the type values -char, schar, uchar, -short, ushort, float. -As prescribed by the default -K&R C expression promotions, they have to use int instead -of char, schar, uchar, -short, ushort and double instead of -float. -

    -

  2. The macros va_start_longlong(), -va_start_ulonglong(), va_return_longlong(), -va_return_ulonglong(), va_arg_longlong() and -va_arg_ulonglong() work only if the C compiler has a working -long long 64-bit integer type. -

    -

  3. The struct types used in va_start_struct() and -va_struct() must only contain (signed or unsigned) int, -long, long long or pointer fields. Struct types containing -(signed or unsigned) char, short, float, double or other -structs are not supported. -

    -

- - -

See also

-
- -vacall(3), trampoline(3). - - -

Bugs

-
- -The current implementations have been tested on a selection -of common cases but there are probably still many -bugs. -

-There are typically built-in limits on the size of the -argument-list, which may also include the size of any -structure arguments. -

-The decision whether a struct is to be returned in registers or in memory -considers only the struct's size and alignment. This is inaccurate: for -example, gcc on m68k-next returns -struct { char a,b,c; } -in registers and -struct { char a[3]; } -in memory, although both types have the same size and the same alignment. -

-<callback.h> cannot be included when <varargs.h> or -<stdarg.h> is included. (Name clash for va_alist.) -

-The argument list can only be walked once. - - -

Non-Bugs

- - -All information is passed in CPU registers and the stack. -The callback package is therefore multithread-safe. - - -

Porting

-
- -Porting callback consists in first porting the vacall and -trampoline packages, then choosing a CPU register for -passing the closure from trampoline to vacall. This -register is normally the register designated by -STATIC_CHAIN_REGNUM in the gcc source, file -gcc-2.7.2/config/cpu/cpu.h. - - -

Author

-
- -Bruno Haible <bruno@clisp.org> - - -

Acknowledgements

-
- -Many ideas were cribbed from the gcc source. -

- -


- -
CALLBACK manual page
-Bruno Haible <bruno@clisp.org> -
-

-Last modified: 14 January 2001. - - DELETED ffcall/callback/callback.man Index: ffcall/callback/callback.man ================================================================== --- ffcall/callback/callback.man +++ /dev/null @@ -1,264 +0,0 @@ - - - -CALLBACK(3) CALLBACK(3) - - -NNAAMMEE - callback - closures with variable arguments as first-class - C functions - -SSYYNNOOPPSSIISS - ##iinncclluuddee <> - - vvooiidd _f_u_n_c_t_i_o_n ((_d_a_t_a,, _a_l_i_s_t)) - vvooiidd** _d_a_t_a;; - vvaa__aalliisstt _a_l_i_s_t;; - {{ - vvaa__ssttaarrtt___t_y_p_e((_a_l_i_s_t[[,, _r_e_t_u_r_n___t_y_p_e]]));; - _a_r_g == vvaa__aarrgg___t_y_p_e((_a_l_i_s_t[[,, _a_r_g___t_y_p_e]]));; - vvaa__rreettuurrnn___t_y_p_e((_a_l_i_s_t[[[[,, _r_e_t_u_r_n___t_y_p_e]],, _r_e_t_u_r_n___v_a_l_u_e]]));; - }} - - _c_a_l_l_b_a_c_k == aalllloocc__ccaallllbbaacckk((_&_f_u_n_c_t_i_o_n,, _d_a_t_a));; - - ffrreeee__ccaallllbbaacckk((_c_a_l_l_b_a_c_k));; - - iiss__ccaallllbbaacckk((_c_a_l_l_b_a_c_k)) - ccaallllbbaacckk__aaddddrreessss((_c_a_l_l_b_a_c_k)) - ccaallllbbaacckk__ddaattaa((_c_a_l_l_b_a_c_k)) - -DDEESSCCRRIIPPTTIIOONN - These functions implement _c_l_o_s_u_r_e_s with variable arguments - as first-class C functions. - - Closures as _f_i_r_s_t_-_c_l_a_s_s _C _f_u_n_c_t_i_o_n_s means that they fit - into a function pointer and can be called exactly like any - other C function. Moreover, they can be called with vari- - able arguments and can return variable return values. - - _c_a_l_l_b_a_c_k == aalllloocc__ccaallllbbaacckk((_&_f_u_n_c_t_i_o_n,, _d_a_t_a)) allocates a - callback. When _c_a_l_l_b_a_c_k gets called, it arranges to call - _f_u_n_c_t_i_o_n, passing _d_a_t_a as first argument and, as second - argument, the entire sequence of arguments passed to _c_a_l_l_- - _b_a_c_k. - - Function calling conventions differ considerably on dif- - ferent machines, therefore the arguments are accessed and - the result value is stored through the same macros as used - by the _v_a_c_a_l_l package, see below. - - The callbacks are functions with indefinite extent: _c_a_l_l_- - _b_a_c_k is only deallocated when ffrreeee__ccaallllbbaacckk((_c_a_l_l_b_a_c_k)) is - called. - - iiss__ccaallllbbaacckk((_c_a_l_l_b_a_c_k)) checks whether the C function _c_a_l_l_- - _b_a_c_k was produced by a call to _a_l_l_o_c___c_a_l_l_b_a_c_k. If this - returns true, the arguments given to _a_l_l_o_c___c_a_l_l_b_a_c_k can be - retrieved: - - ccaallllbbaacckk__aaddddrreessss((_c_a_l_l_b_a_c_k)) returns _&_f_u_n_c_t_i_o_n, - - - - 14 January 2001 1 - - - - - -CALLBACK(3) CALLBACK(3) - - - ccaallllbbaacckk__ddaattaa((_c_a_l_l_b_a_c_k)) returns _d_a_t_a. - - -VVAACCAALLLL MMAACCRROOSS - Within _f_u_n_c_t_i_o_n, the following macros can be used to walk - through the argument list and specify a return value: - - vvaa__ssttaarrtt___t_y_p_e((_a_l_i_s_t[[,, _r_e_t_u_r_n___t_y_p_e]]));; - starts the walk through the argument list and spec- - ifies the return type. - - _a_r_g == vvaa__aarrgg___t_y_p_e((_a_l_i_s_t[[,, _a_r_g___t_y_p_e]]));; - fetches the next argument from the argument list. - - vvaa__rreettuurrnn___t_y_p_e((_a_l_i_s_t[[[[,, _r_e_t_u_r_n___t_y_p_e]],, _r_e_t_u_r_n___v_a_l_u_e]]));; - ends the walk through the argument list and speci- - fies the return value. - - The _t_y_p_e in vvaa__ssttaarrtt___t_y_p_e and vvaa__rreettuurrnn___t_y_p_e shall be one - of vvooiidd, iinntt, uuiinntt, lloonngg, uulloonngg, lloonngglloonngg, uulloonngglloonngg, ddoouu-- - bbllee, ssttrruucctt, ppttrr or (for ANSI C calling conventions only) - cchhaarr, sscchhaarr, uucchhaarr, sshhoorrtt, uusshhoorrtt, ffllooaatt, depending on the - class of _r_e_t_u_r_n___t_y_p_e. - - The _t_y_p_e specifiers in vvaa__ssttaarrtt___t_y_p_e and vvaa__rreettuurrnn___t_y_p_e - must be the same. The _r_e_t_u_r_n___t_y_p_e specifiers passed to - vvaa__ssttaarrtt___t_y_p_e and vvaa__rreettuurrnn___t_y_p_e must be the same. - - The _t_y_p_e in vvaa__aarrgg___t_y_p_e shall be one of iinntt, uuiinntt, lloonngg, - uulloonngg, lloonngglloonngg, uulloonngglloonngg, ddoouubbllee, ssttrruucctt, ppttrr or (for - ANSI C calling conventions only) cchhaarr, sscchhaarr, uucchhaarr, - sshhoorrtt, uusshhoorrtt, ffllooaatt, depending on the class of _a_r_g___t_y_p_e. - - In vvaa__ssttaarrtt__ssttrruucctt((_a_l_i_s_t,, _r_e_t_u_r_n___t_y_p_e,, _s_p_l_i_t_t_a_b_l_e));; the - _s_p_l_i_t_t_a_b_l_e flag specifies whether the struct _r_e_t_u_r_n___t_y_p_e - can be returned in registers such that every struct field - fits entirely in a single register. This needs to be spec- - ified for structs of size 2*sizeof(long). For structs of - size <= sizeof(long), _s_p_l_i_t_t_a_b_l_e is ignored and assumed to - be 1. For structs of size > 2*sizeof(long), _s_p_l_i_t_t_a_b_l_e is - ignored and assumed to be 0. There are some handy macros - for this: - vvaa__wwoorrdd__sspplliittttaabbllee__11 ((_t_y_p_e_1)) - vvaa__wwoorrdd__sspplliittttaabbllee__22 ((_t_y_p_e_1,, _t_y_p_e_2)) - vvaa__wwoorrdd__sspplliittttaabbllee__33 ((_t_y_p_e_1,, _t_y_p_e_2,, _t_y_p_e_3)) - vvaa__wwoorrdd__sspplliittttaabbllee__44 ((_t_y_p_e_1,, _t_y_p_e_2,, _t_y_p_e_3,, _t_y_p_e_4)) - For a struct with three slots - ssttrruucctt {{ _t_y_p_e_1 _i_d_1;; _t_y_p_e_2 _i_d_2;; _t_y_p_e_3 _i_d_3;; }} - you can specify _s_p_l_i_t_t_a_b_l_e as vvaa__wwoorrdd__sspplliittttaabbllee__33 ((_t_y_p_e_1,, - _t_y_p_e_2,, _t_y_p_e_3)) . - - -NNOOTTEESS - Functions which want to emulate Kernighan & Ritchie style - - - - 14 January 2001 2 - - - - - -CALLBACK(3) CALLBACK(3) - - - functions (i.e., in ANSI C, functions without a typed - argument list) cannot use the _t_y_p_e values cchhaarr, sscchhaarr, - uucchhaarr, sshhoorrtt, uusshhoorrtt, ffllooaatt. As prescribed by the default - K&R C expression promotions, they have to use iinntt instead - of cchhaarr, sscchhaarr, uucchhaarr, sshhoorrtt, uusshhoorrtt and ddoouubbllee instead of - ffllooaatt. - - The macros vvaa__ssttaarrtt__lloonngglloonngg(()), vvaa__ssttaarrtt__uulloonngglloonngg(()), - vvaa__rreettuurrnn__lloonngglloonngg(()), vvaa__rreettuurrnn__uulloonngglloonngg(()), - vvaa__aarrgg__lloonngglloonngg(()) and vvaa__aarrgg__uulloonngglloonngg(()) work only if the - C compiler has a working lloonngg lloonngg 64-bit integer type. - - The struct types used in vvaa__ssttaarrtt__ssttrruucctt(()) and vvaa__ssttrruucctt(()) - must only contain (signed or unsigned) int, long, long - long or pointer fields. Struct types containing (signed - or unsigned) char, short, float, double or other structs - are not supported. - - -SSEEEE AALLSSOO - vvaaccaallll(3), ttrraammppoolliinnee(3). - - -BBUUGGSS - The current implementations have been tested on a selec- - tion of common cases but there are probably still many - bugs. - - There are typically built-in limits on the size of the - argument-list, which may also include the size of any - structure arguments. - - The decision whether a struct is to be returned in regis- - ters or in memory considers only the struct's size and - alignment. This is inaccurate: for example, gcc on m68k- - next returns ssttrruucctt {{ cchhaarr aa,,bb,,cc;; }} in registers and - ssttrruucctt {{ cchhaarr aa[[33]];; }} in memory, although both types have - the same size and the same alignment. - - <> cannot be included when <> or - <> is included. (Name clash for vvaa__aalliisstt.) - - The argument list can only be walked once. - - -NNOONN--BBUUGGSS - All information is passed in CPU registers and the stack. - The ccaallllbbaacckk package is therefore multithread-safe. - - -PPOORRTTIINNGG - Porting ccaallllbbaacckk consists in first porting the vvaaccaallll and - ttrraammppoolliinnee packages, then choosing a CPU register for - passing the closure from ttrraammppoolliinnee to vvaaccaallll. This - - - - 14 January 2001 3 - - - - - -CALLBACK(3) CALLBACK(3) - - - register is normally the register designated by - STATIC_CHAIN_REGNUM in the gcc source, file gcc-2.7.2/con- - fig/_c_p_u/_c_p_u.h. - - -AAUUTTHHOORR - Bruno Haible - - -AACCKKNNOOWWLLEEDDGGEEMMEENNTTSS - Many ideas were cribbed from the gcc source. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 14 January 2001 4 - - DELETED ffcall/callback/configure Index: ffcall/callback/configure ================================================================== --- ffcall/callback/configure +++ /dev/null @@ -1,8970 +0,0 @@ -#! /bin/sh -# Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.59. -# -# Copyright (C) 2003 Free Software Foundation, Inc. -# This configure script is free software; the Free Software Foundation -# gives unlimited permission to copy, distribute and modify it. -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## - -# Be Bourne compatible -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' -elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then - set -o posix -fi -DUALCASE=1; export DUALCASE # for MKS sh - -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - - -# Work around bugs in pre-3.0 UWIN ksh. -$as_unset ENV MAIL MAILPATH -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -for as_var in \ - LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ - LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ - LC_TELEPHONE LC_TIME -do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var - else - $as_unset $as_var - fi -done - -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - - -# Name of the executable. -as_me=`$as_basename "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)$' \| \ - . : '\(.\)' 2>/dev/null || -echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } - /^X\/\(\/\/\)$/{ s//\1/; q; } - /^X\/\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - - -# PATH needs CR, and LINENO needs CR and PATH. -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" || { - # Find who we are. Look in the path if we contain no path at all - # relative or not. - case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done - - ;; - esac - # We did not find ourselves, most probably we were run as `sh COMMAND' - # in which case we are not to be found in the path. - if test "x$as_myself" = x; then - as_myself=$0 - fi - if test ! -f "$as_myself"; then - { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2 - { (exit 1); exit 1; }; } - fi - case $CONFIG_SHELL in - '') - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for as_base in sh bash ksh sh5; do - case $as_dir in - /*) - if ("$as_dir/$as_base" -c ' - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then - $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } - $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } - CONFIG_SHELL=$as_dir/$as_base - export CONFIG_SHELL - exec "$CONFIG_SHELL" "$0" ${1+"$@"} - fi;; - esac - done -done -;; - esac - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line before each line; the second 'sed' does the real - # work. The second script uses 'N' to pair each line-number line - # with the numbered line, and appends trailing '-' during - # substitution so that $LINENO is not a special case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) - sed '=' <$as_myself | - sed ' - N - s,$,-, - : loop - s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, - t loop - s,-$,, - s,^['$as_cr_digits']*\n,, - ' >$as_me.lineno && - chmod +x $as_me.lineno || - { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensible to this). - . ./$as_me.lineno - # Exit status is that of the last command. - exit -} - - -case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in - *c*,-n*) ECHO_N= ECHO_C=' -' ECHO_T=' ' ;; - *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; - *) ECHO_N= ECHO_C='\c' ECHO_T= ;; -esac - -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -rm -f conf$$ conf$$.exe conf$$.file -echo >conf$$.file -if ln -s conf$$.file conf$$ 2>/dev/null; then - # We could just check for DJGPP; but this test a) works b) is more generic - # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). - if test -f conf$$.exe; then - # Don't use ln at all; we don't have any links - as_ln_s='cp -p' - else - as_ln_s='ln -s' - fi -elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.file - -if mkdir -p . 2>/dev/null; then - as_mkdir_p=: -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -as_executable_p="test -f" - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -# IFS -# We need space, tab and new line, in precisely that order. -as_nl=' -' -IFS=" $as_nl" - -# CDPATH. -$as_unset CDPATH - - -# Find the correct PATH separator. Usually this is `:', but -# DJGPP uses `;' like DOS. -if test "X${PATH_SEPARATOR+set}" != Xset; then - UNAME=${UNAME-`uname 2>/dev/null`} - case X$UNAME in - *-DOS) lt_cv_sys_path_separator=';' ;; - *) lt_cv_sys_path_separator=':' ;; - esac - PATH_SEPARATOR=$lt_cv_sys_path_separator -fi - - -# Check that we are running under the correct shell. -SHELL=${CONFIG_SHELL-/bin/sh} - -case X$ECHO in -X*--fallback-echo) - # Remove one level of quotation (which was required for Make). - ECHO=`echo "$ECHO" | sed 's,\\\\\$\\$0,'$0','` - ;; -esac - -echo=${ECHO-echo} -if test "X$1" = X--no-reexec; then - # Discard the --no-reexec flag, and continue. - shift -elif test "X$1" = X--fallback-echo; then - # Avoid inline document here, it may be left over - : -elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then - # Yippee, $echo works! - : -else - # Restart under the correct shell. - exec $SHELL "$0" --no-reexec ${1+"$@"} -fi - -if test "X$1" = X--fallback-echo; then - # used as fallback echo - shift - cat </dev/null && - echo_test_string="`eval $cmd`" && - (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null - then - break - fi - done -fi - -if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - : -else - # The Solaris, AIX, and Digital Unix default echo programs unquote - # backslashes. This makes it impossible to quote backslashes using - # echo "$something" | sed 's/\\/\\\\/g' - # - # So, first we look for a working echo in the user's PATH. - - IFS="${IFS= }"; save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for dir in $PATH /usr/ucb; do - if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && - test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - echo="$dir/echo" - break - fi - done - IFS="$save_ifs" - - if test "X$echo" = Xecho; then - # We didn't find a better echo, so look for alternatives. - if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - # This shell has a builtin print -r that does the trick. - echo='print -r' - elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) && - test "X$CONFIG_SHELL" != X/bin/ksh; then - # If we have ksh, try running configure again with it. - ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} - export ORIGINAL_CONFIG_SHELL - CONFIG_SHELL=/bin/ksh - export CONFIG_SHELL - exec $CONFIG_SHELL "$0" --no-reexec ${1+"$@"} - else - # Try using printf. - echo='printf %s\n' - if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - # Cool, printf works - : - elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` && - test "X$echo_testing_string" = 'X\t' && - echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL - export CONFIG_SHELL - SHELL="$CONFIG_SHELL" - export SHELL - echo="$CONFIG_SHELL $0 --fallback-echo" - elif echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` && - test "X$echo_testing_string" = 'X\t' && - echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - echo="$CONFIG_SHELL $0 --fallback-echo" - else - # maybe with a smaller string... - prev=: - - for cmd in 'echo test' 'sed 2q "$0"' 'sed 10q "$0"' 'sed 20q "$0"' 'sed 50q "$0"'; do - if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null - then - break - fi - prev="$cmd" - done - - if test "$prev" != 'sed 50q "$0"'; then - echo_test_string=`eval $prev` - export echo_test_string - exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "$0" ${1+"$@"} - else - # Oops. We lost completely, so just stick with echo. - echo=echo - fi - fi - fi - fi -fi -fi - -# Copy echo and quote the copy suitably for passing to libtool from -# the Makefile, instead of quoting the original, which is used later. -ECHO=$echo -if test "X$ECHO" = "X$CONFIG_SHELL $0 --fallback-echo"; then - ECHO="$CONFIG_SHELL \\\$\$0 --fallback-echo" -fi - - - -# Name of the host. -# hostname on some systems (SVR3.2, Linux) returns a bogus exit status, -# so uname gets run too. -ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` - -exec 6>&1 - -# -# Initializations. -# -ac_default_prefix=/usr/local -ac_config_libobj_dir=. -cross_compiling=no -subdirs= -MFLAGS= -MAKEFLAGS= -SHELL=${CONFIG_SHELL-/bin/sh} - -# Maximum number of lines to put in a shell here document. -# This variable seems obsolete. It should probably be removed, and -# only ac_max_sed_lines should be used. -: ${ac_max_here_lines=38} - -# Identity of this package. -PACKAGE_NAME= -PACKAGE_TARNAME= -PACKAGE_VERSION= -PACKAGE_STRING= -PACKAGE_BUGREPORT= - -ac_unique_file="trampoline_r/trampoline_r.h.in" -# Factoring default headers for most tests. -ac_includes_default="\ -#include -#if HAVE_SYS_TYPES_H -# include -#endif -#if HAVE_SYS_STAT_H -# include -#endif -#if STDC_HEADERS -# include -# include -#else -# if HAVE_STDLIB_H -# include -# endif -#endif -#if HAVE_STRING_H -# if !STDC_HEADERS && HAVE_MEMORY_H -# include -# endif -# include -#endif -#if HAVE_STRINGS_H -# include -#endif -#if HAVE_INTTYPES_H -# include -#else -# if HAVE_STDINT_H -# include -# endif -#endif -#if HAVE_UNISTD_H -# include -#endif" - -ac_subdirs_all="$ac_subdirs_all vacall_r trampoline_r" -ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP EGREP CC_GCC GCC_X_NONE RANLIB SET_MAKE INSTALL INSTALL_PROGRAM INSTALL_DATA CP LN LN_S build build_cpu build_vendor build_os host host_cpu host_vendor host_os ECHO ac_ct_RANLIB STRIP ac_ct_STRIP LIBTOOL subdirs LIBOBJS LTLIBOBJS' -ac_subst_files='' - -# Initialize some variables set by options. -ac_init_help= -ac_init_version=false -# The variables have the same names as the options, with -# dashes changed to underlines. -cache_file=/dev/null -exec_prefix=NONE -no_create= -no_recursion= -prefix=NONE -program_prefix=NONE -program_suffix=NONE -program_transform_name=s,x,x, -silent= -site= -srcdir= -verbose= -x_includes=NONE -x_libraries=NONE - -# Installation directory options. -# These are left unexpanded so users can "make install exec_prefix=/foo" -# and all the variables that are supposed to be based on exec_prefix -# by default will actually change. -# Use braces instead of parens because sh, perl, etc. also accept them. -bindir='${exec_prefix}/bin' -sbindir='${exec_prefix}/sbin' -libexecdir='${exec_prefix}/libexec' -datadir='${prefix}/share' -sysconfdir='${prefix}/etc' -sharedstatedir='${prefix}/com' -localstatedir='${prefix}/var' -libdir='${exec_prefix}/lib' -includedir='${prefix}/include' -oldincludedir='/usr/include' -infodir='${prefix}/info' -mandir='${prefix}/man' - -ac_prev= -for ac_option -do - # If the previous option needs an argument, assign it. - if test -n "$ac_prev"; then - eval "$ac_prev=\$ac_option" - ac_prev= - continue - fi - - ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'` - - # Accept the important Cygnus configure options, so we can diagnose typos. - - case $ac_option in - - -bindir | --bindir | --bindi | --bind | --bin | --bi) - ac_prev=bindir ;; - -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) - bindir=$ac_optarg ;; - - -build | --build | --buil | --bui | --bu) - ac_prev=build_alias ;; - -build=* | --build=* | --buil=* | --bui=* | --bu=*) - build_alias=$ac_optarg ;; - - -cache-file | --cache-file | --cache-fil | --cache-fi \ - | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) - ac_prev=cache_file ;; - -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ - | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) - cache_file=$ac_optarg ;; - - --config-cache | -C) - cache_file=config.cache ;; - - -datadir | --datadir | --datadi | --datad | --data | --dat | --da) - ac_prev=datadir ;; - -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \ - | --da=*) - datadir=$ac_optarg ;; - - -disable-* | --disable-*) - ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid feature name: $ac_feature" >&2 - { (exit 1); exit 1; }; } - ac_feature=`echo $ac_feature | sed 's/-/_/g'` - eval "enable_$ac_feature=no" ;; - - -enable-* | --enable-*) - ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid feature name: $ac_feature" >&2 - { (exit 1); exit 1; }; } - ac_feature=`echo $ac_feature | sed 's/-/_/g'` - case $ac_option in - *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; - *) ac_optarg=yes ;; - esac - eval "enable_$ac_feature='$ac_optarg'" ;; - - -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ - | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ - | --exec | --exe | --ex) - ac_prev=exec_prefix ;; - -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ - | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ - | --exec=* | --exe=* | --ex=*) - exec_prefix=$ac_optarg ;; - - -gas | --gas | --ga | --g) - # Obsolete; use --with-gas. - with_gas=yes ;; - - -help | --help | --hel | --he | -h) - ac_init_help=long ;; - -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) - ac_init_help=recursive ;; - -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) - ac_init_help=short ;; - - -host | --host | --hos | --ho) - ac_prev=host_alias ;; - -host=* | --host=* | --hos=* | --ho=*) - host_alias=$ac_optarg ;; - - -includedir | --includedir | --includedi | --included | --include \ - | --includ | --inclu | --incl | --inc) - ac_prev=includedir ;; - -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ - | --includ=* | --inclu=* | --incl=* | --inc=*) - includedir=$ac_optarg ;; - - -infodir | --infodir | --infodi | --infod | --info | --inf) - ac_prev=infodir ;; - -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) - infodir=$ac_optarg ;; - - -libdir | --libdir | --libdi | --libd) - ac_prev=libdir ;; - -libdir=* | --libdir=* | --libdi=* | --libd=*) - libdir=$ac_optarg ;; - - -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ - | --libexe | --libex | --libe) - ac_prev=libexecdir ;; - -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ - | --libexe=* | --libex=* | --libe=*) - libexecdir=$ac_optarg ;; - - -localstatedir | --localstatedir | --localstatedi | --localstated \ - | --localstate | --localstat | --localsta | --localst \ - | --locals | --local | --loca | --loc | --lo) - ac_prev=localstatedir ;; - -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ - | --localstate=* | --localstat=* | --localsta=* | --localst=* \ - | --locals=* | --local=* | --loca=* | --loc=* | --lo=*) - localstatedir=$ac_optarg ;; - - -mandir | --mandir | --mandi | --mand | --man | --ma | --m) - ac_prev=mandir ;; - -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) - mandir=$ac_optarg ;; - - -nfp | --nfp | --nf) - # Obsolete; use --without-fp. - with_fp=no ;; - - -no-create | --no-create | --no-creat | --no-crea | --no-cre \ - | --no-cr | --no-c | -n) - no_create=yes ;; - - -no-recursion | --no-recursion | --no-recursio | --no-recursi \ - | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) - no_recursion=yes ;; - - -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ - | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ - | --oldin | --oldi | --old | --ol | --o) - ac_prev=oldincludedir ;; - -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ - | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ - | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) - oldincludedir=$ac_optarg ;; - - -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) - ac_prev=prefix ;; - -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) - prefix=$ac_optarg ;; - - -program-prefix | --program-prefix | --program-prefi | --program-pref \ - | --program-pre | --program-pr | --program-p) - ac_prev=program_prefix ;; - -program-prefix=* | --program-prefix=* | --program-prefi=* \ - | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) - program_prefix=$ac_optarg ;; - - -program-suffix | --program-suffix | --program-suffi | --program-suff \ - | --program-suf | --program-su | --program-s) - ac_prev=program_suffix ;; - -program-suffix=* | --program-suffix=* | --program-suffi=* \ - | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) - program_suffix=$ac_optarg ;; - - -program-transform-name | --program-transform-name \ - | --program-transform-nam | --program-transform-na \ - | --program-transform-n | --program-transform- \ - | --program-transform | --program-transfor \ - | --program-transfo | --program-transf \ - | --program-trans | --program-tran \ - | --progr-tra | --program-tr | --program-t) - ac_prev=program_transform_name ;; - -program-transform-name=* | --program-transform-name=* \ - | --program-transform-nam=* | --program-transform-na=* \ - | --program-transform-n=* | --program-transform-=* \ - | --program-transform=* | --program-transfor=* \ - | --program-transfo=* | --program-transf=* \ - | --program-trans=* | --program-tran=* \ - | --progr-tra=* | --program-tr=* | --program-t=*) - program_transform_name=$ac_optarg ;; - - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - silent=yes ;; - - -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) - ac_prev=sbindir ;; - -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ - | --sbi=* | --sb=*) - sbindir=$ac_optarg ;; - - -sharedstatedir | --sharedstatedir | --sharedstatedi \ - | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ - | --sharedst | --shareds | --shared | --share | --shar \ - | --sha | --sh) - ac_prev=sharedstatedir ;; - -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ - | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ - | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ - | --sha=* | --sh=*) - sharedstatedir=$ac_optarg ;; - - -site | --site | --sit) - ac_prev=site ;; - -site=* | --site=* | --sit=*) - site=$ac_optarg ;; - - -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) - ac_prev=srcdir ;; - -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) - srcdir=$ac_optarg ;; - - -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ - | --syscon | --sysco | --sysc | --sys | --sy) - ac_prev=sysconfdir ;; - -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ - | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) - sysconfdir=$ac_optarg ;; - - -target | --target | --targe | --targ | --tar | --ta | --t) - ac_prev=target_alias ;; - -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) - target_alias=$ac_optarg ;; - - -v | -verbose | --verbose | --verbos | --verbo | --verb) - verbose=yes ;; - - -version | --version | --versio | --versi | --vers | -V) - ac_init_version=: ;; - - -with-* | --with-*) - ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid package name: $ac_package" >&2 - { (exit 1); exit 1; }; } - ac_package=`echo $ac_package| sed 's/-/_/g'` - case $ac_option in - *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; - *) ac_optarg=yes ;; - esac - eval "with_$ac_package='$ac_optarg'" ;; - - -without-* | --without-*) - ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid package name: $ac_package" >&2 - { (exit 1); exit 1; }; } - ac_package=`echo $ac_package | sed 's/-/_/g'` - eval "with_$ac_package=no" ;; - - --x) - # Obsolete; use --with-x. - with_x=yes ;; - - -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ - | --x-incl | --x-inc | --x-in | --x-i) - ac_prev=x_includes ;; - -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ - | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) - x_includes=$ac_optarg ;; - - -x-libraries | --x-libraries | --x-librarie | --x-librari \ - | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) - ac_prev=x_libraries ;; - -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ - | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) - x_libraries=$ac_optarg ;; - - -*) { echo "$as_me: error: unrecognized option: $ac_option -Try \`$0 --help' for more information." >&2 - { (exit 1); exit 1; }; } - ;; - - *=*) - ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` - # Reject names that are not valid shell variable names. - expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid variable name: $ac_envvar" >&2 - { (exit 1); exit 1; }; } - ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` - eval "$ac_envvar='$ac_optarg'" - export $ac_envvar ;; - - *) - # FIXME: should be removed in autoconf 3.0. - echo "$as_me: WARNING: you should use --build, --host, --target" >&2 - expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && - echo "$as_me: WARNING: invalid host type: $ac_option" >&2 - : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option} - ;; - - esac -done - -if test -n "$ac_prev"; then - ac_option=--`echo $ac_prev | sed 's/_/-/g'` - { echo "$as_me: error: missing argument to $ac_option" >&2 - { (exit 1); exit 1; }; } -fi - -# Be sure to have absolute paths. -for ac_var in exec_prefix prefix -do - eval ac_val=$`echo $ac_var` - case $ac_val in - [\\/$]* | ?:[\\/]* | NONE | '' ) ;; - *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 - { (exit 1); exit 1; }; };; - esac -done - -# Be sure to have absolute paths. -for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \ - localstatedir libdir includedir oldincludedir infodir mandir -do - eval ac_val=$`echo $ac_var` - case $ac_val in - [\\/$]* | ?:[\\/]* ) ;; - *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 - { (exit 1); exit 1; }; };; - esac -done - -# There might be people who depend on the old broken behavior: `$host' -# used to hold the argument of --host etc. -# FIXME: To remove some day. -build=$build_alias -host=$host_alias -target=$target_alias - -# FIXME: To remove some day. -if test "x$host_alias" != x; then - if test "x$build_alias" = x; then - cross_compiling=maybe - echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host. - If a cross compiler is detected then cross compile mode will be used." >&2 - elif test "x$build_alias" != "x$host_alias"; then - cross_compiling=yes - fi -fi - -ac_tool_prefix= -test -n "$host_alias" && ac_tool_prefix=$host_alias- - -test "$silent" = yes && exec 6>/dev/null - - -# Find the source files, if location was not specified. -if test -z "$srcdir"; then - ac_srcdir_defaulted=yes - # Try the directory containing this script, then its parent. - ac_confdir=`(dirname "$0") 2>/dev/null || -$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$0" : 'X\(//\)[^/]' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$0" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - srcdir=$ac_confdir - if test ! -r $srcdir/$ac_unique_file; then - srcdir=.. - fi -else - ac_srcdir_defaulted=no -fi -if test ! -r $srcdir/$ac_unique_file; then - if test "$ac_srcdir_defaulted" = yes; then - { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2 - { (exit 1); exit 1; }; } - else - { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 - { (exit 1); exit 1; }; } - fi -fi -(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null || - { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2 - { (exit 1); exit 1; }; } -srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'` -ac_env_build_alias_set=${build_alias+set} -ac_env_build_alias_value=$build_alias -ac_cv_env_build_alias_set=${build_alias+set} -ac_cv_env_build_alias_value=$build_alias -ac_env_host_alias_set=${host_alias+set} -ac_env_host_alias_value=$host_alias -ac_cv_env_host_alias_set=${host_alias+set} -ac_cv_env_host_alias_value=$host_alias -ac_env_target_alias_set=${target_alias+set} -ac_env_target_alias_value=$target_alias -ac_cv_env_target_alias_set=${target_alias+set} -ac_cv_env_target_alias_value=$target_alias -ac_env_CC_set=${CC+set} -ac_env_CC_value=$CC -ac_cv_env_CC_set=${CC+set} -ac_cv_env_CC_value=$CC -ac_env_CFLAGS_set=${CFLAGS+set} -ac_env_CFLAGS_value=$CFLAGS -ac_cv_env_CFLAGS_set=${CFLAGS+set} -ac_cv_env_CFLAGS_value=$CFLAGS -ac_env_LDFLAGS_set=${LDFLAGS+set} -ac_env_LDFLAGS_value=$LDFLAGS -ac_cv_env_LDFLAGS_set=${LDFLAGS+set} -ac_cv_env_LDFLAGS_value=$LDFLAGS -ac_env_CPPFLAGS_set=${CPPFLAGS+set} -ac_env_CPPFLAGS_value=$CPPFLAGS -ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set} -ac_cv_env_CPPFLAGS_value=$CPPFLAGS -ac_env_CPP_set=${CPP+set} -ac_env_CPP_value=$CPP -ac_cv_env_CPP_set=${CPP+set} -ac_cv_env_CPP_value=$CPP - -# -# Report the --help message. -# -if test "$ac_init_help" = "long"; then - # Omit some internal or obsolete options to make the list less imposing. - # This message is too long to be a string in the A/UX 3.1 sh. - cat <<_ACEOF -\`configure' configures this package to adapt to many kinds of systems. - -Usage: $0 [OPTION]... [VAR=VALUE]... - -To assign environment variables (e.g., CC, CFLAGS...), specify them as -VAR=VALUE. See below for descriptions of some of the useful variables. - -Defaults for the options are specified in brackets. - -Configuration: - -h, --help display this help and exit - --help=short display options specific to this package - --help=recursive display the short help of all the included packages - -V, --version display version information and exit - -q, --quiet, --silent do not print \`checking...' messages - --cache-file=FILE cache test results in FILE [disabled] - -C, --config-cache alias for \`--cache-file=config.cache' - -n, --no-create do not create output files - --srcdir=DIR find the sources in DIR [configure dir or \`..'] - -_ACEOF - - cat <<_ACEOF -Installation directories: - --prefix=PREFIX install architecture-independent files in PREFIX - [$ac_default_prefix] - --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX - [PREFIX] - -By default, \`make install' will install all the files in -\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify -an installation prefix other than \`$ac_default_prefix' using \`--prefix', -for instance \`--prefix=\$HOME'. - -For better control, use the options below. - -Fine tuning of the installation directories: - --bindir=DIR user executables [EPREFIX/bin] - --sbindir=DIR system admin executables [EPREFIX/sbin] - --libexecdir=DIR program executables [EPREFIX/libexec] - --datadir=DIR read-only architecture-independent data [PREFIX/share] - --sysconfdir=DIR read-only single-machine data [PREFIX/etc] - --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] - --localstatedir=DIR modifiable single-machine data [PREFIX/var] - --libdir=DIR object code libraries [EPREFIX/lib] - --includedir=DIR C header files [PREFIX/include] - --oldincludedir=DIR C header files for non-gcc [/usr/include] - --infodir=DIR info documentation [PREFIX/info] - --mandir=DIR man documentation [PREFIX/man] -_ACEOF - - cat <<\_ACEOF - -System types: - --build=BUILD configure for building on BUILD [guessed] - --host=HOST cross-compile to build programs to run on HOST [BUILD] -_ACEOF -fi - -if test -n "$ac_init_help"; then - - cat <<\_ACEOF - -Optional Features: - --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) - --enable-FEATURE[=ARG] include FEATURE [ARG=yes] - --enable-shared=PKGS build shared libraries default=no - --enable-static=PKGS build static libraries default=yes - --enable-fast-install=PKGS optimize for fast installation default=yes - --disable-libtool-lock avoid locking (might break parallel builds) - -Optional Packages: - --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] - --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) - --with-gnu-ld assume the C compiler uses GNU ld default=no - --with-pic try to use only PIC/non-PIC objects default=use both - -Some influential environment variables: - CC C compiler command - CFLAGS C compiler flags - LDFLAGS linker flags, e.g. -L if you have libraries in a - nonstandard directory - CPPFLAGS C/C++ preprocessor flags, e.g. -I if you have - headers in a nonstandard directory - CPP C preprocessor - -Use these variables to override the choices made by `configure' or to help -it to find libraries and programs with nonstandard names/locations. - -_ACEOF -fi - -if test "$ac_init_help" = "recursive"; then - # If there are subdirs, report their specific --help. - ac_popdir=`pwd` - for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue - test -d $ac_dir || continue - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac - - cd $ac_dir - # Check for guested configure; otherwise get Cygnus style configure. - if test -f $ac_srcdir/configure.gnu; then - echo - $SHELL $ac_srcdir/configure.gnu --help=recursive - elif test -f $ac_srcdir/configure; then - echo - $SHELL $ac_srcdir/configure --help=recursive - elif test -f $ac_srcdir/configure.ac || - test -f $ac_srcdir/configure.in; then - echo - $ac_configure --help - else - echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 - fi - cd $ac_popdir - done -fi - -test -n "$ac_init_help" && exit 0 -if $ac_init_version; then - cat <<\_ACEOF - -Copyright (C) 2003 Free Software Foundation, Inc. -This configure script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it. -_ACEOF - exit 0 -fi -exec 5>config.log -cat >&5 <<_ACEOF -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. - -It was created by $as_me, which was -generated by GNU Autoconf 2.59. Invocation command line was - - $ $0 $@ - -_ACEOF -{ -cat <<_ASUNAME -## --------- ## -## Platform. ## -## --------- ## - -hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` -uname -m = `(uname -m) 2>/dev/null || echo unknown` -uname -r = `(uname -r) 2>/dev/null || echo unknown` -uname -s = `(uname -s) 2>/dev/null || echo unknown` -uname -v = `(uname -v) 2>/dev/null || echo unknown` - -/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` -/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` - -/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` -/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` -/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` -hostinfo = `(hostinfo) 2>/dev/null || echo unknown` -/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` -/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` -/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` - -_ASUNAME - -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - echo "PATH: $as_dir" -done - -} >&5 - -cat >&5 <<_ACEOF - - -## ----------- ## -## Core tests. ## -## ----------- ## - -_ACEOF - - -# Keep a trace of the command line. -# Strip out --no-create and --no-recursion so they do not pile up. -# Strip out --silent because we don't want to record it for future runs. -# Also quote any args containing shell meta-characters. -# Make two passes to allow for proper duplicate-argument suppression. -ac_configure_args= -ac_configure_args0= -ac_configure_args1= -ac_sep= -ac_must_keep_next=false -for ac_pass in 1 2 -do - for ac_arg - do - case $ac_arg in - -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - continue ;; - *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) - ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - case $ac_pass in - 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;; - 2) - ac_configure_args1="$ac_configure_args1 '$ac_arg'" - if test $ac_must_keep_next = true; then - ac_must_keep_next=false # Got value, back to normal. - else - case $ac_arg in - *=* | --config-cache | -C | -disable-* | --disable-* \ - | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ - | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ - | -with-* | --with-* | -without-* | --without-* | --x) - case "$ac_configure_args0 " in - "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; - esac - ;; - -* ) ac_must_keep_next=true ;; - esac - fi - ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'" - # Get rid of the leading space. - ac_sep=" " - ;; - esac - done -done -$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; } -$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; } - -# When interrupted or exit'd, cleanup temporary files, and complete -# config.log. We remove comments because anyway the quotes in there -# would cause problems or look ugly. -# WARNING: Be sure not to use single quotes in there, as some shells, -# such as our DU 5.0 friend, will then `close' the trap. -trap 'exit_status=$? - # Save into config.log some information that might help in debugging. - { - echo - - cat <<\_ASBOX -## ---------------- ## -## Cache variables. ## -## ---------------- ## -_ASBOX - echo - # The following way of writing the cache mishandles newlines in values, -{ - (set) 2>&1 | - case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in - *ac_space=\ *) - sed -n \ - "s/'"'"'/'"'"'\\\\'"'"''"'"'/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p" - ;; - *) - sed -n \ - "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" - ;; - esac; -} - echo - - cat <<\_ASBOX -## ----------------- ## -## Output variables. ## -## ----------------- ## -_ASBOX - echo - for ac_var in $ac_subst_vars - do - eval ac_val=$`echo $ac_var` - echo "$ac_var='"'"'$ac_val'"'"'" - done | sort - echo - - if test -n "$ac_subst_files"; then - cat <<\_ASBOX -## ------------- ## -## Output files. ## -## ------------- ## -_ASBOX - echo - for ac_var in $ac_subst_files - do - eval ac_val=$`echo $ac_var` - echo "$ac_var='"'"'$ac_val'"'"'" - done | sort - echo - fi - - if test -s confdefs.h; then - cat <<\_ASBOX -## ----------- ## -## confdefs.h. ## -## ----------- ## -_ASBOX - echo - sed "/^$/d" confdefs.h | sort - echo - fi - test "$ac_signal" != 0 && - echo "$as_me: caught signal $ac_signal" - echo "$as_me: exit $exit_status" - } >&5 - rm -f core *.core && - rm -rf conftest* confdefs* conf$$* $ac_clean_files && - exit $exit_status - ' 0 -for ac_signal in 1 2 13 15; do - trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal -done -ac_signal=0 - -# confdefs.h avoids OS command line length limits that DEFS can exceed. -rm -rf conftest* confdefs.h -# AIX cpp loses on an empty file, so make sure it contains at least a newline. -echo >confdefs.h - -# Predefined preprocessor variables. - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_NAME "$PACKAGE_NAME" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_TARNAME "$PACKAGE_TARNAME" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_VERSION "$PACKAGE_VERSION" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_STRING "$PACKAGE_STRING" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" -_ACEOF - - -# Let the site file select an alternate cache file if it wants to. -# Prefer explicitly selected file to automatically selected ones. -if test -z "$CONFIG_SITE"; then - if test "x$prefix" != xNONE; then - CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" - else - CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" - fi -fi -for ac_site_file in $CONFIG_SITE; do - if test -r "$ac_site_file"; then - { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5 -echo "$as_me: loading site script $ac_site_file" >&6;} - sed 's/^/| /' "$ac_site_file" >&5 - . "$ac_site_file" - fi -done - -if test -r "$cache_file"; then - # Some versions of bash will fail to source /dev/null (special - # files actually), so we avoid doing that. - if test -f "$cache_file"; then - { echo "$as_me:$LINENO: loading cache $cache_file" >&5 -echo "$as_me: loading cache $cache_file" >&6;} - case $cache_file in - [\\/]* | ?:[\\/]* ) . $cache_file;; - *) . ./$cache_file;; - esac - fi -else - { echo "$as_me:$LINENO: creating cache $cache_file" >&5 -echo "$as_me: creating cache $cache_file" >&6;} - >$cache_file -fi - -# Check that the precious variables saved in the cache have kept the same -# value. -ac_cache_corrupted=false -for ac_var in `(set) 2>&1 | - sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do - eval ac_old_set=\$ac_cv_env_${ac_var}_set - eval ac_new_set=\$ac_env_${ac_var}_set - eval ac_old_val="\$ac_cv_env_${ac_var}_value" - eval ac_new_val="\$ac_env_${ac_var}_value" - case $ac_old_set,$ac_new_set in - set,) - { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 -echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,set) - { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5 -echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,);; - *) - if test "x$ac_old_val" != "x$ac_new_val"; then - { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 -echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} - { echo "$as_me:$LINENO: former value: $ac_old_val" >&5 -echo "$as_me: former value: $ac_old_val" >&2;} - { echo "$as_me:$LINENO: current value: $ac_new_val" >&5 -echo "$as_me: current value: $ac_new_val" >&2;} - ac_cache_corrupted=: - fi;; - esac - # Pass precious variables to config.status. - if test "$ac_new_set" = set; then - case $ac_new_val in - *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) - ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; - *) ac_arg=$ac_var=$ac_new_val ;; - esac - case " $ac_configure_args " in - *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. - *) ac_configure_args="$ac_configure_args '$ac_arg'" ;; - esac - fi -done -if $ac_cache_corrupted; then - { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5 -echo "$as_me: error: changes in the environment can compromise the build" >&2;} - { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 -echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;} - { (exit 1); exit 1; }; } -fi - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - - - - - - - - - - - - - - - - - - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. -set dummy ${ac_tool_prefix}gcc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}gcc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$ac_cv_prog_CC"; then - ac_ct_CC=$CC - # Extract the first word of "gcc", so it can be a program name with args. -set dummy gcc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="gcc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - CC=$ac_ct_CC -else - CC="$ac_cv_prog_CC" -fi - -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. -set dummy ${ac_tool_prefix}cc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$ac_cv_prog_CC"; then - ac_ct_CC=$CC - # Extract the first word of "cc", so it can be a program name with args. -set dummy cc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - CC=$ac_ct_CC -else - CC="$ac_cv_prog_CC" -fi - -fi -if test -z "$CC"; then - # Extract the first word of "cc", so it can be a program name with args. -set dummy cc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else - ac_prog_rejected=no -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then - ac_prog_rejected=yes - continue - fi - ac_cv_prog_CC="cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -if test $ac_prog_rejected = yes; then - # We found a bogon in the path, so make sure we never use it. - set dummy $ac_cv_prog_CC - shift - if test $# != 0; then - # We chose a different compiler from the bogus one. - # However, it has the same basename, so the bogon will be chosen - # first if we set CC to just the basename; use the full file name. - shift - ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" - fi -fi -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - for ac_prog in cl - do - # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="$ac_tool_prefix$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - test -n "$CC" && break - done -fi -if test -z "$CC"; then - ac_ct_CC=$CC - for ac_prog in cl -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - test -n "$ac_ct_CC" && break -done - - CC=$ac_ct_CC -fi - -fi - - -test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH -See \`config.log' for more details." >&5 -echo "$as_me: error: no acceptable C compiler found in \$PATH -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } - -# Provide some information about the compiler. -echo "$as_me:$LINENO:" \ - "checking for C compiler version" >&5 -ac_compiler=`set X $ac_compile; echo $2` -{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version &5\"") >&5 - (eval $ac_compiler --version &5) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v &5\"") >&5 - (eval $ac_compiler -v &5) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V &5\"") >&5 - (eval $ac_compiler -V &5) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files a.out a.exe b.out" -# Try to create an executable without -o first, disregard a.out. -# It will help us diagnose broken compilers, and finding out an intuition -# of exeext. -echo "$as_me:$LINENO: checking for C compiler default output file name" >&5 -echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6 -ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` -if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5 - (eval $ac_link_default) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - # Find the output, starting from the most likely. This scheme is -# not robust to junk in `.', hence go to wildcards (a.*) only as a last -# resort. - -# Be careful to initialize this variable, since it used to be cached. -# Otherwise an old cache value of `no' led to `EXEEXT = no' in a Makefile. -ac_cv_exeext= -# b.out is created by i960 compilers. -for ac_file in a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out -do - test -f "$ac_file" || continue - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) - ;; - conftest.$ac_ext ) - # This is the source file. - ;; - [ab].out ) - # We found the default executable, but exeext='' is most - # certainly right. - break;; - *.* ) - ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - # FIXME: I believe we export ac_cv_exeext for Libtool, - # but it would be cool to find out if it's true. Does anybody - # maintain Libtool? --akim. - export ac_cv_exeext - break;; - * ) - break;; - esac -done -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -{ { echo "$as_me:$LINENO: error: C compiler cannot create executables -See \`config.log' for more details." >&5 -echo "$as_me: error: C compiler cannot create executables -See \`config.log' for more details." >&2;} - { (exit 77); exit 77; }; } -fi - -ac_exeext=$ac_cv_exeext -echo "$as_me:$LINENO: result: $ac_file" >&5 -echo "${ECHO_T}$ac_file" >&6 - -# Check the compiler produces executables we can run. If not, either -# the compiler is broken, or we cross compile. -echo "$as_me:$LINENO: checking whether the C compiler works" >&5 -echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6 -# FIXME: These cross compiler hacks should be removed for Autoconf 3.0 -# If not cross compiling, check that we can run a simple program. -if test "$cross_compiling" != yes; then - if { ac_try='./$ac_file' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cross_compiling=no - else - if test "$cross_compiling" = maybe; then - cross_compiling=yes - else - { { echo "$as_me:$LINENO: error: cannot run C compiled programs. -If you meant to cross compile, use \`--host'. -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot run C compiled programs. -If you meant to cross compile, use \`--host'. -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } - fi - fi -fi -echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 - -rm -f a.out a.exe conftest$ac_cv_exeext b.out -ac_clean_files=$ac_clean_files_save -# Check the compiler produces executables we can run. If not, either -# the compiler is broken, or we cross compile. -echo "$as_me:$LINENO: checking whether we are cross compiling" >&5 -echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6 -echo "$as_me:$LINENO: result: $cross_compiling" >&5 -echo "${ECHO_T}$cross_compiling" >&6 - -echo "$as_me:$LINENO: checking for suffix of executables" >&5 -echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6 -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - # If both `conftest.exe' and `conftest' are `present' (well, observable) -# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will -# work properly (i.e., refer to `conftest.exe'), while it won't with -# `rm'. -for ac_file in conftest.exe conftest conftest.*; do - test -f "$ac_file" || continue - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) ;; - *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - export ac_cv_exeext - break;; - * ) break;; - esac -done -else - { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } -fi - -rm -f conftest$ac_cv_exeext -echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5 -echo "${ECHO_T}$ac_cv_exeext" >&6 - -rm -f conftest.$ac_ext -EXEEXT=$ac_cv_exeext -ac_exeext=$EXEEXT -echo "$as_me:$LINENO: checking for suffix of object files" >&5 -echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6 -if test "${ac_cv_objext+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.o conftest.obj -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg ) ;; - *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` - break;; - esac -done -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot compute suffix of object files: cannot compile -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } -fi - -rm -f conftest.$ac_cv_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 -echo "${ECHO_T}$ac_cv_objext" >&6 -OBJEXT=$ac_cv_objext -ac_objext=$OBJEXT -echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 -echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6 -if test "${ac_cv_c_compiler_gnu+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ -#ifndef __GNUC__ - choke me -#endif - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_compiler_gnu=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_compiler_gnu=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -ac_cv_c_compiler_gnu=$ac_compiler_gnu - -fi -echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5 -echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6 -GCC=`test $ac_compiler_gnu = yes && echo yes` -ac_test_CFLAGS=${CFLAGS+set} -ac_save_CFLAGS=$CFLAGS -CFLAGS="-g" -echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 -echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6 -if test "${ac_cv_prog_cc_g+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_prog_cc_g=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_prog_cc_g=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 -echo "${ECHO_T}$ac_cv_prog_cc_g" >&6 -if test "$ac_test_CFLAGS" = set; then - CFLAGS=$ac_save_CFLAGS -elif test $ac_cv_prog_cc_g = yes; then - if test "$GCC" = yes; then - CFLAGS="-g -O2" - else - CFLAGS="-g" - fi -else - if test "$GCC" = yes; then - CFLAGS="-O2" - else - CFLAGS= - fi -fi -echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5 -echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6 -if test "${ac_cv_prog_cc_stdc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_cv_prog_cc_stdc=no -ac_save_CC=$CC -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include -#include -#include -/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ -struct buf { int x; }; -FILE * (*rcsopen) (struct buf *, struct stat *, int); -static char *e (p, i) - char **p; - int i; -{ - return p[i]; -} -static char *f (char * (*g) (char **, int), char **p, ...) -{ - char *s; - va_list v; - va_start (v,p); - s = g (p, va_arg (v,int)); - va_end (v); - return s; -} - -/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has - function prototypes and stuff, but not '\xHH' hex character constants. - These don't provoke an error unfortunately, instead are silently treated - as 'x'. The following induces an error, until -std1 is added to get - proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an - array size at least. It's necessary to write '\x00'==0 to get something - that's true only with -std1. */ -int osf4_cc_array ['\x00' == 0 ? 1 : -1]; - -int test (int i, double x); -struct s1 {int (*f) (int a);}; -struct s2 {int (*f) (double a);}; -int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); -int argc; -char **argv; -int -main () -{ -return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; - ; - return 0; -} -_ACEOF -# Don't try gcc -ansi; that turns off useful extensions and -# breaks some systems' header files. -# AIX -qlanglvl=ansi -# Ultrix and OSF/1 -std1 -# HP-UX 10.20 and later -Ae -# HP-UX older versions -Aa -D_HPUX_SOURCE -# SVR4 -Xc -D__EXTENSIONS__ -for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" -do - CC="$ac_save_CC $ac_arg" - rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_prog_cc_stdc=$ac_arg -break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext -done -rm -f conftest.$ac_ext conftest.$ac_objext -CC=$ac_save_CC - -fi - -case "x$ac_cv_prog_cc_stdc" in - x|xno) - echo "$as_me:$LINENO: result: none needed" >&5 -echo "${ECHO_T}none needed" >&6 ;; - *) - echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5 -echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6 - CC="$CC $ac_cv_prog_cc_stdc" ;; -esac - -# Some people use a C++ compiler to compile C. Since we use `exit', -# in C++ we need to declare it. In case someone uses the same compiler -# for both compiling C and C++ we need to have the C++ compiler decide -# the declaration of exit, since it's the most demanding environment. -cat >conftest.$ac_ext <<_ACEOF -#ifndef __cplusplus - choke me -#endif -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - for ac_declaration in \ - '' \ - 'extern "C" void std::exit (int) throw (); using std::exit;' \ - 'extern "C" void std::exit (int); using std::exit;' \ - 'extern "C" void exit (int) throw ();' \ - 'extern "C" void exit (int);' \ - 'void exit (int);' -do - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_declaration -#include -int -main () -{ -exit (42); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -continue -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_declaration -int -main () -{ -exit (42); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -done -rm -f conftest* -if test -n "$ac_declaration"; then - echo '#ifdef __cplusplus' >>confdefs.h - echo $ac_declaration >>confdefs.h - echo '#endif' >>confdefs.h -fi - -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5 -echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6 -# On Suns, sometimes $CPP names a directory. -if test -n "$CPP" && test -d "$CPP"; then - CPP= -fi -if test -z "$CPP"; then - if test "${ac_cv_prog_CPP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - # Double quotes because CPP needs to be expanded - for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" - do - ac_preproc_ok=false -for ac_c_preproc_warn_flag in '' yes -do - # Use a header file that comes with gcc, so configuring glibc - # with a fresh cross-compiler works. - # Prefer to if __STDC__ is defined, since - # exists even on freestanding compilers. - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#ifdef __STDC__ -# include -#else -# include -#endif - Syntax error -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Broken: fails on valid input. -continue -fi -rm -f conftest.err conftest.$ac_ext - - # OK, works on sane cases. Now check whether non-existent headers - # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - # Broken: success on invalid input. -continue -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Passes both tests. -ac_preproc_ok=: -break -fi -rm -f conftest.err conftest.$ac_ext - -done -# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.err conftest.$ac_ext -if $ac_preproc_ok; then - break -fi - - done - ac_cv_prog_CPP=$CPP - -fi - CPP=$ac_cv_prog_CPP -else - ac_cv_prog_CPP=$CPP -fi -echo "$as_me:$LINENO: result: $CPP" >&5 -echo "${ECHO_T}$CPP" >&6 -ac_preproc_ok=false -for ac_c_preproc_warn_flag in '' yes -do - # Use a header file that comes with gcc, so configuring glibc - # with a fresh cross-compiler works. - # Prefer to if __STDC__ is defined, since - # exists even on freestanding compilers. - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#ifdef __STDC__ -# include -#else -# include -#endif - Syntax error -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Broken: fails on valid input. -continue -fi -rm -f conftest.err conftest.$ac_ext - - # OK, works on sane cases. Now check whether non-existent headers - # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - # Broken: success on invalid input. -continue -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Passes both tests. -ac_preproc_ok=: -break -fi -rm -f conftest.err conftest.$ac_ext - -done -# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.err conftest.$ac_ext -if $ac_preproc_ok; then - : -else - { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details." >&5 -echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } -fi - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - - -echo "$as_me:$LINENO: checking for egrep" >&5 -echo $ECHO_N "checking for egrep... $ECHO_C" >&6 -if test "${ac_cv_prog_egrep+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if echo a | (grep -E '(a|b)') >/dev/null 2>&1 - then ac_cv_prog_egrep='grep -E' - else ac_cv_prog_egrep='egrep' - fi -fi -echo "$as_me:$LINENO: result: $ac_cv_prog_egrep" >&5 -echo "${ECHO_T}$ac_cv_prog_egrep" >&6 - EGREP=$ac_cv_prog_egrep - - -if test $ac_cv_c_compiler_gnu = yes; then - echo "$as_me:$LINENO: checking whether $CC needs -traditional" >&5 -echo $ECHO_N "checking whether $CC needs -traditional... $ECHO_C" >&6 -if test "${ac_cv_prog_gcc_traditional+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_pattern="Autoconf.*'x'" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -Autoconf TIOCGETP -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "$ac_pattern" >/dev/null 2>&1; then - ac_cv_prog_gcc_traditional=yes -else - ac_cv_prog_gcc_traditional=no -fi -rm -f conftest* - - - if test $ac_cv_prog_gcc_traditional = no; then - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -Autoconf TCGETA -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "$ac_pattern" >/dev/null 2>&1; then - ac_cv_prog_gcc_traditional=yes -fi -rm -f conftest* - - fi -fi -echo "$as_me:$LINENO: result: $ac_cv_prog_gcc_traditional" >&5 -echo "${ECHO_T}$ac_cv_prog_gcc_traditional" >&6 - if test $ac_cv_prog_gcc_traditional = yes; then - CC="$CC -traditional" - fi -fi - - -echo "$as_me:$LINENO: checking whether using GNU C" >&5 -echo $ECHO_N "checking whether using GNU C... $ECHO_C" >&6 -if test "${cl_cv_prog_cc_gcc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#ifdef __GNUC__ - yes -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1; then - cl_cv_prog_cc_gcc=yes -else - cl_cv_prog_cc_gcc=no -fi -rm -f conftest* - - -fi -echo "$as_me:$LINENO: result: $cl_cv_prog_cc_gcc" >&5 -echo "${ECHO_T}$cl_cv_prog_cc_gcc" >&6 -if test $cl_cv_prog_cc_gcc = yes; then - CC_GCC=true - GCC_X_NONE='-x none' -else - CC_GCC=false - GCC_X_NONE='' -fi - -# Extract the first word of "ranlib", so it can be a program name with args. -set dummy ranlib; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_RANLIB+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$RANLIB"; then - ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_RANLIB="ranlib" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - - test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB="true" -fi -fi -RANLIB=$ac_cv_prog_RANLIB -if test -n "$RANLIB"; then - echo "$as_me:$LINENO: result: $RANLIB" >&5 -echo "${ECHO_T}$RANLIB" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5 -echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6 -set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,:./+-,___p_,'` -if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.make <<\_ACEOF -all: - @echo 'ac_maketemp="$(MAKE)"' -_ACEOF -# GNU make sometimes prints "make[1]: Entering...", which would confuse us. -eval `${MAKE-make} -f conftest.make 2>/dev/null | grep temp=` -if test -n "$ac_maketemp"; then - eval ac_cv_prog_make_${ac_make}_set=yes -else - eval ac_cv_prog_make_${ac_make}_set=no -fi -rm -f conftest.make -fi -if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 - SET_MAKE= -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 - SET_MAKE="MAKE=${MAKE-make}" -fi - -# Find a good install program. We prefer a C program (faster), -# so one script is as good as another. But avoid the broken or -# incompatible versions: -# SysV /etc/install, /usr/sbin/install -# SunOS /usr/etc/install -# IRIX /sbin/install -# AIX /bin/install -# AFS /usr/afsws/bin/install, which mis-handles nonexistent args -# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" -# ./install, which can be erroneously created by make from ./install.sh. -echo "$as_me:$LINENO: checking for a BSD compatible install" >&5 -echo $ECHO_N "checking for a BSD compatible install... $ECHO_C" >&6 -if test -z "$INSTALL"; then -if test "${cl_cv_path_install+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" - for ac_dir in $PATH; do - # Account for people who put trailing slashes in PATH elements. - case "$ac_dir/" in - /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;; - *) - # OSF1 and SCO ODT 3.0 have their own names for install. - # Don't use installbsd from OSF since it installs stuff as root - # by default. - for ac_prog in ginstall scoinst install; do - if test -f $ac_dir/$ac_prog; then - if test $ac_prog = install && - grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then - # AIX install. It has an incompatible calling convention. - : - else - cl_cv_path_install="$ac_dir/$ac_prog -c" - break 2 - fi - fi - done - ;; - esac - done - IFS="$ac_save_ifs" - # As a last resort, use the absolute pathname of cp. - if test -z "$cl_cv_path_install"; then - cl_cv_path_install="cp" - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" - for ac_dir in $PATH; do - if test -f $ac_dir/cp; then - cl_cv_path_install="$ac_dir/cp" - break - fi - done - IFS="$ac_save_ifs" - fi - -fi - INSTALL="$cl_cv_path_install" -fi -echo "$as_me:$LINENO: result: $INSTALL" >&5 -echo "${ECHO_T}$INSTALL" >&6 -# Use test -z because SunOS4 sh mishandles braces in ${var-val}. -# It thinks the first close brace ends the variable substitution. -test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='$(INSTALL)' -if test -z "$INSTALL_DATA"; then - case "$INSTALL" in - cp | */cp ) INSTALL_DATA='$(INSTALL)' ;; - * ) INSTALL_DATA='$(INSTALL) -m 644' ;; - esac -fi - -echo "$as_me:$LINENO: checking how to copy files" >&5 -echo $ECHO_N "checking how to copy files... $ECHO_C" >&6 -if test "${cl_cv_prog_cp+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -echo "blabla" > conftest.x -err=`/bin/sh -c "cp -p conftest.x conftest.y 2>&1"` -if test -z "$err"; then - cl_cv_prog_cp='cp -p' -else - cl_cv_prog_cp='cp' -fi -rm -f conftest* - -fi -echo "$as_me:$LINENO: result: $cl_cv_prog_cp" >&5 -echo "${ECHO_T}$cl_cv_prog_cp" >&6 -CP="$cl_cv_prog_cp" - -echo "$as_me:$LINENO: checking how to make hard links" >&5 -echo $ECHO_N "checking how to make hard links... $ECHO_C" >&6 -if test "${cl_cv_prog_LN+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -rm -f conftestdata conftestfile -echo data > conftestfile -if ln conftestfile conftestdata 2>/dev/null; then - cl_cv_prog_LN=ln -else - cl_cv_prog_LN="$cl_cv_prog_cp" -fi -rm -f conftestdata conftestfile - -fi -echo "$as_me:$LINENO: result: $cl_cv_prog_LN" >&5 -echo "${ECHO_T}$cl_cv_prog_LN" >&6 -LN="$cl_cv_prog_LN" - -echo "$as_me:$LINENO: checking whether ln -s works" >&5 -echo $ECHO_N "checking whether ln -s works... $ECHO_C" >&6 -if test "${cl_cv_prog_LN_S+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -rm -f conftestdata -if ln -s X conftestdata 2>/dev/null; then - cl_cv_prog_LN_S="ln -s" -else - cl_cv_prog_LN_S="$cl_cv_prog_LN" -fi -rm -f conftestdata - -fi -if test "$cl_cv_prog_LN_S" = "ln -s"; then - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi -LN_S="$cl_cv_prog_LN_S" - - ac_aux_dir=${srcdir}/../autoconf -ac_config_guess="$SHELL $ac_aux_dir/config.guess" -ac_config_sub="$SHELL $ac_aux_dir/config.sub" -# Make sure we can run config.sub. -$ac_config_sub sun4 >/dev/null 2>&1 || - { { echo "$as_me:$LINENO: error: cannot run $ac_config_sub" >&5 -echo "$as_me: error: cannot run $ac_config_sub" >&2;} - { (exit 1); exit 1; }; } - -echo "$as_me:$LINENO: checking build system type" >&5 -echo $ECHO_N "checking build system type... $ECHO_C" >&6 -if test "${ac_cv_build+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_cv_build_alias=$build_alias -test -z "$ac_cv_build_alias" && - ac_cv_build_alias=`$ac_config_guess` -test -z "$ac_cv_build_alias" && - { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5 -echo "$as_me: error: cannot guess build type; you must specify one" >&2;} - { (exit 1); exit 1; }; } -ac_cv_build=`$ac_config_sub $ac_cv_build_alias` || - { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_build_alias failed" >&5 -echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed" >&2;} - { (exit 1); exit 1; }; } - -fi -echo "$as_me:$LINENO: result: $ac_cv_build" >&5 -echo "${ECHO_T}$ac_cv_build" >&6 -build=$ac_cv_build -build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` - - -echo "$as_me:$LINENO: checking host system type" >&5 -echo $ECHO_N "checking host system type... $ECHO_C" >&6 -if test "${ac_cv_host+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_cv_host_alias=$host_alias -test -z "$ac_cv_host_alias" && - ac_cv_host_alias=$ac_cv_build_alias -ac_cv_host=`$ac_config_sub $ac_cv_host_alias` || - { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_host_alias failed" >&5 -echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;} - { (exit 1); exit 1; }; } - -fi -echo "$as_me:$LINENO: result: $ac_cv_host" >&5 -echo "${ECHO_T}$ac_cv_host" >&6 -host=$ac_cv_host -host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` - - - - -case "$host_cpu" in - i[4567]86 ) - host_cpu=i386 - ;; - alphaev[4-8] | alphaev56 | alphapca5[67] | alphaev6[78] ) - host_cpu=alpha - ;; - hppa1.0 | hppa1.1 | hppa2.0* | hppa64 ) - host_cpu=hppa - ;; - powerpc ) - host_cpu=rs6000 - ;; - c1 | c2 | c32 | c34 | c38 | c4 ) - host_cpu=convex - ;; - arm* ) - host_cpu=arm - ;; - mips ) - echo "$as_me:$LINENO: checking for 64-bit MIPS" >&5 -echo $ECHO_N "checking for 64-bit MIPS... $ECHO_C" >&6 -if test "${cl_cv_host_mips64+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#if defined(_MIPS_SZLONG) -#if (_MIPS_SZLONG == 64) -/* We should also check for (_MIPS_SZPTR == 64), but gcc keeps this at 32. */ - yes -#endif -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1; then - cl_cv_host_mips64=yes -else - cl_cv_host_mips64=no -fi -rm -f conftest* - - -fi -echo "$as_me:$LINENO: result: $cl_cv_host_mips64" >&5 -echo "${ECHO_T}$cl_cv_host_mips64" >&6 -if test $cl_cv_host_mips64 = yes; then - host_cpu=mips64 -else - echo "$as_me:$LINENO: checking for MIPS with n32 ABI" >&5 -echo $ECHO_N "checking for MIPS with n32 ABI... $ECHO_C" >&6 -if test "${cl_cv_host_mipsn32+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#if __mips >= 3 - yes -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1; then - cl_cv_host_mipsn32=yes -else - cl_cv_host_mipsn32=no -fi -rm -f conftest* - - -fi -echo "$as_me:$LINENO: result: $cl_cv_host_mipsn32" >&5 -echo "${ECHO_T}$cl_cv_host_mipsn32" >&6 -if test $cl_cv_host_mipsn32 = yes; then - host_cpu=mipsn32 -fi -fi - ;; - sparc | sparc64 ) - echo "$as_me:$LINENO: checking for 64-bit SPARC" >&5 -echo $ECHO_N "checking for 64-bit SPARC... $ECHO_C" >&6 -if test "${cl_cv_host_sparc64+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#if defined(__sparcv9) || defined(__arch64__) - yes -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1; then - cl_cv_host_sparc64=yes -else - cl_cv_host_sparc64=no -fi -rm -f conftest* - - -fi -echo "$as_me:$LINENO: result: $cl_cv_host_sparc64" >&5 -echo "${ECHO_T}$cl_cv_host_sparc64" >&6 -if test $cl_cv_host_sparc64 = yes; then - host_cpu=sparc64 -else - host_cpu=sparc -fi - ;; -esac -cat >> confdefs.h </dev/null`} - case X$UNAME in - *-DOS) lt_cv_sys_path_separator=';' ;; - *) lt_cv_sys_path_separator=':' ;; - esac - PATH_SEPARATOR=$lt_cv_sys_path_separator -fi - - -# Check whether --with-gnu-ld or --without-gnu-ld was given. -if test "${with_gnu_ld+set}" = set; then - withval="$with_gnu_ld" - test "$withval" = no || with_gnu_ld=yes -else - with_gnu_ld=no -fi; -ac_prog=ld -if test "$GCC" = yes; then - # Check if gcc -print-prog-name=ld gives a path. - echo "$as_me:$LINENO: checking for ld used by GCC" >&5 -echo $ECHO_N "checking for ld used by GCC... $ECHO_C" >&6 - case $host in - *-*-mingw*) - # gcc leaves a trailing carriage return which upsets mingw - ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; - *) - ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; - esac - case $ac_prog in - # Accept absolute paths. - [\\/]* | [A-Za-z]:[\\/]*) - re_direlt='/[^/][^/]*/\.\./' - # Canonicalize the path of ld - ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` - while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do - ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` - done - test -z "$LD" && LD="$ac_prog" - ;; - "") - # If it fails, then pretend we aren't using GCC. - ac_prog=ld - ;; - *) - # If it is relative, then search for the first ld in PATH. - with_gnu_ld=unknown - ;; - esac -elif test "$with_gnu_ld" = yes; then - echo "$as_me:$LINENO: checking for GNU ld" >&5 -echo $ECHO_N "checking for GNU ld... $ECHO_C" >&6 -else - echo "$as_me:$LINENO: checking for non-GNU ld" >&5 -echo $ECHO_N "checking for non-GNU ld... $ECHO_C" >&6 -fi -if test "${lt_cv_path_LD+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -z "$LD"; then - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH; do - test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then - lt_cv_path_LD="$ac_dir/$ac_prog" - # Check to see if the program is GNU ld. I'd rather use --version, - # but apparently some GNU ld's only accept -v. - # Break only if it was the GNU/non-GNU ld that we prefer. - if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then - test "$with_gnu_ld" != no && break - else - test "$with_gnu_ld" != yes && break - fi - fi - done - IFS="$ac_save_ifs" -else - lt_cv_path_LD="$LD" # Let the user override the test with a path. -fi -fi - -LD="$lt_cv_path_LD" -if test -n "$LD"; then - echo "$as_me:$LINENO: result: $LD" >&5 -echo "${ECHO_T}$LD" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi -test -z "$LD" && { { echo "$as_me:$LINENO: error: no acceptable ld found in \$PATH" >&5 -echo "$as_me: error: no acceptable ld found in \$PATH" >&2;} - { (exit 1); exit 1; }; } -echo "$as_me:$LINENO: checking if the linker ($LD) is GNU ld" >&5 -echo $ECHO_N "checking if the linker ($LD) is GNU ld... $ECHO_C" >&6 -if test "${lt_cv_prog_gnu_ld+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - # I'd rather use --version here, but apparently some GNU ld's only accept -v. -if $LD -v 2>&1 &5; then - lt_cv_prog_gnu_ld=yes -else - lt_cv_prog_gnu_ld=no -fi -fi -echo "$as_me:$LINENO: result: $lt_cv_prog_gnu_ld" >&5 -echo "${ECHO_T}$lt_cv_prog_gnu_ld" >&6 -with_gnu_ld=$lt_cv_prog_gnu_ld - - -echo "$as_me:$LINENO: checking for $LD option to reload object files" >&5 -echo $ECHO_N "checking for $LD option to reload object files... $ECHO_C" >&6 -if test "${lt_cv_ld_reload_flag+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - lt_cv_ld_reload_flag='-r' -fi -echo "$as_me:$LINENO: result: $lt_cv_ld_reload_flag" >&5 -echo "${ECHO_T}$lt_cv_ld_reload_flag" >&6 -reload_flag=$lt_cv_ld_reload_flag -test -n "$reload_flag" && reload_flag=" $reload_flag" - -echo "$as_me:$LINENO: checking for BSD-compatible nm" >&5 -echo $ECHO_N "checking for BSD-compatible nm... $ECHO_C" >&6 -if test "${lt_cv_path_NM+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$NM"; then - # Let the user override the test. - lt_cv_path_NM="$NM" -else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do - test -z "$ac_dir" && ac_dir=. - tmp_nm=$ac_dir/${ac_tool_prefix}nm - if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then - # Check to see if the nm accepts a BSD-compat flag. - # Adding the `sed 1q' prevents false positives on HP-UX, which says: - # nm: unknown option "B" ignored - # Tru64's nm complains that /dev/null is an invalid object file - if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then - lt_cv_path_NM="$tmp_nm -B" - break - elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then - lt_cv_path_NM="$tmp_nm -p" - break - else - lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but - continue # so that we can try to find one that supports BSD flags - fi - fi - done - IFS="$ac_save_ifs" - test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm -fi -fi - -NM="$lt_cv_path_NM" -echo "$as_me:$LINENO: result: $NM" >&5 -echo "${ECHO_T}$NM" >&6 - -echo "$as_me:$LINENO: checking for a sed that does not truncate output" >&5 -echo $ECHO_N "checking for a sed that does not truncate output... $ECHO_C" >&6 -if test "${lt_cv_path_SED+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - # Loop through the user's path and test for sed and gsed. -# Then use that list of sed's as ones to test for truncation. -as_executable_p="test -f" -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in sed gsed; do - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then - _sed_list="$_sed_list $as_dir/$ac_prog$ac_exec_ext" - fi - done - done -done - - # Create a temporary directory, and hook for its removal unless debugging. -$debug || -{ - trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 - trap '{ (exit 1); exit 1; }' 1 2 13 15 -} - -# Create a (secure) tmp directory for tmp files. -: ${TMPDIR=/tmp} -{ - tmp=`(umask 077 && mktemp -d -q "$TMPDIR/sedXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" -} || -{ - tmp=$TMPDIR/sed$$-$RANDOM - (umask 077 && mkdir $tmp) -} || -{ - echo "$me: cannot create a temporary directory in $TMPDIR" >&2 - { (exit 1); exit 1; } -} - _max=0 - _count=0 - # Add /usr/xpg4/bin/sed as it is typically found on Solaris - # along with /bin/sed that truncates output. - for _sed in $_sed_list /usr/xpg4/bin/sed; do - test ! -f ${_sed} && break - cat /dev/null > "$tmp/sed.in" - _count=0 - echo ${ECHO_N-$ac_n} "0123456789${ECHO_C-$ac_c}" >"$tmp/sed.in" - # Check for GNU sed and select it if it is found. - if "${_sed}" --version 2>&1 < /dev/null | egrep '(GNU)' > /dev/null; then - lt_cv_path_SED=${_sed} - break - fi - while true; do - cat "$tmp/sed.in" "$tmp/sed.in" >"$tmp/sed.tmp" - mv "$tmp/sed.tmp" "$tmp/sed.in" - cp "$tmp/sed.in" "$tmp/sed.nl" - echo >>"$tmp/sed.nl" - ${_sed} -e 's/a$//' < "$tmp/sed.nl" >"$tmp/sed.out" || break - cmp -s "$tmp/sed.out" "$tmp/sed.nl" || break - # 40000 chars as input seems more than enough - test $_count -gt 10 && break - _count=`expr $_count + 1` - if test $_count -gt $_max; then - _max=$_count - lt_cv_path_SED=$_sed - fi - done - done - rm -rf "$tmp" - -fi - -if test "X$SED" != "X"; then - lt_cv_path_SED=$SED -else - SED=$lt_cv_path_SED -fi -echo "$as_me:$LINENO: result: $SED" >&5 -echo "${ECHO_T}$SED" >&6 - -echo "$as_me:$LINENO: checking how to recognise dependent libraries" >&5 -echo $ECHO_N "checking how to recognise dependent libraries... $ECHO_C" >&6 -if test "${lt_cv_deplibs_check_method+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - lt_cv_file_magic_cmd='$MAGIC_CMD' -lt_cv_file_magic_test_file= -lt_cv_deplibs_check_method='unknown' -# Need to set the preceding variable on all platforms that support -# interlibrary dependencies. -# 'none' -- dependencies not supported. -# `unknown' -- same as none, but documents that we really don't know. -# 'pass_all' -- all dependencies passed with no checks. -# 'test_compile' -- check by making test program. -# 'file_magic [[regex]]' -- check by looking for files in library path -# which responds to the $file_magic_cmd with a given egrep regex. -# If you have `file' or equivalent on your system and you're not sure -# whether `pass_all' will *always* work, you probably want this one. - -case $host_os in -aix4* | aix5*) - lt_cv_deplibs_check_method=pass_all - ;; - -beos*) - lt_cv_deplibs_check_method=pass_all - ;; - -bsdi4*) - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)' - lt_cv_file_magic_cmd='/usr/bin/file -L' - lt_cv_file_magic_test_file=/shlib/libc.so - ;; - -cygwin* | mingw* | pw32*) - lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' - lt_cv_file_magic_cmd='$OBJDUMP -f' - ;; - -darwin* | rhapsody*) - lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library' - lt_cv_file_magic_cmd='/usr/bin/file -L' - case "$host_os" in - rhapsody* | darwin1.[012]) - lt_cv_file_magic_test_file=`echo /System/Library/Frameworks/System.framework/Versions/*/System | head -1` - ;; - *) # Darwin 1.3 on - lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib' - ;; - esac - ;; - -freebsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - case $host_cpu in - i*86 ) - # Not sure whether the presence of OpenBSD here was a mistake. - # Let's accept both of them until this is cleared up. - lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[3-9]86 (compact )?demand paged shared library' - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` - ;; - esac - else - lt_cv_deplibs_check_method=pass_all - fi - ;; - -gnu*) - lt_cv_deplibs_check_method=pass_all - ;; - -hpux10.20*|hpux11*) - lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library' - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=/usr/lib/libc.sl - ;; - -irix5* | irix6* | nonstopux*) - case $host_os in - irix5* | nonstopux*) - # this will be overridden with pass_all, but let us keep it just in case - lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1" - ;; - *) - case $LD in - *-32|*"-32 ") libmagic=32-bit;; - *-n32|*"-n32 ") libmagic=N32;; - *-64|*"-64 ") libmagic=64-bit;; - *) libmagic=never-match;; - esac - # this will be overridden with pass_all, but let us keep it just in case - lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[1234] dynamic lib MIPS - version 1" - ;; - esac - lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*` - lt_cv_deplibs_check_method=pass_all - ;; - -# This must be Linux ELF. -linux-gnu*) - case $host_cpu in - alpha* | hppa* | i*86 | mips | mipsel | powerpc* | sparc* | ia64*) - lt_cv_deplibs_check_method=pass_all ;; - *) - # glibc up to 2.1.1 does not perform some relocations on ARM - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' ;; - esac - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' - else - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so$' - fi - ;; - -newos6*) - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)' - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=/usr/lib/libnls.so - ;; - -openbsd*) - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB shared object' - else - lt_cv_deplibs_check_method='file_magic OpenBSD.* shared library' - fi - ;; - -osf3* | osf4* | osf5*) - # this will be overridden with pass_all, but let us keep it just in case - lt_cv_deplibs_check_method='file_magic COFF format alpha shared library' - lt_cv_file_magic_test_file=/shlib/libc.so - lt_cv_deplibs_check_method=pass_all - ;; - -sco3.2v5*) - lt_cv_deplibs_check_method=pass_all - ;; - -solaris*) - lt_cv_deplibs_check_method=pass_all - lt_cv_file_magic_test_file=/lib/libc.so - ;; - -sysv5uw[78]* | sysv4*uw2*) - lt_cv_deplibs_check_method=pass_all - ;; - -sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - case $host_vendor in - motorola) - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]' - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` - ;; - ncr) - lt_cv_deplibs_check_method=pass_all - ;; - sequent) - lt_cv_file_magic_cmd='/bin/file' - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' - ;; - sni) - lt_cv_file_magic_cmd='/bin/file' - lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib" - lt_cv_file_magic_test_file=/lib/libc.so - ;; - siemens) - lt_cv_deplibs_check_method=pass_all - ;; - esac - ;; -esac - -fi -echo "$as_me:$LINENO: result: $lt_cv_deplibs_check_method" >&5 -echo "${ECHO_T}$lt_cv_deplibs_check_method" >&6 -file_magic_cmd=$lt_cv_file_magic_cmd -deplibs_check_method=$lt_cv_deplibs_check_method - - - - - - - -# Check for command to grab the raw symbol name followed by C symbol from nm. -echo "$as_me:$LINENO: checking command to parse $NM output" >&5 -echo $ECHO_N "checking command to parse $NM output... $ECHO_C" >&6 -if test "${lt_cv_sys_global_symbol_pipe+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -# These are sane defaults that work on at least a few old systems. -# [They come from Ultrix. What could be older than Ultrix?!! ;)] - -# Character class describing NM global symbol codes. -symcode='[BCDEGRST]' - -# Regexp to match symbols that can be accessed directly from C. -sympat='\([_A-Za-z][_A-Za-z0-9]*\)' - -# Transform the above into a raw symbol and a C symbol. -symxfrm='\1 \2\3 \3' - -# Transform an extracted symbol line into a proper C declaration -lt_cv_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'" - -# Transform an extracted symbol line into symbol name and symbol address -lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([^ ]*\) \([^ ]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" - -# Define system-specific variables. -case $host_os in -aix*) - symcode='[BCDT]' - ;; -cygwin* | mingw* | pw32*) - symcode='[ABCDGISTW]' - ;; -hpux*) # Its linker distinguishes data from code symbols - lt_cv_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" - lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" - ;; -irix* | nonstopux*) - symcode='[BCDEGRST]' - ;; -osf*) - symcode='[BCDEGQRST]' - ;; -solaris* | sysv5*) - symcode='[BDT]' - ;; -sysv4) - symcode='[DFNSTU]' - ;; -esac - -# Handle CRLF in mingw tool chain -opt_cr= -case $host_os in -mingw*) - opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp - ;; -esac - -# If we're using GNU nm, then use its standard symbol codes. -if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then - symcode='[ABCDGISTW]' -fi - -# Try without a prefix undercore, then with it. -for ac_symprfx in "" "_"; do - - # Write the raw and C identifiers. -lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'" - - # Check to see that the pipe works correctly. - pipe_works=no - rm -f conftest* - cat > conftest.$ac_ext <&5 - (eval $ac_compile) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - # Now try to grab the symbols. - nlist=conftest.nm - if { (eval echo "$as_me:$LINENO: \"$NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist\"") >&5 - (eval $NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && test -s "$nlist"; then - # Try sorting and uniquifying the output. - if sort "$nlist" | uniq > "$nlist"T; then - mv -f "$nlist"T "$nlist" - else - rm -f "$nlist"T - fi - - # Make sure that we snagged all the symbols we need. - if egrep ' nm_test_var$' "$nlist" >/dev/null; then - if egrep ' nm_test_func$' "$nlist" >/dev/null; then - cat < conftest.$ac_ext -#ifdef __cplusplus -extern "C" { -#endif - -EOF - # Now generate the symbol file. - eval "$lt_cv_global_symbol_to_cdecl"' < "$nlist" >> conftest.$ac_ext' - - cat <> conftest.$ac_ext -#if defined (__STDC__) && __STDC__ -# define lt_ptr void * -#else -# define lt_ptr char * -# define const -#endif - -/* The mapping between symbol names and symbols. */ -const struct { - const char *name; - lt_ptr address; -} -lt_preloaded_symbols[] = -{ -EOF - sed "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (lt_ptr) \&\2},/" < "$nlist" >> conftest.$ac_ext - cat <<\EOF >> conftest.$ac_ext - {0, (lt_ptr) 0} -}; - -#ifdef __cplusplus -} -#endif -EOF - # Now try linking the two files. - mv conftest.$ac_objext conftstm.$ac_objext - save_LIBS="$LIBS" - save_CFLAGS="$CFLAGS" - LIBS="conftstm.$ac_objext" - CFLAGS="$CFLAGS$no_builtin_flag" - if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && test -s conftest$ac_exeext; then - pipe_works=yes - fi - LIBS="$save_LIBS" - CFLAGS="$save_CFLAGS" - else - echo "cannot find nm_test_func in $nlist" >&5 - fi - else - echo "cannot find nm_test_var in $nlist" >&5 - fi - else - echo "cannot run $lt_cv_sys_global_symbol_pipe" >&5 - fi - else - echo "$progname: failed program was:" >&5 - cat conftest.$ac_ext >&5 - fi - rm -f conftest* conftst* - - # Do not use the global_symbol_pipe unless it works. - if test "$pipe_works" = yes; then - break - else - lt_cv_sys_global_symbol_pipe= - fi -done - -fi - -global_symbol_pipe="$lt_cv_sys_global_symbol_pipe" -if test -z "$lt_cv_sys_global_symbol_pipe"; then - global_symbol_to_cdecl= - global_symbol_to_c_name_address= -else - global_symbol_to_cdecl="$lt_cv_global_symbol_to_cdecl" - global_symbol_to_c_name_address="$lt_cv_global_symbol_to_c_name_address" -fi -if test -z "$global_symbol_pipe$global_symbol_to_cdec$global_symbol_to_c_name_address"; -then - echo "$as_me:$LINENO: result: failed" >&5 -echo "${ECHO_T}failed" >&6 -else - echo "$as_me:$LINENO: result: ok" >&5 -echo "${ECHO_T}ok" >&6 -fi - -echo "$as_me:$LINENO: checking for ANSI C header files" >&5 -echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 -if test "${ac_cv_header_stdc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include -#include -#include - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_header_stdc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_header_stdc=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - -if test $ac_cv_header_stdc = yes; then - # SunOS 4.x string.h does not declare mem*, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "memchr" >/dev/null 2>&1; then - : -else - ac_cv_header_stdc=no -fi -rm -f conftest* - -fi - -if test $ac_cv_header_stdc = yes; then - # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "free" >/dev/null 2>&1; then - : -else - ac_cv_header_stdc=no -fi -rm -f conftest* - -fi - -if test $ac_cv_header_stdc = yes; then - # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. - if test "$cross_compiling" = yes; then - : -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#if ((' ' & 0x0FF) == 0x020) -# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') -# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) -#else -# define ISLOWER(c) \ - (('a' <= (c) && (c) <= 'i') \ - || ('j' <= (c) && (c) <= 'r') \ - || ('s' <= (c) && (c) <= 'z')) -# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) -#endif - -#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) -int -main () -{ - int i; - for (i = 0; i < 256; i++) - if (XOR (islower (i), ISLOWER (i)) - || toupper (i) != TOUPPER (i)) - exit(2); - exit (0); -} -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -ac_cv_header_stdc=no -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -fi -fi -echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 -echo "${ECHO_T}$ac_cv_header_stdc" >&6 -if test $ac_cv_header_stdc = yes; then - -cat >>confdefs.h <<\_ACEOF -#define STDC_HEADERS 1 -_ACEOF - -fi - -# On IRIX 5.3, sys/types and inttypes.h are conflicting. - - - - - - - - - -for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ - inttypes.h stdint.h unistd.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default - -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - eval "$as_ac_Header=yes" -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -eval "$as_ac_Header=no" -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - - -for ac_header in dlfcn.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_header_compiler=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 - -# Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------------ ## -## Report this to the AC_PACKAGE_NAME lists. ## -## ------------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - - - - - -# Only perform the check for file, if the check method requires it -case $deplibs_check_method in -file_magic*) - if test "$file_magic_cmd" = '$MAGIC_CMD'; then - echo "$as_me:$LINENO: checking for ${ac_tool_prefix}file" >&5 -echo $ECHO_N "checking for ${ac_tool_prefix}file... $ECHO_C" >&6 -if test "${lt_cv_path_MAGIC_CMD+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - case $MAGIC_CMD in - /*) - lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. - ;; - ?:/*) - lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path. - ;; - *) - ac_save_MAGIC_CMD="$MAGIC_CMD" - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" - ac_dummy="/usr/bin:$PATH" - for ac_dir in $ac_dummy; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/${ac_tool_prefix}file; then - lt_cv_path_MAGIC_CMD="$ac_dir/${ac_tool_prefix}file" - if test -n "$file_magic_test_file"; then - case $deplibs_check_method in - "file_magic "*) - file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" - MAGIC_CMD="$lt_cv_path_MAGIC_CMD" - if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | - egrep "$file_magic_regex" > /dev/null; then - : - else - cat <&2 - -*** Warning: the command libtool uses to detect shared libraries, -*** $file_magic_cmd, produces output that libtool cannot recognize. -*** The result is that libtool may fail to recognize shared libraries -*** as such. This will affect the creation of libtool libraries that -*** depend on shared libraries, but programs linked with such libtool -*** libraries will work regardless of this problem. Nevertheless, you -*** may want to report the problem to your system manager and/or to -*** bug-libtool@gnu.org - -EOF - fi ;; - esac - fi - break - fi - done - IFS="$ac_save_ifs" - MAGIC_CMD="$ac_save_MAGIC_CMD" - ;; -esac -fi - -MAGIC_CMD="$lt_cv_path_MAGIC_CMD" -if test -n "$MAGIC_CMD"; then - echo "$as_me:$LINENO: result: $MAGIC_CMD" >&5 -echo "${ECHO_T}$MAGIC_CMD" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -if test -z "$lt_cv_path_MAGIC_CMD"; then - if test -n "$ac_tool_prefix"; then - echo "$as_me:$LINENO: checking for file" >&5 -echo $ECHO_N "checking for file... $ECHO_C" >&6 -if test "${lt_cv_path_MAGIC_CMD+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - case $MAGIC_CMD in - /*) - lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. - ;; - ?:/*) - lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path. - ;; - *) - ac_save_MAGIC_CMD="$MAGIC_CMD" - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" - ac_dummy="/usr/bin:$PATH" - for ac_dir in $ac_dummy; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/file; then - lt_cv_path_MAGIC_CMD="$ac_dir/file" - if test -n "$file_magic_test_file"; then - case $deplibs_check_method in - "file_magic "*) - file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" - MAGIC_CMD="$lt_cv_path_MAGIC_CMD" - if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | - egrep "$file_magic_regex" > /dev/null; then - : - else - cat <&2 - -*** Warning: the command libtool uses to detect shared libraries, -*** $file_magic_cmd, produces output that libtool cannot recognize. -*** The result is that libtool may fail to recognize shared libraries -*** as such. This will affect the creation of libtool libraries that -*** depend on shared libraries, but programs linked with such libtool -*** libraries will work regardless of this problem. Nevertheless, you -*** may want to report the problem to your system manager and/or to -*** bug-libtool@gnu.org - -EOF - fi ;; - esac - fi - break - fi - done - IFS="$ac_save_ifs" - MAGIC_CMD="$ac_save_MAGIC_CMD" - ;; -esac -fi - -MAGIC_CMD="$lt_cv_path_MAGIC_CMD" -if test -n "$MAGIC_CMD"; then - echo "$as_me:$LINENO: result: $MAGIC_CMD" >&5 -echo "${ECHO_T}$MAGIC_CMD" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - else - MAGIC_CMD=: - fi -fi - - fi - ;; -esac - -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. -set dummy ${ac_tool_prefix}ranlib; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_RANLIB+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$RANLIB"; then - ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -RANLIB=$ac_cv_prog_RANLIB -if test -n "$RANLIB"; then - echo "$as_me:$LINENO: result: $RANLIB" >&5 -echo "${ECHO_T}$RANLIB" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$ac_cv_prog_RANLIB"; then - ac_ct_RANLIB=$RANLIB - # Extract the first word of "ranlib", so it can be a program name with args. -set dummy ranlib; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_RANLIB"; then - ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_RANLIB="ranlib" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - - test -z "$ac_cv_prog_ac_ct_RANLIB" && ac_cv_prog_ac_ct_RANLIB=":" -fi -fi -ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB -if test -n "$ac_ct_RANLIB"; then - echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5 -echo "${ECHO_T}$ac_ct_RANLIB" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - RANLIB=$ac_ct_RANLIB -else - RANLIB="$ac_cv_prog_RANLIB" -fi - -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. -set dummy ${ac_tool_prefix}strip; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_STRIP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$STRIP"; then - ac_cv_prog_STRIP="$STRIP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_STRIP="${ac_tool_prefix}strip" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -STRIP=$ac_cv_prog_STRIP -if test -n "$STRIP"; then - echo "$as_me:$LINENO: result: $STRIP" >&5 -echo "${ECHO_T}$STRIP" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$ac_cv_prog_STRIP"; then - ac_ct_STRIP=$STRIP - # Extract the first word of "strip", so it can be a program name with args. -set dummy strip; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_STRIP"; then - ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_STRIP="strip" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - - test -z "$ac_cv_prog_ac_ct_STRIP" && ac_cv_prog_ac_ct_STRIP=":" -fi -fi -ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP -if test -n "$ac_ct_STRIP"; then - echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5 -echo "${ECHO_T}$ac_ct_STRIP" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - STRIP=$ac_ct_STRIP -else - STRIP="$ac_cv_prog_STRIP" -fi - - -enable_dlopen=no -enable_win32_dll=no - -# Check whether --enable-libtool-lock or --disable-libtool-lock was given. -if test "${enable_libtool_lock+set}" = set; then - enableval="$enable_libtool_lock" - -fi; -test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes - -# Some flags need to be propagated to the compiler or linker for good -# libtool support. -case $host in -*-*-irix6*) - # Find out which ABI we are using. - echo '#line 4535 "configure"' > conftest.$ac_ext - if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - case `/usr/bin/file conftest.$ac_objext` in - *32-bit*) - LD="${LD-ld} -32" - ;; - *N32*) - LD="${LD-ld} -n32" - ;; - *64-bit*) - LD="${LD-ld} -64" - ;; - esac - fi - rm -rf conftest* - ;; - -*-*-sco3.2v5*) - # On SCO OpenServer 5, we need -belf to get full-featured binaries. - SAVE_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -belf" - echo "$as_me:$LINENO: checking whether the C compiler needs -belf" >&5 -echo $ECHO_N "checking whether the C compiler needs -belf... $ECHO_C" >&6 -if test "${lt_cv_cc_needs_belf+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - - - ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - lt_cv_cc_needs_belf=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -lt_cv_cc_needs_belf=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - -fi -echo "$as_me:$LINENO: result: $lt_cv_cc_needs_belf" >&5 -echo "${ECHO_T}$lt_cv_cc_needs_belf" >&6 - if test x"$lt_cv_cc_needs_belf" != x"yes"; then - # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf - CFLAGS="$SAVE_CFLAGS" - fi - ;; - - -esac - -# Sed substitution that helps us do robust quoting. It backslashifies -# metacharacters that are still active within double-quoted strings. -Xsed='sed -e s/^X//' -sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g' - -# Same as above, but do not quote variable references. -double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g' - -# Sed substitution to delay expansion of an escaped shell variable in a -# double_quote_subst'ed string. -delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' - -# Constants: -rm="rm -f" - -# Global variables: -default_ofile=libtool -can_build_shared=yes - -# All known linkers require a `.a' archive for static linking (except M$VC, -# which needs '.lib'). -libext=a -ltmain="$ac_aux_dir/ltmain.sh" -ofile="$default_ofile" -with_gnu_ld="$lt_cv_prog_gnu_ld" -need_locks="$enable_libtool_lock" - -old_CC="$CC" -old_CFLAGS="$CFLAGS" - -# Set sane defaults for various variables -test -z "$AR" && AR=ar -test -z "$AR_FLAGS" && AR_FLAGS=cru -test -z "$AS" && AS=as -test -z "$CC" && CC=cc -test -z "$DLLTOOL" && DLLTOOL=dlltool -test -z "$LD" && LD=ld -test -z "$LN_S" && LN_S="ln -s" -test -z "$MAGIC_CMD" && MAGIC_CMD=file -test -z "$NM" && NM=nm -test -z "$OBJDUMP" && OBJDUMP=objdump -test -z "$RANLIB" && RANLIB=: -test -z "$STRIP" && STRIP=: -test -z "$ac_objext" && ac_objext=o - -if test x"$host" != x"$build"; then - ac_tool_prefix=${host_alias}- -else - ac_tool_prefix= -fi - -# Transform linux* to *-*-linux-gnu*, to support old configure scripts. -case $host_os in -linux-gnu*) ;; -linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'` -esac - -case $host_os in -aix3*) - # 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. - if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES - fi - ;; -esac - -# Determine commands to create old-style static archives. -old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs' -old_postinstall_cmds='chmod 644 $oldlib' -old_postuninstall_cmds= - -if test -n "$RANLIB"; then - case $host_os in - openbsd*) - old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds" - ;; - *) - old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds" - ;; - esac - old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib" -fi - -# Allow CC to be a program name with arguments. -set dummy $CC -compiler="$2" - -echo "$as_me:$LINENO: checking for objdir" >&5 -echo $ECHO_N "checking for objdir... $ECHO_C" >&6 -rm -f .libs 2>/dev/null -mkdir .libs 2>/dev/null -if test -d .libs; then - objdir=.libs -else - # MS-DOS does not allow filenames that begin with a dot. - objdir=_libs -fi -rmdir .libs 2>/dev/null -echo "$as_me:$LINENO: result: $objdir" >&5 -echo "${ECHO_T}$objdir" >&6 - - - -# Check whether --with-pic or --without-pic was given. -if test "${with_pic+set}" = set; then - withval="$with_pic" - pic_mode="$withval" -else - pic_mode=default -fi; -test -z "$pic_mode" && pic_mode=default - -# We assume here that the value for lt_cv_prog_cc_pic will not be cached -# in isolation, and that seeing it set (from the cache) indicates that -# the associated values are set (in the cache) correctly too. -echo "$as_me:$LINENO: checking for $compiler option to produce PIC" >&5 -echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 -if test "${lt_cv_prog_cc_pic+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - lt_cv_prog_cc_pic= - lt_cv_prog_cc_shlib= - lt_cv_prog_cc_wl= - lt_cv_prog_cc_static= - lt_cv_prog_cc_no_builtin= - lt_cv_prog_cc_can_build_shared=$can_build_shared - - if test "$GCC" = yes; then - lt_cv_prog_cc_wl='-Wl,' - lt_cv_prog_cc_static='-static' - - case $host_os in - aix*) - # Below there is a dirty hack to force normal static linking with -ldl - # The problem is because libdl dynamically linked with both libc and - # libC (AIX C++ library), which obviously doesn't included in libraries - # list by gcc. This cause undefined symbols with -static flags. - # This hack allows C programs to be linked with "-static -ldl", but - # not sure about C++ programs. - lt_cv_prog_cc_static="$lt_cv_prog_cc_static ${lt_cv_prog_cc_wl}-lC" - ;; - 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'. - lt_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4' - ;; - beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) - # PIC is the default for these OSes. - ;; - darwin* | rhapsody*) - # PIC is the default on this platform - # Common symbols not allowed in MH_DYLIB files - lt_cv_prog_cc_pic='-fno-common' - ;; - cygwin* | mingw* | pw32* | os2*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - lt_cv_prog_cc_pic='-DDLL_EXPORT' - ;; - sysv4*MP*) - if test -d /usr/nec; then - lt_cv_prog_cc_pic=-Kconform_pic - fi - ;; - *) - lt_cv_prog_cc_pic='-fPIC' - ;; - esac - else - # PORTME Check for PIC flags for the system compiler. - case $host_os in - aix3* | aix4* | aix5*) - lt_cv_prog_cc_wl='-Wl,' - # All AIX code is PIC. - if test "$host_cpu" = ia64; then - # AIX 5 now supports IA64 processor - lt_cv_prog_cc_static='-Bstatic' - else - lt_cv_prog_cc_static='-bnso -bI:/lib/syscalls.exp' - fi - ;; - - hpux9* | hpux10* | hpux11*) - # Is there a better lt_cv_prog_cc_static that works with the bundled CC? - lt_cv_prog_cc_wl='-Wl,' - lt_cv_prog_cc_static="${lt_cv_prog_cc_wl}-a ${lt_cv_prog_cc_wl}archive" - lt_cv_prog_cc_pic='+Z' - ;; - - irix5* | irix6* | nonstopux*) - lt_cv_prog_cc_wl='-Wl,' - lt_cv_prog_cc_static='-non_shared' - # PIC (with -KPIC) is the default. - ;; - - cygwin* | mingw* | pw32* | os2*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - lt_cv_prog_cc_pic='-DDLL_EXPORT' - ;; - - newsos6) - lt_cv_prog_cc_pic='-KPIC' - lt_cv_prog_cc_static='-Bstatic' - ;; - - osf3* | osf4* | osf5*) - # All OSF/1 code is PIC. - lt_cv_prog_cc_wl='-Wl,' - lt_cv_prog_cc_static='-non_shared' - ;; - - sco3.2v5*) - lt_cv_prog_cc_pic='-Kpic' - lt_cv_prog_cc_static='-dn' - lt_cv_prog_cc_shlib='-belf' - ;; - - solaris*) - lt_cv_prog_cc_pic='-KPIC' - lt_cv_prog_cc_static='-Bstatic' - lt_cv_prog_cc_wl='-Wl,' - ;; - - sunos4*) - lt_cv_prog_cc_pic='-PIC' - lt_cv_prog_cc_static='-Bstatic' - lt_cv_prog_cc_wl='-Qoption ld ' - ;; - - sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - lt_cv_prog_cc_pic='-KPIC' - lt_cv_prog_cc_static='-Bstatic' - lt_cv_prog_cc_wl='-Wl,' - ;; - - uts4*) - lt_cv_prog_cc_pic='-pic' - lt_cv_prog_cc_static='-Bstatic' - ;; - - sysv4*MP*) - if test -d /usr/nec ;then - lt_cv_prog_cc_pic='-Kconform_pic' - lt_cv_prog_cc_static='-Bstatic' - fi - ;; - - *) - lt_cv_prog_cc_can_build_shared=no - ;; - esac - fi - -fi - -if test -z "$lt_cv_prog_cc_pic"; then - echo "$as_me:$LINENO: result: none" >&5 -echo "${ECHO_T}none" >&6 -else - echo "$as_me:$LINENO: result: $lt_cv_prog_cc_pic" >&5 -echo "${ECHO_T}$lt_cv_prog_cc_pic" >&6 - - # Check to make sure the pic_flag actually works. - echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_cv_prog_cc_pic works" >&5 -echo $ECHO_N "checking if $compiler PIC flag $lt_cv_prog_cc_pic works... $ECHO_C" >&6 - if test "${lt_cv_prog_cc_pic_works+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS $lt_cv_prog_cc_pic -DPIC" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - case $host_os in - hpux9* | hpux10* | hpux11*) - # On HP-UX, both CC and GCC only warn that PIC is supported... then - # they create non-PIC objects. So, if there were any warnings, we - # assume that PIC is not supported. - if test -s conftest.err; then - lt_cv_prog_cc_pic_works=no - else - lt_cv_prog_cc_pic_works=yes - fi - ;; - *) - lt_cv_prog_cc_pic_works=yes - ;; - esac - -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - lt_cv_prog_cc_pic_works=no - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - CFLAGS="$save_CFLAGS" - -fi - - - if test "X$lt_cv_prog_cc_pic_works" = Xno; then - lt_cv_prog_cc_pic= - lt_cv_prog_cc_can_build_shared=no - else - lt_cv_prog_cc_pic=" $lt_cv_prog_cc_pic" - fi - - echo "$as_me:$LINENO: result: $lt_cv_prog_cc_pic_works" >&5 -echo "${ECHO_T}$lt_cv_prog_cc_pic_works" >&6 -fi - -# Check for any special shared library compilation flags. -if test -n "$lt_cv_prog_cc_shlib"; then - { echo "$as_me:$LINENO: WARNING: \`$CC' requires \`$lt_cv_prog_cc_shlib' to build shared libraries" >&5 -echo "$as_me: WARNING: \`$CC' requires \`$lt_cv_prog_cc_shlib' to build shared libraries" >&2;} - if echo "$old_CC $old_CFLAGS " | egrep -e "[ ]$lt_cv_prog_cc_shlib[ ]" >/dev/null; then : - else - { echo "$as_me:$LINENO: WARNING: add \`$lt_cv_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure" >&5 -echo "$as_me: WARNING: add \`$lt_cv_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure" >&2;} - lt_cv_prog_cc_can_build_shared=no - fi -fi - -echo "$as_me:$LINENO: checking if $compiler static flag $lt_cv_prog_cc_static works" >&5 -echo $ECHO_N "checking if $compiler static flag $lt_cv_prog_cc_static works... $ECHO_C" >&6 -if test "${lt_cv_prog_cc_static_works+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - lt_cv_prog_cc_static_works=no - save_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS $lt_cv_prog_cc_static" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - lt_cv_prog_cc_static_works=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - LDFLAGS="$save_LDFLAGS" - -fi - - -# Belt *and* braces to stop my trousers falling down: -test "X$lt_cv_prog_cc_static_works" = Xno && lt_cv_prog_cc_static= -echo "$as_me:$LINENO: result: $lt_cv_prog_cc_static_works" >&5 -echo "${ECHO_T}$lt_cv_prog_cc_static_works" >&6 - -pic_flag="$lt_cv_prog_cc_pic" -special_shlib_compile_flags="$lt_cv_prog_cc_shlib" -wl="$lt_cv_prog_cc_wl" -link_static_flag="$lt_cv_prog_cc_static" -no_builtin_flag="$lt_cv_prog_cc_no_builtin" -can_build_shared="$lt_cv_prog_cc_can_build_shared" - - -# Check to see if options -o and -c are simultaneously supported by compiler -echo "$as_me:$LINENO: checking if $compiler supports -c -o file.$ac_objext" >&5 -echo $ECHO_N "checking if $compiler supports -c -o file.$ac_objext... $ECHO_C" >&6 -if test "${lt_cv_compiler_c_o+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -$rm -r conftest 2>/dev/null -mkdir conftest -cd conftest -echo "int some_variable = 0;" > conftest.$ac_ext -mkdir out -# According to Tom Tromey, Ian Lance Taylor reported there are C compilers -# that will create temporary files in the current directory regardless of -# the output directory. Thus, making CWD read-only will cause this test -# to fail, enabling locking or at least warning the user not to do parallel -# builds. -chmod -w . -save_CFLAGS="$CFLAGS" -CFLAGS="$CFLAGS -o out/conftest2.$ac_objext" -compiler_c_o=no -if { (eval echo configure:5093: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s out/conftest.err; then - lt_cv_compiler_c_o=no - else - lt_cv_compiler_c_o=yes - fi -else - # Append any errors to the config.log. - cat out/conftest.err 1>&5 - lt_cv_compiler_c_o=no -fi -CFLAGS="$save_CFLAGS" -chmod u+w . -$rm conftest* out/* -rmdir out -cd .. -rmdir conftest -$rm -r conftest 2>/dev/null - -fi - -compiler_c_o=$lt_cv_compiler_c_o -echo "$as_me:$LINENO: result: $compiler_c_o" >&5 -echo "${ECHO_T}$compiler_c_o" >&6 - -if test x"$compiler_c_o" = x"yes"; then - # Check to see if we can write to a .lo - echo "$as_me:$LINENO: checking if $compiler supports -c -o file.lo" >&5 -echo $ECHO_N "checking if $compiler supports -c -o file.lo... $ECHO_C" >&6 - if test "${lt_cv_compiler_o_lo+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - - lt_cv_compiler_o_lo=no - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -c -o conftest.lo" - save_objext="$ac_objext" - ac_objext=lo - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ -int some_variable = 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s conftest.err; then - lt_cv_compiler_o_lo=no - else - lt_cv_compiler_o_lo=yes - fi - -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - ac_objext="$save_objext" - CFLAGS="$save_CFLAGS" - -fi - - compiler_o_lo=$lt_cv_compiler_o_lo - echo "$as_me:$LINENO: result: $compiler_o_lo" >&5 -echo "${ECHO_T}$compiler_o_lo" >&6 -else - compiler_o_lo=no -fi - -# Check to see if we can do hard links to lock some files if needed -hard_links="nottested" -if test "$compiler_c_o" = no && test "$need_locks" != no; then - # do not overwrite the value of need_locks provided by the user - echo "$as_me:$LINENO: checking if we can lock with hard links" >&5 -echo $ECHO_N "checking if we can lock with hard links... $ECHO_C" >&6 - hard_links=yes - $rm conftest* - ln conftest.a conftest.b 2>/dev/null && hard_links=no - touch conftest.a - ln conftest.a conftest.b 2>&5 || hard_links=no - ln conftest.a conftest.b 2>/dev/null && hard_links=no - echo "$as_me:$LINENO: result: $hard_links" >&5 -echo "${ECHO_T}$hard_links" >&6 - if test "$hard_links" = no; then - { echo "$as_me:$LINENO: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5 -echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;} - need_locks=warn - fi -else - need_locks=no -fi - -if test "$GCC" = yes; then - # Check to see if options -fno-rtti -fno-exceptions are supported by compiler - echo "$as_me:$LINENO: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 -echo $ECHO_N "checking if $compiler supports -fno-rtti -fno-exceptions... $ECHO_C" >&6 - echo "int some_variable = 0;" > conftest.$ac_ext - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.$ac_ext" - compiler_rtti_exceptions=no - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ -int some_variable = 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s conftest.err; then - compiler_rtti_exceptions=no - else - compiler_rtti_exceptions=yes - fi - -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - CFLAGS="$save_CFLAGS" - echo "$as_me:$LINENO: result: $compiler_rtti_exceptions" >&5 -echo "${ECHO_T}$compiler_rtti_exceptions" >&6 - - if test "$compiler_rtti_exceptions" = "yes"; then - no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions' - else - no_builtin_flag=' -fno-builtin' - fi -fi - -# See if the linker supports building shared libraries. -echo "$as_me:$LINENO: checking whether the linker ($LD) supports shared libraries" >&5 -echo $ECHO_N "checking whether the linker ($LD) supports shared libraries... $ECHO_C" >&6 - -allow_undefined_flag= -no_undefined_flag= -need_lib_prefix=unknown -need_version=unknown -# when you set need_version to no, make sure it does not cause -set_version -# flags to be left without arguments -archive_cmds= -archive_expsym_cmds= -old_archive_from_new_cmds= -old_archive_from_expsyms_cmds= -export_dynamic_flag_spec= -whole_archive_flag_spec= -thread_safe_flag_spec= -hardcode_into_libs=no -hardcode_libdir_flag_spec= -hardcode_libdir_separator= -hardcode_direct=no -hardcode_minus_L=no -hardcode_shlibpath_var=unsupported -runpath_var= -link_all_deplibs=unknown -always_export_symbols=no -export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols' -# include_expsyms should be a list of space-separated symbols to be *always* -# included in the symbol list -include_expsyms= -# exclude_expsyms can be an egrep regular expression of symbols to exclude -# it will be wrapped by ` (' and `)$', so one must not match beginning or -# end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', -# as well as any symbol that contains `d'. -exclude_expsyms="_GLOBAL_OFFSET_TABLE_" -# Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out -# platforms (ab)use it in PIC code, but their linkers get confused if -# the symbol is explicitly referenced. Since portable code cannot -# rely on this symbol name, it's probably fine to never include it in -# preloaded symbol tables. -extract_expsyms_cmds= - -case $host_os in -cygwin* | mingw* | pw32*) - # FIXME: the MSVC++ port hasn't been tested in a loooong time - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - if test "$GCC" != yes; then - with_gnu_ld=no - fi - ;; -openbsd*) - with_gnu_ld=no - ;; -esac - -ld_shlibs=yes -if test "$with_gnu_ld" = yes; then - # If archive_cmds runs LD, not CC, wlarc should be empty - wlarc='${wl}' - - # See if GNU ld supports shared libraries. - case $host_os in - aix3* | aix4* | aix5*) - # On AIX, the GNU linker is very broken - # Note:Check GNU linker on AIX 5-IA64 when/if it becomes available. - ld_shlibs=no - cat <&2 - -*** Warning: the GNU linker, at least up to release 2.9.1, is reported -*** to be unable to reliably create shared libraries on AIX. -*** Therefore, libtool is disabling shared libraries support. If you -*** really care for shared libraries, you may want to modify your PATH -*** so that a non-GNU linker is found, and then restart. - -EOF - ;; - - amigaos*) - archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - - # Samuel A. Falvo II reports - # that the semantics of dynamic libraries on AmigaOS, at least up - # to version 4, is to share data among multiple programs linked - # with the same dynamic library. Since this doesn't match the - # behavior of shared libraries on other platforms, we can use - # them. - ld_shlibs=no - ;; - - beos*) - if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then - allow_undefined_flag=unsupported - # Joseph Beckenbach says some releases of gcc - # support --undefined. This deserves some investigation. FIXME - archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - else - ld_shlibs=no - fi - ;; - - cygwin* | mingw* | pw32*) - # hardcode_libdir_flag_spec is actually meaningless, as there is - # no search path for DLLs. - hardcode_libdir_flag_spec='-L$libdir' - allow_undefined_flag=unsupported - always_export_symbols=yes - - extract_expsyms_cmds='test -f $output_objdir/impgen.c || \ - sed -e "/^# \/\* impgen\.c starts here \*\//,/^# \/\* impgen.c ends here \*\// { s/^# //;s/^# *$//; p; }" -e d < $''0 > $output_objdir/impgen.c~ - test -f $output_objdir/impgen.exe || (cd $output_objdir && \ - if test "x$HOST_CC" != "x" ; then $HOST_CC -o impgen impgen.c ; \ - else $CC -o impgen impgen.c ; fi)~ - $output_objdir/impgen $dir/$soroot > $output_objdir/$soname-def' - - old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib' - - # cygwin and mingw dlls have different entry points and sets of symbols - # to exclude. - # FIXME: what about values for MSVC? - dll_entry=__cygwin_dll_entry@12 - dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12~ - case $host_os in - mingw*) - # mingw values - dll_entry=_DllMainCRTStartup@12 - dll_exclude_symbols=DllMain@12,DllMainCRTStartup@12,DllEntryPoint@12~ - ;; - esac - - # mingw and cygwin differ, and it's simplest to just exclude the union - # of the two symbol sets. - dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12,DllMainCRTStartup@12,DllEntryPoint@12 - - # recent cygwin and mingw systems supply a stub DllMain which the user - # can override, but on older systems we have to supply one (in ltdll.c) - if test "x$lt_cv_need_dllmain" = "xyes"; then - ltdll_obj='$output_objdir/$soname-ltdll.'"$ac_objext " - ltdll_cmds='test -f $output_objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $''0 > $output_objdir/$soname-ltdll.c~ - test -f $output_objdir/$soname-ltdll.$ac_objext || (cd $output_objdir && $CC -c $soname-ltdll.c)~' - else - ltdll_obj= - ltdll_cmds= - fi - - # Extract the symbol export list from an `--export-all' def file, - # then regenerate the def file from the symbol export list, so that - # the compiled dll only exports the symbol export list. - # Be careful not to strip the DATA tag left be newer dlltools. - export_symbols_cmds="$ltdll_cmds"' - $DLLTOOL --export-all --exclude-symbols '$dll_exclude_symbols' --output-def $output_objdir/$soname-def '$ltdll_obj'$libobjs $convenience~ - sed -e "1,/EXPORTS/d" -e "s/ @ [0-9]*//" -e "s/ *;.*$//" < $output_objdir/$soname-def > $export_symbols' - - # If the export-symbols file already is a .def file (1st line - # is EXPORTS), use it as is. - # If DATA tags from a recent dlltool are present, honour them! - archive_expsym_cmds='if test "x`sed 1q $export_symbols`" = xEXPORTS; then - cp $export_symbols $output_objdir/$soname-def; - else - echo EXPORTS > $output_objdir/$soname-def; - _lt_hint=1; - cat $export_symbols | while read symbol; do - set dummy \$symbol; - case \$# in - 2) echo " \$2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;; - 4) echo " \$2 \$3 \$4 ; " >> $output_objdir/$soname-def; _lt_hint=`expr \$_lt_hint - 1`;; - *) echo " \$2 @ \$_lt_hint \$3 ; " >> $output_objdir/$soname-def;; - esac; - _lt_hint=`expr 1 + \$_lt_hint`; - done; - fi~ - '"$ltdll_cmds"' - $CC -Wl,--base-file,$output_objdir/$soname-base '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~ - $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp~ - $CC -Wl,--base-file,$output_objdir/$soname-base $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~ - $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp --output-lib $output_objdir/$libname.dll.a~ - $CC $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags' - ;; - - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' - wlarc= - else - archive_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - fi - ;; - - solaris* | sysv5*) - if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then - ld_shlibs=no - cat <&2 - -*** Warning: The releases 2.8.* of the GNU linker cannot reliably -*** create shared libraries on Solaris systems. Therefore, libtool -*** is disabling shared libraries support. We urge you to upgrade GNU -*** binutils to release 2.9.1 or newer. Another option is to modify -*** your PATH or compiler configuration so that the native linker is -*** used, and then restart. - -EOF - elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - else - ld_shlibs=no - fi - ;; - - sunos4*) - archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' - wlarc= - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - *) - if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - else - ld_shlibs=no - fi - ;; - esac - - if test "$ld_shlibs" = yes; then - runpath_var=LD_RUN_PATH - hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir' - export_dynamic_flag_spec='${wl}--export-dynamic' - case $host_os in - cygwin* | mingw* | pw32*) - # dlltool doesn't understand --whole-archive et. al. - whole_archive_flag_spec= - ;; - *) - # ancient GNU ld didn't support --whole-archive et. al. - if $LD --help 2>&1 | egrep 'no-whole-archive' > /dev/null; then - whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' - else - whole_archive_flag_spec= - fi - ;; - esac - fi -else - # PORTME fill in a description of your system's linker (not GNU ld) - case $host_os in - aix3*) - allow_undefined_flag=unsupported - always_export_symbols=yes - archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' - # Note: this linker hardcodes the directories in LIBPATH if there - # are no directories specified by -L. - hardcode_minus_L=yes - if test "$GCC" = yes && test -z "$link_static_flag"; then - # Neither direct hardcoding nor static linking is supported with a - # broken collect2. - hardcode_direct=unsupported - fi - ;; - - aix4* | aix5*) - if test "$host_cpu" = ia64; then - # On IA64, the linker does run time linking by default, so we don't - # have to do anything special. - aix_use_runtimelinking=no - exp_sym_flag='-Bexport' - no_entry_flag="" - else - aix_use_runtimelinking=no - - # Test if we are trying to use run time linking or normal - # AIX style linking. If -brtl is somewhere in LDFLAGS, we - # need to do runtime linking. - case $host_os in aix4.[23]|aix4.[23].*|aix5*) - for ld_flag in $LDFLAGS; do - case $ld_flag in - *-brtl*) - aix_use_runtimelinking=yes - break - ;; - esac - done - esac - - exp_sym_flag='-bexport' - no_entry_flag='-bnoentry' - fi - - # When large executables or shared objects are built, AIX ld can - # have problems creating the table of contents. If linking a library - # or program results in "error TOC overflow" add -mminimal-toc to - # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not - # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. - - hardcode_direct=yes - archive_cmds='' - hardcode_libdir_separator=':' - if test "$GCC" = yes; then - case $host_os in aix4.[012]|aix4.[012].*) - collect2name=`${CC} -print-prog-name=collect2` - if test -f "$collect2name" && \ - strings "$collect2name" | grep resolve_lib_name >/dev/null - then - # We have reworked collect2 - hardcode_direct=yes - else - # We have old collect2 - hardcode_direct=unsupported - # It fails to find uninstalled libraries when the uninstalled - # path is not listed in the libpath. Setting hardcode_minus_L - # to unsupported forces relinking - hardcode_minus_L=yes - hardcode_libdir_flag_spec='-L$libdir' - hardcode_libdir_separator= - fi - esac - - shared_flag='-shared' - else - # not using gcc - if test "$host_cpu" = ia64; then - shared_flag='${wl}-G' - else - if test "$aix_use_runtimelinking" = yes; then - shared_flag='${wl}-G' - else - shared_flag='${wl}-bM:SRE' - fi - fi - fi - - # It seems that -bexpall can do strange things, so it is better to - # generate a list of symbols to export. - always_export_symbols=yes - if test "$aix_use_runtimelinking" = yes; then - # Warning - without using the other runtime loading flags (-brtl), - # -berok will link without error, but may produce a broken library. - allow_undefined_flag='-berok' - hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib' - archive_expsym_cmds="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag" - else - if test "$host_cpu" = ia64; then - hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib' - allow_undefined_flag="-z nodefs" - archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname ${wl}-h$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" - else - hardcode_libdir_flag_spec='${wl}-bnolibpath ${wl}-blibpath:$libdir:/usr/lib:/lib' - # Warning - without using the other run time loading flags, - # -berok will link without error, but may produce a broken library. - allow_undefined_flag='${wl}-berok' - # This is a bit strange, but is similar to how AIX traditionally builds - # it's shared libraries. - archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"' ~$AR -crlo $objdir/$libname$release.a $objdir/$soname' - fi - fi - ;; - - amigaos*) - archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - # see comment about different semantics on the GNU ld section - ld_shlibs=no - ;; - - cygwin* | mingw* | pw32*) - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - # hardcode_libdir_flag_spec is actually meaningless, as there is - # no search path for DLLs. - hardcode_libdir_flag_spec=' ' - allow_undefined_flag=unsupported - # Tell ltmain to make .lib files, not .a files. - libext=lib - # FIXME: Setting linknames here is a bad hack. - archive_cmds='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | sed -e '\''s/ -lc$//'\''` -link -dll~linknames=' - # The linker will automatically build a .lib file if we build a DLL. - old_archive_from_new_cmds='true' - # FIXME: Should let the user specify the lib program. - old_archive_cmds='lib /OUT:$oldlib$oldobjs$old_deplibs' - fix_srcfile_path='`cygpath -w "$srcfile"`' - ;; - - darwin* | rhapsody*) - case "$host_os" in - rhapsody* | darwin1.[012]) - allow_undefined_flag='-undefined suppress' - ;; - *) # Darwin 1.3 on - allow_undefined_flag='-flat_namespace -undefined suppress' - ;; - esac - # FIXME: Relying on posixy $() will cause problems for - # cross-compilation, but unfortunately the echo tests do not - # yet detect zsh echo's removal of \ escapes. Also zsh mangles - # `"' quotes if we put them in here... so don't! - archive_cmds='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs && $CC $(test .$module = .yes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib ${lib}-master.o $deplibs$linker_flags $(test .$module != .yes && echo -install_name $rpath/$soname $verstring)' - # We need to add '_' to the symbols in $export_symbols first - #archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols' - hardcode_direct=yes - hardcode_shlibpath_var=no - whole_archive_flag_spec='-all_load $convenience' - ;; - - freebsd1*) - ld_shlibs=no - ;; - - # 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 - # does not break anything, and helps significantly (at the cost of a little - # extra space). - freebsd2.2*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - # Unfortunately, older versions of FreeBSD 2 do not have this feature. - freebsd2*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes - hardcode_minus_L=yes - hardcode_shlibpath_var=no - ;; - - # FreeBSD 3 and greater uses gcc -shared to do shared libraries. - freebsd*) - archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - hpux9* | hpux10* | hpux11*) - case $host_os in - hpux9*) archive_cmds='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' ;; - *) archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' ;; - esac - hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' - hardcode_libdir_separator=: - hardcode_direct=yes - hardcode_minus_L=yes # Not in the search PATH, but as the default - # location of the library. - export_dynamic_flag_spec='${wl}-E' - ;; - - irix5* | irix6* | nonstopux*) - if test "$GCC" = yes; then - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - else - archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' - hardcode_libdir_flag_spec='-rpath $libdir' - fi - hardcode_libdir_separator=: - link_all_deplibs=yes - ;; - - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out - else - archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF - fi - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - newsos6) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - hardcode_libdir_separator=: - hardcode_shlibpath_var=no - ;; - - openbsd*) - hardcode_direct=yes - hardcode_shlibpath_var=no - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - hardcode_libdir_flag_spec='${wl}-rpath,$libdir' - export_dynamic_flag_spec='${wl}-E' - else - case "$host_os" in - openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-R$libdir' - ;; - *) - archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - hardcode_libdir_flag_spec='${wl}-rpath,$libdir' - ;; - esac - fi - ;; - - os2*) - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - allow_undefined_flag=unsupported - archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' - old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' - ;; - - osf3*) - if test "$GCC" = yes; then - allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' - archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - else - allow_undefined_flag=' -expect_unresolved \*' - archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' - fi - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - hardcode_libdir_separator=: - ;; - - osf4* | osf5*) # as osf3* with the addition of -msym flag - if test "$GCC" = yes; then - allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' - archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - else - allow_undefined_flag=' -expect_unresolved \*' - archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' - archive_expsym_cmds='for i in `cat $export_symbols`; do printf "-exported_symbol " >> $lib.exp; echo "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~ - $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp' - - #Both c and cxx compiler support -rpath directly - hardcode_libdir_flag_spec='-rpath $libdir' - fi - hardcode_libdir_separator=: - ;; - - sco3.2v5*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_shlibpath_var=no - runpath_var=LD_RUN_PATH - hardcode_runpath_var=yes - export_dynamic_flag_spec='${wl}-Bexport' - ;; - - solaris*) - # gcc --version < 3.0 without binutils cannot create self contained - # shared libraries reliably, requiring libgcc.a to resolve some of - # the object symbols generated in some cases. Libraries that use - # assert need libgcc.a to resolve __eprintf, for example. Linking - # a copy of libgcc.a into every shared library to guarantee resolving - # such symbols causes other problems: According to Tim Van Holder - # , C++ libraries end up with a separate - # (to the application) exception stack for one thing. - no_undefined_flag=' -z defs' - if test "$GCC" = yes; then - case `$CC --version 2>/dev/null` in - [12].*) - cat <&2 - -*** Warning: Releases of GCC earlier than version 3.0 cannot reliably -*** create self contained shared libraries on Solaris systems, without -*** introducing a dependency on libgcc.a. Therefore, libtool is disabling -*** -no-undefined support, which will at least allow you to build shared -*** libraries. However, you may find that when you link such libraries -*** into an application without using GCC, you have to manually add -*** \`gcc --print-libgcc-file-name\` to the link command. We urge you to -*** upgrade to a newer version of GCC. Another option is to rebuild your -*** current GCC to use the GNU linker from GNU binutils 2.9.1 or newer. - -EOF - no_undefined_flag= - ;; - esac - fi - # $CC -shared without GNU ld will not create a library from C++ - # object files and a static libstdc++, better avoid it by now - archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' - archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_shlibpath_var=no - case $host_os in - solaris2.[0-5] | solaris2.[0-5].*) ;; - *) # Supported since Solaris 2.6 (maybe 2.5.1?) - whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;; - esac - link_all_deplibs=yes - ;; - - sunos4*) - if test "x$host_vendor" = xsequent; then - # Use $CC to link under sequent, because it throws in some extra .o - # files that make .init and .fini sections work. - archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' - else - archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' - fi - hardcode_libdir_flag_spec='-L$libdir' - hardcode_direct=yes - hardcode_minus_L=yes - hardcode_shlibpath_var=no - ;; - - sysv4) - case $host_vendor in - sni) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes # is this really true??? - ;; - siemens) - ## LD is ld it makes a PLAMLIB - ## CC just makes a GrossModule. - archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' - reload_cmds='$CC -r -o $output$reload_objs' - hardcode_direct=no - ;; - motorola) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=no #Motorola manual says yes, but my tests say they lie - ;; - esac - runpath_var='LD_RUN_PATH' - hardcode_shlibpath_var=no - ;; - - sysv4.3*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_shlibpath_var=no - export_dynamic_flag_spec='-Bexport' - ;; - - sysv5*) - no_undefined_flag=' -z text' - # $CC -shared without GNU ld will not create a library from C++ - # object files and a static libstdc++, better avoid it by now - archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' - archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' - hardcode_libdir_flag_spec= - hardcode_shlibpath_var=no - runpath_var='LD_RUN_PATH' - ;; - - uts4*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_shlibpath_var=no - ;; - - dgux*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_shlibpath_var=no - ;; - - sysv4*MP*) - if test -d /usr/nec; then - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_shlibpath_var=no - runpath_var=LD_RUN_PATH - hardcode_runpath_var=yes - ld_shlibs=yes - fi - ;; - - sysv4.2uw2*) - archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes - hardcode_minus_L=no - hardcode_shlibpath_var=no - hardcode_runpath_var=yes - runpath_var=LD_RUN_PATH - ;; - - sysv5uw7* | unixware7*) - no_undefined_flag='${wl}-z ${wl}text' - if test "$GCC" = yes; then - archive_cmds='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' - else - archive_cmds='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' - fi - runpath_var='LD_RUN_PATH' - hardcode_shlibpath_var=no - ;; - - *) - ld_shlibs=no - ;; - esac -fi -echo "$as_me:$LINENO: result: $ld_shlibs" >&5 -echo "${ECHO_T}$ld_shlibs" >&6 -test "$ld_shlibs" = no && can_build_shared=no - -# Check hardcoding attributes. -echo "$as_me:$LINENO: checking how to hardcode library paths into programs" >&5 -echo $ECHO_N "checking how to hardcode library paths into programs... $ECHO_C" >&6 -hardcode_action= -if test -n "$hardcode_libdir_flag_spec" || \ - test -n "$runpath_var"; then - - # We can hardcode non-existant directories. - if test "$hardcode_direct" != no && - # If the only mechanism to avoid hardcoding is shlibpath_var, we - # have to relink, otherwise we might link with an installed library - # when we should be linking with a yet-to-be-installed one - ## test "$hardcode_shlibpath_var" != no && - test "$hardcode_minus_L" != no; then - # Linking always hardcodes the temporary library directory. - hardcode_action=relink - else - # We can link without hardcoding, and we can hardcode nonexisting dirs. - hardcode_action=immediate - fi -else - # We cannot hardcode anything, or else we can only hardcode existing - # directories. - hardcode_action=unsupported -fi -echo "$as_me:$LINENO: result: $hardcode_action" >&5 -echo "${ECHO_T}$hardcode_action" >&6 - -striplib= -old_striplib= -echo "$as_me:$LINENO: checking whether stripping libraries is possible" >&5 -echo $ECHO_N "checking whether stripping libraries is possible... $ECHO_C" >&6 -if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then - test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" - test -z "$striplib" && striplib="$STRIP --strip-unneeded" - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -reload_cmds='$LD$reload_flag -o $output$reload_objs' -test -z "$deplibs_check_method" && deplibs_check_method=unknown - -# PORTME Fill in your ld.so characteristics -echo "$as_me:$LINENO: checking dynamic linker characteristics" >&5 -echo $ECHO_N "checking dynamic linker characteristics... $ECHO_C" >&6 -library_names_spec= -libname_spec='lib$name' -soname_spec= -postinstall_cmds= -postuninstall_cmds= -finish_cmds= -finish_eval= -shlibpath_var= -shlibpath_overrides_runpath=unknown -version_type=none -dynamic_linker="$host_os ld.so" -sys_lib_dlsearch_path_spec="/lib /usr/lib" -sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" - -case $host_os in -aix3*) - version_type=linux - library_names_spec='${libname}${release}.so$versuffix $libname.a' - shlibpath_var=LIBPATH - - # AIX has no versioning support, so we append a major version to the name. - soname_spec='${libname}${release}.so$major' - ;; - -aix4* | aix5*) - version_type=linux - need_lib_prefix=no - need_version=no - hardcode_into_libs=yes - if test "$host_cpu" = ia64; then - # AIX 5 supports IA64 - library_names_spec='${libname}${release}.so$major ${libname}${release}.so$versuffix $libname.so' - shlibpath_var=LD_LIBRARY_PATH - else - # With GCC up to 2.95.x, collect2 would create an import file - # for dependence libraries. The import file would start with - # the line `#! .'. This would cause the generated library to - # depend on `.', always an invalid library. This was fixed in - # development snapshots of GCC prior to 3.0. - case $host_os in - aix4 | aix4.[01] | aix4.[01].*) - if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' - echo ' yes ' - echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then - : - else - can_build_shared=no - fi - ;; - esac - # AIX (on Power*) has no versioning support, so currently we can - # not hardcode correct soname into executable. Probably we can - # add versioning support to collect2, so additional links can - # be useful in future. - if test "$aix_use_runtimelinking" = yes; then - # If using run time linking (on AIX 4.2 or later) use lib.so - # instead of lib.a to let people know that these are not - # typical AIX shared libraries. - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - else - # We preserve .a as extension for shared libraries through AIX4.2 - # and later when we are not doing run time linking. - library_names_spec='${libname}${release}.a $libname.a' - soname_spec='${libname}${release}.so$major' - fi - shlibpath_var=LIBPATH - fi - hardcode_into_libs=yes - ;; - -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 "X$lib" | $Xsed -e '\''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' - ;; - -beos*) - library_names_spec='${libname}.so' - dynamic_linker="$host_os ld.so" - shlibpath_var=LIBRARY_PATH - ;; - -bsdi4*) - version_type=linux - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' - shlibpath_var=LD_LIBRARY_PATH - sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" - sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" - export_dynamic_flag_spec=-rdynamic - # the default ld.so.conf also contains /usr/contrib/lib and - # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow - # libtool to hard-code these into programs - ;; - -cygwin* | mingw* | pw32*) - version_type=windows - need_version=no - need_lib_prefix=no - case $GCC,$host_os in - yes,cygwin*) - library_names_spec='$libname.dll.a' - soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll' - postinstall_cmds='dlpath=`bash 2>&1 -c '\''. $dir/${file}i;echo \$dlname'\''`~ - dldir=$destdir/`dirname \$dlpath`~ - test -d \$dldir || mkdir -p \$dldir~ - $install_prog .libs/$dlname \$dldir/$dlname' - postuninstall_cmds='dldll=`bash 2>&1 -c '\''. $file; echo \$dlname'\''`~ - dlpath=$dir/\$dldll~ - $rm \$dlpath' - ;; - yes,mingw*) - library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll' - sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g" -e "s,=/,/,g"` - ;; - yes,pw32*) - library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/./-/g'`${versuffix}.dll' - ;; - *) - library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll $libname.lib' - ;; - esac - dynamic_linker='Win32 ld.exe' - # FIXME: first we should search . and the directory the executable is in - shlibpath_var=PATH - ;; - -darwin* | rhapsody*) - dynamic_linker="$host_os dyld" - version_type=darwin - need_lib_prefix=no - need_version=no - # FIXME: Relying on posixy $() will cause problems for - # cross-compilation, but unfortunately the echo tests do not - # yet detect zsh echo's removal of \ escapes. - library_names_spec='${libname}${release}${versuffix}.$(test .$module = .yes && echo so || echo dylib) ${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib) ${libname}.$(test .$module = .yes && echo so || echo dylib)' - soname_spec='${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib)' - shlibpath_overrides_runpath=yes - shlibpath_var=DYLD_LIBRARY_PATH - ;; - -freebsd1*) - dynamic_linker=no - ;; - -freebsd*) - objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` - version_type=freebsd-$objformat - case $version_type in - freebsd-elf*) - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so' - need_version=no - need_lib_prefix=no - ;; - freebsd-*) - library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix' - need_version=yes - ;; - esac - shlibpath_var=LD_LIBRARY_PATH - case $host_os in - freebsd2*) - shlibpath_overrides_runpath=yes - ;; - *) - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - ;; - esac - ;; - -gnu*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so${major} ${libname}.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - hardcode_into_libs=yes - ;; - -hpux9* | hpux10* | hpux11*) - # Give a soname corresponding to the major version so that dld.sl refuses to - # link against other versions. - dynamic_linker="$host_os dld.sl" - version_type=sunos - need_lib_prefix=no - need_version=no - shlibpath_var=SHLIB_PATH - shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH - library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl' - soname_spec='${libname}${release}.sl$major' - # HP-UX runs *really* slowly unless shared libraries are mode 555. - postinstall_cmds='chmod 555 $lib' - ;; - -irix5* | irix6* | nonstopux*) - case $host_os in - nonstopux*) version_type=nonstopux ;; - *) version_type=irix ;; - esac - need_lib_prefix=no - need_version=no - soname_spec='${libname}${release}.so$major' - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so' - case $host_os in - irix5* | nonstopux*) - libsuff= shlibsuff= - ;; - *) - case $LD in # libtool.m4 will add one of these switches to LD - *-32|*"-32 ") libsuff= shlibsuff= libmagic=32-bit;; - *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 libmagic=N32;; - *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;; - *) libsuff= shlibsuff= libmagic=never-match;; - esac - ;; - esac - shlibpath_var=LD_LIBRARY${shlibsuff}_PATH - shlibpath_overrides_runpath=no - sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" - sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" - ;; - -# No shared lib support for Linux oldld, aout, or coff. -linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*) - dynamic_linker=no - ;; - -# This must be Linux ELF. -linux-gnu*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - # This implies no fast_install, which is unacceptable. - # Some rework will be needed to allow for fast_install - # before this can be enabled. - hardcode_into_libs=yes - - # We used to test for /lib/ld.so.1 and disable shared libraries on - # powerpc, because MkLinux only supported shared libraries with the - # GNU dynamic linker. Since this was broken with cross compilers, - # most powerpc-linux boxes support dynamic linking these days and - # people can always --disable-shared, the test was removed, and we - # assume the GNU/Linux dynamic linker is in use. - dynamic_linker='GNU/Linux ld.so' - ;; - -netbsd*) - version_type=sunos - need_lib_prefix=no - need_version=no - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - dynamic_linker='NetBSD (a.out) ld.so' - else - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so' - soname_spec='${libname}${release}.so$major' - dynamic_linker='NetBSD ld.elf_so' - fi - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - ;; - -newsos6) - version_type=linux - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - ;; - -openbsd*) - version_type=sunos - need_lib_prefix=no - need_version=no - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - case "$host_os" in - openbsd2.[89] | openbsd2.[89].*) - shlibpath_overrides_runpath=no - ;; - *) - shlibpath_overrides_runpath=yes - ;; - esac - else - shlibpath_overrides_runpath=yes - fi - library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - shlibpath_var=LD_LIBRARY_PATH - ;; - -os2*) - libname_spec='$name' - need_lib_prefix=no - library_names_spec='$libname.dll $libname.a' - dynamic_linker='OS/2 ld.exe' - shlibpath_var=LIBPATH - ;; - -osf3* | osf4* | osf5*) - version_type=osf - need_version=no - soname_spec='${libname}${release}.so$major' - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - shlibpath_var=LD_LIBRARY_PATH - sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" - sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" - hardcode_into_libs=yes - ;; - -sco3.2v5*) - version_type=osf - soname_spec='${libname}${release}.so$major' - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - shlibpath_var=LD_LIBRARY_PATH - ;; - -solaris*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - # ldd complains unless libraries are executable - postinstall_cmds='chmod +x $lib' - ;; - -sunos4*) - version_type=sunos - library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' - finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - if test "$with_gnu_ld" = yes; then - need_lib_prefix=no - fi - need_version=yes - ;; - -sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - version_type=linux - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - case $host_vendor in - sni) - shlibpath_overrides_runpath=no - need_lib_prefix=no - export_dynamic_flag_spec='${wl}-Blargedynsym' - runpath_var=LD_RUN_PATH - ;; - siemens) - need_lib_prefix=no - ;; - motorola) - need_lib_prefix=no - need_version=no - shlibpath_overrides_runpath=no - sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' - ;; - esac - ;; - -uts4*) - version_type=linux - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - ;; - -dgux*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - ;; - -sysv4*MP*) - if test -d /usr/nec ;then - version_type=linux - library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so' - soname_spec='$libname.so.$major' - shlibpath_var=LD_LIBRARY_PATH - fi - ;; - -*) - dynamic_linker=no - ;; -esac -echo "$as_me:$LINENO: result: $dynamic_linker" >&5 -echo "${ECHO_T}$dynamic_linker" >&6 -test "$dynamic_linker" = no && can_build_shared=no - -# Report the final consequences. -echo "$as_me:$LINENO: checking if libtool supports shared libraries" >&5 -echo $ECHO_N "checking if libtool supports shared libraries... $ECHO_C" >&6 -echo "$as_me:$LINENO: result: $can_build_shared" >&5 -echo "${ECHO_T}$can_build_shared" >&6 - -echo "$as_me:$LINENO: checking whether to build shared libraries" >&5 -echo $ECHO_N "checking whether to build shared libraries... $ECHO_C" >&6 -test "$can_build_shared" = "no" && enable_shared=no - -# On AIX, shared libraries and static libraries use the same namespace, and -# are all built from PIC. -case "$host_os" in -aix3*) - test "$enable_shared" = yes && enable_static=no - if test -n "$RANLIB"; then - archive_cmds="$archive_cmds~\$RANLIB \$lib" - postinstall_cmds='$RANLIB $lib' - fi - ;; - -aix4*) - if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then - test "$enable_shared" = yes && enable_static=no - fi - ;; -esac -echo "$as_me:$LINENO: result: $enable_shared" >&5 -echo "${ECHO_T}$enable_shared" >&6 - -echo "$as_me:$LINENO: checking whether to build static libraries" >&5 -echo $ECHO_N "checking whether to build static libraries... $ECHO_C" >&6 -# Make sure either enable_shared or enable_static is yes. -test "$enable_shared" = yes || enable_static=yes -echo "$as_me:$LINENO: result: $enable_static" >&5 -echo "${ECHO_T}$enable_static" >&6 - -if test "$hardcode_action" = relink; then - # Fast installation is not supported - enable_fast_install=no -elif test "$shlibpath_overrides_runpath" = yes || - test "$enable_shared" = no; then - # Fast installation is not necessary - enable_fast_install=needless -fi - -variables_saved_for_relink="PATH $shlibpath_var $runpath_var" -if test "$GCC" = yes; then - variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" -fi - -if test "x$enable_dlopen" != xyes; then - enable_dlopen=unknown - enable_dlopen_self=unknown - enable_dlopen_self_static=unknown -else - lt_cv_dlopen=no - lt_cv_dlopen_libs= - - case $host_os in - beos*) - lt_cv_dlopen="load_add_on" - lt_cv_dlopen_libs= - lt_cv_dlopen_self=yes - ;; - - cygwin* | mingw* | pw32*) - lt_cv_dlopen="LoadLibrary" - lt_cv_dlopen_libs= - ;; - - *) - echo "$as_me:$LINENO: checking for shl_load" >&5 -echo $ECHO_N "checking for shl_load... $ECHO_C" >&6 -if test "${ac_cv_func_shl_load+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* Define shl_load to an innocuous variant, in case declares shl_load. - For example, HP-UX 11i declares gettimeofday. */ -#define shl_load innocuous_shl_load - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char shl_load (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef shl_load - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -{ -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char shl_load (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_shl_load) || defined (__stub___shl_load) -choke me -#else -char (*f) () = shl_load; -#endif -#ifdef __cplusplus -} -#endif - -int -main () -{ -return f != shl_load; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_shl_load=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_func_shl_load=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_func_shl_load" >&5 -echo "${ECHO_T}$ac_cv_func_shl_load" >&6 -if test $ac_cv_func_shl_load = yes; then - lt_cv_dlopen="shl_load" -else - echo "$as_me:$LINENO: checking for shl_load in -ldld" >&5 -echo $ECHO_N "checking for shl_load in -ldld... $ECHO_C" >&6 -if test "${ac_cv_lib_dld_shl_load+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-ldld $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char shl_load (); -int -main () -{ -shl_load (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_dld_shl_load=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_dld_shl_load=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -echo "$as_me:$LINENO: result: $ac_cv_lib_dld_shl_load" >&5 -echo "${ECHO_T}$ac_cv_lib_dld_shl_load" >&6 -if test $ac_cv_lib_dld_shl_load = yes; then - lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld" -else - echo "$as_me:$LINENO: checking for dlopen" >&5 -echo $ECHO_N "checking for dlopen... $ECHO_C" >&6 -if test "${ac_cv_func_dlopen+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* Define dlopen to an innocuous variant, in case declares dlopen. - For example, HP-UX 11i declares gettimeofday. */ -#define dlopen innocuous_dlopen - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char dlopen (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef dlopen - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -{ -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char dlopen (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_dlopen) || defined (__stub___dlopen) -choke me -#else -char (*f) () = dlopen; -#endif -#ifdef __cplusplus -} -#endif - -int -main () -{ -return f != dlopen; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_dlopen=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_func_dlopen=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_func_dlopen" >&5 -echo "${ECHO_T}$ac_cv_func_dlopen" >&6 -if test $ac_cv_func_dlopen = yes; then - lt_cv_dlopen="dlopen" -else - echo "$as_me:$LINENO: checking for dlopen in -ldl" >&5 -echo $ECHO_N "checking for dlopen in -ldl... $ECHO_C" >&6 -if test "${ac_cv_lib_dl_dlopen+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-ldl $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char dlopen (); -int -main () -{ -dlopen (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_dl_dlopen=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_dl_dlopen=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -echo "$as_me:$LINENO: result: $ac_cv_lib_dl_dlopen" >&5 -echo "${ECHO_T}$ac_cv_lib_dl_dlopen" >&6 -if test $ac_cv_lib_dl_dlopen = yes; then - lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" -else - echo "$as_me:$LINENO: checking for dlopen in -lsvld" >&5 -echo $ECHO_N "checking for dlopen in -lsvld... $ECHO_C" >&6 -if test "${ac_cv_lib_svld_dlopen+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lsvld $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char dlopen (); -int -main () -{ -dlopen (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_svld_dlopen=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_svld_dlopen=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -echo "$as_me:$LINENO: result: $ac_cv_lib_svld_dlopen" >&5 -echo "${ECHO_T}$ac_cv_lib_svld_dlopen" >&6 -if test $ac_cv_lib_svld_dlopen = yes; then - lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld" -else - echo "$as_me:$LINENO: checking for dld_link in -ldld" >&5 -echo $ECHO_N "checking for dld_link in -ldld... $ECHO_C" >&6 -if test "${ac_cv_lib_dld_dld_link+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-ldld $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char dld_link (); -int -main () -{ -dld_link (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_dld_dld_link=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_dld_dld_link=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -echo "$as_me:$LINENO: result: $ac_cv_lib_dld_dld_link" >&5 -echo "${ECHO_T}$ac_cv_lib_dld_dld_link" >&6 -if test $ac_cv_lib_dld_dld_link = yes; then - lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld" -fi - - -fi - - -fi - - -fi - - -fi - - -fi - - ;; - esac - - if test "x$lt_cv_dlopen" != xno; then - enable_dlopen=yes - else - enable_dlopen=no - fi - - case $lt_cv_dlopen in - dlopen) - save_CPPFLAGS="$CPPFLAGS" - test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" - - save_LDFLAGS="$LDFLAGS" - eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" - - save_LIBS="$LIBS" - LIBS="$lt_cv_dlopen_libs $LIBS" - - echo "$as_me:$LINENO: checking whether a program can dlopen itself" >&5 -echo $ECHO_N "checking whether a program can dlopen itself... $ECHO_C" >&6 -if test "${lt_cv_dlopen_self+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test "$cross_compiling" = yes; then : - lt_cv_dlopen_self=cross -else - lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 - lt_status=$lt_dlunknown - cat > conftest.$ac_ext < -#endif - -#include - -#ifdef RTLD_GLOBAL -# define LT_DLGLOBAL RTLD_GLOBAL -#else -# ifdef DL_GLOBAL -# define LT_DLGLOBAL DL_GLOBAL -# else -# define LT_DLGLOBAL 0 -# endif -#endif - -/* We may have to define LT_DLLAZY_OR_NOW in the command line if we - find out it does not work in some platform. */ -#ifndef LT_DLLAZY_OR_NOW -# ifdef RTLD_LAZY -# define LT_DLLAZY_OR_NOW RTLD_LAZY -# else -# ifdef DL_LAZY -# define LT_DLLAZY_OR_NOW DL_LAZY -# else -# ifdef RTLD_NOW -# define LT_DLLAZY_OR_NOW RTLD_NOW -# else -# ifdef DL_NOW -# define LT_DLLAZY_OR_NOW DL_NOW -# else -# define LT_DLLAZY_OR_NOW 0 -# endif -# endif -# endif -# endif -#endif - -#ifdef __cplusplus -extern "C" void exit (int); -#endif - -void fnord() { int i=42;} -int main () -{ - void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); - int status = $lt_dlunknown; - - if (self) - { - if (dlsym (self,"fnord")) status = $lt_dlno_uscore; - else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; - /* dlclose (self); */ - } - - exit (status); -} -EOF - if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then - (./conftest; exit; ) 2>/dev/null - lt_status=$? - case x$lt_status in - x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;; - x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;; - x$lt_unknown|x*) lt_cv_dlopen_self=no ;; - esac - else : - # compilation failed - lt_cv_dlopen_self=no - fi -fi -rm -fr conftest* - - -fi -echo "$as_me:$LINENO: result: $lt_cv_dlopen_self" >&5 -echo "${ECHO_T}$lt_cv_dlopen_self" >&6 - - if test "x$lt_cv_dlopen_self" = xyes; then - LDFLAGS="$LDFLAGS $link_static_flag" - echo "$as_me:$LINENO: checking whether a statically linked program can dlopen itself" >&5 -echo $ECHO_N "checking whether a statically linked program can dlopen itself... $ECHO_C" >&6 -if test "${lt_cv_dlopen_self_static+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test "$cross_compiling" = yes; then : - lt_cv_dlopen_self_static=cross -else - lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 - lt_status=$lt_dlunknown - cat > conftest.$ac_ext < -#endif - -#include - -#ifdef RTLD_GLOBAL -# define LT_DLGLOBAL RTLD_GLOBAL -#else -# ifdef DL_GLOBAL -# define LT_DLGLOBAL DL_GLOBAL -# else -# define LT_DLGLOBAL 0 -# endif -#endif - -/* We may have to define LT_DLLAZY_OR_NOW in the command line if we - find out it does not work in some platform. */ -#ifndef LT_DLLAZY_OR_NOW -# ifdef RTLD_LAZY -# define LT_DLLAZY_OR_NOW RTLD_LAZY -# else -# ifdef DL_LAZY -# define LT_DLLAZY_OR_NOW DL_LAZY -# else -# ifdef RTLD_NOW -# define LT_DLLAZY_OR_NOW RTLD_NOW -# else -# ifdef DL_NOW -# define LT_DLLAZY_OR_NOW DL_NOW -# else -# define LT_DLLAZY_OR_NOW 0 -# endif -# endif -# endif -# endif -#endif - -#ifdef __cplusplus -extern "C" void exit (int); -#endif - -void fnord() { int i=42;} -int main () -{ - void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); - int status = $lt_dlunknown; - - if (self) - { - if (dlsym (self,"fnord")) status = $lt_dlno_uscore; - else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; - /* dlclose (self); */ - } - - exit (status); -} -EOF - if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then - (./conftest; exit; ) 2>/dev/null - lt_status=$? - case x$lt_status in - x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;; - x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;; - x$lt_unknown|x*) lt_cv_dlopen_self_static=no ;; - esac - else : - # compilation failed - lt_cv_dlopen_self_static=no - fi -fi -rm -fr conftest* - - -fi -echo "$as_me:$LINENO: result: $lt_cv_dlopen_self_static" >&5 -echo "${ECHO_T}$lt_cv_dlopen_self_static" >&6 - fi - - CPPFLAGS="$save_CPPFLAGS" - LDFLAGS="$save_LDFLAGS" - LIBS="$save_LIBS" - ;; - esac - - case $lt_cv_dlopen_self in - yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; - *) enable_dlopen_self=unknown ;; - esac - - case $lt_cv_dlopen_self_static in - yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; - *) enable_dlopen_self_static=unknown ;; - esac -fi - - -if test "$enable_shared" = yes && test "$GCC" = yes; then - case $archive_cmds in - *'~'*) - # FIXME: we may have to deal with multi-command sequences. - ;; - '$CC '*) - # Test whether the compiler implicitly links with -lc since on some - # systems, -lgcc has to come before -lc. If gcc already passes -lc - # to ld, don't add -lc before -lgcc. - echo "$as_me:$LINENO: checking whether -lc should be explicitly linked in" >&5 -echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >&6 - if test "${lt_cv_archive_cmds_need_lc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - $rm conftest* - echo 'static int dummy;' > conftest.$ac_ext - - if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - soname=conftest - lib=conftest - libobjs=conftest.$ac_objext - deplibs= - wl=$lt_cv_prog_cc_wl - compiler_flags=-v - linker_flags=-v - verstring= - output_objdir=. - libname=conftest - save_allow_undefined_flag=$allow_undefined_flag - allow_undefined_flag= - if { (eval echo "$as_me:$LINENO: \"$archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1\"") >&5 - (eval $archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } - then - lt_cv_archive_cmds_need_lc=no - else - lt_cv_archive_cmds_need_lc=yes - fi - allow_undefined_flag=$save_allow_undefined_flag - else - cat conftest.err 1>&5 - fi -fi - - echo "$as_me:$LINENO: result: $lt_cv_archive_cmds_need_lc" >&5 -echo "${ECHO_T}$lt_cv_archive_cmds_need_lc" >&6 - ;; - esac -fi -need_lc=${lt_cv_archive_cmds_need_lc-yes} - -# The second clause should only fire when bootstrapping the -# libtool distribution, otherwise you forgot to ship ltmain.sh -# with your package, and you will get complaints that there are -# no rules to generate ltmain.sh. -if test -f "$ltmain"; then - : -else - # If there is no Makefile yet, we rely on a make rule to execute - # `config.status --recheck' to rerun these tests and create the - # libtool script then. - test -f Makefile && make "$ltmain" -fi - -if test -f "$ltmain"; then - trap "$rm \"${ofile}T\"; exit 1" 1 2 15 - $rm -f "${ofile}T" - - echo creating $ofile - - # Now quote all the things that may contain metacharacters while being - # careful not to overquote the AC_SUBSTed values. We take copies of the - # variables and quote the copies for generation of the libtool script. - for var in echo old_CC old_CFLAGS SED \ - AR AR_FLAGS CC LD LN_S NM SHELL \ - reload_flag reload_cmds wl \ - pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \ - thread_safe_flag_spec whole_archive_flag_spec libname_spec \ - library_names_spec soname_spec \ - RANLIB old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \ - old_postuninstall_cmds archive_cmds archive_expsym_cmds postinstall_cmds \ - postuninstall_cmds extract_expsyms_cmds old_archive_from_expsyms_cmds \ - old_striplib striplib file_magic_cmd export_symbols_cmds \ - deplibs_check_method allow_undefined_flag no_undefined_flag \ - finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \ - global_symbol_to_c_name_address \ - hardcode_libdir_flag_spec hardcode_libdir_separator \ - sys_lib_search_path_spec sys_lib_dlsearch_path_spec \ - compiler_c_o compiler_o_lo need_locks exclude_expsyms include_expsyms; do - - case $var in - reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \ - old_postinstall_cmds | old_postuninstall_cmds | \ - export_symbols_cmds | archive_cmds | archive_expsym_cmds | \ - extract_expsyms_cmds | old_archive_from_expsyms_cmds | \ - postinstall_cmds | postuninstall_cmds | \ - finish_cmds | sys_lib_search_path_spec | sys_lib_dlsearch_path_spec) - # Double-quote double-evaled strings. - eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" - ;; - *) - eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\"" - ;; - esac - done - - cat <<__EOF__ > "${ofile}T" -#! $SHELL - -# `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. -# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP) -# NOTE: Changes made to this file will be lost: look at ltmain.sh. -# -# Copyright (C) 1996-2000 Free Software Foundation, Inc. -# Originally by Gordon Matzigkeit , 1996 -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# A sed that does not truncate output. -SED=$lt_SED - -# Sed that helps us avoid accidentally triggering echo(1) options like -n. -Xsed="${SED} -e s/^X//" - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi - -# ### BEGIN LIBTOOL CONFIG - -# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: - -# Shell to use when invoking shell scripts. -SHELL=$lt_SHELL - -# Whether or not to build shared libraries. -build_libtool_libs=$enable_shared - -# Whether or not to build static libraries. -build_old_libs=$enable_static - -# Whether or not to add -lc for building shared libraries. -build_libtool_need_lc=$need_lc - -# Whether or not to optimize for fast installation. -fast_install=$enable_fast_install - -# The host system. -host_alias=$host_alias -host=$host - -# An echo program that does not interpret backslashes. -echo=$lt_echo - -# The archiver. -AR=$lt_AR -AR_FLAGS=$lt_AR_FLAGS - -# The default C compiler. -CC=$lt_CC - -# Is the compiler the GNU C compiler? -with_gcc=$GCC - -# The linker used to build libraries. -LD=$lt_LD - -# Whether we need hard or soft links. -LN_S=$lt_LN_S - -# A BSD-compatible nm program. -NM=$lt_NM - -# A symbol stripping program -STRIP=$STRIP - -# Used to examine libraries when file_magic_cmd begins "file" -MAGIC_CMD=$MAGIC_CMD - -# Used on cygwin: DLL creation program. -DLLTOOL="$DLLTOOL" - -# Used on cygwin: object dumper. -OBJDUMP="$OBJDUMP" - -# Used on cygwin: assembler. -AS="$AS" - -# The name of the directory that contains temporary libtool files. -objdir=$objdir - -# How to create reloadable object files. -reload_flag=$lt_reload_flag -reload_cmds=$lt_reload_cmds - -# How to pass a linker flag through the compiler. -wl=$lt_wl - -# Object file suffix (normally "o"). -objext="$ac_objext" - -# Old archive suffix (normally "a"). -libext="$libext" - -# Executable file suffix (normally ""). -exeext="$exeext" - -# Additional compiler flags for building library objects. -pic_flag=$lt_pic_flag -pic_mode=$pic_mode - -# Does compiler simultaneously support -c and -o options? -compiler_c_o=$lt_compiler_c_o - -# Can we write directly to a .lo ? -compiler_o_lo=$lt_compiler_o_lo - -# Must we lock files when doing compilation ? -need_locks=$lt_need_locks - -# Do we need the lib prefix for modules? -need_lib_prefix=$need_lib_prefix - -# Do we need a version for libraries? -need_version=$need_version - -# Whether dlopen is supported. -dlopen_support=$enable_dlopen - -# Whether dlopen of programs is supported. -dlopen_self=$enable_dlopen_self - -# Whether dlopen of statically linked programs is supported. -dlopen_self_static=$enable_dlopen_self_static - -# Compiler flag to prevent dynamic linking. -link_static_flag=$lt_link_static_flag - -# Compiler flag to turn off builtin functions. -no_builtin_flag=$lt_no_builtin_flag - -# Compiler flag to allow reflexive dlopens. -export_dynamic_flag_spec=$lt_export_dynamic_flag_spec - -# Compiler flag to generate shared objects directly from archives. -whole_archive_flag_spec=$lt_whole_archive_flag_spec - -# Compiler flag to generate thread-safe objects. -thread_safe_flag_spec=$lt_thread_safe_flag_spec - -# Library versioning type. -version_type=$version_type - -# Format of library name prefix. -libname_spec=$lt_libname_spec - -# List of archive names. First name is the real one, the rest are links. -# The last name is the one that the linker finds with -lNAME. -library_names_spec=$lt_library_names_spec - -# The coded name of the library, if different from the real name. -soname_spec=$lt_soname_spec - -# Commands used to build and install an old-style archive. -RANLIB=$lt_RANLIB -old_archive_cmds=$lt_old_archive_cmds -old_postinstall_cmds=$lt_old_postinstall_cmds -old_postuninstall_cmds=$lt_old_postuninstall_cmds - -# Create an old-style archive from a shared archive. -old_archive_from_new_cmds=$lt_old_archive_from_new_cmds - -# Create a temporary old-style archive to link instead of a shared archive. -old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds - -# Commands used to build and install a shared archive. -archive_cmds=$lt_archive_cmds -archive_expsym_cmds=$lt_archive_expsym_cmds -postinstall_cmds=$lt_postinstall_cmds -postuninstall_cmds=$lt_postuninstall_cmds - -# Commands to strip libraries. -old_striplib=$lt_old_striplib -striplib=$lt_striplib - -# Method to check whether dependent libraries are shared objects. -deplibs_check_method=$lt_deplibs_check_method - -# Command to use when deplibs_check_method == file_magic. -file_magic_cmd=$lt_file_magic_cmd - -# Flag that allows shared libraries with undefined symbols to be built. -allow_undefined_flag=$lt_allow_undefined_flag - -# Flag that forces no undefined symbols. -no_undefined_flag=$lt_no_undefined_flag - -# Commands used to finish a libtool library installation in a directory. -finish_cmds=$lt_finish_cmds - -# Same as above, but a single script fragment to be evaled but not shown. -finish_eval=$lt_finish_eval - -# Take the output of nm and produce a listing of raw symbols and C names. -global_symbol_pipe=$lt_global_symbol_pipe - -# Transform the output of nm in a proper C declaration -global_symbol_to_cdecl=$lt_global_symbol_to_cdecl - -# Transform the output of nm in a C name address pair -global_symbol_to_c_name_address=$lt_global_symbol_to_c_name_address - -# This is the shared library runtime path variable. -runpath_var=$runpath_var - -# This is the shared library path variable. -shlibpath_var=$shlibpath_var - -# Is shlibpath searched before the hard-coded library search path? -shlibpath_overrides_runpath=$shlibpath_overrides_runpath - -# How to hardcode a shared library path into an executable. -hardcode_action=$hardcode_action - -# Whether we should hardcode library paths into libraries. -hardcode_into_libs=$hardcode_into_libs - -# Flag to hardcode \$libdir into a binary during linking. -# This must work even if \$libdir does not exist. -hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec - -# Whether we need a single -rpath flag with a separated argument. -hardcode_libdir_separator=$lt_hardcode_libdir_separator - -# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the -# resulting binary. -hardcode_direct=$hardcode_direct - -# Set to yes if using the -LDIR flag during linking hardcodes DIR into the -# resulting binary. -hardcode_minus_L=$hardcode_minus_L - -# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into -# the resulting binary. -hardcode_shlibpath_var=$hardcode_shlibpath_var - -# Variables whose values should be saved in libtool wrapper scripts and -# restored at relink time. -variables_saved_for_relink="$variables_saved_for_relink" - -# Whether libtool must link a program against all its dependency libraries. -link_all_deplibs=$link_all_deplibs - -# Compile-time system search path for libraries -sys_lib_search_path_spec=$lt_sys_lib_search_path_spec - -# Run-time system search path for libraries -sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec - -# Fix the shell variable \$srcfile for the compiler. -fix_srcfile_path="$fix_srcfile_path" - -# Set to yes if exported symbols are required. -always_export_symbols=$always_export_symbols - -# The commands to list exported symbols. -export_symbols_cmds=$lt_export_symbols_cmds - -# The commands to extract the exported symbol list from a shared archive. -extract_expsyms_cmds=$lt_extract_expsyms_cmds - -# Symbols that should not be listed in the preloaded symbols. -exclude_expsyms=$lt_exclude_expsyms - -# Symbols that must always be exported. -include_expsyms=$lt_include_expsyms - -# ### END LIBTOOL CONFIG - -__EOF__ - - case $host_os in - aix3*) - cat <<\EOF >> "${ofile}T" - -# 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. -if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES -fi -EOF - ;; - esac - - case $host_os in - cygwin* | mingw* | pw32* | os2*) - cat <<'EOF' >> "${ofile}T" - # This is a source program that is used to create dlls on Windows - # Don't remove nor modify the starting and closing comments -# /* ltdll.c starts here */ -# #define WIN32_LEAN_AND_MEAN -# #include -# #undef WIN32_LEAN_AND_MEAN -# #include -# -# #ifndef __CYGWIN__ -# # ifdef __CYGWIN32__ -# # define __CYGWIN__ __CYGWIN32__ -# # endif -# #endif -# -# #ifdef __cplusplus -# extern "C" { -# #endif -# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved); -# #ifdef __cplusplus -# } -# #endif -# -# #ifdef __CYGWIN__ -# #include -# DECLARE_CYGWIN_DLL( DllMain ); -# #endif -# HINSTANCE __hDllInstance_base; -# -# BOOL APIENTRY -# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved) -# { -# __hDllInstance_base = hInst; -# return TRUE; -# } -# /* ltdll.c ends here */ - # This is a source program that is used to create import libraries - # on Windows for dlls which lack them. Don't remove nor modify the - # starting and closing comments -# /* impgen.c starts here */ -# /* Copyright (C) 1999-2000 Free Software Foundation, Inc. -# -# This file is part of GNU libtool. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# */ -# -# #include /* for printf() */ -# #include /* for open(), lseek(), read() */ -# #include /* for O_RDONLY, O_BINARY */ -# #include /* for strdup() */ -# -# /* O_BINARY isn't required (or even defined sometimes) under Unix */ -# #ifndef O_BINARY -# #define O_BINARY 0 -# #endif -# -# static unsigned int -# pe_get16 (fd, offset) -# int fd; -# int offset; -# { -# unsigned char b[2]; -# lseek (fd, offset, SEEK_SET); -# read (fd, b, 2); -# return b[0] + (b[1]<<8); -# } -# -# static unsigned int -# pe_get32 (fd, offset) -# int fd; -# int offset; -# { -# unsigned char b[4]; -# lseek (fd, offset, SEEK_SET); -# read (fd, b, 4); -# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24); -# } -# -# static unsigned int -# pe_as32 (ptr) -# void *ptr; -# { -# unsigned char *b = ptr; -# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24); -# } -# -# int -# main (argc, argv) -# int argc; -# char *argv[]; -# { -# int dll; -# unsigned long pe_header_offset, opthdr_ofs, num_entries, i; -# unsigned long export_rva, export_size, nsections, secptr, expptr; -# unsigned long name_rvas, nexp; -# unsigned char *expdata, *erva; -# char *filename, *dll_name; -# -# filename = argv[1]; -# -# dll = open(filename, O_RDONLY|O_BINARY); -# if (dll < 1) -# return 1; -# -# dll_name = filename; -# -# for (i=0; filename[i]; i++) -# if (filename[i] == '/' || filename[i] == '\\' || filename[i] == ':') -# dll_name = filename + i +1; -# -# pe_header_offset = pe_get32 (dll, 0x3c); -# opthdr_ofs = pe_header_offset + 4 + 20; -# num_entries = pe_get32 (dll, opthdr_ofs + 92); -# -# if (num_entries < 1) /* no exports */ -# return 1; -# -# export_rva = pe_get32 (dll, opthdr_ofs + 96); -# export_size = pe_get32 (dll, opthdr_ofs + 100); -# nsections = pe_get16 (dll, pe_header_offset + 4 +2); -# secptr = (pe_header_offset + 4 + 20 + -# pe_get16 (dll, pe_header_offset + 4 + 16)); -# -# expptr = 0; -# for (i = 0; i < nsections; i++) -# { -# char sname[8]; -# unsigned long secptr1 = secptr + 40 * i; -# unsigned long vaddr = pe_get32 (dll, secptr1 + 12); -# unsigned long vsize = pe_get32 (dll, secptr1 + 16); -# unsigned long fptr = pe_get32 (dll, secptr1 + 20); -# lseek(dll, secptr1, SEEK_SET); -# read(dll, sname, 8); -# if (vaddr <= export_rva && vaddr+vsize > export_rva) -# { -# expptr = fptr + (export_rva - vaddr); -# if (export_rva + export_size > vaddr + vsize) -# export_size = vsize - (export_rva - vaddr); -# break; -# } -# } -# -# expdata = (unsigned char*)malloc(export_size); -# lseek (dll, expptr, SEEK_SET); -# read (dll, expdata, export_size); -# erva = expdata - export_rva; -# -# nexp = pe_as32 (expdata+24); -# name_rvas = pe_as32 (expdata+32); -# -# printf ("EXPORTS\n"); -# for (i = 0; i> "${ofile}T" || (rm -f "${ofile}T"; exit 1) - - mv -f "${ofile}T" "$ofile" || \ - (rm -f "$ofile" && cp "${ofile}T" "$ofile" && rm -f "${ofile}T") - chmod +x "$ofile" -fi - - - - - -# This can be used to rebuild libtool when needed -LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh" - -# Always use our own libtool. -LIBTOOL='$(SHELL) $(top_builddir)/libtool' - -# Prevent multiple expansion - - -extrasub="$extrasub"' -/@subdir@/{ -h -g -s/@subdir@/vacall_r/ -p -g -s/@subdir@/trampoline_r/ -p -d -} -' - - - -subdirs="$subdirs vacall_r trampoline_r" - - ac_config_files="$ac_config_files Makefile" -cat >confcache <<\_ACEOF -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs, see configure's option --config-cache. -# It is not useful on other systems. If it contains results you don't -# want to keep, you may remove or edit it. -# -# config.status only pays attention to the cache file if you give it -# the --recheck option to rerun configure. -# -# `ac_cv_env_foo' variables (set or unset) will be overridden when -# loading this file, other *unset* `ac_cv_foo' will be assigned the -# following values. - -_ACEOF - -# The following way of writing the cache mishandles newlines in values, -# but we know of no workaround that is simple, portable, and efficient. -# So, don't put newlines in cache variables' values. -# Ultrix sh set writes to stderr and can't be redirected directly, -# and sets the high bit in the cache file unless we assign to the vars. -{ - (set) 2>&1 | - case `(ac_space=' '; set | grep ac_space) 2>&1` in - *ac_space=\ *) - # `set' does not quote correctly, so add quotes (double-quote - # substitution turns \\\\ into \\, and sed turns \\ into \). - sed -n \ - "s/'/'\\\\''/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" - ;; - *) - # `set' quotes correctly as required by POSIX, so do not add quotes. - sed -n \ - "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" - ;; - esac; -} | - sed ' - t clear - : clear - s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ - t end - /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ - : end' >>confcache -if diff $cache_file confcache >/dev/null 2>&1; then :; else - if test -w $cache_file; then - test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file" - cat confcache >$cache_file - else - echo "not updating unwritable cache $cache_file" - fi -fi -rm -f confcache - -test "x$prefix" = xNONE && prefix=$ac_default_prefix -# Let make expand exec_prefix. -test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' - -# VPATH may cause trouble with some makes, so we remove $(srcdir), -# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and -# trailing colons and then remove the whole line if VPATH becomes empty -# (actually we leave an empty line to preserve line numbers). -if test "x$srcdir" = x.; then - ac_vpsub='/^[ ]*VPATH[ ]*=/{ -s/:*\$(srcdir):*/:/; -s/:*\${srcdir}:*/:/; -s/:*@srcdir@:*/:/; -s/^\([^=]*=[ ]*\):*/\1/; -s/:*$//; -s/^[^=]*=[ ]*$//; -}' -fi - -# Transform confdefs.h into DEFS. -# Protect against shell expansion while executing Makefile rules. -# Protect against Makefile macro expansion. -# -# If the first sed substitution is executed (which looks for macros that -# take arguments), then we branch to the quote section. Otherwise, -# look for a macro that doesn't take arguments. -cat >confdef2opt.sed <<\_ACEOF -t clear -: clear -s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\),-D\1=\2,g -t quote -s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\),-D\1=\2,g -t quote -d -: quote -s,[ `~#$^&*(){}\\|;'"<>?],\\&,g -s,\[,\\&,g -s,\],\\&,g -s,\$,$$,g -p -_ACEOF -# We use echo to avoid assuming a particular line-breaking character. -# The extra dot is to prevent the shell from consuming trailing -# line-breaks from the sub-command output. A line-break within -# single-quotes doesn't work because, if this script is created in a -# platform that uses two characters for line-breaks (e.g., DOS), tr -# would break. -ac_LF_and_DOT=`echo; echo .` -DEFS=`sed -n -f confdef2opt.sed confdefs.h | tr "$ac_LF_and_DOT" ' .'` -rm -f confdef2opt.sed - - -ac_libobjs= -ac_ltlibobjs= -for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue - # 1. Remove the extension, and $U if already installed. - ac_i=`echo "$ac_i" | - sed 's/\$U\././;s/\.o$//;s/\.obj$//'` - # 2. Add them. - ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext" - ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo' -done -LIBOBJS=$ac_libobjs - -LTLIBOBJS=$ac_ltlibobjs - - - -: ${CONFIG_STATUS=./config.status} -ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files $CONFIG_STATUS" -{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5 -echo "$as_me: creating $CONFIG_STATUS" >&6;} -cat >$CONFIG_STATUS <<_ACEOF -#! $SHELL -# Generated by $as_me. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false -SHELL=\${CONFIG_SHELL-$SHELL} -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## - -# Be Bourne compatible -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' -elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then - set -o posix -fi -DUALCASE=1; export DUALCASE # for MKS sh - -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - - -# Work around bugs in pre-3.0 UWIN ksh. -$as_unset ENV MAIL MAILPATH -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -for as_var in \ - LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ - LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ - LC_TELEPHONE LC_TIME -do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var - else - $as_unset $as_var - fi -done - -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - - -# Name of the executable. -as_me=`$as_basename "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)$' \| \ - . : '\(.\)' 2>/dev/null || -echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } - /^X\/\(\/\/\)$/{ s//\1/; q; } - /^X\/\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - - -# PATH needs CR, and LINENO needs CR and PATH. -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" || { - # Find who we are. Look in the path if we contain no path at all - # relative or not. - case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done - - ;; - esac - # We did not find ourselves, most probably we were run as `sh COMMAND' - # in which case we are not to be found in the path. - if test "x$as_myself" = x; then - as_myself=$0 - fi - if test ! -f "$as_myself"; then - { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5 -echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;} - { (exit 1); exit 1; }; } - fi - case $CONFIG_SHELL in - '') - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for as_base in sh bash ksh sh5; do - case $as_dir in - /*) - if ("$as_dir/$as_base" -c ' - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then - $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } - $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } - CONFIG_SHELL=$as_dir/$as_base - export CONFIG_SHELL - exec "$CONFIG_SHELL" "$0" ${1+"$@"} - fi;; - esac - done -done -;; - esac - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line before each line; the second 'sed' does the real - # work. The second script uses 'N' to pair each line-number line - # with the numbered line, and appends trailing '-' during - # substitution so that $LINENO is not a special case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) - sed '=' <$as_myself | - sed ' - N - s,$,-, - : loop - s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, - t loop - s,-$,, - s,^['$as_cr_digits']*\n,, - ' >$as_me.lineno && - chmod +x $as_me.lineno || - { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5 -echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;} - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensible to this). - . ./$as_me.lineno - # Exit status is that of the last command. - exit -} - - -case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in - *c*,-n*) ECHO_N= ECHO_C=' -' ECHO_T=' ' ;; - *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; - *) ECHO_N= ECHO_C='\c' ECHO_T= ;; -esac - -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -rm -f conf$$ conf$$.exe conf$$.file -echo >conf$$.file -if ln -s conf$$.file conf$$ 2>/dev/null; then - # We could just check for DJGPP; but this test a) works b) is more generic - # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). - if test -f conf$$.exe; then - # Don't use ln at all; we don't have any links - as_ln_s='cp -p' - else - as_ln_s='ln -s' - fi -elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.file - -if mkdir -p . 2>/dev/null; then - as_mkdir_p=: -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -as_executable_p="test -f" - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -# IFS -# We need space, tab and new line, in precisely that order. -as_nl=' -' -IFS=" $as_nl" - -# CDPATH. -$as_unset CDPATH - -exec 6>&1 - -# Open the log real soon, to keep \$[0] and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. Logging --version etc. is OK. -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX -} >&5 -cat >&5 <<_CSEOF - -This file was extended by $as_me, which was -generated by GNU Autoconf 2.59. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -_CSEOF -echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5 -echo >&5 -_ACEOF - -# Files that config.status was made for. -if test -n "$ac_config_files"; then - echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS -fi - -if test -n "$ac_config_headers"; then - echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS -fi - -if test -n "$ac_config_links"; then - echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS -fi - -if test -n "$ac_config_commands"; then - echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS -fi - -cat >>$CONFIG_STATUS <<\_ACEOF - -ac_cs_usage="\ -\`$as_me' instantiates files from templates according to the -current configuration. - -Usage: $0 [OPTIONS] [FILE]... - - -h, --help print this help, then exit - -V, --version print version number, then exit - -q, --quiet do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - -Configuration files: -$config_files - -Report bugs to ." -_ACEOF - -cat >>$CONFIG_STATUS <<_ACEOF -ac_cs_version="\\ -config.status -configured by $0, generated by GNU Autoconf 2.59, - with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" - -Copyright (C) 2003 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." -srcdir=$srcdir -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF -# If no file are specified by the user, then we need to provide default -# value. By we need to know if files were specified by the user. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=*) - ac_option=`expr "x$1" : 'x\([^=]*\)='` - ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'` - ac_shift=: - ;; - -*) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - *) # This is not an option, so the user has probably given explicit - # arguments. - ac_option=$1 - ac_need_defaults=false;; - esac - - case $ac_option in - # Handling of the options. -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --vers* | -V ) - echo "$ac_cs_version"; exit 0 ;; - --he | --h) - # Conflict between --help and --header - { { echo "$as_me:$LINENO: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&2;} - { (exit 1); exit 1; }; };; - --help | --hel | -h ) - echo "$ac_cs_usage"; exit 0 ;; - --debug | --d* | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - CONFIG_FILES="$CONFIG_FILES $ac_optarg" - ac_need_defaults=false;; - --header | --heade | --head | --hea ) - $ac_shift - CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" - ac_need_defaults=false;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&2;} - { (exit 1); exit 1; }; } ;; - - *) ac_config_targets="$ac_config_targets $1" ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF -if \$ac_cs_recheck; then - echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 - exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion -fi - -_ACEOF - - - - - -cat >>$CONFIG_STATUS <<\_ACEOF -for ac_config_target in $ac_config_targets -do - case "$ac_config_target" in - # Handling of arguments. - "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; - *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 -echo "$as_me: error: invalid argument: $ac_config_target" >&2;} - { (exit 1); exit 1; }; };; - esac -done - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason to put it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Create a temporary directory, and hook for its removal unless debugging. -$debug || -{ - trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 - trap '{ (exit 1); exit 1; }' 1 2 13 15 -} - -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" -} || -{ - tmp=./confstat$$-$RANDOM - (umask 077 && mkdir $tmp) -} || -{ - echo "$me: cannot create a temporary directory in ." >&2 - { (exit 1); exit 1; } -} - -_ACEOF - -cat >>$CONFIG_STATUS <<_ACEOF - -# -# CONFIG_FILES section. -# - -# No need to generate the scripts if there are no CONFIG_FILES. -# This happens for instance when ./config.status config.h -if test -n "\$CONFIG_FILES"; then - # Protect against being on the right side of a sed subst in config.status. - sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g; - s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF -s,@SHELL@,$SHELL,;t t -s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t -s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t -s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t -s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t -s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t -s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t -s,@exec_prefix@,$exec_prefix,;t t -s,@prefix@,$prefix,;t t -s,@program_transform_name@,$program_transform_name,;t t -s,@bindir@,$bindir,;t t -s,@sbindir@,$sbindir,;t t -s,@libexecdir@,$libexecdir,;t t -s,@datadir@,$datadir,;t t -s,@sysconfdir@,$sysconfdir,;t t -s,@sharedstatedir@,$sharedstatedir,;t t -s,@localstatedir@,$localstatedir,;t t -s,@libdir@,$libdir,;t t -s,@includedir@,$includedir,;t t -s,@oldincludedir@,$oldincludedir,;t t -s,@infodir@,$infodir,;t t -s,@mandir@,$mandir,;t t -s,@build_alias@,$build_alias,;t t -s,@host_alias@,$host_alias,;t t -s,@target_alias@,$target_alias,;t t -s,@DEFS@,$DEFS,;t t -s,@ECHO_C@,$ECHO_C,;t t -s,@ECHO_N@,$ECHO_N,;t t -s,@ECHO_T@,$ECHO_T,;t t -s,@LIBS@,$LIBS,;t t -s,@CC@,$CC,;t t -s,@CFLAGS@,$CFLAGS,;t t -s,@LDFLAGS@,$LDFLAGS,;t t -s,@CPPFLAGS@,$CPPFLAGS,;t t -s,@ac_ct_CC@,$ac_ct_CC,;t t -s,@EXEEXT@,$EXEEXT,;t t -s,@OBJEXT@,$OBJEXT,;t t -s,@CPP@,$CPP,;t t -s,@EGREP@,$EGREP,;t t -s,@CC_GCC@,$CC_GCC,;t t -s,@GCC_X_NONE@,$GCC_X_NONE,;t t -s,@RANLIB@,$RANLIB,;t t -s,@SET_MAKE@,$SET_MAKE,;t t -s,@INSTALL@,$INSTALL,;t t -s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t -s,@INSTALL_DATA@,$INSTALL_DATA,;t t -s,@CP@,$CP,;t t -s,@LN@,$LN,;t t -s,@LN_S@,$LN_S,;t t -s,@build@,$build,;t t -s,@build_cpu@,$build_cpu,;t t -s,@build_vendor@,$build_vendor,;t t -s,@build_os@,$build_os,;t t -s,@host@,$host,;t t -s,@host_cpu@,$host_cpu,;t t -s,@host_vendor@,$host_vendor,;t t -s,@host_os@,$host_os,;t t -s,@ECHO@,$ECHO,;t t -s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t -s,@STRIP@,$STRIP,;t t -s,@ac_ct_STRIP@,$ac_ct_STRIP,;t t -s,@LIBTOOL@,$LIBTOOL,;t t -s,@subdirs@,$subdirs,;t t -s,@LIBOBJS@,$LIBOBJS,;t t -s,@LTLIBOBJS@,$LTLIBOBJS,;t t -CEOF - -_ACEOF - - cat >>$CONFIG_STATUS <<\_ACEOF - # Split the substitutions into bite-sized pieces for seds with - # small command number limits, like on Digital OSF/1 and HP-UX. - ac_max_sed_lines=48 - ac_sed_frag=1 # Number of current file. - ac_beg=1 # First line for current file. - ac_end=$ac_max_sed_lines # Line after last line for current file. - ac_more_lines=: - ac_sed_cmds= - while $ac_more_lines; do - if test $ac_beg -gt 1; then - sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - else - sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - fi - if test ! -s $tmp/subs.frag; then - ac_more_lines=false - else - # The purpose of the label and of the branching condition is to - # speed up the sed processing (if there are no `@' at all, there - # is no need to browse any of the substitutions). - # These are the two extra sed commands mentioned above. - (echo ':t - /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed - if test -z "$ac_sed_cmds"; then - ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed" - else - ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed" - fi - ac_sed_frag=`expr $ac_sed_frag + 1` - ac_beg=$ac_end - ac_end=`expr $ac_end + $ac_max_sed_lines` - fi - done - if test -z "$ac_sed_cmds"; then - ac_sed_cmds=cat - fi -fi # test -n "$CONFIG_FILES" - -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF -for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; - esac - - # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories. - ac_dir=`(dirname "$ac_file") 2>/dev/null || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac - - - - if test x"$ac_file" != x-; then - { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - rm -f "$ac_file" - fi - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - configure_input= - else - configure_input="$ac_file. " - fi - configure_input=$configure_input"Generated from `echo $ac_file_in | - sed 's,.*/,,'` by configure." - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF - sed "$ac_vpsub -$extrasub -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s,@configure_input@,$configure_input,;t t -s,@srcdir@,$ac_srcdir,;t t -s,@abs_srcdir@,$ac_abs_srcdir,;t t -s,@top_srcdir@,$ac_top_srcdir,;t t -s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t -s,@builddir@,$ac_builddir,;t t -s,@abs_builddir@,$ac_abs_builddir,;t t -s,@top_builddir@,$ac_top_builddir,;t t -s,@abs_top_builddir@,$ac_abs_top_builddir,;t t -" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out - rm -f $tmp/stdin - if test x"$ac_file" != x-; then - mv $tmp/out $ac_file - else - cat $tmp/out - rm -f $tmp/out - fi - -done -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF - -{ (exit 0); exit 0; } -_ACEOF -chmod +x $CONFIG_STATUS -ac_clean_files=$ac_clean_files_save - - -# configure is writing to config.log, and then calls config.status. -# config.status does its own redirection, appending to config.log. -# Unfortunately, on DOS this fails, as config.log is still kept open -# by configure, so config.status won't be able to write to it; its -# output is simply discarded. So we exec the FD to /dev/null, -# effectively closing config.log, so it can be properly (re)opened and -# appended to by config.status. When coming back to configure, we -# need to make the FD available again. -if test "$no_create" != yes; then - ac_cs_success=: - ac_config_status_args= - test "$silent" = yes && - ac_config_status_args="$ac_config_status_args --quiet" - exec 5>/dev/null - $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false - exec 5>>config.log - # Use ||, not &&, to avoid exiting from the if with $? = 1, which - # would make configure fail if this is the last instruction. - $ac_cs_success || { (exit 1); exit 1; } -fi - -# -# CONFIG_SUBDIRS section. -# -if test "$no_recursion" != yes; then - - # Remove --cache-file and --srcdir arguments so they do not pile up. - ac_sub_configure_args= - ac_prev= - for ac_arg in $ac_configure_args; do - if test -n "$ac_prev"; then - ac_prev= - continue - fi - case $ac_arg in - -cache-file | --cache-file | --cache-fil | --cache-fi \ - | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) - ac_prev=cache_file ;; - -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ - | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* \ - | --c=*) - ;; - --config-cache | -C) - ;; - -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) - ac_prev=srcdir ;; - -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) - ;; - -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) - ac_prev=prefix ;; - -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) - ;; - *) ac_sub_configure_args="$ac_sub_configure_args $ac_arg" ;; - esac - done - - # Always prepend --prefix to ensure using the same prefix - # in subdir configurations. - ac_sub_configure_args="--prefix=$prefix $ac_sub_configure_args" - - ac_popdir=`pwd` - for ac_dir in : $subdirs; do test "x$ac_dir" = x: && continue - - # Do not complain, so a configure script can configure whichever - # parts of a large source tree are present. - test -d $srcdir/$ac_dir || continue - - { echo "$as_me:$LINENO: configuring in $ac_dir" >&5 -echo "$as_me: configuring in $ac_dir" >&6;} - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac - - - cd $ac_dir - - # Check for guested configure; otherwise get Cygnus style configure. - if test -f $ac_srcdir/configure.gnu; then - ac_sub_configure="$SHELL '$ac_srcdir/configure.gnu'" - elif test -f $ac_srcdir/configure; then - ac_sub_configure="$SHELL '$ac_srcdir/configure'" - elif test -f $ac_srcdir/configure.in; then - ac_sub_configure=$ac_configure - else - { echo "$as_me:$LINENO: WARNING: no configuration information is in $ac_dir" >&5 -echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2;} - ac_sub_configure= - fi - - # The recursion is here. - if test -n "$ac_sub_configure"; then - # Make the cache file name correct relative to the subdirectory. - case $cache_file in - [\\/]* | ?:[\\/]* ) ac_sub_cache_file=$cache_file ;; - *) # Relative path. - ac_sub_cache_file=$ac_top_builddir$cache_file ;; - esac - - { echo "$as_me:$LINENO: running $ac_sub_configure $ac_sub_configure_args --cache-file=$ac_sub_cache_file --srcdir=$ac_srcdir" >&5 -echo "$as_me: running $ac_sub_configure $ac_sub_configure_args --cache-file=$ac_sub_cache_file --srcdir=$ac_srcdir" >&6;} - # The eval makes quoting arguments work. - eval $ac_sub_configure $ac_sub_configure_args \ - --cache-file=$ac_sub_cache_file --srcdir=$ac_srcdir || - { { echo "$as_me:$LINENO: error: $ac_sub_configure failed for $ac_dir" >&5 -echo "$as_me: error: $ac_sub_configure failed for $ac_dir" >&2;} - { (exit 1); exit 1; }; } - fi - - cd $ac_popdir - done -fi - DELETED ffcall/callback/configure.in Index: ffcall/callback/configure.in ================================================================== --- ffcall/callback/configure.in +++ /dev/null @@ -1,35 +0,0 @@ -dnl AUTOCONF configuration for CALLBACK -dnl Bruno Haible 2000-04-02 -dnl -AC_INIT(trampoline_r/trampoline_r.h.in) -AC_PROG_CC -AC_PROG_CPP -AC_PROG_GCC_TRADITIONAL -CL_CC_GCC -CL_PROG_RANLIB -AC_PROG_MAKE_SET -CL_PROG_INSTALL -CL_PROG_CP -CL_PROG_LN -CL_PROG_LN_S -CL_CANONICAL_HOST(../autoconf) -CL_CANONICAL_HOST_CPU_FOR_FFCALL -PACKAGE=callback -AM_DISABLE_SHARED -AM_PROG_LIBTOOL -dnl This piece of sed script replaces every line containing '@subdir@' -dnl by several consecutive lines, each referencing one subdir. -extrasub="$extrasub"' -/@subdir@/{ -h -g -s/@subdir@/vacall_r/ -p -g -s/@subdir@/trampoline_r/ -p -d -} -' -CL_CONFIG_SUBDIRS(vacall_r trampoline_r) -AC_OUTPUT(Makefile) DELETED ffcall/callback/minitests.c Index: ffcall/callback/minitests.c ================================================================== --- ffcall/callback/minitests.c +++ /dev/null @@ -1,2 +0,0 @@ -#define SKIP_EXTRA_STRUCTS -#include "tests.c" DELETED ffcall/callback/tests.c Index: ffcall/callback/tests.c ================================================================== --- ffcall/callback/tests.c +++ /dev/null @@ -1,1189 +0,0 @@ -/* Some random tests for vacall. */ - -/* - * Copyright 1993 Bill Triggs, - * Copyright 1995-1999, 2002 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#include -#include -#include -#include "callback.h" -FILE* out; - -/* NB since K&R C always passes chars and shorts as ints and floats as doubles, - * unprototyped ANSI-C functions must do the same, eg: - * - foo(x) float x; { ... } passes x as a double & converts it to a float internally. - * - foo(float x) { ... } passes x as a float. - */ -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -#define _ , -#define _P(ARGS,TYPES) (TYPES) -#define FTYPE(RETTYPE,ARGTYPES) (RETTYPE (*) ARGTYPES) -#else -#define _ ; -#define _P(ARGS,TYPES) ARGS TYPES; -#define FTYPE(RETTYPE,ARGTYPES) (RETTYPE (*) ()) -#endif - -#if defined(__hppa__) && defined(__GNUC__) -#if (__GNUC__ == 2 && __GNUC_MINOR__ < 6) -/* gcc-2.5.2 bugs prevent the T test from working. */ -#define SKIP_T -#endif -#endif -#if defined(__m68k__) && defined(sun) && !defined(__GNUC__) -/* A SunOS 4.0.3 cc bug is triggered by the va_arg_struct macro. */ -#define SKIP_STRUCTS -#endif -#if defined(__m68k__) && defined(__GNUC__) -/* "gcc-2.6.3 -freg-struct-return" returns T = struct { char c[3]; } (which - * has size 4 !) in memory, in contrast to struct { char a,b,c; } and - * struct { char c[4]; } and struct { char a,b,c,d; } which have the same - * size and the same alignment but are returned in registers. I don't know why. - */ -#define SKIP_T -#endif -#if defined(__i386__) && defined(__GNUC__) -#if (__GNUC__ == 2) && (__GNUC_MINOR__ == 7) -/* Problem with gcc-2.7.x on Linux/ELF: The X test fails. - * The calling convention for C functions returning structures of size > 8 bytes - * apparently has changed between gcc-2.6.3 and gcc-2.7 (all i386 platforms), - * and vacall supports only the old one. Since gcc-2.8 will switch back to - * gcc-2.6.3's calling convention, I won't change ffcall/vacall for this. - * Just hide the problem by not running the test. The impact isn't big for - * CLISP: Callbacks returning structures > 8 bytes won't work. - */ -#define SKIP_X -#endif -#endif -#if defined(__sparc__) && defined(sun) && defined(__SUNPRO_C) /* SUNWspro cc */ -/* SunPRO cc miscompiles the simulator function for X_BcdB: d.i[1] is - * temporarily stored in %l2 and put onto the stack from %l2, but in between - * the copy of X has used %l2 as a counter without saving and restoring its - * value. - */ -#define SKIP_X -#endif -#if defined(__mipsn32__) && !defined(__GNUC__) -/* The X test crashes for an unknown reason. */ -#define SKIP_X -#endif - -#define uchar unsigned char -#define ushort unsigned short -#define uint unsigned int -#define ulong unsigned long - -typedef struct { char x; } Char; -typedef struct { short x; } Short; -typedef struct { int x; } Int; -typedef struct { long x; } Long; -typedef struct { float x; } Float; -typedef struct { double x; } Double; -typedef struct { char c; float f; } A; -typedef struct { double d; int i[3]; } B; -typedef struct { long l1; long l2; } J; -typedef struct { char c[3]; } T; -typedef struct { char c[33],c1; } X; - -char c1='a', c2=127, c3=(char)128, c4=(char)255, c5=-1; -short s1=32767, s2=(short)32768, s3=3, s4=4, s5=5, s6=6, s7=7, s8=8, s9=9; -int i1=1, i2=2, i3=3, i4=4, i5=5, i6=6, i7=7, i8=8, i9=9, - i10=11, i11=12, i12=13, i13=14, i14=15, i15=16, i16=17; -long l1=1, l2=2, l3=3, l4=4, l5=5, l6=6, l7=7, l8=8, l9=9; -#ifdef HAVE_LONGLONG -long long ll1 = 3875056143130689530LL; -#endif -float f1=0.1, f2=0.2, f3=0.3, f4=0.4, f5=0.5, f6=0.6, f7=0.7, f8=0.8, f9=0.9, - f10=1.1, f11=1.2, f12=1.3, f13=1.4, f14=1.5, f15=1.6, f16=1.7; -double d1=0.1, d2=0.2, d3=0.3, d4=0.4, d5=0.5, d6=0.6, d7=0.7, d8=0.8, d9=0.9, - d10=1.1, d11=1.2, d12=1.3, d13=1.4, d14=1.5, d15=1.6, d16=1.7; - -uchar uc1='a', uc2=127, uc3=128, uc4=255, uc5=-1; -ushort us1=1, us2=2, us3=3, us4=4, us5=5, us6=6, us7=7, us8=8, us9=9; -uint ui1=1, ui2=2, ui3=3, ui4=4, ui5=5, ui6=6, ui7=7, ui8=8, ui9=9; -ulong ul1=1, ul2=2, ul3=3, ul4=4, ul5=5, ul6=6, ul7=7, ul8=8, ul9=9; - -char *str1="hello",str2[]="goodbye",*str3="still here?"; -Char C1={'A'}, C2={'B'}, C3={'C'}, C4={'\377'}, C5={-1}; -Short S1={1}, S2={2}, S3={3}, S4={4}, S5={5}, S6={6}, S7={7}, S8={8}, S9={9}; -Int I1={1}, I2={2}, I3={3}, I4={4}, I5={5}, I6={6}, I7={7}, I8={8}, I9={9}; -Float F1={0.1}, F2={0.2}, F3={0.3}, F4={0.4}, F5={0.5}, F6={0.6}, F7={0.7}, F8={0.8}, F9={0.9}; -Double D1={0.1}, D2={0.2}, D3={0.3}, D4={0.4}, D5={0.5}, D6={0.6}, D7={0.7}, D8={0.8}, D9={0.9}; - -A A1={'a',0.1},A2={'b',0.2},A3={'\377',0.3}; -B B1={0.1,{1,2,3}},B2={0.2,{5,4,3}}; -J J1={47,11},J2={73,55}; -T T1={'t','h','e'},T2={'f','o','x'}; -X X1={"abcdefghijklmnopqrstuvwxyzABCDEF",'G'}, X2={"123",'9'}, X3={"return-return-return",'R'}; - -/* void tests */ -void v_v() -{ - fprintf(out,"void f(void):\n"); - fflush(out); -} - -/* int tests */ -int i_v() -{ - int r=99; - fprintf(out,"int f(void):"); - fflush(out); - return r; -} -int i_i _P((a), int a) -{ - int r=a+1; - fprintf(out,"int f(int):(%d)",a); - fflush(out); - return r; -} -int i_i2 _P((a,b), int a _ int b) -{ - int r=a+b; - fprintf(out,"int f(2*int):(%d,%d)",a,b); - fflush(out); - return r; -} -int i_i4 _P((a,b,c,d), int a _ int b _ int c _ int d) -{ - int r=a+b+c+d; - fprintf(out,"int f(4*int):(%d,%d,%d,%d)",a,b,c,d); - fflush(out); - return r; -} -int i_i8 _P((a,b,c,d,e,f,g,h), - int a _ int b _ int c _ int d _ int e _ int f _ int g _ int h) -{ - int r=a+b+c+d+e+f+g+h; - fprintf(out,"int f(8*int):(%d,%d,%d,%d,%d,%d,%d,%d)",a,b,c,d,e,f,g,h); - fflush(out); - return r; -} -int i_i16 _P((a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p), - int a _ int b _ int c _ int d _ int e _ int f _ int g _ int h - _ int i _ int j _ int k _ int l _ int m _ int n _ int o _ int p) -{ - int r=a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p; - fprintf(out,"int f(16*int):(%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d)", - a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p); - fflush(out); - return r; -} - -/* float tests */ -float f_f _P((a), float a) -{ - float r=a+1.0; - fprintf(out,"float f(float):(%g)",a); - fflush(out); - return r; -} -float f_f2 _P((a,b), float a _ float b) -{ - float r=a+b; - fprintf(out,"float f(2*float):(%g,%g)",a,b); - fflush(out); - return r; -} -float f_f4 _P((a,b,c,d), float a _ float b _ float c _ float d) -{ - float r=a+b+c+d; - fprintf(out,"float f(4*float):(%g,%g,%g,%g)",a,b,c,d); - fflush(out); - return r; -} -float f_f8 _P((a,b,c,d,e,f,g,h), float a _ float b _ float c _ float d _ float e _ float f - _ float g _ float h) -{ - float r=a+b+c+d+e+f+g+h; - fprintf(out,"float f(8*float):(%g,%g,%g,%g,%g,%g,%g,%g)",a,b,c,d,e,f,g,h); - fflush(out); - return r; -} -float f_f16 _P((a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p), - float a _ float b _ float c _ float d _ float e _ float f _ float g _ float h - _ float i _ float j _ float k _ float l _ float m _ float n _ float o _ float p) -{ - float r=a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p; - fprintf(out,"float f(16*float):(%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g)",a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p); - fflush(out); - return r; -} - -/* double tests */ -double d_d _P((a), double a) -{ - double r=a+1.0; - fprintf(out,"double f(double):(%g)",a); - fflush(out); - return r; -} -double d_d2 _P((a,b), double a _ double b) -{ - double r=a+b; - fprintf(out,"double f(2*double):(%g,%g)",a,b); - fflush(out); - return r; -} -double d_d4 _P((a,b,c,d), double a _ double b _ double c _ double d) -{ - double r=a+b+c+d; - fprintf(out,"double f(4*double):(%g,%g,%g,%g)",a,b,c,d); - fflush(out); - return r; -} -double d_d8 _P((a,b,c,d,e,f,g,h), - double a _ double b _ double c _ double d _ double e _ double f - _ double g _ double h) -{ - double r=a+b+c+d+e+f+g+h; - fprintf(out,"double f(8*double):(%g,%g,%g,%g,%g,%g,%g,%g)",a,b,c,d,e,f,g,h); - fflush(out); - return r; -} -double d_d16 _P((a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p), - double a _ double b _ double c _ double d _ double e _ double f - _ double g _ double h _ double i _ double j _ double k _ double l - _ double m _ double n _ double o _ double p) -{ - double r=a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p; - fprintf(out,"double f(16*double):(%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g)",a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p); - fflush(out); - return r; -} - -/* pointer tests */ -void* vp_vpdpcpsp _P((a,b,c,d), void* a _ double* b _ char* c _ Int* d) -{ - void* ret = (char*)b + 1; - fprintf(out,"void* f(void*,double*,char*,Int*):(0x%lx,0x%lx,0x%lx,0x%lx)",(long)a,(long)b,(long)c,(long)d); - fflush(out); - return ret; -} - -/* mixed number tests */ -uchar uc_ucsil _P((a,b,c,d), uchar a _ ushort b _ uint c _ ulong d) -{ - uchar r = -1; - fprintf(out,"uchar f(uchar,ushort,uint,ulong):(%u,%u,%u,%lu)",a,b,c,d); - fflush(out); - return r; -} -double d_iidd _P((a,b,c,d), int a _ int b _ double c _ double d) -{ - double r = a+b+c+d; - fprintf(out,"double f(int,int,double,double):(%d,%d,%g,%g)",a,b,c,d); - fflush(out); - return r; -} -double d_idid _P((a,b,c,d), int a _ double b _ int c _ double d) -{ - double r = a+b+c+d; - fprintf(out,"double f(int,double,int,double):(%d,%g,%d,%g)",a,b,c,d); - fflush(out); - return r; -} -ushort us_cdcd _P((a,b,c,d), char a _ double b _ char c _ double d) -{ - ushort r = (ushort)(a + b + c + d); - fprintf(out,"ushort f(char,double,char,double):('%c',%g,'%c',%g)",a,b,c,d); - fflush(out); - return r; -} - -#ifdef HAVE_LONGLONG -long long ll_flli _P((a,b,c), float a _ long long b _ int c) -{ - long long r = (long long)(int)a + b + (long long)c; - fprintf(out,"long long f(float,long long,int):(%g,0x%lx%08lx,0x%lx)",a,(long)(b>>32),(long)(b&0xffffffff),(long)c); - fflush(out); - return r; -} -#endif - -/* structure tests */ -Int I_III _P((a,b,c), Int a _ Int b _ Int c) -{ - Int r; - r.x = a.x + b.x + c.x; - fprintf(out,"Int f(Int,Int,Int):({%d},{%d},{%d})",a.x,b.x,c.x); - fflush(out); - return r; -} -Char C_CdC _P((a,b,c), Char a _ double b _ Char c) -{ - Char r; - r.x = (a.x + c.x)/2; - fprintf(out,"Char f(Char,double,Char):({'%c'},%g,{'%c'})",a.x,b,c.x); - fflush(out); - return r; -} -Float F_Ffd _P((a,b,c), Float a _ float b _ double c) -{ - Float r; - r.x = a.x + b + c; - fprintf(out,"Float f(Float,float,double):({%g},%g,%g)",a.x,b,c); - fflush(out); - return r; -} -Double D_fDd _P((a,b,c), float a _ Double b _ double c) -{ - Double r; - r.x = a + b.x + c; - fprintf(out,"Double f(float,Double,double):(%g,{%g},%g)",a,b.x,c); - fflush(out); - return r; -} -J J_JiJ _P((a,b,c), J a _ int b _ J c) -{ - J r; - r.l1 = a.l1+c.l1; r.l2 = a.l2+b+c.l2; - fprintf(out,"J f(J,int,J):({%ld,%ld},%d,{%ld,%ld})",a.l1,a.l2,b,c.l1,c.l2); - fflush(out); - return r; -} -T T_TcT _P((a,b,c), T a _ char b _ T c) -{ - T r; - r.c[0]='b'; r.c[1]=c.c[1]; r.c[2]=c.c[2]; - fprintf(out,"T f(T,char,T):({\"%c%c%c\"},'%c',{\"%c%c%c\"})",a.c[0],a.c[1],a.c[2],b,c.c[0],c.c[1],c.c[2]); - fflush(out); - return r; -} -X X_BcdB _P((a,b,c,d), B a _ char b _ double c _ B d) -{ - static X xr={"return val",'R'}; - X r; - r = xr; - r.c1 = b; - fprintf(out,"X f(B,char,double,B):({%g,{%d,%d,%d}},'%c',%g,{%g,{%d,%d,%d}})", - a.d,a.i[0],a.i[1],a.i[2],b,c,d.d,d.i[0],d.i[1],d.i[2]); - fflush(out); - return r; -} - - -/* These functions simulate the behaviour of the functions above. */ - -/* void tests */ -void v_v_simulator _P((data,alist), void* data _ va_alist alist) -{ - if (data != (void*)&v_v) { fprintf(out,"wrong data for v_v\n"); exit(1); } - va_start_void(alist); - fprintf(out,"void f(void):\n"); - fflush(out); - va_return_void(alist); -} - -/* int tests */ -void i_v_simulator _P((data,alist), void* data _ va_alist alist) -{ - if (data != (void*)&i_v) { fprintf(out,"wrong data for i_v\n"); exit(1); } - va_start_int(alist); - {int r=99; - fprintf(out,"int f(void):"); - fflush(out); - va_return_int(alist, r); -}} -void i_i_simulator _P((data,alist), void* data _ va_alist alist) -{ - if (data != (void*)&i_i) { fprintf(out,"wrong data for i_i\n"); exit(1); } - va_start_int(alist); - {int a = va_arg_int(alist); - int r=a+1; - fprintf(out,"int f(int):(%d)",a); - fflush(out); - va_return_int(alist, r); -}} -void i_i2_simulator _P((data,alist), void* data _ va_alist alist) -{ - if (data != (void*)&i_i2) { fprintf(out,"wrong data for i_i2\n"); exit(1); } - va_start_int(alist); - {int a = va_arg_int(alist); - int b = va_arg_int(alist); - int r=a+b; - fprintf(out,"int f(2*int):(%d,%d)",a,b); - fflush(out); - va_return_int(alist, r); -}} -void i_i4_simulator _P((data,alist), void* data _ va_alist alist) -{ - if (data != (void*)&i_i4) { fprintf(out,"wrong data for i_i4\n"); exit(1); } - va_start_int(alist); - {int a = va_arg_int(alist); - int b = va_arg_int(alist); - int c = va_arg_int(alist); - int d = va_arg_int(alist); - int r=a+b+c+d; - fprintf(out,"int f(4*int):(%d,%d,%d,%d)",a,b,c,d); - fflush(out); - va_return_int(alist, r); -}} -void i_i8_simulator _P((data,alist), void* data _ va_alist alist) -{ - if (data != (void*)&i_i8) { fprintf(out,"wrong data for i_i8\n"); exit(1); } - va_start_int(alist); - {int a = va_arg_int(alist); - int b = va_arg_int(alist); - int c = va_arg_int(alist); - int d = va_arg_int(alist); - int e = va_arg_int(alist); - int f = va_arg_int(alist); - int g = va_arg_int(alist); - int h = va_arg_int(alist); - int r=a+b+c+d+e+f+g+h; - fprintf(out,"int f(8*int):(%d,%d,%d,%d,%d,%d,%d,%d)",a,b,c,d,e,f,g,h); - fflush(out); - va_return_int(alist, r); -}} -void i_i16_simulator _P((data,alist), void* data _ va_alist alist) -{ - if (data != (void*)&i_i16) { fprintf(out,"wrong data for i_i16\n"); exit(1); } - va_start_int(alist); - {int a = va_arg_int(alist); - int b = va_arg_int(alist); - int c = va_arg_int(alist); - int d = va_arg_int(alist); - int e = va_arg_int(alist); - int f = va_arg_int(alist); - int g = va_arg_int(alist); - int h = va_arg_int(alist); - int i = va_arg_int(alist); - int j = va_arg_int(alist); - int k = va_arg_int(alist); - int l = va_arg_int(alist); - int m = va_arg_int(alist); - int n = va_arg_int(alist); - int o = va_arg_int(alist); - int p = va_arg_int(alist); - int r=a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p; - fprintf(out,"int f(16*int):(%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d)", - a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p); - fflush(out); - va_return_int(alist, r); -}} - -/* float tests */ -void f_f_simulator _P((data,alist), void* data _ va_alist alist) -{ - if (data != (void*)&f_f) { fprintf(out,"wrong data for f_f\n"); exit(1); } - va_start_float(alist); - {float a = va_arg_float(alist); - float r=a+1.0; - fprintf(out,"float f(float):(%g)",a); - fflush(out); - va_return_float(alist, r); -}} -void f_f2_simulator _P((data,alist), void* data _ va_alist alist) -{ - if (data != (void*)&f_f2) { fprintf(out,"wrong data for f_f2\n"); exit(1); } - va_start_float(alist); - {float a = va_arg_float(alist); - float b = va_arg_float(alist); - float r=a+b; - fprintf(out,"float f(2*float):(%g,%g)",a,b); - fflush(out); - va_return_float(alist, r); -}} -void f_f4_simulator _P((data,alist), void* data _ va_alist alist) -{ - if (data != (void*)&f_f4) { fprintf(out,"wrong data for f_f4\n"); exit(1); } - va_start_float(alist); - {float a = va_arg_float(alist); - float b = va_arg_float(alist); - float c = va_arg_float(alist); - float d = va_arg_float(alist); - float r=a+b+c+d; - fprintf(out,"float f(4*float):(%g,%g,%g,%g)",a,b,c,d); - fflush(out); - va_return_float(alist, r); -}} -void f_f8_simulator _P((data,alist), void* data _ va_alist alist) -{ - if (data != (void*)&f_f8) { fprintf(out,"wrong data for f_f8\n"); exit(1); } - va_start_float(alist); - {float a = va_arg_float(alist); - float b = va_arg_float(alist); - float c = va_arg_float(alist); - float d = va_arg_float(alist); - float e = va_arg_float(alist); - float f = va_arg_float(alist); - float g = va_arg_float(alist); - float h = va_arg_float(alist); - float r=a+b+c+d+e+f+g+h; - fprintf(out,"float f(8*float):(%g,%g,%g,%g,%g,%g,%g,%g)",a,b,c,d,e,f,g,h); - fflush(out); - va_return_float(alist, r); -}} -void f_f16_simulator _P((data,alist), void* data _ va_alist alist) -{ - if (data != (void*)&f_f16) { fprintf(out,"wrong data for f_f16\n"); exit(1); } - va_start_float(alist); - {float a = va_arg_float(alist); - float b = va_arg_float(alist); - float c = va_arg_float(alist); - float d = va_arg_float(alist); - float e = va_arg_float(alist); - float f = va_arg_float(alist); - float g = va_arg_float(alist); - float h = va_arg_float(alist); - float i = va_arg_float(alist); - float j = va_arg_float(alist); - float k = va_arg_float(alist); - float l = va_arg_float(alist); - float m = va_arg_float(alist); - float n = va_arg_float(alist); - float o = va_arg_float(alist); - float p = va_arg_float(alist); - float r=a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p; - fprintf(out,"float f(16*float):(%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g)",a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p); - fflush(out); - va_return_float(alist, r); -}} - -/* double tests */ -void d_d_simulator _P((data,alist), void* data _ va_alist alist) -{ - if (data != (void*)&d_d) { fprintf(out,"wrong data for d_d\n"); exit(1); } - va_start_double(alist); - {double a = va_arg_double(alist); - double r=a+1.0; - fprintf(out,"double f(double):(%g)",a); - fflush(out); - va_return_double(alist, r); -}} -void d_d2_simulator _P((data,alist), void* data _ va_alist alist) -{ - if (data != (void*)&d_d2) { fprintf(out,"wrong data for d_d2\n"); exit(1); } - va_start_double(alist); - {double a = va_arg_double(alist); - double b = va_arg_double(alist); - double r=a+b; - fprintf(out,"double f(2*double):(%g,%g)",a,b); - fflush(out); - va_return_double(alist, r); -}} -void d_d4_simulator _P((data,alist), void* data _ va_alist alist) -{ - if (data != (void*)&d_d4) { fprintf(out,"wrong data for d_d4\n"); exit(1); } - va_start_double(alist); - {double a = va_arg_double(alist); - double b = va_arg_double(alist); - double c = va_arg_double(alist); - double d = va_arg_double(alist); - double r=a+b+c+d; - fprintf(out,"double f(4*double):(%g,%g,%g,%g)",a,b,c,d); - fflush(out); - va_return_double(alist, r); -}} -void d_d8_simulator _P((data,alist), void* data _ va_alist alist) -{ - if (data != (void*)&d_d8) { fprintf(out,"wrong data for d_d8\n"); exit(1); } - va_start_double(alist); - {double a = va_arg_double(alist); - double b = va_arg_double(alist); - double c = va_arg_double(alist); - double d = va_arg_double(alist); - double e = va_arg_double(alist); - double f = va_arg_double(alist); - double g = va_arg_double(alist); - double h = va_arg_double(alist); - double r=a+b+c+d+e+f+g+h; - fprintf(out,"double f(8*double):(%g,%g,%g,%g,%g,%g,%g,%g)",a,b,c,d,e,f,g,h); - fflush(out); - va_return_double(alist, r); -}} -void d_d16_simulator _P((data,alist), void* data _ va_alist alist) -{ - if (data != (void*)&d_d16) { fprintf(out,"wrong data for d_d16\n"); exit(1); } - va_start_double(alist); - {double a = va_arg_double(alist); - double b = va_arg_double(alist); - double c = va_arg_double(alist); - double d = va_arg_double(alist); - double e = va_arg_double(alist); - double f = va_arg_double(alist); - double g = va_arg_double(alist); - double h = va_arg_double(alist); - double i = va_arg_double(alist); - double j = va_arg_double(alist); - double k = va_arg_double(alist); - double l = va_arg_double(alist); - double m = va_arg_double(alist); - double n = va_arg_double(alist); - double o = va_arg_double(alist); - double p = va_arg_double(alist); - double r=a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p; - fprintf(out,"double f(16*double):(%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g)",a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p); - fflush(out); - va_return_double(alist, r); -}} - -/* pointer tests */ -void vp_vpdpcpsp_simulator _P((data,alist), void* data _ va_alist alist) -{ - if (data != (void*)&vp_vpdpcpsp) { fprintf(out,"wrong data for vp_vpdpcpsp\n"); exit(1); } - va_start_ptr(alist, void*); - {void* a = va_arg_ptr(alist, void*); - double* b = va_arg_ptr(alist, double*); - char* c = va_arg_ptr(alist, char*); - Int* d = va_arg_ptr(alist, Int*); - void* ret = (char*)b + 1; - fprintf(out,"void* f(void*,double*,char*,Int*):(0x%lx,0x%lx,0x%lx,0x%lx)",(long)a,(long)b,(long)c,(long)d); - fflush(out); - va_return_ptr(alist, void*, ret); -}} - -/* mixed number tests */ -void uc_ucsil_simulator _P((data,alist), void* data _ va_alist alist) -{ - if (data != (void*)&uc_ucsil) { fprintf(out,"wrong data for uc_ucsil\n"); exit(1); } - va_start_uchar(alist); - {uchar a = va_arg_uchar(alist); - ushort b = va_arg_ushort(alist); - uint c = va_arg_uint(alist); - ulong d = va_arg_ulong(alist); - uchar r=-1; - fprintf(out,"uchar f(uchar,ushort,uint,ulong):(%u,%u,%u,%lu)",a,b,c,d); - fflush(out); - va_return_uchar(alist, r); -}} -void d_iidd_simulator _P((data,alist), void* data _ va_alist alist) -{ - if (data != (void*)&d_iidd) { fprintf(out,"wrong data for d_iidd\n"); exit(1); } - va_start_double(alist); - {int a = va_arg_int(alist); - int b = va_arg_int(alist); - double c = va_arg_double(alist); - double d = va_arg_double(alist); - double r=a+b+c+d; - fprintf(out,"double f(int,int,double,double):(%d,%d,%g,%g)",a,b,c,d); - fflush(out); - va_return_double(alist, r); -}} -void d_idid_simulator _P((data,alist), void* data _ va_alist alist) -{ - if (data != (void*)&d_idid) { fprintf(out,"wrong data for d_idid\n"); exit(1); } - va_start_double(alist); - {int a = va_arg_int(alist); - double b = va_arg_double(alist); - int c = va_arg_int(alist); - double d = va_arg_double(alist); - double r=a+b+c+d; - fprintf(out,"double f(int,double,int,double):(%d,%g,%d,%g)",a,b,c,d); - fflush(out); - va_return_double(alist, r); -}} -void us_cdcd_simulator _P((data,alist), void* data _ va_alist alist) -{ - if (data != (void*)&us_cdcd) { fprintf(out,"wrong data for us_cdcd\n"); exit(1); } - va_start_ushort(alist); - {char a = va_arg_char(alist); - double b = va_arg_double(alist); - char c = va_arg_char(alist); - double d = va_arg_double(alist); - ushort r = (ushort)(a + b + c + d); - fprintf(out,"ushort f(char,double,char,double):('%c',%g,'%c',%g)",a,b,c,d); - fflush(out); - va_return_ushort(alist, r); -}} -#ifdef HAVE_LONGLONG -void ll_flli_simulator _P((data,alist), void* data _ va_alist alist) -{ - if (data != (void*)&ll_flli) { fprintf(out,"wrong data for ll_flli\n"); exit(1); } - va_start_longlong(alist); - {float a = va_arg_float(alist); - long long b = va_arg_longlong(alist); - int c = va_arg_int(alist); - long long r = (long long)(int)a + b + (long long)c; - fprintf(out,"long long f(float,long long,int):(%g,0x%lx%08lx,0x%lx)",a,(long)(b>>32),(long)(b&0xffffffff),(long)c); - fflush(out); - va_return_longlong(alist, r); -}} -#endif - -#ifndef SKIP_STRUCTS -/* structure tests */ -void I_III_simulator _P((data,alist), void* data _ va_alist alist) -{ - if (data != (void*)&I_III) { fprintf(out,"wrong data for I_III\n"); exit(1); } - {Int a; - Int b; - Int c; - Int r; - va_start_struct(alist, Int, 1); - a = va_arg_struct(alist, Int); - b = va_arg_struct(alist, Int); - c = va_arg_struct(alist, Int); - r.x = a.x + b.x + c.x; - fprintf(out,"Int f(Int,Int,Int):({%d},{%d},{%d})",a.x,b.x,c.x); - fflush(out); - va_return_struct(alist, Int, r); -}} -#ifndef SKIP_EXTRA_STRUCTS -void C_CdC_simulator _P((data,alist), void* data _ va_alist alist) -{ - if (data != (void*)&C_CdC) { fprintf(out,"wrong data for C_CdC\n"); exit(1); } - {Char a; - double b; - Char c; - Char r; - va_start_struct(alist, Char, 1); - a = va_arg_struct(alist, Char); - b = va_arg_double(alist); - c = va_arg_struct(alist, Char); - r.x = (a.x + c.x)/2; - fprintf(out,"Char f(Char,double,Char):({'%c'},%g,{'%c'})",a.x,b,c.x); - fflush(out); - va_return_struct(alist, Char, r); -}} -void F_Ffd_simulator _P((data,alist), void* data _ va_alist alist) -{ - if (data != (void*)&F_Ffd) { fprintf(out,"wrong data for F_Ffd\n"); exit(1); } - {Float a; - float b; - double c; - Float r; - va_start_struct(alist, Float, va_word_splittable_1(float)); - a = va_arg_struct(alist, Float); - b = va_arg_float(alist); - c = va_arg_double(alist); - r.x = a.x + b + c; - fprintf(out,"Float f(Float,float,double):({%g},%g,%g)",a.x,b,c); - fflush(out); - va_return_struct(alist, Float, r); -}} -void D_fDd_simulator _P((data,alist), void* data _ va_alist alist) -{ - if (data != (void*)&D_fDd) { fprintf(out,"wrong data for D_fDd\n"); exit(1); } - {float a; - Double b; - double c; - Double r; - va_start_struct(alist, Double, va_word_splittable_1(double)); - a = va_arg_float(alist); - b = va_arg_struct(alist, Double); - c = va_arg_double(alist); - r.x = a + b.x + c; - fprintf(out,"Double f(float,Double,double):(%g,{%g},%g)",a,b.x,c); - fflush(out); - va_return_struct(alist, Double, r); -}} -#endif -void J_JiJ_simulator _P((data,alist), void* data _ va_alist alist) -{ - if (data != (void*)&J_JiJ) { fprintf(out,"wrong data for J_JiJ\n"); exit(1); } - {J a; - int b; - J c; - J r; - va_start_struct(alist, J, va_word_splittable_2(long,long)); - a = va_arg_struct(alist, J); - b = va_arg_int(alist); - c = va_arg_struct(alist, J); - r.l1 = a.l1+c.l1; r.l2 = a.l2+b+c.l2; - fprintf(out,"J f(J,int,J):({%ld,%ld},%d,{%ld,%ld})",a.l1,a.l2,b,c.l1,c.l2); - fflush(out); - va_return_struct(alist, J, r); -}} -#ifndef SKIP_EXTRA_STRUCTS -void T_TcT_simulator _P((data,alist), void* data _ va_alist alist) -{ - if (data != (void*)&T_TcT) { fprintf(out,"wrong data for T_TcT\n"); exit(1); } - {T a; - char b; - T c; - T r; - va_start_struct(alist, T, 1); - a = va_arg_struct(alist, T); - b = va_arg_char(alist); - c = va_arg_struct(alist, T); - r.c[0]='b'; r.c[1]=c.c[1]; r.c[2]=c.c[2]; - fprintf(out,"T f(T,char,T):({\"%c%c%c\"},'%c',{\"%c%c%c\"})",a.c[0],a.c[1],a.c[2],b,c.c[0],c.c[1],c.c[2]); - fflush(out); - va_return_struct(alist, T, r); -}} -void X_BcdB_simulator _P((data,alist), void* data _ va_alist alist) -{ - if (data != (void*)&X_BcdB) { fprintf(out,"wrong data for X_BcdB\n"); exit(1); } - {B a; - char b; - double c; - B d; - static X xr={"return val",'R'}; - X r; - va_start_struct(alist, X, 0); - a = va_arg_struct(alist, B); - b = va_arg_char(alist); - c = va_arg_double(alist); - d = va_arg_struct(alist, B); - r = xr; - r.c1 = b; - fprintf(out,"X f(B,char,double,B):({%g,{%d,%d,%d}},'%c',%g,{%g,{%d,%d,%d}})", - a.d,a.i[0],a.i[1],a.i[2],b,c,d.d,d.i[0],d.i[1],d.i[2]); - fflush(out); - va_return_struct(alist, X, r); -}} -#endif -#endif - -/* - * The way we run these tests - first call the function directly, then - * through vacall() - there is the danger that arguments or results seem - * to be passed correctly, but what we are seeing are in fact the vestiges - * (traces) or the previous call. This may seriously fake the test. - * Avoid this by clearing the registers between the first and the second call. - */ -long clear_traces_i _P((a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p), - long a _ long b _ long c _ long d _ long e _ long f _ long g _ long h _ - long i _ long j _ long k _ long l _ long m _ long n _ long o _ long p) -{ return 0; } -float clear_traces_f _P((a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p), - float a _ float b _ float c _ float d _ float e _ float f _ float g _ - float h _ float i _ float j _ float k _ float l _ float m _ float n _ - float o _ float p) -{ return 0.0; } -double clear_traces_d _P((a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p), - double a _ double b _ double c _ double d _ double e _ double f _ double g _ - double h _ double i _ double j _ double k _ double l _ double m _ double n _ - double o _ double p) -{ return 0.0; } -J clear_traces_J () -{ J j; j.l1 = j.l2 = 0; return j; } -void clear_traces() -{ clear_traces_i(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); - clear_traces_f(0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0); - clear_traces_d(0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0); - clear_traces_J(); -} - -int main () -{ - __TR_function callback; - - out = stdout; - - /* void tests */ - v_v(); - clear_traces(); - callback = alloc_callback(&v_v_simulator,(void*)&v_v); - (FTYPE(void,(void)) callback) (); - - /* int tests */ - { int ir; - - ir = i_v(); - fprintf(out,"->%d\n",ir); - fflush(out); - ir = 0; clear_traces(); - callback = alloc_callback(&i_v_simulator,(void*)&i_v); - ir = (FTYPE(int,(void)) callback) (); - fprintf(out,"->%d\n",ir); - fflush(out); - - ir = i_i(i1); - fprintf(out,"->%d\n",ir); - fflush(out); - ir = 0; clear_traces(); - callback = alloc_callback(&i_i_simulator,(void*)&i_i); - ir = (FTYPE(int,(int)) callback) (i1); - fprintf(out,"->%d\n",ir); - fflush(out); - - ir = i_i2(i1,i2); - fprintf(out,"->%d\n",ir); - fflush(out); - ir = 0; clear_traces(); - callback = alloc_callback(&i_i2_simulator,(void*)&i_i2); - ir = (FTYPE(int,(int,int)) callback) (i1,i2); - fprintf(out,"->%d\n",ir); - fflush(out); - - ir = i_i4(i1,i2,i3,i4); - fprintf(out,"->%d\n",ir); - fflush(out); - ir = 0; clear_traces(); - callback = alloc_callback(&i_i4_simulator,(void*)&i_i4); - ir = (FTYPE(int,(int,int,int,int)) callback) (i1,i2,i3,i4); - fprintf(out,"->%d\n",ir); - fflush(out); - - ir = i_i8(i1,i2,i3,i4,i5,i6,i7,i8); - fprintf(out,"->%d\n",ir); - fflush(out); - ir = 0; clear_traces(); - callback = alloc_callback(&i_i8_simulator,(void*)&i_i8); - ir = (FTYPE(int,(int,int,int,int,int,int,int,int)) callback) (i1,i2,i3,i4,i5,i6,i7,i8); - fprintf(out,"->%d\n",ir); - fflush(out); - - ir = i_i16(i1,i2,i3,i4,i5,i6,i7,i8,i9,i10,i11,i12,i13,i14,i15,i16); - fprintf(out,"->%d\n",ir); - fflush(out); - ir = 0; clear_traces(); - callback = alloc_callback(&i_i16_simulator,(void*)&i_i16); - ir = (FTYPE(int,(int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int)) callback) (i1,i2,i3,i4,i5,i6,i7,i8,i9,i10,i11,i12,i13,i14,i15,i16); - fprintf(out,"->%d\n",ir); - fflush(out); - } - - /* float tests */ - { float fr; - - fr = f_f(f1); - fprintf(out,"->%g\n",fr); - fflush(out); - fr = 0.0; clear_traces(); - callback = alloc_callback(&f_f_simulator,(void*)&f_f); - fr = (FTYPE(float,(float)) callback) (f1); - fprintf(out,"->%g\n",fr); - fflush(out); - - fr = f_f2(f1,f2); - fprintf(out,"->%g\n",fr); - fflush(out); - fr = 0.0; clear_traces(); - callback = alloc_callback(&f_f2_simulator,(void*)&f_f2); - fr = (FTYPE(float,(float,float)) callback) (f1,f2); - fprintf(out,"->%g\n",fr); - fflush(out); - - fr = f_f4(f1,f2,f3,f4); - fprintf(out,"->%g\n",fr); - fflush(out); - fr = 0.0; clear_traces(); - callback = alloc_callback(&f_f4_simulator,(void*)&f_f4); - fr = (FTYPE(float,(float,float,float,float)) callback) (f1,f2,f3,f4); - fprintf(out,"->%g\n",fr); - fflush(out); - - fr = f_f8(f1,f2,f3,f4,f5,f6,f7,f8); - fprintf(out,"->%g\n",fr); - fflush(out); - fr = 0.0; clear_traces(); - callback = alloc_callback(&f_f8_simulator,(void*)&f_f8); - fr = (FTYPE(float,(float,float,float,float,float,float,float,float)) callback) (f1,f2,f3,f4,f5,f6,f7,f8); - fprintf(out,"->%g\n",fr); - fflush(out); - - fr = f_f16(f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12,f13,f14,f15,f16); - fprintf(out,"->%g\n",fr); - fflush(out); - fr = 0.0; clear_traces(); - callback = alloc_callback(&f_f16_simulator,(void*)&f_f16); - fr = (FTYPE(float,(float,float,float,float,float,float,float,float,float,float,float,float,float,float,float,float)) callback) (f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12,f13,f14,f15,f16); - fprintf(out,"->%g\n",fr); - fflush(out); - } - - /* double tests */ - { double dr; - - dr = d_d(d1); - fprintf(out,"->%g\n",dr); - fflush(out); - dr = 0.0; clear_traces(); - callback = alloc_callback(&d_d_simulator,(void*)&d_d); - dr = (FTYPE(double,(double)) callback) (d1); - fprintf(out,"->%g\n",dr); - fflush(out); - - dr = d_d2(d1,d2); - fprintf(out,"->%g\n",dr); - fflush(out); - dr = 0.0; clear_traces(); - callback = alloc_callback(&d_d2_simulator,(void*)&d_d2); - dr = (FTYPE(double,(double,double)) callback) (d1,d2); - fprintf(out,"->%g\n",dr); - fflush(out); - - dr = d_d4(d1,d2,d3,d4); - fprintf(out,"->%g\n",dr); - fflush(out); - dr = 0.0; clear_traces(); - callback = alloc_callback(&d_d4_simulator,(void*)&d_d4); - dr = (FTYPE(double,(double,double,double,double)) callback) (d1,d2,d3,d4); - fprintf(out,"->%g\n",dr); - fflush(out); - - dr = d_d8(d1,d2,d3,d4,d5,d6,d7,d8); - fprintf(out,"->%g\n",dr); - fflush(out); - dr = 0.0; clear_traces(); - callback = alloc_callback(&d_d8_simulator,(void*)&d_d8); - dr = (FTYPE(double,(double,double,double,double,double,double,double,double)) callback) (d1,d2,d3,d4,d5,d6,d7,d8); - fprintf(out,"->%g\n",dr); - fflush(out); - - dr = d_d16(d1,d2,d3,d4,d5,d6,d7,d8,d9,d10,d11,d12,d13,d14,d15,d16); - fprintf(out,"->%g\n",dr); - fflush(out); - dr = 0.0; clear_traces(); - callback = alloc_callback(&d_d16_simulator,(void*)&d_d16); - dr = (FTYPE(double,(double,double,double,double,double,double,double,double,double,double,double,double,double,double,double,double)) callback) (d1,d2,d3,d4,d5,d6,d7,d8,d9,d10,d11,d12,d13,d14,d15,d16); - fprintf(out,"->%g\n",dr); - fflush(out); - } - - /* pointer tests */ - { void* vpr; - - vpr = vp_vpdpcpsp(&uc1,&d2,str3,&I4); - fprintf(out,"->0x%lx\n",(long)vpr); - fflush(out); - vpr = 0; clear_traces(); - callback = alloc_callback(&vp_vpdpcpsp_simulator,(void*)&vp_vpdpcpsp); - vpr = (FTYPE(void*,(void*,double*,char*,Int*)) callback) (&uc1,&d2,str3,&I4); - fprintf(out,"->0x%lx\n",(long)vpr); - fflush(out); - } - - /* mixed number tests */ - { uchar ucr; - ushort usr; - double dr; -#ifdef HAVE_LONGLONG - long long llr; -#endif - - ucr = uc_ucsil(uc1,us2,ui3,ul4); - fprintf(out,"->%u\n",ucr); - fflush(out); - ucr = 0; clear_traces(); - callback = alloc_callback(&uc_ucsil_simulator,(void*)&uc_ucsil); - ucr = (FTYPE(uchar,(uchar,ushort,uint,ulong)) callback) (uc1,us2,ui3,ul4); - fprintf(out,"->%u\n",ucr); - fflush(out); - - dr = d_iidd(i1,i2,d3,d4); - fprintf(out,"->%g\n",dr); - fflush(out); - dr = 0.0; clear_traces(); - callback = alloc_callback(&d_iidd_simulator,(void*)&d_iidd); - dr = (FTYPE(double,(int,int,double,double)) callback) (i1,i2,d3,d4); - fprintf(out,"->%g\n",dr); - fflush(out); - - dr = d_idid(i1,d2,i3,d4); - fprintf(out,"->%g\n",dr); - fflush(out); - dr = 0.0; clear_traces(); - callback = alloc_callback(&d_idid_simulator,(void*)&d_idid); - dr = (FTYPE(double,(int,double,int,double)) callback) (i1,d2,i3,d4); - fprintf(out,"->%g\n",dr); - fflush(out); - - usr = us_cdcd(c1,d2,c3,d4); - fprintf(out,"->%u\n",usr); - fflush(out); - usr = 0; clear_traces(); - callback = alloc_callback(&us_cdcd_simulator,(void*)&us_cdcd); - usr = (FTYPE(ushort,(char,double,char,double)) callback) (c1,d2,c3,d4); - fprintf(out,"->%u\n",usr); - fflush(out); - -#ifdef HAVE_LONGLONG - llr = ll_flli(f13,ll1,i13); - fprintf(out,"->0x%lx%08lx\n",(long)(llr>>32),(long)(llr&0xffffffff)); - fflush(out); - llr = 0; clear_traces(); - callback = alloc_callback(&ll_flli_simulator,(void*)&ll_flli); - llr = (FTYPE(long long,(float,long long,int)) callback) (f13,ll1,i13); - fprintf(out,"->0x%lx%08lx\n",(long)(llr>>32),(long)(llr&0xffffffff)); - fflush(out); -#endif - } - -#ifndef SKIP_STRUCTS - /* structure tests */ - { Int Ir; - Char Cr; - Float Fr; - Double Dr; - J Jr; - T Tr; - X Xr; - - Ir = I_III(I1,I2,I3); - fprintf(out,"->{%d}\n",Ir.x); - fflush(out); - Ir.x = 0; clear_traces(); - callback = alloc_callback(&I_III_simulator,(void*)&I_III); - Ir = (FTYPE(Int,(Int,Int,Int)) callback) (I1,I2,I3); - fprintf(out,"->{%d}\n",Ir.x); - fflush(out); - -#ifndef SKIP_EXTRA_STRUCTS - Cr = C_CdC(C1,d2,C3); - fprintf(out,"->{'%c'}\n",Cr.x); - fflush(out); - Cr.x = '\0'; clear_traces(); - callback = alloc_callback(&C_CdC_simulator,(void*)&C_CdC); - Cr = (FTYPE(Char,(Char,double,Char)) callback) (C1,d2,C3); - fprintf(out,"->{'%c'}\n",Cr.x); - fflush(out); - - Fr = F_Ffd(F1,f2,d3); - fprintf(out,"->{%g}\n",Fr.x); - fflush(out); - Fr.x = 0.0; clear_traces(); - callback = alloc_callback(&F_Ffd_simulator,(void*)&F_Ffd); - Fr = (FTYPE(Float,(Float,float,double)) callback) (F1,f2,d3); - fprintf(out,"->{%g}\n",Fr.x); - fflush(out); - - Dr = D_fDd(f1,D2,d3); - fprintf(out,"->{%g}\n",Dr.x); - fflush(out); - Dr.x = 0.0; clear_traces(); - callback = alloc_callback(&D_fDd_simulator,(void*)&D_fDd); - Dr = (FTYPE(Double,(float,Double,double)) callback) (f1,D2,d3); - fprintf(out,"->{%g}\n",Dr.x); - fflush(out); -#endif - - Jr = J_JiJ(J1,i2,J2); - fprintf(out,"->{%ld,%ld}\n",Jr.l1,Jr.l2); - fflush(out); - Jr.l1 = Jr.l2 = 0; clear_traces(); - callback = alloc_callback(&J_JiJ_simulator,(void*)&J_JiJ); - Jr = (FTYPE(J,(J,int,J)) callback) (J1,i2,J2); - fprintf(out,"->{%ld,%ld}\n",Jr.l1,Jr.l2); - fflush(out); - -#ifndef SKIP_EXTRA_STRUCTS -#ifndef SKIP_T - Tr = T_TcT(T1,' ',T2); - fprintf(out,"->{\"%c%c%c\"}\n",Tr.c[0],Tr.c[1],Tr.c[2]); - fflush(out); - Tr.c[0] = Tr.c[1] = Tr.c[2] = 0; clear_traces(); - callback = alloc_callback(&T_TcT_simulator,(void*)&T_TcT); - Tr = (FTYPE(T,(T,char,T)) callback) (T1,' ',T2); - fprintf(out,"->{\"%c%c%c\"}\n",Tr.c[0],Tr.c[1],Tr.c[2]); - fflush(out); -#endif - -#ifndef SKIP_X - Xr = X_BcdB(B1,c2,d3,B2); - fprintf(out,"->{\"%s\",'%c'}\n",Xr.c,Xr.c1); - fflush(out); - Xr.c[0]=Xr.c1='\0'; clear_traces(); - callback = alloc_callback(&X_BcdB_simulator,(void*)&X_BcdB); - Xr = (FTYPE(X,(B,char,double,B)) callback) (B1,c2,d3,B2); - fprintf(out,"->{\"%s\",'%c'}\n",Xr.c,Xr.c1); - fflush(out); -#endif -#endif - } -#endif - - exit(0); -} DELETED ffcall/callback/tests.output/alpha-dec-osf4.0-cc-O Index: ffcall/callback/tests.output/alpha-dec-osf4.0-cc-O ================================================================== --- ffcall/callback/tests.output/alpha-dec-osf4.0-cc-O +++ /dev/null DELETED ffcall/callback/tests.output/alpha-dec-osf4.0-gcc Index: ffcall/callback/tests.output/alpha-dec-osf4.0-gcc ================================================================== --- ffcall/callback/tests.output/alpha-dec-osf4.0-gcc +++ /dev/null DELETED ffcall/callback/tests.output/alpha-dec-osf4.0a-gcc Index: ffcall/callback/tests.output/alpha-dec-osf4.0a-gcc ================================================================== --- ffcall/callback/tests.output/alpha-dec-osf4.0a-gcc +++ /dev/null DELETED ffcall/callback/tests.output/hppa1.1-hp-hpux10.01-cc Index: ffcall/callback/tests.output/hppa1.1-hp-hpux10.01-cc ================================================================== --- ffcall/callback/tests.output/hppa1.1-hp-hpux10.01-cc +++ /dev/null DELETED ffcall/callback/tests.output/hppa1.1-hp-hpux10.01-cc-O Index: ffcall/callback/tests.output/hppa1.1-hp-hpux10.01-cc-O ================================================================== --- ffcall/callback/tests.output/hppa1.1-hp-hpux10.01-cc-O +++ /dev/null DELETED ffcall/callback/tests.output/hppa1.1-hp-hpux9.05-cc Index: ffcall/callback/tests.output/hppa1.1-hp-hpux9.05-cc ================================================================== --- ffcall/callback/tests.output/hppa1.1-hp-hpux9.05-cc +++ /dev/null DELETED ffcall/callback/tests.output/hppa1.1-hp-hpux9.05-cc-O Index: ffcall/callback/tests.output/hppa1.1-hp-hpux9.05-cc-O ================================================================== --- ffcall/callback/tests.output/hppa1.1-hp-hpux9.05-cc-O +++ /dev/null DELETED ffcall/callback/tests.output/hppa2.0-hp-hpux10.20-cc Index: ffcall/callback/tests.output/hppa2.0-hp-hpux10.20-cc ================================================================== --- ffcall/callback/tests.output/hppa2.0-hp-hpux10.20-cc +++ /dev/null DELETED ffcall/callback/tests.output/hppa2.0-hp-hpux10.20-cc-O+DA1.1 Index: ffcall/callback/tests.output/hppa2.0-hp-hpux10.20-cc-O+DA1.1 ================================================================== --- ffcall/callback/tests.output/hppa2.0-hp-hpux10.20-cc-O+DA1.1 +++ /dev/null DELETED ffcall/callback/tests.output/hppa2.0-hp-hpux10.20-gcc Index: ffcall/callback/tests.output/hppa2.0-hp-hpux10.20-gcc ================================================================== --- ffcall/callback/tests.output/hppa2.0-hp-hpux10.20-gcc +++ /dev/null @@ -1,6 +0,0 @@ -Char f(Char,double,Char):({'A'},0.2,{'C'})->{'B'} -Char f(Char,double,Char):({'A'},0.2,{''})->{'''} -Float f(Float,float,double):({0.1},0.2,0.3)->{0.6} -Float f(Float,float,double):({0.1},0.2,0.3)->{0} -Double f(float,Double,double):(0.1,{0.2},0.3)->{0.6} -Double f(float,Double,double):(0.1,{0.2},0.3)->{0} DELETED ffcall/callback/tests.output/i386-pc-solaris2.6-gcc Index: ffcall/callback/tests.output/i386-pc-solaris2.6-gcc ================================================================== --- ffcall/callback/tests.output/i386-pc-solaris2.6-gcc +++ /dev/null DELETED ffcall/callback/tests.output/i386-pc-win32-msvc4 Index: ffcall/callback/tests.output/i386-pc-win32-msvc4 ================================================================== --- ffcall/callback/tests.output/i386-pc-win32-msvc4 +++ /dev/null DELETED ffcall/callback/tests.output/i386-pc-win32-msvc5 Index: ffcall/callback/tests.output/i386-pc-win32-msvc5 ================================================================== --- ffcall/callback/tests.output/i386-pc-win32-msvc5 +++ /dev/null DELETED ffcall/callback/tests.output/i586-pc-beos-gcc Index: ffcall/callback/tests.output/i586-pc-beos-gcc ================================================================== --- ffcall/callback/tests.output/i586-pc-beos-gcc +++ /dev/null DELETED ffcall/callback/tests.output/ia64-unknown-linux-gcc Index: ffcall/callback/tests.output/ia64-unknown-linux-gcc ================================================================== --- ffcall/callback/tests.output/ia64-unknown-linux-gcc +++ /dev/null @@ -1,4 +0,0 @@ -Float f(Float,float,double):({0.1},0.2,0.3)->{0.6} -Float f(Float,float,double):({1.92932e-310},0.1,0.2)->{0.2} -Double f(float,Double,double):(0.1,{0.2},0.3)->{0.6} -Double f(float,Double,double):(0.1,{2},0.2)->{0.2} DELETED ffcall/callback/tests.output/m68k-unknown-linuxlibc6-gcc Index: ffcall/callback/tests.output/m68k-unknown-linuxlibc6-gcc ================================================================== --- ffcall/callback/tests.output/m68k-unknown-linuxlibc6-gcc +++ /dev/null DELETED ffcall/callback/tests.output/mips-sgi-irix5.3-cc-O Index: ffcall/callback/tests.output/mips-sgi-irix5.3-cc-O ================================================================== --- ffcall/callback/tests.output/mips-sgi-irix5.3-cc-O +++ /dev/null DELETED ffcall/callback/tests.output/mips-sgi-irix6.2-cc-o32-O Index: ffcall/callback/tests.output/mips-sgi-irix6.2-cc-o32-O ================================================================== --- ffcall/callback/tests.output/mips-sgi-irix6.2-cc-o32-O +++ /dev/null DELETED ffcall/callback/tests.output/mips-sgi-irix6.4-cc-64-O Index: ffcall/callback/tests.output/mips-sgi-irix6.4-cc-64-O ================================================================== --- ffcall/callback/tests.output/mips-sgi-irix6.4-cc-64-O +++ /dev/null @@ -1,4 +0,0 @@ -Double f(float,Double,double):(0.1,{0.2},0.3)->{0.6} -Double f(float,Double,double):(0.1,{1.58101e-322},0.3)->{0.4} -X f(B,char,double,B):({0.1,{1,2,3}},'',0.3,{0.2,{5,4,3}})->{"return val",''} -X f(B,char,double,B):({1.58101e-322,{1,2,3}},'',0.3,{1.25261e-293,{5,4,3}})->{"return val",''} DELETED ffcall/callback/tests.output/mips-sgi-irix6.4-cc-n32-O Index: ffcall/callback/tests.output/mips-sgi-irix6.4-cc-n32-O ================================================================== --- ffcall/callback/tests.output/mips-sgi-irix6.4-cc-n32-O +++ /dev/null @@ -1,4 +0,0 @@ -Double f(float,Double,double):(0.1,{0.2},0.3)->{0.6} -Double f(float,Double,double):(0.1,{1.18576e-322},0.3)->{0.4} -X f(B,char,double,B):({0.1,{1,2,3}},'',0.3,{0.2,{5,4,3}})->{"return val",''} -X f(B,char,double,B):({1.18576e-322,{1,2,3}},'',0.3,{-nan0xffffffff,{5,4,3}}) DELETED ffcall/callback/tests.output/mips-sgi-irix6.4-cc-o32-O Index: ffcall/callback/tests.output/mips-sgi-irix6.4-cc-o32-O ================================================================== --- ffcall/callback/tests.output/mips-sgi-irix6.4-cc-o32-O +++ /dev/null DELETED ffcall/callback/tests.output/mips-sgi-irix6.5-cc-32 Index: ffcall/callback/tests.output/mips-sgi-irix6.5-cc-32 ================================================================== --- ffcall/callback/tests.output/mips-sgi-irix6.5-cc-32 +++ /dev/null DELETED ffcall/callback/tests.output/mips-sgi-irix6.5-gcc Index: ffcall/callback/tests.output/mips-sgi-irix6.5-gcc ================================================================== --- ffcall/callback/tests.output/mips-sgi-irix6.5-gcc +++ /dev/null @@ -1,5 +0,0 @@ -Float f(Float,float,double):({0.1},0.2,0.3)->{0.6} -Float f(Float,float,double):({2.56293e-29},0.2,0.3)->{0} -Double f(float,Double,double):(0.1,{0.2},0.3)->{0.6} -Double f(float,Double,double):(0.1,{1.18576e-322},0.3)->{0} -T f(T,char,T):({"the"},' ',{"fox"})->{"box"} DELETED ffcall/callback/tests.output/powerpc-ibm-aix4.1.4.0-xlc Index: ffcall/callback/tests.output/powerpc-ibm-aix4.1.4.0-xlc ================================================================== --- ffcall/callback/tests.output/powerpc-ibm-aix4.1.4.0-xlc +++ /dev/null @@ -1,48 +0,0 @@ -int f(void):->99 -int f(void):->-559038737 -int f(int):(1)->2 -int f(int):(1)->-559038737 -int f(2*int):(1,2)->3 -int f(2*int):(1,2)->-559038737 -int f(4*int):(1,2,3,4)->10 -int f(4*int):(1,2,3,4)->-559038737 -int f(8*int):(1,2,3,4,5,6,7,8)->36 -int f(8*int):(1,2,3,4,5,6,7,8)->-559038737 -int f(16*int):(1,2,3,4,5,6,7,8,9,11,12,13,14,15,16,17)->143 -int f(16*int):(1,2,3,4,5,6,7,8,9,11,12,13,14,15,16,17)->536874352 -float f(float):(0.1)->1.1 -float f(float):(0.1)->1.08465e-19 -float f(2*float):(0.1,0.2)->0.3 -float f(2*float):(0.2,0.2)->1.08465e-19 -float f(4*float):(0.1,0.2,0.3,0.4)->1 -float f(4*float):(0.4,0.4,0.4,0.4)->1.08465e-19 -float f(8*float):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8)->3.6 -float f(8*float):(0.8,0.8,0.8,0.8,0.8,0.8,0.8,0.8)->1.08465e-19 -float f(16*float):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.1,1.2,1.3,1.4,1.5,1.6,1.7)->14.3 -float f(16*float):(0.8,0.8,0.8,0.8,0.8,0.8,0.8,0.8,0.9,1.1,1.2,1.3,1.4,1.5,1.6,1.7)->1.08465e-19 -double f(double):(0.1)->1.1 -double f(double):(0.1)->1.49656e-154 -double f(2*double):(0.1,0.2)->0.3 -double f(2*double):(0.1,0.2)->1.49656e-154 -double f(4*double):(0.1,0.2,0.3,0.4)->1 -double f(4*double):(0.1,0.2,0.3,0.4)->1.49656e-154 -double f(8*double):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8)->3.6 -double f(8*double):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8)->1.49656e-154 -double f(16*double):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.1,1.2,1.3,1.4,1.5,1.6,1.7)->14.3 -double f(16*double):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.1,1.2,1.3,1.4,1.5,1.6,1.7)->1.49656e-154 -void* f(void*,double*,char*,Int*):(0x20000e50,0x20000dd8,0x10006468,0x20000e58)->0x20000dd9 -void* f(void*,double*,char*,Int*):(0x20000e50,0x20000dd8,0x10006468,0x20000e58)->0x20000d70 -uchar f(uchar,ushort,uint,ulong):(97,2,3,4)->255 -uchar f(uchar,ushort,uint,ulong):(97,2,3,4)->32 -double f(int,int,double,double):(1,2,0.3,0.4)->3.7 -double f(int,int,double,double):(1,2,0.3,0.4)->1.49656e-154 -double f(int,double,int,double):(1,0.2,3,0.4)->4.6 -double f(int,double,int,double):(1,0.2,3,0.4)->1.49656e-154 -ushort f(char,double,char,double):('a',0.2,'€',0.4)->225 -ushort f(char,double,char,double):('a',0.2,'€',0.4)->8192 -long long f(float,long long,int):(1.4,0x35c6f707fffffffa,0xe)->0x35c6f70800000009 -long long f(float,long long,int):(1.4,0x35c6f707fffffffa,0xe)->0x20000d7035c6f708 -Float f(Float,float,double):({0.1},0.2,0.3)->{0.6} -Float f(Float,float,double):({0.1},1.65,0.3)->{2.05} -Double f(float,Double,double):(0.1,{0.2},0.3)->{0.6} -Double f(float,Double,double):(1.65,{0.2},0.3)->{2.15} DELETED ffcall/callback/tests.output/powerpc-ibm-aix4.1.5.0-cc Index: ffcall/callback/tests.output/powerpc-ibm-aix4.1.5.0-cc ================================================================== --- ffcall/callback/tests.output/powerpc-ibm-aix4.1.5.0-cc +++ /dev/null DELETED ffcall/callback/tests.output/powerpc-ibm-aix4.1.5.0-cc-O Index: ffcall/callback/tests.output/powerpc-ibm-aix4.1.5.0-cc-O ================================================================== --- ffcall/callback/tests.output/powerpc-ibm-aix4.1.5.0-cc-O +++ /dev/null DELETED ffcall/callback/tests.output/powerpc-ibm-aix4.1.5.0-xlc Index: ffcall/callback/tests.output/powerpc-ibm-aix4.1.5.0-xlc ================================================================== --- ffcall/callback/tests.output/powerpc-ibm-aix4.1.5.0-xlc +++ /dev/null DELETED ffcall/callback/tests.output/powerpc-ibm-aix4.1.5.0-xlc-O Index: ffcall/callback/tests.output/powerpc-ibm-aix4.1.5.0-xlc-O ================================================================== --- ffcall/callback/tests.output/powerpc-ibm-aix4.1.5.0-xlc-O +++ /dev/null DELETED ffcall/callback/tests.output/powerpc-ibm-aix4.3.2.0-cc Index: ffcall/callback/tests.output/powerpc-ibm-aix4.3.2.0-cc ================================================================== --- ffcall/callback/tests.output/powerpc-ibm-aix4.3.2.0-cc +++ /dev/null DELETED ffcall/callback/tests.output/powerpc-ibm-aix4.3.2.0-cc-O Index: ffcall/callback/tests.output/powerpc-ibm-aix4.3.2.0-cc-O ================================================================== --- ffcall/callback/tests.output/powerpc-ibm-aix4.3.2.0-cc-O +++ /dev/null DELETED ffcall/callback/tests.output/powerpc-ibm-aix4.3.2.0-xlc Index: ffcall/callback/tests.output/powerpc-ibm-aix4.3.2.0-xlc ================================================================== --- ffcall/callback/tests.output/powerpc-ibm-aix4.3.2.0-xlc +++ /dev/null DELETED ffcall/callback/tests.output/powerpc-ibm-aix4.3.2.0-xlc-O Index: ffcall/callback/tests.output/powerpc-ibm-aix4.3.2.0-xlc-O ================================================================== --- ffcall/callback/tests.output/powerpc-ibm-aix4.3.2.0-xlc-O +++ /dev/null DELETED ffcall/callback/tests.output/rs6000-ibm-aix3.2.5-cc Index: ffcall/callback/tests.output/rs6000-ibm-aix3.2.5-cc ================================================================== --- ffcall/callback/tests.output/rs6000-ibm-aix3.2.5-cc +++ /dev/null @@ -1,44 +0,0 @@ -int f(void):->99 -int f(void):->0 -int f(int):(1)->2 -int f(int):(1)->0 -int f(2*int):(1,2)->3 -int f(2*int):(1,2)->0 -int f(4*int):(1,2,3,4)->10 -int f(4*int):(1,2,3,4)->0 -int f(8*int):(1,2,3,4,5,6,7,8)->36 -int f(8*int):(1,2,3,4,5,6,7,8)->0 -int f(16*int):(1,2,3,4,5,6,7,8,9,11,12,13,14,15,16,17)->143 -int f(16*int):(1,2,3,4,5,6,7,8,9,11,12,13,14,15,16,17)->0 -float f(float):(0.1)->1.1 -float f(float):(0.1)->0 -float f(2*float):(0.1,0.2)->0.3 -float f(2*float):(0.1,0.2)->0 -float f(4*float):(0.1,0.2,0.3,0.4)->1 -float f(4*float):(0.1,0.2,0.3,0.4)->0 -float f(8*float):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8)->3.6 -float f(8*float):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8)->0 -float f(16*float):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.1,1.2,1.3,1.4,1.5,1.6,1.7)->14.3 -float f(16*float):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.1,1.2,1.3,1.4,1.5,1.6,1.7)->0 -double f(double):(0.1)->1.1 -double f(double):(0.1)->5.30033e-315 -double f(2*double):(0.1,0.2)->0.3 -double f(2*double):(0.1,0.2)->5.29048e-315 -double f(4*double):(0.1,0.2,0.3,0.4)->1 -double f(4*double):(0.1,0.2,0.3,0.4)->5.29981e-315 -double f(8*double):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8)->3.6 -double f(8*double):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8)->5.30913e-315 -double f(16*double):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.1,1.2,1.3,1.4,1.5,1.6,1.7)->14.3 -double f(16*double):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.1,1.2,1.3,1.4,1.5,1.6,1.7)->5.31943e-315 -void* f(void*,double*,char*,Int*):(0x200538e0,0x20053868,0x20052818,0x200538e8)->0x20053869 -void* f(void*,double*,char*,Int*):(0x200538e0,0x20053868,0x20052818,0x200538e8)->0x0 -uchar f(uchar,ushort,uint,ulong):(97,2,3,4)->255 -uchar f(uchar,ushort,uint,ulong):(97,2,3,4)->0 -double f(int,int,double,double):(1,2,0.3,0.4)->3.7 -double f(int,int,double,double):(1,2,0.3,0.4)->5.30939e-315 -double f(int,double,int,double):(1,0.2,3,0.4)->4.6 -double f(int,double,int,double):(1,0.2,3,0.4)->5.31095e-315 -ushort f(char,double,char,double):('a',0.2,'€',0.4)->225 -ushort f(char,double,char,double):('a',0.2,'€',0.4)->0 -long long f(float,long long,int):(1.4,0x35c6f707fffffffa,0xe)->0x35c6f70800000009 -long long f(float,long long,int):(1.4,0x35c6f707fffffffa,0xe)->0x035c6f708 DELETED ffcall/callback/tests.output/rs6000-ibm-aix3.2.5-gcc Index: ffcall/callback/tests.output/rs6000-ibm-aix3.2.5-gcc ================================================================== --- ffcall/callback/tests.output/rs6000-ibm-aix3.2.5-gcc +++ /dev/null @@ -1,12 +0,0 @@ -float f(16*float):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.1,1.2,1.3,1.4,1.5,1.6,1.7)->14.3 -float f(16*float):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.1,1.2,1.3,1.4,0,1.6,1.7)->12.8 -double f(16*double):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.1,1.2,1.3,1.4,1.5,1.6,1.7)->14.3 -double f(16*double):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.1,1.2,1.3,1.4,0,1.6,1.7)->12.8 -Float f(Float,float,double):({0.1},0.2,0.3)->{0.6} -Float f(Float,float,double):({9.00867e-41},0.1,0.2)->{0.3} -Double f(float,Double,double):(0.1,{0.2},0.3)->{0.6} -Double f(float,Double,double):(0.1,{0},0.2)->{0.3} -T f(T,char,T):({"the"},' ',{"fox"})->{"box"} -T f(T,char,T):({"he°"},' ',{"oxo"})->{"bxo"} -X f(B,char,double,B):({0.1,{1,2,3}},'',0.3,{0.2,{5,4,3}})->{"return val",''} -X f(B,char,double,B):({-2.35344e-185,{2,3,0}},' ',0.3,{1.061e-313,{3,0,0}})->{"return val",' '} DELETED ffcall/callback/tests.output/rs6000-ibm-aix3.2.5-xlc Index: ffcall/callback/tests.output/rs6000-ibm-aix3.2.5-xlc ================================================================== --- ffcall/callback/tests.output/rs6000-ibm-aix3.2.5-xlc +++ /dev/null DELETED ffcall/callback/tests.output/rs6000-ibm-aix4.2.0.0-cc Index: ffcall/callback/tests.output/rs6000-ibm-aix4.2.0.0-cc ================================================================== --- ffcall/callback/tests.output/rs6000-ibm-aix4.2.0.0-cc +++ /dev/null DELETED ffcall/callback/tests.output/rs6000-ibm-aix4.2.0.0-cc-O Index: ffcall/callback/tests.output/rs6000-ibm-aix4.2.0.0-cc-O ================================================================== --- ffcall/callback/tests.output/rs6000-ibm-aix4.2.0.0-cc-O +++ /dev/null DELETED ffcall/callback/tests.output/rs6000-ibm-aix4.2.0.0-gcc Index: ffcall/callback/tests.output/rs6000-ibm-aix4.2.0.0-gcc ================================================================== --- ffcall/callback/tests.output/rs6000-ibm-aix4.2.0.0-gcc +++ /dev/null @@ -1,8 +0,0 @@ -Float f(Float,float,double):({0.1},0.2,0.3)->{0.6} -Float f(Float,float,double):({-1.69679e+29},0.1,0.2)->{-1.69679e+29} -Double f(float,Double,double):(0.1,{0.2},0.3)->{0.6} -Double f(float,Double,double):(0.1,{1.50141e-154},0.2)->{0.3} -T f(T,char,T):({"the"},' ',{"fox"})->{"box"} -T f(T,char,T):({"he"},' ',{"oxo"})->{"bxo"} -X f(B,char,double,B):({0.1,{1,2,3}},'',0.3,{0.2,{5,4,3}})->{"return val",''} -X f(B,char,double,B):({-2.35344e-185,{2,3,0}},' ',0.3,{1.061e-313,{3,0,0}})->{"return val",' '} DELETED ffcall/callback/tests.output/rs6000-ibm-aix4.2.0.0-xlc Index: ffcall/callback/tests.output/rs6000-ibm-aix4.2.0.0-xlc ================================================================== --- ffcall/callback/tests.output/rs6000-ibm-aix4.2.0.0-xlc +++ /dev/null DELETED ffcall/callback/tests.output/rs6000-ibm-aix4.2.0.0-xlc-O Index: ffcall/callback/tests.output/rs6000-ibm-aix4.2.0.0-xlc-O ================================================================== --- ffcall/callback/tests.output/rs6000-ibm-aix4.2.0.0-xlc-O +++ /dev/null DELETED ffcall/callback/tests.output/sparc-sun-solaris2.4-cc Index: ffcall/callback/tests.output/sparc-sun-solaris2.4-cc ================================================================== --- ffcall/callback/tests.output/sparc-sun-solaris2.4-cc +++ /dev/null DELETED ffcall/callback/tests.output/sparc-sun-solaris2.4-cc-O Index: ffcall/callback/tests.output/sparc-sun-solaris2.4-cc-O ================================================================== --- ffcall/callback/tests.output/sparc-sun-solaris2.4-cc-O +++ /dev/null DELETED ffcall/callback/tests.output/sparc-sun-solaris2.4-gcc Index: ffcall/callback/tests.output/sparc-sun-solaris2.4-gcc ================================================================== --- ffcall/callback/tests.output/sparc-sun-solaris2.4-gcc +++ /dev/null DELETED ffcall/callback/tests.output/sparc-sun-solaris2.4-gcc-fpcc-struct-return Index: ffcall/callback/tests.output/sparc-sun-solaris2.4-gcc-fpcc-struct-return ================================================================== --- ffcall/callback/tests.output/sparc-sun-solaris2.4-gcc-fpcc-struct-return +++ /dev/null DELETED ffcall/callback/tests.output/sparc-sun-sunos4.1.3_U1-cc-O Index: ffcall/callback/tests.output/sparc-sun-sunos4.1.3_U1-cc-O ================================================================== --- ffcall/callback/tests.output/sparc-sun-sunos4.1.3_U1-cc-O +++ /dev/null DELETED ffcall/callback/tests.output/sparc-sun-sunos4.1.3_U1-gcc Index: ffcall/callback/tests.output/sparc-sun-sunos4.1.3_U1-gcc ================================================================== --- ffcall/callback/tests.output/sparc-sun-sunos4.1.3_U1-gcc +++ /dev/null DELETED ffcall/callback/tests.output/sparc-unknown-linuxlibc6-gcc Index: ffcall/callback/tests.output/sparc-unknown-linuxlibc6-gcc ================================================================== --- ffcall/callback/tests.output/sparc-unknown-linuxlibc6-gcc +++ /dev/null DELETED ffcall/callback/trampoline_r/COPYING Index: ffcall/callback/trampoline_r/COPYING ================================================================== --- ffcall/callback/trampoline_r/COPYING +++ /dev/null @@ -1,340 +0,0 @@ - GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1989, 1991 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307, - USA. - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -License is intended to guarantee your freedom to share and change free -software--to make sure the software is free for all its users. This -General Public License applies to most of the Free Software -Foundation's software and to any other program whose authors commit to -using it. (Some other Free Software Foundation software is covered by -the GNU Library General Public License instead.) You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if you -distribute copies of the software, or if you modify it. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must give the recipients all the rights that -you have. You must make sure that they, too, receive or can get the -source code. And you must show them these terms so they know their -rights. - - We protect your rights with two steps: (1) copyright the software, and -(2) offer you this license which gives you legal permission to copy, -distribute and/or modify the software. - - Also, for each author's protection and ours, we want to make certain -that everyone understands that there is no warranty for this free -software. If the software is modified by someone else and passed on, we -want its recipients to know that what they have is not the original, so -that any problems introduced by others will not reflect on the original -authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that redistributors of a free -program will individually obtain patent licenses, in effect making the -program proprietary. To prevent this, we have made it clear that any -patent must be licensed for everyone's free use or not licensed at all. - - The precise terms and conditions for copying, distribution and -modification follow. - - GNU GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License applies to any program or other work which contains -a notice placed by the copyright holder saying it may be distributed -under the terms of this General Public License. The "Program", below, -refers to any such program or work, and a "work based on the Program" -means either the Program or any derivative work under copyright law: -that is to say, a work containing the Program or a portion of it, -either verbatim or with modifications and/or translated into another -language. (Hereinafter, translation is included without limitation in -the term "modification".) Each licensee is addressed as "you". - -Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running the Program is not restricted, and the output from the Program -is covered only if its contents constitute a work based on the -Program (independent of having been made by running the Program). -Whether that is true depends on what the Program does. - - 1. You may copy and distribute verbatim copies of the Program's -source code as you receive it, in any medium, provided that you -conspicuously and appropriately publish on each copy an appropriate -copyright notice and disclaimer of warranty; keep intact all the -notices that refer to this License and to the absence of any warranty; -and give any other recipients of the Program a copy of this License -along with the Program. - -You may charge a fee for the physical act of transferring a copy, and -you may at your option offer warranty protection in exchange for a fee. - - 2. You may modify your copy or copies of the Program or any portion -of it, thus forming a work based on the Program, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) You must cause the modified files to carry prominent notices - stating that you changed the files and the date of any change. - - b) You must cause any work that you distribute or publish, that in - whole or in part contains or is derived from the Program or any - part thereof, to be licensed as a whole at no charge to all third - parties under the terms of this License. - - c) If the modified program normally reads commands interactively - when run, you must cause it, when started running for such - interactive use in the most ordinary way, to print or display an - announcement including an appropriate copyright notice and a - notice that there is no warranty (or else, saying that you provide - a warranty) and that users may redistribute the program under - these conditions, and telling the user how to view a copy of this - License. (Exception: if the Program itself is interactive but - does not normally print such an announcement, your work based on - the Program is not required to print an announcement.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Program, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Program, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Program. - -In addition, mere aggregation of another work not based on the Program -with the Program (or with a work based on the Program) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may copy and distribute the Program (or a work based on it, -under Section 2) in object code or executable form under the terms of -Sections 1 and 2 above provided that you also do one of the following: - - a) Accompany it with the complete corresponding machine-readable - source code, which must be distributed under the terms of Sections - 1 and 2 above on a medium customarily used for software interchange; or, - - b) Accompany it with a written offer, valid for at least three - years, to give any third party, for a charge no more than your - cost of physically performing source distribution, a complete - machine-readable copy of the corresponding source code, to be - distributed under the terms of Sections 1 and 2 above on a medium - customarily used for software interchange; or, - - c) Accompany it with the information you received as to the offer - to distribute corresponding source code. (This alternative is - allowed only for noncommercial distribution and only if you - received the program in object code or executable form with such - an offer, in accord with Subsection b above.) - -The source code for a work means the preferred form of the work for -making modifications to it. For an executable work, complete source -code means all the source code for all modules it contains, plus any -associated interface definition files, plus the scripts used to -control compilation and installation of the executable. However, as a -special exception, the source code distributed need not include -anything that is normally distributed (in either source or binary -form) with the major components (compiler, kernel, and so on) of the -operating system on which the executable runs, unless that component -itself accompanies the executable. - -If distribution of executable or object code is made by offering -access to copy from a designated place, then offering equivalent -access to copy the source code from the same place counts as -distribution of the source code, even though third parties are not -compelled to copy the source along with the object code. - - 4. You may not copy, modify, sublicense, or distribute the Program -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense or distribute the Program is -void, and will automatically terminate your rights under this License. -However, parties who have received copies, or rights, from you under -this License will not have their licenses terminated so long as such -parties remain in full compliance. - - 5. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Program or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Program (or any work based on the -Program), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Program or works based on it. - - 6. Each time you redistribute the Program (or any work based on the -Program), the recipient automatically receives a license from the -original licensor to copy, distribute or modify the Program subject to -these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 7. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Program at all. For example, if a patent -license would not permit royalty-free redistribution of the Program by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system, which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 8. If the distribution and/or use of the Program is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Program under this License -may add an explicit geographical distribution limitation excluding -those countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 9. The Free Software Foundation may publish revised and/or new versions -of the General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - -Each version is given a distinguishing version number. If the Program -specifies a version number of this License which applies to it and "any -later version", you have the option of following the terms and conditions -either of that version or of any later version published by the Free -Software Foundation. If the Program does not specify a version number of -this License, you may choose any version ever published by the Free Software -Foundation. - - 10. If you wish to incorporate parts of the Program into other free -programs whose distribution conditions are different, write to the author -to ask for permission. For software which is copyrighted by the Free -Software Foundation, write to the Free Software Foundation; we sometimes -make exceptions for this. Our decision will be guided by the two goals -of preserving the free status of all derivatives of our free software and -of promoting the sharing and reuse of software generally. - - NO WARRANTY - - 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -REPAIR OR CORRECTION. - - 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - - END OF TERMS AND CONDITIONS - - Appendix: How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. - -Also add information on how to contact you by electronic and paper mail. - -If the program is interactive, make it output a short notice like this -when it starts in an interactive mode: - - Gnomovision version 69, Copyright (C) year name of author - Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, the commands you use may -be called something other than `show w' and `show c'; they could even be -mouse-clicks or menu items--whatever suits your program. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the program, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the program - `Gnomovision' (which makes passes at compilers) written by James Hacker. - - , 1 April 1989 - Ty Coon, President of Vice - -This General Public License does not permit incorporating your program into -proprietary programs. If your program is a subroutine library, you may -consider it more useful to permit linking proprietary applications with the -library. If this is what you want to do, use the GNU Library General -Public License instead of this License. DELETED ffcall/callback/trampoline_r/Makefile.devel Index: ffcall/callback/trampoline_r/Makefile.devel ================================================================== --- ffcall/callback/trampoline_r/Makefile.devel +++ /dev/null @@ -1,143 +0,0 @@ -# developer -*-Makefile-*- - -HOST = i486-linux -CPU = i386 -GCC = gcc -GCCFLAGS = -O2 -fomit-frame-pointer -ASPREFIX = /usr1/gnu/lib -RM = rm -f -ROFF_MAN = groff -Tascii -mandoc - -all : proto-i386.s proto-m68k.s proto-mips.s proto-mipsn32.s proto-mips64.s proto-sparc.s proto-sparc64.s proto-alpha.s proto-hppa.s proto-arm.s proto-rs6000-aix.old.s proto-rs6000-aix.new.s proto-rs6000-sysv4.s proto-rs6000-macos.s proto-m88k.s proto-convex.s proto-ia64.c proto-x86_64.c \ - cache-sparc.S cache-alpha.s cache-hppa.s cache-rs6000-sysv4.s cache-rs6000-macos.s cache-convex.s \ - trampoline_r.man \ - config.h.msvc config.h.mingw32 - -proto-i386.s : proto.c - $(GCC) -V 2.7.2 -b i486-linuxaout $(GCCFLAGS) -D__i386__ -S proto.c -o $@ - -proto-m68k.s : proto.c - $(GCC) -V egcs-2.91.57 -b m68k-sun $(GCCFLAGS) -D__m68k__ -S proto.c -o $@ - -proto-mips.s : proto.c - $(GCC) -V 2.95.2 -b mips-sgi $(GCCFLAGS) -D__mips__ -S proto.c -o $@ -mabicalls - -proto-mipsn32.s : proto.c - $(GCC) -V 2.95.2 -b mips-sgi-irix6 $(GCCFLAGS) -D__mipsn32__ -S proto.c -o $@ -mabicalls - -proto-mips64.s : proto64.c - $(GCC) -V 2.95.2 -b mips-sgi -mips3 -mlong64 $(GCCFLAGS) -D__mips64__ -S proto64.c -o $@ -mabicalls - -proto-sparc.s : proto.c - $(GCC) -V 2.95.2 -b sparc-sun $(GCCFLAGS) -D__sparc__ -S proto.c -o $@ - -proto-sparc64.s : proto64.c - sparc64-linux-gcc -V 2.95.2 -b sparc64-linux $(GCCFLAGS) -D__sparc64__ -S proto64.c -o $@ - -proto-alpha.s : proto64.c - $(GCC) -V 2.7.2 -b alpha-dec-osf $(GCCFLAGS) -D__alpha__ -S proto64.c -o $@ - -proto-hppa.s : proto.c - $(GCC) -V 2.6.3 -b hppa1.0-hpux $(GCCFLAGS) -D__hppa__ -S proto.c -o $@ - -proto-arm.s : proto.c - $(GCC) -V 2.6.3 -b arm-acorn-riscix $(GCCFLAGS) -D__arm__ -S proto.c -o $@ - -proto-rs6000-aix.old.s : proto.c - $(GCC) -V 2.95.2 -b rs6000 -mno-power -mno-power2 -mno-powerpc -mold-mnemonics $(GCCFLAGS) -D__rs6000__ -S proto.c -o $@ - -proto-rs6000-aix.new.s : proto.c - $(GCC) -V 2.95.2 -b rs6000 -mno-power -mno-power2 -mno-powerpc -mnew-mnemonics $(GCCFLAGS) -D__rs6000__ -S proto.c -o $@ - -proto-rs6000-sysv4.s : proto.c - $(GCC) -V 2.95.2 -b ppc-linux -mno-power -mno-power2 -mno-powerpc $(GCCFLAGS) -D__rs6000__ -S proto.c -o $@ - -proto-rs6000-macos.s : proto.c - $(GCC) -V 3.3.2 -b powerpc-darwin $(GCCFLAGS) -D__rs6000__ -S proto.c -o $@ - -proto-m88k.s : proto.c - $(GCC) -V 2.95.2 -b m88k-dgux $(GCCFLAGS) -D__m88k__ -S proto.c -o $@ - -proto-convex.s : proto.c - $(GCC) -V 2.6.3 -b convex-c2 $(GCCFLAGS) -D__convex__ -S proto.c -o $@ - -proto-ia64.s : proto64.c - $(GCC) -V 2.9-ia64-000216 -b ia64-hp-linux $(GCCFLAGS) -D__ia64__ -S proto64.c -o $@ - -proto-x86_64.s : proto64.c - $(GCC) -V 3.2.2 -b x86_64-suse-linux $(GCCFLAGS) -D__x86_64__ -S proto64.c -o $@ - -cache-sparc.S : cache-sparc.c asmsparc.sh - $(GCC) -V 2.95.2 -b sparc-sun $(GCCFLAGS) -D__sparc__ -S $< -o cache-sparc.s - (echo '#include "asmsparc.h"' ; ./asmsparc.sh < cache-sparc.s) > cache-sparc.S - $(RM) cache-sparc.s - -cache-alpha.s : cache-alpha.c - $(GCC) -V 2.7.2 -b alpha-dec-osf $(GCCFLAGS) -D__alpha__ -S $< -o $@ - -cache-hppa.s : cache-hppa.c - $(GCC) -V 2.6.3 -b hppa1.0-hpux $(GCCFLAGS) -D__hppa__ -S $< -o $@ - -cache-rs6000-sysv4.s : cache-rs6000.c - $(GCC) -V 2.95.2 -b ppc-linux -mno-power -mno-power2 -mno-powerpc $(GCCFLAGS) -D__rs6000__ -S $< -o $@ - -cache-rs6000-macos.s : cache-rs6000.c - $(GCC) -V 3.3.2 -b powerpc-darwin $(GCCFLAGS) -D__rs6000__ -S $< -o $@ - -cache-convex.s : cache-convex.c - $(GCC) -V 2.6.3 -b convex-c2 $(GCCFLAGS) -D__convex__ -S $< -o $@ - -trampoline_r.man : trampoline_r.3 - $(ROFF_MAN) trampoline_r.3 > trampoline_r.man - -config.h.msvc : config.h.in - sed -e 's,^#undef __i386__$$,#define __i386__ 1,' -e 's,^#undef STDC_HEADERS$$,#define STDC_HEADERS 1,' -e 's,^#undef HAVE_GETPAGESIZE$$,#define HAVE_GETPAGESIZE 1 /* fake */,' -e 's,^#undef RETGETPAGESIZETYPE$$,#define RETGETPAGESIZETYPE unsigned long,' -e 's,^#undef CODE_EXECUTABLE$$,#define CODE_EXECUTABLE 1,' < config.h.in > config.h.msvc - -config.h.mingw32 : config.h.in - sed -e 's,^#undef __i386__$$,#define __i386__ 1,' -e 's,^#undef STDC_HEADERS$$,#define STDC_HEADERS 1,' -e 's,^#undef HAVE_GETPAGESIZE$$,#define HAVE_GETPAGESIZE 1 /* fake */,' -e 's,^#undef RETGETPAGESIZETYPE$$,#define RETGETPAGESIZETYPE unsigned long,' -e 's,^#undef CODE_EXECUTABLE$$,#define CODE_EXECUTABLE 1,' < config.h.in > config.h.mingw32 - -tramp-i386.o : tramp-i386.s - $(ASPREFIX)/i486-linux/bin/as tramp-i386.s -o $@ - -tramp-m68k.o : tramp-m68k.s - $(ASPREFIX)/m68k-sun/bin/as tramp-m68k.s -o $@ - -tramp-mips.o : tramp-mips.s - $(ASPREFIX)/mips-sgi/bin/as tramp-mips.s -o $@ - -tramp-mips64.o : tramp-mips64.s - $(ASPREFIX)/mips-sgi/bin/as -mips3 -membedded-pic tramp-mips64.s -o $@ - -tramp-sparc.o : tramp-sparc.s - $(ASPREFIX)/sparc-sun/bin/as tramp-sparc.s -o $@ - -tramp-sparc64.o : tramp-sparc64.s - $(ASPREFIX)/sparc64-linux/bin/as tramp-sparc64.s -o $@ - -tramp-alpha.o : tramp-alpha.s - $(ASPREFIX)/alpha-dec-osf/bin/as tramp-alpha.s -o $@ - -tramp-hppa.o : tramp-hppa.s - $(ASPREFIX)/hppa1.0-hpux/bin/as tramp-hppa.s -o $@ - -tramp-arm.o : tramp-arm.s - $(ASPREFIX)/arm-acorn-riscix/bin/as tramp-arm.s -o $@ - -tramp-rs6000-old.o : tramp-rs6000-old.s - $(ASPREFIX)/rs6000/bin/as tramp-rs6000-old.s -o $@ - -tramp-rs6000-sysv4.o : tramp-rs6000-sysv4.s - $(ASPREFIX)/ppc-linux/bin/as tramp-rs6000-sysv4.s -o $@ - -tramp-m88k.o : tramp-m88k.s - $(ASPREFIX)/m88k-coff/bin/as tramp-m88k.s -o $@ - -tramp-convex.o : tramp-convex.s - $(ASPREFIX)/convex-c2/bin/as tramp-convex.s -o $@ - -tramp-ia64.o : tramp-ia64.s - /nue/usr/ia64-hp-linux/bin/as tramp-ia64.s -o $@ - -tramp-x86_64.o : tramp-x86_64.s - $(ASPREFIX)/x86_64-suse-linux/bin/as tramp-x86_64.s -o $@ - DELETED ffcall/callback/trampoline_r/Makefile.in Index: ffcall/callback/trampoline_r/Makefile.in ================================================================== --- ffcall/callback/trampoline_r/Makefile.in +++ /dev/null @@ -1,184 +0,0 @@ -# Makefile for trampoline - -#### Start of system configuration section. #### - -HOST = @host@ -CPU = @host_cpu@ -OS = @host_os@ - -# Directories used by "make": -srcdir = @srcdir@ - -# Directories used by "make install": -prefix = @prefix@ -local_prefix = /usr/local -exec_prefix = @exec_prefix@ -libdir = @libdir@ -includedir = @includedir@ -mandir = @mandir@ -datadir = @datadir@ -htmldir = $(datadir)/html - -# Programs used by "make": -CC = @CC@ -CFLAGS = @CFLAGS@ -CPP = @CPP@ -INCLUDES = -I. -I$(srcdir) -ASPFLAGS = `if test @AS_UNDERSCORE@ = true; then echo '-DASM_UNDERSCORE'; fi` -LIBTOOL = @LIBTOOL@ -LIBTOOL_COMPILE = $(LIBTOOL) --mode=compile -LIBTOOL_LINK = $(LIBTOOL) --mode=link -LIBTOOL_INSTALL = $(LIBTOOL) --mode=install -LIBTOOL_UNINSTALL = $(LIBTOOL) --mode=uninstall -AR = ar -AR_FLAGS = rc -RANLIB = @RANLIB@ -RM = rm -f -LN_S = @LN_S@ -@SET_MAKE@ - -# Programs used by "make install": -INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_DATA = @INSTALL_DATA@ - -#### End of system configuration section. #### - -SHELL = /bin/sh - -# Needed by $(LIBTOOL). -top_builddir = . - -OBJECTS = trampoline.lo @CPU_OBJECTS@ - -all : $(OBJECTS) libtrampoline.la trampoline_r.h $(srcdir)/trampoline_r.3 $(srcdir)/trampoline_r.html - -trampoline_r.h : $(srcdir)/trampoline_r.h.in - -$(LN_S) $(srcdir)/trampoline_r.h.in trampoline_r.h - -trampoline.lo : $(srcdir)/trampoline.c trampoline_r.h - $(LIBTOOL_COMPILE) $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/trampoline.c - -tramp-hppa.lo : $(srcdir)/tramp-hppa.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c $(srcdir)/tramp-hppa.s - -tramp-s390.lo : $(srcdir)/tramp-s390.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c $(srcdir)/tramp-s390.s - -tramp-rs6000.lo : tramp-rs6000.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c tramp-rs6000.s - -tramp-rs6000.s : $(srcdir)/tramp-rs6000.old.S $(srcdir)/tramp-rs6000.new.S - case "$(OS)" in \ - aix3*) syntax=old;; \ - *) syntax=new;; \ - esac; \ - $(CPP) $(srcdir)/tramp-rs6000.$${syntax}.S > tramp-rs6000.s - -tramp-ia64.lo : $(srcdir)/tramp-ia64.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c $(srcdir)/tramp-ia64.s - -cache-sparc.lo : cache-sparc.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c cache-sparc.s - -cache-sparc.s : $(srcdir)/cache-sparc.S - $(CPP) $(ASPFLAGS) $(srcdir)/cache-sparc.S | grep -v '^ *#line' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,//.*$$,,' -e 's,\$$,#,g' > cache-sparc.s - -cache-sparc64.lo : cache-sparc64.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c cache-sparc64.s - -cache-sparc64.s : $(srcdir)/cache-sparc.S - $(CPP) $(ASPFLAGS) $(srcdir)/cache-sparc.S | grep -v '^ *#line' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,//.*$$,,' -e 's,\$$,#,g' > cache-sparc64.s - -cache-alpha.lo : $(srcdir)/cache-alpha.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c $(srcdir)/cache-alpha.s - -cache-hppa.lo : $(srcdir)/cache-hppa.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c $(srcdir)/cache-hppa.s - -cache-rs6000.lo : $(srcdir)/cache-rs6000-sysv4.s $(srcdir)/cache-rs6000-macos.s - case "$(OS)" in \ - macos* | darwin*) syntax=macos;; \ - *) syntax=sysv4;; \ - esac; \ - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c $(srcdir)/cache-rs6000-$${syntax}.s ; mv -f cache-rs6000-$${syntax}.o cache-rs6000.o ; mv -f cache-rs6000-$${syntax}.lo cache-rs6000.lo - -cache-convex.lo : $(srcdir)/cache-convex.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c $(srcdir)/cache-convex.s - -libtrampoline.la : $(OBJECTS) - $(LIBTOOL_LINK) $(CC) -o libtrampoline.la -rpath $(libdir) $(OBJECTS) - -# Installs the library and include files only. Typically called with only -# $(libdir) and $(includedir) - don't use $(prefix) and $(exec_prefix) here. -install-lib : all force - if [ ! -d $(includedir) ] ; then mkdir $(includedir) ; fi - $(INSTALL_DATA) trampoline_r.h $(includedir)/trampoline_r.h - -install : all force - if [ ! -d $(DESTDIR)$(prefix) ] ; then mkdir $(DESTDIR)$(prefix) ; fi - if [ ! -d $(DESTDIR)$(exec_prefix) ] ; then mkdir $(DESTDIR)$(exec_prefix) ; fi -# if [ ! -d $(DESTDIR)$(libdir) ] ; then mkdir $(DESTDIR)$(libdir) ; fi -# $(LIBTOOL_INSTALL) $(INSTALL_DATA) libtrampoline.la $(DESTDIR)$(libdir)/libtrampoline.la - if [ ! -d $(DESTDIR)$(includedir) ] ; then mkdir $(DESTDIR)$(includedir) ; fi - $(INSTALL_DATA) trampoline_r.h $(DESTDIR)$(includedir)/trampoline_r.h - if [ ! -d $(DESTDIR)$(mandir) ] ; then mkdir $(DESTDIR)$(mandir) ; fi - if [ ! -d $(DESTDIR)$(mandir)/man3 ] ; then mkdir $(DESTDIR)$(mandir)/man3 ; fi - $(INSTALL_DATA) $(srcdir)/trampoline_r.3 $(DESTDIR)$(mandir)/man3/trampoline_r.3 - if [ ! -d $(DESTDIR)$(datadir) ] ; then mkdir $(DESTDIR)$(datadir) ; fi - if [ ! -d $(DESTDIR)$(htmldir) ] ; then mkdir $(DESTDIR)$(htmldir) ; fi - $(INSTALL_DATA) $(srcdir)/trampoline_r.html $(DESTDIR)$(htmldir)/trampoline_r.html - -installdirs : force - if [ ! -d $(DESTDIR)$(prefix) ] ; then mkdir $(DESTDIR)$(prefix) ; fi - if [ ! -d $(DESTDIR)$(exec_prefix) ] ; then mkdir $(DESTDIR)$(exec_prefix) ; fi -# if [ ! -d $(DESTDIR)$(libdir) ] ; then mkdir $(DESTDIR)$(libdir) ; fi - if [ ! -d $(DESTDIR)$(includedir) ] ; then mkdir $(DESTDIR)$(includedir) ; fi - if [ ! -d $(DESTDIR)$(mandir) ] ; then mkdir $(DESTDIR)$(mandir) ; fi - if [ ! -d $(DESTDIR)$(mandir)/man3 ] ; then mkdir $(DESTDIR)$(mandir)/man3 ; fi - if [ ! -d $(DESTDIR)$(datadir) ] ; then mkdir $(DESTDIR)$(datadir) ; fi - if [ ! -d $(DESTDIR)$(htmldir) ] ; then mkdir $(DESTDIR)$(htmldir) ; fi - -uninstall : force -# $(LIBTOOL_UNINSTALL) $(RM) $(DESTDIR)$(libdir)/libtrampoline.la - $(RM) $(DESTDIR)$(includedir)/trampoline_r.h - $(RM) $(DESTDIR)$(mandir)/man3/trampoline_r.3 - $(RM) $(DESTDIR)$(htmldir)/trampoline_r.html - -test1.o : $(srcdir)/test1.c trampoline_r.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/test1.c - -test1 : test1.o $(OBJECTS) - $(LIBTOOL_LINK) $(CC) $(CFLAGS) @GCC_X_NONE@ test1.o $(OBJECTS) -o test1 - -test2.o : $(srcdir)/test2.c trampoline_r.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/test2.c - -test2 : test2.o $(OBJECTS) - $(LIBTOOL_LINK) $(CC) $(CFLAGS) @GCC_X_NONE@ test2.o $(OBJECTS) -o test2 - -check1 : all test1 - ./test1 - -check : all test1 test2 - ./test1 - ./test2 - touch tests.passed.$(HOST) - -extracheck : check - -mostlyclean : clean - -clean : force - $(RM) $(OBJECTS) `echo $(OBJECTS) | sed -e 's/\.lo/.o/g'` tramp-rs6000.s cache-sparc.s cache-sparc64.s libtrampoline.* core - $(RM) -r .libs _libs - $(RM) test1.o test1 test2.o test2 - -distclean : clean - $(RM) config.status config.log config.cache Makefile config.h trampoline_r.h libtool tests.passed.* - -maintainer-clean : distclean - -force : - - DELETED ffcall/callback/trampoline_r/Makefile.mingw32 Index: ffcall/callback/trampoline_r/Makefile.mingw32 ================================================================== --- ffcall/callback/trampoline_r/Makefile.mingw32 +++ /dev/null @@ -1,94 +0,0 @@ -# -*-Makefile-*- for trampoline - -#### Start of system configuration section. #### - -HOST = i386-pc-win32-gcc -CPU = i386 - -# Directories used by "make": -srcdir = . - -# Directories used by "make install": -prefix = /usr/local -local_prefix = /usr/local -exec_prefix = $(prefix) -libdir = $(exec_prefix)/lib -includedir = $(prefix)/include -mandir = $(prefix)/man - -# Programs used by "make": -CC = gcc -mno-cygwin -CFLAGS = -O -CPP = gcc -E -INCLUDES = -I. -I$(srcdir) -ASPFLAGS = -DASM_UNDERSCORE -AR = ar -AR_FLAGS = rc -RM = rm -f -LN = cp - -# Programs used by "make install": -INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_DATA = @INSTALL_DATA@ - -#### End of system configuration section. #### - -SHELL = /bin/sh - -OBJECTS = trampoline.o - -all : $(OBJECTS) libtrampoline.a trampoline_r.h $(srcdir)/trampoline_r.3 $(srcdir)/trampoline_r.html - -trampoline_r.h : $(srcdir)/trampoline_r.h.in - -$(LN) $(srcdir)/trampoline_r.h.in trampoline_r.h - -config.h : $(srcdir)/config.h.mingw32 - -$(LN) $(srcdir)/config.h.mingw32 config.h - -trampoline.o : $(srcdir)/trampoline.c trampoline_r.h config.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/trampoline.c - -trampoline.s : $(srcdir)/trampoline.c trampoline_r.h config.h - $(CC) $(CFLAGS) $(INCLUDES) -S $(srcdir)/trampoline.c - -libtrampoline.a : $(OBJECTS) - $(RM) libtrampoline.a - $(AR) $(AR_FLAGS) libtrampoline.a $(OBJECTS) - -test1.o : $(srcdir)/test1.c trampoline_r.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/test1.c - -test1.exe : test1.o $(OBJECTS) - $(CC) $(CFLAGS) test1.o $(OBJECTS) -o test1.exe - -test2.o : $(srcdir)/test2.c trampoline_r.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/test2.c - -test2.exe : test2.o $(OBJECTS) - $(CC) $(CFLAGS) test2.o $(OBJECTS) -o test2.exe - -check1 : all test1.exe - test1.exe - -check : all test1.exe test2.exe - test1.exe - test2.exe - touch tests.passed.$(HOST) - -extracheck : check - -mostlyclean : clean - -clean : force - $(RM) $(OBJECTS) libtrampoline.a core - $(RM) test1.o test1.exe test2.o test2.exe - -distclean : clean - $(RM) config.status config.log config.cache Makefile config.h trampoline_r.h tests.passed.* - -maintainer-clean : distclean - -force : - - DELETED ffcall/callback/trampoline_r/Makefile.msvc Index: ffcall/callback/trampoline_r/Makefile.msvc ================================================================== --- ffcall/callback/trampoline_r/Makefile.msvc +++ /dev/null @@ -1,127 +0,0 @@ -# -*- Makefile -*- for trampoline - -#### Start of system configuration section. #### - -# Flags that can be set on the nmake command line: -# MFLAGS={-ML|-MT|-MD} for defining the compilation model -# MFLAGS=-ML (the default) Single-threaded, statically linked - libc.lib -# MFLAGS=-MT Multi-threaded, statically linked - libcmt.lib -# MFLAGS=-MD Multi-threaded, dynamically linked - msvcrt.lib -# DEBUG=1 for compiling with debugging information -# Note that nmake command line flags are automatically passed to subdirectory -# Makefiles. Therefore we don't need to pass them explicitly to subdirectory -# Makefiles, but the subdirectory Makefiles need to have the same defaults. -# Building as a DLL not supported yet. -DLL=0 -!if !defined(DEBUG) -DEBUG=0 -!endif -!if !defined(MFLAGS) -!if !$(DLL) -MFLAGS= -!else -MFLAGS=-MD -!endif -!endif - -!if $(DEBUG) -OPTIMFLAGS = -Od -Z7 -!else -OPTIMFLAGS = -D_NDEBUG -O1 -!endif - -HOST = i386-pc-win32-msvc -CPU = i386 - -# Directories used by "make": -srcdir = . - -# Directories used by "make install": -prefix = /usr/local -local_prefix = /usr/local -exec_prefix = $(prefix) -libdir = $(exec_prefix)/lib -includedir = $(prefix)/include -mandir = $(prefix)/man - -# Programs used by "make": -CC = cl -CFLAGS = $(MFLAGS) $(OPTIMFLAGS) -CPP = cl -E -INCLUDES = -I. -I$(srcdir) -AR = lib -AR_FLAGS = /out: -RM = -del -LN = copy - -# Programs used by "make install": -INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_DATA = @INSTALL_DATA@ - -#### End of system configuration section. #### - -SHELL = /bin/sh - -OBJECTS = trampoline.obj - -all : $(OBJECTS) trampoline.lib trampoline_r.h $(srcdir)/trampoline_r.3 $(srcdir)/trampoline_r.html - -trampoline_r.h : $(srcdir)/trampoline_r.h.in - -$(LN) $(srcdir)\trampoline_r.h.in trampoline_r.h - -config.h : $(srcdir)/config.h.msvc - -$(LN) $(srcdir)\config.h.msvc config.h - -trampoline.obj : $(srcdir)/trampoline.c trampoline_r.h config.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/trampoline.c - -trampoline.s : $(srcdir)/trampoline.c trampoline_r.h config.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/trampoline.c /FAs /Fatrampoline.s - -!if !$(DLL) -trampoline.lib : $(OBJECTS) - $(RM) trampoline.lib - $(AR) $(AR_FLAGS)trampoline.lib $(OBJECTS) -!else -# trampoline.dll and trampoline.lib are created together. -trampoline.lib : $(OBJECTS) - $(CC) $(MFLAGS) -LD $(OBJECTS) -!endif - -test1.obj : $(srcdir)/test1.c trampoline_r.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/test1.c - -test1.exe : test1.obj $(OBJECTS) - $(RM) test1.ilk - $(CC) $(CFLAGS) test1.obj $(OBJECTS) /Fetest1.exe - -test2.obj : $(srcdir)/test2.c trampoline_r.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/test2.c - -test2.exe : test2.obj $(OBJECTS) - $(RM) test2.ilk - $(CC) $(CFLAGS) test2.obj $(OBJECTS) /Fetest2.exe - -check1 : all test1.exe - test1.exe - -check : all test1.exe test2.exe - test1.exe - test2.exe - copy nul tests.passed.$(HOST) - -mostlyclean : clean - -clean : force - $(RM) $(OBJECTS) trampoline.lib trampoline.exp trampoline.dll core - $(RM) test1.obj test1.exe test2.obj test2.exe - -distclean : clean - $(RM) config.status config.log config.cache Makefile config.h trampoline_r.h tests.passed.* - -maintainer-clean : distclean - -force : - - DELETED ffcall/callback/trampoline_r/PORTING Index: ffcall/callback/trampoline_r/PORTING ================================================================== --- ffcall/callback/trampoline_r/PORTING +++ /dev/null @@ -1,95 +0,0 @@ -The list of CPUs and platforms TRAMPOLINE has been ported to can be found -at the top of file trampoline.c. - -To port TRAMPOLINE to a new platform, three issues may have to be resolved: -A. a new CPU - how to build the trampoline? -B. a new OS - how to make code in malloc'ed memory executable? -C. a new CPU or OS - how to flush the instruction cache? - - -A. a new CPU - how to build the trampoline? - - The trampoline is a short sequence of machine instructions which puts - the constant into , then jumps to

. The only - registers that are allowed to be modified are call-used-registers. No - stack manipulations are allowed since the trampoline has to pass its - arguments along to the function at
. - - 1. To find out which instructions are available for "move"/"store" and - "jump", compile proto.c for your CPU: - - make -f Makefile.devel proto-${CPU}.s - or - gcc -O2 -fomit-frame-pointer -S proto.c -o proto-${CPU}.s - - 2. Write down the instructions for the trampoline in a file tramp-${CPU}.s, - using constants for , ,
. Assemble it: - - gcc -c tramp-${CPU}.s - - Verify that the jump actually goes to
. (Beware: Some CPUs have - program-counter relative jumps.) - - gdb tramp-${CPU}.o - disassemble tramp - - 3. Take a hex dump of tramp-${CPU}.o - - hexdump -e '"%06.6_ax " 16/1 " %02X" "\n"' < tramp-${CPU}.o - or - od -tx1 -Ax < tramp-${CPU}.o - or - od -x +x < tramp-${CPU}.o - - Look out for the magic numbers you used for , and -
. - - 4. Write the code which builds up a trampoline in memory, in trampoline.c. - - 5. Try it: - - make - make check1 - - 6. Write the is_tramp() macro and the tramp_xxx() accessor macros - in trampoline.c. - - 7. Try it: - - make - make check - - -B. a new OS - how to make code in malloc'ed memory executable? - - `configure' will find out whether code stored in malloc'ed memory is - executable, or whether virtual memory protections have to be set in order - to allow this. (The test is pretty simple: it copies a small function - to malloc'ed memory and tries to executed it. The test could also fail - because the compiler produced non-position-independent code or because - of alignment issues.) - - To set virtual memory protections on a page of memory, your system should - provide the mprotect() and getpagesize() functions. If it does not, find - a substitute. - - -C. a new CPU or OS - how to flush the instruction cache? - - CPUs which have separate data and instruction caches need to flush - (part of) the instruction cache when alloc_trampoline() is called. - (There may have been an old trampoline at the same location, and the - instruction cache is not updated when the new trampoline is built. - The effect can be that when the new trampoline is called, the old one - will still be executed.) - - To flush the instruction cache, some CPUs have special instruction which - can be put into gcc "asm" statements. On some CPUs these instructions are - privileged, you therefore need to call some system or library function. - On other CPUs, the only way to flush the instruction cache is to execute - a long sequence of "nop" or "jump" instructions. This is hairy. - - -When you are done with porting to a new platform, or even if TRAMPOLINE -passes the "make check" out of the box without modifications, please report -your results to the author of TRAMPOLINE, for inclusion in the next release. DELETED ffcall/callback/trampoline_r/README Index: ffcall/callback/trampoline_r/README ================================================================== --- ffcall/callback/trampoline_r/README +++ /dev/null @@ -1,12 +0,0 @@ -This directory contains a reentrant version of the trampoline package. - -Instead of clobbering a global variable, a pointer to data0,data1,... -is passed to the called function in a special CPU register. - -The number of supported data words (data0,data1) is arbitrary; 3 or 4 -or more would work as well if trampoline.c was modified appropriately. -Two words are needed, however, for passing closures through vacall_r -without an additional malloc() call per closure. - -The include file is renamed to . - DELETED ffcall/callback/trampoline_r/asmsparc.h Index: ffcall/callback/trampoline_r/asmsparc.h ================================================================== --- ffcall/callback/trampoline_r/asmsparc.h +++ /dev/null @@ -1,29 +0,0 @@ -// Assembly language support for sparc CPU. -// Bruno Haible 29.5.1999 - -#ifdef ASM_UNDERSCORE -// SunOS4, Linux/a.out -#ifdef __STDC__ -#define C(entrypoint) _##entrypoint -#else -#define C(entrypoint) _/**/entrypoint -#endif -#else -// Solaris, Linux/ELF -#define C(entrypoint) entrypoint -#endif - -// When assembly language code is compiled into a shared library, ELF linkers -// need to know which symbols are functions. -#if defined(__NetBSD__) || defined(__OpenBSD__) -#define DECLARE_FUNCTION(name) .type C(name),@function -#elif defined(__svr4__) || defined(__ELF__) -// Solaris, Linux/ELF -// Some preprocessors keep the backslash in place, some don't. -// Some complain about the # being not in front of an ANSI C macro. -// Therefore we use a dollar, which will be sed-converted to # later. -#define DECLARE_FUNCTION(name) .type C(name),$function -#else -// SunOS4, Linux/a.out -#define DECLARE_FUNCTION(name) -#endif DELETED ffcall/callback/trampoline_r/asmsparc.sh Index: ffcall/callback/trampoline_r/asmsparc.sh ================================================================== --- ffcall/callback/trampoline_r/asmsparc.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/sh -# Translate the assembler syntax of sparc assembler programs -# Usage: asmsparc < sunos4-asm-file > portable-asm-file -# The portable-asm-file has to be -# 1. preprocessed, -# 2. grep -v '^ *#line' | grep -v '^#' -# 3. sed -e 's,% ,%,g' -e 's,//.*$,,' -e 's,\$,#,g' - -tmpscript1=sed$$tmp1 -tmpscript2=sed$$tmp2 -tmpremove='rm -f $tmpscript1 $tmpscript2' -trap "$tmpremove" 1 2 15 - -cat > $tmpscript1 << \EOF -# ----------- Remove gcc self-identification -/gcc2_compiled/d -/gnu_compiled_c/d -EOF - -cat > $tmpscript2 << \EOF -# ----------- Turn # into $, to avoid trouble in preprocessing -s,#,\$,g -# ----------- Declare global symbols as functions (we have no variables) -s/\.global _\([A-Za-z0-9_]*\)$/.global _\1\ - DECLARE_FUNCTION(\1)/ -# ----------- Global symbols depends on ASM_UNDERSCORE -s/_\([A-Za-z0-9_:]*\)/C(\1)/ -EOF - -sed -f $tmpscript1 | \ -sed -f $tmpscript2 - -eval "$tmpremove" DELETED ffcall/callback/trampoline_r/cache-alpha.c Index: ffcall/callback/trampoline_r/cache-alpha.c ================================================================== --- ffcall/callback/trampoline_r/cache-alpha.c +++ /dev/null @@ -1,16 +0,0 @@ -/* Instruction cache flushing for alpha */ - -/* - * Copyright 1997 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -void __TR_clear_cache (void) -{ - /* Taken from gforth-0.3.0. */ - asm volatile ("call_pal 0x86"); /* imb (instruction-memory barrier) */ -} DELETED ffcall/callback/trampoline_r/cache-alpha.s Index: ffcall/callback/trampoline_r/cache-alpha.s ================================================================== --- ffcall/callback/trampoline_r/cache-alpha.s +++ /dev/null @@ -1,17 +0,0 @@ - .set noreorder - .set volatile - .set noat - .file 1 "cache-alpha.c" -gcc2_compiled.: -__gnu_compiled_c: -.text - .align 3 - .globl __TR_clear_cache - .ent __TR_clear_cache -__TR_clear_cache: -__TR_clear_cache..ng: - .frame $30,0,$26,0 - .prologue 0 - call_pal 0x86 - ret $31,($26),1 - .end __TR_clear_cache DELETED ffcall/callback/trampoline_r/cache-convex.c Index: ffcall/callback/trampoline_r/cache-convex.c ================================================================== --- ffcall/callback/trampoline_r/cache-convex.c +++ /dev/null @@ -1,15 +0,0 @@ -/* Instruction cache flushing for convex */ - -/* - * Copyright 1995 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -void __TR_clear_cache (void) -{ - asm volatile ("pich"); -} DELETED ffcall/callback/trampoline_r/cache-convex.s Index: ffcall/callback/trampoline_r/cache-convex.s ================================================================== --- ffcall/callback/trampoline_r/cache-convex.s +++ /dev/null @@ -1,16 +0,0 @@ -;NO_APP -.fpmode native -gcc2_compiled.: -___gnu_compiled_c: -.text -.text -.align 2 -.globl ___TR_clear_cache - ds.b "g263" - ds.b "+00\0" -___TR_clear_cache: -;APP - pich -;NO_APP - rtn - ds.h 0 DELETED ffcall/callback/trampoline_r/cache-hppa.c Index: ffcall/callback/trampoline_r/cache-hppa.c ================================================================== --- ffcall/callback/trampoline_r/cache-hppa.c +++ /dev/null @@ -1,44 +0,0 @@ -/* Instruction cache flushing for hppa */ - -/* - * Copyright 1995-1997 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -/* - * This assumes that the range [first_addr..last_addr] lies in at most two - * cache lines. - */ -void __TR_clear_cache (char* first_addr, char* last_addr) -{ - register int tmp1; - register int tmp2; - /* Flush the relevant data cache lines. (Yes, this is needed. I tried it.) */ - asm volatile ("fdc 0(0,%0)" - "\n\t" "fdc 0(0,%1)" - "\n\t" "sync" - : - : "r" (first_addr), "r" (last_addr) - ); - /* Flush the relevant instruction cache lines. */ - asm volatile ("mfsp %%sr0,%1" - "\n\t" "ldsid (0,%4),%0" - "\n\t" "mtsp %0,%%sr0" - "\n\t" "fic 0(%%sr0,%2)" - "\n\t" "fic 0(%%sr0,%3)" - "\n\t" "sync" - "\n\t" "mtsp %1,%%sr0" - "\n\t" "nop" - "\n\t" "nop" - "\n\t" "nop" - "\n\t" "nop" - "\n\t" "nop" - "\n\t" "nop" - : "=r" (tmp1), "=r" (tmp2) - : "r" (first_addr), "r" (last_addr), "r" (first_addr) - ); -} DELETED ffcall/callback/trampoline_r/cache-hppa.s Index: ffcall/callback/trampoline_r/cache-hppa.s ================================================================== --- ffcall/callback/trampoline_r/cache-hppa.s +++ /dev/null @@ -1,31 +0,0 @@ - .code - .IMPORT $global$,DATA - .IMPORT $$dyncall,MILLICODE -; gcc_compiled.: - .code - - .align 4 - .EXPORT __TR_clear_cache,ENTRY,PRIV_LEV=3,ARGW0=GR,ARGW1=GR - .label __TR_clear_cache - .PROC - .CALLINFO FRAME=0,NO_CALLS - .ENTRY - fdc 0(0,%r26) - fdc 0(0,%r25) - sync - mfsp %sr0,%r19 - ldsid (0,%r26),%r20 - mtsp %r20,%sr0 - fic 0(%sr0,%r26) - fic 0(%sr0,%r25) - sync - mtsp %r19,%sr0 - nop - nop - nop - nop - nop - nop - bv,n 0(%r2) - .EXIT - .PROCEND DELETED ffcall/callback/trampoline_r/cache-rs6000-macos.s Index: ffcall/callback/trampoline_r/cache-rs6000-macos.s ================================================================== --- ffcall/callback/trampoline_r/cache-rs6000-macos.s +++ /dev/null @@ -1,23 +0,0 @@ -.text - .align 2 - .globl ___TR_clear_cache -___TR_clear_cache: - icbi 0,r3; dcbf 0,r3 - addi r0,r3,4 - icbi 0,r0; dcbf 0,r0 - addi r9,r3,8 - icbi 0,r9; dcbf 0,r9 - addi r0,r3,12 - icbi 0,r0; dcbf 0,r0 - addi r9,r3,16 - icbi 0,r9; dcbf 0,r9 - addi r0,r3,20 - icbi 0,r0; dcbf 0,r0 - addi r9,r3,24 - icbi 0,r9; dcbf 0,r9 - addi r0,r3,28 - icbi 0,r0; dcbf 0,r0 - addi r3,r3,32 - icbi 0,r3; dcbf 0,r3 - sync; isync - blr DELETED ffcall/callback/trampoline_r/cache-rs6000-sysv4.s Index: ffcall/callback/trampoline_r/cache-rs6000-sysv4.s ================================================================== --- ffcall/callback/trampoline_r/cache-rs6000-sysv4.s +++ /dev/null @@ -1,35 +0,0 @@ - .file "cache-rs6000.c" -gcc2_compiled.: - .section ".text" - .align 2 - .globl __TR_clear_cache - .type __TR_clear_cache,@function -__TR_clear_cache: - .extern __mulh - .extern __mull - .extern __divss - .extern __divus - .extern __quoss - .extern __quous - icbi 0,3; dcbf 0,3 - addi 0,3,4 - icbi 0,0; dcbf 0,0 - addi 9,3,8 - icbi 0,9; dcbf 0,9 - addi 0,3,12 - icbi 0,0; dcbf 0,0 - addi 9,3,16 - icbi 0,9; dcbf 0,9 - addi 0,3,20 - icbi 0,0; dcbf 0,0 - addi 9,3,24 - icbi 0,9; dcbf 0,9 - addi 0,3,28 - icbi 0,0; dcbf 0,0 - addi 3,3,32 - icbi 0,3; dcbf 0,3 - sync; isync - blr -.Lfe1: - .size __TR_clear_cache,.Lfe1-__TR_clear_cache - .ident "GCC: (GNU) 2.95.2 19991024 (release)" DELETED ffcall/callback/trampoline_r/cache-rs6000.c Index: ffcall/callback/trampoline_r/cache-rs6000.c ================================================================== --- ffcall/callback/trampoline_r/cache-rs6000.c +++ /dev/null @@ -1,25 +0,0 @@ -/* Instruction cache flushing for rs6000, not on AIX */ - -/* - * Copyright 1997-1999 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -void __TR_clear_cache (char* first_addr) -{ - /* Taken from egcs-1.1.2/gcc/config/rs6000/tramp.asm. */ - asm volatile ("icbi 0,%0; dcbf 0,%0" : : "r" (first_addr)); - asm volatile ("icbi 0,%0; dcbf 0,%0" : : "r" (first_addr+4)); - asm volatile ("icbi 0,%0; dcbf 0,%0" : : "r" (first_addr+8)); - asm volatile ("icbi 0,%0; dcbf 0,%0" : : "r" (first_addr+12)); - asm volatile ("icbi 0,%0; dcbf 0,%0" : : "r" (first_addr+16)); - asm volatile ("icbi 0,%0; dcbf 0,%0" : : "r" (first_addr+20)); - asm volatile ("icbi 0,%0; dcbf 0,%0" : : "r" (first_addr+24)); - asm volatile ("icbi 0,%0; dcbf 0,%0" : : "r" (first_addr+28)); - asm volatile ("icbi 0,%0; dcbf 0,%0" : : "r" (first_addr+32)); - asm volatile ("sync; isync"); -} DELETED ffcall/callback/trampoline_r/cache-sparc.c Index: ffcall/callback/trampoline_r/cache-sparc.c ================================================================== --- ffcall/callback/trampoline_r/cache-sparc.c +++ /dev/null @@ -1,21 +0,0 @@ -/* Instruction cache flushing for sparc */ - -/* - * Copyright 1996-1999 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -/* - * This assumes that the range [first_addr..last_addr] lies in at most two - * cache lines. - */ -void __TR_clear_cache_2 (char* first_addr, char* last_addr) -{ - asm volatile ("iflush %0+0;" /* the +0 is needed by gas, says gforth-0.3.0 */ - "iflush %0+8" - : : "r" (first_addr)); -} DELETED ffcall/callback/trampoline_r/cache.c Index: ffcall/callback/trampoline_r/cache.c ================================================================== --- ffcall/callback/trampoline_r/cache.c +++ /dev/null @@ -1,162 +0,0 @@ -/* This file is derived from gcc-2.6.3/libgcc2.c, section L_clear_cache */ - -/* Copyright (C) 1989, 1992, 1993, 1994 Free Software Foundation, Inc. - -This file is part of GNU CC. - -GNU CC is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GNU CC is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GNU CC; see the file COPYING. If not, write to -the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ - - -/* Clear part of an instruction cache. */ - -/* Our emphasis here is _not_ to clear as few cache lines as possible - * or with as few machine instructions as possible, but to do it _right_. - */ - - - -/* This code is apparently untested!! */ - -#ifdef __m68k__ -#ifdef NeXT -#define CLEAR_INSN_CACHE(BEG, END) \ - asm volatile ("trap #2") -#endif -#endif - -/* This is from Andreas Stolcke . */ -#if defined(__mips__) || defined(__mips64__) -#ifdef ultrix -#include -#else -#include -#endif -#define CLEAR_INSN_CACHE(BEG, END) \ - cacheflush (BEG, END - BEG, BCACHE) -#endif - -#ifdef __convex__ -#define CLEAR_INSN_CACHE(BEG, END) \ - asm ("pich") -#endif - -void -__TR_clear_cache (beg, end) - char *beg, *end; -{ -#ifdef CLEAR_INSN_CACHE - CLEAR_INSN_CACHE (beg, end); -#else -#ifdef INSN_CACHE_SIZE /* This is actually dead code!! */ -#define INSN_CACHE_PLANE_SIZE (INSN_CACHE_SIZE / INSN_CACHE_DEPTH) - static char array[INSN_CACHE_SIZE + INSN_CACHE_PLANE_SIZE + INSN_CACHE_LINE_WIDTH]; - static int initialized = 0; - int offset; - void *start_addr; - void *end_addr; - typedef (*function_ptr) (); - -#if (INSN_CACHE_SIZE / INSN_CACHE_LINE_WIDTH) < 16 - /* It's cheaper to clear the whole cache. - Put in a series of jump instructions so that calling the beginning - of the cache will clear the whole thing. */ - - if (! initialized) - { - int ptr = (((int) array + INSN_CACHE_LINE_WIDTH - 1) - & -INSN_CACHE_LINE_WIDTH); - int end_ptr = ptr + INSN_CACHE_SIZE; - - while (ptr < end_ptr) - { - *(INSTRUCTION_TYPE *)ptr - = JUMP_AHEAD_INSTRUCTION + INSN_CACHE_LINE_WIDTH; - ptr += INSN_CACHE_LINE_WIDTH; - } - *(INSTRUCTION_TYPE *)(ptr - INSN_CACHE_LINE_WIDTH) = RETURN_INSTRUCTION; - - initialized = 1; - } - - /* Call the beginning of the sequence. */ - (((function_ptr) (((int) array + INSN_CACHE_LINE_WIDTH - 1) - & -INSN_CACHE_LINE_WIDTH)) - ()); - -#else /* Cache is large. */ - - if (! initialized) - { - int ptr = (((int) array + INSN_CACHE_LINE_WIDTH - 1) - & -INSN_CACHE_LINE_WIDTH); - - while (ptr < (int) array + sizeof array) - { - *(INSTRUCTION_TYPE *)ptr = RETURN_INSTRUCTION; - ptr += INSN_CACHE_LINE_WIDTH; - } - - initialized = 1; - } - - /* Find the location in array that occupies the same cache line as BEG. */ - - offset = ((int) beg & -INSN_CACHE_LINE_WIDTH) & (INSN_CACHE_PLANE_SIZE - 1); - start_addr = (((int) (array + INSN_CACHE_PLANE_SIZE - 1) - & -INSN_CACHE_PLANE_SIZE) - + offset); - - /* Compute the cache alignment of the place to stop clearing. */ -#if 0 /* This is not needed for gcc's purposes. */ - /* If the block to clear is bigger than a cache plane, - we clear the entire cache, and OFFSET is already correct. */ - if (end < beg + INSN_CACHE_PLANE_SIZE) -#endif - offset = (((int) (end + INSN_CACHE_LINE_WIDTH - 1) - & -INSN_CACHE_LINE_WIDTH) - & (INSN_CACHE_PLANE_SIZE - 1)); - -#if INSN_CACHE_DEPTH > 1 - end_addr = (start_addr & -INSN_CACHE_PLANE_SIZE) + offset; - if (end_addr <= start_addr) - end_addr += INSN_CACHE_PLANE_SIZE; - - for (plane = 0; plane < INSN_CACHE_DEPTH; plane++) - { - int addr = start_addr + plane * INSN_CACHE_PLANE_SIZE; - int stop = end_addr + plane * INSN_CACHE_PLANE_SIZE; - - while (addr != stop) - { - /* Call the return instruction at ADDR. */ - ((function_ptr) addr) (); - - addr += INSN_CACHE_LINE_WIDTH; - } - } -#else /* just one plane */ - do - { - /* Call the return instruction at START_ADDR. */ - ((function_ptr) start_addr) (); - - start_addr += INSN_CACHE_LINE_WIDTH; - } - while ((start_addr % INSN_CACHE_SIZE) != offset); -#endif /* just one plane */ -#endif /* Cache is large */ -#endif /* Cache exists */ -#endif /* CLEAR_INSN_CACHE */ -} DELETED ffcall/callback/trampoline_r/config.h.in Index: ffcall/callback/trampoline_r/config.h.in ================================================================== --- ffcall/callback/trampoline_r/config.h.in +++ /dev/null @@ -1,129 +0,0 @@ -/* These definitions are adjusted by `configure' automatically. */ -/* Bruno Haible 16.7.1997 */ - - -/* CPU */ -#ifndef __i386__ -#undef __i386__ -#endif -#ifndef __m68k__ -#undef __m68k__ -#endif -#ifndef __mips__ -#undef __mips__ -#endif -#ifndef __mipsn32__ -#undef __mipsn32__ -#endif -#ifndef __mips64__ -#undef __mips64__ -#endif -#ifndef __sparc__ -#undef __sparc__ -#endif -#ifndef __sparc64__ -#undef __sparc64__ -#endif -#ifndef __alpha__ -#undef __alpha__ -#endif -#ifndef __hppa__ -#undef __hppa__ -#endif -#ifndef __arm__ -#undef __arm__ -#endif -#ifndef __rs6000__ -#undef __rs6000__ -#endif -#ifndef __m88k__ -#undef __m88k__ -#endif -#ifndef __convex__ -#undef __convex__ -#endif -#ifndef __ia64__ -#undef __ia64__ -#endif -#ifndef __x86_64__ -#undef __x86_64__ -#endif - - -/* compiler characteristics */ - -/* CL_VOID */ -/* Define this as `char' if your compiler doesn't understand the void type. */ -#undef void - - -/* header files */ - -/* CL_STDC_HEADERS */ -/* Define if you have the ANSI C header files - , , , , . */ -#undef STDC_HEADERS - -/* Define if you have . */ -#undef HAVE_UNISTD_H - -/* CL_OPENFLAGS */ -/* Define if you need for using open() flags like O_RDWR. */ -#undef OPEN_NEEDS_SYS_FILE_H - - -/* typedefs */ - - -/* functions and declarations */ - -/* CL_GETPAGESIZE */ -/* Define if you have getpagesize(). */ -#undef HAVE_GETPAGESIZE -/* Define as the return type of getpagesize(). */ -#undef RETGETPAGESIZETYPE -/* Define if you have . */ -#undef HAVE_SYS_PARAM_H - -/* CL_MACH_VM */ -/* Define if you have the vm_allocate() and task_self() functions. */ -#undef HAVE_MACH_VM - -/* CL_MMAP */ -/* Define if you have and the mmap() function. */ -#undef HAVE_MMAP -/* Define if defines MAP_ANON and mmaping with MAP_ANON works. */ -#undef HAVE_MMAP_ANON -/* Define if defines MAP_ANONYMOUS and mmaping with MAP_ANONYMOUS - works. */ -#undef HAVE_MMAP_ANONYMOUS -/* Define if mmaping of the special device /dev/zero works. */ -#undef HAVE_MMAP_DEVZERO -/* Define if mmaping of the special device /dev/zero works, - but only on addresses < 2^29. */ -#undef HAVE_MMAP_DEVZERO_SUN4_29 - -/* CL_MPROTECT */ -/* Define if you have the mprotect() function. */ -#undef HAVE_MPROTECT -/* Define if you have a working mprotect() function. */ -#undef HAVE_WORKING_MPROTECT - -/* CL_SHM */ -/* Define if you have and and shared memory works. */ -#undef HAVE_SHM -/* Define if you also have . */ -#undef HAVE_SYS_SYSMACROS_H - -/* CL_CODEEXEC */ -/* Define if code in malloc'ed memory is executable. */ -#undef CODE_EXECUTABLE - -/* AC_CHECK_HEADERS(sys/cachectl.h) */ -/* Define if you have */ -#undef HAVE_SYS_CACHECTL_H - -/* AC_CHECK_HEADERS(sys/m88kbcs.h) */ -/* Define if you have . */ -#undef HAVE_SYS_M88KBCS_H - DELETED ffcall/callback/trampoline_r/config.h.mingw32 Index: ffcall/callback/trampoline_r/config.h.mingw32 ================================================================== --- ffcall/callback/trampoline_r/config.h.mingw32 +++ /dev/null @@ -1,129 +0,0 @@ -/* These definitions are adjusted by `configure' automatically. */ -/* Bruno Haible 16.7.1997 */ - - -/* CPU */ -#ifndef __i386__ -#define __i386__ 1 -#endif -#ifndef __m68k__ -#undef __m68k__ -#endif -#ifndef __mips__ -#undef __mips__ -#endif -#ifndef __mipsn32__ -#undef __mipsn32__ -#endif -#ifndef __mips64__ -#undef __mips64__ -#endif -#ifndef __sparc__ -#undef __sparc__ -#endif -#ifndef __sparc64__ -#undef __sparc64__ -#endif -#ifndef __alpha__ -#undef __alpha__ -#endif -#ifndef __hppa__ -#undef __hppa__ -#endif -#ifndef __arm__ -#undef __arm__ -#endif -#ifndef __rs6000__ -#undef __rs6000__ -#endif -#ifndef __m88k__ -#undef __m88k__ -#endif -#ifndef __convex__ -#undef __convex__ -#endif -#ifndef __ia64__ -#undef __ia64__ -#endif -#ifndef __x86_64__ -#undef __x86_64__ -#endif - - -/* compiler characteristics */ - -/* CL_VOID */ -/* Define this as `char' if your compiler doesn't understand the void type. */ -#undef void - - -/* header files */ - -/* CL_STDC_HEADERS */ -/* Define if you have the ANSI C header files - , , , , . */ -#define STDC_HEADERS 1 - -/* Define if you have . */ -#undef HAVE_UNISTD_H - -/* CL_OPENFLAGS */ -/* Define if you need for using open() flags like O_RDWR. */ -#undef OPEN_NEEDS_SYS_FILE_H - - -/* typedefs */ - - -/* functions and declarations */ - -/* CL_GETPAGESIZE */ -/* Define if you have getpagesize(). */ -#define HAVE_GETPAGESIZE 1 /* fake */ -/* Define as the return type of getpagesize(). */ -#define RETGETPAGESIZETYPE unsigned long -/* Define if you have . */ -#undef HAVE_SYS_PARAM_H - -/* CL_MACH_VM */ -/* Define if you have the vm_allocate() and task_self() functions. */ -#undef HAVE_MACH_VM - -/* CL_MMAP */ -/* Define if you have and the mmap() function. */ -#undef HAVE_MMAP -/* Define if defines MAP_ANON and mmaping with MAP_ANON works. */ -#undef HAVE_MMAP_ANON -/* Define if defines MAP_ANONYMOUS and mmaping with MAP_ANONYMOUS - works. */ -#undef HAVE_MMAP_ANONYMOUS -/* Define if mmaping of the special device /dev/zero works. */ -#undef HAVE_MMAP_DEVZERO -/* Define if mmaping of the special device /dev/zero works, - but only on addresses < 2^29. */ -#undef HAVE_MMAP_DEVZERO_SUN4_29 - -/* CL_MPROTECT */ -/* Define if you have the mprotect() function. */ -#undef HAVE_MPROTECT -/* Define if you have a working mprotect() function. */ -#undef HAVE_WORKING_MPROTECT - -/* CL_SHM */ -/* Define if you have and and shared memory works. */ -#undef HAVE_SHM -/* Define if you also have . */ -#undef HAVE_SYS_SYSMACROS_H - -/* CL_CODEEXEC */ -/* Define if code in malloc'ed memory is executable. */ -#define CODE_EXECUTABLE 1 - -/* AC_CHECK_HEADERS(sys/cachectl.h) */ -/* Define if you have */ -#undef HAVE_SYS_CACHECTL_H - -/* AC_CHECK_HEADERS(sys/m88kbcs.h) */ -/* Define if you have . */ -#undef HAVE_SYS_M88KBCS_H - DELETED ffcall/callback/trampoline_r/config.h.msvc Index: ffcall/callback/trampoline_r/config.h.msvc ================================================================== --- ffcall/callback/trampoline_r/config.h.msvc +++ /dev/null @@ -1,129 +0,0 @@ -/* These definitions are adjusted by `configure' automatically. */ -/* Bruno Haible 16.7.1997 */ - - -/* CPU */ -#ifndef __i386__ -#define __i386__ 1 -#endif -#ifndef __m68k__ -#undef __m68k__ -#endif -#ifndef __mips__ -#undef __mips__ -#endif -#ifndef __mipsn32__ -#undef __mipsn32__ -#endif -#ifndef __mips64__ -#undef __mips64__ -#endif -#ifndef __sparc__ -#undef __sparc__ -#endif -#ifndef __sparc64__ -#undef __sparc64__ -#endif -#ifndef __alpha__ -#undef __alpha__ -#endif -#ifndef __hppa__ -#undef __hppa__ -#endif -#ifndef __arm__ -#undef __arm__ -#endif -#ifndef __rs6000__ -#undef __rs6000__ -#endif -#ifndef __m88k__ -#undef __m88k__ -#endif -#ifndef __convex__ -#undef __convex__ -#endif -#ifndef __ia64__ -#undef __ia64__ -#endif -#ifndef __x86_64__ -#undef __x86_64__ -#endif - - -/* compiler characteristics */ - -/* CL_VOID */ -/* Define this as `char' if your compiler doesn't understand the void type. */ -#undef void - - -/* header files */ - -/* CL_STDC_HEADERS */ -/* Define if you have the ANSI C header files - , , , , . */ -#define STDC_HEADERS 1 - -/* Define if you have . */ -#undef HAVE_UNISTD_H - -/* CL_OPENFLAGS */ -/* Define if you need for using open() flags like O_RDWR. */ -#undef OPEN_NEEDS_SYS_FILE_H - - -/* typedefs */ - - -/* functions and declarations */ - -/* CL_GETPAGESIZE */ -/* Define if you have getpagesize(). */ -#define HAVE_GETPAGESIZE 1 /* fake */ -/* Define as the return type of getpagesize(). */ -#define RETGETPAGESIZETYPE unsigned long -/* Define if you have . */ -#undef HAVE_SYS_PARAM_H - -/* CL_MACH_VM */ -/* Define if you have the vm_allocate() and task_self() functions. */ -#undef HAVE_MACH_VM - -/* CL_MMAP */ -/* Define if you have and the mmap() function. */ -#undef HAVE_MMAP -/* Define if defines MAP_ANON and mmaping with MAP_ANON works. */ -#undef HAVE_MMAP_ANON -/* Define if defines MAP_ANONYMOUS and mmaping with MAP_ANONYMOUS - works. */ -#undef HAVE_MMAP_ANONYMOUS -/* Define if mmaping of the special device /dev/zero works. */ -#undef HAVE_MMAP_DEVZERO -/* Define if mmaping of the special device /dev/zero works, - but only on addresses < 2^29. */ -#undef HAVE_MMAP_DEVZERO_SUN4_29 - -/* CL_MPROTECT */ -/* Define if you have the mprotect() function. */ -#undef HAVE_MPROTECT -/* Define if you have a working mprotect() function. */ -#undef HAVE_WORKING_MPROTECT - -/* CL_SHM */ -/* Define if you have and and shared memory works. */ -#undef HAVE_SHM -/* Define if you also have . */ -#undef HAVE_SYS_SYSMACROS_H - -/* CL_CODEEXEC */ -/* Define if code in malloc'ed memory is executable. */ -#define CODE_EXECUTABLE 1 - -/* AC_CHECK_HEADERS(sys/cachectl.h) */ -/* Define if you have */ -#undef HAVE_SYS_CACHECTL_H - -/* AC_CHECK_HEADERS(sys/m88kbcs.h) */ -/* Define if you have . */ -#undef HAVE_SYS_M88KBCS_H - DELETED ffcall/callback/trampoline_r/configure Index: ffcall/callback/trampoline_r/configure ================================================================== --- ffcall/callback/trampoline_r/configure +++ /dev/null @@ -1,11761 +0,0 @@ -#! /bin/sh -# Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.59. -# -# Copyright (C) 2003 Free Software Foundation, Inc. -# This configure script is free software; the Free Software Foundation -# gives unlimited permission to copy, distribute and modify it. -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## - -# Be Bourne compatible -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' -elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then - set -o posix -fi -DUALCASE=1; export DUALCASE # for MKS sh - -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - - -# Work around bugs in pre-3.0 UWIN ksh. -$as_unset ENV MAIL MAILPATH -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -for as_var in \ - LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ - LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ - LC_TELEPHONE LC_TIME -do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var - else - $as_unset $as_var - fi -done - -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - - -# Name of the executable. -as_me=`$as_basename "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)$' \| \ - . : '\(.\)' 2>/dev/null || -echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } - /^X\/\(\/\/\)$/{ s//\1/; q; } - /^X\/\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - - -# PATH needs CR, and LINENO needs CR and PATH. -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" || { - # Find who we are. Look in the path if we contain no path at all - # relative or not. - case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done - - ;; - esac - # We did not find ourselves, most probably we were run as `sh COMMAND' - # in which case we are not to be found in the path. - if test "x$as_myself" = x; then - as_myself=$0 - fi - if test ! -f "$as_myself"; then - { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2 - { (exit 1); exit 1; }; } - fi - case $CONFIG_SHELL in - '') - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for as_base in sh bash ksh sh5; do - case $as_dir in - /*) - if ("$as_dir/$as_base" -c ' - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then - $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } - $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } - CONFIG_SHELL=$as_dir/$as_base - export CONFIG_SHELL - exec "$CONFIG_SHELL" "$0" ${1+"$@"} - fi;; - esac - done -done -;; - esac - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line before each line; the second 'sed' does the real - # work. The second script uses 'N' to pair each line-number line - # with the numbered line, and appends trailing '-' during - # substitution so that $LINENO is not a special case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) - sed '=' <$as_myself | - sed ' - N - s,$,-, - : loop - s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, - t loop - s,-$,, - s,^['$as_cr_digits']*\n,, - ' >$as_me.lineno && - chmod +x $as_me.lineno || - { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensible to this). - . ./$as_me.lineno - # Exit status is that of the last command. - exit -} - - -case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in - *c*,-n*) ECHO_N= ECHO_C=' -' ECHO_T=' ' ;; - *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; - *) ECHO_N= ECHO_C='\c' ECHO_T= ;; -esac - -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -rm -f conf$$ conf$$.exe conf$$.file -echo >conf$$.file -if ln -s conf$$.file conf$$ 2>/dev/null; then - # We could just check for DJGPP; but this test a) works b) is more generic - # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). - if test -f conf$$.exe; then - # Don't use ln at all; we don't have any links - as_ln_s='cp -p' - else - as_ln_s='ln -s' - fi -elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.file - -if mkdir -p . 2>/dev/null; then - as_mkdir_p=: -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -as_executable_p="test -f" - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -# IFS -# We need space, tab and new line, in precisely that order. -as_nl=' -' -IFS=" $as_nl" - -# CDPATH. -$as_unset CDPATH - - -# Find the correct PATH separator. Usually this is `:', but -# DJGPP uses `;' like DOS. -if test "X${PATH_SEPARATOR+set}" != Xset; then - UNAME=${UNAME-`uname 2>/dev/null`} - case X$UNAME in - *-DOS) lt_cv_sys_path_separator=';' ;; - *) lt_cv_sys_path_separator=':' ;; - esac - PATH_SEPARATOR=$lt_cv_sys_path_separator -fi - - -# Check that we are running under the correct shell. -SHELL=${CONFIG_SHELL-/bin/sh} - -case X$ECHO in -X*--fallback-echo) - # Remove one level of quotation (which was required for Make). - ECHO=`echo "$ECHO" | sed 's,\\\\\$\\$0,'$0','` - ;; -esac - -echo=${ECHO-echo} -if test "X$1" = X--no-reexec; then - # Discard the --no-reexec flag, and continue. - shift -elif test "X$1" = X--fallback-echo; then - # Avoid inline document here, it may be left over - : -elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then - # Yippee, $echo works! - : -else - # Restart under the correct shell. - exec $SHELL "$0" --no-reexec ${1+"$@"} -fi - -if test "X$1" = X--fallback-echo; then - # used as fallback echo - shift - cat </dev/null && - echo_test_string="`eval $cmd`" && - (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null - then - break - fi - done -fi - -if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - : -else - # The Solaris, AIX, and Digital Unix default echo programs unquote - # backslashes. This makes it impossible to quote backslashes using - # echo "$something" | sed 's/\\/\\\\/g' - # - # So, first we look for a working echo in the user's PATH. - - IFS="${IFS= }"; save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for dir in $PATH /usr/ucb; do - if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && - test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - echo="$dir/echo" - break - fi - done - IFS="$save_ifs" - - if test "X$echo" = Xecho; then - # We didn't find a better echo, so look for alternatives. - if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - # This shell has a builtin print -r that does the trick. - echo='print -r' - elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) && - test "X$CONFIG_SHELL" != X/bin/ksh; then - # If we have ksh, try running configure again with it. - ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} - export ORIGINAL_CONFIG_SHELL - CONFIG_SHELL=/bin/ksh - export CONFIG_SHELL - exec $CONFIG_SHELL "$0" --no-reexec ${1+"$@"} - else - # Try using printf. - echo='printf %s\n' - if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - # Cool, printf works - : - elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` && - test "X$echo_testing_string" = 'X\t' && - echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL - export CONFIG_SHELL - SHELL="$CONFIG_SHELL" - export SHELL - echo="$CONFIG_SHELL $0 --fallback-echo" - elif echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` && - test "X$echo_testing_string" = 'X\t' && - echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - echo="$CONFIG_SHELL $0 --fallback-echo" - else - # maybe with a smaller string... - prev=: - - for cmd in 'echo test' 'sed 2q "$0"' 'sed 10q "$0"' 'sed 20q "$0"' 'sed 50q "$0"'; do - if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null - then - break - fi - prev="$cmd" - done - - if test "$prev" != 'sed 50q "$0"'; then - echo_test_string=`eval $prev` - export echo_test_string - exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "$0" ${1+"$@"} - else - # Oops. We lost completely, so just stick with echo. - echo=echo - fi - fi - fi - fi -fi -fi - -# Copy echo and quote the copy suitably for passing to libtool from -# the Makefile, instead of quoting the original, which is used later. -ECHO=$echo -if test "X$ECHO" = "X$CONFIG_SHELL $0 --fallback-echo"; then - ECHO="$CONFIG_SHELL \\\$\$0 --fallback-echo" -fi - - - -# Name of the host. -# hostname on some systems (SVR3.2, Linux) returns a bogus exit status, -# so uname gets run too. -ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` - -exec 6>&1 - -# -# Initializations. -# -ac_default_prefix=/usr/local -ac_config_libobj_dir=. -cross_compiling=no -subdirs= -MFLAGS= -MAKEFLAGS= -SHELL=${CONFIG_SHELL-/bin/sh} - -# Maximum number of lines to put in a shell here document. -# This variable seems obsolete. It should probably be removed, and -# only ac_max_sed_lines should be used. -: ${ac_max_here_lines=38} - -# Identity of this package. -PACKAGE_NAME= -PACKAGE_TARNAME= -PACKAGE_VERSION= -PACKAGE_STRING= -PACKAGE_BUGREPORT= - -ac_unique_file="trampoline_r.h.in" -# Factoring default headers for most tests. -ac_includes_default="\ -#include -#if HAVE_SYS_TYPES_H -# include -#endif -#if HAVE_SYS_STAT_H -# include -#endif -#if STDC_HEADERS -# include -# include -#else -# if HAVE_STDLIB_H -# include -# endif -#endif -#if HAVE_STRING_H -# if !STDC_HEADERS && HAVE_MEMORY_H -# include -# endif -# include -#endif -#if HAVE_STRINGS_H -# include -#endif -#if HAVE_INTTYPES_H -# include -#else -# if HAVE_STDINT_H -# include -# endif -#endif -#if HAVE_UNISTD_H -# include -#endif" - -ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP EGREP CC_GCC GCC_X_NONE AS_UNDERSCORE RANLIB SET_MAKE INSTALL INSTALL_PROGRAM INSTALL_DATA CP LN LN_S build build_cpu build_vendor build_os host host_cpu host_vendor host_os ECHO ac_ct_RANLIB STRIP ac_ct_STRIP LIBTOOL CPU_OBJECTS LIBOBJS LTLIBOBJS' -ac_subst_files='' - -# Initialize some variables set by options. -ac_init_help= -ac_init_version=false -# The variables have the same names as the options, with -# dashes changed to underlines. -cache_file=/dev/null -exec_prefix=NONE -no_create= -no_recursion= -prefix=NONE -program_prefix=NONE -program_suffix=NONE -program_transform_name=s,x,x, -silent= -site= -srcdir= -verbose= -x_includes=NONE -x_libraries=NONE - -# Installation directory options. -# These are left unexpanded so users can "make install exec_prefix=/foo" -# and all the variables that are supposed to be based on exec_prefix -# by default will actually change. -# Use braces instead of parens because sh, perl, etc. also accept them. -bindir='${exec_prefix}/bin' -sbindir='${exec_prefix}/sbin' -libexecdir='${exec_prefix}/libexec' -datadir='${prefix}/share' -sysconfdir='${prefix}/etc' -sharedstatedir='${prefix}/com' -localstatedir='${prefix}/var' -libdir='${exec_prefix}/lib' -includedir='${prefix}/include' -oldincludedir='/usr/include' -infodir='${prefix}/info' -mandir='${prefix}/man' - -ac_prev= -for ac_option -do - # If the previous option needs an argument, assign it. - if test -n "$ac_prev"; then - eval "$ac_prev=\$ac_option" - ac_prev= - continue - fi - - ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'` - - # Accept the important Cygnus configure options, so we can diagnose typos. - - case $ac_option in - - -bindir | --bindir | --bindi | --bind | --bin | --bi) - ac_prev=bindir ;; - -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) - bindir=$ac_optarg ;; - - -build | --build | --buil | --bui | --bu) - ac_prev=build_alias ;; - -build=* | --build=* | --buil=* | --bui=* | --bu=*) - build_alias=$ac_optarg ;; - - -cache-file | --cache-file | --cache-fil | --cache-fi \ - | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) - ac_prev=cache_file ;; - -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ - | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) - cache_file=$ac_optarg ;; - - --config-cache | -C) - cache_file=config.cache ;; - - -datadir | --datadir | --datadi | --datad | --data | --dat | --da) - ac_prev=datadir ;; - -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \ - | --da=*) - datadir=$ac_optarg ;; - - -disable-* | --disable-*) - ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid feature name: $ac_feature" >&2 - { (exit 1); exit 1; }; } - ac_feature=`echo $ac_feature | sed 's/-/_/g'` - eval "enable_$ac_feature=no" ;; - - -enable-* | --enable-*) - ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid feature name: $ac_feature" >&2 - { (exit 1); exit 1; }; } - ac_feature=`echo $ac_feature | sed 's/-/_/g'` - case $ac_option in - *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; - *) ac_optarg=yes ;; - esac - eval "enable_$ac_feature='$ac_optarg'" ;; - - -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ - | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ - | --exec | --exe | --ex) - ac_prev=exec_prefix ;; - -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ - | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ - | --exec=* | --exe=* | --ex=*) - exec_prefix=$ac_optarg ;; - - -gas | --gas | --ga | --g) - # Obsolete; use --with-gas. - with_gas=yes ;; - - -help | --help | --hel | --he | -h) - ac_init_help=long ;; - -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) - ac_init_help=recursive ;; - -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) - ac_init_help=short ;; - - -host | --host | --hos | --ho) - ac_prev=host_alias ;; - -host=* | --host=* | --hos=* | --ho=*) - host_alias=$ac_optarg ;; - - -includedir | --includedir | --includedi | --included | --include \ - | --includ | --inclu | --incl | --inc) - ac_prev=includedir ;; - -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ - | --includ=* | --inclu=* | --incl=* | --inc=*) - includedir=$ac_optarg ;; - - -infodir | --infodir | --infodi | --infod | --info | --inf) - ac_prev=infodir ;; - -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) - infodir=$ac_optarg ;; - - -libdir | --libdir | --libdi | --libd) - ac_prev=libdir ;; - -libdir=* | --libdir=* | --libdi=* | --libd=*) - libdir=$ac_optarg ;; - - -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ - | --libexe | --libex | --libe) - ac_prev=libexecdir ;; - -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ - | --libexe=* | --libex=* | --libe=*) - libexecdir=$ac_optarg ;; - - -localstatedir | --localstatedir | --localstatedi | --localstated \ - | --localstate | --localstat | --localsta | --localst \ - | --locals | --local | --loca | --loc | --lo) - ac_prev=localstatedir ;; - -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ - | --localstate=* | --localstat=* | --localsta=* | --localst=* \ - | --locals=* | --local=* | --loca=* | --loc=* | --lo=*) - localstatedir=$ac_optarg ;; - - -mandir | --mandir | --mandi | --mand | --man | --ma | --m) - ac_prev=mandir ;; - -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) - mandir=$ac_optarg ;; - - -nfp | --nfp | --nf) - # Obsolete; use --without-fp. - with_fp=no ;; - - -no-create | --no-create | --no-creat | --no-crea | --no-cre \ - | --no-cr | --no-c | -n) - no_create=yes ;; - - -no-recursion | --no-recursion | --no-recursio | --no-recursi \ - | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) - no_recursion=yes ;; - - -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ - | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ - | --oldin | --oldi | --old | --ol | --o) - ac_prev=oldincludedir ;; - -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ - | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ - | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) - oldincludedir=$ac_optarg ;; - - -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) - ac_prev=prefix ;; - -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) - prefix=$ac_optarg ;; - - -program-prefix | --program-prefix | --program-prefi | --program-pref \ - | --program-pre | --program-pr | --program-p) - ac_prev=program_prefix ;; - -program-prefix=* | --program-prefix=* | --program-prefi=* \ - | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) - program_prefix=$ac_optarg ;; - - -program-suffix | --program-suffix | --program-suffi | --program-suff \ - | --program-suf | --program-su | --program-s) - ac_prev=program_suffix ;; - -program-suffix=* | --program-suffix=* | --program-suffi=* \ - | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) - program_suffix=$ac_optarg ;; - - -program-transform-name | --program-transform-name \ - | --program-transform-nam | --program-transform-na \ - | --program-transform-n | --program-transform- \ - | --program-transform | --program-transfor \ - | --program-transfo | --program-transf \ - | --program-trans | --program-tran \ - | --progr-tra | --program-tr | --program-t) - ac_prev=program_transform_name ;; - -program-transform-name=* | --program-transform-name=* \ - | --program-transform-nam=* | --program-transform-na=* \ - | --program-transform-n=* | --program-transform-=* \ - | --program-transform=* | --program-transfor=* \ - | --program-transfo=* | --program-transf=* \ - | --program-trans=* | --program-tran=* \ - | --progr-tra=* | --program-tr=* | --program-t=*) - program_transform_name=$ac_optarg ;; - - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - silent=yes ;; - - -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) - ac_prev=sbindir ;; - -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ - | --sbi=* | --sb=*) - sbindir=$ac_optarg ;; - - -sharedstatedir | --sharedstatedir | --sharedstatedi \ - | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ - | --sharedst | --shareds | --shared | --share | --shar \ - | --sha | --sh) - ac_prev=sharedstatedir ;; - -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ - | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ - | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ - | --sha=* | --sh=*) - sharedstatedir=$ac_optarg ;; - - -site | --site | --sit) - ac_prev=site ;; - -site=* | --site=* | --sit=*) - site=$ac_optarg ;; - - -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) - ac_prev=srcdir ;; - -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) - srcdir=$ac_optarg ;; - - -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ - | --syscon | --sysco | --sysc | --sys | --sy) - ac_prev=sysconfdir ;; - -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ - | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) - sysconfdir=$ac_optarg ;; - - -target | --target | --targe | --targ | --tar | --ta | --t) - ac_prev=target_alias ;; - -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) - target_alias=$ac_optarg ;; - - -v | -verbose | --verbose | --verbos | --verbo | --verb) - verbose=yes ;; - - -version | --version | --versio | --versi | --vers | -V) - ac_init_version=: ;; - - -with-* | --with-*) - ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid package name: $ac_package" >&2 - { (exit 1); exit 1; }; } - ac_package=`echo $ac_package| sed 's/-/_/g'` - case $ac_option in - *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; - *) ac_optarg=yes ;; - esac - eval "with_$ac_package='$ac_optarg'" ;; - - -without-* | --without-*) - ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid package name: $ac_package" >&2 - { (exit 1); exit 1; }; } - ac_package=`echo $ac_package | sed 's/-/_/g'` - eval "with_$ac_package=no" ;; - - --x) - # Obsolete; use --with-x. - with_x=yes ;; - - -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ - | --x-incl | --x-inc | --x-in | --x-i) - ac_prev=x_includes ;; - -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ - | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) - x_includes=$ac_optarg ;; - - -x-libraries | --x-libraries | --x-librarie | --x-librari \ - | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) - ac_prev=x_libraries ;; - -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ - | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) - x_libraries=$ac_optarg ;; - - -*) { echo "$as_me: error: unrecognized option: $ac_option -Try \`$0 --help' for more information." >&2 - { (exit 1); exit 1; }; } - ;; - - *=*) - ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` - # Reject names that are not valid shell variable names. - expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid variable name: $ac_envvar" >&2 - { (exit 1); exit 1; }; } - ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` - eval "$ac_envvar='$ac_optarg'" - export $ac_envvar ;; - - *) - # FIXME: should be removed in autoconf 3.0. - echo "$as_me: WARNING: you should use --build, --host, --target" >&2 - expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && - echo "$as_me: WARNING: invalid host type: $ac_option" >&2 - : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option} - ;; - - esac -done - -if test -n "$ac_prev"; then - ac_option=--`echo $ac_prev | sed 's/_/-/g'` - { echo "$as_me: error: missing argument to $ac_option" >&2 - { (exit 1); exit 1; }; } -fi - -# Be sure to have absolute paths. -for ac_var in exec_prefix prefix -do - eval ac_val=$`echo $ac_var` - case $ac_val in - [\\/$]* | ?:[\\/]* | NONE | '' ) ;; - *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 - { (exit 1); exit 1; }; };; - esac -done - -# Be sure to have absolute paths. -for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \ - localstatedir libdir includedir oldincludedir infodir mandir -do - eval ac_val=$`echo $ac_var` - case $ac_val in - [\\/$]* | ?:[\\/]* ) ;; - *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 - { (exit 1); exit 1; }; };; - esac -done - -# There might be people who depend on the old broken behavior: `$host' -# used to hold the argument of --host etc. -# FIXME: To remove some day. -build=$build_alias -host=$host_alias -target=$target_alias - -# FIXME: To remove some day. -if test "x$host_alias" != x; then - if test "x$build_alias" = x; then - cross_compiling=maybe - echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host. - If a cross compiler is detected then cross compile mode will be used." >&2 - elif test "x$build_alias" != "x$host_alias"; then - cross_compiling=yes - fi -fi - -ac_tool_prefix= -test -n "$host_alias" && ac_tool_prefix=$host_alias- - -test "$silent" = yes && exec 6>/dev/null - - -# Find the source files, if location was not specified. -if test -z "$srcdir"; then - ac_srcdir_defaulted=yes - # Try the directory containing this script, then its parent. - ac_confdir=`(dirname "$0") 2>/dev/null || -$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$0" : 'X\(//\)[^/]' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$0" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - srcdir=$ac_confdir - if test ! -r $srcdir/$ac_unique_file; then - srcdir=.. - fi -else - ac_srcdir_defaulted=no -fi -if test ! -r $srcdir/$ac_unique_file; then - if test "$ac_srcdir_defaulted" = yes; then - { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2 - { (exit 1); exit 1; }; } - else - { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 - { (exit 1); exit 1; }; } - fi -fi -(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null || - { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2 - { (exit 1); exit 1; }; } -srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'` -ac_env_build_alias_set=${build_alias+set} -ac_env_build_alias_value=$build_alias -ac_cv_env_build_alias_set=${build_alias+set} -ac_cv_env_build_alias_value=$build_alias -ac_env_host_alias_set=${host_alias+set} -ac_env_host_alias_value=$host_alias -ac_cv_env_host_alias_set=${host_alias+set} -ac_cv_env_host_alias_value=$host_alias -ac_env_target_alias_set=${target_alias+set} -ac_env_target_alias_value=$target_alias -ac_cv_env_target_alias_set=${target_alias+set} -ac_cv_env_target_alias_value=$target_alias -ac_env_CC_set=${CC+set} -ac_env_CC_value=$CC -ac_cv_env_CC_set=${CC+set} -ac_cv_env_CC_value=$CC -ac_env_CFLAGS_set=${CFLAGS+set} -ac_env_CFLAGS_value=$CFLAGS -ac_cv_env_CFLAGS_set=${CFLAGS+set} -ac_cv_env_CFLAGS_value=$CFLAGS -ac_env_LDFLAGS_set=${LDFLAGS+set} -ac_env_LDFLAGS_value=$LDFLAGS -ac_cv_env_LDFLAGS_set=${LDFLAGS+set} -ac_cv_env_LDFLAGS_value=$LDFLAGS -ac_env_CPPFLAGS_set=${CPPFLAGS+set} -ac_env_CPPFLAGS_value=$CPPFLAGS -ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set} -ac_cv_env_CPPFLAGS_value=$CPPFLAGS -ac_env_CPP_set=${CPP+set} -ac_env_CPP_value=$CPP -ac_cv_env_CPP_set=${CPP+set} -ac_cv_env_CPP_value=$CPP - -# -# Report the --help message. -# -if test "$ac_init_help" = "long"; then - # Omit some internal or obsolete options to make the list less imposing. - # This message is too long to be a string in the A/UX 3.1 sh. - cat <<_ACEOF -\`configure' configures this package to adapt to many kinds of systems. - -Usage: $0 [OPTION]... [VAR=VALUE]... - -To assign environment variables (e.g., CC, CFLAGS...), specify them as -VAR=VALUE. See below for descriptions of some of the useful variables. - -Defaults for the options are specified in brackets. - -Configuration: - -h, --help display this help and exit - --help=short display options specific to this package - --help=recursive display the short help of all the included packages - -V, --version display version information and exit - -q, --quiet, --silent do not print \`checking...' messages - --cache-file=FILE cache test results in FILE [disabled] - -C, --config-cache alias for \`--cache-file=config.cache' - -n, --no-create do not create output files - --srcdir=DIR find the sources in DIR [configure dir or \`..'] - -_ACEOF - - cat <<_ACEOF -Installation directories: - --prefix=PREFIX install architecture-independent files in PREFIX - [$ac_default_prefix] - --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX - [PREFIX] - -By default, \`make install' will install all the files in -\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify -an installation prefix other than \`$ac_default_prefix' using \`--prefix', -for instance \`--prefix=\$HOME'. - -For better control, use the options below. - -Fine tuning of the installation directories: - --bindir=DIR user executables [EPREFIX/bin] - --sbindir=DIR system admin executables [EPREFIX/sbin] - --libexecdir=DIR program executables [EPREFIX/libexec] - --datadir=DIR read-only architecture-independent data [PREFIX/share] - --sysconfdir=DIR read-only single-machine data [PREFIX/etc] - --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] - --localstatedir=DIR modifiable single-machine data [PREFIX/var] - --libdir=DIR object code libraries [EPREFIX/lib] - --includedir=DIR C header files [PREFIX/include] - --oldincludedir=DIR C header files for non-gcc [/usr/include] - --infodir=DIR info documentation [PREFIX/info] - --mandir=DIR man documentation [PREFIX/man] -_ACEOF - - cat <<\_ACEOF - -System types: - --build=BUILD configure for building on BUILD [guessed] - --host=HOST cross-compile to build programs to run on HOST [BUILD] -_ACEOF -fi - -if test -n "$ac_init_help"; then - - cat <<\_ACEOF - -Optional Features: - --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) - --enable-FEATURE[=ARG] include FEATURE [ARG=yes] - --enable-shared=PKGS build shared libraries default=no - --enable-static=PKGS build static libraries default=yes - --enable-fast-install=PKGS optimize for fast installation default=yes - --disable-libtool-lock avoid locking (might break parallel builds) - -Optional Packages: - --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] - --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) - --with-gnu-ld assume the C compiler uses GNU ld default=no - --with-pic try to use only PIC/non-PIC objects default=use both - -Some influential environment variables: - CC C compiler command - CFLAGS C compiler flags - LDFLAGS linker flags, e.g. -L if you have libraries in a - nonstandard directory - CPPFLAGS C/C++ preprocessor flags, e.g. -I if you have - headers in a nonstandard directory - CPP C preprocessor - -Use these variables to override the choices made by `configure' or to help -it to find libraries and programs with nonstandard names/locations. - -_ACEOF -fi - -if test "$ac_init_help" = "recursive"; then - # If there are subdirs, report their specific --help. - ac_popdir=`pwd` - for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue - test -d $ac_dir || continue - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac - - cd $ac_dir - # Check for guested configure; otherwise get Cygnus style configure. - if test -f $ac_srcdir/configure.gnu; then - echo - $SHELL $ac_srcdir/configure.gnu --help=recursive - elif test -f $ac_srcdir/configure; then - echo - $SHELL $ac_srcdir/configure --help=recursive - elif test -f $ac_srcdir/configure.ac || - test -f $ac_srcdir/configure.in; then - echo - $ac_configure --help - else - echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 - fi - cd $ac_popdir - done -fi - -test -n "$ac_init_help" && exit 0 -if $ac_init_version; then - cat <<\_ACEOF - -Copyright (C) 2003 Free Software Foundation, Inc. -This configure script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it. -_ACEOF - exit 0 -fi -exec 5>config.log -cat >&5 <<_ACEOF -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. - -It was created by $as_me, which was -generated by GNU Autoconf 2.59. Invocation command line was - - $ $0 $@ - -_ACEOF -{ -cat <<_ASUNAME -## --------- ## -## Platform. ## -## --------- ## - -hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` -uname -m = `(uname -m) 2>/dev/null || echo unknown` -uname -r = `(uname -r) 2>/dev/null || echo unknown` -uname -s = `(uname -s) 2>/dev/null || echo unknown` -uname -v = `(uname -v) 2>/dev/null || echo unknown` - -/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` -/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` - -/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` -/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` -/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` -hostinfo = `(hostinfo) 2>/dev/null || echo unknown` -/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` -/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` -/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` - -_ASUNAME - -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - echo "PATH: $as_dir" -done - -} >&5 - -cat >&5 <<_ACEOF - - -## ----------- ## -## Core tests. ## -## ----------- ## - -_ACEOF - - -# Keep a trace of the command line. -# Strip out --no-create and --no-recursion so they do not pile up. -# Strip out --silent because we don't want to record it for future runs. -# Also quote any args containing shell meta-characters. -# Make two passes to allow for proper duplicate-argument suppression. -ac_configure_args= -ac_configure_args0= -ac_configure_args1= -ac_sep= -ac_must_keep_next=false -for ac_pass in 1 2 -do - for ac_arg - do - case $ac_arg in - -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - continue ;; - *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) - ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - case $ac_pass in - 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;; - 2) - ac_configure_args1="$ac_configure_args1 '$ac_arg'" - if test $ac_must_keep_next = true; then - ac_must_keep_next=false # Got value, back to normal. - else - case $ac_arg in - *=* | --config-cache | -C | -disable-* | --disable-* \ - | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ - | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ - | -with-* | --with-* | -without-* | --without-* | --x) - case "$ac_configure_args0 " in - "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; - esac - ;; - -* ) ac_must_keep_next=true ;; - esac - fi - ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'" - # Get rid of the leading space. - ac_sep=" " - ;; - esac - done -done -$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; } -$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; } - -# When interrupted or exit'd, cleanup temporary files, and complete -# config.log. We remove comments because anyway the quotes in there -# would cause problems or look ugly. -# WARNING: Be sure not to use single quotes in there, as some shells, -# such as our DU 5.0 friend, will then `close' the trap. -trap 'exit_status=$? - # Save into config.log some information that might help in debugging. - { - echo - - cat <<\_ASBOX -## ---------------- ## -## Cache variables. ## -## ---------------- ## -_ASBOX - echo - # The following way of writing the cache mishandles newlines in values, -{ - (set) 2>&1 | - case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in - *ac_space=\ *) - sed -n \ - "s/'"'"'/'"'"'\\\\'"'"''"'"'/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p" - ;; - *) - sed -n \ - "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" - ;; - esac; -} - echo - - cat <<\_ASBOX -## ----------------- ## -## Output variables. ## -## ----------------- ## -_ASBOX - echo - for ac_var in $ac_subst_vars - do - eval ac_val=$`echo $ac_var` - echo "$ac_var='"'"'$ac_val'"'"'" - done | sort - echo - - if test -n "$ac_subst_files"; then - cat <<\_ASBOX -## ------------- ## -## Output files. ## -## ------------- ## -_ASBOX - echo - for ac_var in $ac_subst_files - do - eval ac_val=$`echo $ac_var` - echo "$ac_var='"'"'$ac_val'"'"'" - done | sort - echo - fi - - if test -s confdefs.h; then - cat <<\_ASBOX -## ----------- ## -## confdefs.h. ## -## ----------- ## -_ASBOX - echo - sed "/^$/d" confdefs.h | sort - echo - fi - test "$ac_signal" != 0 && - echo "$as_me: caught signal $ac_signal" - echo "$as_me: exit $exit_status" - } >&5 - rm -f core *.core && - rm -rf conftest* confdefs* conf$$* $ac_clean_files && - exit $exit_status - ' 0 -for ac_signal in 1 2 13 15; do - trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal -done -ac_signal=0 - -# confdefs.h avoids OS command line length limits that DEFS can exceed. -rm -rf conftest* confdefs.h -# AIX cpp loses on an empty file, so make sure it contains at least a newline. -echo >confdefs.h - -# Predefined preprocessor variables. - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_NAME "$PACKAGE_NAME" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_TARNAME "$PACKAGE_TARNAME" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_VERSION "$PACKAGE_VERSION" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_STRING "$PACKAGE_STRING" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" -_ACEOF - - -# Let the site file select an alternate cache file if it wants to. -# Prefer explicitly selected file to automatically selected ones. -if test -z "$CONFIG_SITE"; then - if test "x$prefix" != xNONE; then - CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" - else - CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" - fi -fi -for ac_site_file in $CONFIG_SITE; do - if test -r "$ac_site_file"; then - { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5 -echo "$as_me: loading site script $ac_site_file" >&6;} - sed 's/^/| /' "$ac_site_file" >&5 - . "$ac_site_file" - fi -done - -if test -r "$cache_file"; then - # Some versions of bash will fail to source /dev/null (special - # files actually), so we avoid doing that. - if test -f "$cache_file"; then - { echo "$as_me:$LINENO: loading cache $cache_file" >&5 -echo "$as_me: loading cache $cache_file" >&6;} - case $cache_file in - [\\/]* | ?:[\\/]* ) . $cache_file;; - *) . ./$cache_file;; - esac - fi -else - { echo "$as_me:$LINENO: creating cache $cache_file" >&5 -echo "$as_me: creating cache $cache_file" >&6;} - >$cache_file -fi - -# Check that the precious variables saved in the cache have kept the same -# value. -ac_cache_corrupted=false -for ac_var in `(set) 2>&1 | - sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do - eval ac_old_set=\$ac_cv_env_${ac_var}_set - eval ac_new_set=\$ac_env_${ac_var}_set - eval ac_old_val="\$ac_cv_env_${ac_var}_value" - eval ac_new_val="\$ac_env_${ac_var}_value" - case $ac_old_set,$ac_new_set in - set,) - { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 -echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,set) - { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5 -echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,);; - *) - if test "x$ac_old_val" != "x$ac_new_val"; then - { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 -echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} - { echo "$as_me:$LINENO: former value: $ac_old_val" >&5 -echo "$as_me: former value: $ac_old_val" >&2;} - { echo "$as_me:$LINENO: current value: $ac_new_val" >&5 -echo "$as_me: current value: $ac_new_val" >&2;} - ac_cache_corrupted=: - fi;; - esac - # Pass precious variables to config.status. - if test "$ac_new_set" = set; then - case $ac_new_val in - *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) - ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; - *) ac_arg=$ac_var=$ac_new_val ;; - esac - case " $ac_configure_args " in - *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. - *) ac_configure_args="$ac_configure_args '$ac_arg'" ;; - esac - fi -done -if $ac_cache_corrupted; then - { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5 -echo "$as_me: error: changes in the environment can compromise the build" >&2;} - { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 -echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;} - { (exit 1); exit 1; }; } -fi - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - - - - - - - - - - - - - - - - - - - ac_config_headers="$ac_config_headers config.h" - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. -set dummy ${ac_tool_prefix}gcc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}gcc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$ac_cv_prog_CC"; then - ac_ct_CC=$CC - # Extract the first word of "gcc", so it can be a program name with args. -set dummy gcc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="gcc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - CC=$ac_ct_CC -else - CC="$ac_cv_prog_CC" -fi - -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. -set dummy ${ac_tool_prefix}cc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$ac_cv_prog_CC"; then - ac_ct_CC=$CC - # Extract the first word of "cc", so it can be a program name with args. -set dummy cc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - CC=$ac_ct_CC -else - CC="$ac_cv_prog_CC" -fi - -fi -if test -z "$CC"; then - # Extract the first word of "cc", so it can be a program name with args. -set dummy cc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else - ac_prog_rejected=no -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then - ac_prog_rejected=yes - continue - fi - ac_cv_prog_CC="cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -if test $ac_prog_rejected = yes; then - # We found a bogon in the path, so make sure we never use it. - set dummy $ac_cv_prog_CC - shift - if test $# != 0; then - # We chose a different compiler from the bogus one. - # However, it has the same basename, so the bogon will be chosen - # first if we set CC to just the basename; use the full file name. - shift - ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" - fi -fi -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - for ac_prog in cl - do - # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="$ac_tool_prefix$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - test -n "$CC" && break - done -fi -if test -z "$CC"; then - ac_ct_CC=$CC - for ac_prog in cl -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - test -n "$ac_ct_CC" && break -done - - CC=$ac_ct_CC -fi - -fi - - -test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH -See \`config.log' for more details." >&5 -echo "$as_me: error: no acceptable C compiler found in \$PATH -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } - -# Provide some information about the compiler. -echo "$as_me:$LINENO:" \ - "checking for C compiler version" >&5 -ac_compiler=`set X $ac_compile; echo $2` -{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version &5\"") >&5 - (eval $ac_compiler --version &5) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v &5\"") >&5 - (eval $ac_compiler -v &5) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V &5\"") >&5 - (eval $ac_compiler -V &5) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files a.out a.exe b.out" -# Try to create an executable without -o first, disregard a.out. -# It will help us diagnose broken compilers, and finding out an intuition -# of exeext. -echo "$as_me:$LINENO: checking for C compiler default output file name" >&5 -echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6 -ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` -if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5 - (eval $ac_link_default) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - # Find the output, starting from the most likely. This scheme is -# not robust to junk in `.', hence go to wildcards (a.*) only as a last -# resort. - -# Be careful to initialize this variable, since it used to be cached. -# Otherwise an old cache value of `no' led to `EXEEXT = no' in a Makefile. -ac_cv_exeext= -# b.out is created by i960 compilers. -for ac_file in a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out -do - test -f "$ac_file" || continue - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) - ;; - conftest.$ac_ext ) - # This is the source file. - ;; - [ab].out ) - # We found the default executable, but exeext='' is most - # certainly right. - break;; - *.* ) - ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - # FIXME: I believe we export ac_cv_exeext for Libtool, - # but it would be cool to find out if it's true. Does anybody - # maintain Libtool? --akim. - export ac_cv_exeext - break;; - * ) - break;; - esac -done -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -{ { echo "$as_me:$LINENO: error: C compiler cannot create executables -See \`config.log' for more details." >&5 -echo "$as_me: error: C compiler cannot create executables -See \`config.log' for more details." >&2;} - { (exit 77); exit 77; }; } -fi - -ac_exeext=$ac_cv_exeext -echo "$as_me:$LINENO: result: $ac_file" >&5 -echo "${ECHO_T}$ac_file" >&6 - -# Check the compiler produces executables we can run. If not, either -# the compiler is broken, or we cross compile. -echo "$as_me:$LINENO: checking whether the C compiler works" >&5 -echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6 -# FIXME: These cross compiler hacks should be removed for Autoconf 3.0 -# If not cross compiling, check that we can run a simple program. -if test "$cross_compiling" != yes; then - if { ac_try='./$ac_file' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cross_compiling=no - else - if test "$cross_compiling" = maybe; then - cross_compiling=yes - else - { { echo "$as_me:$LINENO: error: cannot run C compiled programs. -If you meant to cross compile, use \`--host'. -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot run C compiled programs. -If you meant to cross compile, use \`--host'. -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } - fi - fi -fi -echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 - -rm -f a.out a.exe conftest$ac_cv_exeext b.out -ac_clean_files=$ac_clean_files_save -# Check the compiler produces executables we can run. If not, either -# the compiler is broken, or we cross compile. -echo "$as_me:$LINENO: checking whether we are cross compiling" >&5 -echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6 -echo "$as_me:$LINENO: result: $cross_compiling" >&5 -echo "${ECHO_T}$cross_compiling" >&6 - -echo "$as_me:$LINENO: checking for suffix of executables" >&5 -echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6 -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - # If both `conftest.exe' and `conftest' are `present' (well, observable) -# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will -# work properly (i.e., refer to `conftest.exe'), while it won't with -# `rm'. -for ac_file in conftest.exe conftest conftest.*; do - test -f "$ac_file" || continue - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) ;; - *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - export ac_cv_exeext - break;; - * ) break;; - esac -done -else - { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } -fi - -rm -f conftest$ac_cv_exeext -echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5 -echo "${ECHO_T}$ac_cv_exeext" >&6 - -rm -f conftest.$ac_ext -EXEEXT=$ac_cv_exeext -ac_exeext=$EXEEXT -echo "$as_me:$LINENO: checking for suffix of object files" >&5 -echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6 -if test "${ac_cv_objext+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.o conftest.obj -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg ) ;; - *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` - break;; - esac -done -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot compute suffix of object files: cannot compile -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } -fi - -rm -f conftest.$ac_cv_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 -echo "${ECHO_T}$ac_cv_objext" >&6 -OBJEXT=$ac_cv_objext -ac_objext=$OBJEXT -echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 -echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6 -if test "${ac_cv_c_compiler_gnu+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ -#ifndef __GNUC__ - choke me -#endif - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_compiler_gnu=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_compiler_gnu=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -ac_cv_c_compiler_gnu=$ac_compiler_gnu - -fi -echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5 -echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6 -GCC=`test $ac_compiler_gnu = yes && echo yes` -ac_test_CFLAGS=${CFLAGS+set} -ac_save_CFLAGS=$CFLAGS -CFLAGS="-g" -echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 -echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6 -if test "${ac_cv_prog_cc_g+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_prog_cc_g=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_prog_cc_g=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 -echo "${ECHO_T}$ac_cv_prog_cc_g" >&6 -if test "$ac_test_CFLAGS" = set; then - CFLAGS=$ac_save_CFLAGS -elif test $ac_cv_prog_cc_g = yes; then - if test "$GCC" = yes; then - CFLAGS="-g -O2" - else - CFLAGS="-g" - fi -else - if test "$GCC" = yes; then - CFLAGS="-O2" - else - CFLAGS= - fi -fi -echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5 -echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6 -if test "${ac_cv_prog_cc_stdc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_cv_prog_cc_stdc=no -ac_save_CC=$CC -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include -#include -#include -/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ -struct buf { int x; }; -FILE * (*rcsopen) (struct buf *, struct stat *, int); -static char *e (p, i) - char **p; - int i; -{ - return p[i]; -} -static char *f (char * (*g) (char **, int), char **p, ...) -{ - char *s; - va_list v; - va_start (v,p); - s = g (p, va_arg (v,int)); - va_end (v); - return s; -} - -/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has - function prototypes and stuff, but not '\xHH' hex character constants. - These don't provoke an error unfortunately, instead are silently treated - as 'x'. The following induces an error, until -std1 is added to get - proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an - array size at least. It's necessary to write '\x00'==0 to get something - that's true only with -std1. */ -int osf4_cc_array ['\x00' == 0 ? 1 : -1]; - -int test (int i, double x); -struct s1 {int (*f) (int a);}; -struct s2 {int (*f) (double a);}; -int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); -int argc; -char **argv; -int -main () -{ -return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; - ; - return 0; -} -_ACEOF -# Don't try gcc -ansi; that turns off useful extensions and -# breaks some systems' header files. -# AIX -qlanglvl=ansi -# Ultrix and OSF/1 -std1 -# HP-UX 10.20 and later -Ae -# HP-UX older versions -Aa -D_HPUX_SOURCE -# SVR4 -Xc -D__EXTENSIONS__ -for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" -do - CC="$ac_save_CC $ac_arg" - rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_prog_cc_stdc=$ac_arg -break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext -done -rm -f conftest.$ac_ext conftest.$ac_objext -CC=$ac_save_CC - -fi - -case "x$ac_cv_prog_cc_stdc" in - x|xno) - echo "$as_me:$LINENO: result: none needed" >&5 -echo "${ECHO_T}none needed" >&6 ;; - *) - echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5 -echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6 - CC="$CC $ac_cv_prog_cc_stdc" ;; -esac - -# Some people use a C++ compiler to compile C. Since we use `exit', -# in C++ we need to declare it. In case someone uses the same compiler -# for both compiling C and C++ we need to have the C++ compiler decide -# the declaration of exit, since it's the most demanding environment. -cat >conftest.$ac_ext <<_ACEOF -#ifndef __cplusplus - choke me -#endif -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - for ac_declaration in \ - '' \ - 'extern "C" void std::exit (int) throw (); using std::exit;' \ - 'extern "C" void std::exit (int); using std::exit;' \ - 'extern "C" void exit (int) throw ();' \ - 'extern "C" void exit (int);' \ - 'void exit (int);' -do - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_declaration -#include -int -main () -{ -exit (42); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -continue -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_declaration -int -main () -{ -exit (42); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -done -rm -f conftest* -if test -n "$ac_declaration"; then - echo '#ifdef __cplusplus' >>confdefs.h - echo $ac_declaration >>confdefs.h - echo '#endif' >>confdefs.h -fi - -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5 -echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6 -# On Suns, sometimes $CPP names a directory. -if test -n "$CPP" && test -d "$CPP"; then - CPP= -fi -if test -z "$CPP"; then - if test "${ac_cv_prog_CPP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - # Double quotes because CPP needs to be expanded - for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" - do - ac_preproc_ok=false -for ac_c_preproc_warn_flag in '' yes -do - # Use a header file that comes with gcc, so configuring glibc - # with a fresh cross-compiler works. - # Prefer to if __STDC__ is defined, since - # exists even on freestanding compilers. - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#ifdef __STDC__ -# include -#else -# include -#endif - Syntax error -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Broken: fails on valid input. -continue -fi -rm -f conftest.err conftest.$ac_ext - - # OK, works on sane cases. Now check whether non-existent headers - # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - # Broken: success on invalid input. -continue -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Passes both tests. -ac_preproc_ok=: -break -fi -rm -f conftest.err conftest.$ac_ext - -done -# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.err conftest.$ac_ext -if $ac_preproc_ok; then - break -fi - - done - ac_cv_prog_CPP=$CPP - -fi - CPP=$ac_cv_prog_CPP -else - ac_cv_prog_CPP=$CPP -fi -echo "$as_me:$LINENO: result: $CPP" >&5 -echo "${ECHO_T}$CPP" >&6 -ac_preproc_ok=false -for ac_c_preproc_warn_flag in '' yes -do - # Use a header file that comes with gcc, so configuring glibc - # with a fresh cross-compiler works. - # Prefer to if __STDC__ is defined, since - # exists even on freestanding compilers. - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#ifdef __STDC__ -# include -#else -# include -#endif - Syntax error -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Broken: fails on valid input. -continue -fi -rm -f conftest.err conftest.$ac_ext - - # OK, works on sane cases. Now check whether non-existent headers - # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - # Broken: success on invalid input. -continue -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Passes both tests. -ac_preproc_ok=: -break -fi -rm -f conftest.err conftest.$ac_ext - -done -# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.err conftest.$ac_ext -if $ac_preproc_ok; then - : -else - { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details." >&5 -echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } -fi - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - - -echo "$as_me:$LINENO: checking for egrep" >&5 -echo $ECHO_N "checking for egrep... $ECHO_C" >&6 -if test "${ac_cv_prog_egrep+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if echo a | (grep -E '(a|b)') >/dev/null 2>&1 - then ac_cv_prog_egrep='grep -E' - else ac_cv_prog_egrep='egrep' - fi -fi -echo "$as_me:$LINENO: result: $ac_cv_prog_egrep" >&5 -echo "${ECHO_T}$ac_cv_prog_egrep" >&6 - EGREP=$ac_cv_prog_egrep - - -if test $ac_cv_c_compiler_gnu = yes; then - echo "$as_me:$LINENO: checking whether $CC needs -traditional" >&5 -echo $ECHO_N "checking whether $CC needs -traditional... $ECHO_C" >&6 -if test "${ac_cv_prog_gcc_traditional+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_pattern="Autoconf.*'x'" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -Autoconf TIOCGETP -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "$ac_pattern" >/dev/null 2>&1; then - ac_cv_prog_gcc_traditional=yes -else - ac_cv_prog_gcc_traditional=no -fi -rm -f conftest* - - - if test $ac_cv_prog_gcc_traditional = no; then - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -Autoconf TCGETA -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "$ac_pattern" >/dev/null 2>&1; then - ac_cv_prog_gcc_traditional=yes -fi -rm -f conftest* - - fi -fi -echo "$as_me:$LINENO: result: $ac_cv_prog_gcc_traditional" >&5 -echo "${ECHO_T}$ac_cv_prog_gcc_traditional" >&6 - if test $ac_cv_prog_gcc_traditional = yes; then - CC="$CC -traditional" - fi -fi - - -echo "$as_me:$LINENO: checking whether using GNU C" >&5 -echo $ECHO_N "checking whether using GNU C... $ECHO_C" >&6 -if test "${cl_cv_prog_cc_gcc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#ifdef __GNUC__ - yes -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1; then - cl_cv_prog_cc_gcc=yes -else - cl_cv_prog_cc_gcc=no -fi -rm -f conftest* - - -fi -echo "$as_me:$LINENO: result: $cl_cv_prog_cc_gcc" >&5 -echo "${ECHO_T}$cl_cv_prog_cc_gcc" >&6 -if test $cl_cv_prog_cc_gcc = yes; then - CC_GCC=true - GCC_X_NONE='-x none' -else - CC_GCC=false - GCC_X_NONE='' -fi - - - -echo "$as_me:$LINENO: checking for underscore in external names" >&5 -echo $ECHO_N "checking for underscore in external names... $ECHO_C" >&6 -if test "${cl_cv_prog_as_underscore+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat > conftest.c <&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } >/dev/null 2>&1 -if grep _foo conftest.s >/dev/null ; then - cl_cv_prog_as_underscore=yes -else - cl_cv_prog_as_underscore=no -fi -rm -f conftest* - -fi -echo "$as_me:$LINENO: result: $cl_cv_prog_as_underscore" >&5 -echo "${ECHO_T}$cl_cv_prog_as_underscore" >&6 -if test $cl_cv_prog_as_underscore = yes; then - AS_UNDERSCORE=true - -cat >>confdefs.h <<\_ACEOF -#define ASM_UNDERSCORE -_ACEOF - -else - AS_UNDERSCORE=false -fi - -# Extract the first word of "ranlib", so it can be a program name with args. -set dummy ranlib; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_RANLIB+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$RANLIB"; then - ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_RANLIB="ranlib" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - - test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB="true" -fi -fi -RANLIB=$ac_cv_prog_RANLIB -if test -n "$RANLIB"; then - echo "$as_me:$LINENO: result: $RANLIB" >&5 -echo "${ECHO_T}$RANLIB" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5 -echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6 -set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,:./+-,___p_,'` -if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.make <<\_ACEOF -all: - @echo 'ac_maketemp="$(MAKE)"' -_ACEOF -# GNU make sometimes prints "make[1]: Entering...", which would confuse us. -eval `${MAKE-make} -f conftest.make 2>/dev/null | grep temp=` -if test -n "$ac_maketemp"; then - eval ac_cv_prog_make_${ac_make}_set=yes -else - eval ac_cv_prog_make_${ac_make}_set=no -fi -rm -f conftest.make -fi -if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 - SET_MAKE= -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 - SET_MAKE="MAKE=${MAKE-make}" -fi - -# Find a good install program. We prefer a C program (faster), -# so one script is as good as another. But avoid the broken or -# incompatible versions: -# SysV /etc/install, /usr/sbin/install -# SunOS /usr/etc/install -# IRIX /sbin/install -# AIX /bin/install -# AFS /usr/afsws/bin/install, which mis-handles nonexistent args -# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" -# ./install, which can be erroneously created by make from ./install.sh. -echo "$as_me:$LINENO: checking for a BSD compatible install" >&5 -echo $ECHO_N "checking for a BSD compatible install... $ECHO_C" >&6 -if test -z "$INSTALL"; then -if test "${cl_cv_path_install+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" - for ac_dir in $PATH; do - # Account for people who put trailing slashes in PATH elements. - case "$ac_dir/" in - /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;; - *) - # OSF1 and SCO ODT 3.0 have their own names for install. - # Don't use installbsd from OSF since it installs stuff as root - # by default. - for ac_prog in ginstall scoinst install; do - if test -f $ac_dir/$ac_prog; then - if test $ac_prog = install && - grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then - # AIX install. It has an incompatible calling convention. - : - else - cl_cv_path_install="$ac_dir/$ac_prog -c" - break 2 - fi - fi - done - ;; - esac - done - IFS="$ac_save_ifs" - # As a last resort, use the absolute pathname of cp. - if test -z "$cl_cv_path_install"; then - cl_cv_path_install="cp" - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" - for ac_dir in $PATH; do - if test -f $ac_dir/cp; then - cl_cv_path_install="$ac_dir/cp" - break - fi - done - IFS="$ac_save_ifs" - fi - -fi - INSTALL="$cl_cv_path_install" -fi -echo "$as_me:$LINENO: result: $INSTALL" >&5 -echo "${ECHO_T}$INSTALL" >&6 -# Use test -z because SunOS4 sh mishandles braces in ${var-val}. -# It thinks the first close brace ends the variable substitution. -test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='$(INSTALL)' -if test -z "$INSTALL_DATA"; then - case "$INSTALL" in - cp | */cp ) INSTALL_DATA='$(INSTALL)' ;; - * ) INSTALL_DATA='$(INSTALL) -m 644' ;; - esac -fi - -echo "$as_me:$LINENO: checking how to copy files" >&5 -echo $ECHO_N "checking how to copy files... $ECHO_C" >&6 -if test "${cl_cv_prog_cp+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -echo "blabla" > conftest.x -err=`/bin/sh -c "cp -p conftest.x conftest.y 2>&1"` -if test -z "$err"; then - cl_cv_prog_cp='cp -p' -else - cl_cv_prog_cp='cp' -fi -rm -f conftest* - -fi -echo "$as_me:$LINENO: result: $cl_cv_prog_cp" >&5 -echo "${ECHO_T}$cl_cv_prog_cp" >&6 -CP="$cl_cv_prog_cp" - -echo "$as_me:$LINENO: checking how to make hard links" >&5 -echo $ECHO_N "checking how to make hard links... $ECHO_C" >&6 -if test "${cl_cv_prog_LN+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -rm -f conftestdata conftestfile -echo data > conftestfile -if ln conftestfile conftestdata 2>/dev/null; then - cl_cv_prog_LN=ln -else - cl_cv_prog_LN="$cl_cv_prog_cp" -fi -rm -f conftestdata conftestfile - -fi -echo "$as_me:$LINENO: result: $cl_cv_prog_LN" >&5 -echo "${ECHO_T}$cl_cv_prog_LN" >&6 -LN="$cl_cv_prog_LN" - -echo "$as_me:$LINENO: checking whether ln -s works" >&5 -echo $ECHO_N "checking whether ln -s works... $ECHO_C" >&6 -if test "${cl_cv_prog_LN_S+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -rm -f conftestdata -if ln -s X conftestdata 2>/dev/null; then - cl_cv_prog_LN_S="ln -s" -else - cl_cv_prog_LN_S="$cl_cv_prog_LN" -fi -rm -f conftestdata - -fi -if test "$cl_cv_prog_LN_S" = "ln -s"; then - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi -LN_S="$cl_cv_prog_LN_S" - - ac_aux_dir=${srcdir}/../../autoconf -ac_config_guess="$SHELL $ac_aux_dir/config.guess" -ac_config_sub="$SHELL $ac_aux_dir/config.sub" -# Make sure we can run config.sub. -$ac_config_sub sun4 >/dev/null 2>&1 || - { { echo "$as_me:$LINENO: error: cannot run $ac_config_sub" >&5 -echo "$as_me: error: cannot run $ac_config_sub" >&2;} - { (exit 1); exit 1; }; } - -echo "$as_me:$LINENO: checking build system type" >&5 -echo $ECHO_N "checking build system type... $ECHO_C" >&6 -if test "${ac_cv_build+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_cv_build_alias=$build_alias -test -z "$ac_cv_build_alias" && - ac_cv_build_alias=`$ac_config_guess` -test -z "$ac_cv_build_alias" && - { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5 -echo "$as_me: error: cannot guess build type; you must specify one" >&2;} - { (exit 1); exit 1; }; } -ac_cv_build=`$ac_config_sub $ac_cv_build_alias` || - { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_build_alias failed" >&5 -echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed" >&2;} - { (exit 1); exit 1; }; } - -fi -echo "$as_me:$LINENO: result: $ac_cv_build" >&5 -echo "${ECHO_T}$ac_cv_build" >&6 -build=$ac_cv_build -build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` - - -echo "$as_me:$LINENO: checking host system type" >&5 -echo $ECHO_N "checking host system type... $ECHO_C" >&6 -if test "${ac_cv_host+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_cv_host_alias=$host_alias -test -z "$ac_cv_host_alias" && - ac_cv_host_alias=$ac_cv_build_alias -ac_cv_host=`$ac_config_sub $ac_cv_host_alias` || - { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_host_alias failed" >&5 -echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;} - { (exit 1); exit 1; }; } - -fi -echo "$as_me:$LINENO: result: $ac_cv_host" >&5 -echo "${ECHO_T}$ac_cv_host" >&6 -host=$ac_cv_host -host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` - - - - -case "$host_cpu" in - i[4567]86 ) - host_cpu=i386 - ;; - alphaev[4-8] | alphaev56 | alphapca5[67] | alphaev6[78] ) - host_cpu=alpha - ;; - hppa1.0 | hppa1.1 | hppa2.0* | hppa64 ) - host_cpu=hppa - ;; - powerpc ) - host_cpu=rs6000 - ;; - c1 | c2 | c32 | c34 | c38 | c4 ) - host_cpu=convex - ;; - arm* ) - host_cpu=arm - ;; - mips ) - echo "$as_me:$LINENO: checking for 64-bit MIPS" >&5 -echo $ECHO_N "checking for 64-bit MIPS... $ECHO_C" >&6 -if test "${cl_cv_host_mips64+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#if defined(_MIPS_SZLONG) -#if (_MIPS_SZLONG == 64) -/* We should also check for (_MIPS_SZPTR == 64), but gcc keeps this at 32. */ - yes -#endif -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1; then - cl_cv_host_mips64=yes -else - cl_cv_host_mips64=no -fi -rm -f conftest* - - -fi -echo "$as_me:$LINENO: result: $cl_cv_host_mips64" >&5 -echo "${ECHO_T}$cl_cv_host_mips64" >&6 -if test $cl_cv_host_mips64 = yes; then - host_cpu=mips64 -else - echo "$as_me:$LINENO: checking for MIPS with n32 ABI" >&5 -echo $ECHO_N "checking for MIPS with n32 ABI... $ECHO_C" >&6 -if test "${cl_cv_host_mipsn32+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#if __mips >= 3 - yes -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1; then - cl_cv_host_mipsn32=yes -else - cl_cv_host_mipsn32=no -fi -rm -f conftest* - - -fi -echo "$as_me:$LINENO: result: $cl_cv_host_mipsn32" >&5 -echo "${ECHO_T}$cl_cv_host_mipsn32" >&6 -if test $cl_cv_host_mipsn32 = yes; then - host_cpu=mipsn32 -fi -fi - ;; - sparc | sparc64 ) - echo "$as_me:$LINENO: checking for 64-bit SPARC" >&5 -echo $ECHO_N "checking for 64-bit SPARC... $ECHO_C" >&6 -if test "${cl_cv_host_sparc64+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#if defined(__sparcv9) || defined(__arch64__) - yes -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1; then - cl_cv_host_sparc64=yes -else - cl_cv_host_sparc64=no -fi -rm -f conftest* - - -fi -echo "$as_me:$LINENO: result: $cl_cv_host_sparc64" >&5 -echo "${ECHO_T}$cl_cv_host_sparc64" >&6 -if test $cl_cv_host_sparc64 = yes; then - host_cpu=sparc64 -else - host_cpu=sparc -fi - ;; -esac -cat >> confdefs.h </dev/null`} - case X$UNAME in - *-DOS) lt_cv_sys_path_separator=';' ;; - *) lt_cv_sys_path_separator=':' ;; - esac - PATH_SEPARATOR=$lt_cv_sys_path_separator -fi - - -# Check whether --with-gnu-ld or --without-gnu-ld was given. -if test "${with_gnu_ld+set}" = set; then - withval="$with_gnu_ld" - test "$withval" = no || with_gnu_ld=yes -else - with_gnu_ld=no -fi; -ac_prog=ld -if test "$GCC" = yes; then - # Check if gcc -print-prog-name=ld gives a path. - echo "$as_me:$LINENO: checking for ld used by GCC" >&5 -echo $ECHO_N "checking for ld used by GCC... $ECHO_C" >&6 - case $host in - *-*-mingw*) - # gcc leaves a trailing carriage return which upsets mingw - ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; - *) - ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; - esac - case $ac_prog in - # Accept absolute paths. - [\\/]* | [A-Za-z]:[\\/]*) - re_direlt='/[^/][^/]*/\.\./' - # Canonicalize the path of ld - ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` - while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do - ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` - done - test -z "$LD" && LD="$ac_prog" - ;; - "") - # If it fails, then pretend we aren't using GCC. - ac_prog=ld - ;; - *) - # If it is relative, then search for the first ld in PATH. - with_gnu_ld=unknown - ;; - esac -elif test "$with_gnu_ld" = yes; then - echo "$as_me:$LINENO: checking for GNU ld" >&5 -echo $ECHO_N "checking for GNU ld... $ECHO_C" >&6 -else - echo "$as_me:$LINENO: checking for non-GNU ld" >&5 -echo $ECHO_N "checking for non-GNU ld... $ECHO_C" >&6 -fi -if test "${lt_cv_path_LD+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -z "$LD"; then - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH; do - test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then - lt_cv_path_LD="$ac_dir/$ac_prog" - # Check to see if the program is GNU ld. I'd rather use --version, - # but apparently some GNU ld's only accept -v. - # Break only if it was the GNU/non-GNU ld that we prefer. - if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then - test "$with_gnu_ld" != no && break - else - test "$with_gnu_ld" != yes && break - fi - fi - done - IFS="$ac_save_ifs" -else - lt_cv_path_LD="$LD" # Let the user override the test with a path. -fi -fi - -LD="$lt_cv_path_LD" -if test -n "$LD"; then - echo "$as_me:$LINENO: result: $LD" >&5 -echo "${ECHO_T}$LD" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi -test -z "$LD" && { { echo "$as_me:$LINENO: error: no acceptable ld found in \$PATH" >&5 -echo "$as_me: error: no acceptable ld found in \$PATH" >&2;} - { (exit 1); exit 1; }; } -echo "$as_me:$LINENO: checking if the linker ($LD) is GNU ld" >&5 -echo $ECHO_N "checking if the linker ($LD) is GNU ld... $ECHO_C" >&6 -if test "${lt_cv_prog_gnu_ld+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - # I'd rather use --version here, but apparently some GNU ld's only accept -v. -if $LD -v 2>&1 &5; then - lt_cv_prog_gnu_ld=yes -else - lt_cv_prog_gnu_ld=no -fi -fi -echo "$as_me:$LINENO: result: $lt_cv_prog_gnu_ld" >&5 -echo "${ECHO_T}$lt_cv_prog_gnu_ld" >&6 -with_gnu_ld=$lt_cv_prog_gnu_ld - - -echo "$as_me:$LINENO: checking for $LD option to reload object files" >&5 -echo $ECHO_N "checking for $LD option to reload object files... $ECHO_C" >&6 -if test "${lt_cv_ld_reload_flag+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - lt_cv_ld_reload_flag='-r' -fi -echo "$as_me:$LINENO: result: $lt_cv_ld_reload_flag" >&5 -echo "${ECHO_T}$lt_cv_ld_reload_flag" >&6 -reload_flag=$lt_cv_ld_reload_flag -test -n "$reload_flag" && reload_flag=" $reload_flag" - -echo "$as_me:$LINENO: checking for BSD-compatible nm" >&5 -echo $ECHO_N "checking for BSD-compatible nm... $ECHO_C" >&6 -if test "${lt_cv_path_NM+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$NM"; then - # Let the user override the test. - lt_cv_path_NM="$NM" -else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do - test -z "$ac_dir" && ac_dir=. - tmp_nm=$ac_dir/${ac_tool_prefix}nm - if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then - # Check to see if the nm accepts a BSD-compat flag. - # Adding the `sed 1q' prevents false positives on HP-UX, which says: - # nm: unknown option "B" ignored - # Tru64's nm complains that /dev/null is an invalid object file - if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then - lt_cv_path_NM="$tmp_nm -B" - break - elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then - lt_cv_path_NM="$tmp_nm -p" - break - else - lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but - continue # so that we can try to find one that supports BSD flags - fi - fi - done - IFS="$ac_save_ifs" - test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm -fi -fi - -NM="$lt_cv_path_NM" -echo "$as_me:$LINENO: result: $NM" >&5 -echo "${ECHO_T}$NM" >&6 - -echo "$as_me:$LINENO: checking for a sed that does not truncate output" >&5 -echo $ECHO_N "checking for a sed that does not truncate output... $ECHO_C" >&6 -if test "${lt_cv_path_SED+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - # Loop through the user's path and test for sed and gsed. -# Then use that list of sed's as ones to test for truncation. -as_executable_p="test -f" -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in sed gsed; do - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then - _sed_list="$_sed_list $as_dir/$ac_prog$ac_exec_ext" - fi - done - done -done - - # Create a temporary directory, and hook for its removal unless debugging. -$debug || -{ - trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 - trap '{ (exit 1); exit 1; }' 1 2 13 15 -} - -# Create a (secure) tmp directory for tmp files. -: ${TMPDIR=/tmp} -{ - tmp=`(umask 077 && mktemp -d -q "$TMPDIR/sedXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" -} || -{ - tmp=$TMPDIR/sed$$-$RANDOM - (umask 077 && mkdir $tmp) -} || -{ - echo "$me: cannot create a temporary directory in $TMPDIR" >&2 - { (exit 1); exit 1; } -} - _max=0 - _count=0 - # Add /usr/xpg4/bin/sed as it is typically found on Solaris - # along with /bin/sed that truncates output. - for _sed in $_sed_list /usr/xpg4/bin/sed; do - test ! -f ${_sed} && break - cat /dev/null > "$tmp/sed.in" - _count=0 - echo ${ECHO_N-$ac_n} "0123456789${ECHO_C-$ac_c}" >"$tmp/sed.in" - # Check for GNU sed and select it if it is found. - if "${_sed}" --version 2>&1 < /dev/null | egrep '(GNU)' > /dev/null; then - lt_cv_path_SED=${_sed} - break - fi - while true; do - cat "$tmp/sed.in" "$tmp/sed.in" >"$tmp/sed.tmp" - mv "$tmp/sed.tmp" "$tmp/sed.in" - cp "$tmp/sed.in" "$tmp/sed.nl" - echo >>"$tmp/sed.nl" - ${_sed} -e 's/a$//' < "$tmp/sed.nl" >"$tmp/sed.out" || break - cmp -s "$tmp/sed.out" "$tmp/sed.nl" || break - # 40000 chars as input seems more than enough - test $_count -gt 10 && break - _count=`expr $_count + 1` - if test $_count -gt $_max; then - _max=$_count - lt_cv_path_SED=$_sed - fi - done - done - rm -rf "$tmp" - -fi - -if test "X$SED" != "X"; then - lt_cv_path_SED=$SED -else - SED=$lt_cv_path_SED -fi -echo "$as_me:$LINENO: result: $SED" >&5 -echo "${ECHO_T}$SED" >&6 - -echo "$as_me:$LINENO: checking how to recognise dependent libraries" >&5 -echo $ECHO_N "checking how to recognise dependent libraries... $ECHO_C" >&6 -if test "${lt_cv_deplibs_check_method+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - lt_cv_file_magic_cmd='$MAGIC_CMD' -lt_cv_file_magic_test_file= -lt_cv_deplibs_check_method='unknown' -# Need to set the preceding variable on all platforms that support -# interlibrary dependencies. -# 'none' -- dependencies not supported. -# `unknown' -- same as none, but documents that we really don't know. -# 'pass_all' -- all dependencies passed with no checks. -# 'test_compile' -- check by making test program. -# 'file_magic [[regex]]' -- check by looking for files in library path -# which responds to the $file_magic_cmd with a given egrep regex. -# If you have `file' or equivalent on your system and you're not sure -# whether `pass_all' will *always* work, you probably want this one. - -case $host_os in -aix4* | aix5*) - lt_cv_deplibs_check_method=pass_all - ;; - -beos*) - lt_cv_deplibs_check_method=pass_all - ;; - -bsdi4*) - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)' - lt_cv_file_magic_cmd='/usr/bin/file -L' - lt_cv_file_magic_test_file=/shlib/libc.so - ;; - -cygwin* | mingw* | pw32*) - lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' - lt_cv_file_magic_cmd='$OBJDUMP -f' - ;; - -darwin* | rhapsody*) - lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library' - lt_cv_file_magic_cmd='/usr/bin/file -L' - case "$host_os" in - rhapsody* | darwin1.[012]) - lt_cv_file_magic_test_file=`echo /System/Library/Frameworks/System.framework/Versions/*/System | head -1` - ;; - *) # Darwin 1.3 on - lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib' - ;; - esac - ;; - -freebsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - case $host_cpu in - i*86 ) - # Not sure whether the presence of OpenBSD here was a mistake. - # Let's accept both of them until this is cleared up. - lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[3-9]86 (compact )?demand paged shared library' - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` - ;; - esac - else - lt_cv_deplibs_check_method=pass_all - fi - ;; - -gnu*) - lt_cv_deplibs_check_method=pass_all - ;; - -hpux10.20*|hpux11*) - lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library' - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=/usr/lib/libc.sl - ;; - -irix5* | irix6* | nonstopux*) - case $host_os in - irix5* | nonstopux*) - # this will be overridden with pass_all, but let us keep it just in case - lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1" - ;; - *) - case $LD in - *-32|*"-32 ") libmagic=32-bit;; - *-n32|*"-n32 ") libmagic=N32;; - *-64|*"-64 ") libmagic=64-bit;; - *) libmagic=never-match;; - esac - # this will be overridden with pass_all, but let us keep it just in case - lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[1234] dynamic lib MIPS - version 1" - ;; - esac - lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*` - lt_cv_deplibs_check_method=pass_all - ;; - -# This must be Linux ELF. -linux-gnu*) - case $host_cpu in - alpha* | hppa* | i*86 | mips | mipsel | powerpc* | sparc* | ia64*) - lt_cv_deplibs_check_method=pass_all ;; - *) - # glibc up to 2.1.1 does not perform some relocations on ARM - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' ;; - esac - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' - else - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so$' - fi - ;; - -newos6*) - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)' - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=/usr/lib/libnls.so - ;; - -openbsd*) - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB shared object' - else - lt_cv_deplibs_check_method='file_magic OpenBSD.* shared library' - fi - ;; - -osf3* | osf4* | osf5*) - # this will be overridden with pass_all, but let us keep it just in case - lt_cv_deplibs_check_method='file_magic COFF format alpha shared library' - lt_cv_file_magic_test_file=/shlib/libc.so - lt_cv_deplibs_check_method=pass_all - ;; - -sco3.2v5*) - lt_cv_deplibs_check_method=pass_all - ;; - -solaris*) - lt_cv_deplibs_check_method=pass_all - lt_cv_file_magic_test_file=/lib/libc.so - ;; - -sysv5uw[78]* | sysv4*uw2*) - lt_cv_deplibs_check_method=pass_all - ;; - -sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - case $host_vendor in - motorola) - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]' - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` - ;; - ncr) - lt_cv_deplibs_check_method=pass_all - ;; - sequent) - lt_cv_file_magic_cmd='/bin/file' - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' - ;; - sni) - lt_cv_file_magic_cmd='/bin/file' - lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib" - lt_cv_file_magic_test_file=/lib/libc.so - ;; - siemens) - lt_cv_deplibs_check_method=pass_all - ;; - esac - ;; -esac - -fi -echo "$as_me:$LINENO: result: $lt_cv_deplibs_check_method" >&5 -echo "${ECHO_T}$lt_cv_deplibs_check_method" >&6 -file_magic_cmd=$lt_cv_file_magic_cmd -deplibs_check_method=$lt_cv_deplibs_check_method - - - - - - - -# Check for command to grab the raw symbol name followed by C symbol from nm. -echo "$as_me:$LINENO: checking command to parse $NM output" >&5 -echo $ECHO_N "checking command to parse $NM output... $ECHO_C" >&6 -if test "${lt_cv_sys_global_symbol_pipe+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -# These are sane defaults that work on at least a few old systems. -# [They come from Ultrix. What could be older than Ultrix?!! ;)] - -# Character class describing NM global symbol codes. -symcode='[BCDEGRST]' - -# Regexp to match symbols that can be accessed directly from C. -sympat='\([_A-Za-z][_A-Za-z0-9]*\)' - -# Transform the above into a raw symbol and a C symbol. -symxfrm='\1 \2\3 \3' - -# Transform an extracted symbol line into a proper C declaration -lt_cv_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'" - -# Transform an extracted symbol line into symbol name and symbol address -lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([^ ]*\) \([^ ]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" - -# Define system-specific variables. -case $host_os in -aix*) - symcode='[BCDT]' - ;; -cygwin* | mingw* | pw32*) - symcode='[ABCDGISTW]' - ;; -hpux*) # Its linker distinguishes data from code symbols - lt_cv_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" - lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" - ;; -irix* | nonstopux*) - symcode='[BCDEGRST]' - ;; -osf*) - symcode='[BCDEGQRST]' - ;; -solaris* | sysv5*) - symcode='[BDT]' - ;; -sysv4) - symcode='[DFNSTU]' - ;; -esac - -# Handle CRLF in mingw tool chain -opt_cr= -case $host_os in -mingw*) - opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp - ;; -esac - -# If we're using GNU nm, then use its standard symbol codes. -if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then - symcode='[ABCDGISTW]' -fi - -# Try without a prefix undercore, then with it. -for ac_symprfx in "" "_"; do - - # Write the raw and C identifiers. -lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'" - - # Check to see that the pipe works correctly. - pipe_works=no - rm -f conftest* - cat > conftest.$ac_ext <&5 - (eval $ac_compile) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - # Now try to grab the symbols. - nlist=conftest.nm - if { (eval echo "$as_me:$LINENO: \"$NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist\"") >&5 - (eval $NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && test -s "$nlist"; then - # Try sorting and uniquifying the output. - if sort "$nlist" | uniq > "$nlist"T; then - mv -f "$nlist"T "$nlist" - else - rm -f "$nlist"T - fi - - # Make sure that we snagged all the symbols we need. - if egrep ' nm_test_var$' "$nlist" >/dev/null; then - if egrep ' nm_test_func$' "$nlist" >/dev/null; then - cat < conftest.$ac_ext -#ifdef __cplusplus -extern "C" { -#endif - -EOF - # Now generate the symbol file. - eval "$lt_cv_global_symbol_to_cdecl"' < "$nlist" >> conftest.$ac_ext' - - cat <> conftest.$ac_ext -#if defined (__STDC__) && __STDC__ -# define lt_ptr void * -#else -# define lt_ptr char * -# define const -#endif - -/* The mapping between symbol names and symbols. */ -const struct { - const char *name; - lt_ptr address; -} -lt_preloaded_symbols[] = -{ -EOF - sed "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (lt_ptr) \&\2},/" < "$nlist" >> conftest.$ac_ext - cat <<\EOF >> conftest.$ac_ext - {0, (lt_ptr) 0} -}; - -#ifdef __cplusplus -} -#endif -EOF - # Now try linking the two files. - mv conftest.$ac_objext conftstm.$ac_objext - save_LIBS="$LIBS" - save_CFLAGS="$CFLAGS" - LIBS="conftstm.$ac_objext" - CFLAGS="$CFLAGS$no_builtin_flag" - if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && test -s conftest$ac_exeext; then - pipe_works=yes - fi - LIBS="$save_LIBS" - CFLAGS="$save_CFLAGS" - else - echo "cannot find nm_test_func in $nlist" >&5 - fi - else - echo "cannot find nm_test_var in $nlist" >&5 - fi - else - echo "cannot run $lt_cv_sys_global_symbol_pipe" >&5 - fi - else - echo "$progname: failed program was:" >&5 - cat conftest.$ac_ext >&5 - fi - rm -f conftest* conftst* - - # Do not use the global_symbol_pipe unless it works. - if test "$pipe_works" = yes; then - break - else - lt_cv_sys_global_symbol_pipe= - fi -done - -fi - -global_symbol_pipe="$lt_cv_sys_global_symbol_pipe" -if test -z "$lt_cv_sys_global_symbol_pipe"; then - global_symbol_to_cdecl= - global_symbol_to_c_name_address= -else - global_symbol_to_cdecl="$lt_cv_global_symbol_to_cdecl" - global_symbol_to_c_name_address="$lt_cv_global_symbol_to_c_name_address" -fi -if test -z "$global_symbol_pipe$global_symbol_to_cdec$global_symbol_to_c_name_address"; -then - echo "$as_me:$LINENO: result: failed" >&5 -echo "${ECHO_T}failed" >&6 -else - echo "$as_me:$LINENO: result: ok" >&5 -echo "${ECHO_T}ok" >&6 -fi - -echo "$as_me:$LINENO: checking for ANSI C header files" >&5 -echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 -if test "${ac_cv_header_stdc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include -#include -#include - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_header_stdc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_header_stdc=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - -if test $ac_cv_header_stdc = yes; then - # SunOS 4.x string.h does not declare mem*, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "memchr" >/dev/null 2>&1; then - : -else - ac_cv_header_stdc=no -fi -rm -f conftest* - -fi - -if test $ac_cv_header_stdc = yes; then - # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "free" >/dev/null 2>&1; then - : -else - ac_cv_header_stdc=no -fi -rm -f conftest* - -fi - -if test $ac_cv_header_stdc = yes; then - # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. - if test "$cross_compiling" = yes; then - : -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#if ((' ' & 0x0FF) == 0x020) -# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') -# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) -#else -# define ISLOWER(c) \ - (('a' <= (c) && (c) <= 'i') \ - || ('j' <= (c) && (c) <= 'r') \ - || ('s' <= (c) && (c) <= 'z')) -# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) -#endif - -#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) -int -main () -{ - int i; - for (i = 0; i < 256; i++) - if (XOR (islower (i), ISLOWER (i)) - || toupper (i) != TOUPPER (i)) - exit(2); - exit (0); -} -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -ac_cv_header_stdc=no -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -fi -fi -echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 -echo "${ECHO_T}$ac_cv_header_stdc" >&6 -if test $ac_cv_header_stdc = yes; then - -cat >>confdefs.h <<\_ACEOF -#define STDC_HEADERS 1 -_ACEOF - -fi - -# On IRIX 5.3, sys/types and inttypes.h are conflicting. - - - - - - - - - -for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ - inttypes.h stdint.h unistd.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default - -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - eval "$as_ac_Header=yes" -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -eval "$as_ac_Header=no" -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - - -for ac_header in dlfcn.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_header_compiler=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 - -# Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------------ ## -## Report this to the AC_PACKAGE_NAME lists. ## -## ------------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - - - - - -# Only perform the check for file, if the check method requires it -case $deplibs_check_method in -file_magic*) - if test "$file_magic_cmd" = '$MAGIC_CMD'; then - echo "$as_me:$LINENO: checking for ${ac_tool_prefix}file" >&5 -echo $ECHO_N "checking for ${ac_tool_prefix}file... $ECHO_C" >&6 -if test "${lt_cv_path_MAGIC_CMD+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - case $MAGIC_CMD in - /*) - lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. - ;; - ?:/*) - lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path. - ;; - *) - ac_save_MAGIC_CMD="$MAGIC_CMD" - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" - ac_dummy="/usr/bin:$PATH" - for ac_dir in $ac_dummy; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/${ac_tool_prefix}file; then - lt_cv_path_MAGIC_CMD="$ac_dir/${ac_tool_prefix}file" - if test -n "$file_magic_test_file"; then - case $deplibs_check_method in - "file_magic "*) - file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" - MAGIC_CMD="$lt_cv_path_MAGIC_CMD" - if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | - egrep "$file_magic_regex" > /dev/null; then - : - else - cat <&2 - -*** Warning: the command libtool uses to detect shared libraries, -*** $file_magic_cmd, produces output that libtool cannot recognize. -*** The result is that libtool may fail to recognize shared libraries -*** as such. This will affect the creation of libtool libraries that -*** depend on shared libraries, but programs linked with such libtool -*** libraries will work regardless of this problem. Nevertheless, you -*** may want to report the problem to your system manager and/or to -*** bug-libtool@gnu.org - -EOF - fi ;; - esac - fi - break - fi - done - IFS="$ac_save_ifs" - MAGIC_CMD="$ac_save_MAGIC_CMD" - ;; -esac -fi - -MAGIC_CMD="$lt_cv_path_MAGIC_CMD" -if test -n "$MAGIC_CMD"; then - echo "$as_me:$LINENO: result: $MAGIC_CMD" >&5 -echo "${ECHO_T}$MAGIC_CMD" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -if test -z "$lt_cv_path_MAGIC_CMD"; then - if test -n "$ac_tool_prefix"; then - echo "$as_me:$LINENO: checking for file" >&5 -echo $ECHO_N "checking for file... $ECHO_C" >&6 -if test "${lt_cv_path_MAGIC_CMD+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - case $MAGIC_CMD in - /*) - lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. - ;; - ?:/*) - lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path. - ;; - *) - ac_save_MAGIC_CMD="$MAGIC_CMD" - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" - ac_dummy="/usr/bin:$PATH" - for ac_dir in $ac_dummy; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/file; then - lt_cv_path_MAGIC_CMD="$ac_dir/file" - if test -n "$file_magic_test_file"; then - case $deplibs_check_method in - "file_magic "*) - file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" - MAGIC_CMD="$lt_cv_path_MAGIC_CMD" - if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | - egrep "$file_magic_regex" > /dev/null; then - : - else - cat <&2 - -*** Warning: the command libtool uses to detect shared libraries, -*** $file_magic_cmd, produces output that libtool cannot recognize. -*** The result is that libtool may fail to recognize shared libraries -*** as such. This will affect the creation of libtool libraries that -*** depend on shared libraries, but programs linked with such libtool -*** libraries will work regardless of this problem. Nevertheless, you -*** may want to report the problem to your system manager and/or to -*** bug-libtool@gnu.org - -EOF - fi ;; - esac - fi - break - fi - done - IFS="$ac_save_ifs" - MAGIC_CMD="$ac_save_MAGIC_CMD" - ;; -esac -fi - -MAGIC_CMD="$lt_cv_path_MAGIC_CMD" -if test -n "$MAGIC_CMD"; then - echo "$as_me:$LINENO: result: $MAGIC_CMD" >&5 -echo "${ECHO_T}$MAGIC_CMD" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - else - MAGIC_CMD=: - fi -fi - - fi - ;; -esac - -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. -set dummy ${ac_tool_prefix}ranlib; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_RANLIB+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$RANLIB"; then - ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -RANLIB=$ac_cv_prog_RANLIB -if test -n "$RANLIB"; then - echo "$as_me:$LINENO: result: $RANLIB" >&5 -echo "${ECHO_T}$RANLIB" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$ac_cv_prog_RANLIB"; then - ac_ct_RANLIB=$RANLIB - # Extract the first word of "ranlib", so it can be a program name with args. -set dummy ranlib; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_RANLIB"; then - ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_RANLIB="ranlib" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - - test -z "$ac_cv_prog_ac_ct_RANLIB" && ac_cv_prog_ac_ct_RANLIB=":" -fi -fi -ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB -if test -n "$ac_ct_RANLIB"; then - echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5 -echo "${ECHO_T}$ac_ct_RANLIB" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - RANLIB=$ac_ct_RANLIB -else - RANLIB="$ac_cv_prog_RANLIB" -fi - -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. -set dummy ${ac_tool_prefix}strip; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_STRIP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$STRIP"; then - ac_cv_prog_STRIP="$STRIP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_STRIP="${ac_tool_prefix}strip" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -STRIP=$ac_cv_prog_STRIP -if test -n "$STRIP"; then - echo "$as_me:$LINENO: result: $STRIP" >&5 -echo "${ECHO_T}$STRIP" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$ac_cv_prog_STRIP"; then - ac_ct_STRIP=$STRIP - # Extract the first word of "strip", so it can be a program name with args. -set dummy strip; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_STRIP"; then - ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_STRIP="strip" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - - test -z "$ac_cv_prog_ac_ct_STRIP" && ac_cv_prog_ac_ct_STRIP=":" -fi -fi -ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP -if test -n "$ac_ct_STRIP"; then - echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5 -echo "${ECHO_T}$ac_ct_STRIP" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - STRIP=$ac_ct_STRIP -else - STRIP="$ac_cv_prog_STRIP" -fi - - -enable_dlopen=no -enable_win32_dll=no - -# Check whether --enable-libtool-lock or --disable-libtool-lock was given. -if test "${enable_libtool_lock+set}" = set; then - enableval="$enable_libtool_lock" - -fi; -test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes - -# Some flags need to be propagated to the compiler or linker for good -# libtool support. -case $host in -*-*-irix6*) - # Find out which ABI we are using. - echo '#line 4578 "configure"' > conftest.$ac_ext - if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - case `/usr/bin/file conftest.$ac_objext` in - *32-bit*) - LD="${LD-ld} -32" - ;; - *N32*) - LD="${LD-ld} -n32" - ;; - *64-bit*) - LD="${LD-ld} -64" - ;; - esac - fi - rm -rf conftest* - ;; - -*-*-sco3.2v5*) - # On SCO OpenServer 5, we need -belf to get full-featured binaries. - SAVE_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -belf" - echo "$as_me:$LINENO: checking whether the C compiler needs -belf" >&5 -echo $ECHO_N "checking whether the C compiler needs -belf... $ECHO_C" >&6 -if test "${lt_cv_cc_needs_belf+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - - - ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - lt_cv_cc_needs_belf=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -lt_cv_cc_needs_belf=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - -fi -echo "$as_me:$LINENO: result: $lt_cv_cc_needs_belf" >&5 -echo "${ECHO_T}$lt_cv_cc_needs_belf" >&6 - if test x"$lt_cv_cc_needs_belf" != x"yes"; then - # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf - CFLAGS="$SAVE_CFLAGS" - fi - ;; - - -esac - -# Sed substitution that helps us do robust quoting. It backslashifies -# metacharacters that are still active within double-quoted strings. -Xsed='sed -e s/^X//' -sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g' - -# Same as above, but do not quote variable references. -double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g' - -# Sed substitution to delay expansion of an escaped shell variable in a -# double_quote_subst'ed string. -delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' - -# Constants: -rm="rm -f" - -# Global variables: -default_ofile=libtool -can_build_shared=yes - -# All known linkers require a `.a' archive for static linking (except M$VC, -# which needs '.lib'). -libext=a -ltmain="$ac_aux_dir/ltmain.sh" -ofile="$default_ofile" -with_gnu_ld="$lt_cv_prog_gnu_ld" -need_locks="$enable_libtool_lock" - -old_CC="$CC" -old_CFLAGS="$CFLAGS" - -# Set sane defaults for various variables -test -z "$AR" && AR=ar -test -z "$AR_FLAGS" && AR_FLAGS=cru -test -z "$AS" && AS=as -test -z "$CC" && CC=cc -test -z "$DLLTOOL" && DLLTOOL=dlltool -test -z "$LD" && LD=ld -test -z "$LN_S" && LN_S="ln -s" -test -z "$MAGIC_CMD" && MAGIC_CMD=file -test -z "$NM" && NM=nm -test -z "$OBJDUMP" && OBJDUMP=objdump -test -z "$RANLIB" && RANLIB=: -test -z "$STRIP" && STRIP=: -test -z "$ac_objext" && ac_objext=o - -if test x"$host" != x"$build"; then - ac_tool_prefix=${host_alias}- -else - ac_tool_prefix= -fi - -# Transform linux* to *-*-linux-gnu*, to support old configure scripts. -case $host_os in -linux-gnu*) ;; -linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'` -esac - -case $host_os in -aix3*) - # 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. - if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES - fi - ;; -esac - -# Determine commands to create old-style static archives. -old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs' -old_postinstall_cmds='chmod 644 $oldlib' -old_postuninstall_cmds= - -if test -n "$RANLIB"; then - case $host_os in - openbsd*) - old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds" - ;; - *) - old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds" - ;; - esac - old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib" -fi - -# Allow CC to be a program name with arguments. -set dummy $CC -compiler="$2" - -echo "$as_me:$LINENO: checking for objdir" >&5 -echo $ECHO_N "checking for objdir... $ECHO_C" >&6 -rm -f .libs 2>/dev/null -mkdir .libs 2>/dev/null -if test -d .libs; then - objdir=.libs -else - # MS-DOS does not allow filenames that begin with a dot. - objdir=_libs -fi -rmdir .libs 2>/dev/null -echo "$as_me:$LINENO: result: $objdir" >&5 -echo "${ECHO_T}$objdir" >&6 - - - -# Check whether --with-pic or --without-pic was given. -if test "${with_pic+set}" = set; then - withval="$with_pic" - pic_mode="$withval" -else - pic_mode=default -fi; -test -z "$pic_mode" && pic_mode=default - -# We assume here that the value for lt_cv_prog_cc_pic will not be cached -# in isolation, and that seeing it set (from the cache) indicates that -# the associated values are set (in the cache) correctly too. -echo "$as_me:$LINENO: checking for $compiler option to produce PIC" >&5 -echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 -if test "${lt_cv_prog_cc_pic+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - lt_cv_prog_cc_pic= - lt_cv_prog_cc_shlib= - lt_cv_prog_cc_wl= - lt_cv_prog_cc_static= - lt_cv_prog_cc_no_builtin= - lt_cv_prog_cc_can_build_shared=$can_build_shared - - if test "$GCC" = yes; then - lt_cv_prog_cc_wl='-Wl,' - lt_cv_prog_cc_static='-static' - - case $host_os in - aix*) - # Below there is a dirty hack to force normal static linking with -ldl - # The problem is because libdl dynamically linked with both libc and - # libC (AIX C++ library), which obviously doesn't included in libraries - # list by gcc. This cause undefined symbols with -static flags. - # This hack allows C programs to be linked with "-static -ldl", but - # not sure about C++ programs. - lt_cv_prog_cc_static="$lt_cv_prog_cc_static ${lt_cv_prog_cc_wl}-lC" - ;; - 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'. - lt_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4' - ;; - beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) - # PIC is the default for these OSes. - ;; - darwin* | rhapsody*) - # PIC is the default on this platform - # Common symbols not allowed in MH_DYLIB files - lt_cv_prog_cc_pic='-fno-common' - ;; - cygwin* | mingw* | pw32* | os2*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - lt_cv_prog_cc_pic='-DDLL_EXPORT' - ;; - sysv4*MP*) - if test -d /usr/nec; then - lt_cv_prog_cc_pic=-Kconform_pic - fi - ;; - *) - lt_cv_prog_cc_pic='-fPIC' - ;; - esac - else - # PORTME Check for PIC flags for the system compiler. - case $host_os in - aix3* | aix4* | aix5*) - lt_cv_prog_cc_wl='-Wl,' - # All AIX code is PIC. - if test "$host_cpu" = ia64; then - # AIX 5 now supports IA64 processor - lt_cv_prog_cc_static='-Bstatic' - else - lt_cv_prog_cc_static='-bnso -bI:/lib/syscalls.exp' - fi - ;; - - hpux9* | hpux10* | hpux11*) - # Is there a better lt_cv_prog_cc_static that works with the bundled CC? - lt_cv_prog_cc_wl='-Wl,' - lt_cv_prog_cc_static="${lt_cv_prog_cc_wl}-a ${lt_cv_prog_cc_wl}archive" - lt_cv_prog_cc_pic='+Z' - ;; - - irix5* | irix6* | nonstopux*) - lt_cv_prog_cc_wl='-Wl,' - lt_cv_prog_cc_static='-non_shared' - # PIC (with -KPIC) is the default. - ;; - - cygwin* | mingw* | pw32* | os2*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - lt_cv_prog_cc_pic='-DDLL_EXPORT' - ;; - - newsos6) - lt_cv_prog_cc_pic='-KPIC' - lt_cv_prog_cc_static='-Bstatic' - ;; - - osf3* | osf4* | osf5*) - # All OSF/1 code is PIC. - lt_cv_prog_cc_wl='-Wl,' - lt_cv_prog_cc_static='-non_shared' - ;; - - sco3.2v5*) - lt_cv_prog_cc_pic='-Kpic' - lt_cv_prog_cc_static='-dn' - lt_cv_prog_cc_shlib='-belf' - ;; - - solaris*) - lt_cv_prog_cc_pic='-KPIC' - lt_cv_prog_cc_static='-Bstatic' - lt_cv_prog_cc_wl='-Wl,' - ;; - - sunos4*) - lt_cv_prog_cc_pic='-PIC' - lt_cv_prog_cc_static='-Bstatic' - lt_cv_prog_cc_wl='-Qoption ld ' - ;; - - sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - lt_cv_prog_cc_pic='-KPIC' - lt_cv_prog_cc_static='-Bstatic' - lt_cv_prog_cc_wl='-Wl,' - ;; - - uts4*) - lt_cv_prog_cc_pic='-pic' - lt_cv_prog_cc_static='-Bstatic' - ;; - - sysv4*MP*) - if test -d /usr/nec ;then - lt_cv_prog_cc_pic='-Kconform_pic' - lt_cv_prog_cc_static='-Bstatic' - fi - ;; - - *) - lt_cv_prog_cc_can_build_shared=no - ;; - esac - fi - -fi - -if test -z "$lt_cv_prog_cc_pic"; then - echo "$as_me:$LINENO: result: none" >&5 -echo "${ECHO_T}none" >&6 -else - echo "$as_me:$LINENO: result: $lt_cv_prog_cc_pic" >&5 -echo "${ECHO_T}$lt_cv_prog_cc_pic" >&6 - - # Check to make sure the pic_flag actually works. - echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_cv_prog_cc_pic works" >&5 -echo $ECHO_N "checking if $compiler PIC flag $lt_cv_prog_cc_pic works... $ECHO_C" >&6 - if test "${lt_cv_prog_cc_pic_works+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS $lt_cv_prog_cc_pic -DPIC" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - case $host_os in - hpux9* | hpux10* | hpux11*) - # On HP-UX, both CC and GCC only warn that PIC is supported... then - # they create non-PIC objects. So, if there were any warnings, we - # assume that PIC is not supported. - if test -s conftest.err; then - lt_cv_prog_cc_pic_works=no - else - lt_cv_prog_cc_pic_works=yes - fi - ;; - *) - lt_cv_prog_cc_pic_works=yes - ;; - esac - -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - lt_cv_prog_cc_pic_works=no - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - CFLAGS="$save_CFLAGS" - -fi - - - if test "X$lt_cv_prog_cc_pic_works" = Xno; then - lt_cv_prog_cc_pic= - lt_cv_prog_cc_can_build_shared=no - else - lt_cv_prog_cc_pic=" $lt_cv_prog_cc_pic" - fi - - echo "$as_me:$LINENO: result: $lt_cv_prog_cc_pic_works" >&5 -echo "${ECHO_T}$lt_cv_prog_cc_pic_works" >&6 -fi - -# Check for any special shared library compilation flags. -if test -n "$lt_cv_prog_cc_shlib"; then - { echo "$as_me:$LINENO: WARNING: \`$CC' requires \`$lt_cv_prog_cc_shlib' to build shared libraries" >&5 -echo "$as_me: WARNING: \`$CC' requires \`$lt_cv_prog_cc_shlib' to build shared libraries" >&2;} - if echo "$old_CC $old_CFLAGS " | egrep -e "[ ]$lt_cv_prog_cc_shlib[ ]" >/dev/null; then : - else - { echo "$as_me:$LINENO: WARNING: add \`$lt_cv_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure" >&5 -echo "$as_me: WARNING: add \`$lt_cv_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure" >&2;} - lt_cv_prog_cc_can_build_shared=no - fi -fi - -echo "$as_me:$LINENO: checking if $compiler static flag $lt_cv_prog_cc_static works" >&5 -echo $ECHO_N "checking if $compiler static flag $lt_cv_prog_cc_static works... $ECHO_C" >&6 -if test "${lt_cv_prog_cc_static_works+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - lt_cv_prog_cc_static_works=no - save_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS $lt_cv_prog_cc_static" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - lt_cv_prog_cc_static_works=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - LDFLAGS="$save_LDFLAGS" - -fi - - -# Belt *and* braces to stop my trousers falling down: -test "X$lt_cv_prog_cc_static_works" = Xno && lt_cv_prog_cc_static= -echo "$as_me:$LINENO: result: $lt_cv_prog_cc_static_works" >&5 -echo "${ECHO_T}$lt_cv_prog_cc_static_works" >&6 - -pic_flag="$lt_cv_prog_cc_pic" -special_shlib_compile_flags="$lt_cv_prog_cc_shlib" -wl="$lt_cv_prog_cc_wl" -link_static_flag="$lt_cv_prog_cc_static" -no_builtin_flag="$lt_cv_prog_cc_no_builtin" -can_build_shared="$lt_cv_prog_cc_can_build_shared" - - -# Check to see if options -o and -c are simultaneously supported by compiler -echo "$as_me:$LINENO: checking if $compiler supports -c -o file.$ac_objext" >&5 -echo $ECHO_N "checking if $compiler supports -c -o file.$ac_objext... $ECHO_C" >&6 -if test "${lt_cv_compiler_c_o+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -$rm -r conftest 2>/dev/null -mkdir conftest -cd conftest -echo "int some_variable = 0;" > conftest.$ac_ext -mkdir out -# According to Tom Tromey, Ian Lance Taylor reported there are C compilers -# that will create temporary files in the current directory regardless of -# the output directory. Thus, making CWD read-only will cause this test -# to fail, enabling locking or at least warning the user not to do parallel -# builds. -chmod -w . -save_CFLAGS="$CFLAGS" -CFLAGS="$CFLAGS -o out/conftest2.$ac_objext" -compiler_c_o=no -if { (eval echo configure:5136: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s out/conftest.err; then - lt_cv_compiler_c_o=no - else - lt_cv_compiler_c_o=yes - fi -else - # Append any errors to the config.log. - cat out/conftest.err 1>&5 - lt_cv_compiler_c_o=no -fi -CFLAGS="$save_CFLAGS" -chmod u+w . -$rm conftest* out/* -rmdir out -cd .. -rmdir conftest -$rm -r conftest 2>/dev/null - -fi - -compiler_c_o=$lt_cv_compiler_c_o -echo "$as_me:$LINENO: result: $compiler_c_o" >&5 -echo "${ECHO_T}$compiler_c_o" >&6 - -if test x"$compiler_c_o" = x"yes"; then - # Check to see if we can write to a .lo - echo "$as_me:$LINENO: checking if $compiler supports -c -o file.lo" >&5 -echo $ECHO_N "checking if $compiler supports -c -o file.lo... $ECHO_C" >&6 - if test "${lt_cv_compiler_o_lo+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - - lt_cv_compiler_o_lo=no - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -c -o conftest.lo" - save_objext="$ac_objext" - ac_objext=lo - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ -int some_variable = 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s conftest.err; then - lt_cv_compiler_o_lo=no - else - lt_cv_compiler_o_lo=yes - fi - -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - ac_objext="$save_objext" - CFLAGS="$save_CFLAGS" - -fi - - compiler_o_lo=$lt_cv_compiler_o_lo - echo "$as_me:$LINENO: result: $compiler_o_lo" >&5 -echo "${ECHO_T}$compiler_o_lo" >&6 -else - compiler_o_lo=no -fi - -# Check to see if we can do hard links to lock some files if needed -hard_links="nottested" -if test "$compiler_c_o" = no && test "$need_locks" != no; then - # do not overwrite the value of need_locks provided by the user - echo "$as_me:$LINENO: checking if we can lock with hard links" >&5 -echo $ECHO_N "checking if we can lock with hard links... $ECHO_C" >&6 - hard_links=yes - $rm conftest* - ln conftest.a conftest.b 2>/dev/null && hard_links=no - touch conftest.a - ln conftest.a conftest.b 2>&5 || hard_links=no - ln conftest.a conftest.b 2>/dev/null && hard_links=no - echo "$as_me:$LINENO: result: $hard_links" >&5 -echo "${ECHO_T}$hard_links" >&6 - if test "$hard_links" = no; then - { echo "$as_me:$LINENO: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5 -echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;} - need_locks=warn - fi -else - need_locks=no -fi - -if test "$GCC" = yes; then - # Check to see if options -fno-rtti -fno-exceptions are supported by compiler - echo "$as_me:$LINENO: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 -echo $ECHO_N "checking if $compiler supports -fno-rtti -fno-exceptions... $ECHO_C" >&6 - echo "int some_variable = 0;" > conftest.$ac_ext - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.$ac_ext" - compiler_rtti_exceptions=no - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ -int some_variable = 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s conftest.err; then - compiler_rtti_exceptions=no - else - compiler_rtti_exceptions=yes - fi - -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - CFLAGS="$save_CFLAGS" - echo "$as_me:$LINENO: result: $compiler_rtti_exceptions" >&5 -echo "${ECHO_T}$compiler_rtti_exceptions" >&6 - - if test "$compiler_rtti_exceptions" = "yes"; then - no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions' - else - no_builtin_flag=' -fno-builtin' - fi -fi - -# See if the linker supports building shared libraries. -echo "$as_me:$LINENO: checking whether the linker ($LD) supports shared libraries" >&5 -echo $ECHO_N "checking whether the linker ($LD) supports shared libraries... $ECHO_C" >&6 - -allow_undefined_flag= -no_undefined_flag= -need_lib_prefix=unknown -need_version=unknown -# when you set need_version to no, make sure it does not cause -set_version -# flags to be left without arguments -archive_cmds= -archive_expsym_cmds= -old_archive_from_new_cmds= -old_archive_from_expsyms_cmds= -export_dynamic_flag_spec= -whole_archive_flag_spec= -thread_safe_flag_spec= -hardcode_into_libs=no -hardcode_libdir_flag_spec= -hardcode_libdir_separator= -hardcode_direct=no -hardcode_minus_L=no -hardcode_shlibpath_var=unsupported -runpath_var= -link_all_deplibs=unknown -always_export_symbols=no -export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols' -# include_expsyms should be a list of space-separated symbols to be *always* -# included in the symbol list -include_expsyms= -# exclude_expsyms can be an egrep regular expression of symbols to exclude -# it will be wrapped by ` (' and `)$', so one must not match beginning or -# end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', -# as well as any symbol that contains `d'. -exclude_expsyms="_GLOBAL_OFFSET_TABLE_" -# Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out -# platforms (ab)use it in PIC code, but their linkers get confused if -# the symbol is explicitly referenced. Since portable code cannot -# rely on this symbol name, it's probably fine to never include it in -# preloaded symbol tables. -extract_expsyms_cmds= - -case $host_os in -cygwin* | mingw* | pw32*) - # FIXME: the MSVC++ port hasn't been tested in a loooong time - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - if test "$GCC" != yes; then - with_gnu_ld=no - fi - ;; -openbsd*) - with_gnu_ld=no - ;; -esac - -ld_shlibs=yes -if test "$with_gnu_ld" = yes; then - # If archive_cmds runs LD, not CC, wlarc should be empty - wlarc='${wl}' - - # See if GNU ld supports shared libraries. - case $host_os in - aix3* | aix4* | aix5*) - # On AIX, the GNU linker is very broken - # Note:Check GNU linker on AIX 5-IA64 when/if it becomes available. - ld_shlibs=no - cat <&2 - -*** Warning: the GNU linker, at least up to release 2.9.1, is reported -*** to be unable to reliably create shared libraries on AIX. -*** Therefore, libtool is disabling shared libraries support. If you -*** really care for shared libraries, you may want to modify your PATH -*** so that a non-GNU linker is found, and then restart. - -EOF - ;; - - amigaos*) - archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - - # Samuel A. Falvo II reports - # that the semantics of dynamic libraries on AmigaOS, at least up - # to version 4, is to share data among multiple programs linked - # with the same dynamic library. Since this doesn't match the - # behavior of shared libraries on other platforms, we can use - # them. - ld_shlibs=no - ;; - - beos*) - if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then - allow_undefined_flag=unsupported - # Joseph Beckenbach says some releases of gcc - # support --undefined. This deserves some investigation. FIXME - archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - else - ld_shlibs=no - fi - ;; - - cygwin* | mingw* | pw32*) - # hardcode_libdir_flag_spec is actually meaningless, as there is - # no search path for DLLs. - hardcode_libdir_flag_spec='-L$libdir' - allow_undefined_flag=unsupported - always_export_symbols=yes - - extract_expsyms_cmds='test -f $output_objdir/impgen.c || \ - sed -e "/^# \/\* impgen\.c starts here \*\//,/^# \/\* impgen.c ends here \*\// { s/^# //;s/^# *$//; p; }" -e d < $''0 > $output_objdir/impgen.c~ - test -f $output_objdir/impgen.exe || (cd $output_objdir && \ - if test "x$HOST_CC" != "x" ; then $HOST_CC -o impgen impgen.c ; \ - else $CC -o impgen impgen.c ; fi)~ - $output_objdir/impgen $dir/$soroot > $output_objdir/$soname-def' - - old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib' - - # cygwin and mingw dlls have different entry points and sets of symbols - # to exclude. - # FIXME: what about values for MSVC? - dll_entry=__cygwin_dll_entry@12 - dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12~ - case $host_os in - mingw*) - # mingw values - dll_entry=_DllMainCRTStartup@12 - dll_exclude_symbols=DllMain@12,DllMainCRTStartup@12,DllEntryPoint@12~ - ;; - esac - - # mingw and cygwin differ, and it's simplest to just exclude the union - # of the two symbol sets. - dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12,DllMainCRTStartup@12,DllEntryPoint@12 - - # recent cygwin and mingw systems supply a stub DllMain which the user - # can override, but on older systems we have to supply one (in ltdll.c) - if test "x$lt_cv_need_dllmain" = "xyes"; then - ltdll_obj='$output_objdir/$soname-ltdll.'"$ac_objext " - ltdll_cmds='test -f $output_objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $''0 > $output_objdir/$soname-ltdll.c~ - test -f $output_objdir/$soname-ltdll.$ac_objext || (cd $output_objdir && $CC -c $soname-ltdll.c)~' - else - ltdll_obj= - ltdll_cmds= - fi - - # Extract the symbol export list from an `--export-all' def file, - # then regenerate the def file from the symbol export list, so that - # the compiled dll only exports the symbol export list. - # Be careful not to strip the DATA tag left be newer dlltools. - export_symbols_cmds="$ltdll_cmds"' - $DLLTOOL --export-all --exclude-symbols '$dll_exclude_symbols' --output-def $output_objdir/$soname-def '$ltdll_obj'$libobjs $convenience~ - sed -e "1,/EXPORTS/d" -e "s/ @ [0-9]*//" -e "s/ *;.*$//" < $output_objdir/$soname-def > $export_symbols' - - # If the export-symbols file already is a .def file (1st line - # is EXPORTS), use it as is. - # If DATA tags from a recent dlltool are present, honour them! - archive_expsym_cmds='if test "x`sed 1q $export_symbols`" = xEXPORTS; then - cp $export_symbols $output_objdir/$soname-def; - else - echo EXPORTS > $output_objdir/$soname-def; - _lt_hint=1; - cat $export_symbols | while read symbol; do - set dummy \$symbol; - case \$# in - 2) echo " \$2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;; - 4) echo " \$2 \$3 \$4 ; " >> $output_objdir/$soname-def; _lt_hint=`expr \$_lt_hint - 1`;; - *) echo " \$2 @ \$_lt_hint \$3 ; " >> $output_objdir/$soname-def;; - esac; - _lt_hint=`expr 1 + \$_lt_hint`; - done; - fi~ - '"$ltdll_cmds"' - $CC -Wl,--base-file,$output_objdir/$soname-base '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~ - $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp~ - $CC -Wl,--base-file,$output_objdir/$soname-base $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~ - $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp --output-lib $output_objdir/$libname.dll.a~ - $CC $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags' - ;; - - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' - wlarc= - else - archive_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - fi - ;; - - solaris* | sysv5*) - if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then - ld_shlibs=no - cat <&2 - -*** Warning: The releases 2.8.* of the GNU linker cannot reliably -*** create shared libraries on Solaris systems. Therefore, libtool -*** is disabling shared libraries support. We urge you to upgrade GNU -*** binutils to release 2.9.1 or newer. Another option is to modify -*** your PATH or compiler configuration so that the native linker is -*** used, and then restart. - -EOF - elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - else - ld_shlibs=no - fi - ;; - - sunos4*) - archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' - wlarc= - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - *) - if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - else - ld_shlibs=no - fi - ;; - esac - - if test "$ld_shlibs" = yes; then - runpath_var=LD_RUN_PATH - hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir' - export_dynamic_flag_spec='${wl}--export-dynamic' - case $host_os in - cygwin* | mingw* | pw32*) - # dlltool doesn't understand --whole-archive et. al. - whole_archive_flag_spec= - ;; - *) - # ancient GNU ld didn't support --whole-archive et. al. - if $LD --help 2>&1 | egrep 'no-whole-archive' > /dev/null; then - whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' - else - whole_archive_flag_spec= - fi - ;; - esac - fi -else - # PORTME fill in a description of your system's linker (not GNU ld) - case $host_os in - aix3*) - allow_undefined_flag=unsupported - always_export_symbols=yes - archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' - # Note: this linker hardcodes the directories in LIBPATH if there - # are no directories specified by -L. - hardcode_minus_L=yes - if test "$GCC" = yes && test -z "$link_static_flag"; then - # Neither direct hardcoding nor static linking is supported with a - # broken collect2. - hardcode_direct=unsupported - fi - ;; - - aix4* | aix5*) - if test "$host_cpu" = ia64; then - # On IA64, the linker does run time linking by default, so we don't - # have to do anything special. - aix_use_runtimelinking=no - exp_sym_flag='-Bexport' - no_entry_flag="" - else - aix_use_runtimelinking=no - - # Test if we are trying to use run time linking or normal - # AIX style linking. If -brtl is somewhere in LDFLAGS, we - # need to do runtime linking. - case $host_os in aix4.[23]|aix4.[23].*|aix5*) - for ld_flag in $LDFLAGS; do - case $ld_flag in - *-brtl*) - aix_use_runtimelinking=yes - break - ;; - esac - done - esac - - exp_sym_flag='-bexport' - no_entry_flag='-bnoentry' - fi - - # When large executables or shared objects are built, AIX ld can - # have problems creating the table of contents. If linking a library - # or program results in "error TOC overflow" add -mminimal-toc to - # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not - # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. - - hardcode_direct=yes - archive_cmds='' - hardcode_libdir_separator=':' - if test "$GCC" = yes; then - case $host_os in aix4.[012]|aix4.[012].*) - collect2name=`${CC} -print-prog-name=collect2` - if test -f "$collect2name" && \ - strings "$collect2name" | grep resolve_lib_name >/dev/null - then - # We have reworked collect2 - hardcode_direct=yes - else - # We have old collect2 - hardcode_direct=unsupported - # It fails to find uninstalled libraries when the uninstalled - # path is not listed in the libpath. Setting hardcode_minus_L - # to unsupported forces relinking - hardcode_minus_L=yes - hardcode_libdir_flag_spec='-L$libdir' - hardcode_libdir_separator= - fi - esac - - shared_flag='-shared' - else - # not using gcc - if test "$host_cpu" = ia64; then - shared_flag='${wl}-G' - else - if test "$aix_use_runtimelinking" = yes; then - shared_flag='${wl}-G' - else - shared_flag='${wl}-bM:SRE' - fi - fi - fi - - # It seems that -bexpall can do strange things, so it is better to - # generate a list of symbols to export. - always_export_symbols=yes - if test "$aix_use_runtimelinking" = yes; then - # Warning - without using the other runtime loading flags (-brtl), - # -berok will link without error, but may produce a broken library. - allow_undefined_flag='-berok' - hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib' - archive_expsym_cmds="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag" - else - if test "$host_cpu" = ia64; then - hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib' - allow_undefined_flag="-z nodefs" - archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname ${wl}-h$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" - else - hardcode_libdir_flag_spec='${wl}-bnolibpath ${wl}-blibpath:$libdir:/usr/lib:/lib' - # Warning - without using the other run time loading flags, - # -berok will link without error, but may produce a broken library. - allow_undefined_flag='${wl}-berok' - # This is a bit strange, but is similar to how AIX traditionally builds - # it's shared libraries. - archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"' ~$AR -crlo $objdir/$libname$release.a $objdir/$soname' - fi - fi - ;; - - amigaos*) - archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - # see comment about different semantics on the GNU ld section - ld_shlibs=no - ;; - - cygwin* | mingw* | pw32*) - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - # hardcode_libdir_flag_spec is actually meaningless, as there is - # no search path for DLLs. - hardcode_libdir_flag_spec=' ' - allow_undefined_flag=unsupported - # Tell ltmain to make .lib files, not .a files. - libext=lib - # FIXME: Setting linknames here is a bad hack. - archive_cmds='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | sed -e '\''s/ -lc$//'\''` -link -dll~linknames=' - # The linker will automatically build a .lib file if we build a DLL. - old_archive_from_new_cmds='true' - # FIXME: Should let the user specify the lib program. - old_archive_cmds='lib /OUT:$oldlib$oldobjs$old_deplibs' - fix_srcfile_path='`cygpath -w "$srcfile"`' - ;; - - darwin* | rhapsody*) - case "$host_os" in - rhapsody* | darwin1.[012]) - allow_undefined_flag='-undefined suppress' - ;; - *) # Darwin 1.3 on - allow_undefined_flag='-flat_namespace -undefined suppress' - ;; - esac - # FIXME: Relying on posixy $() will cause problems for - # cross-compilation, but unfortunately the echo tests do not - # yet detect zsh echo's removal of \ escapes. Also zsh mangles - # `"' quotes if we put them in here... so don't! - archive_cmds='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs && $CC $(test .$module = .yes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib ${lib}-master.o $deplibs$linker_flags $(test .$module != .yes && echo -install_name $rpath/$soname $verstring)' - # We need to add '_' to the symbols in $export_symbols first - #archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols' - hardcode_direct=yes - hardcode_shlibpath_var=no - whole_archive_flag_spec='-all_load $convenience' - ;; - - freebsd1*) - ld_shlibs=no - ;; - - # 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 - # does not break anything, and helps significantly (at the cost of a little - # extra space). - freebsd2.2*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - # Unfortunately, older versions of FreeBSD 2 do not have this feature. - freebsd2*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes - hardcode_minus_L=yes - hardcode_shlibpath_var=no - ;; - - # FreeBSD 3 and greater uses gcc -shared to do shared libraries. - freebsd*) - archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - hpux9* | hpux10* | hpux11*) - case $host_os in - hpux9*) archive_cmds='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' ;; - *) archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' ;; - esac - hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' - hardcode_libdir_separator=: - hardcode_direct=yes - hardcode_minus_L=yes # Not in the search PATH, but as the default - # location of the library. - export_dynamic_flag_spec='${wl}-E' - ;; - - irix5* | irix6* | nonstopux*) - if test "$GCC" = yes; then - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - else - archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' - hardcode_libdir_flag_spec='-rpath $libdir' - fi - hardcode_libdir_separator=: - link_all_deplibs=yes - ;; - - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out - else - archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF - fi - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - newsos6) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - hardcode_libdir_separator=: - hardcode_shlibpath_var=no - ;; - - openbsd*) - hardcode_direct=yes - hardcode_shlibpath_var=no - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - hardcode_libdir_flag_spec='${wl}-rpath,$libdir' - export_dynamic_flag_spec='${wl}-E' - else - case "$host_os" in - openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-R$libdir' - ;; - *) - archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - hardcode_libdir_flag_spec='${wl}-rpath,$libdir' - ;; - esac - fi - ;; - - os2*) - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - allow_undefined_flag=unsupported - archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' - old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' - ;; - - osf3*) - if test "$GCC" = yes; then - allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' - archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - else - allow_undefined_flag=' -expect_unresolved \*' - archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' - fi - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - hardcode_libdir_separator=: - ;; - - osf4* | osf5*) # as osf3* with the addition of -msym flag - if test "$GCC" = yes; then - allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' - archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - else - allow_undefined_flag=' -expect_unresolved \*' - archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' - archive_expsym_cmds='for i in `cat $export_symbols`; do printf "-exported_symbol " >> $lib.exp; echo "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~ - $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp' - - #Both c and cxx compiler support -rpath directly - hardcode_libdir_flag_spec='-rpath $libdir' - fi - hardcode_libdir_separator=: - ;; - - sco3.2v5*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_shlibpath_var=no - runpath_var=LD_RUN_PATH - hardcode_runpath_var=yes - export_dynamic_flag_spec='${wl}-Bexport' - ;; - - solaris*) - # gcc --version < 3.0 without binutils cannot create self contained - # shared libraries reliably, requiring libgcc.a to resolve some of - # the object symbols generated in some cases. Libraries that use - # assert need libgcc.a to resolve __eprintf, for example. Linking - # a copy of libgcc.a into every shared library to guarantee resolving - # such symbols causes other problems: According to Tim Van Holder - # , C++ libraries end up with a separate - # (to the application) exception stack for one thing. - no_undefined_flag=' -z defs' - if test "$GCC" = yes; then - case `$CC --version 2>/dev/null` in - [12].*) - cat <&2 - -*** Warning: Releases of GCC earlier than version 3.0 cannot reliably -*** create self contained shared libraries on Solaris systems, without -*** introducing a dependency on libgcc.a. Therefore, libtool is disabling -*** -no-undefined support, which will at least allow you to build shared -*** libraries. However, you may find that when you link such libraries -*** into an application without using GCC, you have to manually add -*** \`gcc --print-libgcc-file-name\` to the link command. We urge you to -*** upgrade to a newer version of GCC. Another option is to rebuild your -*** current GCC to use the GNU linker from GNU binutils 2.9.1 or newer. - -EOF - no_undefined_flag= - ;; - esac - fi - # $CC -shared without GNU ld will not create a library from C++ - # object files and a static libstdc++, better avoid it by now - archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' - archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_shlibpath_var=no - case $host_os in - solaris2.[0-5] | solaris2.[0-5].*) ;; - *) # Supported since Solaris 2.6 (maybe 2.5.1?) - whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;; - esac - link_all_deplibs=yes - ;; - - sunos4*) - if test "x$host_vendor" = xsequent; then - # Use $CC to link under sequent, because it throws in some extra .o - # files that make .init and .fini sections work. - archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' - else - archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' - fi - hardcode_libdir_flag_spec='-L$libdir' - hardcode_direct=yes - hardcode_minus_L=yes - hardcode_shlibpath_var=no - ;; - - sysv4) - case $host_vendor in - sni) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes # is this really true??? - ;; - siemens) - ## LD is ld it makes a PLAMLIB - ## CC just makes a GrossModule. - archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' - reload_cmds='$CC -r -o $output$reload_objs' - hardcode_direct=no - ;; - motorola) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=no #Motorola manual says yes, but my tests say they lie - ;; - esac - runpath_var='LD_RUN_PATH' - hardcode_shlibpath_var=no - ;; - - sysv4.3*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_shlibpath_var=no - export_dynamic_flag_spec='-Bexport' - ;; - - sysv5*) - no_undefined_flag=' -z text' - # $CC -shared without GNU ld will not create a library from C++ - # object files and a static libstdc++, better avoid it by now - archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' - archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' - hardcode_libdir_flag_spec= - hardcode_shlibpath_var=no - runpath_var='LD_RUN_PATH' - ;; - - uts4*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_shlibpath_var=no - ;; - - dgux*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_shlibpath_var=no - ;; - - sysv4*MP*) - if test -d /usr/nec; then - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_shlibpath_var=no - runpath_var=LD_RUN_PATH - hardcode_runpath_var=yes - ld_shlibs=yes - fi - ;; - - sysv4.2uw2*) - archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes - hardcode_minus_L=no - hardcode_shlibpath_var=no - hardcode_runpath_var=yes - runpath_var=LD_RUN_PATH - ;; - - sysv5uw7* | unixware7*) - no_undefined_flag='${wl}-z ${wl}text' - if test "$GCC" = yes; then - archive_cmds='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' - else - archive_cmds='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' - fi - runpath_var='LD_RUN_PATH' - hardcode_shlibpath_var=no - ;; - - *) - ld_shlibs=no - ;; - esac -fi -echo "$as_me:$LINENO: result: $ld_shlibs" >&5 -echo "${ECHO_T}$ld_shlibs" >&6 -test "$ld_shlibs" = no && can_build_shared=no - -# Check hardcoding attributes. -echo "$as_me:$LINENO: checking how to hardcode library paths into programs" >&5 -echo $ECHO_N "checking how to hardcode library paths into programs... $ECHO_C" >&6 -hardcode_action= -if test -n "$hardcode_libdir_flag_spec" || \ - test -n "$runpath_var"; then - - # We can hardcode non-existant directories. - if test "$hardcode_direct" != no && - # If the only mechanism to avoid hardcoding is shlibpath_var, we - # have to relink, otherwise we might link with an installed library - # when we should be linking with a yet-to-be-installed one - ## test "$hardcode_shlibpath_var" != no && - test "$hardcode_minus_L" != no; then - # Linking always hardcodes the temporary library directory. - hardcode_action=relink - else - # We can link without hardcoding, and we can hardcode nonexisting dirs. - hardcode_action=immediate - fi -else - # We cannot hardcode anything, or else we can only hardcode existing - # directories. - hardcode_action=unsupported -fi -echo "$as_me:$LINENO: result: $hardcode_action" >&5 -echo "${ECHO_T}$hardcode_action" >&6 - -striplib= -old_striplib= -echo "$as_me:$LINENO: checking whether stripping libraries is possible" >&5 -echo $ECHO_N "checking whether stripping libraries is possible... $ECHO_C" >&6 -if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then - test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" - test -z "$striplib" && striplib="$STRIP --strip-unneeded" - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -reload_cmds='$LD$reload_flag -o $output$reload_objs' -test -z "$deplibs_check_method" && deplibs_check_method=unknown - -# PORTME Fill in your ld.so characteristics -echo "$as_me:$LINENO: checking dynamic linker characteristics" >&5 -echo $ECHO_N "checking dynamic linker characteristics... $ECHO_C" >&6 -library_names_spec= -libname_spec='lib$name' -soname_spec= -postinstall_cmds= -postuninstall_cmds= -finish_cmds= -finish_eval= -shlibpath_var= -shlibpath_overrides_runpath=unknown -version_type=none -dynamic_linker="$host_os ld.so" -sys_lib_dlsearch_path_spec="/lib /usr/lib" -sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" - -case $host_os in -aix3*) - version_type=linux - library_names_spec='${libname}${release}.so$versuffix $libname.a' - shlibpath_var=LIBPATH - - # AIX has no versioning support, so we append a major version to the name. - soname_spec='${libname}${release}.so$major' - ;; - -aix4* | aix5*) - version_type=linux - need_lib_prefix=no - need_version=no - hardcode_into_libs=yes - if test "$host_cpu" = ia64; then - # AIX 5 supports IA64 - library_names_spec='${libname}${release}.so$major ${libname}${release}.so$versuffix $libname.so' - shlibpath_var=LD_LIBRARY_PATH - else - # With GCC up to 2.95.x, collect2 would create an import file - # for dependence libraries. The import file would start with - # the line `#! .'. This would cause the generated library to - # depend on `.', always an invalid library. This was fixed in - # development snapshots of GCC prior to 3.0. - case $host_os in - aix4 | aix4.[01] | aix4.[01].*) - if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' - echo ' yes ' - echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then - : - else - can_build_shared=no - fi - ;; - esac - # AIX (on Power*) has no versioning support, so currently we can - # not hardcode correct soname into executable. Probably we can - # add versioning support to collect2, so additional links can - # be useful in future. - if test "$aix_use_runtimelinking" = yes; then - # If using run time linking (on AIX 4.2 or later) use lib.so - # instead of lib.a to let people know that these are not - # typical AIX shared libraries. - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - else - # We preserve .a as extension for shared libraries through AIX4.2 - # and later when we are not doing run time linking. - library_names_spec='${libname}${release}.a $libname.a' - soname_spec='${libname}${release}.so$major' - fi - shlibpath_var=LIBPATH - fi - hardcode_into_libs=yes - ;; - -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 "X$lib" | $Xsed -e '\''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' - ;; - -beos*) - library_names_spec='${libname}.so' - dynamic_linker="$host_os ld.so" - shlibpath_var=LIBRARY_PATH - ;; - -bsdi4*) - version_type=linux - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' - shlibpath_var=LD_LIBRARY_PATH - sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" - sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" - export_dynamic_flag_spec=-rdynamic - # the default ld.so.conf also contains /usr/contrib/lib and - # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow - # libtool to hard-code these into programs - ;; - -cygwin* | mingw* | pw32*) - version_type=windows - need_version=no - need_lib_prefix=no - case $GCC,$host_os in - yes,cygwin*) - library_names_spec='$libname.dll.a' - soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll' - postinstall_cmds='dlpath=`bash 2>&1 -c '\''. $dir/${file}i;echo \$dlname'\''`~ - dldir=$destdir/`dirname \$dlpath`~ - test -d \$dldir || mkdir -p \$dldir~ - $install_prog .libs/$dlname \$dldir/$dlname' - postuninstall_cmds='dldll=`bash 2>&1 -c '\''. $file; echo \$dlname'\''`~ - dlpath=$dir/\$dldll~ - $rm \$dlpath' - ;; - yes,mingw*) - library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll' - sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g" -e "s,=/,/,g"` - ;; - yes,pw32*) - library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/./-/g'`${versuffix}.dll' - ;; - *) - library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll $libname.lib' - ;; - esac - dynamic_linker='Win32 ld.exe' - # FIXME: first we should search . and the directory the executable is in - shlibpath_var=PATH - ;; - -darwin* | rhapsody*) - dynamic_linker="$host_os dyld" - version_type=darwin - need_lib_prefix=no - need_version=no - # FIXME: Relying on posixy $() will cause problems for - # cross-compilation, but unfortunately the echo tests do not - # yet detect zsh echo's removal of \ escapes. - library_names_spec='${libname}${release}${versuffix}.$(test .$module = .yes && echo so || echo dylib) ${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib) ${libname}.$(test .$module = .yes && echo so || echo dylib)' - soname_spec='${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib)' - shlibpath_overrides_runpath=yes - shlibpath_var=DYLD_LIBRARY_PATH - ;; - -freebsd1*) - dynamic_linker=no - ;; - -freebsd*) - objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` - version_type=freebsd-$objformat - case $version_type in - freebsd-elf*) - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so' - need_version=no - need_lib_prefix=no - ;; - freebsd-*) - library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix' - need_version=yes - ;; - esac - shlibpath_var=LD_LIBRARY_PATH - case $host_os in - freebsd2*) - shlibpath_overrides_runpath=yes - ;; - *) - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - ;; - esac - ;; - -gnu*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so${major} ${libname}.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - hardcode_into_libs=yes - ;; - -hpux9* | hpux10* | hpux11*) - # Give a soname corresponding to the major version so that dld.sl refuses to - # link against other versions. - dynamic_linker="$host_os dld.sl" - version_type=sunos - need_lib_prefix=no - need_version=no - shlibpath_var=SHLIB_PATH - shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH - library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl' - soname_spec='${libname}${release}.sl$major' - # HP-UX runs *really* slowly unless shared libraries are mode 555. - postinstall_cmds='chmod 555 $lib' - ;; - -irix5* | irix6* | nonstopux*) - case $host_os in - nonstopux*) version_type=nonstopux ;; - *) version_type=irix ;; - esac - need_lib_prefix=no - need_version=no - soname_spec='${libname}${release}.so$major' - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so' - case $host_os in - irix5* | nonstopux*) - libsuff= shlibsuff= - ;; - *) - case $LD in # libtool.m4 will add one of these switches to LD - *-32|*"-32 ") libsuff= shlibsuff= libmagic=32-bit;; - *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 libmagic=N32;; - *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;; - *) libsuff= shlibsuff= libmagic=never-match;; - esac - ;; - esac - shlibpath_var=LD_LIBRARY${shlibsuff}_PATH - shlibpath_overrides_runpath=no - sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" - sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" - ;; - -# No shared lib support for Linux oldld, aout, or coff. -linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*) - dynamic_linker=no - ;; - -# This must be Linux ELF. -linux-gnu*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - # This implies no fast_install, which is unacceptable. - # Some rework will be needed to allow for fast_install - # before this can be enabled. - hardcode_into_libs=yes - - # We used to test for /lib/ld.so.1 and disable shared libraries on - # powerpc, because MkLinux only supported shared libraries with the - # GNU dynamic linker. Since this was broken with cross compilers, - # most powerpc-linux boxes support dynamic linking these days and - # people can always --disable-shared, the test was removed, and we - # assume the GNU/Linux dynamic linker is in use. - dynamic_linker='GNU/Linux ld.so' - ;; - -netbsd*) - version_type=sunos - need_lib_prefix=no - need_version=no - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - dynamic_linker='NetBSD (a.out) ld.so' - else - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so' - soname_spec='${libname}${release}.so$major' - dynamic_linker='NetBSD ld.elf_so' - fi - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - ;; - -newsos6) - version_type=linux - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - ;; - -openbsd*) - version_type=sunos - need_lib_prefix=no - need_version=no - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - case "$host_os" in - openbsd2.[89] | openbsd2.[89].*) - shlibpath_overrides_runpath=no - ;; - *) - shlibpath_overrides_runpath=yes - ;; - esac - else - shlibpath_overrides_runpath=yes - fi - library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - shlibpath_var=LD_LIBRARY_PATH - ;; - -os2*) - libname_spec='$name' - need_lib_prefix=no - library_names_spec='$libname.dll $libname.a' - dynamic_linker='OS/2 ld.exe' - shlibpath_var=LIBPATH - ;; - -osf3* | osf4* | osf5*) - version_type=osf - need_version=no - soname_spec='${libname}${release}.so$major' - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - shlibpath_var=LD_LIBRARY_PATH - sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" - sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" - hardcode_into_libs=yes - ;; - -sco3.2v5*) - version_type=osf - soname_spec='${libname}${release}.so$major' - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - shlibpath_var=LD_LIBRARY_PATH - ;; - -solaris*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - # ldd complains unless libraries are executable - postinstall_cmds='chmod +x $lib' - ;; - -sunos4*) - version_type=sunos - library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' - finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - if test "$with_gnu_ld" = yes; then - need_lib_prefix=no - fi - need_version=yes - ;; - -sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - version_type=linux - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - case $host_vendor in - sni) - shlibpath_overrides_runpath=no - need_lib_prefix=no - export_dynamic_flag_spec='${wl}-Blargedynsym' - runpath_var=LD_RUN_PATH - ;; - siemens) - need_lib_prefix=no - ;; - motorola) - need_lib_prefix=no - need_version=no - shlibpath_overrides_runpath=no - sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' - ;; - esac - ;; - -uts4*) - version_type=linux - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - ;; - -dgux*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - ;; - -sysv4*MP*) - if test -d /usr/nec ;then - version_type=linux - library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so' - soname_spec='$libname.so.$major' - shlibpath_var=LD_LIBRARY_PATH - fi - ;; - -*) - dynamic_linker=no - ;; -esac -echo "$as_me:$LINENO: result: $dynamic_linker" >&5 -echo "${ECHO_T}$dynamic_linker" >&6 -test "$dynamic_linker" = no && can_build_shared=no - -# Report the final consequences. -echo "$as_me:$LINENO: checking if libtool supports shared libraries" >&5 -echo $ECHO_N "checking if libtool supports shared libraries... $ECHO_C" >&6 -echo "$as_me:$LINENO: result: $can_build_shared" >&5 -echo "${ECHO_T}$can_build_shared" >&6 - -echo "$as_me:$LINENO: checking whether to build shared libraries" >&5 -echo $ECHO_N "checking whether to build shared libraries... $ECHO_C" >&6 -test "$can_build_shared" = "no" && enable_shared=no - -# On AIX, shared libraries and static libraries use the same namespace, and -# are all built from PIC. -case "$host_os" in -aix3*) - test "$enable_shared" = yes && enable_static=no - if test -n "$RANLIB"; then - archive_cmds="$archive_cmds~\$RANLIB \$lib" - postinstall_cmds='$RANLIB $lib' - fi - ;; - -aix4*) - if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then - test "$enable_shared" = yes && enable_static=no - fi - ;; -esac -echo "$as_me:$LINENO: result: $enable_shared" >&5 -echo "${ECHO_T}$enable_shared" >&6 - -echo "$as_me:$LINENO: checking whether to build static libraries" >&5 -echo $ECHO_N "checking whether to build static libraries... $ECHO_C" >&6 -# Make sure either enable_shared or enable_static is yes. -test "$enable_shared" = yes || enable_static=yes -echo "$as_me:$LINENO: result: $enable_static" >&5 -echo "${ECHO_T}$enable_static" >&6 - -if test "$hardcode_action" = relink; then - # Fast installation is not supported - enable_fast_install=no -elif test "$shlibpath_overrides_runpath" = yes || - test "$enable_shared" = no; then - # Fast installation is not necessary - enable_fast_install=needless -fi - -variables_saved_for_relink="PATH $shlibpath_var $runpath_var" -if test "$GCC" = yes; then - variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" -fi - -if test "x$enable_dlopen" != xyes; then - enable_dlopen=unknown - enable_dlopen_self=unknown - enable_dlopen_self_static=unknown -else - lt_cv_dlopen=no - lt_cv_dlopen_libs= - - case $host_os in - beos*) - lt_cv_dlopen="load_add_on" - lt_cv_dlopen_libs= - lt_cv_dlopen_self=yes - ;; - - cygwin* | mingw* | pw32*) - lt_cv_dlopen="LoadLibrary" - lt_cv_dlopen_libs= - ;; - - *) - echo "$as_me:$LINENO: checking for shl_load" >&5 -echo $ECHO_N "checking for shl_load... $ECHO_C" >&6 -if test "${ac_cv_func_shl_load+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* Define shl_load to an innocuous variant, in case declares shl_load. - For example, HP-UX 11i declares gettimeofday. */ -#define shl_load innocuous_shl_load - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char shl_load (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef shl_load - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -{ -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char shl_load (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_shl_load) || defined (__stub___shl_load) -choke me -#else -char (*f) () = shl_load; -#endif -#ifdef __cplusplus -} -#endif - -int -main () -{ -return f != shl_load; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_shl_load=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_func_shl_load=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_func_shl_load" >&5 -echo "${ECHO_T}$ac_cv_func_shl_load" >&6 -if test $ac_cv_func_shl_load = yes; then - lt_cv_dlopen="shl_load" -else - echo "$as_me:$LINENO: checking for shl_load in -ldld" >&5 -echo $ECHO_N "checking for shl_load in -ldld... $ECHO_C" >&6 -if test "${ac_cv_lib_dld_shl_load+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-ldld $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char shl_load (); -int -main () -{ -shl_load (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_dld_shl_load=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_dld_shl_load=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -echo "$as_me:$LINENO: result: $ac_cv_lib_dld_shl_load" >&5 -echo "${ECHO_T}$ac_cv_lib_dld_shl_load" >&6 -if test $ac_cv_lib_dld_shl_load = yes; then - lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld" -else - echo "$as_me:$LINENO: checking for dlopen" >&5 -echo $ECHO_N "checking for dlopen... $ECHO_C" >&6 -if test "${ac_cv_func_dlopen+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* Define dlopen to an innocuous variant, in case declares dlopen. - For example, HP-UX 11i declares gettimeofday. */ -#define dlopen innocuous_dlopen - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char dlopen (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef dlopen - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -{ -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char dlopen (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_dlopen) || defined (__stub___dlopen) -choke me -#else -char (*f) () = dlopen; -#endif -#ifdef __cplusplus -} -#endif - -int -main () -{ -return f != dlopen; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_dlopen=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_func_dlopen=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_func_dlopen" >&5 -echo "${ECHO_T}$ac_cv_func_dlopen" >&6 -if test $ac_cv_func_dlopen = yes; then - lt_cv_dlopen="dlopen" -else - echo "$as_me:$LINENO: checking for dlopen in -ldl" >&5 -echo $ECHO_N "checking for dlopen in -ldl... $ECHO_C" >&6 -if test "${ac_cv_lib_dl_dlopen+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-ldl $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char dlopen (); -int -main () -{ -dlopen (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_dl_dlopen=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_dl_dlopen=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -echo "$as_me:$LINENO: result: $ac_cv_lib_dl_dlopen" >&5 -echo "${ECHO_T}$ac_cv_lib_dl_dlopen" >&6 -if test $ac_cv_lib_dl_dlopen = yes; then - lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" -else - echo "$as_me:$LINENO: checking for dlopen in -lsvld" >&5 -echo $ECHO_N "checking for dlopen in -lsvld... $ECHO_C" >&6 -if test "${ac_cv_lib_svld_dlopen+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lsvld $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char dlopen (); -int -main () -{ -dlopen (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_svld_dlopen=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_svld_dlopen=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -echo "$as_me:$LINENO: result: $ac_cv_lib_svld_dlopen" >&5 -echo "${ECHO_T}$ac_cv_lib_svld_dlopen" >&6 -if test $ac_cv_lib_svld_dlopen = yes; then - lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld" -else - echo "$as_me:$LINENO: checking for dld_link in -ldld" >&5 -echo $ECHO_N "checking for dld_link in -ldld... $ECHO_C" >&6 -if test "${ac_cv_lib_dld_dld_link+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-ldld $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char dld_link (); -int -main () -{ -dld_link (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_dld_dld_link=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_dld_dld_link=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -echo "$as_me:$LINENO: result: $ac_cv_lib_dld_dld_link" >&5 -echo "${ECHO_T}$ac_cv_lib_dld_dld_link" >&6 -if test $ac_cv_lib_dld_dld_link = yes; then - lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld" -fi - - -fi - - -fi - - -fi - - -fi - - -fi - - ;; - esac - - if test "x$lt_cv_dlopen" != xno; then - enable_dlopen=yes - else - enable_dlopen=no - fi - - case $lt_cv_dlopen in - dlopen) - save_CPPFLAGS="$CPPFLAGS" - test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" - - save_LDFLAGS="$LDFLAGS" - eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" - - save_LIBS="$LIBS" - LIBS="$lt_cv_dlopen_libs $LIBS" - - echo "$as_me:$LINENO: checking whether a program can dlopen itself" >&5 -echo $ECHO_N "checking whether a program can dlopen itself... $ECHO_C" >&6 -if test "${lt_cv_dlopen_self+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test "$cross_compiling" = yes; then : - lt_cv_dlopen_self=cross -else - lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 - lt_status=$lt_dlunknown - cat > conftest.$ac_ext < -#endif - -#include - -#ifdef RTLD_GLOBAL -# define LT_DLGLOBAL RTLD_GLOBAL -#else -# ifdef DL_GLOBAL -# define LT_DLGLOBAL DL_GLOBAL -# else -# define LT_DLGLOBAL 0 -# endif -#endif - -/* We may have to define LT_DLLAZY_OR_NOW in the command line if we - find out it does not work in some platform. */ -#ifndef LT_DLLAZY_OR_NOW -# ifdef RTLD_LAZY -# define LT_DLLAZY_OR_NOW RTLD_LAZY -# else -# ifdef DL_LAZY -# define LT_DLLAZY_OR_NOW DL_LAZY -# else -# ifdef RTLD_NOW -# define LT_DLLAZY_OR_NOW RTLD_NOW -# else -# ifdef DL_NOW -# define LT_DLLAZY_OR_NOW DL_NOW -# else -# define LT_DLLAZY_OR_NOW 0 -# endif -# endif -# endif -# endif -#endif - -#ifdef __cplusplus -extern "C" void exit (int); -#endif - -void fnord() { int i=42;} -int main () -{ - void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); - int status = $lt_dlunknown; - - if (self) - { - if (dlsym (self,"fnord")) status = $lt_dlno_uscore; - else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; - /* dlclose (self); */ - } - - exit (status); -} -EOF - if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then - (./conftest; exit; ) 2>/dev/null - lt_status=$? - case x$lt_status in - x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;; - x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;; - x$lt_unknown|x*) lt_cv_dlopen_self=no ;; - esac - else : - # compilation failed - lt_cv_dlopen_self=no - fi -fi -rm -fr conftest* - - -fi -echo "$as_me:$LINENO: result: $lt_cv_dlopen_self" >&5 -echo "${ECHO_T}$lt_cv_dlopen_self" >&6 - - if test "x$lt_cv_dlopen_self" = xyes; then - LDFLAGS="$LDFLAGS $link_static_flag" - echo "$as_me:$LINENO: checking whether a statically linked program can dlopen itself" >&5 -echo $ECHO_N "checking whether a statically linked program can dlopen itself... $ECHO_C" >&6 -if test "${lt_cv_dlopen_self_static+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test "$cross_compiling" = yes; then : - lt_cv_dlopen_self_static=cross -else - lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 - lt_status=$lt_dlunknown - cat > conftest.$ac_ext < -#endif - -#include - -#ifdef RTLD_GLOBAL -# define LT_DLGLOBAL RTLD_GLOBAL -#else -# ifdef DL_GLOBAL -# define LT_DLGLOBAL DL_GLOBAL -# else -# define LT_DLGLOBAL 0 -# endif -#endif - -/* We may have to define LT_DLLAZY_OR_NOW in the command line if we - find out it does not work in some platform. */ -#ifndef LT_DLLAZY_OR_NOW -# ifdef RTLD_LAZY -# define LT_DLLAZY_OR_NOW RTLD_LAZY -# else -# ifdef DL_LAZY -# define LT_DLLAZY_OR_NOW DL_LAZY -# else -# ifdef RTLD_NOW -# define LT_DLLAZY_OR_NOW RTLD_NOW -# else -# ifdef DL_NOW -# define LT_DLLAZY_OR_NOW DL_NOW -# else -# define LT_DLLAZY_OR_NOW 0 -# endif -# endif -# endif -# endif -#endif - -#ifdef __cplusplus -extern "C" void exit (int); -#endif - -void fnord() { int i=42;} -int main () -{ - void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); - int status = $lt_dlunknown; - - if (self) - { - if (dlsym (self,"fnord")) status = $lt_dlno_uscore; - else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; - /* dlclose (self); */ - } - - exit (status); -} -EOF - if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then - (./conftest; exit; ) 2>/dev/null - lt_status=$? - case x$lt_status in - x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;; - x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;; - x$lt_unknown|x*) lt_cv_dlopen_self_static=no ;; - esac - else : - # compilation failed - lt_cv_dlopen_self_static=no - fi -fi -rm -fr conftest* - - -fi -echo "$as_me:$LINENO: result: $lt_cv_dlopen_self_static" >&5 -echo "${ECHO_T}$lt_cv_dlopen_self_static" >&6 - fi - - CPPFLAGS="$save_CPPFLAGS" - LDFLAGS="$save_LDFLAGS" - LIBS="$save_LIBS" - ;; - esac - - case $lt_cv_dlopen_self in - yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; - *) enable_dlopen_self=unknown ;; - esac - - case $lt_cv_dlopen_self_static in - yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; - *) enable_dlopen_self_static=unknown ;; - esac -fi - - -if test "$enable_shared" = yes && test "$GCC" = yes; then - case $archive_cmds in - *'~'*) - # FIXME: we may have to deal with multi-command sequences. - ;; - '$CC '*) - # Test whether the compiler implicitly links with -lc since on some - # systems, -lgcc has to come before -lc. If gcc already passes -lc - # to ld, don't add -lc before -lgcc. - echo "$as_me:$LINENO: checking whether -lc should be explicitly linked in" >&5 -echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >&6 - if test "${lt_cv_archive_cmds_need_lc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - $rm conftest* - echo 'static int dummy;' > conftest.$ac_ext - - if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - soname=conftest - lib=conftest - libobjs=conftest.$ac_objext - deplibs= - wl=$lt_cv_prog_cc_wl - compiler_flags=-v - linker_flags=-v - verstring= - output_objdir=. - libname=conftest - save_allow_undefined_flag=$allow_undefined_flag - allow_undefined_flag= - if { (eval echo "$as_me:$LINENO: \"$archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1\"") >&5 - (eval $archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } - then - lt_cv_archive_cmds_need_lc=no - else - lt_cv_archive_cmds_need_lc=yes - fi - allow_undefined_flag=$save_allow_undefined_flag - else - cat conftest.err 1>&5 - fi -fi - - echo "$as_me:$LINENO: result: $lt_cv_archive_cmds_need_lc" >&5 -echo "${ECHO_T}$lt_cv_archive_cmds_need_lc" >&6 - ;; - esac -fi -need_lc=${lt_cv_archive_cmds_need_lc-yes} - -# The second clause should only fire when bootstrapping the -# libtool distribution, otherwise you forgot to ship ltmain.sh -# with your package, and you will get complaints that there are -# no rules to generate ltmain.sh. -if test -f "$ltmain"; then - : -else - # If there is no Makefile yet, we rely on a make rule to execute - # `config.status --recheck' to rerun these tests and create the - # libtool script then. - test -f Makefile && make "$ltmain" -fi - -if test -f "$ltmain"; then - trap "$rm \"${ofile}T\"; exit 1" 1 2 15 - $rm -f "${ofile}T" - - echo creating $ofile - - # Now quote all the things that may contain metacharacters while being - # careful not to overquote the AC_SUBSTed values. We take copies of the - # variables and quote the copies for generation of the libtool script. - for var in echo old_CC old_CFLAGS SED \ - AR AR_FLAGS CC LD LN_S NM SHELL \ - reload_flag reload_cmds wl \ - pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \ - thread_safe_flag_spec whole_archive_flag_spec libname_spec \ - library_names_spec soname_spec \ - RANLIB old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \ - old_postuninstall_cmds archive_cmds archive_expsym_cmds postinstall_cmds \ - postuninstall_cmds extract_expsyms_cmds old_archive_from_expsyms_cmds \ - old_striplib striplib file_magic_cmd export_symbols_cmds \ - deplibs_check_method allow_undefined_flag no_undefined_flag \ - finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \ - global_symbol_to_c_name_address \ - hardcode_libdir_flag_spec hardcode_libdir_separator \ - sys_lib_search_path_spec sys_lib_dlsearch_path_spec \ - compiler_c_o compiler_o_lo need_locks exclude_expsyms include_expsyms; do - - case $var in - reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \ - old_postinstall_cmds | old_postuninstall_cmds | \ - export_symbols_cmds | archive_cmds | archive_expsym_cmds | \ - extract_expsyms_cmds | old_archive_from_expsyms_cmds | \ - postinstall_cmds | postuninstall_cmds | \ - finish_cmds | sys_lib_search_path_spec | sys_lib_dlsearch_path_spec) - # Double-quote double-evaled strings. - eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" - ;; - *) - eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\"" - ;; - esac - done - - cat <<__EOF__ > "${ofile}T" -#! $SHELL - -# `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. -# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP) -# NOTE: Changes made to this file will be lost: look at ltmain.sh. -# -# Copyright (C) 1996-2000 Free Software Foundation, Inc. -# Originally by Gordon Matzigkeit , 1996 -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# A sed that does not truncate output. -SED=$lt_SED - -# Sed that helps us avoid accidentally triggering echo(1) options like -n. -Xsed="${SED} -e s/^X//" - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi - -# ### BEGIN LIBTOOL CONFIG - -# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: - -# Shell to use when invoking shell scripts. -SHELL=$lt_SHELL - -# Whether or not to build shared libraries. -build_libtool_libs=$enable_shared - -# Whether or not to build static libraries. -build_old_libs=$enable_static - -# Whether or not to add -lc for building shared libraries. -build_libtool_need_lc=$need_lc - -# Whether or not to optimize for fast installation. -fast_install=$enable_fast_install - -# The host system. -host_alias=$host_alias -host=$host - -# An echo program that does not interpret backslashes. -echo=$lt_echo - -# The archiver. -AR=$lt_AR -AR_FLAGS=$lt_AR_FLAGS - -# The default C compiler. -CC=$lt_CC - -# Is the compiler the GNU C compiler? -with_gcc=$GCC - -# The linker used to build libraries. -LD=$lt_LD - -# Whether we need hard or soft links. -LN_S=$lt_LN_S - -# A BSD-compatible nm program. -NM=$lt_NM - -# A symbol stripping program -STRIP=$STRIP - -# Used to examine libraries when file_magic_cmd begins "file" -MAGIC_CMD=$MAGIC_CMD - -# Used on cygwin: DLL creation program. -DLLTOOL="$DLLTOOL" - -# Used on cygwin: object dumper. -OBJDUMP="$OBJDUMP" - -# Used on cygwin: assembler. -AS="$AS" - -# The name of the directory that contains temporary libtool files. -objdir=$objdir - -# How to create reloadable object files. -reload_flag=$lt_reload_flag -reload_cmds=$lt_reload_cmds - -# How to pass a linker flag through the compiler. -wl=$lt_wl - -# Object file suffix (normally "o"). -objext="$ac_objext" - -# Old archive suffix (normally "a"). -libext="$libext" - -# Executable file suffix (normally ""). -exeext="$exeext" - -# Additional compiler flags for building library objects. -pic_flag=$lt_pic_flag -pic_mode=$pic_mode - -# Does compiler simultaneously support -c and -o options? -compiler_c_o=$lt_compiler_c_o - -# Can we write directly to a .lo ? -compiler_o_lo=$lt_compiler_o_lo - -# Must we lock files when doing compilation ? -need_locks=$lt_need_locks - -# Do we need the lib prefix for modules? -need_lib_prefix=$need_lib_prefix - -# Do we need a version for libraries? -need_version=$need_version - -# Whether dlopen is supported. -dlopen_support=$enable_dlopen - -# Whether dlopen of programs is supported. -dlopen_self=$enable_dlopen_self - -# Whether dlopen of statically linked programs is supported. -dlopen_self_static=$enable_dlopen_self_static - -# Compiler flag to prevent dynamic linking. -link_static_flag=$lt_link_static_flag - -# Compiler flag to turn off builtin functions. -no_builtin_flag=$lt_no_builtin_flag - -# Compiler flag to allow reflexive dlopens. -export_dynamic_flag_spec=$lt_export_dynamic_flag_spec - -# Compiler flag to generate shared objects directly from archives. -whole_archive_flag_spec=$lt_whole_archive_flag_spec - -# Compiler flag to generate thread-safe objects. -thread_safe_flag_spec=$lt_thread_safe_flag_spec - -# Library versioning type. -version_type=$version_type - -# Format of library name prefix. -libname_spec=$lt_libname_spec - -# List of archive names. First name is the real one, the rest are links. -# The last name is the one that the linker finds with -lNAME. -library_names_spec=$lt_library_names_spec - -# The coded name of the library, if different from the real name. -soname_spec=$lt_soname_spec - -# Commands used to build and install an old-style archive. -RANLIB=$lt_RANLIB -old_archive_cmds=$lt_old_archive_cmds -old_postinstall_cmds=$lt_old_postinstall_cmds -old_postuninstall_cmds=$lt_old_postuninstall_cmds - -# Create an old-style archive from a shared archive. -old_archive_from_new_cmds=$lt_old_archive_from_new_cmds - -# Create a temporary old-style archive to link instead of a shared archive. -old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds - -# Commands used to build and install a shared archive. -archive_cmds=$lt_archive_cmds -archive_expsym_cmds=$lt_archive_expsym_cmds -postinstall_cmds=$lt_postinstall_cmds -postuninstall_cmds=$lt_postuninstall_cmds - -# Commands to strip libraries. -old_striplib=$lt_old_striplib -striplib=$lt_striplib - -# Method to check whether dependent libraries are shared objects. -deplibs_check_method=$lt_deplibs_check_method - -# Command to use when deplibs_check_method == file_magic. -file_magic_cmd=$lt_file_magic_cmd - -# Flag that allows shared libraries with undefined symbols to be built. -allow_undefined_flag=$lt_allow_undefined_flag - -# Flag that forces no undefined symbols. -no_undefined_flag=$lt_no_undefined_flag - -# Commands used to finish a libtool library installation in a directory. -finish_cmds=$lt_finish_cmds - -# Same as above, but a single script fragment to be evaled but not shown. -finish_eval=$lt_finish_eval - -# Take the output of nm and produce a listing of raw symbols and C names. -global_symbol_pipe=$lt_global_symbol_pipe - -# Transform the output of nm in a proper C declaration -global_symbol_to_cdecl=$lt_global_symbol_to_cdecl - -# Transform the output of nm in a C name address pair -global_symbol_to_c_name_address=$lt_global_symbol_to_c_name_address - -# This is the shared library runtime path variable. -runpath_var=$runpath_var - -# This is the shared library path variable. -shlibpath_var=$shlibpath_var - -# Is shlibpath searched before the hard-coded library search path? -shlibpath_overrides_runpath=$shlibpath_overrides_runpath - -# How to hardcode a shared library path into an executable. -hardcode_action=$hardcode_action - -# Whether we should hardcode library paths into libraries. -hardcode_into_libs=$hardcode_into_libs - -# Flag to hardcode \$libdir into a binary during linking. -# This must work even if \$libdir does not exist. -hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec - -# Whether we need a single -rpath flag with a separated argument. -hardcode_libdir_separator=$lt_hardcode_libdir_separator - -# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the -# resulting binary. -hardcode_direct=$hardcode_direct - -# Set to yes if using the -LDIR flag during linking hardcodes DIR into the -# resulting binary. -hardcode_minus_L=$hardcode_minus_L - -# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into -# the resulting binary. -hardcode_shlibpath_var=$hardcode_shlibpath_var - -# Variables whose values should be saved in libtool wrapper scripts and -# restored at relink time. -variables_saved_for_relink="$variables_saved_for_relink" - -# Whether libtool must link a program against all its dependency libraries. -link_all_deplibs=$link_all_deplibs - -# Compile-time system search path for libraries -sys_lib_search_path_spec=$lt_sys_lib_search_path_spec - -# Run-time system search path for libraries -sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec - -# Fix the shell variable \$srcfile for the compiler. -fix_srcfile_path="$fix_srcfile_path" - -# Set to yes if exported symbols are required. -always_export_symbols=$always_export_symbols - -# The commands to list exported symbols. -export_symbols_cmds=$lt_export_symbols_cmds - -# The commands to extract the exported symbol list from a shared archive. -extract_expsyms_cmds=$lt_extract_expsyms_cmds - -# Symbols that should not be listed in the preloaded symbols. -exclude_expsyms=$lt_exclude_expsyms - -# Symbols that must always be exported. -include_expsyms=$lt_include_expsyms - -# ### END LIBTOOL CONFIG - -__EOF__ - - case $host_os in - aix3*) - cat <<\EOF >> "${ofile}T" - -# 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. -if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES -fi -EOF - ;; - esac - - case $host_os in - cygwin* | mingw* | pw32* | os2*) - cat <<'EOF' >> "${ofile}T" - # This is a source program that is used to create dlls on Windows - # Don't remove nor modify the starting and closing comments -# /* ltdll.c starts here */ -# #define WIN32_LEAN_AND_MEAN -# #include -# #undef WIN32_LEAN_AND_MEAN -# #include -# -# #ifndef __CYGWIN__ -# # ifdef __CYGWIN32__ -# # define __CYGWIN__ __CYGWIN32__ -# # endif -# #endif -# -# #ifdef __cplusplus -# extern "C" { -# #endif -# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved); -# #ifdef __cplusplus -# } -# #endif -# -# #ifdef __CYGWIN__ -# #include -# DECLARE_CYGWIN_DLL( DllMain ); -# #endif -# HINSTANCE __hDllInstance_base; -# -# BOOL APIENTRY -# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved) -# { -# __hDllInstance_base = hInst; -# return TRUE; -# } -# /* ltdll.c ends here */ - # This is a source program that is used to create import libraries - # on Windows for dlls which lack them. Don't remove nor modify the - # starting and closing comments -# /* impgen.c starts here */ -# /* Copyright (C) 1999-2000 Free Software Foundation, Inc. -# -# This file is part of GNU libtool. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# */ -# -# #include /* for printf() */ -# #include /* for open(), lseek(), read() */ -# #include /* for O_RDONLY, O_BINARY */ -# #include /* for strdup() */ -# -# /* O_BINARY isn't required (or even defined sometimes) under Unix */ -# #ifndef O_BINARY -# #define O_BINARY 0 -# #endif -# -# static unsigned int -# pe_get16 (fd, offset) -# int fd; -# int offset; -# { -# unsigned char b[2]; -# lseek (fd, offset, SEEK_SET); -# read (fd, b, 2); -# return b[0] + (b[1]<<8); -# } -# -# static unsigned int -# pe_get32 (fd, offset) -# int fd; -# int offset; -# { -# unsigned char b[4]; -# lseek (fd, offset, SEEK_SET); -# read (fd, b, 4); -# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24); -# } -# -# static unsigned int -# pe_as32 (ptr) -# void *ptr; -# { -# unsigned char *b = ptr; -# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24); -# } -# -# int -# main (argc, argv) -# int argc; -# char *argv[]; -# { -# int dll; -# unsigned long pe_header_offset, opthdr_ofs, num_entries, i; -# unsigned long export_rva, export_size, nsections, secptr, expptr; -# unsigned long name_rvas, nexp; -# unsigned char *expdata, *erva; -# char *filename, *dll_name; -# -# filename = argv[1]; -# -# dll = open(filename, O_RDONLY|O_BINARY); -# if (dll < 1) -# return 1; -# -# dll_name = filename; -# -# for (i=0; filename[i]; i++) -# if (filename[i] == '/' || filename[i] == '\\' || filename[i] == ':') -# dll_name = filename + i +1; -# -# pe_header_offset = pe_get32 (dll, 0x3c); -# opthdr_ofs = pe_header_offset + 4 + 20; -# num_entries = pe_get32 (dll, opthdr_ofs + 92); -# -# if (num_entries < 1) /* no exports */ -# return 1; -# -# export_rva = pe_get32 (dll, opthdr_ofs + 96); -# export_size = pe_get32 (dll, opthdr_ofs + 100); -# nsections = pe_get16 (dll, pe_header_offset + 4 +2); -# secptr = (pe_header_offset + 4 + 20 + -# pe_get16 (dll, pe_header_offset + 4 + 16)); -# -# expptr = 0; -# for (i = 0; i < nsections; i++) -# { -# char sname[8]; -# unsigned long secptr1 = secptr + 40 * i; -# unsigned long vaddr = pe_get32 (dll, secptr1 + 12); -# unsigned long vsize = pe_get32 (dll, secptr1 + 16); -# unsigned long fptr = pe_get32 (dll, secptr1 + 20); -# lseek(dll, secptr1, SEEK_SET); -# read(dll, sname, 8); -# if (vaddr <= export_rva && vaddr+vsize > export_rva) -# { -# expptr = fptr + (export_rva - vaddr); -# if (export_rva + export_size > vaddr + vsize) -# export_size = vsize - (export_rva - vaddr); -# break; -# } -# } -# -# expdata = (unsigned char*)malloc(export_size); -# lseek (dll, expptr, SEEK_SET); -# read (dll, expdata, export_size); -# erva = expdata - export_rva; -# -# nexp = pe_as32 (expdata+24); -# name_rvas = pe_as32 (expdata+32); -# -# printf ("EXPORTS\n"); -# for (i = 0; i> "${ofile}T" || (rm -f "${ofile}T"; exit 1) - - mv -f "${ofile}T" "$ofile" || \ - (rm -f "$ofile" && cp "${ofile}T" "$ofile" && rm -f "${ofile}T") - chmod +x "$ofile" -fi - - - - - -# This can be used to rebuild libtool when needed -LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh" - -# Always use our own libtool. -LIBTOOL='$(SHELL) $(top_builddir)/libtool' - -# Prevent multiple expansion - - -echo "$as_me:$LINENO: checking for working void" >&5 -echo $ECHO_N "checking for working void... $ECHO_C" >&6 -if test "${cl_cv_c_void+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ -void f(); -typedef void x; x g(); -typedef void* y; y a; - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cl_cv_c_void=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -cl_cv_c_void=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - -fi - -echo "$as_me:$LINENO: result: $cl_cv_c_void" >&5 -echo "${ECHO_T}$cl_cv_c_void" >&6 -if test $cl_cv_c_void = yes; then - have_void=1 -else - -cat >>confdefs.h <<\_ACEOF -#define void char -_ACEOF - -fi -if test -n "$have_void"; then -echo "$as_me:$LINENO: checking for working \"return void\"" >&5 -echo $ECHO_N "checking for working \"return void\"... $ECHO_C" >&6 -if test "${cl_cv_c_return_void+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -void f() {} typedef void x; x g() { return f(); } -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cl_cv_c_return_void=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -cl_cv_c_return_void=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - -fi - -echo "$as_me:$LINENO: result: $cl_cv_c_return_void" >&5 -echo "${ECHO_T}$cl_cv_c_return_void" >&6 -if test $cl_cv_c_return_void = yes; then - cl_cv_c_return_void_form=return -else - cl_cv_c_return_void_form="" -fi - -fi - -cat >>confdefs.h <<_ACEOF -#define return_void $cl_cv_c_return_void_form -_ACEOF - - -echo "$as_me:$LINENO: checking for ANSI C header files" >&5 -echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 -if test "${cl_cv_header_stdc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include -#include -#include -#include -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - cl_cv_header_stdc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - cl_cv_header_stdc=no -fi -rm -f conftest.err conftest.$ac_ext - -fi - -echo "$as_me:$LINENO: result: $cl_cv_header_stdc" >&5 -echo "${ECHO_T}$cl_cv_header_stdc" >&6 -if test $cl_cv_header_stdc = yes; then - cat >>confdefs.h <<\_ACEOF -#define STDC_HEADERS 1 -_ACEOF - -fi - - - -for ac_header in unistd_h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_header_compiler=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 - -# Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------------ ## -## Report this to the AC_PACKAGE_NAME lists. ## -## ------------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - -echo "$as_me:$LINENO: checking for getpagesize" >&5 -echo $ECHO_N "checking for getpagesize... $ECHO_C" >&6 -if test "${cl_cv_func_getpagesize+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -#ifdef HAVE_UNISTD_H -#include -#include -#endif - -int -main () -{ -getpagesize(); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cl_cv_func_getpagesize=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -cl_cv_func_getpagesize=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - -fi - -echo "$as_me:$LINENO: result: $cl_cv_func_getpagesize" >&5 -echo "${ECHO_T}$cl_cv_func_getpagesize" >&6 -if test $cl_cv_func_getpagesize = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_GETPAGESIZE -_ACEOF - -have_getpagesize=1 -fi -if test -n "$have_getpagesize"; then -echo "$as_me:$LINENO: checking for getpagesize declaration" >&5 -echo $ECHO_N "checking for getpagesize declaration... $ECHO_C" >&6 -if test "${cl_cv_proto_getpagesize+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -#include -#ifdef HAVE_UNISTD_H -#include -#endif - -extern -#ifdef __cplusplus -"C" -#endif - -#if defined(__STDC__) || defined(__cplusplus) -int getpagesize(); -#else -int getpagesize(); -#endif - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cl_cv_proto_getpagesize_ret="int" -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -cl_cv_proto_getpagesize_ret="size_t" -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - - -cl_cv_proto_getpagesize="extern $cl_cv_proto_getpagesize_ret getpagesize (void);" -fi - -cl_cv_proto_getpagesize=`echo "$cl_cv_proto_getpagesize" | tr -s ' ' | sed -e 's/( /(/'` -echo "$as_me:$LINENO: result: ${ac_t:- - }$cl_cv_proto_getpagesize" >&5 -echo "${ECHO_T}${ac_t:- - }$cl_cv_proto_getpagesize" >&6 - - -cat >>confdefs.h <<_ACEOF -#define RETGETPAGESIZETYPE $cl_cv_proto_getpagesize_ret -_ACEOF - -else - -for ac_header in sys/param.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_header_compiler=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 - -# Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------------ ## -## Report this to the AC_PACKAGE_NAME lists. ## -## ------------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - -fi - -echo "$as_me:$LINENO: checking for vm_allocate" >&5 -echo $ECHO_N "checking for vm_allocate... $ECHO_C" >&6 -if test "${cl_cv_func_vm+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ -vm_allocate(); task_self(); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cl_cv_func_vm=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -cl_cv_func_vm=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - -fi - -echo "$as_me:$LINENO: result: $cl_cv_func_vm" >&5 -echo "${ECHO_T}$cl_cv_func_vm" >&6 -if test $cl_cv_func_vm = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_MACH_VM -_ACEOF - -fi - - - -for ac_header in sys/file.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_header_compiler=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 - -# Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------------ ## -## Report this to the AC_PACKAGE_NAME lists. ## -## ------------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - -if test $ac_cv_header_sys_file_h = yes; then -openflags_decl=' -#include -#ifdef HAVE_UNISTD_H -#include -#include -#endif -#include -' -openflags_prog='int x = O_RDWR | O_RDONLY | O_WRONLY | O_CREAT | O_TRUNC;' -echo "$as_me:$LINENO: checking for O_RDWR in fcntl.h" >&5 -echo $ECHO_N "checking for O_RDWR in fcntl.h... $ECHO_C" >&6 -if test "${cl_cv_decl_O_RDWR_fcntl_h+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$openflags_decl -int -main () -{ -$openflags_prog - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cl_cv_decl_O_RDWR_fcntl_h=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -cl_cv_decl_O_RDWR_fcntl_h=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - -fi - -echo "$as_me:$LINENO: result: $cl_cv_decl_O_RDWR_fcntl_h" >&5 -echo "${ECHO_T}$cl_cv_decl_O_RDWR_fcntl_h" >&6 -if test $cl_cv_decl_O_RDWR_fcntl_h = yes; then - openflags_ok=1 -fi -if test -z "$openflags_ok"; then - -cat >>confdefs.h <<\_ACEOF -#define OPEN_NEEDS_SYS_FILE_H -_ACEOF - -fi -fi - - -if test "${ac_cv_header_sys_mman_h+set}" = set; then - echo "$as_me:$LINENO: checking for sys/mman.h" >&5 -echo $ECHO_N "checking for sys/mman.h... $ECHO_C" >&6 -if test "${ac_cv_header_sys_mman_h+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -echo "$as_me:$LINENO: result: $ac_cv_header_sys_mman_h" >&5 -echo "${ECHO_T}$ac_cv_header_sys_mman_h" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking sys/mman.h usability" >&5 -echo $ECHO_N "checking sys/mman.h usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_header_compiler=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 - -# Is the header present? -echo "$as_me:$LINENO: checking sys/mman.h presence" >&5 -echo $ECHO_N "checking sys/mman.h presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: sys/mman.h: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: sys/mman.h: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: sys/mman.h: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: sys/mman.h: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: sys/mman.h: present but cannot be compiled" >&5 -echo "$as_me: WARNING: sys/mman.h: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: sys/mman.h: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: sys/mman.h: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: sys/mman.h: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: sys/mman.h: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: sys/mman.h: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: sys/mman.h: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: sys/mman.h: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: sys/mman.h: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: sys/mman.h: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: sys/mman.h: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------------ ## -## Report this to the AC_PACKAGE_NAME lists. ## -## ------------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for sys/mman.h" >&5 -echo $ECHO_N "checking for sys/mman.h... $ECHO_C" >&6 -if test "${ac_cv_header_sys_mman_h+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_cv_header_sys_mman_h=$ac_header_preproc -fi -echo "$as_me:$LINENO: result: $ac_cv_header_sys_mman_h" >&5 -echo "${ECHO_T}$ac_cv_header_sys_mman_h" >&6 - -fi -if test $ac_cv_header_sys_mman_h = yes; then - : -else - no_mmap=1 -fi - -if test -z "$no_mmap"; then -echo "$as_me:$LINENO: checking for mmap" >&5 -echo $ECHO_N "checking for mmap... $ECHO_C" >&6 -if test "${ac_cv_func_mmap+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* Define mmap to an innocuous variant, in case declares mmap. - For example, HP-UX 11i declares gettimeofday. */ -#define mmap innocuous_mmap - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char mmap (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef mmap - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -{ -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char mmap (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_mmap) || defined (__stub___mmap) -choke me -#else -char (*f) () = mmap; -#endif -#ifdef __cplusplus -} -#endif - -int -main () -{ -return f != mmap; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_mmap=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_func_mmap=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_func_mmap" >&5 -echo "${ECHO_T}$ac_cv_func_mmap" >&6 -if test $ac_cv_func_mmap = yes; then - : -else - no_mmap=1 -fi -if test -z "$no_mmap"; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_MMAP -_ACEOF - -echo "$as_me:$LINENO: checking for working mmap" >&5 -echo $ECHO_N "checking for working mmap... $ECHO_C" >&6 -if test "${cl_cv_func_mmap_works+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -case "$host" in - i3456786-*-sysv4*) - # UNIX_SYSV_UHC_1 - avoid=0x08000000 ;; - mips-sgi-irix* | mips-dec-ultrix*) - # UNIX_IRIX, UNIX_DEC_ULTRIX - avoid=0x10000000 ;; - rs6000-ibm-aix*) - # UNIX_AIX - avoid=0x20000000 ;; - *) - avoid=0 ;; -esac -mmap_prog_1=' -#include -#ifdef HAVE_UNISTD_H -#include -#endif -#include -#ifdef OPEN_NEEDS_SYS_FILE_H -#include -#endif -#include -#include -int main () { -' -mmap_prog_2="#define bits_to_avoid $avoid"' -#define my_shift 24 -#define my_low 1 -#ifdef FOR_SUN4_29 -#define my_high 31 -#define my_size 32768 /* hope that 32768 is a multiple of the page size */ -/* i*32 KB for i=1..31 gives a total of 15.5 MB, which is close to what we need */ -#else -#define my_high 64 -#define my_size 8192 /* hope that 8192 is a multiple of the page size */ -/* i*8 KB for i=1..64 gives a total of 16.25 MB, which is close to what we need */ -#endif - {long i; -#define i_ok(i) ((i) & (bits_to_avoid >> my_shift) == 0) - for (i=my_low; i<=my_high; i++) - if (i_ok(i)) - { caddr_t addr = (caddr_t)(i << my_shift); -/* Check for 8 MB, not 16 MB. This is more likely to work on Solaris 2. */ -#if bits_to_avoid - long size = i*my_size; -#else - long size = ((i+1)/2)*my_size; -#endif - if (mmap(addr,size,PROT_READ|PROT_WRITE,flags|MAP_FIXED,fd,0) == (void*)-1) exit(1); - } -#define x(i) *(unsigned char *) ((i<=my_low; i--) if (i_ok(i)) { if (x(i) != y(i)) exit(1); } - exit(0); -}} -' -if test "$cross_compiling" = yes; then - : # When cross-compiling, don't assume anything. - -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$mmap_prog_1 - int flags = MAP_ANON | MAP_PRIVATE; - int fd = -1; -$mmap_prog_2 - -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - have_mmap_anon=1 -cl_cv_func_mmap_anon=yes -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -rm -f core -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -if test "$cross_compiling" = yes; then - : # When cross-compiling, don't assume anything. - -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$mmap_prog_1 - int flags = MAP_ANONYMOUS | MAP_PRIVATE; - int fd = -1; -$mmap_prog_2 - -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - have_mmap_anon=1 -cl_cv_func_mmap_anonymous=yes -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -rm -f core -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -if test "$cross_compiling" = yes; then - : # When cross-compiling, don't assume anything. - -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$mmap_prog_1 -#ifndef MAP_FILE -#define MAP_FILE 0 -#endif - int flags = MAP_FILE | MAP_PRIVATE; - int fd = open("/dev/zero",O_RDONLY,0666); - if (fd<0) exit(1); -$mmap_prog_2 - -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - have_mmap_devzero=1 -cl_cv_func_mmap_devzero=yes -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -rm -f core -retry_mmap=1 -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -if test -n "$retry_mmap"; then -if test "$cross_compiling" = yes; then - : # When cross-compiling, don't assume anything. - -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#define FOR_SUN4_29 -$mmap_prog_1 -#ifndef MAP_FILE -#define MAP_FILE 0 -#endif - int flags = MAP_FILE | MAP_PRIVATE; - int fd = open("/dev/zero",O_RDONLY,0666); - if (fd<0) exit(1); -$mmap_prog_2 - -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - have_mmap_devzero=1 -cl_cv_func_mmap_devzero_sun4_29=yes -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -rm -f core -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -fi -if test -n "$have_mmap_anon" -o -n "$have_mmap_devzero"; then -cl_cv_func_mmap_works=yes -else -cl_cv_func_mmap_works=no -fi - -fi -echo "$as_me:$LINENO: result: $cl_cv_func_mmap_works" >&5 -echo "${ECHO_T}$cl_cv_func_mmap_works" >&6 -if test "$cl_cv_func_mmap_anon" = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_MMAP_ANON -_ACEOF - -fi -if test "$cl_cv_func_mmap_anonymous" = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_MMAP_ANONYMOUS -_ACEOF - -fi -if test "$cl_cv_func_mmap_devzero" = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_MMAP_DEVZERO -_ACEOF - -fi -if test "$cl_cv_func_mmap_devzero_sun4_29" = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_MMAP_DEVZERO_SUN4_29 -_ACEOF - -fi -fi -fi - - -for ac_func in mprotect -do -as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` -echo "$as_me:$LINENO: checking for $ac_func" >&5 -echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 -if eval "test \"\${$as_ac_var+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* Define $ac_func to an innocuous variant, in case declares $ac_func. - For example, HP-UX 11i declares gettimeofday. */ -#define $ac_func innocuous_$ac_func - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $ac_func (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef $ac_func - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -{ -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char $ac_func (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_$ac_func) || defined (__stub___$ac_func) -choke me -#else -char (*f) () = $ac_func; -#endif -#ifdef __cplusplus -} -#endif - -int -main () -{ -return f != $ac_func; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - eval "$as_ac_var=yes" -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -eval "$as_ac_var=no" -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 -if test `eval echo '${'$as_ac_var'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 -_ACEOF - -fi -done -if test $ac_cv_func_mprotect = yes; then -echo "$as_me:$LINENO: checking for working mprotect" >&5 -echo $ECHO_N "checking for working mprotect... $ECHO_C" >&6 -if test "${cl_cv_func_mprotect_works+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -mprotect_prog=' -#include -/* declare malloc() */ -#include -#ifdef HAVE_UNISTD_H -#include -#endif -/* declare getpagesize() and mprotect() */ -#include -#ifndef HAVE_GETPAGESIZE -#include -#define getpagesize() PAGESIZE -#else -extern -#ifdef __cplusplus -"C" -#endif - -#if defined(__STDC__) || defined(__cplusplus) -RETGETPAGESIZETYPE getpagesize (void); -#else -RETGETPAGESIZETYPE getpagesize(); -#endif -#endif -char foo; -int main () { - unsigned long pagesize = getpagesize(); -#define page_align(address) (char*)((unsigned long)(address) & -pagesize) -' -if test "$cross_compiling" = yes; then - # When cross-compiling, don't assume anything. -no_mprotect=1 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$mprotect_prog - if ((pagesize-1) & pagesize) exit(1); - exit(0); } -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -no_mprotect=1 -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -mprotect_prog="$mprotect_prog"' - char* area = (char*) malloc(6*pagesize); - char* fault_address = area + pagesize*7/2; -' -if test -z "$no_mprotect"; then -if test "$cross_compiling" = yes; then - : # When cross-compiling, don't assume anything. - -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$mprotect_prog - if (mprotect(page_align(fault_address),pagesize,PROT_NONE) < 0) exit(0); - foo = *fault_address; /* this should cause a core dump */ - exit(0); } -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - no_mprotect=1 -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -rm -f core -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -fi -if test -z "$no_mprotect"; then -if test "$cross_compiling" = yes; then - : # When cross-compiling, don't assume anything. - -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$mprotect_prog - if (mprotect(page_align(fault_address),pagesize,PROT_NONE) < 0) exit(0); - *fault_address = 'z'; /* this should cause a core dump */ - exit(0); } -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - no_mprotect=1 -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -rm -f core -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -fi -if test -z "$no_mprotect"; then -if test "$cross_compiling" = yes; then - : # When cross-compiling, don't assume anything. - -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$mprotect_prog - if (mprotect(page_align(fault_address),pagesize,PROT_READ) < 0) exit(0); - *fault_address = 'z'; /* this should cause a core dump */ - exit(0); } -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - no_mprotect=1 -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -rm -f core -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -fi -if test -z "$no_mprotect"; then -if test "$cross_compiling" = yes; then - : # When cross-compiling, don't assume anything. - -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$mprotect_prog - if (mprotect(page_align(fault_address),pagesize,PROT_READ) < 0) exit(1); - if (mprotect(page_align(fault_address),pagesize,PROT_READ|PROT_WRITE) < 0) exit(1); - *fault_address = 'z'; /* this should not cause a core dump */ - exit(0); } -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -no_mprotect=1 -rm -f core -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -fi -if test -z "$no_mprotect"; then - cl_cv_func_mprotect_works=yes -else - cl_cv_func_mprotect_works=no -fi - -fi -echo "$as_me:$LINENO: result: $cl_cv_func_mprotect_works" >&5 -echo "${ECHO_T}$cl_cv_func_mprotect_works" >&6 -if test $cl_cv_func_mprotect_works = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_WORKING_MPROTECT -_ACEOF - -fi -fi - - -for ac_header in sys/shm.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_header_compiler=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 - -# Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------------ ## -## Report this to the AC_PACKAGE_NAME lists. ## -## ------------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - -if test $ac_cv_header_sys_shm_h = yes; then - -for ac_header in sys/ipc.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_header_compiler=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 - -# Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------------ ## -## Report this to the AC_PACKAGE_NAME lists. ## -## ------------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - -fi - -if test "$ac_cv_header_sys_shm_h" = yes -a "$ac_cv_header_sys_ipc_h" = yes; then -# This test is from Marcus Daniels -echo "$as_me:$LINENO: checking for working shared memory" >&5 -echo $ECHO_N "checking for working shared memory... $ECHO_C" >&6 -if test "${cl_cv_sys_shm_works+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -if test "$cross_compiling" = yes; then - cl_cv_sys_shm_works="guessing no" -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include -#include -/* try attaching a single segment to multiple addresses */ -#define segsize 0x10000 -#define attaches 128 -#define base_addr 0x01000000 -int main () -{ int shmid, i; char* addr; char* result; - if ((shmid = shmget(IPC_PRIVATE,segsize,0400)) < 0) exit(1); - for (i=0, addr = (char*)0x01000000; i&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cl_cv_sys_shm_works=yes -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -cl_cv_sys_shm_works=no -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi - -fi -echo "$as_me:$LINENO: result: $cl_cv_sys_shm_works" >&5 -echo "${ECHO_T}$cl_cv_sys_shm_works" >&6 -fi -case "$cl_cv_sys_shm_works" in - *yes) have_shm=1 - -cat >>confdefs.h <<\_ACEOF -#define HAVE_SHM -_ACEOF - - -for ac_header in sys/sysmacros.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_header_compiler=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 - -# Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------------ ## -## Report this to the AC_PACKAGE_NAME lists. ## -## ------------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - ;; - *) ;; -esac - -echo "$as_me:$LINENO: checking whether code in malloc'ed memory is executable" >&5 -echo $ECHO_N "checking whether code in malloc'ed memory is executable... $ECHO_C" >&6 -if test "${cl_cv_codeexec+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -case "$host_os" in - hpux*) cl_cv_codeexec="guessing yes" ;; - *) -case "$host_cpu" in - # On host=rs6000-*-aix3.2.5 malloc'ed memory is indeed not executable. - rs6000) cl_cv_codeexec="guessing no" ;; - *) -if test "$cross_compiling" = yes; then - cl_cv_codeexec="guessing yes" -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -#include -/* declare malloc() */ -#include -int fun () { return 31415926; } -int main () -{ long size = (char*)&main - (char*)&fun; - char* funcopy = (char*) malloc(size); - int i; - for (i = 0; i < size; i++) { funcopy[i] = ((char*)&fun)[i]; } - exit(!((*(int(*)())funcopy)() == 31415926)); -} -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cl_cv_codeexec=yes -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -rm -f core -cl_cv_codeexec=no -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi - ;; -esac - ;; -esac - -fi -echo "$as_me:$LINENO: result: $cl_cv_codeexec" >&5 -echo "${ECHO_T}$cl_cv_codeexec" >&6 -case "$cl_cv_codeexec" in - *yes) cat >>confdefs.h <<\_ACEOF -#define CODE_EXECUTABLE 1 -_ACEOF - ;; - *no) ;; -esac - -CPU_OBJECTS='' -if test ${host_cpu} = hppa -o ${host_cpu} = ia64; then - CPU_OBJECTS="$CPU_OBJECTS "'tramp-$(CPU).lo' -fi -if test ${host_cpu} = rs6000; then - case "${host_os}" in - aix*) CPU_OBJECTS="$CPU_OBJECTS "'tramp-$(CPU).lo' ;; - *) ;; - esac -fi -if test ${host_cpu} = sparc -o ${host_cpu} = sparc64 -o ${host_cpu} = alpha -o ${host_cpu} = hppa -o ${host_cpu} = convex; then - CPU_OBJECTS="$CPU_OBJECTS "'cache-$(CPU).lo' -fi -if test ${host_cpu} = rs6000; then - case "${host_os}" in - aix*) ;; - *) CPU_OBJECTS="$CPU_OBJECTS "'cache-$(CPU).lo' ;; - esac -fi - -if test ${host_cpu} = mips -o ${host_cpu} = mipsn32 -o ${host_cpu} = mips64; then - -for ac_header in sys/cachectl.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_header_compiler=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 - -# Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------------ ## -## Report this to the AC_PACKAGE_NAME lists. ## -## ------------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - -fi -if test ${host_cpu} = m88k; then - -for ac_header in sys/m88kbcs.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_header_compiler=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 - -# Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------------ ## -## Report this to the AC_PACKAGE_NAME lists. ## -## ------------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - -fi - ac_config_files="$ac_config_files Makefile" -cat >confcache <<\_ACEOF -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs, see configure's option --config-cache. -# It is not useful on other systems. If it contains results you don't -# want to keep, you may remove or edit it. -# -# config.status only pays attention to the cache file if you give it -# the --recheck option to rerun configure. -# -# `ac_cv_env_foo' variables (set or unset) will be overridden when -# loading this file, other *unset* `ac_cv_foo' will be assigned the -# following values. - -_ACEOF - -# The following way of writing the cache mishandles newlines in values, -# but we know of no workaround that is simple, portable, and efficient. -# So, don't put newlines in cache variables' values. -# Ultrix sh set writes to stderr and can't be redirected directly, -# and sets the high bit in the cache file unless we assign to the vars. -{ - (set) 2>&1 | - case `(ac_space=' '; set | grep ac_space) 2>&1` in - *ac_space=\ *) - # `set' does not quote correctly, so add quotes (double-quote - # substitution turns \\\\ into \\, and sed turns \\ into \). - sed -n \ - "s/'/'\\\\''/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" - ;; - *) - # `set' quotes correctly as required by POSIX, so do not add quotes. - sed -n \ - "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" - ;; - esac; -} | - sed ' - t clear - : clear - s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ - t end - /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ - : end' >>confcache -if diff $cache_file confcache >/dev/null 2>&1; then :; else - if test -w $cache_file; then - test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file" - cat confcache >$cache_file - else - echo "not updating unwritable cache $cache_file" - fi -fi -rm -f confcache - -test "x$prefix" = xNONE && prefix=$ac_default_prefix -# Let make expand exec_prefix. -test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' - -# VPATH may cause trouble with some makes, so we remove $(srcdir), -# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and -# trailing colons and then remove the whole line if VPATH becomes empty -# (actually we leave an empty line to preserve line numbers). -if test "x$srcdir" = x.; then - ac_vpsub='/^[ ]*VPATH[ ]*=/{ -s/:*\$(srcdir):*/:/; -s/:*\${srcdir}:*/:/; -s/:*@srcdir@:*/:/; -s/^\([^=]*=[ ]*\):*/\1/; -s/:*$//; -s/^[^=]*=[ ]*$//; -}' -fi - -DEFS=-DHAVE_CONFIG_H - -ac_libobjs= -ac_ltlibobjs= -for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue - # 1. Remove the extension, and $U if already installed. - ac_i=`echo "$ac_i" | - sed 's/\$U\././;s/\.o$//;s/\.obj$//'` - # 2. Add them. - ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext" - ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo' -done -LIBOBJS=$ac_libobjs - -LTLIBOBJS=$ac_ltlibobjs - - - -: ${CONFIG_STATUS=./config.status} -ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files $CONFIG_STATUS" -{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5 -echo "$as_me: creating $CONFIG_STATUS" >&6;} -cat >$CONFIG_STATUS <<_ACEOF -#! $SHELL -# Generated by $as_me. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false -SHELL=\${CONFIG_SHELL-$SHELL} -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## - -# Be Bourne compatible -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' -elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then - set -o posix -fi -DUALCASE=1; export DUALCASE # for MKS sh - -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - - -# Work around bugs in pre-3.0 UWIN ksh. -$as_unset ENV MAIL MAILPATH -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -for as_var in \ - LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ - LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ - LC_TELEPHONE LC_TIME -do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var - else - $as_unset $as_var - fi -done - -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - - -# Name of the executable. -as_me=`$as_basename "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)$' \| \ - . : '\(.\)' 2>/dev/null || -echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } - /^X\/\(\/\/\)$/{ s//\1/; q; } - /^X\/\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - - -# PATH needs CR, and LINENO needs CR and PATH. -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" || { - # Find who we are. Look in the path if we contain no path at all - # relative or not. - case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done - - ;; - esac - # We did not find ourselves, most probably we were run as `sh COMMAND' - # in which case we are not to be found in the path. - if test "x$as_myself" = x; then - as_myself=$0 - fi - if test ! -f "$as_myself"; then - { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5 -echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;} - { (exit 1); exit 1; }; } - fi - case $CONFIG_SHELL in - '') - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for as_base in sh bash ksh sh5; do - case $as_dir in - /*) - if ("$as_dir/$as_base" -c ' - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then - $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } - $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } - CONFIG_SHELL=$as_dir/$as_base - export CONFIG_SHELL - exec "$CONFIG_SHELL" "$0" ${1+"$@"} - fi;; - esac - done -done -;; - esac - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line before each line; the second 'sed' does the real - # work. The second script uses 'N' to pair each line-number line - # with the numbered line, and appends trailing '-' during - # substitution so that $LINENO is not a special case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) - sed '=' <$as_myself | - sed ' - N - s,$,-, - : loop - s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, - t loop - s,-$,, - s,^['$as_cr_digits']*\n,, - ' >$as_me.lineno && - chmod +x $as_me.lineno || - { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5 -echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;} - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensible to this). - . ./$as_me.lineno - # Exit status is that of the last command. - exit -} - - -case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in - *c*,-n*) ECHO_N= ECHO_C=' -' ECHO_T=' ' ;; - *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; - *) ECHO_N= ECHO_C='\c' ECHO_T= ;; -esac - -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -rm -f conf$$ conf$$.exe conf$$.file -echo >conf$$.file -if ln -s conf$$.file conf$$ 2>/dev/null; then - # We could just check for DJGPP; but this test a) works b) is more generic - # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). - if test -f conf$$.exe; then - # Don't use ln at all; we don't have any links - as_ln_s='cp -p' - else - as_ln_s='ln -s' - fi -elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.file - -if mkdir -p . 2>/dev/null; then - as_mkdir_p=: -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -as_executable_p="test -f" - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -# IFS -# We need space, tab and new line, in precisely that order. -as_nl=' -' -IFS=" $as_nl" - -# CDPATH. -$as_unset CDPATH - -exec 6>&1 - -# Open the log real soon, to keep \$[0] and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. Logging --version etc. is OK. -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX -} >&5 -cat >&5 <<_CSEOF - -This file was extended by $as_me, which was -generated by GNU Autoconf 2.59. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -_CSEOF -echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5 -echo >&5 -_ACEOF - -# Files that config.status was made for. -if test -n "$ac_config_files"; then - echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS -fi - -if test -n "$ac_config_headers"; then - echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS -fi - -if test -n "$ac_config_links"; then - echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS -fi - -if test -n "$ac_config_commands"; then - echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS -fi - -cat >>$CONFIG_STATUS <<\_ACEOF - -ac_cs_usage="\ -\`$as_me' instantiates files from templates according to the -current configuration. - -Usage: $0 [OPTIONS] [FILE]... - - -h, --help print this help, then exit - -V, --version print version number, then exit - -q, --quiet do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - --header=FILE[:TEMPLATE] - instantiate the configuration header FILE - -Configuration files: -$config_files - -Configuration headers: -$config_headers - -Report bugs to ." -_ACEOF - -cat >>$CONFIG_STATUS <<_ACEOF -ac_cs_version="\\ -config.status -configured by $0, generated by GNU Autoconf 2.59, - with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" - -Copyright (C) 2003 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." -srcdir=$srcdir -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF -# If no file are specified by the user, then we need to provide default -# value. By we need to know if files were specified by the user. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=*) - ac_option=`expr "x$1" : 'x\([^=]*\)='` - ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'` - ac_shift=: - ;; - -*) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - *) # This is not an option, so the user has probably given explicit - # arguments. - ac_option=$1 - ac_need_defaults=false;; - esac - - case $ac_option in - # Handling of the options. -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --vers* | -V ) - echo "$ac_cs_version"; exit 0 ;; - --he | --h) - # Conflict between --help and --header - { { echo "$as_me:$LINENO: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&2;} - { (exit 1); exit 1; }; };; - --help | --hel | -h ) - echo "$ac_cs_usage"; exit 0 ;; - --debug | --d* | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - CONFIG_FILES="$CONFIG_FILES $ac_optarg" - ac_need_defaults=false;; - --header | --heade | --head | --hea ) - $ac_shift - CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" - ac_need_defaults=false;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&2;} - { (exit 1); exit 1; }; } ;; - - *) ac_config_targets="$ac_config_targets $1" ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF -if \$ac_cs_recheck; then - echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 - exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion -fi - -_ACEOF - - - - - -cat >>$CONFIG_STATUS <<\_ACEOF -for ac_config_target in $ac_config_targets -do - case "$ac_config_target" in - # Handling of arguments. - "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; - "config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; - *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 -echo "$as_me: error: invalid argument: $ac_config_target" >&2;} - { (exit 1); exit 1; }; };; - esac -done - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files - test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason to put it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Create a temporary directory, and hook for its removal unless debugging. -$debug || -{ - trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 - trap '{ (exit 1); exit 1; }' 1 2 13 15 -} - -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" -} || -{ - tmp=./confstat$$-$RANDOM - (umask 077 && mkdir $tmp) -} || -{ - echo "$me: cannot create a temporary directory in ." >&2 - { (exit 1); exit 1; } -} - -_ACEOF - -cat >>$CONFIG_STATUS <<_ACEOF - -# -# CONFIG_FILES section. -# - -# No need to generate the scripts if there are no CONFIG_FILES. -# This happens for instance when ./config.status config.h -if test -n "\$CONFIG_FILES"; then - # Protect against being on the right side of a sed subst in config.status. - sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g; - s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF -s,@SHELL@,$SHELL,;t t -s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t -s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t -s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t -s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t -s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t -s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t -s,@exec_prefix@,$exec_prefix,;t t -s,@prefix@,$prefix,;t t -s,@program_transform_name@,$program_transform_name,;t t -s,@bindir@,$bindir,;t t -s,@sbindir@,$sbindir,;t t -s,@libexecdir@,$libexecdir,;t t -s,@datadir@,$datadir,;t t -s,@sysconfdir@,$sysconfdir,;t t -s,@sharedstatedir@,$sharedstatedir,;t t -s,@localstatedir@,$localstatedir,;t t -s,@libdir@,$libdir,;t t -s,@includedir@,$includedir,;t t -s,@oldincludedir@,$oldincludedir,;t t -s,@infodir@,$infodir,;t t -s,@mandir@,$mandir,;t t -s,@build_alias@,$build_alias,;t t -s,@host_alias@,$host_alias,;t t -s,@target_alias@,$target_alias,;t t -s,@DEFS@,$DEFS,;t t -s,@ECHO_C@,$ECHO_C,;t t -s,@ECHO_N@,$ECHO_N,;t t -s,@ECHO_T@,$ECHO_T,;t t -s,@LIBS@,$LIBS,;t t -s,@CC@,$CC,;t t -s,@CFLAGS@,$CFLAGS,;t t -s,@LDFLAGS@,$LDFLAGS,;t t -s,@CPPFLAGS@,$CPPFLAGS,;t t -s,@ac_ct_CC@,$ac_ct_CC,;t t -s,@EXEEXT@,$EXEEXT,;t t -s,@OBJEXT@,$OBJEXT,;t t -s,@CPP@,$CPP,;t t -s,@EGREP@,$EGREP,;t t -s,@CC_GCC@,$CC_GCC,;t t -s,@GCC_X_NONE@,$GCC_X_NONE,;t t -s,@AS_UNDERSCORE@,$AS_UNDERSCORE,;t t -s,@RANLIB@,$RANLIB,;t t -s,@SET_MAKE@,$SET_MAKE,;t t -s,@INSTALL@,$INSTALL,;t t -s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t -s,@INSTALL_DATA@,$INSTALL_DATA,;t t -s,@CP@,$CP,;t t -s,@LN@,$LN,;t t -s,@LN_S@,$LN_S,;t t -s,@build@,$build,;t t -s,@build_cpu@,$build_cpu,;t t -s,@build_vendor@,$build_vendor,;t t -s,@build_os@,$build_os,;t t -s,@host@,$host,;t t -s,@host_cpu@,$host_cpu,;t t -s,@host_vendor@,$host_vendor,;t t -s,@host_os@,$host_os,;t t -s,@ECHO@,$ECHO,;t t -s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t -s,@STRIP@,$STRIP,;t t -s,@ac_ct_STRIP@,$ac_ct_STRIP,;t t -s,@LIBTOOL@,$LIBTOOL,;t t -s,@CPU_OBJECTS@,$CPU_OBJECTS,;t t -s,@LIBOBJS@,$LIBOBJS,;t t -s,@LTLIBOBJS@,$LTLIBOBJS,;t t -CEOF - -_ACEOF - - cat >>$CONFIG_STATUS <<\_ACEOF - # Split the substitutions into bite-sized pieces for seds with - # small command number limits, like on Digital OSF/1 and HP-UX. - ac_max_sed_lines=48 - ac_sed_frag=1 # Number of current file. - ac_beg=1 # First line for current file. - ac_end=$ac_max_sed_lines # Line after last line for current file. - ac_more_lines=: - ac_sed_cmds= - while $ac_more_lines; do - if test $ac_beg -gt 1; then - sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - else - sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - fi - if test ! -s $tmp/subs.frag; then - ac_more_lines=false - else - # The purpose of the label and of the branching condition is to - # speed up the sed processing (if there are no `@' at all, there - # is no need to browse any of the substitutions). - # These are the two extra sed commands mentioned above. - (echo ':t - /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed - if test -z "$ac_sed_cmds"; then - ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed" - else - ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed" - fi - ac_sed_frag=`expr $ac_sed_frag + 1` - ac_beg=$ac_end - ac_end=`expr $ac_end + $ac_max_sed_lines` - fi - done - if test -z "$ac_sed_cmds"; then - ac_sed_cmds=cat - fi -fi # test -n "$CONFIG_FILES" - -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF -for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; - esac - - # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories. - ac_dir=`(dirname "$ac_file") 2>/dev/null || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac - - - - if test x"$ac_file" != x-; then - { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - rm -f "$ac_file" - fi - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - configure_input= - else - configure_input="$ac_file. " - fi - configure_input=$configure_input"Generated from `echo $ac_file_in | - sed 's,.*/,,'` by configure." - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF - sed "$ac_vpsub -$extrasub -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s,@configure_input@,$configure_input,;t t -s,@srcdir@,$ac_srcdir,;t t -s,@abs_srcdir@,$ac_abs_srcdir,;t t -s,@top_srcdir@,$ac_top_srcdir,;t t -s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t -s,@builddir@,$ac_builddir,;t t -s,@abs_builddir@,$ac_abs_builddir,;t t -s,@top_builddir@,$ac_top_builddir,;t t -s,@abs_top_builddir@,$ac_abs_top_builddir,;t t -" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out - rm -f $tmp/stdin - if test x"$ac_file" != x-; then - mv $tmp/out $ac_file - else - cat $tmp/out - rm -f $tmp/out - fi - -done -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF - -# -# CONFIG_HEADER section. -# - -# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where -# NAME is the cpp macro being defined and VALUE is the value it is being given. -# -# ac_d sets the value in "#define NAME VALUE" lines. -ac_dA='s,^\([ ]*\)#\([ ]*define[ ][ ]*\)' -ac_dB='[ ].*$,\1#\2' -ac_dC=' ' -ac_dD=',;t' -# ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE". -ac_uA='s,^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' -ac_uB='$,\1#\2define\3' -ac_uC=' ' -ac_uD=',;t' - -for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; - esac - - test x"$ac_file" != x- && { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - # Do quote $f, to prevent DOS paths from being IFS'd. - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } - # Remove the trailing spaces. - sed 's/[ ]*$//' $ac_file_inputs >$tmp/in - -_ACEOF - -# Transform confdefs.h into two sed scripts, `conftest.defines' and -# `conftest.undefs', that substitutes the proper values into -# config.h.in to produce config.h. The first handles `#define' -# templates, and the second `#undef' templates. -# And first: Protect against being on the right side of a sed subst in -# config.status. Protect against being in an unquoted here document -# in config.status. -rm -f conftest.defines conftest.undefs -# Using a here document instead of a string reduces the quoting nightmare. -# Putting comments in sed scripts is not portable. -# -# `end' is used to avoid that the second main sed command (meant for -# 0-ary CPP macros) applies to n-ary macro definitions. -# See the Autoconf documentation for `clear'. -cat >confdef2sed.sed <<\_ACEOF -s/[\\&,]/\\&/g -s,[\\$`],\\&,g -t clear -: clear -s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*\)\(([^)]*)\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1\2${ac_dC}\3${ac_dD},gp -t end -s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD},gp -: end -_ACEOF -# If some macros were called several times there might be several times -# the same #defines, which is useless. Nevertheless, we may not want to -# sort them, since we want the *last* AC-DEFINE to be honored. -uniq confdefs.h | sed -n -f confdef2sed.sed >conftest.defines -sed 's/ac_d/ac_u/g' conftest.defines >conftest.undefs -rm -f confdef2sed.sed - -# This sed command replaces #undef with comments. This is necessary, for -# example, in the case of _POSIX_SOURCE, which is predefined and required -# on some systems where configure will not decide to define it. -cat >>conftest.undefs <<\_ACEOF -s,^[ ]*#[ ]*undef[ ][ ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */, -_ACEOF - -# Break up conftest.defines because some shells have a limit on the size -# of here documents, and old seds have small limits too (100 cmds). -echo ' # Handle all the #define templates only if necessary.' >>$CONFIG_STATUS -echo ' if grep "^[ ]*#[ ]*define" $tmp/in >/dev/null; then' >>$CONFIG_STATUS -echo ' # If there are no defines, we may have an empty if/fi' >>$CONFIG_STATUS -echo ' :' >>$CONFIG_STATUS -rm -f conftest.tail -while grep . conftest.defines >/dev/null -do - # Write a limited-size here document to $tmp/defines.sed. - echo ' cat >$tmp/defines.sed <>$CONFIG_STATUS - # Speed up: don't consider the non `#define' lines. - echo '/^[ ]*#[ ]*define/!b' >>$CONFIG_STATUS - # Work around the forget-to-reset-the-flag bug. - echo 't clr' >>$CONFIG_STATUS - echo ': clr' >>$CONFIG_STATUS - sed ${ac_max_here_lines}q conftest.defines >>$CONFIG_STATUS - echo 'CEOF - sed -f $tmp/defines.sed $tmp/in >$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in -' >>$CONFIG_STATUS - sed 1,${ac_max_here_lines}d conftest.defines >conftest.tail - rm -f conftest.defines - mv conftest.tail conftest.defines -done -rm -f conftest.defines -echo ' fi # grep' >>$CONFIG_STATUS -echo >>$CONFIG_STATUS - -# Break up conftest.undefs because some shells have a limit on the size -# of here documents, and old seds have small limits too (100 cmds). -echo ' # Handle all the #undef templates' >>$CONFIG_STATUS -rm -f conftest.tail -while grep . conftest.undefs >/dev/null -do - # Write a limited-size here document to $tmp/undefs.sed. - echo ' cat >$tmp/undefs.sed <>$CONFIG_STATUS - # Speed up: don't consider the non `#undef' - echo '/^[ ]*#[ ]*undef/!b' >>$CONFIG_STATUS - # Work around the forget-to-reset-the-flag bug. - echo 't clr' >>$CONFIG_STATUS - echo ': clr' >>$CONFIG_STATUS - sed ${ac_max_here_lines}q conftest.undefs >>$CONFIG_STATUS - echo 'CEOF - sed -f $tmp/undefs.sed $tmp/in >$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in -' >>$CONFIG_STATUS - sed 1,${ac_max_here_lines}d conftest.undefs >conftest.tail - rm -f conftest.undefs - mv conftest.tail conftest.undefs -done -rm -f conftest.undefs - -cat >>$CONFIG_STATUS <<\_ACEOF - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - echo "/* Generated by configure. */" >$tmp/config.h - else - echo "/* $ac_file. Generated by configure. */" >$tmp/config.h - fi - cat $tmp/in >>$tmp/config.h - rm -f $tmp/in - if test x"$ac_file" != x-; then - if diff $ac_file $tmp/config.h >/dev/null 2>&1; then - { echo "$as_me:$LINENO: $ac_file is unchanged" >&5 -echo "$as_me: $ac_file is unchanged" >&6;} - else - ac_dir=`(dirname "$ac_file") 2>/dev/null || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - rm -f $ac_file - mv $tmp/config.h $ac_file - fi - else - cat $tmp/config.h - rm -f $tmp/config.h - fi -done -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF - -{ (exit 0); exit 0; } -_ACEOF -chmod +x $CONFIG_STATUS -ac_clean_files=$ac_clean_files_save - - -# configure is writing to config.log, and then calls config.status. -# config.status does its own redirection, appending to config.log. -# Unfortunately, on DOS this fails, as config.log is still kept open -# by configure, so config.status won't be able to write to it; its -# output is simply discarded. So we exec the FD to /dev/null, -# effectively closing config.log, so it can be properly (re)opened and -# appended to by config.status. When coming back to configure, we -# need to make the FD available again. -if test "$no_create" != yes; then - ac_cs_success=: - ac_config_status_args= - test "$silent" = yes && - ac_config_status_args="$ac_config_status_args --quiet" - exec 5>/dev/null - $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false - exec 5>>config.log - # Use ||, not &&, to avoid exiting from the if with $? = 1, which - # would make configure fail if this is the last instruction. - $ac_cs_success || { (exit 1); exit 1; } -fi - DELETED ffcall/callback/trampoline_r/configure.in Index: ffcall/callback/trampoline_r/configure.in ================================================================== --- ffcall/callback/trampoline_r/configure.in +++ /dev/null @@ -1,62 +0,0 @@ -dnl AUTOCONF configuration for TRAMPOLINE -dnl Bruno Haible 2001-01-27 -dnl -AC_INIT(trampoline_r.h.in) -AC_CONFIG_HEADER(config.h) -AC_PROG_CC -AC_PROG_CPP -AC_PROG_GCC_TRADITIONAL -CL_CC_GCC -CL_AS_UNDERSCORE -CL_PROG_RANLIB -AC_PROG_MAKE_SET -CL_PROG_INSTALL -CL_PROG_CP -CL_PROG_LN -CL_PROG_LN_S -CL_CANONICAL_HOST(../../autoconf) -CL_CANONICAL_HOST_CPU_FOR_FFCALL -PACKAGE=callback -AM_DISABLE_SHARED -AM_PROG_LIBTOOL -CL_VOID -CL_STDC_HEADERS -AC_CHECK_HEADERS(unistd_h) -CL_GETPAGESIZE -CL_MACH_VM -CL_OPENFLAGS -CL_MMAP -CL_MPROTECT -CL_SHM_H -CL_SHM -dnl See above. Avoid duplicate warning. -dnl CL_CANONICAL_HOST(../../autoconf) -dnl CL_CANONICAL_HOST_CPU_FOR_FFCALL -CL_CODEEXEC -CPU_OBJECTS='' -if test ${host_cpu} = hppa -o ${host_cpu} = ia64; then - CPU_OBJECTS="$CPU_OBJECTS "'tramp-$(CPU).lo' -fi -if test ${host_cpu} = rs6000; then - case "${host_os}" in - aix*) CPU_OBJECTS="$CPU_OBJECTS "'tramp-$(CPU).lo' ;; - *) ;; - esac -fi -if test ${host_cpu} = sparc -o ${host_cpu} = sparc64 -o ${host_cpu} = alpha -o ${host_cpu} = hppa -o ${host_cpu} = convex; then - CPU_OBJECTS="$CPU_OBJECTS "'cache-$(CPU).lo' -fi -if test ${host_cpu} = rs6000; then - case "${host_os}" in - aix*) ;; - *) CPU_OBJECTS="$CPU_OBJECTS "'cache-$(CPU).lo' ;; - esac -fi -AC_SUBST(CPU_OBJECTS) -if test ${host_cpu} = mips -o ${host_cpu} = mipsn32 -o ${host_cpu} = mips64; then -AC_CHECK_HEADERS(sys/cachectl.h) -fi -if test ${host_cpu} = m88k; then -AC_CHECK_HEADERS(sys/m88kbcs.h) -fi -AC_OUTPUT(Makefile) DELETED ffcall/callback/trampoline_r/protexec.c Index: ffcall/callback/trampoline_r/protexec.c ================================================================== --- ffcall/callback/trampoline_r/protexec.c +++ /dev/null @@ -1,152 +0,0 @@ -/* This file is derived from gcc-2.6.3/libgcc2.c, section L_trampoline */ - -/* Copyright (C) 1989, 1992, 1993, 1994 Free Software Foundation, Inc. - -This file is part of GNU CC. - -GNU CC is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GNU CC is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GNU CC; see the file COPYING. If not, write to -the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ - - -/* Jump to a trampoline, loading the static chain address. */ - -#if defined (__alpha__) - -void -__enable_execute_stack (addr) - void *addr; -{ - long size = getpagesize (); - long mask = ~(size-1); - char *page = (char *) (((long) addr) & mask); - char *end = (char *) ((((long) (addr + TRAMPOLINE_SIZE)) & mask) + size); - - /* 7 is PROT_READ | PROT_WRITE | PROT_EXEC */ - if (mprotect (page, end - page, 7) < 0) - perror ("mprotect of trampoline code"); -} - -#endif - -#if defined (NeXT) && defined (__MACH__) - -/* Make stack executable so we can call trampolines on stack. - This is called from INITIALIZE_TRAMPOLINE in next.h. */ -#ifdef NeXTStep21 - #include -#else - #include -#endif - -void -__enable_execute_stack (addr) - char *addr; -{ - kern_return_t r; - char *eaddr = addr + TRAMPOLINE_SIZE; - vm_address_t a = (vm_address_t) addr; - - /* turn on execute access on stack */ - r = vm_protect (task_self (), a, TRAMPOLINE_SIZE, FALSE, VM_PROT_ALL); - if (r != KERN_SUCCESS) - { - mach_error("vm_protect VM_PROT_ALL", r); - exit(1); - } -} - -#endif /* defined (NeXT) && defined (__MACH__) */ - -#ifdef __convex__ - -/* Make stack executable so we can call trampolines on stack. - This is called from INITIALIZE_TRAMPOLINE in convex.h. */ - -#include -#include -#include - -void -__enable_execute_stack () -{ - int fp; - static unsigned lowest = USRSTACK; - unsigned current = (unsigned) &fp & -NBPG; - - if (lowest > current) - { - unsigned len = lowest - current; - mremap (current, &len, PROT_READ | PROT_WRITE | PROT_EXEC, MAP_PRIVATE); - lowest = current; - } -} -#endif /* __convex__ */ - -#ifdef __DOLPHIN__ - -/* Modified from the convex -code above. */ - -#include -#include -#include - -void -__enable_execute_stack () -{ - int save_errno; - static unsigned long lowest = USRSTACK; - unsigned long current = (unsigned long) &save_errno & -NBPC; - - /* Ignore errno being set. memctl sets errno to EINVAL whenever the - address is seen as 'negative'. That is the case with the stack. */ - - save_errno=errno; - if (lowest > current) - { - unsigned len=lowest-current; - memctl(current,len,MCT_TEXT); - lowest = current; - } - else - memctl(current,NBPC,MCT_TEXT); - errno=save_errno; -} - -#endif /* __DOLPHIN__ */ - -#ifdef __pyr__ - -#undef NULL /* Avoid errors if stdio.h and our stddef.h mismatch. */ -#include -#include -#include -#include -#include - -/* Modified from the convex -code above. - mremap promises to clear the i-cache. */ - -void -__enable_execute_stack () -{ - int fp; - if (mprotect (((unsigned int)&fp/PAGSIZ)*PAGSIZ, PAGSIZ, - PROT_READ|PROT_WRITE|PROT_EXEC)) - { - perror ("mprotect in __enable_execute_stack"); - fflush (stderr); - abort (); - } -} -#endif /* __pyr__ */ DELETED ffcall/callback/trampoline_r/proto-alpha.s Index: ffcall/callback/trampoline_r/proto-alpha.s ================================================================== --- ffcall/callback/trampoline_r/proto-alpha.s +++ /dev/null @@ -1,54 +0,0 @@ - .set noreorder - .set volatile - .set noat - .file 1 "proto64.c" -gcc2_compiled.: -__gnu_compiled_c: -.rdata - .quad 0 - .align 3 -$C32: - .quad 0x7355471143622155 - .align 3 -$C33: - .quad 0xbabebec0dea0ffab -.text - .align 3 - .globl tramp - .ent tramp -tramp: - ldgp $29,0($27) -tramp..ng: - lda $30,-16($30) - .frame $30,16,$26,0 - stq $26,0($30) - .mask 0x4000000,-16 - .prologue 1 - lda $2,$C33 - lda $3,$C32 - ldq $27,0($2) - ldq $1,0($3) - jsr $26,($27),0 - ldgp $29,0($26) - ldq $26,0($30) - addq $30,16,$30 - ret $31,($26),1 - .end tramp -.rdata - .align 3 -$C34: - .quad 0xbabebec0dea0ffab -.text - .align 3 - .globl jump - .ent jump -jump: - ldgp $29,0($27) -jump..ng: - .frame $30,0,$26,0 - .prologue 1 - lda $2,$C34 - ldq $2,0($2) - jmp $31,($2),0 - .align 4 - .end jump DELETED ffcall/callback/trampoline_r/proto-arm.s Index: ffcall/callback/trampoline_r/proto-arm.s ================================================================== --- ffcall/callback/trampoline_r/proto-arm.s +++ /dev/null @@ -1,39 +0,0 @@ -@ Generated by gcc 2.6.3 for ARM/RISCiX -rfp .req r9 -sl .req r10 -fp .req r11 -ip .req r12 -sp .req r13 -lr .req r14 -pc .req r15 -gcc2_compiled.: -___gnu_compiled_c: -.text - .align 0 - .global _tramp -_tramp: - @ args = 0, pretend = 0, frame = 0 - @ frame_needed = 0, current_function_anonymous_args = 0 - stmfd sp!, {lr} - mov ip, #1879048193 - add ip, ip, #55836672 - add ip, ip, #82944 - add ip, ip, #784 - mvn r0, #316 - sub r0, r0, #1140850691 - sub r0, r0, #20971520 - sub r0, r0, #81920 - mov lr, pc - mov pc, r0 - ldmfd sp!, {pc}^ - .align 0 - .global _jump -_jump: - @ args = 0, pretend = 0, frame = 0 - @ frame_needed = 0, current_function_anonymous_args = 0 - mvn r3, #316 - sub r3, r3, #1140850691 - sub r3, r3, #20971520 - sub r3, r3, #81920 - mov pc, r3 @ indirect jump - movs pc, lr DELETED ffcall/callback/trampoline_r/proto-convex.s Index: ffcall/callback/trampoline_r/proto-convex.s ================================================================== --- ffcall/callback/trampoline_r/proto-convex.s +++ /dev/null @@ -1,25 +0,0 @@ -;NO_APP -.fpmode native -gcc2_compiled.: -___gnu_compiled_c: -.text -.text -.align 2 -.globl _tramp - ds.b "g263" - ds.b "+00\0" -_tramp: - ld.w #1934968593,s0 - mov sp,ap - calls -1161904448 - ld.w 12(fp),ap - rtn - ds.h 0 -.text -.align 2 -.globl _jump - ds.b "g263" - ds.b "+00\0" -_jump: - jmp -1161904448 - ds.h 0 DELETED ffcall/callback/trampoline_r/proto-hppa.s Index: ffcall/callback/trampoline_r/proto-hppa.s ================================================================== --- ffcall/callback/trampoline_r/proto-hppa.s +++ /dev/null @@ -1,38 +0,0 @@ - .code - .IMPORT $global$,DATA - .IMPORT $$dyncall,MILLICODE -; gcc_compiled.: - .code - - .align 4 - .EXPORT tramp,ENTRY,PRIV_LEV=3,RTNVAL=GR - .label tramp - .PROC - .CALLINFO FRAME=64,CALLS,SAVE_RP - .ENTRY - stw %r2,-20(0,%r30) - ldo 64(%r30),%r30 - ldil L'1934968593,%r19 - ldo R'1934968593(%r19),%r29 - ldil L'-1161904448,%r28 - ldo R'-1161904448(%r28),%r28 - copy %r28,%r22 - .CALL ARGW0=GR - bl $$dyncall,%r31 - copy %r31,%r2 - ldw -84(0,%r30),%r2 - bv 0(%r2) - ldo -64(%r30),%r30 - .EXIT - .PROCEND - .align 4 - .EXPORT jump,ENTRY,PRIV_LEV=3,RTNVAL=GR - .label jump - .PROC - .CALLINFO FRAME=0,NO_CALLS - .ENTRY - ldil L'-1161904448,%r19 - ldo R'-1161904448(%r19),%r19 - bv,n 0(%r19) - .EXIT - .PROCEND DELETED ffcall/callback/trampoline_r/proto-i386.s Index: ffcall/callback/trampoline_r/proto-i386.s ================================================================== --- ffcall/callback/trampoline_r/proto-i386.s +++ /dev/null @@ -1,23 +0,0 @@ - .file "proto.c" -gcc2_compiled.: -___gnu_compiled_c: -.text - .align 2 -.globl _tramp -_tramp: - movl $1934968593,%ecx - call -1161904448 - ret - .align 2 -.globl _tramp2 -_tramp2: - pushl $1934968593 - call -1161904448 - addl $4,%esp - ret - .align 2 -.globl _jump -_jump: - movl $-1161904448,%eax - jmp *%eax - .align 2,0x90 DELETED ffcall/callback/trampoline_r/proto-ia64.s Index: ffcall/callback/trampoline_r/proto-ia64.s ================================================================== --- ffcall/callback/trampoline_r/proto-ia64.s +++ /dev/null @@ -1,35 +0,0 @@ - .file "proto64.c" - .version "01.01" -.text - .align 16 - .global tramp# - .proc tramp# -tramp: - alloc r33 = ar.pfs, 0, 2, 0, 0 - movl r14 = 0xbabebec0dea0ffab - mov r32 = b0 - adds r12 = -16, r12 - movl r16 = 0xbabebec0dea0ffb3 - ;; - ld8 r8 = [r14] - ld8 r1 = [r16] - movl r15 = 0x7355471143622155 - ;; - mov b6 = r8 - br.call.sptk.many b0 = b6 ;; - adds r12 = 16, r12 - ;; - mov ar.pfs = r33 - mov b0 = r32 - br.ret.sptk.many b0 - .endp tramp# - .align 16 - .global jump# - .proc jump# -jump: - movl r14 = 0xbabebec0dea0ffab - ;; - mov b6 = r14 - br b6 - .endp jump# - .ident "GCC: (GNU) 2.9-ia64-000216 snap-000324" DELETED ffcall/callback/trampoline_r/proto-m68k.s Index: ffcall/callback/trampoline_r/proto-m68k.s ================================================================== --- ffcall/callback/trampoline_r/proto-m68k.s +++ /dev/null @@ -1,16 +0,0 @@ -#NO_APP -gcc2_compiled.: -___gnu_compiled_c: -.text - .even -.globl _tramp -_tramp: - movel #1934968593,a0 - jbsr -1161904448 - rts - nop - .even -.globl _jump -_jump: - jmp -1161904448 - nop DELETED ffcall/callback/trampoline_r/proto-m88k.s Index: ffcall/callback/trampoline_r/proto-m88k.s ================================================================== --- ffcall/callback/trampoline_r/proto-m88k.s +++ /dev/null @@ -1,42 +0,0 @@ - version "03.00" - file "proto.c" -data -gcc2_compiled.: -text - align 8 - global tramp - type tramp,#function -tramp: - or.u #r2,#r0,0xbabe - or #r2,#r2,0xbec0 - subu #r31,#r31,48 - or.u #r11,#r0,0x7355 - or #r11,#r11,0x4711 - st #r1,#r31,36 -.Ltb0: - jsr #r2 -.Lte0: - ld #r1,#r31,36 - jmp.n #r1 - addu #r31,#r31,48 - -section .tdesc,"a" - word 66,1,.Ltb0,.Lte0,0x100003f,0x30,0xfffffff4,0xfffffff4 -text -.Lfe1: - size tramp,.Lfe1-tramp - align 8 - global jump - type jump,#function -jump: -.Ltb1: - or.u #r9,#r0,0xbabe - or #r9,#r9,0xbec0 - jmp #r9 -.Lte1: - -section .tdesc,"a" - word 66,1,.Ltb1,.Lte1,0x100001f,0x0,0x1,0x0 -text -.Lfe2: - size jump,.Lfe2-jump DELETED ffcall/callback/trampoline_r/proto-mips.s Index: ffcall/callback/trampoline_r/proto-mips.s ================================================================== --- ffcall/callback/trampoline_r/proto-mips.s +++ /dev/null @@ -1,52 +0,0 @@ - .file 1 "proto.c" - .set nobopt - .abicalls -gcc2_compiled.: -__gnu_compiled_c: - .text - .align 2 - .globl tramp - .align 2 - .globl jump - - .text - .text - .ent tramp -tramp: - .frame $sp,32,$31 # vars= 0, regs= 2/0, args= 16, extra= 8 - .mask 0x90000000,-4 - .fmask 0x00000000,0 - .set noreorder - .cpload $25 - .set reorder - subu $sp,$sp,32 - .cprestore 16 - li $2,1934950400 # 0x73550000 - ori $2,$2,0x4711 - sw $31,28($sp) - sw $28,24($sp) - li $25,-1161904448 - jal $31,$25 - lw $31,28($sp) - #nop - .set noreorder - .set nomacro - j $31 - addu $sp,$sp,32 - .set macro - .set reorder - - .end tramp - .text - .ent jump -jump: - .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, extra= 0 - .mask 0x00000000,0 - .fmask 0x00000000,0 - .set noreorder - .cpload $25 - .set reorder - li $3,-1161953280 # 0xbabe0000 - ori $3,$3,0xbec0 - j $3 - .end jump DELETED ffcall/callback/trampoline_r/proto-mips.s.gcc263 Index: ffcall/callback/trampoline_r/proto-mips.s.gcc263 ================================================================== --- ffcall/callback/trampoline_r/proto-mips.s.gcc263 +++ /dev/null @@ -1,52 +0,0 @@ - .file 1 "proto.c" - .set nobopt - .abicalls - - # GNU C 2.6.3 [AL 1.1, MM 40] Silicon Graphics Mips compiled by GNU C - - # Cc1 defaults: - - # Cc1 arguments (-G value = 8, Cpu = 3000, ISA = 1): - # -quiet -dumpbase -mabicalls -O2 -fomit-frame-pointer -o - -gcc2_compiled.: -__gnu_compiled_c: - .text - .align 2 - .globl tramp - .align 2 - .globl jump - - .text - .ent tramp -tramp: - .frame $sp,32,$31 # vars= 0, regs= 2/0, args= 16, extra= 8 - .mask 0x90000000,-4 - .fmask 0x00000000,0 - .set noreorder - .cpload $25 - .set reorder - subu $sp,$sp,32 - .cprestore 16 - li $2,0x73550000 # 1934950400 - ori $2,$2,0x4711 - sw $31,28($sp) - sw $28,24($sp) - li $25,-1161904448 - jal $31,$25 - lw $31,28($sp) - addu $sp,$sp,32 - j $31 - .end tramp - .ent jump -jump: - .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, extra= 0 - .mask 0x00000000,0 - .fmask 0x00000000,0 - .set noreorder - .cpload $25 - .set reorder - li $3,-1161953280 # 0xbabe0000 - ori $3,$3,0xbec0 - j $3 - .end jump DELETED ffcall/callback/trampoline_r/proto-mips64.s Index: ffcall/callback/trampoline_r/proto-mips64.s ================================================================== --- ffcall/callback/trampoline_r/proto-mips64.s +++ /dev/null @@ -1,51 +0,0 @@ - .file 1 "proto64.c" - .set nobopt - .abicalls -gcc2_compiled.: -__gnu_compiled_c: - .text - .align 2 - .globl tramp - .align 2 - .globl jump - - .text - .text - .ent tramp -tramp: - .frame $sp,56,$31 # vars= 0, regs= 2/0, args= 32, extra= 8 - .mask 0x90000000,-8 - .fmask 0x00000000,0 - .set noreorder - .cpload $25 - .set reorder - dsubu $sp,$sp,56 - .cprestore 32 - dli $2,0x7355471143622155 - dli $3,0xbabebec0dea0ffab - sd $31,48($sp) - sd $28,40($sp) - move $25,$3 - jal $31,$25 - ld $31,48($sp) - #nop - .set noreorder - .set nomacro - j $31 - daddu $sp,$sp,56 - .set macro - .set reorder - - .end tramp - .text - .ent jump -jump: - .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, extra= 0 - .mask 0x00000000,0 - .fmask 0x00000000,0 - .set noreorder - .cpload $25 - .set reorder - dli $3,0xbabebec0dea0ffab - j $3 - .end jump DELETED ffcall/callback/trampoline_r/proto-mips64.s.gcc263 Index: ffcall/callback/trampoline_r/proto-mips64.s.gcc263 ================================================================== --- ffcall/callback/trampoline_r/proto-mips64.s.gcc263 +++ /dev/null @@ -1,65 +0,0 @@ - .file 1 "proto64.c" - .set nobopt - .abicalls - - # GNU C 2.6.3 [AL 1.1, MM 40] Silicon Graphics Mips compiled by GNU C - - # Cc1 defaults: - - # Cc1 arguments (-G value = 8, Cpu = 4000, ISA = 3): - # -mfp64 -mgp64 -quiet -dumpbase -mips3 -mlong64 -mabicalls -O2 - # -fomit-frame-pointer -o - -gcc2_compiled.: -__gnu_compiled_c: - .sdata - .align 3 -$LC0: - .dword 0x7355471143622155 - .align 3 -$LC1: - .dword 0xbabebec0dea0ffab - .text - .align 2 - .globl tramp - .sdata - .align 3 -$LC2: - .dword 0xbabebec0dea0ffab - .text - .align 2 - .globl jump - - .text - .ent tramp -tramp: - .frame $sp,56,$31 # vars= 0, regs= 2/0, args= 32, extra= 8 - .mask 0x90000000,-8 - .fmask 0x00000000,0 - .set noreorder - .cpload $25 - .set reorder - dsubu $sp,$sp,56 - .cprestore 32 - ld $3,$LC1 - ld $2,$LC0 - sd $31,48($sp) - sd $28,40($sp) - move $25,$3 - jal $31,$25 - ld $31,48($sp) - daddu $sp,$sp,56 - j $31 - .end tramp - .ent jump -jump: - .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, extra= 0 - .mask 0x00000000,0 - .fmask 0x00000000,0 - .set noreorder - .cpload $25 - .set reorder - ld $3,$LC2 - #nop - j $3 - .end jump DELETED ffcall/callback/trampoline_r/proto-mipsn32.s Index: ffcall/callback/trampoline_r/proto-mipsn32.s ================================================================== --- ffcall/callback/trampoline_r/proto-mipsn32.s +++ /dev/null @@ -1,62 +0,0 @@ - #.file 1 "proto.c" - .set nobopt - .option pic2 - .section .text - .text - .align 2 - .globl tramp - .ent tramp -tramp: -.LFB1: - .frame $sp,32,$31 # vars= 0, regs= 2/0, args= 0, extra= 16 - .mask 0x90000000,-8 - .fmask 0x00000000,0 - subu $sp,$sp,32 -.LCFI0: - sd $31,24($sp) -.LCFI1: - sd $28,16($sp) -.LCFI2: - .set noat - lui $1,%hi(%neg(%gp_rel(tramp))) - addiu $1,$1,%lo(%neg(%gp_rel(tramp))) - daddu $gp,$1,$25 - .set at - li $2,1934950400 # 0x73550000 - ori $2,$2,0x4711 - li $25,-1161904448 - jal $31,$25 - ld $31,24($sp) - ld $28,16($sp) - #nop - .set noreorder - .set nomacro - j $31 - addu $sp,$sp,32 - .set macro - .set reorder - -.LFE1: - .end tramp - .align 2 - .globl jump - .ent jump -jump: -.LFB2: - .frame $sp,32,$31 # vars= 0, regs= 1/0, args= 0, extra= 16 - .mask 0x10000000,-16 - .fmask 0x00000000,0 - subu $sp,$sp,32 -.LCFI3: - sd $28,16($sp) -.LCFI4: - .set noat - lui $1,%hi(%neg(%gp_rel(jump))) - addiu $1,$1,%lo(%neg(%gp_rel(jump))) - daddu $gp,$1,$25 - .set at - li $3,-1161953280 # 0xbabe0000 - ori $3,$3,0xbec0 - j $3 -.LFE2: - .end jump DELETED ffcall/callback/trampoline_r/proto-rs6000-aix.new.s Index: ffcall/callback/trampoline_r/proto-rs6000-aix.new.s ================================================================== --- ffcall/callback/trampoline_r/proto-rs6000-aix.new.s +++ /dev/null @@ -1,64 +0,0 @@ - .file "proto.c" -.toc -.csect .text[PR] -gcc2_compiled.: -__gnu_compiled_c: - .align 2 - .globl tramp - .globl .tramp -.csect tramp[DS] -tramp: - .long .tramp, TOC[tc0], 0 -.csect .text[PR] -.tramp: - .extern __mulh - .extern __mull - .extern __divss - .extern __divus - .extern __quoss - .extern __quous - mflr 0 - stw 0,8(1) - stwu 1,-56(1) - lis 11,0x7355 - lis 9,0xbabe - ori 11,11,18193 - ori 9,9,48832 - stw 2,20(1) - lwz 0,0(9) - lwz 2,4(9) - mtlr 0 - lwz 11,8(9) - blrl - lwz 2,20(1) - la 1,56(1) - lwz 0,8(1) - mtlr 0 - blr -LT..tramp: - .long 0 - .byte 0,0,32,65,128,0,0,0 - .long LT..tramp-.tramp - .short 5 - .byte "tramp" - .align 2 - .globl jump - .globl .jump -.csect jump[DS] -jump: - .long .jump, TOC[tc0], 0 -.csect .text[PR] -.jump: - lis 0,0xbabe - ori 0,0,48832 - mtctr 0 - bctr -LT..jump: - .long 0 - .byte 0,0,32,64,0,0,0,0 - .long LT..jump-.jump - .short 4 - .byte "jump" -_section_.text: -.csect .data[RW],3 - .long _section_.text DELETED ffcall/callback/trampoline_r/proto-rs6000-aix.old.s Index: ffcall/callback/trampoline_r/proto-rs6000-aix.old.s ================================================================== --- ffcall/callback/trampoline_r/proto-rs6000-aix.old.s +++ /dev/null @@ -1,64 +0,0 @@ - .file "proto.c" -.toc -.csect .text[PR] -gcc2_compiled.: -__gnu_compiled_c: - .align 2 - .globl tramp - .globl .tramp -.csect tramp[DS] -tramp: - .long .tramp, TOC[tc0], 0 -.csect .text[PR] -.tramp: - .extern __mulh - .extern __mull - .extern __divss - .extern __divus - .extern __quoss - .extern __quous - mflr 0 - st 0,8(1) - stu 1,-56(1) - liu 11,0x7355 - liu 9,0xbabe - oril 11,11,18193 - oril 9,9,48832 - st 2,20(1) - l 0,0(9) - l 2,4(9) - mtlr 0 - l 11,8(9) - brl - l 2,20(1) - cal 1,56(1) - l 0,8(1) - mtlr 0 - br -LT..tramp: - .long 0 - .byte 0,0,32,65,128,0,0,0 - .long LT..tramp-.tramp - .short 5 - .byte "tramp" - .align 2 - .globl jump - .globl .jump -.csect jump[DS] -jump: - .long .jump, TOC[tc0], 0 -.csect .text[PR] -.jump: - liu 0,0xbabe - oril 0,0,48832 - mtctr 0 - bctr -LT..jump: - .long 0 - .byte 0,0,32,64,0,0,0,0 - .long LT..jump-.jump - .short 4 - .byte "jump" -_section_.text: -.csect .data[RW],3 - .long _section_.text DELETED ffcall/callback/trampoline_r/proto-rs6000-macos.s Index: ffcall/callback/trampoline_r/proto-rs6000-macos.s ================================================================== --- ffcall/callback/trampoline_r/proto-rs6000-macos.s +++ /dev/null @@ -1,26 +0,0 @@ -.text - .align 2 - .globl _tramp -_tramp: - mflr r0 - lis r11,0x7355 - stw r0,8(r1) - ori r11,r11,18193 - lis r0,0xbabe - stw r31,-4(r1) - ori r0,r0,48832 - stwu r1,-80(r1) - mtlr r0 - blrl - addi r1,r1,80 - lwz r0,8(r1) - lwz r31,-4(r1) - mtlr r0 - blr - .align 2 - .globl _jump -_jump: - lis r0,0xbabe - ori r0,r0,48832 - mtctr r0 - bctr DELETED ffcall/callback/trampoline_r/proto-rs6000-sysv4.s Index: ffcall/callback/trampoline_r/proto-rs6000-sysv4.s ================================================================== --- ffcall/callback/trampoline_r/proto-rs6000-sysv4.s +++ /dev/null @@ -1,39 +0,0 @@ - .file "proto.c" -gcc2_compiled.: - .section ".text" - .align 2 - .globl tramp - .type tramp,@function -tramp: - .extern __mulh - .extern __mull - .extern __divss - .extern __divus - .extern __quoss - .extern __quous - stwu 1,-16(1) - mflr 0 - stw 0,20(1) - lis 3,0xbabe - ori 3,3,48832 - mtlr 3 - lis 11,0x7355 - ori 11,11,18193 - blrl - lwz 0,20(1) - mtlr 0 - la 1,16(1) - blr -.Lfe1: - .size tramp,.Lfe1-tramp - .align 2 - .globl jump - .type jump,@function -jump: - lis 0,0xbabe - ori 0,0,48832 - mtctr 0 - bctr -.Lfe2: - .size jump,.Lfe2-jump - .ident "GCC: (GNU) 2.95.2 19991024 (release)" DELETED ffcall/callback/trampoline_r/proto-s390.s Index: ffcall/callback/trampoline_r/proto-s390.s ================================================================== --- ffcall/callback/trampoline_r/proto-s390.s +++ /dev/null @@ -1,58 +0,0 @@ - .file "proto.c" - .version "01.01" -gcc2_compiled.: -.text - .align 4 -.globl tramp - .type tramp,@function -tramp: -# leaf function 0 -# automatics 0 -# outgoing args 0 -# need frame pointer 0 -# call alloca 0 -# has varargs 0 -# incoming args (stack) 0 -# function length 10 -# register live 0010000000000010000000000000000000 - stm %r13,%r15,52(%r15) - bras %r13,.LTN0_0 -.LT0_0: -.LC0: - .long 1934968593 -.LC1: - .long -1161904448 -.LTN0_0: - lr %r1,%r15 - ahi %r15,-96 - st %r1,0(%r15) - l %r2,.LC1-.LT0_0(%r13) - l %r0,.LC0-.LT0_0(%r13) - basr %r14,%r2 - l %r4,152(%r15) - lm %r13,%r15,148(%r15) - br %r4 -.Lfe1: - .size tramp,.Lfe1-tramp - .align 4 -.globl jump - .type jump,@function -jump: -# leaf function -# has varargs 0 -# incoming args (stack) 0 -# function length 6 -# register live 0100000000000000000000000000000000 - stm %r13,%r13,52(%r15) - bras %r13,.LTN1_0 -.LT1_0: -.LC2: - .long -1161904448 -.LTN1_0: - l %r1,.LC2-.LT1_0(%r13) - br %r1 - lm %r13,%r13,52(%r15) - br %r14 -.Lfe2: - .size jump,.Lfe2-jump - .ident "GCC: (GNU) 2.95.4 20011006 (Debian prerelease)" DELETED ffcall/callback/trampoline_r/proto-sparc.s Index: ffcall/callback/trampoline_r/proto-sparc.s ================================================================== --- ffcall/callback/trampoline_r/proto-sparc.s +++ /dev/null @@ -1,27 +0,0 @@ -gcc2_compiled.: -___gnu_compiled_c: -.text - .align 4 - .global _tramp - .proc 04 -_tramp: - !#PROLOGUE# 0 - save %sp, -104, %sp - !#PROLOGUE# 1 - sethi %hi(1934967808), %o1 - sethi %hi(-1161905152), %o0 - or %o0, 704, %o0 - call %o0, 0 - or %o1, 785, %g2 - ret - restore %g0, %o0, %o0 - .align 4 - .global _jump - .proc 04 -_jump: - !#PROLOGUE# 0 - !#PROLOGUE# 1 - sethi %hi(-1161905152), %g3 - or %g3, 704, %g3 - jmp %g3 - nop DELETED ffcall/callback/trampoline_r/proto-sparc.s.gcc263 Index: ffcall/callback/trampoline_r/proto-sparc.s.gcc263 ================================================================== --- ffcall/callback/trampoline_r/proto-sparc.s.gcc263 +++ /dev/null @@ -1,29 +0,0 @@ -gcc2_compiled.: -___gnu_compiled_c: -.text - .align 4 - .global _tramp - .proc 04 -_tramp: - !#PROLOGUE# 0 - save %sp,-104,%sp - !#PROLOGUE# 1 - sethi %hi(1934968593),%o0 - or %o0,%lo(1934968593),%g2 - sethi %hi(-1161904448),%o0 - call %o0+%lo(-1161904448),0 - nop - mov %o0,%i0 - ret - restore - .align 4 - .global _jump - .proc 04 -_jump: - !#PROLOGUE# 0 - !#PROLOGUE# 1 - sethi %hi(-1161904448),%g3 - jmp %g3+%lo(-1161904448) - nop - retl - nop DELETED ffcall/callback/trampoline_r/proto-sparc64.s Index: ffcall/callback/trampoline_r/proto-sparc64.s ================================================================== --- ffcall/callback/trampoline_r/proto-sparc64.s +++ /dev/null @@ -1,44 +0,0 @@ - .file "proto64.c" - .version "01.01" -.section ".text" - .align 4 - .global tramp - .type tramp,#function - .proc 04 -tramp: - !#PROLOGUE# 0 - save %sp, -192, %sp - !#PROLOGUE# 1 - sethi %hi(1934967808), %o0 - sethi %hi(1130504192), %o3 - or %o0, 785, %o0 - sethi %hi(0xbabebc00), %o2 - sllx %o0, 32, %o0 - or %o3, 341, %o3 - or %o2, 704, %o2 - sethi %hi(0xdea0fc00), %o1 - sllx %o2, 32, %o2 - or %o1, 939, %o1 - call %o2+%o1, 0 - add %o0, %o3, %g5 - ret - restore %g0, %o0, %o0 -.LLfe1: - .size tramp,.LLfe1-tramp - .align 4 - .global jump - .type jump,#function - .proc 04 -jump: - !#PROLOGUE# 0 - !#PROLOGUE# 1 - sethi %hi(0xbabebc00), %g2 - sethi %hi(0xdea0fc00), %g3 - or %g2, 704, %g2 - or %g3, 939, %g3 - sllx %g2, 32, %g2 - jmp %g2+%g3 - nop -.LLfe2: - .size jump,.LLfe2-jump - .ident "GCC: (GNU) 2.95.2 19991024 (release)" DELETED ffcall/callback/trampoline_r/proto-x86_64.s Index: ffcall/callback/trampoline_r/proto-x86_64.s ================================================================== --- ffcall/callback/trampoline_r/proto-x86_64.s +++ /dev/null @@ -1,66 +0,0 @@ - .file "proto64.c" - .text - .p2align 4,,15 -.globl tramp - .type tramp,@function -tramp: -.LFB1: - subq $8, %rsp -.LCFI0: - movabsq $8310626826852639061, %r10 - xorl %eax, %eax - movabsq $-4990341601501839445, %rdx - call *%rdx - addq $8, %rsp - ret -.LFE1: -.Lfe1: - .size tramp,.Lfe1-tramp - .p2align 4,,15 -.globl jump - .type jump,@function -jump: -.LFB2: - movabsq $-4990341601501839445, %rax - jmp *%rax -.LFE2: -.Lfe2: - .size jump,.Lfe2-jump - .section .eh_frame,"aw",@progbits -.Lframe1: - .long .LECIE1-.LSCIE1 -.LSCIE1: - .long 0x0 - .byte 0x1 - .string "" - .uleb128 0x1 - .sleb128 -8 - .byte 0x10 - .byte 0xc - .uleb128 0x7 - .uleb128 0x8 - .byte 0x90 - .uleb128 0x1 - .align 8 -.LECIE1: -.LSFDE1: - .long .LEFDE1-.LASFDE1 -.LASFDE1: - .long .LASFDE1-.Lframe1 - .quad .LFB1 - .quad .LFE1-.LFB1 - .byte 0x4 - .long .LCFI0-.LFB1 - .byte 0xe - .uleb128 0x10 - .align 8 -.LEFDE1: -.LSFDE3: - .long .LEFDE3-.LASFDE3 -.LASFDE3: - .long .LASFDE3-.Lframe1 - .quad .LFB2 - .quad .LFE2-.LFB2 - .align 8 -.LEFDE3: - .ident "GCC: (GNU) 3.2.2 (SuSE Linux)" DELETED ffcall/callback/trampoline_r/proto.c Index: ffcall/callback/trampoline_r/proto.c ================================================================== --- ffcall/callback/trampoline_r/proto.c +++ /dev/null @@ -1,61 +0,0 @@ -/* Sample prototype for a trampoline. */ - -/* - * Copyright 1995-1998 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#define function (int (*) ()) 0xbabebec0 -#define data (void*) 0x73554711 - -#ifdef __i386__ -register void* env __asm__("%ecx"); -#endif -#ifdef __m68k__ -register void* env __asm__("a0"); -#endif -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) -register void* env __asm__("$2"); -#endif -#ifdef __sparc__ -register void* env __asm__("%g2"); -#endif -#ifdef __alpha__ -register void* env __asm__("$1"); -#endif -#ifdef __hppa__ -register void* env __asm__("%r29"); -#endif -#ifdef __arm__ -register void* env __asm__("r12"); -#endif -#ifdef __rs6000__ -register void* env __asm__("r11"); -#endif -#ifdef __m88k__ -register void* env __asm__("r11"); -#endif -#ifdef __convex__ -register void* env __asm__("s0"); -#endif -#ifdef __s390__ -register void* env __asm__("r0"); -#endif - -int tramp () -{ env = data; - return (*function)(); -} - -#ifdef __i386__ -int tramp2 () -{ return (*function)(data); } -#endif - -int jump () -{ goto *function; } - DELETED ffcall/callback/trampoline_r/proto64.c Index: ffcall/callback/trampoline_r/proto64.c ================================================================== --- ffcall/callback/trampoline_r/proto64.c +++ /dev/null @@ -1,38 +0,0 @@ -/* Sample prototype for a trampoline. */ - -/* - * Copyright 1995-1999, 2001, 2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#define function (int (*) ()) 0xbabebec0dea0ffabL -#define data (void*) 0x7355471143622155L - -#ifdef __mips64__ -register void* env __asm__("$2"); -#endif -#ifdef __sparc64__ -register void* env __asm__("%g5"); -#endif -#ifdef __alpha__ -register void* env __asm__("$1"); -#endif -#ifdef __ia64__ -register void* env __asm__("r15"); -#endif -#ifdef __x86_64__ -register void* env __asm__("r10"); -#endif - -int tramp () -{ env = data; - return (*function)(); -} - -int jump () -{ goto *function; } - DELETED ffcall/callback/trampoline_r/test1.c Index: ffcall/callback/trampoline_r/test1.c ================================================================== --- ffcall/callback/trampoline_r/test1.c +++ /dev/null @@ -1,112 +0,0 @@ -/* Trampoline test */ - -/* - * Copyright 1995-1999, 2001-2002, 2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#include "config.h" /* Define __${host_cpu}__ */ - -#include -#include - -#include "trampoline_r.h" - -#define MAGIC1 0x9db9af42 -#define MAGIC2 0x614a13c9 -#define MAGIC3 0x7aff3cb4 -#define MAGIC4 0xa2f9d045 - -#ifdef __cplusplus -typedef int (*function)(...); -#else -typedef int (*function)(); -#endif - -#if defined(__i386__) -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -int f (void* env, int x) -#else -int f (env, x) - void* env; - int x; -#endif -#else -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -int f (int x) -#else -int f (x) - int x; -#endif -#endif -{ -#ifdef __GNUC__ -#ifdef __m68k__ -register void* env __asm__("a0"); -#endif -#ifdef __mips__ -register void* env __asm__("$2"); -#endif -#ifdef __mips64__ -register void* env __asm__("$2"); -#endif -#if defined(__sparc__) && !defined(__sparc64__) -register void* env __asm__("%g2"); -#endif -#ifdef __sparc64__ -register void* env __asm__("%g5"); -#endif -#ifdef __alpha__ -register void* env __asm__("$1"); -#endif -#ifdef __hppa__ -register void* env __asm__("%r29"); -#endif -#ifdef __arm__ -register void* env __asm__("r12"); -#endif -#ifdef __rs6000__ -#ifdef __NetBSD__ -register void* env __asm__("r13"); -#else -register void* env __asm__("r11"); -#endif -#endif -#ifdef __m88k__ -register void* env __asm__("r11"); -#endif -#ifdef __convex__ -register void* env __asm__("s0"); -#endif -#ifdef __ia64__ -register void* env __asm__("r15"); -#endif -#ifdef __x86_64__ -register void* env __asm__("r10"); -#endif -#ifdef __s390__ -register void* env __asm__("r0"); -#endif - - return x + (int)((long*)env)[0] + (int)((long*)env)[1] + MAGIC3; -#else - return x + MAGIC3; -#endif -} - -int main () -{ - function cf = alloc_trampoline_r((function)&f, (void*)MAGIC1, (void*)MAGIC2); -#ifdef __GNUC__ - if ((*cf)(MAGIC4) == MAGIC1+MAGIC2+MAGIC3+MAGIC4) -#else - if ((*cf)(MAGIC4) == MAGIC3+MAGIC4) -#endif - { free_trampoline_r(cf); printf("Works, test1 passed.\n"); exit(0); } - else - { printf("Doesn't work!\n"); exit(1); } -} DELETED ffcall/callback/trampoline_r/test2.c Index: ffcall/callback/trampoline_r/test2.c ================================================================== --- ffcall/callback/trampoline_r/test2.c +++ /dev/null @@ -1,49 +0,0 @@ -/* Trampoline accessor test */ - -/* - * Copyright 1995-1999, 2002 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#include -#include - -#include "trampoline_r.h" - -#ifdef __cplusplus -typedef int (*function)(...); -#else -typedef int (*function)(); -#endif - -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -int f (int x) -#else -int f (x) - int x; -#endif -{ return x; } - -#define MAGIC1 0x9db9af42 -#define MAGIC2 0x614a13c9 - -int main () -{ - function cf = alloc_trampoline_r((function)&f, (void*)MAGIC1, (void*)MAGIC2); - if (is_trampoline_r((void*)&main)) - { printf("is_trampoline_r(&main) returns true!\n"); exit(1); } - if (!is_trampoline_r((void*)cf)) - { printf("is_trampoline_r() returns false!\n"); exit(1); } - if (trampoline_r_address((void*)cf) != (function)&f) - { printf("trampoline_r_address() doesn't work!\n"); exit(1); } - if (trampoline_r_data0((void*)cf) != (void*)MAGIC1) - { printf("trampoline_r_data0() doesn't work!\n"); exit(1); } - if (trampoline_r_data1((void*)cf) != (void*)MAGIC2) - { printf("trampoline_r_data1() doesn't work!\n"); exit(1); } - printf("test2 passed.\n"); - exit(0); -} DELETED ffcall/callback/trampoline_r/tramp-alpha.o Index: ffcall/callback/trampoline_r/tramp-alpha.o ================================================================== --- ffcall/callback/trampoline_r/tramp-alpha.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/callback/trampoline_r/tramp-alpha.s Index: ffcall/callback/trampoline_r/tramp-alpha.s ================================================================== --- ffcall/callback/trampoline_r/tramp-alpha.s +++ /dev/null @@ -1,39 +0,0 @@ -/* Trampoline for alpha CPU */ - -/* - * Copyright 1995-1997 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -/* Available registers: $1, $2, $3, $4, $5, $6, $7, $8. */ - - .set noreorder - .set noat -.text - .align 3 - - .globl tramp - .ent tramp -tramp: - br $1,tramp1 /* $1 := address of tramp1 */ -tramp1: /* Load everything relative to $1. If we were to use "lda" instructions - * we would have to do the usual ldgp $29,0($27) - */ - ldq $27,20($1) /* function */ - ldq $1,12($1) /* data */ - /* The called function expects to see its own address in $27. */ - jmp $31,($27),0 /* jump to function */ - - .align 3 -data: - .quad 0x73554711 - - .align 3 -function: - .quad 0xbabebec0 - - .end tramp DELETED ffcall/callback/trampoline_r/tramp-arm.o Index: ffcall/callback/trampoline_r/tramp-arm.o ================================================================== --- ffcall/callback/trampoline_r/tramp-arm.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/callback/trampoline_r/tramp-arm.s Index: ffcall/callback/trampoline_r/tramp-arm.s ================================================================== --- ffcall/callback/trampoline_r/tramp-arm.s +++ /dev/null @@ -1,40 +0,0 @@ -@ Trampoline for arm CPU - -@ Copyright 1995-1997 Bruno Haible, -@ -@ This is free software distributed under the GNU General Public Licence -@ described in the file COPYING. Contact the author if you don't have this -@ or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, -@ on this software. - -@ Available registers: ip. - -rfp .req r9 -sl .req r10 -fp .req r11 -ip .req r12 -sp .req r13 -lr .req r14 -pc .req r15 -.text - .align 0 - .global _tramp -_tramp: - @ Immediate constants are a problem. I take the indirect load approach - @ because I don't want 4 instructions for each constant. - ldr ip,[pc,#_function-.-8] - ldr ip,[ip,#0] - stmfd sp!,{ip} - ldr ip,[pc,#_data-.-8] - ldr ip,[ip,#0] - ldmfd sp!,{pc}^ - - .global _data - .align 0 -_data: - .word 0x73554711 - - .global _function - .align 0 -_function: - .word 0xbabebec0 DELETED ffcall/callback/trampoline_r/tramp-convex.s Index: ffcall/callback/trampoline_r/tramp-convex.s ================================================================== --- ffcall/callback/trampoline_r/tramp-convex.s +++ /dev/null @@ -1,18 +0,0 @@ -/* Trampoline for convex CPU */ - -/* - * Copyright 1995-1997 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -/* Available registers: s1, s2, s3, s4, s5, s6, s7, s0. */ - -.globl _tramp -_tramp: - ld.w #0x73554711,s0 - jmp 0xbabebec0 - ds.h 0 DELETED ffcall/callback/trampoline_r/tramp-hppa-old.o Index: ffcall/callback/trampoline_r/tramp-hppa-old.o ================================================================== --- ffcall/callback/trampoline_r/tramp-hppa-old.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/callback/trampoline_r/tramp-hppa-old.s Index: ffcall/callback/trampoline_r/tramp-hppa-old.s ================================================================== --- ffcall/callback/trampoline_r/tramp-hppa-old.s +++ /dev/null @@ -1,45 +0,0 @@ -; Trampoline for hppa CPU - -; Copyright 1995-1997 Bruno Haible, -; -; This is free software distributed under the GNU General Public Licence -; described in the file COPYING. Contact the author if you don't have this -; or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, -; on this software. - -; Available registers: %r19, %r20, %r21, %r22. - - .SPACE $PRIVATE$ - .SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31 - .SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82 - .SPACE $TEXT$ - .SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44 - .SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY - - .SPACE $TEXT$ - .SUBSPA $CODE$ - - .align 4 - .EXPORT tramp -tramp - .PROC - .CALLINFO - .ENTRY -; Move into - ldil L'0x73554711,%r29 - ldo R'0x73554711(%r29),%r29 -; Get - ldil L'0xbabebec0,%r21 - ldo R'0xbabebec0(%r21),%r21 -; Jump to %r21, just like the gcc-2.6.3 trampoline does it: - bb,>=,n %r21,30,tramp2 ; check bit 1 of %r21 - depi 0,31,2,%r21 ; if set, clear bits 1..0 - ldw 4(0,%r21),%r19 ; ... dereference the function struct - ldw 0(0,%r21),%r21 ; ... to get the actual code address -tramp2 - ldsid (0,%r21),%r1 - mtsp %r1,%sr0 ; set segment register - be,n 0(%sr0,%r21) ; now do an inter-module jump - nop - .EXIT - .PROCEND DELETED ffcall/callback/trampoline_r/tramp-hppa.s Index: ffcall/callback/trampoline_r/tramp-hppa.s ================================================================== --- ffcall/callback/trampoline_r/tramp-hppa.s +++ /dev/null @@ -1,39 +0,0 @@ -; Trampoline for hppa CPU - -; -; Copyright 1997 Bruno Haible, -; -; This is free software distributed under the GNU General Public Licence -; described in the file COPYING. Contact the author if you don't have this -; or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, -; on this software. -; - - .code - .IMPORT $global$,DATA - .IMPORT $$dyncall,MILLICODE - .code - - .align 4 - .EXPORT tramp_r,ENTRY,PRIV_LEV=3,ARGW0=GR,ARGW1=GR - .label tramp_r - .PROC - .CALLINFO FRAME=0,NO_CALLS - .ENTRY -; The closure pointer is already in register %r19. -; Move into register %r29 - ldw 0(0,%r19),%r29 -; Move
into register %r21. - ldw 4(0,%r19),%r21 -; Jump to it. - bb,>=,n %r21,30,tramp_r_2 - depi 0,31,2,%r21 - ldw 4(0,%r21),%r19 - ldw 0(0,%r21),%r21 - .label tramp_r_2 - ldsid (0,%r21),%r1 - mtsp %r1,%sr0 - be,n 0(%sr0,%r21) - nop - .EXIT - .PROCEND DELETED ffcall/callback/trampoline_r/tramp-i386.o Index: ffcall/callback/trampoline_r/tramp-i386.o ================================================================== --- ffcall/callback/trampoline_r/tramp-i386.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/callback/trampoline_r/tramp-i386.s Index: ffcall/callback/trampoline_r/tramp-i386.s ================================================================== --- ffcall/callback/trampoline_r/tramp-i386.s +++ /dev/null @@ -1,31 +0,0 @@ -/* Trampoline for i386 CPU */ - -/* - * Copyright 1995-1999 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -/* Available registers: %eax, %edx, %ecx. */ -/* - * On Solaris 2.6, when the function being jumped to is an external symbol of - * a shared library, the jump actually points to an ELF indirect jump: - * jmp *PTR - * where PTR initially contains the address of some resolving routine which - * will replace the PTR contents with the actual code address of the function - * and then jump to the function. - * Unfortunately, this resolving routine clobbers all three registers: - * %eax, %edx, %ecx. Must pass the additional data via the stack. - * A simple "pushl $" is not sufficient: it causes trouble if the called - * function is compiled with -fomit-frame-pointer. - */ - -.globl _tramp -_tramp: - popl %ecx - pushl $0x73554711 - pushl %ecx - jmp 0xbabebec0 DELETED ffcall/callback/trampoline_r/tramp-ia64.s Index: ffcall/callback/trampoline_r/tramp-ia64.s ================================================================== --- ffcall/callback/trampoline_r/tramp-ia64.s +++ /dev/null @@ -1,31 +0,0 @@ -/* Trampoline for ia64 CPU */ - -/* - * Copyright 2001 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - - .text - .align 16 - .global tramp_r# - .proc tramp_r# -tramp_r: - /* The closure pointer is already in register r1. */ - ld8 r14 = [r1] /* Move
into register r14. */ - adds r15 = 8, r1 - ;; - ld8 r15 = [r15] /* Move into register r15. */ - /* Jump to r14. */ - ld8 r17 = [r14] - adds r16 = 8, r14 - ;; - ld8 r1 = [r16] - mov b6 = r17 - ;; - br b6 - ;; - .endp tramp_r# DELETED ffcall/callback/trampoline_r/tramp-m68k.o Index: ffcall/callback/trampoline_r/tramp-m68k.o ================================================================== --- ffcall/callback/trampoline_r/tramp-m68k.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/callback/trampoline_r/tramp-m68k.s Index: ffcall/callback/trampoline_r/tramp-m68k.s ================================================================== --- ffcall/callback/trampoline_r/tramp-m68k.s +++ /dev/null @@ -1,16 +0,0 @@ -| Trampoline for m68k CPU - -| Copyright 1995-1997 Bruno Haible, -| -| This is free software distributed under the GNU General Public Licence -| described in the file COPYING. Contact the author if you don't have this -| or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, -| on this software. - -| Available registers: d0, d1, a0, a1. - -.globl _tramp -_tramp: - movel #0x73554711,a0 - jmp 0xbabebec0 - nop DELETED ffcall/callback/trampoline_r/tramp-m88k.o Index: ffcall/callback/trampoline_r/tramp-m88k.o ================================================================== --- ffcall/callback/trampoline_r/tramp-m88k.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/callback/trampoline_r/tramp-m88k.s Index: ffcall/callback/trampoline_r/tramp-m88k.s ================================================================== --- ffcall/callback/trampoline_r/tramp-m88k.s +++ /dev/null @@ -1,23 +0,0 @@ -; Trampoline for m88k CPU - -; Copyright 1995-1997 Bruno Haible, -; -; This is free software distributed under the GNU General Public Licence -; described in the file COPYING. Contact the author if you don't have this -; or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, -; on this software. - -; Available registers: r13, r10, maybe r11. - -text - align 8 - global tramp -; type tramp,#function -tramp: - or.u r11,r0,0x7355 - or r11,r11,0x4711 - or.u r13,r0,0xbabe - or r13,r13,0xbec0 - jmp r13 -.Lfe1: -; size tramp,.Lfe1-tramp DELETED ffcall/callback/trampoline_r/tramp-mips.o Index: ffcall/callback/trampoline_r/tramp-mips.o ================================================================== --- ffcall/callback/trampoline_r/tramp-mips.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/callback/trampoline_r/tramp-mips.s Index: ffcall/callback/trampoline_r/tramp-mips.s ================================================================== --- ffcall/callback/trampoline_r/tramp-mips.s +++ /dev/null @@ -1,28 +0,0 @@ -/* Trampoline for mips CPU */ - -/* - * Copyright 1995-1997 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -/* Available registers: $2, $3. */ - - .set nobopt - .set noreorder - .text - .globl tramp - .ent tramp -tramp: - li $2,0x73550000 - ori $2,$2,0x4711 - li $25,0xbabe0000 - ori $25,$25,0xbec0 - /* The called function expects to see its own address in $25. */ - j $25 - /* Some Mips hardware running Irix-4.0.5 needs this nop. */ - nop - .end tramp DELETED ffcall/callback/trampoline_r/tramp-mips64.o Index: ffcall/callback/trampoline_r/tramp-mips64.o ================================================================== --- ffcall/callback/trampoline_r/tramp-mips64.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/callback/trampoline_r/tramp-mips64.old.o Index: ffcall/callback/trampoline_r/tramp-mips64.old.o ================================================================== --- ffcall/callback/trampoline_r/tramp-mips64.old.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/callback/trampoline_r/tramp-mips64.old.s Index: ffcall/callback/trampoline_r/tramp-mips64.old.s ================================================================== --- ffcall/callback/trampoline_r/tramp-mips64.old.s +++ /dev/null @@ -1,42 +0,0 @@ -/* Trampoline for mips CPU in 64-bit mode */ - -/* - * Copyright 1996-1997 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -/* Available registers: $2, $3. */ - - .set nobopt - .set noreorder - .text - .globl main - .ent main -main: - .end main - .globl tramp - .ent tramp -tramp: -# dli $2,0x7355471143622155 - lui $2,0x7355 - ori $2,$2,0x4711 - dsll $2,$2,16 - ori $2,$2,0x4362 - dsll $2,$2,16 - ori $2,$2,0x2155 -# dli $25,0xbabebec0dea0ffab - lui $25,0xbabe - ori $25,$25,0xbec0 - dsll $25,$25,16 - ori $25,$25,0xdea0 - dsll $25,$25,16 - ori $25,$25,0xffab - /* The called function expects to see its own address in $25. */ - j $25 - /* Some Mips hardware running Irix-4.0.5 needs this nop. */ - nop - .end tramp DELETED ffcall/callback/trampoline_r/tramp-mips64.s Index: ffcall/callback/trampoline_r/tramp-mips64.s ================================================================== --- ffcall/callback/trampoline_r/tramp-mips64.s +++ /dev/null @@ -1,35 +0,0 @@ -/* Trampoline for mips CPU in 64-bit mode */ - -/* - * Copyright 1996 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -/* Available registers: $2, $3. */ - - .set nobopt - .set noreorder - .text - .globl main - .ent main -main: - .end main - .globl tramp - .ent tramp -tramp: - /* We can assume that our own address (=tramp) is in $25. */ - ld $2,$LC0-tramp($25) - ld $25,$LC1-tramp($25) - /* The called function expects to see its own address in $25. */ - j $25 - /* Some Mips hardware running Irix-4.0.5 needs this nop. */ - nop -$LC0: - .dword 0x7355471143622155 -$LC1: - .dword 0xbabebec0dea0ffab - .end tramp DELETED ffcall/callback/trampoline_r/tramp-rs6000-old.o Index: ffcall/callback/trampoline_r/tramp-rs6000-old.o ================================================================== --- ffcall/callback/trampoline_r/tramp-rs6000-old.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/callback/trampoline_r/tramp-rs6000-old.s Index: ffcall/callback/trampoline_r/tramp-rs6000-old.s ================================================================== --- ffcall/callback/trampoline_r/tramp-rs6000-old.s +++ /dev/null @@ -1,35 +0,0 @@ -/* Trampoline for rs6000 CPU */ - -/* - * Copyright 1995-1997 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -/* Available registers: r0, r11, r10, r8, r7, r6, r5, r4, maybe r9. */ -/* However, r0 is special in that it cannot be used as a base register. */ - - .globl .tramp -.csect .text[PR] -.tramp: -/* Move into register r11 */ - liu 11,0x7355 - oril 11,11,0x4711 -/* Get */ - liu 10,0xbabe - oril 10,10,0xbec0 -/* - * gcc-2.6.3 source says: - * A function pointer is a pointer to a data area whose first word contains - * the actual address of the function, whose second word contains a pointer - * to its TOC, and whose third word contains a value to place in the static - * chain register (r11). But we have already placed our information in r11. - */ -/* l 11,8(10) pass static chain in r11 */ - l 2,4(10) /* pass TOC in r2 */ - l 0,0(10) /* actual code address */ - mtctr 0 - bctr DELETED ffcall/callback/trampoline_r/tramp-rs6000-sysv4.o Index: ffcall/callback/trampoline_r/tramp-rs6000-sysv4.o ================================================================== --- ffcall/callback/trampoline_r/tramp-rs6000-sysv4.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/callback/trampoline_r/tramp-rs6000-sysv4.s Index: ffcall/callback/trampoline_r/tramp-rs6000-sysv4.s ================================================================== --- ffcall/callback/trampoline_r/tramp-rs6000-sysv4.s +++ /dev/null @@ -1,26 +0,0 @@ -/* Trampoline for rs6000 CPU with SysV.4 ABI */ - -/* - * Copyright 1995-1999 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -/* Available registers: r0, r12, r11, r10, r9, r8, r7, r6, r5, r4, r3. */ -/* However, r0 is special in that it cannot be used as a base register. */ -/* And r3...r10 should not be clobbered because they contain the first 8 - * integer arguments to the function being called. */ - - .globl tramp -tramp: -/* Move into register r11 */ - lis 11,0x7355 - ori 11,11,0x4711 -/* Get */ - lis 0,0xbabe - ori 0,0,0xbec0 - mtctr 0 - bctr DELETED ffcall/callback/trampoline_r/tramp-rs6000.new.S Index: ffcall/callback/trampoline_r/tramp-rs6000.new.S ================================================================== --- ffcall/callback/trampoline_r/tramp-rs6000.new.S +++ /dev/null @@ -1,43 +0,0 @@ -/* Trampoline for rs6000 CPU with AIX calling convention */ - -/* - * Copyright 1995-1999 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -/* Available registers: r0, r12, r11, r10, r9, r8, r7, r6, r5, r4, r3. */ -/* However, r0 is special in that it cannot be used as a base register. */ -/* And r3...r10 should not be clobbered because they contain the first 8 - * integer arguments to the function being called. */ - - .globl tramp_r - .globl .tramp_r -.csect tramp_r[DS] -tramp_r: - .long .tramp_r, 0, 0 -.csect .text[PR] -.tramp_r: -/* Move into register r11 */ - lwz 11,0(2) /* get */ -/* Get */ - lwz 12,4(2) -/* - * gcc-2.6.3 source says: - * A function pointer is a pointer to a data area whose first word contains - * the actual address of the function, whose second word contains a pointer - * to its TOC, and whose third word contains a value to place in the static - * chain register (r11). But we have already placed our information in r11. - */ -/* lwz 11,8(12) pass static chain in r11 */ - lwz 2,4(12) /* pass TOC in r2 */ - lwz 0,0(12) /* actual code address */ - mtctr 0 - bctr - -_section_.text: -.csect .data[RW] - .long _section_.text DELETED ffcall/callback/trampoline_r/tramp-rs6000.old.S Index: ffcall/callback/trampoline_r/tramp-rs6000.old.S ================================================================== --- ffcall/callback/trampoline_r/tramp-rs6000.old.S +++ /dev/null @@ -1,43 +0,0 @@ -/* Trampoline for rs6000 CPU with AIX calling convention */ - -/* - * Copyright 1995-1999 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -/* Available registers: r0, r12, r11, r10, r9, r8, r7, r6, r5, r4, r3. */ -/* However, r0 is special in that it cannot be used as a base register. */ -/* And r3...r10 should not be clobbered because they contain the first 8 - * integer arguments to the function being called. */ - - .globl tramp_r - .globl .tramp_r -.csect tramp_r[DS] -tramp_r: - .long .tramp_r, 0, 0 -.csect .text[PR] -.tramp_r: -/* Move into register r11 */ - l 11,0(2) /* get */ -/* Get */ - l 12,4(2) -/* - * gcc-2.6.3 source says: - * A function pointer is a pointer to a data area whose first word contains - * the actual address of the function, whose second word contains a pointer - * to its TOC, and whose third word contains a value to place in the static - * chain register (r11). But we have already placed our information in r11. - */ -/* l 11,8(12) pass static chain in r11 */ - l 2,4(12) /* pass TOC in r2 */ - l 0,0(12) /* actual code address */ - mtctr 0 - bctr - -_section_.text: -.csect .data[RW] - .long _section_.text DELETED ffcall/callback/trampoline_r/tramp-s390.s Index: ffcall/callback/trampoline_r/tramp-s390.s ================================================================== --- ffcall/callback/trampoline_r/tramp-s390.s +++ /dev/null @@ -1,26 +0,0 @@ -/* Trampoline for s390 CPU */ - -/* - * Copyright 1995 Bruno Haible, - * Copyright 2001 Gerhard Tonn, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -/* Available registers: r0, r1. */ - -.globl _tramp -_tramp: - bras %r1,.LTN0_0 -.LT0_0: -.LC0: - .long 1934968593 -.LC1: - .long 0xbabebec0 -.LTN0_0: - l %r0,.LC0-.LT0_0(%r1) - l %r1,.LC1-.LT0_0(%r1) - br %r1 DELETED ffcall/callback/trampoline_r/tramp-sparc.o Index: ffcall/callback/trampoline_r/tramp-sparc.o ================================================================== --- ffcall/callback/trampoline_r/tramp-sparc.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/callback/trampoline_r/tramp-sparc.s Index: ffcall/callback/trampoline_r/tramp-sparc.s ================================================================== --- ffcall/callback/trampoline_r/tramp-sparc.s +++ /dev/null @@ -1,18 +0,0 @@ -! Trampoline for sparc CPU - -! Copyright 1995-1997 Bruno Haible, -! -! This is free software distributed under the GNU General Public Licence -! described in the file COPYING. Contact the author if you don't have this -! or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, -! on this software. - -! Available registers: %g1, %g2, %g3. - - .global _tramp - .proc 04 -_tramp: - sethi %hi(0x73554711),%g2 - sethi %hi(0xbabebec0),%g1 - jmp %g1+%lo(0xbabebec0) - or %g2,%lo(0x73554711),%g2 DELETED ffcall/callback/trampoline_r/tramp-sparc64.o Index: ffcall/callback/trampoline_r/tramp-sparc64.o ================================================================== --- ffcall/callback/trampoline_r/tramp-sparc64.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/callback/trampoline_r/tramp-sparc64.old.o Index: ffcall/callback/trampoline_r/tramp-sparc64.old.o ================================================================== --- ffcall/callback/trampoline_r/tramp-sparc64.old.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/callback/trampoline_r/tramp-sparc64.old.s Index: ffcall/callback/trampoline_r/tramp-sparc64.old.s ================================================================== --- ffcall/callback/trampoline_r/tramp-sparc64.old.s +++ /dev/null @@ -1,27 +0,0 @@ -! Trampoline for sparc64 CPU - -! Copyright 1999 Bruno Haible, -! -! This is free software distributed under the GNU General Public Licence -! described in the file COPYING. Contact the author if you don't have this -! or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, -! on this software. - -! Available registers: %g1, %g2, %g3. - - .global _tramp - .proc 04 -_tramp: - call _getpc,0 ! Put the address of _tramp into %o7 - mov %o7,%g1 ! But save the previous %o7 in %g1 -_getpc: - ldx [%o7+(_data-_tramp)],%g5 - ldx [%o7+(_function-_tramp)],%g2 - jmp %g2 - mov %g1,%o7 -_data: - .long 0x73554711 - .long 0x43622155 -_function: - .long 0xbabebec0 - .long 0xdea0ffab DELETED ffcall/callback/trampoline_r/tramp-sparc64.s Index: ffcall/callback/trampoline_r/tramp-sparc64.s ================================================================== --- ffcall/callback/trampoline_r/tramp-sparc64.s +++ /dev/null @@ -1,24 +0,0 @@ -! Trampoline for sparc64 CPU - -! Copyright 1999 Bruno Haible, -! -! This is free software distributed under the GNU General Public Licence -! described in the file COPYING. Contact the author if you don't have this -! or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, -! on this software. - -! Available registers: %g1, %g2, %g3. - - .global _tramp - .proc 04 -_tramp: - rd %pc,%g1 ! Put the address of _tramp into %g1 - ldx [%g1+(_function-_tramp)],%g2 - jmp %g2 - ldx [%g1+(_data-_tramp)],%g5 -_data: - .long 0x73554711 - .long 0x43622155 -_function: - .long 0xbabebec0 - .long 0xdea0ffab DELETED ffcall/callback/trampoline_r/tramp-x86_64.o Index: ffcall/callback/trampoline_r/tramp-x86_64.o ================================================================== --- ffcall/callback/trampoline_r/tramp-x86_64.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/callback/trampoline_r/tramp-x86_64.s Index: ffcall/callback/trampoline_r/tramp-x86_64.s ================================================================== --- ffcall/callback/trampoline_r/tramp-x86_64.s +++ /dev/null @@ -1,21 +0,0 @@ -/* Trampoline for x86_64 CPU */ - -/* - * Copyright 2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -/* Available registers: %rax, %rdx, %rcx, %rsi, %rdi. */ - -.globl tramp - .type tramp,@function -tramp: - movabsq $0x7355471143622155, %r10 - movabsq $0xBABEBEC0DEA0FFAB, %rax - jmp *%rax -.Lfe1: - .size tramp,.Lfe1-tramp DELETED ffcall/callback/trampoline_r/trampoline.c Index: ffcall/callback/trampoline_r/trampoline.c ================================================================== --- ffcall/callback/trampoline_r/trampoline.c +++ /dev/null @@ -1,1265 +0,0 @@ -/* Trampoline construction */ - -/* - * Copyright 1995-1999, 2001-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - - -#include "config.h" -#include "trampoline_r.h" - -#if defined(__hppa__) -#if 0 -#define __hppaold__ /* Old trampoline, real machine code. */ -#else -#define __hppanew__ /* New trampoline, just a closure. */ -#endif -#endif -#if defined(__rs6000__) -#if defined(__NetBSD__) -#define __rs6000netbsd__ -#else -#if !defined(_AIX) -#define __rs6000sysv4__ /* SysV.4 ABI, real machine code. */ -#else -#define __rs6000aix__ /* AIX ABI, just a closure. */ -#endif -#endif -#endif -#if defined(__hppanew__) -/* - * A function pointer is a biased pointer to a data area whose first word - * contains the actual address of the function. - */ -extern void tramp_r (); /* trampoline prototype */ -/* We don't need to take any special measures to make the code executable - * since the actual instructions are in the text segment. - */ -#ifndef CODE_EXECUTABLE -#define CODE_EXECUTABLE -#endif -#endif -#if defined(__rs6000aix__) || defined(__ia64__) -/* - * A function pointer is a pointer to a data area whose first word contains - * the actual address of the function. - */ -extern void (*tramp_r) (); /* trampoline prototype */ -/* We don't need to take any special measures to make the code executable - * since the actual instructions are in the text segment. - */ -#ifndef CODE_EXECUTABLE -#define CODE_EXECUTABLE -#endif -#endif -#if defined(__m68k__) -#if defined(AMIGA) /* Amiga running AmigaOS, not Linux */ -#ifndef CODE_EXECUTABLE /* configure guesses wrong?? */ -#define CODE_EXECUTABLE -#endif -#endif -#endif - -/* As of Windows XP SP 2, malloc'd memory is not executable */ -#ifdef _WIN32 -#undef CODE_EXECUTABLE -#endif - -#ifndef CODE_EXECUTABLE -/* How do we make the trampoline's code executable? */ -#if defined(HAVE_MACH_VM) || defined(__convex__) || defined(HAVE_WORKING_MPROTECT) || defined(HAVE_SYS_M88KBCS_H) -/* mprotect() [or equivalent] the malloc'ed area. */ -#define EXECUTABLE_VIA_MPROTECT -#else -#ifdef HAVE_MMAP -/* Use an mmap'ed page. */ -#define EXECUTABLE_VIA_MMAP -#ifdef HAVE_MMAP_ANONYMOUS -/* Use mmap with the MAP_ANONYMOUS or MAP_ANON flag. */ -#define EXECUTABLE_VIA_MMAP_ANONYMOUS -#else -/* Use mmap on /dev/zero. */ -#define EXECUTABLE_VIA_MMAP_DEVZERO -#endif -#else -#ifdef HAVE_SHM -/* Use an shmat'ed page. */ -#define EXECUTABLE_VIA_SHM -#else -#ifdef _WIN32 -/* Use VirtualAlloc */ -#else -?? -#endif -#endif -#endif -#endif -#endif - -#include /* declares fprintf() */ - -#include -#include /* declares abort(), malloc(), free() */ -#ifdef HAVE_UNISTD_H -#include -#endif - -/* Declare getpagesize(). */ -#ifdef HAVE_GETPAGESIZE -#ifdef __cplusplus -extern "C" RETGETPAGESIZETYPE getpagesize (void); -#elif defined(__STDC__) -extern RETGETPAGESIZETYPE getpagesize (void); -#else -extern RETGETPAGESIZETYPE getpagesize (); -#endif -#else -#ifdef HAVE_SYS_PARAM_H -#include -#else -/* Not Unix, e.g. mingw32 */ -#define PAGESIZE 4096 -#endif -#define getpagesize() PAGESIZE -#endif - -/* Declare mprotect() or equivalent. */ -#ifdef EXECUTABLE_VIA_MPROTECT -#ifdef HAVE_MACH_VM -#include -#include -#ifdef NeXT -#include -#endif -#ifdef __osf__ -#include -#endif -#include -#else -#ifdef HAVE_SYS_M88KBCS_H -#include -#define getpagesize() 4096 /* ?? */ -#else -#include -#include -#endif -#endif -#endif - -/* Declare mmap(). */ -#ifdef EXECUTABLE_VIA_MMAP -#include -#include -#if !defined(PROT_EXEC) && defined(PROT_EXECUTE) /* Irix 4.0.5 needs this */ -#define PROT_EXEC PROT_EXECUTE -#endif -#endif - -/* Declare open(). */ -#ifdef EXECUTABLE_VIA_MMAP_DEVZERO -#include -#include -#include -#ifdef OPEN_NEEDS_SYS_FILE_H -#include -#endif -#endif - -/* Declare shmget(), shmat(), shmctl(). */ -#ifdef EXECUTABLE_VIA_SHM -#include -#include -#include -#ifdef HAVE_SYS_SYSMACROS_H -#include -#endif -#endif - -/* Support for instruction cache flush. */ -#ifdef __i386__ -#if defined(_WIN32) /* WindowsNT or Windows95 */ -#define WIN32_LEAN_AND_MEAN -#define WIN32_EXTRA_LEAN -#include -#endif -#endif -#ifdef __m68k__ -#if defined(AMIGA) /* Amiga running AmigaOS, not Linux */ -#include -#include -#include -#endif -#ifdef hpux -#include -#endif -#endif -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) -#ifdef ultrix -#include -#else -#ifdef linux -#include -#else -#ifdef HAVE_SYS_CACHECTL_H -#include -#endif -#endif -#endif -#endif -#ifdef __m88k__ -#include -#endif -/* Inline assembly function for instruction cache flush. */ -#if defined(__sparc__) || defined(__sparc64__) || defined(__alpha__) || defined(__hppaold__) || defined(__rs6000sysv4__) || defined(__rs6000netbsd__) || defined(__convex__) -#ifdef __GNUC__ -extern inline -#if defined(__sparc__) || defined(__sparc64__) -#include "cache-sparc.c" -#endif -#ifdef __alpha__ -#include "cache-alpha.c" -#endif -#ifdef __hppa__ -#include "cache-hppa.c" -#endif -#ifdef __rs6000__ -#include "cache-rs6000.c" -#endif -#ifdef __convex__ -#include "cache-convex.c" -#endif -#else -#if defined(__sparc__) || defined(__sparc64__) -extern void __TR_clear_cache_4(); -#else -extern void __TR_clear_cache(); -#endif -#endif -#endif - -/* Length and alignment of trampoline */ -#ifdef __i386__ -#define TRAMP_LENGTH 16 -#define TRAMP_ALIGN 16 /* 4 for a i386, 16 for a i486 */ -#endif -#ifdef __m68k__ -#define TRAMP_LENGTH 14 -#define TRAMP_ALIGN 16 -#endif -#if defined(__mips__) && !defined(__mipsn32__) -#define TRAMP_LENGTH 24 -#define TRAMP_ALIGN 4 -#endif -#ifdef __mipsn32__ -#define TRAMP_LENGTH 24 -#define TRAMP_ALIGN 4 -#endif -#ifdef __mips64old__ -#define TRAMP_LENGTH 56 -#define TRAMP_ALIGN 4 -#endif -#ifdef __mips64__ -#define TRAMP_LENGTH 32 -#define TRAMP_ALIGN 8 -#endif -#if defined(__sparc__) && !defined(__sparc64__) -#define TRAMP_LENGTH 16 -#define TRAMP_ALIGN 16 -#endif -#ifdef __sparc64__ -#define TRAMP_LENGTH 32 -#define TRAMP_ALIGN 16 -#endif -#ifdef __alpha__ -#define TRAMP_LENGTH 32 -#define TRAMP_ALIGN 8 -#endif -#ifdef __hppaold__ -#define TRAMP_LENGTH 48 -#define TRAMP_ALIGN 16 -#endif -#ifdef __hppanew__ -#define TRAMP_LENGTH 16 -#define TRAMP_ALIGN 16 -#define TRAMP_BIAS 2 -#endif -#ifdef __arm__ -#define TRAMP_LENGTH 32 -#define TRAMP_ALIGN 4 -#endif -#ifdef __rs6000sysv4__ -#define TRAMP_LENGTH 24 -#define TRAMP_ALIGN 4 -#endif -#ifdef __rs6000netbsd__ -#define TRAMP_LENGTH 24 -#define TRAMP_ALIGN 4 -#endif -#ifdef __rs6000aix__ -#define TRAMP_LENGTH 20 -#define TRAMP_ALIGN 4 -#endif -#ifdef __m88k__ -#define TRAMP_LENGTH 20 -#define TRAMP_ALIGN 8 -#endif -#ifdef __convex__ -#define TRAMP_LENGTH 14 -#define TRAMP_ALIGN 4 -#endif -#ifdef __ia64__ -#define TRAMP_LENGTH 32 -#define TRAMP_ALIGN 16 -#endif -#ifdef __x86_64__ -#define TRAMP_LENGTH 22 -#define TRAMP_ALIGN 16 -#endif -#ifdef __s390__ -#define TRAMP_LENGTH 22 -#define TRAMP_ALIGN 2 -#endif - -#ifndef TRAMP_BIAS -#define TRAMP_BIAS 0 -#endif - -#define TRAMP_TOTAL_LENGTH (TRAMP_LENGTH + 2*sizeof(void*)) - -#if !defined(CODE_EXECUTABLE) && !defined(EXECUTABLE_VIA_MPROTECT) -/* AIX doesn't support mprotect() in malloc'ed memory. Must get pages of - * memory with execute permission via mmap(). Then keep a free list of - * free trampolines. - */ -static char* freelist = NULL; -#endif - -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -__TR_function alloc_trampoline_r (__TR_function address, void* data0, void* data1) -#else -__TR_function alloc_trampoline_r (address, data0, data1) - __TR_function address; - void* data0; - void* data1; -#endif -{ - char* function; - char* data; - -#if !defined(CODE_EXECUTABLE) - static long pagesize = 0; -#if defined(EXECUTABLE_VIA_MMAP_DEVZERO) - static int zero_fd; -#endif - /* First, get the page size once and for all. */ - if (!pagesize) - { -#if defined(HAVE_MACH_VM) - pagesize = vm_page_size; -#else - pagesize = getpagesize(); -#endif -#if defined(EXECUTABLE_VIA_MMAP_DEVZERO) - zero_fd = open("/dev/zero",O_RDONLY,0644); - if (zero_fd < 0) - { fprintf(stderr,"trampoline: Cannot open /dev/zero!\n"); abort(); } -#endif - } -#endif - - /* 1. Allocate room */ - -#if !defined(CODE_EXECUTABLE) && !defined(EXECUTABLE_VIA_MPROTECT) - /* Note: This memory allocation is not multithread-safe. We might need - * to add special (platform dependent) code for locking. - * Fortunately, most modern systems where multithread-safety matters - * have EXECUTABLE_VIA_MPROTECT, and those which don't (AIX on rs6000 and - * HP-UX on hppa) have CODE_EXECUTABLE. Thus no locking code is needed - * for the moment. - */ - if (freelist == NULL) - { /* Get a new page. */ - char* page; -#ifdef EXECUTABLE_VIA_MMAP_ANONYMOUS - page = mmap(0, pagesize, PROT_READ | PROT_WRITE | PROT_EXEC, MAP_ANONYMOUS | MAP_VARIABLE, -1, 0); -#endif -#ifdef EXECUTABLE_VIA_MMAP_DEVZERO - page = mmap(0, pagesize, PROT_READ | PROT_WRITE | PROT_EXEC, MAP_PRIVATE, zero_fd, 0); -#endif -#ifdef EXECUTABLE_VIA_SHM - int shmid = shmget(IPC_PRIVATE, pagesize, 0700|IPC_CREAT); - if (shmid<0) - { page = (char*)(-1); } - else - { page = shmat(shmid, 0, 0); shmctl(shmid, IPC_RMID, 0); } -#endif -#ifdef _WIN32 - page = VirtualAlloc(NULL, pagesize, MEM_COMMIT, PAGE_EXECUTE_READWRITE); - if (page == 0) - { page = (char*)(-1); } -#endif - if (page == (char*)(-1)) - { fprintf(stderr,"trampoline: Out of virtual memory!\n"); abort(); } - /* Fill it with free trampolines. */ - { char** last = &freelist; - char* page_end = page + pagesize; - while (page+TRAMP_TOTAL_LENGTH <= page_end) - { *last = page; last = (char**)page; page += TRAMP_TOTAL_LENGTH; } - *last = NULL; - } } - function = freelist; freelist = *(char**)freelist; -#else - { char* room = (char*) malloc(sizeof(void*) + TRAMP_TOTAL_LENGTH + TRAMP_ALIGN-1); - if (!room) - { fprintf(stderr,"trampoline: Out of virtual memory!\n"); abort(); } - function = (char*)(((long)room + sizeof(void*) + TRAMP_ALIGN-1) & -TRAMP_ALIGN); - ((char**)function)[-1] = room; /* backpointer for free_trampoline() */ - } -#endif - - /* 2. Fill out the trampoline */ - data = function + TRAMP_LENGTH; - /* Knowing that data = function + TRAMP_LENGTH, we could certainly optimize - * the trampolines a little bit more, using PC relative addressing modes. - * But I doubt it's really worth it. - */ -#ifdef __i386__ - /* function: - * popl %ecx 59 - * pushl $ 68 - * pushl %ecx 51 - * jmp
E9
- - * here: - * nop 90 - * nop 90 - * nop 90 - * nop 90 - */ - *(short *) (function + 0) = 0x6859; - *(long *) (function + 2) = (long) data; - *(short *) (function + 6) = 0xE951; - *(long *) (function + 8) = (long) address - (long) (function + 12); - *(long *) (function +12) = 0x90909090; /* nop nop nop nop, for alignment */ -#define is_tramp(function) \ - *(unsigned short *) (function + 0) == 0x6859 && \ - *(unsigned short *) (function + 6) == 0xE951 -#define tramp_address(function) \ - *(long *) (function + 8) + (long) (function + 12) -#define tramp_data(function) \ - *(long *) (function + 2) -#endif -#ifdef __m68k__ - /* function: - * movel #,a0 20 7C - * jmp
4E F9
- * nop 4E 71 - */ - *(short *) (function + 0) = 0x207C; - *(long *) (function + 2) = (long) data; - *(short *) (function + 6) = 0x4EF9; - *(long *) (function + 8) = (long) address; - *(short *) (function +12) = 0x4E71; -#define is_tramp(function) \ - *(unsigned short *) (function + 0) == 0x207C && \ - *(unsigned short *) (function + 6) == 0x4EF9 && \ - *(unsigned short *) (function +12) == 0x4E71 -#define tramp_address(function) \ - *(long *) (function + 8) -#define tramp_data(function) \ - *(long *) (function + 2) -#endif -#if defined(__mips__) && !defined(__mipsn32__) - /* function: - * li $2,&0xffff0000 3C 02 hi16() - * ori $2,$2,&0xffff 34 42 lo16() - * li $25,
&0xffff0000 3C 19 hi16(
) - * ori $25,$25,
&0xffff 37 39 lo16(
) - * j $25 03 20 00 08 - * nop 00 00 00 00 - */ - /* What about big endian / little endian ?? */ - *(short *) (function + 0) = 0x3C02; - *(short *) (function + 2) = (unsigned long) data >> 16; - *(short *) (function + 4) = 0x3442; - *(short *) (function + 6) = (unsigned long) data & 0xffff; - *(short *) (function + 8) = 0x3C19; - *(short *) (function +10) = (unsigned long) address >> 16; - *(short *) (function +12) = 0x3739; - *(short *) (function +14) = (unsigned long) address & 0xffff; - *(long *) (function +16) = 0x03200008; - *(long *) (function +20) = 0x00000000; -#define is_tramp(function) \ - *(unsigned short *) (function + 0) == 0x3C02 && \ - *(unsigned short *) (function + 4) == 0x3442 && \ - *(unsigned short *) (function + 8) == 0x3C19 && \ - *(unsigned short *) (function +12) == 0x3739 && \ - *(unsigned long *) (function +16) == 0x03200008 && \ - *(unsigned long *) (function +20) == 0x00000000 -#define hilo(hiword,loword) \ - (((unsigned long) (hiword) << 16) | (unsigned long) (loword)) -#define tramp_address(function) \ - hilo(*(unsigned short *) (function +10), *(unsigned short *) (function +14)) -#define tramp_data(function) \ - hilo(*(unsigned short *) (function + 2), *(unsigned short *) (function + 6)) -#endif -#ifdef __mipsn32__ - /* function: - * lw $2,16($25) 8F 22 00 10 - * lw $25,20($25) 8F 39 00 14 - * j $25 03 20 00 08 - * nop 00 00 00 00 - * .word - * .word
- */ - /* What about big endian / little endian ?? */ - *(unsigned int *) (function + 0) = 0x8F220010; - *(unsigned int *) (function + 4) = 0x8F390014; - *(unsigned int *) (function + 8) = 0x03200008; - *(unsigned int *) (function +12) = 0x00000000; - *(unsigned int *) (function +16) = (unsigned int) data; - *(unsigned int *) (function +20) = (unsigned int) address; -#define is_tramp(function) \ - *(int *) (function + 0) == 0x8F220010 && \ - *(int *) (function + 4) == 0x8F390014 && \ - *(int *) (function + 8) == 0x03200008 && \ - *(int *) (function +12) == 0x00000000 -#define tramp_address(function) \ - *(unsigned int *) (function +20) -#define tramp_data(function) \ - *(unsigned int *) (function +16) -#endif -#ifdef __mips64old__ - /* function: - * dli $2, 3C 02 hi16(hi32()) - * 34 42 lo16(hi32()) - * 00 02 14 38 - * 34 42 hi16(lo32()) - * 00 02 14 38 - * 34 42 lo16(lo32()) - * dli $25,
3C 19 hi16(hi32(
)) - * 37 39 lo16(hi32(
)) - * 00 19 CC 38 - * 37 39 hi16(lo32(
)) - * 00 19 CC 38 - * 37 39 lo16(lo32(
)) - * j $25 03 20 00 08 - * nop 00 00 00 00 - */ - /* What about big endian / little endian ?? */ - *(short *) (function + 0) = 0x3C02; - *(short *) (function + 2) = (unsigned long) data >> 48; - *(short *) (function + 4) = 0x3442; - *(short *) (function + 6) = ((unsigned long) data >> 32) & 0xffff; - *(int *) (function + 8) = 0x00021438; - *(short *) (function +12) = 0x3442; - *(short *) (function +14) = ((unsigned long) data >> 16) & 0xffff; - *(int *) (function +16) = 0x00021438; - *(short *) (function +20) = 0x3442; - *(short *) (function +22) = (unsigned long) data & 0xffff; - *(short *) (function +24) = 0x3C19; - *(short *) (function +26) = (unsigned long) address >> 48; - *(short *) (function +28) = 0x3739; - *(short *) (function +30) = ((unsigned long) address >> 32) & 0xffff; - *(int *) (function +32) = 0x0019CC38; - *(short *) (function +36) = 0x3739; - *(short *) (function +38) = ((unsigned long) address >> 16) & 0xffff; - *(int *) (function +40) = 0x0019CC38; - *(short *) (function +44) = 0x3739; - *(short *) (function +46) = (unsigned long) address & 0xffff; - *(int *) (function +48) = 0x03200008; - *(int *) (function +52) = 0x00000000; -#define is_tramp(function) \ - *(unsigned short *) (function + 0) == 0x3C02 && \ - *(unsigned short *) (function + 4) == 0x3442 && \ - *(unsigned int *) (function + 8) == 0x00021438 && \ - *(unsigned short *) (function +12) == 0x3442 && \ - *(unsigned int *) (function +16) == 0x00021438 && \ - *(unsigned short *) (function +20) == 0x3442 && \ - *(unsigned short *) (function +24) == 0x3C19 && \ - *(unsigned short *) (function +28) == 0x3739 && \ - *(unsigned int *) (function +32) == 0x0019CC38 && \ - *(unsigned short *) (function +36) == 0x3739 && \ - *(unsigned int *) (function +40) == 0x0019CC38 && \ - *(unsigned short *) (function +44) == 0x3739 && \ - *(unsigned int *) (function +48) == 0x03200008 && \ - *(unsigned int *) (function +52) == 0x00000000 -#define hilo(word3,word2,word1,word0) \ - (((unsigned long) (word3) << 48) | ((unsigned long) (word2) << 32) | \ - ((unsigned long) (word1) << 16) | (unsigned long) (word0)) -#define tramp_address(function) \ - hilo(*(unsigned short *) (function +26), \ - *(unsigned short *) (function +30), \ - *(unsigned short *) (function +38), \ - *(unsigned short *) (function +46)) -#define tramp_data(function) \ - hilo(*(unsigned short *) (function + 2), \ - *(unsigned short *) (function + 6), \ - *(unsigned short *) (function +14), \ - *(unsigned short *) (function +22)) -#endif -#ifdef __mips64__ - /* function: - * ld $2,16($25) DF 22 00 10 - * ld $25,24($25) DF 39 00 18 - * j $25 03 20 00 08 - * nop 00 00 00 00 - * .dword - * .dword
- */ - /* What about big endian / little endian ?? */ - *(long *) (function + 0) = 0xDF220010DF390018L; - *(long *) (function + 8) = 0x0320000800000000L; - *(unsigned long *) (function +16) = (unsigned long) data; - *(unsigned long *) (function +24) = (unsigned long) address; -#define is_tramp(function) \ - *(long *) (function + 0) == 0xDF220010DF390018L && \ - *(long *) (function + 8) == 0x0320000800000000L -#define tramp_address(function) \ - *(unsigned long *) (function +24) -#define tramp_data(function) \ - *(unsigned long *) (function +16) -#endif -#if defined(__sparc__) && !defined(__sparc64__) - /* function: - * sethi %hi(),%g2 05000000 | ( >> 10) - * sethi %hi(
),%g1 03000000 | (
>> 10) - * jmp %g1+%lo(
) 81C06000 | (
& 0x3ff) - * or %g2,%lo(),%g2 8410A000 | ( & 0x3ff) - */ -#define hi(word) ((unsigned long) (word) >> 10) -#define lo(word) ((unsigned long) (word) & 0x3ff) - *(long *) (function + 0) = 0x05000000 | hi(data); - *(long *) (function + 4) = 0x03000000 | hi(address); - *(long *) (function + 8) = 0x81C06000 | lo(address); - *(long *) (function +12) = 0x8410A000 | lo(data); -#define is_tramp(function) \ - (*(long *) (function + 0) & 0xffc00000) == 0x05000000 && \ - (*(long *) (function + 4) & 0xffc00000) == 0x03000000 && \ - (*(long *) (function + 8) & 0xfffffc00) == 0x81C06000 && \ - (*(long *) (function +12) & 0xfffffc00) == 0x8410A000 -#define hilo(hiword,loword) (((hiword) << 10) | ((loword) & 0x3ff)) -#define tramp_address(function) \ - hilo(*(long *) (function + 4), *(long *) (function + 8)) -#define tramp_data(function) \ - hilo(*(long *) (function + 0), *(long *) (function +12)) -#endif -#ifdef __sparc64__ - /* function: - * rd %pc,%g1 83414000 - * ldx [%g1+24],%g2 C4586018 - * jmp %g2 81C08000 - * ldx [%g1+16],%g5 CA586010 - * .long high32() >> 32 - * .long low32() & 0xffffffff - * .long high32(
)
>> 32 - * .long low32(
)
& 0xffffffff - */ - *(int *) (function + 0) = 0x83414000; - *(int *) (function + 4) = 0xC4586018; - *(int *) (function + 8) = 0x81C08000; - *(int *) (function +12) = 0xCA586010; - *(long *) (function +16) = (long) data; - *(long *) (function +24) = (long) address; -#define is_tramp(function) \ - *(int *) (function + 0) == 0x83414000 && \ - *(int *) (function + 4) == 0xC4586018 && \ - *(int *) (function + 8) == 0x81C08000 && \ - *(int *) (function +12) == 0xCA586010 -#define tramp_address(function) \ - *(long *) (function +24) -#define tramp_data(function) \ - *(long *) (function +16) -#endif -#ifdef __alpha__ - /* function: - * br $1,function..ng 00 00 20 C0 - * function..ng: - * ldq $27,20($1) 14 00 61 A7 - * ldq $1,12($1) 0C 00 21 A4 - * jmp $31,($27),0 00 00 FB 6B - * .quad - * .quad
- */ - { static int code [4] = - { 0xC0200000, 0xA7610014, 0xA421000C, 0x6BFB0000 }; - int i; - for (i=0; i<4; i++) { ((int *) function)[i] = code[i]; } - ((long *) function)[2] = (long) data; - ((long *) function)[3] = (long) address; - } -#define is_tramp(function) \ - ((int *) function)[0] == 0xC0200000 && \ - ((int *) function)[1] == 0xA7610014 && \ - ((int *) function)[2] == 0xA421000C && \ - ((int *) function)[3] == 0x6BFB0000 -#define tramp_address(function) \ - ((long *) function)[3] -#define tramp_data(function) \ - ((long *) function)[2] -#endif -#ifdef __hppaold__ - /* function: - * ldil L',%r29 23A00000 | hi() - * ldil L'
,%r21 22A00000 | hi(
) - * ldo R'(%r29),%r29 37BD0000 | lo() - * ldo R'
(%r21),%r21 36B50000 | lo(
) - * bb,>=,n %r21,30,function2 C7D5C012 - * depi 0,31,2,%r21 D6A01C1E - * ldw 4(0,%r21),%r19 4AB30008 - * ldw 0(0,%r21),%r21 4AB50000 - * function2: - * ldsid (0,%r21),%r1 02A010A1 - * mtsp %r1,%sr0 00011820 - * be,n 0(%sr0,%r21) E2A00002 - * nop 08000240 - */ - /* When decoding a 21-bit argument in an instruction, the hppa performs - * the following bit manipulation: - * assemble21: x[20]...x[0] - * --> x[0] x[11]...x[1] x[15]..x[14] x[20]...x[16] x[13]..x[12] - * When encoding a 21-bit argument into an instruction, we need the - * to perform the reverse permutation: - * permute21: y[20]...y[0] - * --> y[6]...y[2] y[8]..y[7] y[1]..y[0] y[19]...y[9] y[20] - */ -#define assemble21(x) \ - ((((x) & 0x1) << 20) | (((x) & 0xFFE) << 8) | \ - (((x) & 0xC000) >> 7) | (((x) & 0x1F0000) >> 14) | (((x) & 0x3000) >> 12)) -#define permute21(y) \ - ((((y) & 0x7C) << 14) | (((y) & 0x180) << 7) | (((y) & 0x3) << 12) | \ - (((y) & 0xFFE00) >> 8) | (((y) & 0x100000) >> 20)) -#define hi(word) permute21((unsigned long) (word) >> 11) -#define lo(word) (((unsigned long) (word) & 0x7FF) << 1) - *(long *) (function + 0) = 0x23A00000 | hi(data); - *(long *) (function + 4) = 0x22A00000 | hi(address); - *(long *) (function + 8) = 0x37BD0000 | lo(data); - *(long *) (function +12) = 0x36B50000 | lo(address); - *(long *) (function +16) = 0xC7D5C012; - *(long *) (function +20) = 0xD6A01C1E; - *(long *) (function +24) = 0x4AB30008; - *(long *) (function +28) = 0x4AB50000; - *(long *) (function +32) = 0x02A010A1; - *(long *) (function +36) = 0x00011820; - *(long *) (function +40) = 0xE2A00002; - *(long *) (function +44) = 0x08000240; -#define is_tramp(function) \ - ((long) function & 3) == 0 && \ - (*(long *) (function + 0) & 0xffe00000) == 0x23A00000 && \ - (*(long *) (function + 4) & 0xffe00000) == 0x22A00000 && \ - (*(long *) (function + 8) & 0xfffff000) == 0x37BD0000 && \ - (*(long *) (function +12) & 0xfffff000) == 0x36B50000 && \ - *(long *) (function +16) == 0xC7D5C012 && \ - *(long *) (function +20) == 0xD6A01C1E && \ - *(long *) (function +24) == 0x4AB30008 && \ - *(long *) (function +28) == 0x4AB50000 && \ - *(long *) (function +32) == 0x02A010A1 && \ - *(long *) (function +36) == 0x00011820 && \ - *(long *) (function +40) == 0xE2A00002 && \ - *(long *) (function +44) == 0x08000240 -#define hilo(hiword,loword) \ - ((assemble21((unsigned long) (hiword)) << 11) | \ - (((unsigned long) (loword) & 0xFFE) >> 1) \ - ) -#define tramp_address(function) \ - hilo(*(long *) (function + 4), *(long *) (function +12)) -#define tramp_data(function) \ - hilo(*(long *) (function + 0), *(long *) (function + 8)) -#endif -#ifdef __hppanew__ - /* function: - * .long tramp_r - * .long closure - * closure: - * .long - * .long
- */ - { /* work around a bug in gcc 3.* */ - void* tramp_r_address = &tramp_r; - *(long *) (function + 0) = ((long *) ((char*)tramp_r_address-2))[0]; - *(long *) (function + 4) = (long) (function + 8); - *(long *) (function + 8) = (long) data; - *(long *) (function +12) = (long) address; - } -#define is_tramp(function) \ - ((long *) function)[0] == ((long *) ((char*)tramp_r_address-2))[0] -#define tramp_address(function) \ - ((long *) function)[3] -#define tramp_data(function) \ - ((long *) function)[2] -#endif -#ifdef __arm__ - /* function: - * ldr ip,[pc,#_function-.-8] E59FC014 - * ldr ip,[ip,#0] E59CC000 ??Is this correct?? - * stmfd sp!,{ip} E92D1000 - * ldr ip,[pc,#_data-.-8] E59FC004 - * ldr ip,[ip,#0] E59CC000 ??Is this correct?? - * ldmfd sp!,{pc}^ E8FD8000 - * _data: - * .word - * _function: - * .word
- */ - { static long code [6] = - { 0xE59FC014, 0xE59CC000, 0xE92D1000, 0xE59FC004, - 0xE59CC000, 0xE8FD8000 - }; - int i; - for (i=0; i<6; i++) { ((long *) function)[i] = code[i]; } - ((long *) function)[6] = (long) data; - ((long *) function)[7] = (long) address; - } -#define is_tramp(function) \ - ((long *) function)[0] == 0xE59FC014 && \ - ((long *) function)[1] == 0xE59CC000 && \ - ((long *) function)[2] == 0xE92D1000 && \ - ((long *) function)[3] == 0xE59FC004 && \ - ((long *) function)[4] == 0xE59CC000 && \ - ((long *) function)[5] == 0xE8FD8000 -#define tramp_address(function) \ - ((long *) function)[7] -#define tramp_data(function) \ - ((long *) function)[6] -#endif -#ifdef __rs6000sysv4__ - /* function: - * {liu|lis} 11,hi16() 3D 60 hi16() - * {oril|ori} 11,11,lo16() 61 6B lo16() - * {liu|lis} 0,hi16(
) 3C 00 hi16(
) - * {oril|ori} 0,0,lo16(
) 60 00 lo16(
) - * mtctr 0 7C 09 03 A6 - * bctr 4E 80 04 20 - */ - *(short *) (function + 0) = 0x3D60; - *(short *) (function + 2) = (unsigned long) data >> 16; - *(short *) (function + 4) = 0x616B; - *(short *) (function + 6) = (unsigned long) data & 0xffff; - *(short *) (function + 8) = 0x3C00; - *(short *) (function +10) = (unsigned long) address >> 16; - *(short *) (function +12) = 0x6000; - *(short *) (function +14) = (unsigned long) address & 0xffff; - *(long *) (function +16) = 0x7C0903A6; - *(long *) (function +20) = 0x4E800420; -#define is_tramp(function) \ - *(unsigned short *) (function + 0) == 0x3D60 && \ - *(unsigned short *) (function + 4) == 0x616B && \ - *(unsigned short *) (function + 8) == 0x3C00 && \ - *(unsigned short *) (function +12) == 0x6000 && \ - *(unsigned long *) (function +16) == 0x7C0903A6 && \ - *(unsigned long *) (function +20) == 0x4E800420 -#define hilo(hiword,loword) \ - (((unsigned long) (hiword) << 16) | (unsigned long) (loword)) -#define tramp_address(function) \ - hilo(*(unsigned short *) (function +10), *(unsigned short *) (function +14)) -#define tramp_data(function) \ - hilo(*(unsigned short *) (function + 2), *(unsigned short *) (function + 6)) -#endif -#ifdef __rs6000netbsd__ - /* function: - * {liu|lis} 13,hi16() 3D A0 hi16() - * {oril|ori} 13,13,lo16() 61 AD lo16() - * {liu|lis} 0,hi16(
) 3C 00 hi16(
) - * {oril|ori} 0,0,lo16(
) 60 00 lo16(
) - * mtctr 0 7C 09 03 A6 - * bctr 4E 80 04 20 - */ - *(short *) (function + 0) = 0x3DA0; - *(short *) (function + 2) = (unsigned long) data >> 16; - *(short *) (function + 4) = 0x61AD; - *(short *) (function + 6) = (unsigned long) data & 0xffff; - *(short *) (function + 8) = 0x3C00; - *(short *) (function +10) = (unsigned long) address >> 16; - *(short *) (function +12) = 0x6000; - *(short *) (function +14) = (unsigned long) address & 0xffff; - *(long *) (function +16) = 0x7C0903A6; - *(long *) (function +20) = 0x4E800420; -#define is_tramp(function) \ - *(unsigned short *) (function + 0) == 0x3DA0 && \ - *(unsigned short *) (function + 4) == 0x61AD && \ - *(unsigned short *) (function + 8) == 0x3C00 && \ - *(unsigned short *) (function +12) == 0x6000 && \ - *(unsigned long *) (function +16) == 0x7C0903A6 && \ - *(unsigned long *) (function +20) == 0x4E800420 -#define hilo(hiword,loword) \ - (((unsigned long) (hiword) << 16) | (unsigned long) (loword)) -#define tramp_address(function) \ - hilo(*(unsigned short *) (function +10), *(unsigned short *) (function +14)) -#define tramp_data(function) \ - hilo(*(unsigned short *) (function + 2), *(unsigned short *) (function + 6)) -#endif -#ifdef __rs6000aix__ - /* function: - * .long .tramp_r - * .long .mytoc - * .long 0 - * .mytoc: - * .long - * .long
- */ - *(long *) (function + 0) = ((long *) &tramp_r)[0]; - *(long *) (function + 4) = (long) (function + 12); - *(long *) (function + 8) = 0; - *(long *) (function +12) = (long) data; - *(long *) (function +16) = (long) address; -#define is_tramp(function) \ - ((long *) function)[0] == ((long *) &tramp_r)[0] -#define tramp_address(function) \ - ((long *) function)[4] -#define tramp_data(function) \ - ((long *) function)[3] -#endif -#ifdef __m88k__ - /* function: - * or.u #r11,#r0,hi16() 5D 60 hi16() - * or #r11,#r11,lo16() 59 6B lo16() - * or.u #r13,#r0,hi16(
) 5D A0 hi16(
) - * or #r13,#r13,lo16(
) 59 AD lo16(
) - * jmp #r13 F4 00 C0 0D - */ - *(short *) (function + 0) = 0x5D60; - *(short *) (function + 2) = (unsigned long) data >> 16; - *(short *) (function + 4) = 0x596B; - *(short *) (function + 6) = (unsigned long) data & 0xffff; - *(short *) (function + 8) = 0x5DA0; - *(short *) (function +10) = (unsigned long) address >> 16; - *(short *) (function +12) = 0x59AD; - *(short *) (function +14) = (unsigned long) address & 0xffff; - *(long *) (function +16) = 0xF400C00D; -#define is_tramp(function) \ - *(unsigned short *) (function + 0) == 0x5D60 && \ - *(unsigned short *) (function + 4) == 0x596B && \ - *(unsigned short *) (function + 8) == 0x5DA0 && \ - *(unsigned short *) (function +12) == 0x59AD && \ - *(unsigned long *) (function +16) == 0xF400C00D -#define hilo(hiword,loword) \ - (((unsigned long) (hiword) << 16) | (unsigned long) (loword)) -#define tramp_address(function) \ - hilo(*(unsigned short *) (function +10), *(unsigned short *) (function +14)) -#define tramp_data(function) \ - hilo(*(unsigned short *) (function + 2), *(unsigned short *) (function + 6)) -#endif -#ifdef __convex__ - /* function: - * ld.w #,s0 ???? - * jmp
0140
- * ds.h 0 0000 - */ - *(short *) (function + 0) = 0x????; - *(long *) (function + 2) = (unsigned long) data; - *(short *) (function + 6) = 0x0140; - *(long *) (function + 8) = (unsigned long) address; - *(short *) (function +12) = 0x0000; -#define is_tramp(function) \ - *(unsigned short *) (function + 0) == 0x???? && \ - *(unsigned short *) (function + 6) == 0x0140 && \ - *(unsigned short *) (function +12) == 0x0000 -#define tramp_address(function) \ - *(long *) (function + 8) -#define tramp_data(function) \ - *(long *) (function + 2) -#endif -#ifdef __ia64__ - /* function: - * data8 tramp_r - * data8 closure - * closure: - * data8
- * data8 - */ - *(long *) (function + 0) = (long) &tramp_r; - *(long *) (function + 8) = (long) (function + 16); - *(long *) (function +16) = (long) address; - *(long *) (function +24) = (long) data; -#define is_tramp(function) \ - ((long *) function)[0] == (long) &tramp_r -#define tramp_address(function) \ - ((long *) function)[2] -#define tramp_data(function) \ - ((long *) function)[3] -#endif -#ifdef __x86_64__ - /* function: - * movabsq $,%r10 49 BA - * movabsq $
,%rax 48 B8
- * jmp *%rax FF E0 - */ - *(short *) (function + 0) = 0xBA49; - *(short *) (function + 2) = (unsigned long) data & 0xffff; - *(int *) (function + 4) = ((unsigned long) data >> 16) & 0xffffffff; - *(short *) (function + 8) = ((unsigned long) data >> 48) & 0xffff; - *(short *) (function +10) = 0xB848; - *(int *) (function +12) = (unsigned long) address & 0xffffffff; - *(int *) (function +16) = ((unsigned long) address >> 32) & 0xffffffff; - *(short *) (function +20) = 0xE0FF; -#define is_tramp(function) \ - *(unsigned short *) (function + 0) == 0xBA49 && \ - *(unsigned short *) (function +10) == 0xB848 && \ - *(unsigned short *) (function +20) == 0xE0FF -#define hilo(hiword,loword) \ - (((unsigned long) (hiword) << 32) | (unsigned long) (loword)) -#define himidlo(hishort,midword,loshort) \ - (((unsigned long) (hishort) << 48) | (unsigned long) (midword) << 16 \ - | (unsigned long) (loshort)) -#define tramp_address(function) \ - hilo(*(unsigned int *) (function +16), *(unsigned int *) (function +12)) -#define tramp_data(function) \ - himidlo(*(unsigned short *) (function + 8), \ - *(unsigned int *) (function + 4), \ - *(unsigned short *) (function + 2)) -#endif -#ifdef __s390__ - /* function: - - bras %r1,.LTN0_0 -.LT0_0: -.LC0: - .long 0x73554711 -.LC1: - .long 0xbabebec0 -.LTN0_0: - l %r0,.LC0-.LT0_0(%r1) - l %r1,.LC1-.LT1_0(%r1) - br %r1 - */ - /* What about big endian / little endian ?? */ - *(unsigned int *) (function + 0) = 0xA7150006; - *(unsigned int *) (function + 4) = (unsigned int) data; - *(unsigned int *) (function + 8) = (unsigned int) address; - *(unsigned int *) (function +12) = 0x58001000; - *(unsigned int *) (function +16) = 0x58101004; - *(unsigned short *) (function +20) = 0x07f1; -#define is_tramp(function) \ - *(int *) (function + 0) == 0xA7150006 && \ - *(int *) (function +12) == 0x58001000 && \ - *(int *) (function +16) == 0x58101004 && \ - *(short *) (function +20) == 0x07f1 -#define tramp_address(function) \ - *(unsigned int *) (function +8) -#define tramp_data(function) \ - *(unsigned int *) (function +4) -#endif - /* - * data: - * - * - */ - *(long *) (data + 0*sizeof(void*)) = (long) data0; - *(long *) (data + 1*sizeof(void*)) = (long) data1; - - /* 3. Set memory protection to "executable" */ - -#if !defined(CODE_EXECUTABLE) && defined(EXECUTABLE_VIA_MPROTECT) - /* Call mprotect on the pages that contain the range. */ - { unsigned long start_addr = (unsigned long) function; - unsigned long end_addr = (unsigned long) (function + TRAMP_LENGTH); - start_addr = start_addr & -pagesize; - end_addr = (end_addr + pagesize-1) & -pagesize; - {unsigned long len = end_addr - start_addr; -#if defined(HAVE_MACH_VM) - if (vm_protect(task_self(),start_addr,len,0,VM_PROT_READ|VM_PROT_WRITE|VM_PROT_EXECUTE) != KERN_SUCCESS) -#else -#if defined(__convex__) - /* Convex OS calls it `mremap()'. */ - mremap(start_addr, &len, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE); - if (0) -#else -#if defined(HAVE_SYS_M88KBCS_H) - if (memctl(start_addr, len, MCT_TEXT) == -1) -#else - if (mprotect((void*)start_addr, len, PROT_READ|PROT_WRITE|PROT_EXEC) < 0) -#endif -#endif -#endif - { fprintf(stderr,"trampoline: cannot make memory executable\n"); abort(); } - }} -#endif - - /* 4. Flush instruction cache */ - /* We need this because some CPUs have separate data cache and instruction - * cache. The freshly built trampoline is visible to the data cache, but not - * maybe not to the instruction cache. This is hairy. - */ -#if !(defined(__hppanew__) || defined(__rs6000aix__) || defined(__ia64__)) - /* Only needed if we really set up machine instructions. */ -#ifdef __i386__ -#if defined(_WIN32) - while (!FlushInstructionCache(GetCurrentProcess(),function,TRAMP_LENGTH)) - continue; -#endif -#endif -#ifdef __m68k__ -#if defined(NeXT) && defined(__GNUC__) - __asm__ __volatile__ ("trap #2"); -#endif -#if defined(AMIGA) - CacheClearE(function,TRAMP_LENGTH,CACRF_ClearI|CACRF_ClearD); -#endif -#if defined(apollo) - cache_$clear(); -#endif -#if defined(hpux) - cachectl(CC_IPURGE,function,TRAMP_LENGTH); -#endif -#if defined(__NetBSD__) && defined(__GNUC__) - { register unsigned long _beg __asm__ ("%a1") = (unsigned long) function; - register unsigned long _len __asm__ ("%d1") = TRAMP_LENGTH; - __asm__ __volatile__ ( - "move%.l %#0x80000004,%/d0\n\t" /* CC_EXTPURGE | C_IPURGE */ - "trap #12" /* kernel call `cachectl' */ - : - : "a" (_beg), "d" (_len) - : "%a0", "%a1", "%d0", "%d1" /* call-used registers */ - ); - } -#endif -#if defined(__linux__) && defined(__GNUC__) - { register unsigned long _beg __asm__ ("%d1") = (unsigned long) function; - register unsigned long _len __asm__ ("%d4") = TRAMP_LENGTH + 32; - __asm__ __volatile__ ( - "move%.l %#123,%/d0\n\t" - "move%.l %#1,%/d2\n\t" - "move%.l %#3,%/d3\n\t" - "trap %#0" - : - : "d" (_beg), "d" (_len) - : "%d0", "%d2", "%d3" - ); - } -#endif -#if defined(AUX) && defined(__GNUC__) - /* sysm68k(105, addr, scope, cache, len) */ - __asm__ __volatile__ ( - "move%.l %1,%/sp@-\n\t" - "move%.l %#3,%/sp@-\n\t" - "move%.l %#1,%/sp@-\n\t" - "move%.l %0,%/sp@-\n\t" - "move%.l %#105,%/sp@-\n\t" - "move%.l %#0,%/sp@-\n\t" - "move%.l %#38,%/sp@-\n\t" - "trap %#0\n\t" - "add%.l %#24,%/sp" - : - : "r" (function), "g" ((int)TRAMP_LENGTH) - : "%d0" - ); -#endif -#endif -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) - cacheflush(function,TRAMP_LENGTH,ICACHE); - /* gforth-0.3.0 uses BCACHE instead of ICACHE. Why?? */ -#endif -#if defined(__sparc__) || defined(__sparc64__) - /* This assumes that the trampoline fits in at most two cache lines. */ - __TR_clear_cache_2(function,function+TRAMP_LENGTH-1); -#endif -#ifdef __alpha__ - __TR_clear_cache(); -#endif -#ifdef __hppa__ - /* This assumes that the trampoline fits in at most two cache lines. */ - __TR_clear_cache(function,function+TRAMP_LENGTH-1); -#endif -#ifdef __arm__ - /* This CPU does not have a separate instruction cache. (I think.) */ -#endif -#ifdef __rs6000__ - __TR_clear_cache(function); -#endif -#ifdef __m88k__ - sysmot(S88CACHEFLUSHPAGE, (unsigned long)function & -pagesize); -#endif -#ifdef __convex__ - __TR_clear_cache(); -#endif -#endif - - /* 5. Return. */ - return (__TR_function) (function + TRAMP_BIAS); -} - -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -void free_trampoline_r (__TR_function function) -#else -void free_trampoline_r (function) - __TR_function function; -#endif -{ -#if TRAMP_BIAS - function = (__TR_function)((char*)function - TRAMP_BIAS); -#endif -#if !defined(CODE_EXECUTABLE) && !defined(EXECUTABLE_VIA_MPROTECT) - *(char**)function = freelist; freelist = (char*)function; - /* It is probably not worth calling munmap() for entirely freed pages. */ -#else - free(((char**)function)[-1]); -#endif -} - -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -int is_trampoline_r (void* function) -#else -int is_trampoline_r (function) - void* function; -#endif -{ -#if defined(is_tramp) && defined(tramp_data) -#ifdef __hppanew__ - void* tramp_r_address = &tramp_r; - if (!(((long)function & 3) == (TRAMP_BIAS & 3))) return 0; -#endif - return - ((is_tramp(((char*)function - TRAMP_BIAS))) - && ((tramp_data(((char*)function - TRAMP_BIAS))) == (long)((char*)function - TRAMP_BIAS + TRAMP_LENGTH)) - ? 1 : 0 - ); -#else - abort(); -#endif -} - -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -__TR_function trampoline_r_address (void* function) -#else -__TR_function trampoline_r_address (function) - void* function; -#endif -{ -#ifdef tramp_address - return (__TR_function)(tramp_address(((char*)function - TRAMP_BIAS))); -#else - abort(); -#endif -} - -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -void* trampoline_r_data0 (void* function) -#else -void* trampoline_r_data0 (function) - void* function; -#endif -{ -#ifdef tramp_data - return ((void**)((char*)function-TRAMP_BIAS+TRAMP_LENGTH))[0]; -#else - abort(); -#endif -} - -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -void* trampoline_r_data1 (void* function) -#else -void* trampoline_r_data1 (function) - void* function; -#endif -{ -#ifdef tramp_data - return ((void**)((char*)function-TRAMP_BIAS+TRAMP_LENGTH))[1]; -#else - abort(); -#endif -} DELETED ffcall/callback/trampoline_r/trampoline_r.3 Index: ffcall/callback/trampoline_r/trampoline_r.3 ================================================================== --- ffcall/callback/trampoline_r/trampoline_r.3 +++ /dev/null @@ -1,100 +0,0 @@ -.TH TRAMPOLINE 3 "22 October 1997" -.SH NAME -trampoline \- closures as first-class C functions -.SH SYNOPSIS -.B #include -.LP -.B function = alloc_trampoline_r(address, data0, data1); -.LP -.B free_trampoline_r(function); -.LP -.nf -.B is_trampoline_r(function) -.B trampoline_r_address(function) -.B trampoline_r_data0(function) -.B trampoline_r_data1(function) -.fi -.SH DESCRIPTION -.LP -These functions implement -.I closures -as first-class C functions. -A closure consists of a regular C function and a piece of data -which gets passed to the C function when the closure is called. - -Closures as -.I first-class C functions -means that they fit into a function -pointer and can be called exactly like any other C function. -.IB function " = alloc_trampoline_r(" address ", " data0 ", " data1 ")" -allocates a closure. When -.I function -gets called, it stores in a special "lexical chain register" a pointer to a -storage area containing -.I data0 -in its first word and -.I data1 -in its second word and calls the C function at -.IR address . -The function at -.I address -is responsible for fetching -.I data0 -and -.I data1 -off the pointer. Note that the "lexical chain register" is a call-used -register, i.e. is clobbered by function calls. - -This is much like -.BR gcc "'s" -local functions, except that the GNU C local functions have dynamic extent -(i.e. are deallocated when the creating function returns), while -.I trampoline -provides functions with indefinite extent: -.I function -is only deallocated when -.BI free_trampoline_r( function ) -is called. - -.BI "is_trampoline_r(" function ")" -checks whether the C function -.I function -was produced by a call to -.IR alloc_trampoline_r . -If this returns true, the arguments given to -.I alloc_trampoline_r -can be retrieved: -.RS 4 -.LP -.BI "trampoline_r_address(" function ")" -returns -.IR address , -.LP -.BI "trampoline_r_data0(" function ")" -returns -.IR data0 , -.LP -.BI "trampoline_r_data1(" function ")" -returns -.IR data1 . -.RE - -.SH SEE ALSO -.BR trampoline (3), -.BR gcc (1), -.BR varargs (3) - -.SH PORTING -The way -.B gcc -builds local functions is described in the gcc source, file -.RI gcc-2.6.3/config/ cpu / cpu .h. - -.SH AUTHOR - -Bruno Haible - -.SH ACKNOWLEDGEMENTS - -Many ideas were cribbed from the gcc source. - DELETED ffcall/callback/trampoline_r/trampoline_r.h.in Index: ffcall/callback/trampoline_r/trampoline_r.h.in ================================================================== --- ffcall/callback/trampoline_r/trampoline_r.h.in +++ /dev/null @@ -1,34 +0,0 @@ -#ifndef _TRAMPOLINE_R_H -#define _TRAMPOLINE_R_H - -/* - * Copyright 1995-1999 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifdef __cplusplus -typedef int (*__TR_function) (...); -#else -typedef int (*__TR_function) (); -#endif -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -extern __TR_function alloc_trampoline_r (__TR_function, void*, void*); -extern void free_trampoline_r (__TR_function); -extern int is_trampoline_r (void*); -extern __TR_function trampoline_r_address (void*); -extern void* trampoline_r_data0 (void*); -extern void* trampoline_r_data1 (void*); -#else -extern __TR_function alloc_trampoline_r (); -extern void free_trampoline_r (); -extern int is_trampoline_r (); -extern __TR_function trampoline_r_address (); -extern void* trampoline_r_data0 (); -extern void* trampoline_r_data1 (); -#endif - -#endif /* _TRAMPOLINE_R_H */ DELETED ffcall/callback/trampoline_r/trampoline_r.html Index: ffcall/callback/trampoline_r/trampoline_r.html ================================================================== --- ffcall/callback/trampoline_r/trampoline_r.html +++ /dev/null @@ -1,112 +0,0 @@ - - TRAMPOLINE_R manual page - - -

TRAMPOLINE_R manual page

- - -

- -


- - -

Name

-
- -trampoline_r - closures as first-class C functions - - -

Synopsis

-
- -
-#include <trampoline_r.h>
-function = alloc_trampoline_r(address, data0, data1);
-free_trampoline_r(function);
-is_trampoline_r(function)
-trampoline_r_address(function)
-trampoline_r_data0(function)
-trampoline_r_data1(function)
-
- - -

Description

-
- -These functions implement closures as first-class -C functions. A closure consists of a regular C function and a -piece of data which gets passed to the C function when the -closure is called. -

-Closures as first-class C functions means that they fit -into a function pointer and can be called exactly like any -other C function. function = alloc_trampoline_r(address, data0, data1) -allocates a closure. When function gets -called, it stores in a special "lexical chain register" a -pointer to a storage area containing data0 in its first -word and data1 in its second word and calls the C function -at address. The function at address is responsible for -fetching data0 and data1 off the pointer. Note that the -"lexical chain register" is a call-used register, i.e. is -clobbered by function calls. -

-This is much like gcc's local functions, except that the -GNU C local functions have dynamic extent (i.e. are -deallocated when the creating function returns), while trampoline - provides functions with indefinite extent: function -is only deallocated when free_trampoline_r(function) is -called. -

-is_trampoline_r(function) -checks whether the C function function -was produced by a call to alloc_trampoline_r. -If this returns true, the arguments given to alloc_trampoline_r -can be retrieved: -

    -
  • trampoline_r_address(function) returns address, -
  • trampoline_r_data0(function) returns data0, -
  • trampoline_r_data1(function) returns data1. -
- - -

See also

-
-trampoline(3), gcc(1), varargs(3) - - -

Porting

-
- -The way gcc builds local functions is described in the gcc -source, file gcc-2.6.3/config/cpu/cpu.h. - - -

Author

-
- -Bruno Haible <bruno@clisp.org> - - -

Acknowledgements

-
- -Many ideas were cribbed from the gcc source. -

- -


- -
TRAMPOLINE_R manual page
-Bruno Haible <bruno@clisp.org> -
-

-Last modified: 22 October 1997. - - DELETED ffcall/callback/trampoline_r/trampoline_r.man Index: ffcall/callback/trampoline_r/trampoline_r.man ================================================================== --- ffcall/callback/trampoline_r/trampoline_r.man +++ /dev/null @@ -1,132 +0,0 @@ - - - -TRAMPOLINE(3) TRAMPOLINE(3) - - -NNAAMMEE - trampoline - closures as first-class C functions - -SSYYNNOOPPSSIISS - ##iinncclluuddee <> - - ffuunnccttiioonn == aalllloocc__ttrraammppoolliinnee__rr((aaddddrreessss,, ddaattaa00,, ddaattaa11));; - - ffrreeee__ttrraammppoolliinnee__rr((ffuunnccttiioonn));; - - iiss__ttrraammppoolliinnee__rr((ffuunnccttiioonn)) - ttrraammppoolliinnee__rr__aaddddrreessss((ffuunnccttiioonn)) - ttrraammppoolliinnee__rr__ddaattaa00((ffuunnccttiioonn)) - ttrraammppoolliinnee__rr__ddaattaa11((ffuunnccttiioonn)) - -DDEESSCCRRIIPPTTIIOONN - These functions implement _c_l_o_s_u_r_e_s as first-class C func- - tions. A closure consists of a regular C function and a - piece of data which gets passed to the C function when the - closure is called. - - Closures as _f_i_r_s_t_-_c_l_a_s_s _C _f_u_n_c_t_i_o_n_s means that they fit - into a function pointer and can be called exactly like any - other C function. _f_u_n_c_t_i_o_n == aalllloocc__ttrraammppoolliinnee__rr((_a_d_d_r_e_s_s,, - _d_a_t_a_0,, _d_a_t_a_1)) allocates a closure. When _f_u_n_c_t_i_o_n gets - called, it stores in a special "lexical chain register" a - pointer to a storage area containing _d_a_t_a_0 in its first - word and _d_a_t_a_1 in its second word and calls the C function - at _a_d_d_r_e_s_s. The function at _a_d_d_r_e_s_s is responsible for - fetching _d_a_t_a_0 and _d_a_t_a_1 off the pointer. Note that the - "lexical chain register" is a call-used register, i.e. is - clobbered by function calls. - - This is much like ggcccc's local functions, except that the - GNU C local functions have dynamic extent (i.e. are deal- - located when the creating function returns), while _t_r_a_m_p_o_- - _l_i_n_e provides functions with indefinite extent: _f_u_n_c_t_i_o_n - is only deallocated when ffrreeee__ttrraammppoolliinnee__rr((_f_u_n_c_t_i_o_n)) is - called. - - iiss__ttrraammppoolliinnee__rr((_f_u_n_c_t_i_o_n)) checks whether the C function - _f_u_n_c_t_i_o_n was produced by a call to _a_l_l_o_c___t_r_a_m_p_o_l_i_n_e___r. If - this returns true, the arguments given to _a_l_l_o_c___t_r_a_m_p_o_- - _l_i_n_e___r can be retrieved: - - ttrraammppoolliinnee__rr__aaddddrreessss((_f_u_n_c_t_i_o_n)) returns _a_d_d_r_e_s_s, - - ttrraammppoolliinnee__rr__ddaattaa00((_f_u_n_c_t_i_o_n)) returns _d_a_t_a_0, - - ttrraammppoolliinnee__rr__ddaattaa11((_f_u_n_c_t_i_o_n)) returns _d_a_t_a_1. - - -SSEEEE AALLSSOO - ttrraammppoolliinnee(3), ggcccc(1), vvaarraarrggss(3) - - - - 22 October 1997 1 - - - - - -TRAMPOLINE(3) TRAMPOLINE(3) - - -PPOORRTTIINNGG - The way ggcccc builds local functions is described in the gcc - source, file gcc-2.6.3/config/_c_p_u/_c_p_u.h. - - -AAUUTTHHOORR - Bruno Haible - - -AACCKKNNOOWWLLEEDDGGEEMMEENNTTSS - Many ideas were cribbed from the gcc source. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 22 October 1997 2 - - DELETED ffcall/callback/uniq-u.c Index: ffcall/callback/uniq-u.c ================================================================== --- ffcall/callback/uniq-u.c +++ /dev/null @@ -1,278 +0,0 @@ -/* uniq -- remove duplicate lines from a sorted file - Copyright (C) 86, 91, 1995-1998, 1999 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -/* Written by Richard Stallman and David MacKenzie. */ -/* 2000-03-22 Trimmed down to the case of "uniq -u" by Bruno Haible. */ - -#include -#include -#include -#include - -/* The name this program was run with. */ -static char *program_name; - -static void -xalloc_fail (void) -{ - fprintf (stderr, "%s: virtual memory exhausted\n", program_name); - exit (1); -} - -/* Allocate N bytes of memory dynamically, with error checking. */ - -void * -xmalloc (size_t n) -{ - void *p; - - p = malloc (n); - if (p == 0) - xalloc_fail (); - return p; -} - -/* Change the size of an allocated block of memory P to N bytes, - with error checking. - If P is NULL, run xmalloc. */ - -void * -xrealloc (void *p, size_t n) -{ - p = realloc (p, n); - if (p == 0) - xalloc_fail (); - return p; -} - -/* A `struct linebuffer' holds a line of text. */ - -struct linebuffer -{ - size_t size; /* Allocated. */ - size_t length; /* Used. */ - char *buffer; -}; - -/* Initialize linebuffer LINEBUFFER for use. */ - -static void -initbuffer (struct linebuffer *linebuffer) -{ - linebuffer->length = 0; - linebuffer->size = 200; - linebuffer->buffer = (char *) xmalloc (linebuffer->size); -} - -/* Read an arbitrarily long line of text from STREAM into LINEBUFFER. - Keep the newline; append a newline if it's the last line of a file - that ends in a non-newline character. Do not null terminate. - Return LINEBUFFER, except at end of file return 0. */ - -static struct linebuffer * -readline (struct linebuffer *linebuffer, FILE *stream) -{ - int c; - char *buffer = linebuffer->buffer; - char *p = linebuffer->buffer; - char *end = buffer + linebuffer->size - 1; /* Sentinel. */ - - if (feof (stream) || ferror (stream)) - return 0; - - do - { - c = getc (stream); - if (c == EOF) - { - if (p == buffer) - return 0; - if (p[-1] == '\n') - break; - c = '\n'; - } - if (p == end) - { - linebuffer->size *= 2; - buffer = (char *) xrealloc (buffer, linebuffer->size); - p = p - linebuffer->buffer + buffer; - linebuffer->buffer = buffer; - end = buffer + linebuffer->size - 1; - } - *p++ = c; - } - while (c != '\n'); - - linebuffer->length = p - buffer; - return linebuffer; -} - -/* Free linebuffer LINEBUFFER's data. */ - -static void -freebuffer (struct linebuffer *linebuffer) -{ - free (linebuffer->buffer); -} - -/* Undefine, to avoid warning about redefinition on some systems. */ -#undef min -#define min(x, y) ((x) < (y) ? (x) : (y)) - -/* Return zero if two strings OLD and NEW match, nonzero if not. - OLD and NEW point not to the beginnings of the lines - but rather to the beginnings of the fields to compare. - OLDLEN and NEWLEN are their lengths. */ - -static int -different (const char *old, const char *new, size_t oldlen, size_t newlen) -{ - int order; - - order = memcmp (old, new, min (oldlen, newlen)); - - if (order == 0) - return oldlen - newlen; - return order; -} - -/* Output the line in linebuffer LINE to stream STREAM - provided that the switches say it should be output. - If requested, print the number of times it occurred, as well; - LINECOUNT + 1 is the number of times that the line occurred. */ - -static void -writeline (const struct linebuffer *line, FILE *stream, int linecount) -{ - if (linecount == 0) - fwrite (line->buffer, 1, line->length, stream); -} - -/* Process input file INFILE with output to OUTFILE. - If either is "-", use the standard I/O stream for it instead. */ - -static void -check_file (const char *infile, const char *outfile) -{ - FILE *istream; - FILE *ostream; - struct linebuffer lb1, lb2; - struct linebuffer *thisline, *prevline, *exch; - char *prevfield, *thisfield; - size_t prevlen, thislen; - int match_count = 0; - - if (!strcmp (infile, "-")) - istream = stdin; - else - istream = fopen (infile, "r"); - if (istream == NULL) - { - fprintf (stderr, "%s: error opening %s\n", program_name, infile); - exit (1); - } - - if (!strcmp (outfile, "-")) - ostream = stdout; - else - ostream = fopen (outfile, "w"); - if (ostream == NULL) - { - fprintf (stderr, "%s: error opening %s\n", program_name, outfile); - exit (1); - } - - thisline = &lb1; - prevline = &lb2; - - initbuffer (thisline); - initbuffer (prevline); - - if (readline (prevline, istream) == 0) - goto closefiles; - prevfield = prevline->buffer; - prevlen = prevline->length; - - while (!feof (istream)) - { - int match; - if (readline (thisline, istream) == 0) - break; - thisfield = thisline->buffer; - thislen = thisline->length; - match = !different (thisfield, prevfield, thislen, prevlen); - - if (match) - ++match_count; - - if (!match) - { - writeline (prevline, ostream, match_count); - exch = prevline; - prevline = thisline; - thisline = exch; - prevfield = thisfield; - prevlen = thislen; - if (!match) - match_count = 0; - } - } - - writeline (prevline, ostream, match_count); - - closefiles: - if (ferror (istream) || fclose (istream) == EOF) - { - fprintf (stderr, "%s: error reading %s\n", program_name, infile); - exit (1); - } - - if (ferror (ostream) || fclose (ostream) == EOF) - { - fprintf (stderr, "%s: error writing %s\n", program_name, outfile); - exit (1); - } - - freebuffer (&lb1); - freebuffer (&lb2); -} - -int -main (int argc, char **argv) -{ - const char *infile = "-"; - const char *outfile = "-"; - int optind = 1; - - program_name = argv[0]; - - if (optind < argc) - infile = argv[optind++]; - - if (optind < argc) - outfile = argv[optind++]; - - if (optind < argc) - { - fprintf (stderr, "%s: too many arguments\n", program_name); - exit (1); - } - - check_file (infile, outfile); - - exit (0); -} DELETED ffcall/callback/vacall_r/COPYING Index: ffcall/callback/vacall_r/COPYING ================================================================== --- ffcall/callback/vacall_r/COPYING +++ /dev/null @@ -1,340 +0,0 @@ - GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1989, 1991 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307, - USA. - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -License is intended to guarantee your freedom to share and change free -software--to make sure the software is free for all its users. This -General Public License applies to most of the Free Software -Foundation's software and to any other program whose authors commit to -using it. (Some other Free Software Foundation software is covered by -the GNU Library General Public License instead.) You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if you -distribute copies of the software, or if you modify it. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must give the recipients all the rights that -you have. You must make sure that they, too, receive or can get the -source code. And you must show them these terms so they know their -rights. - - We protect your rights with two steps: (1) copyright the software, and -(2) offer you this license which gives you legal permission to copy, -distribute and/or modify the software. - - Also, for each author's protection and ours, we want to make certain -that everyone understands that there is no warranty for this free -software. If the software is modified by someone else and passed on, we -want its recipients to know that what they have is not the original, so -that any problems introduced by others will not reflect on the original -authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that redistributors of a free -program will individually obtain patent licenses, in effect making the -program proprietary. To prevent this, we have made it clear that any -patent must be licensed for everyone's free use or not licensed at all. - - The precise terms and conditions for copying, distribution and -modification follow. - - GNU GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License applies to any program or other work which contains -a notice placed by the copyright holder saying it may be distributed -under the terms of this General Public License. The "Program", below, -refers to any such program or work, and a "work based on the Program" -means either the Program or any derivative work under copyright law: -that is to say, a work containing the Program or a portion of it, -either verbatim or with modifications and/or translated into another -language. (Hereinafter, translation is included without limitation in -the term "modification".) Each licensee is addressed as "you". - -Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running the Program is not restricted, and the output from the Program -is covered only if its contents constitute a work based on the -Program (independent of having been made by running the Program). -Whether that is true depends on what the Program does. - - 1. You may copy and distribute verbatim copies of the Program's -source code as you receive it, in any medium, provided that you -conspicuously and appropriately publish on each copy an appropriate -copyright notice and disclaimer of warranty; keep intact all the -notices that refer to this License and to the absence of any warranty; -and give any other recipients of the Program a copy of this License -along with the Program. - -You may charge a fee for the physical act of transferring a copy, and -you may at your option offer warranty protection in exchange for a fee. - - 2. You may modify your copy or copies of the Program or any portion -of it, thus forming a work based on the Program, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) You must cause the modified files to carry prominent notices - stating that you changed the files and the date of any change. - - b) You must cause any work that you distribute or publish, that in - whole or in part contains or is derived from the Program or any - part thereof, to be licensed as a whole at no charge to all third - parties under the terms of this License. - - c) If the modified program normally reads commands interactively - when run, you must cause it, when started running for such - interactive use in the most ordinary way, to print or display an - announcement including an appropriate copyright notice and a - notice that there is no warranty (or else, saying that you provide - a warranty) and that users may redistribute the program under - these conditions, and telling the user how to view a copy of this - License. (Exception: if the Program itself is interactive but - does not normally print such an announcement, your work based on - the Program is not required to print an announcement.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Program, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Program, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Program. - -In addition, mere aggregation of another work not based on the Program -with the Program (or with a work based on the Program) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may copy and distribute the Program (or a work based on it, -under Section 2) in object code or executable form under the terms of -Sections 1 and 2 above provided that you also do one of the following: - - a) Accompany it with the complete corresponding machine-readable - source code, which must be distributed under the terms of Sections - 1 and 2 above on a medium customarily used for software interchange; or, - - b) Accompany it with a written offer, valid for at least three - years, to give any third party, for a charge no more than your - cost of physically performing source distribution, a complete - machine-readable copy of the corresponding source code, to be - distributed under the terms of Sections 1 and 2 above on a medium - customarily used for software interchange; or, - - c) Accompany it with the information you received as to the offer - to distribute corresponding source code. (This alternative is - allowed only for noncommercial distribution and only if you - received the program in object code or executable form with such - an offer, in accord with Subsection b above.) - -The source code for a work means the preferred form of the work for -making modifications to it. For an executable work, complete source -code means all the source code for all modules it contains, plus any -associated interface definition files, plus the scripts used to -control compilation and installation of the executable. However, as a -special exception, the source code distributed need not include -anything that is normally distributed (in either source or binary -form) with the major components (compiler, kernel, and so on) of the -operating system on which the executable runs, unless that component -itself accompanies the executable. - -If distribution of executable or object code is made by offering -access to copy from a designated place, then offering equivalent -access to copy the source code from the same place counts as -distribution of the source code, even though third parties are not -compelled to copy the source along with the object code. - - 4. You may not copy, modify, sublicense, or distribute the Program -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense or distribute the Program is -void, and will automatically terminate your rights under this License. -However, parties who have received copies, or rights, from you under -this License will not have their licenses terminated so long as such -parties remain in full compliance. - - 5. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Program or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Program (or any work based on the -Program), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Program or works based on it. - - 6. Each time you redistribute the Program (or any work based on the -Program), the recipient automatically receives a license from the -original licensor to copy, distribute or modify the Program subject to -these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 7. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Program at all. For example, if a patent -license would not permit royalty-free redistribution of the Program by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system, which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 8. If the distribution and/or use of the Program is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Program under this License -may add an explicit geographical distribution limitation excluding -those countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 9. The Free Software Foundation may publish revised and/or new versions -of the General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - -Each version is given a distinguishing version number. If the Program -specifies a version number of this License which applies to it and "any -later version", you have the option of following the terms and conditions -either of that version or of any later version published by the Free -Software Foundation. If the Program does not specify a version number of -this License, you may choose any version ever published by the Free Software -Foundation. - - 10. If you wish to incorporate parts of the Program into other free -programs whose distribution conditions are different, write to the author -to ask for permission. For software which is copyrighted by the Free -Software Foundation, write to the Free Software Foundation; we sometimes -make exceptions for this. Our decision will be guided by the two goals -of preserving the free status of all derivatives of our free software and -of promoting the sharing and reuse of software generally. - - NO WARRANTY - - 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -REPAIR OR CORRECTION. - - 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - - END OF TERMS AND CONDITIONS - - Appendix: How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. - -Also add information on how to contact you by electronic and paper mail. - -If the program is interactive, make it output a short notice like this -when it starts in an interactive mode: - - Gnomovision version 69, Copyright (C) year name of author - Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, the commands you use may -be called something other than `show w' and `show c'; they could even be -mouse-clicks or menu items--whatever suits your program. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the program, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the program - `Gnomovision' (which makes passes at compilers) written by James Hacker. - - , 1 April 1989 - Ty Coon, President of Vice - -This General Public License does not permit incorporating your program into -proprietary programs. If your program is a subroutine library, you may -consider it more useful to permit linking proprietary applications with the -library. If this is what you want to do, use the GNU Library General -Public License instead of this License. DELETED ffcall/callback/vacall_r/Makefile.devel Index: ffcall/callback/vacall_r/Makefile.devel ================================================================== --- ffcall/callback/vacall_r/Makefile.devel +++ /dev/null @@ -1,109 +0,0 @@ -# developer -*-Makefile-*- - -HOST = i486-linux -CPU = i386 -GCC = gcc -GCCFLAGS = -O2 -fomit-frame-pointer -DHAVE_LONGLONG -DREENTRANT -LN = ln -s -RM = rm -f -SED = sed -ROFF_MAN = groff -Tascii -mandoc - -all : vacall-i386-macro.S vacall-i386-msvc.c vacall-i386-mingw32.c vacall-m68k.mit.S vacall-m68k.mot.s vacall-mips.S vacall-mipsn32.S vacall-mips64.S vacall-sparc.S vacall-sparc64.S vacall-alpha.s vacall-hppa.s vacall-arm.S vacall-rs6000-aix.old.s vacall-rs6000-aix.new.s vacall-rs6000-sysv4.s vacall-rs6000-macos.s vacall-m88k.s vacall-convex.s vacall-ia64.s vacall-x86_64.s \ - vacall_r.h.msvc config.h.msvc vacall_r.h.mingw32 config.h.mingw32 - -vacall-i386-macro.S : vacall-i386.c vacall_r.h.in asmi386.sh - $(GCC) -V 2.7.2 -b i486-linuxaout $(GCCFLAGS) -D__i386__ -S vacall-i386.c -o vacall-i386.s - (echo '#include "asmi386.h"' ; sed -e '/\.align.*,0x90$$/d' < vacall-i386.s | ./asmi386.sh) > vacall-i386-macro.S - $(RM) vacall-i386.s - -vacall-i386-msvc.c : vacall-i386-macro.S - (echo '#ifdef _MSC_VER' ; echo '#include "vacall_r.h"' ; echo '#endif' ; cat vacall-i386-macro.S) > vacall-i386-msvc.c - -vacall-i386-mingw32.c : vacall-i386-macro.S - (echo '#ifdef __MINGW32__' ; echo '#include "vacall_r.h"' ; echo '#endif' ; cat vacall-i386-macro.S) > vacall-i386-mingw32.c - -vacall-m68k.mit.S : vacall-m68k.c vacall_r.h.in asmm68k.sh - $(GCC) -V 2.95.2 -b m68k-sun $(GCCFLAGS) -D__m68k__ -S vacall-m68k.c -o vacall-m68k.mit.s - (echo '#include "asmm68k.h"' ; ./asmm68k.sh < vacall-m68k.mit.s) > vacall-m68k.mit.S - $(RM) vacall-m68k.mit.s - -vacall-m68k.mot.s : vacall-m68k.c vacall_r.h.in - $(GCC) -V 2.95.2 -b m68k-linux $(GCCFLAGS) -D__m68k__ -S vacall-m68k.c -o vacall-m68k.mot.s - -vacall-mips.S : vacall-mips.c vacall_r.h.in asmmips.sh - $(GCC) -V 2.95.2 -b mips-sgi $(GCCFLAGS) -D__mips__ -fno-omit-frame-pointer -S vacall-mips.c -o vacall-mips.s - (echo '#include "asmmips.h"' ; ./asmmips.sh < vacall-mips.s) > vacall-mips.S - $(RM) vacall-mips.s - -vacall-mipsn32.S : vacall-mipsn32.c vacall_r.h.in asmmips.sh - $(GCC) -V 2.95.2 -b mips-sgi-irix6 $(GCCFLAGS) -D__mipsn32__ -S vacall-mipsn32.c -o vacall-mipsn32.s - (echo '#include "asmmips.h"' ; $(SED) -e 's/\$$sp,\$$sp,192/$$sp,$$sp,256/' -e 's/\$$sp,192,/$$sp,256,/' < vacall-mipsn32.s | ./asmmips.sh) > vacall-mipsn32.S - $(RM) vacall-mipsn32.s - -vacall-mips64.S : vacall-mips64.c vacall_r.h.in asmmips.sh - $(GCC) -V 2.95.2 -b mips-sgi -mips3 -mlong64 $(GCCFLAGS) -U__mips__ -D__mips64__ -S vacall-mips64.c -o vacall-mips64.s - (echo '#include "asmmips.h"' ; ./asmmips.sh < vacall-mips64.s) > vacall-mips64.S - $(RM) vacall-mips64.s - -vacall-sparc.S : vacall-sparc.c vacall_r.h.in asmsparc.sh - $(GCC) -V 2.95.2 -b sparc-sun $(GCCFLAGS) -D__sparc__ -S vacall-sparc.c -o vacall-sparc.s - (echo '#include "asmsparc.h"' ; ./asmsparc.sh < vacall-sparc.s) > vacall-sparc.S - $(RM) vacall-sparc.s - -vacall-sparc64.S : vacall-sparc64.c vacall_r.h.in asmsparc.sh - sparc64-linux-gcc -V 2.95.2 -b sparc64-linux $(GCCFLAGS) -D__sparc64__ -S vacall-sparc64.c -o vacall-sparc64.s - (echo '#include "asmsparc.h"' ; ./asmsparc64.sh < vacall-sparc64.s) > vacall-sparc64.S - $(RM) vacall-sparc64.s - -vacall-alpha.s : vacall-alpha.c vacall_r.h.in - $(GCC) -V 2.7.2 -b alpha-dec-osf $(GCCFLAGS) -D__alpha__ -S vacall-alpha.c -o vacall-alpha-temp.s - $(SED) -e '/ldgp/d' < vacall-alpha-temp.s > vacall-alpha.s - $(RM) vacall-alpha-temp.s - -vacall-hppa.s : vacall-hppa.c vacall_r.h.in - $(GCC) -V 2.6.3 -b hppa1.0-hpux $(GCCFLAGS) -D__hppa__ -S vacall-hppa.c -o vacall-hppa.s - -vacall-arm.S : vacall-arm.c vacall_r.h.in asmarm.sh - $(GCC) -V 2.6.3 -b arm-acorn-riscix $(GCCFLAGS) -D__arm__ -S vacall-arm.c -o vacall-arm.s - (echo '#include "asmarm.h"' ; ./asmarm.sh < vacall-arm.s) > vacall-arm.S - $(RM) vacall-arm.s - -vacall-rs6000-aix.old.s : vacall-rs6000.c vacall_r.h.in - $(GCC) -V 2.95.2 -b rs6000 -mno-power -mno-power2 -mno-powerpc -mold-mnemonics $(GCCFLAGS) -D__rs6000__ -S vacall-rs6000.c -o vacall-rs6000-aix.old.s - -vacall-rs6000-aix.new.s : vacall-rs6000.c vacall_r.h.in - $(GCC) -V 2.95.2 -b rs6000 -mno-power -mno-power2 -mno-powerpc -mnew-mnemonics $(GCCFLAGS) -D__rs6000__ -S vacall-rs6000.c -o vacall-rs6000-aix.new.s - -vacall-rs6000-sysv4.s : vacall-rs6000.c vacall_r.h.in - $(GCC) -V 2.95.2 -b ppc-linux -mno-power -mno-power2 -mno-powerpc $(GCCFLAGS) -D__rs6000__ -S vacall-rs6000.c -o vacall-rs6000-sysv4.s - -vacall-rs6000-macos.s : vacall-rs6000.c vacall_r.h.in - $(GCC) -V 3.3.2 -b powerpc-darwin $(GCCFLAGS) -D__rs6000__ -S vacall-rs6000.c -o vacall-rs6000-macos.s - -vacall-m88k.s : vacall-m88k.c vacall_r.h.in - $(GCC) -V 2.95.2 -b m88k-dgux $(GCCFLAGS) -D__m88k__ -S vacall-m88k.c -o vacall-m88k.s - -vacall-convex.s : vacall-convex.c vacall_r.h.in - $(GCC) -V 2.6.3 -b convex-c2 $(GCCFLAGS) -D__convex__ -S vacall-convex.c -o vacall-convex.s - -vacall-ia64.s : vacall-ia64.c vacall_r.h.in - $(GCC) -V 2.9-ia64-000216 -b ia64-hp-linux $(GCCFLAGS) -D__ia64__ -S vacall-ia64.c -o vacall-ia64.s - -vacall-x86_64.s : vacall-x86_64.c vacall_r.h.in - $(GCC) -V 3.2.2 -b x86_64-suse-linux $(GCCFLAGS) -D__x86_64__ -S vacall-x86_64.c -o vacall-x86_64.s - -vacall_r.man : vacall_r.3 - $(ROFF_MAN) vacall_r.3 > vacall_r.man - -vacall_r.h.msvc : vacall_r.h.in - sed -e 's,^#undef __i386__$$,#define __i386__ 1,' -e 's,^#undef __SMALL_STRUCT_RETURN__$$,#define __SMALL_STRUCT_RETURN__ 1,' < vacall_r.h.in > vacall_r.h.msvc - -vacall_r.h.mingw32 : vacall_r.h.in - sed -e 's,^#undef __i386__$$,#define __i386__ 1,' -e 's,^#undef __SMALL_STRUCT_RETURN__$$,#define __SMALL_STRUCT_RETURN__ 1,' < vacall_r.h.in > vacall_r.h.mingw32 - -config.h.msvc : config.h.in - cp config.h.in config.h.msvc - -config.h.mingw32 : config.h.in - cp config.h.in config.h.mingw32 DELETED ffcall/callback/vacall_r/Makefile.in Index: ffcall/callback/vacall_r/Makefile.in ================================================================== --- ffcall/callback/vacall_r/Makefile.in +++ /dev/null @@ -1,205 +0,0 @@ -# Makefile for vacall - -#### Start of system configuration section. #### - -HOST = @host@ -CPU = @host_cpu@ -OS = @host_os@ - -# Directories used by "make": -srcdir = @srcdir@ - -# Directories used by "make install": -prefix = @prefix@ -local_prefix = /usr/local -exec_prefix = @exec_prefix@ -libdir = @libdir@ -includedir = @includedir@ -mandir = @mandir@ -datadir = @datadir@ -htmldir = $(datadir)/html - -# Programs used by "make": -CC = @CC@ -CFLAGS = @CFLAGS@ -CPP = @CPP@ -INCLUDES = -I. -I$(srcdir) -ASPFLAGS = `if test @AS_UNDERSCORE@ = true; then echo '-DASM_UNDERSCORE'; fi` -LIBTOOL = @LIBTOOL@ -LIBTOOL_COMPILE = $(LIBTOOL) --mode=compile -LIBTOOL_LINK = $(LIBTOOL) --mode=link -LIBTOOL_INSTALL = $(LIBTOOL) --mode=install -LIBTOOL_UNINSTALL = $(LIBTOOL) --mode=uninstall -AR = ar -AR_FLAGS = rc -RANLIB = @RANLIB@ -MV = mv -LN = @LN@ -RM = rm -f -@SET_MAKE@ - -# Programs used by "make install": -INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_DATA = @INSTALL_DATA@ - -#### End of system configuration section. #### - -SHELL = /bin/sh - -# Needed by $(LIBTOOL). -top_builddir = . - -OBJECTS = vacall.lo misc.lo structcpy.lo - -all : $(OBJECTS) libvacall.la vacall_r.h - -vacall.lo : vacall-$(CPU).lo - $(RM) vacall.lo vacall.o - $(LN) vacall-$(CPU).lo vacall.lo - if test -f vacall-$(CPU).o; then $(LN) vacall-$(CPU).o vacall.o; fi - -vacall-i386.lo : vacall-i386.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c vacall-i386.s - -vacall-i386.s : $(srcdir)/vacall-i386-macro.S - $(CPP) $(ASPFLAGS) $(srcdir)/vacall-i386-macro.S | grep -v '^ *#line' | grep -v '^#ident' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,% ,%,g' -e 's,\. ,.,g' > vacall-i386.s - -vacall-sparc.lo : vacall-sparc.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c vacall-sparc.s - -vacall-sparc.s : $(srcdir)/vacall-sparc.S - $(CPP) $(ASPFLAGS) $(srcdir)/vacall-sparc.S | grep -v '^ *#line' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,//.*$$,,' -e 's,\$$,#,g' > vacall-sparc.s - -vacall-sparc64.lo : vacall-sparc64.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c vacall-sparc64.s - -vacall-sparc64.s : $(srcdir)/vacall-sparc64.S - $(CPP) $(ASPFLAGS) $(srcdir)/vacall-sparc64.S | grep -v '^ *#line' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,//.*$$,,' -e 's,\$$,#,g' > vacall-sparc64.s - -vacall-m68k.lo : vacall-m68k.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c vacall-m68k.s - -vacall-m68k.s : $(srcdir)/vacall-m68k.mit.S $(srcdir)/vacall-m68k.mot.s - $(CPP) $(ASPFLAGS) $(srcdir)/vacall-m68k.mit.S | grep -v '^ *#line' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,//.*$$,,' | if test @AS_UNDERSCORE@ = true; then sed -e 's/\$$//g'; else sed -e 's/\$$/%/g'; fi > vacall-m68k.s - -vacall-mips.lo : vacall-mips.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c vacall-mips.s - -vacall-mips.s : $(srcdir)/vacall-mips.S - $(CPP) $(ASPFLAGS) $(srcdir)/vacall-mips.S | grep -v '^ *#line' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,//.*$$,,' > vacall-mips.s - -vacall-mipsn32.lo : vacall-mipsn32.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c vacall-mipsn32.s - -vacall-mipsn32.s : $(srcdir)/vacall-mipsn32.S - $(CPP) $(ASPFLAGS) $(srcdir)/vacall-mipsn32.S | grep -v '^ *#line' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,//.*$$,,' > vacall-mipsn32.s - -vacall-mips64.lo : vacall-mips64.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c vacall-mips64.s - -vacall-mips64.s : $(srcdir)/vacall-mips64.S - $(CPP) $(ASPFLAGS) $(srcdir)/vacall-mips64.S | grep -v '^ *#line' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,//.*$$,,' > vacall-mips64.s - -vacall-alpha.lo : $(srcdir)/vacall-alpha.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c $(srcdir)/vacall-alpha.s - -vacall-hppa.lo : $(srcdir)/vacall-hppa.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c $(srcdir)/vacall-hppa.s - -vacall-s390.lo : $(srcdir)/vacall-s390.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c $(srcdir)/vacall-s390.s - -vacall-arm.lo : vacall-arm.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c vacall-arm.s - -vacall-arm.s : $(srcdir)/vacall-arm.S - $(CPP) $(ASPFLAGS) $(srcdir)/vacall-arm.S | grep -v '^ *#line' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,//,@,g' -e 's,\$$,#,g' > vacall-arm.s - -vacall-rs6000.lo : $(srcdir)/vacall-rs6000-aix.old.s $(srcdir)/vacall-rs6000-aix.new.s $(srcdir)/vacall-rs6000-sysv4.s $(srcdir)/vacall-rs6000-linux.s $(srcdir)/vacall-rs6000-macos.s - case "$(OS)" in \ - aix3*) syntax=aix.old;; \ - aix*) syntax=aix.new;; \ - linux*) syntax=linux;; \ - macos* | darwin*) syntax=macos;; \ - *) syntax=sysv4;; \ - esac; \ - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c $(srcdir)/vacall-rs6000-$${syntax}.s ; \ - cp vacall-rs6000-$${syntax}.lo vacall-rs6000.lo ; rm -f vacall-rs6000-$${syntax}.lo ; \ - if test -f vacall-rs6000-$${syntax}.o; then mv vacall-rs6000-$${syntax}.o vacall-rs6000.o; fi - -vacall-m88k.lo : $(srcdir)/vacall-m88k.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c $(srcdir)/vacall-m88k.s - -vacall-convex.lo : $(srcdir)/vacall-convex.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c $(srcdir)/vacall-convex.s - -vacall-ia64.lo : $(srcdir)/vacall-ia64.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c $(srcdir)/vacall-ia64.s - -vacall-x86_64.lo : $(srcdir)/vacall-x86_64.s - $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c $(srcdir)/vacall-x86_64.s - -misc.lo : $(srcdir)/misc.c vacall_r.h config.h - $(LIBTOOL_COMPILE) $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/misc.c - -structcpy.lo : $(srcdir)/structcpy.c - $(LIBTOOL_COMPILE) $(CC) $(CFLAGS) -c $(srcdir)/structcpy.c - -libvacall.la : $(OBJECTS) - $(LIBTOOL_LINK) $(CC) -o libvacall.la -rpath $(libdir) $(OBJECTS) - -# Installs the library and include files only. Typically called with only -# $(libdir) and $(includedir) - don't use $(prefix) and $(exec_prefix) here. -install-lib : all force - if [ ! -d $(includedir) ] ; then mkdir $(includedir) ; fi - $(INSTALL_DATA) vacall_r.h $(includedir)/vacall_r.h - -install : all force - if [ ! -d $(DESTDIR)$(prefix) ] ; then mkdir $(DESTDIR)$(prefix) ; fi -# if [ ! -d $(DESTDIR)$(exec_prefix) ] ; then mkdir $(DESTDIR)$(exec_prefix) ; fi -# if [ ! -d $(DESTDIR)$(libdir) ] ; then mkdir $(DESTDIR)$(libdir) ; fi -# $(LIBTOOL_INSTALL) $(INSTALL_DATA) libvacall.la $(DESTDIR)$(libdir)/libvacall.la - if [ ! -d $(DESTDIR)$(includedir) ] ; then mkdir $(DESTDIR)$(includedir) ; fi - $(INSTALL_DATA) vacall_r.h $(DESTDIR)$(includedir)/vacall_r.h -# if [ ! -d $(DESTDIR)$(mandir) ] ; then mkdir $(DESTDIR)$(mandir) ; fi -# if [ ! -d $(DESTDIR)$(mandir)/man3 ] ; then mkdir $(DESTDIR)$(mandir)/man3 ; fi -# $(INSTALL_DATA) $(srcdir)/vacall_r.3 $(DESTDIR)$(mandir)/man3/vacall_r.3 -# if [ ! -d $(DESTDIR)$(datadir) ] ; then mkdir $(DESTDIR)$(datadir) ; fi -# if [ ! -d $(DESTDIR)$(htmldir) ] ; then mkdir $(DESTDIR)$(htmldir) ; fi -# $(INSTALL_DATA) $(srcdir)/vacall_r.html $(DESTDIR)$(htmldir)/vacall_r.html - -installdirs : force - if [ ! -d $(DESTDIR)$(prefix) ] ; then mkdir $(DESTDIR)$(prefix) ; fi -# if [ ! -d $(DESTDIR)$(exec_prefix) ] ; then mkdir $(DESTDIR)$(exec_prefix) ; fi -# if [ ! -d $(DESTDIR)$(libdir) ] ; then mkdir $(DESTDIR)$(libdir) ; fi - if [ ! -d $(DESTDIR)$(includedir) ] ; then mkdir $(DESTDIR)$(includedir) ; fi -# if [ ! -d $(DESTDIR)$(mandir) ] ; then mkdir $(DESTDIR)$(mandir) ; fi -# if [ ! -d $(DESTDIR)$(mandir)/man3 ] ; then mkdir $(DESTDIR)$(mandir)/man3 ; fi -# if [ ! -d $(DESTDIR)$(datadir) ] ; then mkdir $(DESTDIR)$(datadir) ; fi -# if [ ! -d $(DESTDIR)$(htmldir) ] ; then mkdir $(DESTDIR)$(htmldir) ; fi - -uninstall : force -# $(LIBTOOL_UNINSTALL) $(RM) $(DESTDIR)$(libdir)/libvacall.la - $(RM) $(DESTDIR)$(includedir)/vacall_r.h -# $(RM) $(DESTDIR)$(mandir)/man3/vacall_r.3 -# $(RM) $(DESTDIR)$(htmldir)/vacall_r.html - -check : all - -extracheck : all - -mostlyclean : clean - -clean : force - $(RM) *.o *.lo *.a libvacall.* core - $(RM) vacall-i386.s vacall-sparc.s vacall-sparc64.s vacall-m68k.s vacall-mips.s vacall-mipsn32.s vacall-mips64.s vacall-arm.s - $(RM) -r .libs _libs - -distclean : clean - $(RM) config.status config.log config.cache Makefile vacall_r.h config.h libtool - -maintainer-clean : distclean - -force : - DELETED ffcall/callback/vacall_r/Makefile.mingw32 Index: ffcall/callback/vacall_r/Makefile.mingw32 ================================================================== --- ffcall/callback/vacall_r/Makefile.mingw32 +++ /dev/null @@ -1,88 +0,0 @@ -# -*-Makefile-*- for vacall - -#### Start of system configuration section. #### - -HOST = i386-pc-win32-gcc -CPU = i386 - -# Directories used by "make": -srcdir = . - -# Directories used by "make install": -prefix = /usr/local -local_prefix = /usr/local -exec_prefix = $(prefix) -libdir = $(exec_prefix)/lib -includedir = $(prefix)/include -mandir = $(prefix)/man - -# Programs used by "make": -CC = gcc -mno-cygwin -CFLAGS = -O -CPP = gcc -E -INCLUDES = -I. -I$(srcdir) -ASPFLAGS = -DASM_UNDERSCORE -AR = ar -AR_FLAGS = rc -MV = mv -LN = cp -RM = rm -f - -# Programs used by "make install": -INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_DATA = @INSTALL_DATA@ - -#### End of system configuration section. #### - -SHELL = /bin/sh - -OBJECTS = vacall.o misc.o structcpy.o - -all : $(OBJECTS) libvacall.a vacall_r.h - -vacall_r.h : vacall_r.h.mingw32 - $(RM) vacall_r.h - $(LN) vacall_r.h.mingw32 vacall_r.h - -config.h : config.h.mingw32 - $(RM) config.h - $(LN) config.h.mingw32 config.h - -vacall.o : vacall-$(CPU).o - $(RM) vacall.o - $(LN) vacall-$(CPU).o vacall.o - -vacall-i386.o : vacall-i386.asm - $(CC) -c -x assembler vacall-i386.asm - -vacall-i386.asm : $(srcdir)/vacall-i386-macro.S - $(CPP) $(ASPFLAGS) $(srcdir)/vacall-i386-macro.S | grep -v '^ *#line' | grep -v '^#ident' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,\. ,.,g' > vacall-i386.asm - -misc.o : $(srcdir)/misc.c vacall_r.h config.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/misc.c - -structcpy.o : $(srcdir)/structcpy.c - $(CC) $(CFLAGS) -c $(srcdir)/structcpy.c - -libvacall.a : $(OBJECTS) - $(RM) libvacall.a - $(AR) $(AR_FLAGS) libvacall.a $(OBJECTS) - -check : all - -extracheck : all - -mostlyclean : clean - -clean : force - $(RM) *.o *.a core - $(RM) vacall-i386.asm - -distclean : clean - $(RM) config.status config.log config.cache Makefile vacall.h config.h - -maintainer-clean : distclean - -force : - DELETED ffcall/callback/vacall_r/Makefile.msvc Index: ffcall/callback/vacall_r/Makefile.msvc ================================================================== --- ffcall/callback/vacall_r/Makefile.msvc +++ /dev/null @@ -1,117 +0,0 @@ -# -*- Makefile -*- for vacall - -#### Start of system configuration section. #### - -# Flags that can be set on the nmake command line: -# MFLAGS={-ML|-MT|-MD} for defining the compilation model -# MFLAGS=-ML (the default) Single-threaded, statically linked - libc.lib -# MFLAGS=-MT Multi-threaded, statically linked - libcmt.lib -# MFLAGS=-MD Multi-threaded, dynamically linked - msvcrt.lib -# DEBUG=1 for compiling with debugging information -# Note that nmake command line flags are automatically passed to subdirectory -# Makefiles. Therefore we don't need to pass them explicitly to subdirectory -# Makefiles, but the subdirectory Makefiles need to have the same defaults. -# Building as a DLL not supported yet. -DLL=0 -!if !defined(DEBUG) -DEBUG=0 -!endif -!if !defined(MFLAGS) -!if !$(DLL) -MFLAGS= -!else -MFLAGS=-MD -!endif -!endif - -!if $(DEBUG) -OPTIMFLAGS = -Od -Z7 -!else -OPTIMFLAGS = -D_NDEBUG -O1 -!endif - -HOST = i386-pc-win32-msvc -CPU = i386 - -# Directories used by "make": -srcdir = . - -# Directories used by "make install": -prefix = /usr/local -local_prefix = /usr/local -exec_prefix = $(prefix) -libdir = $(exec_prefix)/lib -includedir = $(prefix)/include -mandir = $(prefix)/man - -# Programs used by "make": -CC = cl -CFLAGS = $(MFLAGS) $(OPTIMFLAGS) -CPP = cl -E -INCLUDES = -I. -I$(srcdir) -AR = lib -AR_FLAGS = /out: -MV = ren -LN = copy -RM = -del - -# Programs used by "make install": -INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_DATA = @INSTALL_DATA@ - -#### End of system configuration section. #### - -SHELL = /bin/sh - -OBJECTS = vacall.obj misc.obj structcpy.obj - -all : $(OBJECTS) vacall.lib vacall_r.h - -vacall_r.h : vacall_r.h.msvc - $(RM) vacall_r.h - $(LN) vacall_r.h.msvc vacall_r.h - -config.h : config.h.msvc - $(RM) config.h - $(LN) config.h.msvc config.h - -vacall.obj : vacall-$(CPU).obj - $(RM) vacall.obj - $(LN) vacall-$(CPU).obj vacall.obj - -vacall-i386.obj : $(srcdir)/vacall-i386-msvc.c vacall_r.h - $(RM) vacall-i386.obj - $(CC) -c $(srcdir)/vacall-i386-msvc.c /Fovacall-i386.obj - -misc.obj : $(srcdir)/misc.c vacall_r.h config.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/misc.c - -structcpy.obj : $(srcdir)/structcpy.c - $(CC) $(CFLAGS) -c $(srcdir)/structcpy.c - -!if !$(DLL) -vacall.lib : $(OBJECTS) - $(RM) vacall.lib - $(AR) $(AR_FLAGS)vacall.lib $(OBJECTS) -!else -# vacall.dll and vacall.lib are created together. -vacall.lib : $(OBJECTS) - $(CC) $(MFLAGS) -LD $(OBJECTS) -!endif - -check : all - -mostlyclean : clean - -clean : force - $(RM) *.obj *.lib *.exp *.dll core - $(RM) vacall-i386.s - -distclean : clean - $(RM) config.status config.log config.cache Makefile vacall_r.h config.h - -maintainer-clean : distclean - -force : - DELETED ffcall/callback/vacall_r/README Index: ffcall/callback/vacall_r/README ================================================================== --- ffcall/callback/vacall_r/README +++ /dev/null @@ -1,9 +0,0 @@ -This directory contains a reentrant version of the vacall package. - -Instead of using a global variable for the function to be called, -a pointer is passed in a special CPU register, pointing to: - - a function code pointer in the first word, - - a data word in the second word, to be passed before the va_alist. - -The include file is renamed to . - DELETED ffcall/callback/vacall_r/asmarm.h Index: ffcall/callback/vacall_r/asmarm.h ================================================================== --- ffcall/callback/vacall_r/asmarm.h +++ /dev/null @@ -1,20 +0,0 @@ -// Assembly language support for arm CPU. -// Bruno Haible 29.5.1999 - -#ifdef ASM_UNDERSCORE -#ifdef __STDC__ -#define C(entrypoint) _##entrypoint -#else -#define C(entrypoint) _/**/entrypoint -#endif -#else -#define C(entrypoint) entrypoint -#endif - -// When assembly language code is compiled into a shared library, ELF linkers -// need to know which symbols are functions. -#if defined(__NetBSD__) -#define DECLARE_FUNCTION(name) .type C(name),%function -#else -#define DECLARE_FUNCTION(name) -#endif DELETED ffcall/callback/vacall_r/asmarm.sh Index: ffcall/callback/vacall_r/asmarm.sh ================================================================== --- ffcall/callback/vacall_r/asmarm.sh +++ /dev/null @@ -1,35 +0,0 @@ -#!/bin/sh -# Translate the assembler syntax of arm assembler programs -# Usage: asmarm < riscix-asm-file > portable-asm-file -# The portable-asm-file has to be -# 1. preprocessed, -# 2. grep -v '^ *#line' | grep -v '^#' -# 3. sed -e 's,% ,%,g' -e 's,//,@,g' -e 's,\$,#,g' - -tmpscript1=sed$$tmp1 -tmpscript2=sed$$tmp2 -tmpremove='rm -f $tmpscript1 $tmpscript2' -trap "$tmpremove" 1 2 15 - -cat > $tmpscript1 << \EOF -# ----------- Remove gcc self-identification -/gcc2_compiled/d -/gnu_compiled_c/d -EOF - -cat > $tmpscript2 << \EOF -# ----------- Hide comments, to avoid trouble in preprocessing -s,@,//,g -# ----------- Turn # into $, to avoid trouble in preprocessing -s,#,\$,g -# ----------- Declare global symbols as functions (we have no variables) -s/\.global _\([A-Za-z0-9_]*\)$/.global _\1\ - DECLARE_FUNCTION(\1)/ -# ----------- Global symbols depends on ASM_UNDERSCORE -s/_\([A-Za-z0-9_:]*\)/C(\1)/ -EOF - -sed -f $tmpscript1 | \ -sed -f $tmpscript2 - -eval "$tmpremove" DELETED ffcall/callback/vacall_r/asmi386.h Index: ffcall/callback/vacall_r/asmi386.h ================================================================== --- ffcall/callback/vacall_r/asmi386.h +++ /dev/null @@ -1,263 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -#ifdef _MSC_VER -#define C(entrypoint) entrypoint -#define L(label) L##label -#else -#ifdef ASM_UNDERSCORE -#define C(entrypoint) _##entrypoint -#define L(label) L##label -#else -#define C(entrypoint) entrypoint -#define L(label) .L##label -#endif -#endif - - - - - -#ifdef _MSC_VER -#define INTEL_SYNTAX -#else - - - -#ifdef ASM_UNDERSCORE -#define BSD_SYNTAX -#else -#define ELF_SYNTAX -#endif -#endif - -#if defined (BSD_SYNTAX) || defined (ELF_SYNTAX) -#define R(r) %r -#define NUM(n) $##n -#define ADDR(a) $##a -#define X1 -#define X2 -#define X4 -#define X8 -#define MEM(base)(R(base)) -#define MEM_DISP(base,displacement)displacement(R(base)) -#define MEM_INDEX(base,index)(R(base),R(index)) -#define MEM_SHINDEX(base,index,size)(R(base),R(index),size) -#define MEM_DISP_SHINDEX0(displacement,index,size)displacement(,R(index),size) -#define MEM_DISP_SHINDEX(base,displacement,index,size)displacement(R(base),R(index),size) -#define INDIR(value)*value -#define INSNCONC(mnemonic,size_suffix)mnemonic##size_suffix -#define INSN1(mnemonic,size_suffix,dst)INSNCONC(mnemonic,size_suffix) dst -#define INSN2(mnemonic,size_suffix,src,dst)INSNCONC(mnemonic,size_suffix) src,dst -#define INSN2MOVX(mnemonic,size_suffix,src,dst)INSNCONC(mnemonic,size_suffix##l) src,dst -#if defined(BSD_SYNTAX) || defined(COHERENT) -#define INSN2SHCL(mnemonic,size_suffix,src,dst)INSNCONC(mnemonic,size_suffix) R(cl),src,dst -#define REPZ repe ; -#else -#define INSN2SHCL(mnemonic,size_suffix,src,dst)INSNCONC(mnemonic,size_suffix) src,dst -#define REPZ repz ; -#endif -#define REP rep ; -#if defined(BSD_SYNTAX) && !(defined(__CYGWIN32__) || defined(__MINGW32__)) -#define ALIGN(log) .align log,0x90 -#endif -#if defined(ELF_SYNTAX) || defined(__CYGWIN32__) || defined(__MINGW32__) -#define ALIGN(log) .align 1< all-asm-file -# Warning! All comments are stripped. - -tmpscript01=sed$$tmp01 -tmpscript02=sed$$tmp02 -tmpscript03=sed$$tmp03 -tmpscript04=sed$$tmp04 -tmpscript05=sed$$tmp05 -tmpscript06=sed$$tmp06 -tmpscript07=sed$$tmp07 -tmpscript08=sed$$tmp08 -tmpscript09=sed$$tmp09 -tmpscript10=sed$$tmp10 -tmpscript11=sed$$tmp11 -tmpremove='rm -f $tmpscript01 $tmpscript02 $tmpscript03 $tmpscript04 $tmpscript05 $tmpscript06 $tmpscript07 $tmpscript08 $tmpscript09 $tmpscript10 $tmpscript11' -trap "$tmpremove" 1 2 15 - -cat > $tmpscript01 << \EOF -# ----------- Strip comments -s,# .*,, -s,[ ][ ]*$,, -EOF - -cat > $tmpscript02 << \EOF -# ----------- Remove #APP/#NO_APP lines, add a blank line at the end -/^#APP$/d -/^#NO_APP$/d -/gcc2_compiled/d -/gnu_compiled_c/d -EOF - -cat > $tmpscript03 << \EOF -# ----------- Global symbols depends on ASM_UNDERSCORE -s/_\([A-Za-z0-9_:]*\)/C(\1)/ -EOF - -cat > $tmpscript04 << \EOF -# ----------- Introduce macro syntax for operands -s/\([-+0-9A-Z_]\+\)[(]%\(e..\)[)]/MEM_DISP(\2,\1)/g -s/[(]%\(e..\)[)]/MEM(\1)/g -s/\([-+0-9A-Z_]\+\)[(],%\(e..\),\([0-9]*\)[)]/MEM_DISP_SHINDEX0(\1,\2,\3)/g -s/\([-+0-9A-Z_]\+\)[(]%\(e..\),%\(e..\),\([0-9]*\)[)]/MEM_DISP_SHINDEX(\2,\1,\3,\4)/g -s/[(]%\(e..\),%\(e..\),\([0-9]*\)[)]/MEM_SHINDEX(\1,\2,\3)/g -s/[(]%\(e..\),%\(e..\)[)]/MEM_INDEX(\1,\2)/g -EOF - -cat > $tmpscript05 << \EOF -# ----------- Introduce macro syntax for instructions -s/\(push\|pop\|mul\|div\|not\|neg\|inc\|dec\|fld\|fstp\)\(.\)\( \+\)\(.*\)$/INSN1(\1,\2 ,\4)/ -s/\(call\|jmp\|jc\|jnc\|je\|jne\|jz\|jnz\|ja\|jae\|jb\|jbe\|jl\|jge\|js\|jns\)\( \+\)\(.*\)$/INSN1(\1,_ ,\3)/ -s/\(movs\|movz\)\(.\)l\( \+\)\(.*\)$/INSN2MOVX(\1,\2 ,\4)/ -s/\(mov\|add\|sub\|adc\|sbb\|xor\|test\|cmp\|rcl\|rcr\|and\|or\|sar\|shr\|shl\|lea\)\(.\)\( \+\)\(.*\)$/INSN2(\1,\2 ,\4)/ -s/\(shld\|shrd\)\(.\)\( \+\)shcl\( \+\)\(.*\)$/INSN2SHCL(\1,\2 ,\5)/ -s/rep ;/REP/ -s/repz ;/REPZ/ -EOF - -cat > $tmpscript06 << \EOF -# ----------- Add size prefixes to memory references' \ -s/\([(]f[^(,]*,s.*\),MEM/\1,X4 MEM/g -s/\([(]f[^(,]*,l.*\),MEM/\1,X8 MEM/g -s/\([(][^(,]*,b.*\),MEM/\1,X1 MEM/g -s/\([(][^(,]*,w.*\),MEM/\1,X2 MEM/g -s/\([(][^(,]*,l.*\),MEM/\1,X4 MEM/g -EOF - -cat > $tmpscript07 << \EOF -# ----------- Introduce macro syntax for register names -s/%\(e..\)/R(\1)/g -s/%\(..\)/R(\1)/g -s/\$\([-0-9]*\)/NUM(\1)/g -EOF - -cat > $tmpscript08 << \EOF -# ----------- Treat table jumps (hairy) -# (Needed because the MSVC inline assembler does not have pseudo-ops. -# Note that we transform a table of absolute addresses with 4 bytes -# per entry into a table of absolute addresses with 8 bytes per entry.) -s/^ \.long \(.*\)$/#ifdef _MSC_VER\ - nop\ - nop\ - push \1\ -#else\ - .long \1\ -#endif/ -s/^ \(INSN1[(]jmp,_[^,]*,\)\*MEM_DISP_SHINDEX0[(]\([^,)]*\),\([^,)]*\),4[)][)]$/#ifdef _MSC_VER\ - INSN2(lea,l ,MEM_DISP_SHINDEX0(\2+8,\3,8),R(\3))\ - INSN2(mov,l ,X4 MEM_DISP(\3,-4),R(\3))\ - INSN1(jmp,_ ,INDIR(R(\3)))\ -#else\ - \1INDIR(MEM_DISP_SHINDEX0(\2,\3,4)))\ -#endif/ -EOF - -cat > $tmpscript09 << \EOF -# ----------- Treat indirect calls -s/\(INSN1[(]\(call\|jmp\),_[^,]*,\)\*\(R[(][^)]*[)]\)[)]$/\1INDIR(\3))/ -EOF - -cat > $tmpscript10 << \EOF -# ----------- Introduce macro syntax for assembler pseudo-ops -/\.file\([ ]\+\)/d -s/\.text/TEXT()/ -s/^\([^#]*\)\.align \(.*\)/\1ALIGN(\2)/ -s/\.globl\( \+\)\(.*\)$/GLOBL(\2)/ -s/^C(\([A-Za-z0-9_]*\):)/FUNBEGIN(\1)/ -# The next 5 lines add FUNEND() after each ret followed by an empty line -/[ ]ret *$/{ -n -/^$/s/^$/FUNEND()\ -/ -} -EOF - -cat > $tmpscript11 << \EOF -# ----------- Declare global symbols as functions (we have no variables) -s/GLOBL(C(\([A-Za-z0-9_]*\)))$/GLOBL(C(\1))\ - DECLARE_FUNCTION(\1)/ -EOF - -sed -f $tmpscript01 | \ -sed -f $tmpscript02 | \ -(cat - ; echo) | \ -(if [ $# = 1 -a "x$1" = "x-no-C" ] ; then cat - ; else sed -f $tmpscript03 ; fi) | \ -sed -f $tmpscript04 | \ -sed -f $tmpscript05 | \ -sed -f $tmpscript06 | \ -sed -f $tmpscript07 | \ -sed -f $tmpscript08 | \ -sed -f $tmpscript09 | \ -sed -f $tmpscript10 | \ -(if [ $# = 1 -a "x$1" = "x-no-C" ] ; then cat - ; else sed -f $tmpscript11 ; fi) - -eval "$tmpremove" - DELETED ffcall/callback/vacall_r/asmm68k.h Index: ffcall/callback/vacall_r/asmm68k.h ================================================================== --- ffcall/callback/vacall_r/asmm68k.h +++ /dev/null @@ -1,22 +0,0 @@ -// Assembly language support for m68k CPU. -// Bruno Haible 29.5.1999 - -#ifdef ASM_UNDERSCORE -// SunOS, NetBSD, OpenBSD, Linux/a.out -#ifdef __STDC__ -#define C(entrypoint) _##entrypoint -#else -#define C(entrypoint) _/**/entrypoint -#endif -#else -// SVR4, A/UX, AMIX, Atari, Linux/ELF -#define C(entrypoint) entrypoint -#endif - -// When assembly language code is compiled into a shared library, ELF linkers -// need to know which symbols are functions. -#if defined(__NetBSD__) || defined(__OpenBSD__) || defined(__ELF__) || defined(__svr4__) -#define DECLARE_FUNCTION(name) .type C(name),@function -#else -#define DECLARE_FUNCTION(name) -#endif DELETED ffcall/callback/vacall_r/asmm68k.sh Index: ffcall/callback/vacall_r/asmm68k.sh ================================================================== --- ffcall/callback/vacall_r/asmm68k.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/bin/sh -# Translate the assembler syntax of m68k assembler programs -# Usage: asmm68k < sunos-asm-file > portable-asm-file -# The portable-asm-file has to be -# 1. preprocessed, -# 2. grep -v '^ *#line' | grep -v '^#' -# 3. sed -e 's,% ,%,g' -e 's,//.*$,,' - -tmpscript1=sed$$tmp1 -tmpscript2=sed$$tmp2 -tmpremove='rm -f $tmpscript1 $tmpscript2' -trap "$tmpremove" 1 2 15 - -cat > $tmpscript1 << \EOF -# ----------- Remove #APP/#NO_APP lines -/^#APP$/d -/^#NO_APP$/d -# ----------- Remove gcc self-identification -/gcc2_compiled/d -/gnu_compiled_c/d -EOF - -cat > $tmpscript2 << \EOF -# ----------- Prefix register names with $, to be turned into % later -s/,/, /g -s/\([^A-Za-z0-9_]\)\([ad][0-7]\|sp\|fp[0-7]\)\([^A-Za-z0-9_]\)/\1$\2\3/g -s/\([^A-Za-z0-9_]\)\([ad][0-7]\|sp\|fp[0-7]\)$/\1$\2/g -s/, /,/g -# ----------- Declare global symbols as functions (we have no variables) -s/\.globl _\([A-Za-z0-9_]*\)$/.globl _\1\ - DECLARE_FUNCTION(\1)/ -# ----------- Global symbols depends on ASM_UNDERSCORE -s/_\([A-Za-z0-9_:]*\)/C(\1)/ -EOF - -sed -f $tmpscript1 | \ -sed -f $tmpscript2 - -eval "$tmpremove" DELETED ffcall/callback/vacall_r/asmmips.h Index: ffcall/callback/vacall_r/asmmips.h ================================================================== --- ffcall/callback/vacall_r/asmmips.h +++ /dev/null @@ -1,10 +0,0 @@ -// Assembly language support for mips CPU. -// Bruno Haible 29.5.1999 - -// When assembly language code is compiled into a shared library, ELF linkers -// need to know which symbols are functions. -#if defined(__GNU__) || defined(__NetBSD__) -#define DECLARE_FUNCTION(name) .type name,@function -#else -#define DECLARE_FUNCTION(name) -#endif DELETED ffcall/callback/vacall_r/asmmips.sh Index: ffcall/callback/vacall_r/asmmips.sh ================================================================== --- ffcall/callback/vacall_r/asmmips.sh +++ /dev/null @@ -1,31 +0,0 @@ -#!/bin/sh -# Translate the assembler syntax of mips assembler programs -# Usage: asmmips < irix-asm-file > portable-asm-file -# The portable-asm-file has to be -# 1. preprocessed, -# 2. grep -v '^ *#line' | grep -v '^#' -# 3. sed -e 's,% ,%,g' -e 's,//.*$,,' - -tmpscript1=sed$$tmp1 -tmpscript2=sed$$tmp2 -tmpremove='rm -f $tmpscript1 $tmpscript2' -trap "$tmpremove" 1 2 15 - -cat > $tmpscript1 << \EOF -# ----------- Remove gcc self-identification -/gcc2_compiled/d -/gnu_compiled_c/d -EOF - -cat > $tmpscript2 << \EOF -# ----------- Remove comments, they would cause trouble in preprocessing -s,#.*$,, -# ----------- Declare global symbols as functions (we have no variables) -s/\.globl \([A-Za-z0-9_]*\)$/.globl \1\ - DECLARE_FUNCTION(\1)/ -EOF - -sed -f $tmpscript1 | \ -sed -f $tmpscript2 - -eval "$tmpremove" DELETED ffcall/callback/vacall_r/asmsparc.h Index: ffcall/callback/vacall_r/asmsparc.h ================================================================== --- ffcall/callback/vacall_r/asmsparc.h +++ /dev/null @@ -1,29 +0,0 @@ -// Assembly language support for sparc CPU. -// Bruno Haible 29.5.1999 - -#ifdef ASM_UNDERSCORE -// SunOS4, Linux/a.out -#ifdef __STDC__ -#define C(entrypoint) _##entrypoint -#else -#define C(entrypoint) _/**/entrypoint -#endif -#else -// Solaris, Linux/ELF -#define C(entrypoint) entrypoint -#endif - -// When assembly language code is compiled into a shared library, ELF linkers -// need to know which symbols are functions. -#if defined(__NetBSD__) || defined(__OpenBSD__) -#define DECLARE_FUNCTION(name) .type C(name),@function -#elif defined(__svr4__) || defined(__ELF__) -// Solaris, Linux/ELF -// Some preprocessors keep the backslash in place, some don't. -// Some complain about the # being not in front of an ANSI C macro. -// Therefore we use a dollar, which will be sed-converted to # later. -#define DECLARE_FUNCTION(name) .type C(name),$function -#else -// SunOS4, Linux/a.out -#define DECLARE_FUNCTION(name) -#endif DELETED ffcall/callback/vacall_r/asmsparc.sh Index: ffcall/callback/vacall_r/asmsparc.sh ================================================================== --- ffcall/callback/vacall_r/asmsparc.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/sh -# Translate the assembler syntax of sparc assembler programs -# Usage: asmsparc < sunos4-asm-file > portable-asm-file -# The portable-asm-file has to be -# 1. preprocessed, -# 2. grep -v '^ *#line' | grep -v '^#' -# 3. sed -e 's,% ,%,g' -e 's,//.*$,,' -e 's,\$,#,g' - -tmpscript1=sed$$tmp1 -tmpscript2=sed$$tmp2 -tmpremove='rm -f $tmpscript1 $tmpscript2' -trap "$tmpremove" 1 2 15 - -cat > $tmpscript1 << \EOF -# ----------- Remove gcc self-identification -/gcc2_compiled/d -/gnu_compiled_c/d -EOF - -cat > $tmpscript2 << \EOF -# ----------- Turn # into $, to avoid trouble in preprocessing -s,#,\$,g -# ----------- Declare global symbols as functions (we have no variables) -s/\.global _\([A-Za-z0-9_]*\)$/.global _\1\ - DECLARE_FUNCTION(\1)/ -# ----------- Global symbols depends on ASM_UNDERSCORE -s/_\([A-Za-z0-9_:]*\)/C(\1)/ -EOF - -sed -f $tmpscript1 | \ -sed -f $tmpscript2 - -eval "$tmpremove" DELETED ffcall/callback/vacall_r/asmsparc64.sh Index: ffcall/callback/vacall_r/asmsparc64.sh ================================================================== --- ffcall/callback/vacall_r/asmsparc64.sh +++ /dev/null @@ -1,31 +0,0 @@ -#!/bin/sh -# Translate the assembler syntax of sparc64 assembler programs -# Usage: asmsparc < sparclinux-asm-file > portable-asm-file -# The portable-asm-file has to be -# 1. preprocessed, -# 2. grep -v '^ *#line' | grep -v '^#' -# 3. sed -e 's,% ,%,g' -e 's,//.*$,,' -e 's,\$,#,g' - -tmpscript1=sed$$tmp1 -tmpscript2=sed$$tmp2 -tmpremove='rm -f $tmpscript1 $tmpscript2' -trap "$tmpremove" 1 2 15 - -cat > $tmpscript1 << \EOF -# ----------- Remove gcc self-identification -/gcc2_compiled/d -/gnu_compiled_c/d -EOF - -cat > $tmpscript2 << \EOF -# ----------- Turn # into $, to avoid trouble in preprocessing -s,#,\$,g -# ----------- Declare global symbols as functions (we have no variables) -s/\.global \([A-Za-z0-9_]*\)$/.global \1\ - DECLARE_FUNCTION(\1)/ -EOF - -sed -f $tmpscript1 | \ -sed -f $tmpscript2 - -eval "$tmpremove" DELETED ffcall/callback/vacall_r/config.h.in Index: ffcall/callback/vacall_r/config.h.in ================================================================== --- ffcall/callback/vacall_r/config.h.in +++ /dev/null @@ -1,11 +0,0 @@ -/* Bruno Haible 11.2.1995 */ - -/* - * Copyright 1995-2001 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - DELETED ffcall/callback/vacall_r/config.h.mingw32 Index: ffcall/callback/vacall_r/config.h.mingw32 ================================================================== --- ffcall/callback/vacall_r/config.h.mingw32 +++ /dev/null @@ -1,11 +0,0 @@ -/* Bruno Haible 11.2.1995 */ - -/* - * Copyright 1995-2001 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - DELETED ffcall/callback/vacall_r/config.h.msvc Index: ffcall/callback/vacall_r/config.h.msvc ================================================================== --- ffcall/callback/vacall_r/config.h.msvc +++ /dev/null @@ -1,11 +0,0 @@ -/* Bruno Haible 11.2.1995 */ - -/* - * Copyright 1995-2001 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - DELETED ffcall/callback/vacall_r/configure Index: ffcall/callback/vacall_r/configure ================================================================== --- ffcall/callback/vacall_r/configure +++ /dev/null @@ -1,9330 +0,0 @@ -#! /bin/sh -# Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.59. -# -# Copyright (C) 2003 Free Software Foundation, Inc. -# This configure script is free software; the Free Software Foundation -# gives unlimited permission to copy, distribute and modify it. -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## - -# Be Bourne compatible -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' -elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then - set -o posix -fi -DUALCASE=1; export DUALCASE # for MKS sh - -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - - -# Work around bugs in pre-3.0 UWIN ksh. -$as_unset ENV MAIL MAILPATH -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -for as_var in \ - LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ - LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ - LC_TELEPHONE LC_TIME -do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var - else - $as_unset $as_var - fi -done - -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - - -# Name of the executable. -as_me=`$as_basename "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)$' \| \ - . : '\(.\)' 2>/dev/null || -echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } - /^X\/\(\/\/\)$/{ s//\1/; q; } - /^X\/\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - - -# PATH needs CR, and LINENO needs CR and PATH. -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" || { - # Find who we are. Look in the path if we contain no path at all - # relative or not. - case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done - - ;; - esac - # We did not find ourselves, most probably we were run as `sh COMMAND' - # in which case we are not to be found in the path. - if test "x$as_myself" = x; then - as_myself=$0 - fi - if test ! -f "$as_myself"; then - { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2 - { (exit 1); exit 1; }; } - fi - case $CONFIG_SHELL in - '') - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for as_base in sh bash ksh sh5; do - case $as_dir in - /*) - if ("$as_dir/$as_base" -c ' - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then - $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } - $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } - CONFIG_SHELL=$as_dir/$as_base - export CONFIG_SHELL - exec "$CONFIG_SHELL" "$0" ${1+"$@"} - fi;; - esac - done -done -;; - esac - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line before each line; the second 'sed' does the real - # work. The second script uses 'N' to pair each line-number line - # with the numbered line, and appends trailing '-' during - # substitution so that $LINENO is not a special case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) - sed '=' <$as_myself | - sed ' - N - s,$,-, - : loop - s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, - t loop - s,-$,, - s,^['$as_cr_digits']*\n,, - ' >$as_me.lineno && - chmod +x $as_me.lineno || - { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensible to this). - . ./$as_me.lineno - # Exit status is that of the last command. - exit -} - - -case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in - *c*,-n*) ECHO_N= ECHO_C=' -' ECHO_T=' ' ;; - *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; - *) ECHO_N= ECHO_C='\c' ECHO_T= ;; -esac - -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -rm -f conf$$ conf$$.exe conf$$.file -echo >conf$$.file -if ln -s conf$$.file conf$$ 2>/dev/null; then - # We could just check for DJGPP; but this test a) works b) is more generic - # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). - if test -f conf$$.exe; then - # Don't use ln at all; we don't have any links - as_ln_s='cp -p' - else - as_ln_s='ln -s' - fi -elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.file - -if mkdir -p . 2>/dev/null; then - as_mkdir_p=: -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -as_executable_p="test -f" - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -# IFS -# We need space, tab and new line, in precisely that order. -as_nl=' -' -IFS=" $as_nl" - -# CDPATH. -$as_unset CDPATH - - -# Find the correct PATH separator. Usually this is `:', but -# DJGPP uses `;' like DOS. -if test "X${PATH_SEPARATOR+set}" != Xset; then - UNAME=${UNAME-`uname 2>/dev/null`} - case X$UNAME in - *-DOS) lt_cv_sys_path_separator=';' ;; - *) lt_cv_sys_path_separator=':' ;; - esac - PATH_SEPARATOR=$lt_cv_sys_path_separator -fi - - -# Check that we are running under the correct shell. -SHELL=${CONFIG_SHELL-/bin/sh} - -case X$ECHO in -X*--fallback-echo) - # Remove one level of quotation (which was required for Make). - ECHO=`echo "$ECHO" | sed 's,\\\\\$\\$0,'$0','` - ;; -esac - -echo=${ECHO-echo} -if test "X$1" = X--no-reexec; then - # Discard the --no-reexec flag, and continue. - shift -elif test "X$1" = X--fallback-echo; then - # Avoid inline document here, it may be left over - : -elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then - # Yippee, $echo works! - : -else - # Restart under the correct shell. - exec $SHELL "$0" --no-reexec ${1+"$@"} -fi - -if test "X$1" = X--fallback-echo; then - # used as fallback echo - shift - cat </dev/null && - echo_test_string="`eval $cmd`" && - (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null - then - break - fi - done -fi - -if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - : -else - # The Solaris, AIX, and Digital Unix default echo programs unquote - # backslashes. This makes it impossible to quote backslashes using - # echo "$something" | sed 's/\\/\\\\/g' - # - # So, first we look for a working echo in the user's PATH. - - IFS="${IFS= }"; save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for dir in $PATH /usr/ucb; do - if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && - test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - echo="$dir/echo" - break - fi - done - IFS="$save_ifs" - - if test "X$echo" = Xecho; then - # We didn't find a better echo, so look for alternatives. - if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - # This shell has a builtin print -r that does the trick. - echo='print -r' - elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) && - test "X$CONFIG_SHELL" != X/bin/ksh; then - # If we have ksh, try running configure again with it. - ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} - export ORIGINAL_CONFIG_SHELL - CONFIG_SHELL=/bin/ksh - export CONFIG_SHELL - exec $CONFIG_SHELL "$0" --no-reexec ${1+"$@"} - else - # Try using printf. - echo='printf %s\n' - if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - # Cool, printf works - : - elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` && - test "X$echo_testing_string" = 'X\t' && - echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL - export CONFIG_SHELL - SHELL="$CONFIG_SHELL" - export SHELL - echo="$CONFIG_SHELL $0 --fallback-echo" - elif echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` && - test "X$echo_testing_string" = 'X\t' && - echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - echo="$CONFIG_SHELL $0 --fallback-echo" - else - # maybe with a smaller string... - prev=: - - for cmd in 'echo test' 'sed 2q "$0"' 'sed 10q "$0"' 'sed 20q "$0"' 'sed 50q "$0"'; do - if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null - then - break - fi - prev="$cmd" - done - - if test "$prev" != 'sed 50q "$0"'; then - echo_test_string=`eval $prev` - export echo_test_string - exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "$0" ${1+"$@"} - else - # Oops. We lost completely, so just stick with echo. - echo=echo - fi - fi - fi - fi -fi -fi - -# Copy echo and quote the copy suitably for passing to libtool from -# the Makefile, instead of quoting the original, which is used later. -ECHO=$echo -if test "X$ECHO" = "X$CONFIG_SHELL $0 --fallback-echo"; then - ECHO="$CONFIG_SHELL \\\$\$0 --fallback-echo" -fi - - - -# Name of the host. -# hostname on some systems (SVR3.2, Linux) returns a bogus exit status, -# so uname gets run too. -ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` - -exec 6>&1 - -# -# Initializations. -# -ac_default_prefix=/usr/local -ac_config_libobj_dir=. -cross_compiling=no -subdirs= -MFLAGS= -MAKEFLAGS= -SHELL=${CONFIG_SHELL-/bin/sh} - -# Maximum number of lines to put in a shell here document. -# This variable seems obsolete. It should probably be removed, and -# only ac_max_sed_lines should be used. -: ${ac_max_here_lines=38} - -# Identity of this package. -PACKAGE_NAME= -PACKAGE_TARNAME= -PACKAGE_VERSION= -PACKAGE_STRING= -PACKAGE_BUGREPORT= - -ac_unique_file="vacall_r.h.in" -# Factoring default headers for most tests. -ac_includes_default="\ -#include -#if HAVE_SYS_TYPES_H -# include -#endif -#if HAVE_SYS_STAT_H -# include -#endif -#if STDC_HEADERS -# include -# include -#else -# if HAVE_STDLIB_H -# include -# endif -#endif -#if HAVE_STRING_H -# if !STDC_HEADERS && HAVE_MEMORY_H -# include -# endif -# include -#endif -#if HAVE_STRINGS_H -# include -#endif -#if HAVE_INTTYPES_H -# include -#else -# if HAVE_STDINT_H -# include -# endif -#endif -#if HAVE_UNISTD_H -# include -#endif" - -ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP EGREP CC_GCC GCC_X_NONE AS_UNDERSCORE RANLIB SET_MAKE INSTALL INSTALL_PROGRAM INSTALL_DATA CP LN build build_cpu build_vendor build_os host host_cpu host_vendor host_os LN_S ECHO ac_ct_RANLIB STRIP ac_ct_STRIP LIBTOOL LIBOBJS LTLIBOBJS' -ac_subst_files='' - -# Initialize some variables set by options. -ac_init_help= -ac_init_version=false -# The variables have the same names as the options, with -# dashes changed to underlines. -cache_file=/dev/null -exec_prefix=NONE -no_create= -no_recursion= -prefix=NONE -program_prefix=NONE -program_suffix=NONE -program_transform_name=s,x,x, -silent= -site= -srcdir= -verbose= -x_includes=NONE -x_libraries=NONE - -# Installation directory options. -# These are left unexpanded so users can "make install exec_prefix=/foo" -# and all the variables that are supposed to be based on exec_prefix -# by default will actually change. -# Use braces instead of parens because sh, perl, etc. also accept them. -bindir='${exec_prefix}/bin' -sbindir='${exec_prefix}/sbin' -libexecdir='${exec_prefix}/libexec' -datadir='${prefix}/share' -sysconfdir='${prefix}/etc' -sharedstatedir='${prefix}/com' -localstatedir='${prefix}/var' -libdir='${exec_prefix}/lib' -includedir='${prefix}/include' -oldincludedir='/usr/include' -infodir='${prefix}/info' -mandir='${prefix}/man' - -ac_prev= -for ac_option -do - # If the previous option needs an argument, assign it. - if test -n "$ac_prev"; then - eval "$ac_prev=\$ac_option" - ac_prev= - continue - fi - - ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'` - - # Accept the important Cygnus configure options, so we can diagnose typos. - - case $ac_option in - - -bindir | --bindir | --bindi | --bind | --bin | --bi) - ac_prev=bindir ;; - -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) - bindir=$ac_optarg ;; - - -build | --build | --buil | --bui | --bu) - ac_prev=build_alias ;; - -build=* | --build=* | --buil=* | --bui=* | --bu=*) - build_alias=$ac_optarg ;; - - -cache-file | --cache-file | --cache-fil | --cache-fi \ - | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) - ac_prev=cache_file ;; - -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ - | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) - cache_file=$ac_optarg ;; - - --config-cache | -C) - cache_file=config.cache ;; - - -datadir | --datadir | --datadi | --datad | --data | --dat | --da) - ac_prev=datadir ;; - -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \ - | --da=*) - datadir=$ac_optarg ;; - - -disable-* | --disable-*) - ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid feature name: $ac_feature" >&2 - { (exit 1); exit 1; }; } - ac_feature=`echo $ac_feature | sed 's/-/_/g'` - eval "enable_$ac_feature=no" ;; - - -enable-* | --enable-*) - ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid feature name: $ac_feature" >&2 - { (exit 1); exit 1; }; } - ac_feature=`echo $ac_feature | sed 's/-/_/g'` - case $ac_option in - *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; - *) ac_optarg=yes ;; - esac - eval "enable_$ac_feature='$ac_optarg'" ;; - - -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ - | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ - | --exec | --exe | --ex) - ac_prev=exec_prefix ;; - -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ - | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ - | --exec=* | --exe=* | --ex=*) - exec_prefix=$ac_optarg ;; - - -gas | --gas | --ga | --g) - # Obsolete; use --with-gas. - with_gas=yes ;; - - -help | --help | --hel | --he | -h) - ac_init_help=long ;; - -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) - ac_init_help=recursive ;; - -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) - ac_init_help=short ;; - - -host | --host | --hos | --ho) - ac_prev=host_alias ;; - -host=* | --host=* | --hos=* | --ho=*) - host_alias=$ac_optarg ;; - - -includedir | --includedir | --includedi | --included | --include \ - | --includ | --inclu | --incl | --inc) - ac_prev=includedir ;; - -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ - | --includ=* | --inclu=* | --incl=* | --inc=*) - includedir=$ac_optarg ;; - - -infodir | --infodir | --infodi | --infod | --info | --inf) - ac_prev=infodir ;; - -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) - infodir=$ac_optarg ;; - - -libdir | --libdir | --libdi | --libd) - ac_prev=libdir ;; - -libdir=* | --libdir=* | --libdi=* | --libd=*) - libdir=$ac_optarg ;; - - -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ - | --libexe | --libex | --libe) - ac_prev=libexecdir ;; - -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ - | --libexe=* | --libex=* | --libe=*) - libexecdir=$ac_optarg ;; - - -localstatedir | --localstatedir | --localstatedi | --localstated \ - | --localstate | --localstat | --localsta | --localst \ - | --locals | --local | --loca | --loc | --lo) - ac_prev=localstatedir ;; - -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ - | --localstate=* | --localstat=* | --localsta=* | --localst=* \ - | --locals=* | --local=* | --loca=* | --loc=* | --lo=*) - localstatedir=$ac_optarg ;; - - -mandir | --mandir | --mandi | --mand | --man | --ma | --m) - ac_prev=mandir ;; - -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) - mandir=$ac_optarg ;; - - -nfp | --nfp | --nf) - # Obsolete; use --without-fp. - with_fp=no ;; - - -no-create | --no-create | --no-creat | --no-crea | --no-cre \ - | --no-cr | --no-c | -n) - no_create=yes ;; - - -no-recursion | --no-recursion | --no-recursio | --no-recursi \ - | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) - no_recursion=yes ;; - - -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ - | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ - | --oldin | --oldi | --old | --ol | --o) - ac_prev=oldincludedir ;; - -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ - | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ - | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) - oldincludedir=$ac_optarg ;; - - -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) - ac_prev=prefix ;; - -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) - prefix=$ac_optarg ;; - - -program-prefix | --program-prefix | --program-prefi | --program-pref \ - | --program-pre | --program-pr | --program-p) - ac_prev=program_prefix ;; - -program-prefix=* | --program-prefix=* | --program-prefi=* \ - | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) - program_prefix=$ac_optarg ;; - - -program-suffix | --program-suffix | --program-suffi | --program-suff \ - | --program-suf | --program-su | --program-s) - ac_prev=program_suffix ;; - -program-suffix=* | --program-suffix=* | --program-suffi=* \ - | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) - program_suffix=$ac_optarg ;; - - -program-transform-name | --program-transform-name \ - | --program-transform-nam | --program-transform-na \ - | --program-transform-n | --program-transform- \ - | --program-transform | --program-transfor \ - | --program-transfo | --program-transf \ - | --program-trans | --program-tran \ - | --progr-tra | --program-tr | --program-t) - ac_prev=program_transform_name ;; - -program-transform-name=* | --program-transform-name=* \ - | --program-transform-nam=* | --program-transform-na=* \ - | --program-transform-n=* | --program-transform-=* \ - | --program-transform=* | --program-transfor=* \ - | --program-transfo=* | --program-transf=* \ - | --program-trans=* | --program-tran=* \ - | --progr-tra=* | --program-tr=* | --program-t=*) - program_transform_name=$ac_optarg ;; - - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - silent=yes ;; - - -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) - ac_prev=sbindir ;; - -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ - | --sbi=* | --sb=*) - sbindir=$ac_optarg ;; - - -sharedstatedir | --sharedstatedir | --sharedstatedi \ - | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ - | --sharedst | --shareds | --shared | --share | --shar \ - | --sha | --sh) - ac_prev=sharedstatedir ;; - -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ - | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ - | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ - | --sha=* | --sh=*) - sharedstatedir=$ac_optarg ;; - - -site | --site | --sit) - ac_prev=site ;; - -site=* | --site=* | --sit=*) - site=$ac_optarg ;; - - -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) - ac_prev=srcdir ;; - -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) - srcdir=$ac_optarg ;; - - -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ - | --syscon | --sysco | --sysc | --sys | --sy) - ac_prev=sysconfdir ;; - -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ - | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) - sysconfdir=$ac_optarg ;; - - -target | --target | --targe | --targ | --tar | --ta | --t) - ac_prev=target_alias ;; - -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) - target_alias=$ac_optarg ;; - - -v | -verbose | --verbose | --verbos | --verbo | --verb) - verbose=yes ;; - - -version | --version | --versio | --versi | --vers | -V) - ac_init_version=: ;; - - -with-* | --with-*) - ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid package name: $ac_package" >&2 - { (exit 1); exit 1; }; } - ac_package=`echo $ac_package| sed 's/-/_/g'` - case $ac_option in - *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; - *) ac_optarg=yes ;; - esac - eval "with_$ac_package='$ac_optarg'" ;; - - -without-* | --without-*) - ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid package name: $ac_package" >&2 - { (exit 1); exit 1; }; } - ac_package=`echo $ac_package | sed 's/-/_/g'` - eval "with_$ac_package=no" ;; - - --x) - # Obsolete; use --with-x. - with_x=yes ;; - - -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ - | --x-incl | --x-inc | --x-in | --x-i) - ac_prev=x_includes ;; - -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ - | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) - x_includes=$ac_optarg ;; - - -x-libraries | --x-libraries | --x-librarie | --x-librari \ - | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) - ac_prev=x_libraries ;; - -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ - | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) - x_libraries=$ac_optarg ;; - - -*) { echo "$as_me: error: unrecognized option: $ac_option -Try \`$0 --help' for more information." >&2 - { (exit 1); exit 1; }; } - ;; - - *=*) - ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` - # Reject names that are not valid shell variable names. - expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid variable name: $ac_envvar" >&2 - { (exit 1); exit 1; }; } - ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` - eval "$ac_envvar='$ac_optarg'" - export $ac_envvar ;; - - *) - # FIXME: should be removed in autoconf 3.0. - echo "$as_me: WARNING: you should use --build, --host, --target" >&2 - expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && - echo "$as_me: WARNING: invalid host type: $ac_option" >&2 - : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option} - ;; - - esac -done - -if test -n "$ac_prev"; then - ac_option=--`echo $ac_prev | sed 's/_/-/g'` - { echo "$as_me: error: missing argument to $ac_option" >&2 - { (exit 1); exit 1; }; } -fi - -# Be sure to have absolute paths. -for ac_var in exec_prefix prefix -do - eval ac_val=$`echo $ac_var` - case $ac_val in - [\\/$]* | ?:[\\/]* | NONE | '' ) ;; - *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 - { (exit 1); exit 1; }; };; - esac -done - -# Be sure to have absolute paths. -for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \ - localstatedir libdir includedir oldincludedir infodir mandir -do - eval ac_val=$`echo $ac_var` - case $ac_val in - [\\/$]* | ?:[\\/]* ) ;; - *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 - { (exit 1); exit 1; }; };; - esac -done - -# There might be people who depend on the old broken behavior: `$host' -# used to hold the argument of --host etc. -# FIXME: To remove some day. -build=$build_alias -host=$host_alias -target=$target_alias - -# FIXME: To remove some day. -if test "x$host_alias" != x; then - if test "x$build_alias" = x; then - cross_compiling=maybe - echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host. - If a cross compiler is detected then cross compile mode will be used." >&2 - elif test "x$build_alias" != "x$host_alias"; then - cross_compiling=yes - fi -fi - -ac_tool_prefix= -test -n "$host_alias" && ac_tool_prefix=$host_alias- - -test "$silent" = yes && exec 6>/dev/null - - -# Find the source files, if location was not specified. -if test -z "$srcdir"; then - ac_srcdir_defaulted=yes - # Try the directory containing this script, then its parent. - ac_confdir=`(dirname "$0") 2>/dev/null || -$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$0" : 'X\(//\)[^/]' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$0" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - srcdir=$ac_confdir - if test ! -r $srcdir/$ac_unique_file; then - srcdir=.. - fi -else - ac_srcdir_defaulted=no -fi -if test ! -r $srcdir/$ac_unique_file; then - if test "$ac_srcdir_defaulted" = yes; then - { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2 - { (exit 1); exit 1; }; } - else - { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 - { (exit 1); exit 1; }; } - fi -fi -(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null || - { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2 - { (exit 1); exit 1; }; } -srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'` -ac_env_build_alias_set=${build_alias+set} -ac_env_build_alias_value=$build_alias -ac_cv_env_build_alias_set=${build_alias+set} -ac_cv_env_build_alias_value=$build_alias -ac_env_host_alias_set=${host_alias+set} -ac_env_host_alias_value=$host_alias -ac_cv_env_host_alias_set=${host_alias+set} -ac_cv_env_host_alias_value=$host_alias -ac_env_target_alias_set=${target_alias+set} -ac_env_target_alias_value=$target_alias -ac_cv_env_target_alias_set=${target_alias+set} -ac_cv_env_target_alias_value=$target_alias -ac_env_CC_set=${CC+set} -ac_env_CC_value=$CC -ac_cv_env_CC_set=${CC+set} -ac_cv_env_CC_value=$CC -ac_env_CFLAGS_set=${CFLAGS+set} -ac_env_CFLAGS_value=$CFLAGS -ac_cv_env_CFLAGS_set=${CFLAGS+set} -ac_cv_env_CFLAGS_value=$CFLAGS -ac_env_LDFLAGS_set=${LDFLAGS+set} -ac_env_LDFLAGS_value=$LDFLAGS -ac_cv_env_LDFLAGS_set=${LDFLAGS+set} -ac_cv_env_LDFLAGS_value=$LDFLAGS -ac_env_CPPFLAGS_set=${CPPFLAGS+set} -ac_env_CPPFLAGS_value=$CPPFLAGS -ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set} -ac_cv_env_CPPFLAGS_value=$CPPFLAGS -ac_env_CPP_set=${CPP+set} -ac_env_CPP_value=$CPP -ac_cv_env_CPP_set=${CPP+set} -ac_cv_env_CPP_value=$CPP - -# -# Report the --help message. -# -if test "$ac_init_help" = "long"; then - # Omit some internal or obsolete options to make the list less imposing. - # This message is too long to be a string in the A/UX 3.1 sh. - cat <<_ACEOF -\`configure' configures this package to adapt to many kinds of systems. - -Usage: $0 [OPTION]... [VAR=VALUE]... - -To assign environment variables (e.g., CC, CFLAGS...), specify them as -VAR=VALUE. See below for descriptions of some of the useful variables. - -Defaults for the options are specified in brackets. - -Configuration: - -h, --help display this help and exit - --help=short display options specific to this package - --help=recursive display the short help of all the included packages - -V, --version display version information and exit - -q, --quiet, --silent do not print \`checking...' messages - --cache-file=FILE cache test results in FILE [disabled] - -C, --config-cache alias for \`--cache-file=config.cache' - -n, --no-create do not create output files - --srcdir=DIR find the sources in DIR [configure dir or \`..'] - -_ACEOF - - cat <<_ACEOF -Installation directories: - --prefix=PREFIX install architecture-independent files in PREFIX - [$ac_default_prefix] - --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX - [PREFIX] - -By default, \`make install' will install all the files in -\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify -an installation prefix other than \`$ac_default_prefix' using \`--prefix', -for instance \`--prefix=\$HOME'. - -For better control, use the options below. - -Fine tuning of the installation directories: - --bindir=DIR user executables [EPREFIX/bin] - --sbindir=DIR system admin executables [EPREFIX/sbin] - --libexecdir=DIR program executables [EPREFIX/libexec] - --datadir=DIR read-only architecture-independent data [PREFIX/share] - --sysconfdir=DIR read-only single-machine data [PREFIX/etc] - --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] - --localstatedir=DIR modifiable single-machine data [PREFIX/var] - --libdir=DIR object code libraries [EPREFIX/lib] - --includedir=DIR C header files [PREFIX/include] - --oldincludedir=DIR C header files for non-gcc [/usr/include] - --infodir=DIR info documentation [PREFIX/info] - --mandir=DIR man documentation [PREFIX/man] -_ACEOF - - cat <<\_ACEOF - -System types: - --build=BUILD configure for building on BUILD [guessed] - --host=HOST cross-compile to build programs to run on HOST [BUILD] -_ACEOF -fi - -if test -n "$ac_init_help"; then - - cat <<\_ACEOF - -Optional Features: - --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) - --enable-FEATURE[=ARG] include FEATURE [ARG=yes] - --enable-shared=PKGS build shared libraries default=no - --enable-static=PKGS build static libraries default=yes - --enable-fast-install=PKGS optimize for fast installation default=yes - --disable-libtool-lock avoid locking (might break parallel builds) - -Optional Packages: - --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] - --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) - --with-gnu-ld assume the C compiler uses GNU ld default=no - --with-pic try to use only PIC/non-PIC objects default=use both - -Some influential environment variables: - CC C compiler command - CFLAGS C compiler flags - LDFLAGS linker flags, e.g. -L if you have libraries in a - nonstandard directory - CPPFLAGS C/C++ preprocessor flags, e.g. -I if you have - headers in a nonstandard directory - CPP C preprocessor - -Use these variables to override the choices made by `configure' or to help -it to find libraries and programs with nonstandard names/locations. - -_ACEOF -fi - -if test "$ac_init_help" = "recursive"; then - # If there are subdirs, report their specific --help. - ac_popdir=`pwd` - for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue - test -d $ac_dir || continue - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac - - cd $ac_dir - # Check for guested configure; otherwise get Cygnus style configure. - if test -f $ac_srcdir/configure.gnu; then - echo - $SHELL $ac_srcdir/configure.gnu --help=recursive - elif test -f $ac_srcdir/configure; then - echo - $SHELL $ac_srcdir/configure --help=recursive - elif test -f $ac_srcdir/configure.ac || - test -f $ac_srcdir/configure.in; then - echo - $ac_configure --help - else - echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 - fi - cd $ac_popdir - done -fi - -test -n "$ac_init_help" && exit 0 -if $ac_init_version; then - cat <<\_ACEOF - -Copyright (C) 2003 Free Software Foundation, Inc. -This configure script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it. -_ACEOF - exit 0 -fi -exec 5>config.log -cat >&5 <<_ACEOF -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. - -It was created by $as_me, which was -generated by GNU Autoconf 2.59. Invocation command line was - - $ $0 $@ - -_ACEOF -{ -cat <<_ASUNAME -## --------- ## -## Platform. ## -## --------- ## - -hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` -uname -m = `(uname -m) 2>/dev/null || echo unknown` -uname -r = `(uname -r) 2>/dev/null || echo unknown` -uname -s = `(uname -s) 2>/dev/null || echo unknown` -uname -v = `(uname -v) 2>/dev/null || echo unknown` - -/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` -/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` - -/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` -/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` -/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` -hostinfo = `(hostinfo) 2>/dev/null || echo unknown` -/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` -/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` -/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` - -_ASUNAME - -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - echo "PATH: $as_dir" -done - -} >&5 - -cat >&5 <<_ACEOF - - -## ----------- ## -## Core tests. ## -## ----------- ## - -_ACEOF - - -# Keep a trace of the command line. -# Strip out --no-create and --no-recursion so they do not pile up. -# Strip out --silent because we don't want to record it for future runs. -# Also quote any args containing shell meta-characters. -# Make two passes to allow for proper duplicate-argument suppression. -ac_configure_args= -ac_configure_args0= -ac_configure_args1= -ac_sep= -ac_must_keep_next=false -for ac_pass in 1 2 -do - for ac_arg - do - case $ac_arg in - -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - continue ;; - *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) - ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - case $ac_pass in - 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;; - 2) - ac_configure_args1="$ac_configure_args1 '$ac_arg'" - if test $ac_must_keep_next = true; then - ac_must_keep_next=false # Got value, back to normal. - else - case $ac_arg in - *=* | --config-cache | -C | -disable-* | --disable-* \ - | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ - | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ - | -with-* | --with-* | -without-* | --without-* | --x) - case "$ac_configure_args0 " in - "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; - esac - ;; - -* ) ac_must_keep_next=true ;; - esac - fi - ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'" - # Get rid of the leading space. - ac_sep=" " - ;; - esac - done -done -$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; } -$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; } - -# When interrupted or exit'd, cleanup temporary files, and complete -# config.log. We remove comments because anyway the quotes in there -# would cause problems or look ugly. -# WARNING: Be sure not to use single quotes in there, as some shells, -# such as our DU 5.0 friend, will then `close' the trap. -trap 'exit_status=$? - # Save into config.log some information that might help in debugging. - { - echo - - cat <<\_ASBOX -## ---------------- ## -## Cache variables. ## -## ---------------- ## -_ASBOX - echo - # The following way of writing the cache mishandles newlines in values, -{ - (set) 2>&1 | - case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in - *ac_space=\ *) - sed -n \ - "s/'"'"'/'"'"'\\\\'"'"''"'"'/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p" - ;; - *) - sed -n \ - "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" - ;; - esac; -} - echo - - cat <<\_ASBOX -## ----------------- ## -## Output variables. ## -## ----------------- ## -_ASBOX - echo - for ac_var in $ac_subst_vars - do - eval ac_val=$`echo $ac_var` - echo "$ac_var='"'"'$ac_val'"'"'" - done | sort - echo - - if test -n "$ac_subst_files"; then - cat <<\_ASBOX -## ------------- ## -## Output files. ## -## ------------- ## -_ASBOX - echo - for ac_var in $ac_subst_files - do - eval ac_val=$`echo $ac_var` - echo "$ac_var='"'"'$ac_val'"'"'" - done | sort - echo - fi - - if test -s confdefs.h; then - cat <<\_ASBOX -## ----------- ## -## confdefs.h. ## -## ----------- ## -_ASBOX - echo - sed "/^$/d" confdefs.h | sort - echo - fi - test "$ac_signal" != 0 && - echo "$as_me: caught signal $ac_signal" - echo "$as_me: exit $exit_status" - } >&5 - rm -f core *.core && - rm -rf conftest* confdefs* conf$$* $ac_clean_files && - exit $exit_status - ' 0 -for ac_signal in 1 2 13 15; do - trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal -done -ac_signal=0 - -# confdefs.h avoids OS command line length limits that DEFS can exceed. -rm -rf conftest* confdefs.h -# AIX cpp loses on an empty file, so make sure it contains at least a newline. -echo >confdefs.h - -# Predefined preprocessor variables. - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_NAME "$PACKAGE_NAME" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_TARNAME "$PACKAGE_TARNAME" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_VERSION "$PACKAGE_VERSION" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_STRING "$PACKAGE_STRING" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" -_ACEOF - - -# Let the site file select an alternate cache file if it wants to. -# Prefer explicitly selected file to automatically selected ones. -if test -z "$CONFIG_SITE"; then - if test "x$prefix" != xNONE; then - CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" - else - CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" - fi -fi -for ac_site_file in $CONFIG_SITE; do - if test -r "$ac_site_file"; then - { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5 -echo "$as_me: loading site script $ac_site_file" >&6;} - sed 's/^/| /' "$ac_site_file" >&5 - . "$ac_site_file" - fi -done - -if test -r "$cache_file"; then - # Some versions of bash will fail to source /dev/null (special - # files actually), so we avoid doing that. - if test -f "$cache_file"; then - { echo "$as_me:$LINENO: loading cache $cache_file" >&5 -echo "$as_me: loading cache $cache_file" >&6;} - case $cache_file in - [\\/]* | ?:[\\/]* ) . $cache_file;; - *) . ./$cache_file;; - esac - fi -else - { echo "$as_me:$LINENO: creating cache $cache_file" >&5 -echo "$as_me: creating cache $cache_file" >&6;} - >$cache_file -fi - -# Check that the precious variables saved in the cache have kept the same -# value. -ac_cache_corrupted=false -for ac_var in `(set) 2>&1 | - sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do - eval ac_old_set=\$ac_cv_env_${ac_var}_set - eval ac_new_set=\$ac_env_${ac_var}_set - eval ac_old_val="\$ac_cv_env_${ac_var}_value" - eval ac_new_val="\$ac_env_${ac_var}_value" - case $ac_old_set,$ac_new_set in - set,) - { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 -echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,set) - { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5 -echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,);; - *) - if test "x$ac_old_val" != "x$ac_new_val"; then - { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 -echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} - { echo "$as_me:$LINENO: former value: $ac_old_val" >&5 -echo "$as_me: former value: $ac_old_val" >&2;} - { echo "$as_me:$LINENO: current value: $ac_new_val" >&5 -echo "$as_me: current value: $ac_new_val" >&2;} - ac_cache_corrupted=: - fi;; - esac - # Pass precious variables to config.status. - if test "$ac_new_set" = set; then - case $ac_new_val in - *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) - ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; - *) ac_arg=$ac_var=$ac_new_val ;; - esac - case " $ac_configure_args " in - *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. - *) ac_configure_args="$ac_configure_args '$ac_arg'" ;; - esac - fi -done -if $ac_cache_corrupted; then - { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5 -echo "$as_me: error: changes in the environment can compromise the build" >&2;} - { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 -echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;} - { (exit 1); exit 1; }; } -fi - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - - - - - - - - - - - - - - - - - - - ac_config_headers="$ac_config_headers vacall_r.h config.h" - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. -set dummy ${ac_tool_prefix}gcc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}gcc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$ac_cv_prog_CC"; then - ac_ct_CC=$CC - # Extract the first word of "gcc", so it can be a program name with args. -set dummy gcc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="gcc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - CC=$ac_ct_CC -else - CC="$ac_cv_prog_CC" -fi - -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. -set dummy ${ac_tool_prefix}cc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$ac_cv_prog_CC"; then - ac_ct_CC=$CC - # Extract the first word of "cc", so it can be a program name with args. -set dummy cc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - CC=$ac_ct_CC -else - CC="$ac_cv_prog_CC" -fi - -fi -if test -z "$CC"; then - # Extract the first word of "cc", so it can be a program name with args. -set dummy cc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else - ac_prog_rejected=no -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then - ac_prog_rejected=yes - continue - fi - ac_cv_prog_CC="cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -if test $ac_prog_rejected = yes; then - # We found a bogon in the path, so make sure we never use it. - set dummy $ac_cv_prog_CC - shift - if test $# != 0; then - # We chose a different compiler from the bogus one. - # However, it has the same basename, so the bogon will be chosen - # first if we set CC to just the basename; use the full file name. - shift - ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" - fi -fi -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - for ac_prog in cl - do - # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="$ac_tool_prefix$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - test -n "$CC" && break - done -fi -if test -z "$CC"; then - ac_ct_CC=$CC - for ac_prog in cl -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - test -n "$ac_ct_CC" && break -done - - CC=$ac_ct_CC -fi - -fi - - -test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH -See \`config.log' for more details." >&5 -echo "$as_me: error: no acceptable C compiler found in \$PATH -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } - -# Provide some information about the compiler. -echo "$as_me:$LINENO:" \ - "checking for C compiler version" >&5 -ac_compiler=`set X $ac_compile; echo $2` -{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version &5\"") >&5 - (eval $ac_compiler --version &5) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v &5\"") >&5 - (eval $ac_compiler -v &5) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V &5\"") >&5 - (eval $ac_compiler -V &5) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files a.out a.exe b.out" -# Try to create an executable without -o first, disregard a.out. -# It will help us diagnose broken compilers, and finding out an intuition -# of exeext. -echo "$as_me:$LINENO: checking for C compiler default output file name" >&5 -echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6 -ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` -if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5 - (eval $ac_link_default) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - # Find the output, starting from the most likely. This scheme is -# not robust to junk in `.', hence go to wildcards (a.*) only as a last -# resort. - -# Be careful to initialize this variable, since it used to be cached. -# Otherwise an old cache value of `no' led to `EXEEXT = no' in a Makefile. -ac_cv_exeext= -# b.out is created by i960 compilers. -for ac_file in a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out -do - test -f "$ac_file" || continue - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) - ;; - conftest.$ac_ext ) - # This is the source file. - ;; - [ab].out ) - # We found the default executable, but exeext='' is most - # certainly right. - break;; - *.* ) - ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - # FIXME: I believe we export ac_cv_exeext for Libtool, - # but it would be cool to find out if it's true. Does anybody - # maintain Libtool? --akim. - export ac_cv_exeext - break;; - * ) - break;; - esac -done -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -{ { echo "$as_me:$LINENO: error: C compiler cannot create executables -See \`config.log' for more details." >&5 -echo "$as_me: error: C compiler cannot create executables -See \`config.log' for more details." >&2;} - { (exit 77); exit 77; }; } -fi - -ac_exeext=$ac_cv_exeext -echo "$as_me:$LINENO: result: $ac_file" >&5 -echo "${ECHO_T}$ac_file" >&6 - -# Check the compiler produces executables we can run. If not, either -# the compiler is broken, or we cross compile. -echo "$as_me:$LINENO: checking whether the C compiler works" >&5 -echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6 -# FIXME: These cross compiler hacks should be removed for Autoconf 3.0 -# If not cross compiling, check that we can run a simple program. -if test "$cross_compiling" != yes; then - if { ac_try='./$ac_file' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cross_compiling=no - else - if test "$cross_compiling" = maybe; then - cross_compiling=yes - else - { { echo "$as_me:$LINENO: error: cannot run C compiled programs. -If you meant to cross compile, use \`--host'. -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot run C compiled programs. -If you meant to cross compile, use \`--host'. -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } - fi - fi -fi -echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 - -rm -f a.out a.exe conftest$ac_cv_exeext b.out -ac_clean_files=$ac_clean_files_save -# Check the compiler produces executables we can run. If not, either -# the compiler is broken, or we cross compile. -echo "$as_me:$LINENO: checking whether we are cross compiling" >&5 -echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6 -echo "$as_me:$LINENO: result: $cross_compiling" >&5 -echo "${ECHO_T}$cross_compiling" >&6 - -echo "$as_me:$LINENO: checking for suffix of executables" >&5 -echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6 -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - # If both `conftest.exe' and `conftest' are `present' (well, observable) -# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will -# work properly (i.e., refer to `conftest.exe'), while it won't with -# `rm'. -for ac_file in conftest.exe conftest conftest.*; do - test -f "$ac_file" || continue - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) ;; - *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - export ac_cv_exeext - break;; - * ) break;; - esac -done -else - { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } -fi - -rm -f conftest$ac_cv_exeext -echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5 -echo "${ECHO_T}$ac_cv_exeext" >&6 - -rm -f conftest.$ac_ext -EXEEXT=$ac_cv_exeext -ac_exeext=$EXEEXT -echo "$as_me:$LINENO: checking for suffix of object files" >&5 -echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6 -if test "${ac_cv_objext+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.o conftest.obj -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg ) ;; - *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` - break;; - esac -done -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot compute suffix of object files: cannot compile -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } -fi - -rm -f conftest.$ac_cv_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 -echo "${ECHO_T}$ac_cv_objext" >&6 -OBJEXT=$ac_cv_objext -ac_objext=$OBJEXT -echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 -echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6 -if test "${ac_cv_c_compiler_gnu+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ -#ifndef __GNUC__ - choke me -#endif - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_compiler_gnu=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_compiler_gnu=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -ac_cv_c_compiler_gnu=$ac_compiler_gnu - -fi -echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5 -echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6 -GCC=`test $ac_compiler_gnu = yes && echo yes` -ac_test_CFLAGS=${CFLAGS+set} -ac_save_CFLAGS=$CFLAGS -CFLAGS="-g" -echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 -echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6 -if test "${ac_cv_prog_cc_g+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_prog_cc_g=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_prog_cc_g=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 -echo "${ECHO_T}$ac_cv_prog_cc_g" >&6 -if test "$ac_test_CFLAGS" = set; then - CFLAGS=$ac_save_CFLAGS -elif test $ac_cv_prog_cc_g = yes; then - if test "$GCC" = yes; then - CFLAGS="-g -O2" - else - CFLAGS="-g" - fi -else - if test "$GCC" = yes; then - CFLAGS="-O2" - else - CFLAGS= - fi -fi -echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5 -echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6 -if test "${ac_cv_prog_cc_stdc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_cv_prog_cc_stdc=no -ac_save_CC=$CC -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include -#include -#include -/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ -struct buf { int x; }; -FILE * (*rcsopen) (struct buf *, struct stat *, int); -static char *e (p, i) - char **p; - int i; -{ - return p[i]; -} -static char *f (char * (*g) (char **, int), char **p, ...) -{ - char *s; - va_list v; - va_start (v,p); - s = g (p, va_arg (v,int)); - va_end (v); - return s; -} - -/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has - function prototypes and stuff, but not '\xHH' hex character constants. - These don't provoke an error unfortunately, instead are silently treated - as 'x'. The following induces an error, until -std1 is added to get - proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an - array size at least. It's necessary to write '\x00'==0 to get something - that's true only with -std1. */ -int osf4_cc_array ['\x00' == 0 ? 1 : -1]; - -int test (int i, double x); -struct s1 {int (*f) (int a);}; -struct s2 {int (*f) (double a);}; -int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); -int argc; -char **argv; -int -main () -{ -return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; - ; - return 0; -} -_ACEOF -# Don't try gcc -ansi; that turns off useful extensions and -# breaks some systems' header files. -# AIX -qlanglvl=ansi -# Ultrix and OSF/1 -std1 -# HP-UX 10.20 and later -Ae -# HP-UX older versions -Aa -D_HPUX_SOURCE -# SVR4 -Xc -D__EXTENSIONS__ -for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" -do - CC="$ac_save_CC $ac_arg" - rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_prog_cc_stdc=$ac_arg -break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext -done -rm -f conftest.$ac_ext conftest.$ac_objext -CC=$ac_save_CC - -fi - -case "x$ac_cv_prog_cc_stdc" in - x|xno) - echo "$as_me:$LINENO: result: none needed" >&5 -echo "${ECHO_T}none needed" >&6 ;; - *) - echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5 -echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6 - CC="$CC $ac_cv_prog_cc_stdc" ;; -esac - -# Some people use a C++ compiler to compile C. Since we use `exit', -# in C++ we need to declare it. In case someone uses the same compiler -# for both compiling C and C++ we need to have the C++ compiler decide -# the declaration of exit, since it's the most demanding environment. -cat >conftest.$ac_ext <<_ACEOF -#ifndef __cplusplus - choke me -#endif -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - for ac_declaration in \ - '' \ - 'extern "C" void std::exit (int) throw (); using std::exit;' \ - 'extern "C" void std::exit (int); using std::exit;' \ - 'extern "C" void exit (int) throw ();' \ - 'extern "C" void exit (int);' \ - 'void exit (int);' -do - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_declaration -#include -int -main () -{ -exit (42); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -continue -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_declaration -int -main () -{ -exit (42); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -done -rm -f conftest* -if test -n "$ac_declaration"; then - echo '#ifdef __cplusplus' >>confdefs.h - echo $ac_declaration >>confdefs.h - echo '#endif' >>confdefs.h -fi - -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5 -echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6 -# On Suns, sometimes $CPP names a directory. -if test -n "$CPP" && test -d "$CPP"; then - CPP= -fi -if test -z "$CPP"; then - if test "${ac_cv_prog_CPP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - # Double quotes because CPP needs to be expanded - for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" - do - ac_preproc_ok=false -for ac_c_preproc_warn_flag in '' yes -do - # Use a header file that comes with gcc, so configuring glibc - # with a fresh cross-compiler works. - # Prefer to if __STDC__ is defined, since - # exists even on freestanding compilers. - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#ifdef __STDC__ -# include -#else -# include -#endif - Syntax error -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Broken: fails on valid input. -continue -fi -rm -f conftest.err conftest.$ac_ext - - # OK, works on sane cases. Now check whether non-existent headers - # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - # Broken: success on invalid input. -continue -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Passes both tests. -ac_preproc_ok=: -break -fi -rm -f conftest.err conftest.$ac_ext - -done -# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.err conftest.$ac_ext -if $ac_preproc_ok; then - break -fi - - done - ac_cv_prog_CPP=$CPP - -fi - CPP=$ac_cv_prog_CPP -else - ac_cv_prog_CPP=$CPP -fi -echo "$as_me:$LINENO: result: $CPP" >&5 -echo "${ECHO_T}$CPP" >&6 -ac_preproc_ok=false -for ac_c_preproc_warn_flag in '' yes -do - # Use a header file that comes with gcc, so configuring glibc - # with a fresh cross-compiler works. - # Prefer to if __STDC__ is defined, since - # exists even on freestanding compilers. - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#ifdef __STDC__ -# include -#else -# include -#endif - Syntax error -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Broken: fails on valid input. -continue -fi -rm -f conftest.err conftest.$ac_ext - - # OK, works on sane cases. Now check whether non-existent headers - # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - # Broken: success on invalid input. -continue -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Passes both tests. -ac_preproc_ok=: -break -fi -rm -f conftest.err conftest.$ac_ext - -done -# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.err conftest.$ac_ext -if $ac_preproc_ok; then - : -else - { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details." >&5 -echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } -fi - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - - -echo "$as_me:$LINENO: checking for egrep" >&5 -echo $ECHO_N "checking for egrep... $ECHO_C" >&6 -if test "${ac_cv_prog_egrep+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if echo a | (grep -E '(a|b)') >/dev/null 2>&1 - then ac_cv_prog_egrep='grep -E' - else ac_cv_prog_egrep='egrep' - fi -fi -echo "$as_me:$LINENO: result: $ac_cv_prog_egrep" >&5 -echo "${ECHO_T}$ac_cv_prog_egrep" >&6 - EGREP=$ac_cv_prog_egrep - - -if test $ac_cv_c_compiler_gnu = yes; then - echo "$as_me:$LINENO: checking whether $CC needs -traditional" >&5 -echo $ECHO_N "checking whether $CC needs -traditional... $ECHO_C" >&6 -if test "${ac_cv_prog_gcc_traditional+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_pattern="Autoconf.*'x'" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -Autoconf TIOCGETP -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "$ac_pattern" >/dev/null 2>&1; then - ac_cv_prog_gcc_traditional=yes -else - ac_cv_prog_gcc_traditional=no -fi -rm -f conftest* - - - if test $ac_cv_prog_gcc_traditional = no; then - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -Autoconf TCGETA -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "$ac_pattern" >/dev/null 2>&1; then - ac_cv_prog_gcc_traditional=yes -fi -rm -f conftest* - - fi -fi -echo "$as_me:$LINENO: result: $ac_cv_prog_gcc_traditional" >&5 -echo "${ECHO_T}$ac_cv_prog_gcc_traditional" >&6 - if test $ac_cv_prog_gcc_traditional = yes; then - CC="$CC -traditional" - fi -fi - - -echo "$as_me:$LINENO: checking whether using GNU C" >&5 -echo $ECHO_N "checking whether using GNU C... $ECHO_C" >&6 -if test "${cl_cv_prog_cc_gcc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#ifdef __GNUC__ - yes -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1; then - cl_cv_prog_cc_gcc=yes -else - cl_cv_prog_cc_gcc=no -fi -rm -f conftest* - - -fi -echo "$as_me:$LINENO: result: $cl_cv_prog_cc_gcc" >&5 -echo "${ECHO_T}$cl_cv_prog_cc_gcc" >&6 -if test $cl_cv_prog_cc_gcc = yes; then - CC_GCC=true - GCC_X_NONE='-x none' -else - CC_GCC=false - GCC_X_NONE='' -fi - - - -echo "$as_me:$LINENO: checking for underscore in external names" >&5 -echo $ECHO_N "checking for underscore in external names... $ECHO_C" >&6 -if test "${cl_cv_prog_as_underscore+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat > conftest.c <&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } >/dev/null 2>&1 -if grep _foo conftest.s >/dev/null ; then - cl_cv_prog_as_underscore=yes -else - cl_cv_prog_as_underscore=no -fi -rm -f conftest* - -fi -echo "$as_me:$LINENO: result: $cl_cv_prog_as_underscore" >&5 -echo "${ECHO_T}$cl_cv_prog_as_underscore" >&6 -if test $cl_cv_prog_as_underscore = yes; then - AS_UNDERSCORE=true - -cat >>confdefs.h <<\_ACEOF -#define ASM_UNDERSCORE -_ACEOF - -else - AS_UNDERSCORE=false -fi - -# Extract the first word of "ranlib", so it can be a program name with args. -set dummy ranlib; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_RANLIB+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$RANLIB"; then - ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_RANLIB="ranlib" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - - test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB="true" -fi -fi -RANLIB=$ac_cv_prog_RANLIB -if test -n "$RANLIB"; then - echo "$as_me:$LINENO: result: $RANLIB" >&5 -echo "${ECHO_T}$RANLIB" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5 -echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6 -set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,:./+-,___p_,'` -if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.make <<\_ACEOF -all: - @echo 'ac_maketemp="$(MAKE)"' -_ACEOF -# GNU make sometimes prints "make[1]: Entering...", which would confuse us. -eval `${MAKE-make} -f conftest.make 2>/dev/null | grep temp=` -if test -n "$ac_maketemp"; then - eval ac_cv_prog_make_${ac_make}_set=yes -else - eval ac_cv_prog_make_${ac_make}_set=no -fi -rm -f conftest.make -fi -if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 - SET_MAKE= -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 - SET_MAKE="MAKE=${MAKE-make}" -fi - -# Find a good install program. We prefer a C program (faster), -# so one script is as good as another. But avoid the broken or -# incompatible versions: -# SysV /etc/install, /usr/sbin/install -# SunOS /usr/etc/install -# IRIX /sbin/install -# AIX /bin/install -# AFS /usr/afsws/bin/install, which mis-handles nonexistent args -# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" -# ./install, which can be erroneously created by make from ./install.sh. -echo "$as_me:$LINENO: checking for a BSD compatible install" >&5 -echo $ECHO_N "checking for a BSD compatible install... $ECHO_C" >&6 -if test -z "$INSTALL"; then -if test "${cl_cv_path_install+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" - for ac_dir in $PATH; do - # Account for people who put trailing slashes in PATH elements. - case "$ac_dir/" in - /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;; - *) - # OSF1 and SCO ODT 3.0 have their own names for install. - # Don't use installbsd from OSF since it installs stuff as root - # by default. - for ac_prog in ginstall scoinst install; do - if test -f $ac_dir/$ac_prog; then - if test $ac_prog = install && - grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then - # AIX install. It has an incompatible calling convention. - : - else - cl_cv_path_install="$ac_dir/$ac_prog -c" - break 2 - fi - fi - done - ;; - esac - done - IFS="$ac_save_ifs" - # As a last resort, use the absolute pathname of cp. - if test -z "$cl_cv_path_install"; then - cl_cv_path_install="cp" - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" - for ac_dir in $PATH; do - if test -f $ac_dir/cp; then - cl_cv_path_install="$ac_dir/cp" - break - fi - done - IFS="$ac_save_ifs" - fi - -fi - INSTALL="$cl_cv_path_install" -fi -echo "$as_me:$LINENO: result: $INSTALL" >&5 -echo "${ECHO_T}$INSTALL" >&6 -# Use test -z because SunOS4 sh mishandles braces in ${var-val}. -# It thinks the first close brace ends the variable substitution. -test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='$(INSTALL)' -if test -z "$INSTALL_DATA"; then - case "$INSTALL" in - cp | */cp ) INSTALL_DATA='$(INSTALL)' ;; - * ) INSTALL_DATA='$(INSTALL) -m 644' ;; - esac -fi - -echo "$as_me:$LINENO: checking how to copy files" >&5 -echo $ECHO_N "checking how to copy files... $ECHO_C" >&6 -if test "${cl_cv_prog_cp+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -echo "blabla" > conftest.x -err=`/bin/sh -c "cp -p conftest.x conftest.y 2>&1"` -if test -z "$err"; then - cl_cv_prog_cp='cp -p' -else - cl_cv_prog_cp='cp' -fi -rm -f conftest* - -fi -echo "$as_me:$LINENO: result: $cl_cv_prog_cp" >&5 -echo "${ECHO_T}$cl_cv_prog_cp" >&6 -CP="$cl_cv_prog_cp" - -echo "$as_me:$LINENO: checking how to make hard links" >&5 -echo $ECHO_N "checking how to make hard links... $ECHO_C" >&6 -if test "${cl_cv_prog_LN+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -rm -f conftestdata conftestfile -echo data > conftestfile -if ln conftestfile conftestdata 2>/dev/null; then - cl_cv_prog_LN=ln -else - cl_cv_prog_LN="$cl_cv_prog_cp" -fi -rm -f conftestdata conftestfile - -fi -echo "$as_me:$LINENO: result: $cl_cv_prog_LN" >&5 -echo "${ECHO_T}$cl_cv_prog_LN" >&6 -LN="$cl_cv_prog_LN" - - ac_aux_dir=${srcdir}/../../autoconf -ac_config_guess="$SHELL $ac_aux_dir/config.guess" -ac_config_sub="$SHELL $ac_aux_dir/config.sub" -# Make sure we can run config.sub. -$ac_config_sub sun4 >/dev/null 2>&1 || - { { echo "$as_me:$LINENO: error: cannot run $ac_config_sub" >&5 -echo "$as_me: error: cannot run $ac_config_sub" >&2;} - { (exit 1); exit 1; }; } - -echo "$as_me:$LINENO: checking build system type" >&5 -echo $ECHO_N "checking build system type... $ECHO_C" >&6 -if test "${ac_cv_build+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_cv_build_alias=$build_alias -test -z "$ac_cv_build_alias" && - ac_cv_build_alias=`$ac_config_guess` -test -z "$ac_cv_build_alias" && - { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5 -echo "$as_me: error: cannot guess build type; you must specify one" >&2;} - { (exit 1); exit 1; }; } -ac_cv_build=`$ac_config_sub $ac_cv_build_alias` || - { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_build_alias failed" >&5 -echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed" >&2;} - { (exit 1); exit 1; }; } - -fi -echo "$as_me:$LINENO: result: $ac_cv_build" >&5 -echo "${ECHO_T}$ac_cv_build" >&6 -build=$ac_cv_build -build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` - - -echo "$as_me:$LINENO: checking host system type" >&5 -echo $ECHO_N "checking host system type... $ECHO_C" >&6 -if test "${ac_cv_host+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_cv_host_alias=$host_alias -test -z "$ac_cv_host_alias" && - ac_cv_host_alias=$ac_cv_build_alias -ac_cv_host=`$ac_config_sub $ac_cv_host_alias` || - { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_host_alias failed" >&5 -echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;} - { (exit 1); exit 1; }; } - -fi -echo "$as_me:$LINENO: result: $ac_cv_host" >&5 -echo "${ECHO_T}$ac_cv_host" >&6 -host=$ac_cv_host -host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` - - - - -case "$host_cpu" in - i[4567]86 ) - host_cpu=i386 - ;; - alphaev[4-8] | alphaev56 | alphapca5[67] | alphaev6[78] ) - host_cpu=alpha - ;; - hppa1.0 | hppa1.1 | hppa2.0* | hppa64 ) - host_cpu=hppa - ;; - powerpc ) - host_cpu=rs6000 - ;; - c1 | c2 | c32 | c34 | c38 | c4 ) - host_cpu=convex - ;; - arm* ) - host_cpu=arm - ;; - mips ) - echo "$as_me:$LINENO: checking for 64-bit MIPS" >&5 -echo $ECHO_N "checking for 64-bit MIPS... $ECHO_C" >&6 -if test "${cl_cv_host_mips64+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#if defined(_MIPS_SZLONG) -#if (_MIPS_SZLONG == 64) -/* We should also check for (_MIPS_SZPTR == 64), but gcc keeps this at 32. */ - yes -#endif -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1; then - cl_cv_host_mips64=yes -else - cl_cv_host_mips64=no -fi -rm -f conftest* - - -fi -echo "$as_me:$LINENO: result: $cl_cv_host_mips64" >&5 -echo "${ECHO_T}$cl_cv_host_mips64" >&6 -if test $cl_cv_host_mips64 = yes; then - host_cpu=mips64 -else - echo "$as_me:$LINENO: checking for MIPS with n32 ABI" >&5 -echo $ECHO_N "checking for MIPS with n32 ABI... $ECHO_C" >&6 -if test "${cl_cv_host_mipsn32+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#if __mips >= 3 - yes -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1; then - cl_cv_host_mipsn32=yes -else - cl_cv_host_mipsn32=no -fi -rm -f conftest* - - -fi -echo "$as_me:$LINENO: result: $cl_cv_host_mipsn32" >&5 -echo "${ECHO_T}$cl_cv_host_mipsn32" >&6 -if test $cl_cv_host_mipsn32 = yes; then - host_cpu=mipsn32 -fi -fi - ;; - sparc | sparc64 ) - echo "$as_me:$LINENO: checking for 64-bit SPARC" >&5 -echo $ECHO_N "checking for 64-bit SPARC... $ECHO_C" >&6 -if test "${cl_cv_host_sparc64+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#if defined(__sparcv9) || defined(__arch64__) - yes -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1; then - cl_cv_host_sparc64=yes -else - cl_cv_host_sparc64=no -fi -rm -f conftest* - - -fi -echo "$as_me:$LINENO: result: $cl_cv_host_sparc64" >&5 -echo "${ECHO_T}$cl_cv_host_sparc64" >&6 -if test $cl_cv_host_sparc64 = yes; then - host_cpu=sparc64 -else - host_cpu=sparc -fi - ;; -esac -cat >> confdefs.h </dev/null`} - case X$UNAME in - *-DOS) lt_cv_sys_path_separator=';' ;; - *) lt_cv_sys_path_separator=':' ;; - esac - PATH_SEPARATOR=$lt_cv_sys_path_separator -fi - - -# Check whether --with-gnu-ld or --without-gnu-ld was given. -if test "${with_gnu_ld+set}" = set; then - withval="$with_gnu_ld" - test "$withval" = no || with_gnu_ld=yes -else - with_gnu_ld=no -fi; -ac_prog=ld -if test "$GCC" = yes; then - # Check if gcc -print-prog-name=ld gives a path. - echo "$as_me:$LINENO: checking for ld used by GCC" >&5 -echo $ECHO_N "checking for ld used by GCC... $ECHO_C" >&6 - case $host in - *-*-mingw*) - # gcc leaves a trailing carriage return which upsets mingw - ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; - *) - ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; - esac - case $ac_prog in - # Accept absolute paths. - [\\/]* | [A-Za-z]:[\\/]*) - re_direlt='/[^/][^/]*/\.\./' - # Canonicalize the path of ld - ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` - while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do - ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` - done - test -z "$LD" && LD="$ac_prog" - ;; - "") - # If it fails, then pretend we aren't using GCC. - ac_prog=ld - ;; - *) - # If it is relative, then search for the first ld in PATH. - with_gnu_ld=unknown - ;; - esac -elif test "$with_gnu_ld" = yes; then - echo "$as_me:$LINENO: checking for GNU ld" >&5 -echo $ECHO_N "checking for GNU ld... $ECHO_C" >&6 -else - echo "$as_me:$LINENO: checking for non-GNU ld" >&5 -echo $ECHO_N "checking for non-GNU ld... $ECHO_C" >&6 -fi -if test "${lt_cv_path_LD+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -z "$LD"; then - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH; do - test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then - lt_cv_path_LD="$ac_dir/$ac_prog" - # Check to see if the program is GNU ld. I'd rather use --version, - # but apparently some GNU ld's only accept -v. - # Break only if it was the GNU/non-GNU ld that we prefer. - if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then - test "$with_gnu_ld" != no && break - else - test "$with_gnu_ld" != yes && break - fi - fi - done - IFS="$ac_save_ifs" -else - lt_cv_path_LD="$LD" # Let the user override the test with a path. -fi -fi - -LD="$lt_cv_path_LD" -if test -n "$LD"; then - echo "$as_me:$LINENO: result: $LD" >&5 -echo "${ECHO_T}$LD" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi -test -z "$LD" && { { echo "$as_me:$LINENO: error: no acceptable ld found in \$PATH" >&5 -echo "$as_me: error: no acceptable ld found in \$PATH" >&2;} - { (exit 1); exit 1; }; } -echo "$as_me:$LINENO: checking if the linker ($LD) is GNU ld" >&5 -echo $ECHO_N "checking if the linker ($LD) is GNU ld... $ECHO_C" >&6 -if test "${lt_cv_prog_gnu_ld+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - # I'd rather use --version here, but apparently some GNU ld's only accept -v. -if $LD -v 2>&1 &5; then - lt_cv_prog_gnu_ld=yes -else - lt_cv_prog_gnu_ld=no -fi -fi -echo "$as_me:$LINENO: result: $lt_cv_prog_gnu_ld" >&5 -echo "${ECHO_T}$lt_cv_prog_gnu_ld" >&6 -with_gnu_ld=$lt_cv_prog_gnu_ld - - -echo "$as_me:$LINENO: checking for $LD option to reload object files" >&5 -echo $ECHO_N "checking for $LD option to reload object files... $ECHO_C" >&6 -if test "${lt_cv_ld_reload_flag+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - lt_cv_ld_reload_flag='-r' -fi -echo "$as_me:$LINENO: result: $lt_cv_ld_reload_flag" >&5 -echo "${ECHO_T}$lt_cv_ld_reload_flag" >&6 -reload_flag=$lt_cv_ld_reload_flag -test -n "$reload_flag" && reload_flag=" $reload_flag" - -echo "$as_me:$LINENO: checking for BSD-compatible nm" >&5 -echo $ECHO_N "checking for BSD-compatible nm... $ECHO_C" >&6 -if test "${lt_cv_path_NM+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$NM"; then - # Let the user override the test. - lt_cv_path_NM="$NM" -else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do - test -z "$ac_dir" && ac_dir=. - tmp_nm=$ac_dir/${ac_tool_prefix}nm - if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then - # Check to see if the nm accepts a BSD-compat flag. - # Adding the `sed 1q' prevents false positives on HP-UX, which says: - # nm: unknown option "B" ignored - # Tru64's nm complains that /dev/null is an invalid object file - if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then - lt_cv_path_NM="$tmp_nm -B" - break - elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then - lt_cv_path_NM="$tmp_nm -p" - break - else - lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but - continue # so that we can try to find one that supports BSD flags - fi - fi - done - IFS="$ac_save_ifs" - test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm -fi -fi - -NM="$lt_cv_path_NM" -echo "$as_me:$LINENO: result: $NM" >&5 -echo "${ECHO_T}$NM" >&6 - -echo "$as_me:$LINENO: checking for a sed that does not truncate output" >&5 -echo $ECHO_N "checking for a sed that does not truncate output... $ECHO_C" >&6 -if test "${lt_cv_path_SED+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - # Loop through the user's path and test for sed and gsed. -# Then use that list of sed's as ones to test for truncation. -as_executable_p="test -f" -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in sed gsed; do - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then - _sed_list="$_sed_list $as_dir/$ac_prog$ac_exec_ext" - fi - done - done -done - - # Create a temporary directory, and hook for its removal unless debugging. -$debug || -{ - trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 - trap '{ (exit 1); exit 1; }' 1 2 13 15 -} - -# Create a (secure) tmp directory for tmp files. -: ${TMPDIR=/tmp} -{ - tmp=`(umask 077 && mktemp -d -q "$TMPDIR/sedXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" -} || -{ - tmp=$TMPDIR/sed$$-$RANDOM - (umask 077 && mkdir $tmp) -} || -{ - echo "$me: cannot create a temporary directory in $TMPDIR" >&2 - { (exit 1); exit 1; } -} - _max=0 - _count=0 - # Add /usr/xpg4/bin/sed as it is typically found on Solaris - # along with /bin/sed that truncates output. - for _sed in $_sed_list /usr/xpg4/bin/sed; do - test ! -f ${_sed} && break - cat /dev/null > "$tmp/sed.in" - _count=0 - echo ${ECHO_N-$ac_n} "0123456789${ECHO_C-$ac_c}" >"$tmp/sed.in" - # Check for GNU sed and select it if it is found. - if "${_sed}" --version 2>&1 < /dev/null | egrep '(GNU)' > /dev/null; then - lt_cv_path_SED=${_sed} - break - fi - while true; do - cat "$tmp/sed.in" "$tmp/sed.in" >"$tmp/sed.tmp" - mv "$tmp/sed.tmp" "$tmp/sed.in" - cp "$tmp/sed.in" "$tmp/sed.nl" - echo >>"$tmp/sed.nl" - ${_sed} -e 's/a$//' < "$tmp/sed.nl" >"$tmp/sed.out" || break - cmp -s "$tmp/sed.out" "$tmp/sed.nl" || break - # 40000 chars as input seems more than enough - test $_count -gt 10 && break - _count=`expr $_count + 1` - if test $_count -gt $_max; then - _max=$_count - lt_cv_path_SED=$_sed - fi - done - done - rm -rf "$tmp" - -fi - -if test "X$SED" != "X"; then - lt_cv_path_SED=$SED -else - SED=$lt_cv_path_SED -fi -echo "$as_me:$LINENO: result: $SED" >&5 -echo "${ECHO_T}$SED" >&6 - -echo "$as_me:$LINENO: checking whether ln -s works" >&5 -echo $ECHO_N "checking whether ln -s works... $ECHO_C" >&6 -if test "${cl_cv_prog_LN_S+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -rm -f conftestdata -if ln -s X conftestdata 2>/dev/null; then - cl_cv_prog_LN_S="ln -s" -else - cl_cv_prog_LN_S="$cl_cv_prog_LN" -fi -rm -f conftestdata - -fi -if test "$cl_cv_prog_LN_S" = "ln -s"; then - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi -LN_S="$cl_cv_prog_LN_S" - -echo "$as_me:$LINENO: checking how to recognise dependent libraries" >&5 -echo $ECHO_N "checking how to recognise dependent libraries... $ECHO_C" >&6 -if test "${lt_cv_deplibs_check_method+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - lt_cv_file_magic_cmd='$MAGIC_CMD' -lt_cv_file_magic_test_file= -lt_cv_deplibs_check_method='unknown' -# Need to set the preceding variable on all platforms that support -# interlibrary dependencies. -# 'none' -- dependencies not supported. -# `unknown' -- same as none, but documents that we really don't know. -# 'pass_all' -- all dependencies passed with no checks. -# 'test_compile' -- check by making test program. -# 'file_magic [[regex]]' -- check by looking for files in library path -# which responds to the $file_magic_cmd with a given egrep regex. -# If you have `file' or equivalent on your system and you're not sure -# whether `pass_all' will *always* work, you probably want this one. - -case $host_os in -aix4* | aix5*) - lt_cv_deplibs_check_method=pass_all - ;; - -beos*) - lt_cv_deplibs_check_method=pass_all - ;; - -bsdi4*) - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)' - lt_cv_file_magic_cmd='/usr/bin/file -L' - lt_cv_file_magic_test_file=/shlib/libc.so - ;; - -cygwin* | mingw* | pw32*) - lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' - lt_cv_file_magic_cmd='$OBJDUMP -f' - ;; - -darwin* | rhapsody*) - lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library' - lt_cv_file_magic_cmd='/usr/bin/file -L' - case "$host_os" in - rhapsody* | darwin1.[012]) - lt_cv_file_magic_test_file=`echo /System/Library/Frameworks/System.framework/Versions/*/System | head -1` - ;; - *) # Darwin 1.3 on - lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib' - ;; - esac - ;; - -freebsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - case $host_cpu in - i*86 ) - # Not sure whether the presence of OpenBSD here was a mistake. - # Let's accept both of them until this is cleared up. - lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[3-9]86 (compact )?demand paged shared library' - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` - ;; - esac - else - lt_cv_deplibs_check_method=pass_all - fi - ;; - -gnu*) - lt_cv_deplibs_check_method=pass_all - ;; - -hpux10.20*|hpux11*) - lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library' - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=/usr/lib/libc.sl - ;; - -irix5* | irix6* | nonstopux*) - case $host_os in - irix5* | nonstopux*) - # this will be overridden with pass_all, but let us keep it just in case - lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1" - ;; - *) - case $LD in - *-32|*"-32 ") libmagic=32-bit;; - *-n32|*"-n32 ") libmagic=N32;; - *-64|*"-64 ") libmagic=64-bit;; - *) libmagic=never-match;; - esac - # this will be overridden with pass_all, but let us keep it just in case - lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[1234] dynamic lib MIPS - version 1" - ;; - esac - lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*` - lt_cv_deplibs_check_method=pass_all - ;; - -# This must be Linux ELF. -linux-gnu*) - case $host_cpu in - alpha* | hppa* | i*86 | mips | mipsel | powerpc* | sparc* | ia64*) - lt_cv_deplibs_check_method=pass_all ;; - *) - # glibc up to 2.1.1 does not perform some relocations on ARM - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' ;; - esac - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' - else - lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so$' - fi - ;; - -newos6*) - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)' - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=/usr/lib/libnls.so - ;; - -openbsd*) - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB shared object' - else - lt_cv_deplibs_check_method='file_magic OpenBSD.* shared library' - fi - ;; - -osf3* | osf4* | osf5*) - # this will be overridden with pass_all, but let us keep it just in case - lt_cv_deplibs_check_method='file_magic COFF format alpha shared library' - lt_cv_file_magic_test_file=/shlib/libc.so - lt_cv_deplibs_check_method=pass_all - ;; - -sco3.2v5*) - lt_cv_deplibs_check_method=pass_all - ;; - -solaris*) - lt_cv_deplibs_check_method=pass_all - lt_cv_file_magic_test_file=/lib/libc.so - ;; - -sysv5uw[78]* | sysv4*uw2*) - lt_cv_deplibs_check_method=pass_all - ;; - -sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - case $host_vendor in - motorola) - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]' - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` - ;; - ncr) - lt_cv_deplibs_check_method=pass_all - ;; - sequent) - lt_cv_file_magic_cmd='/bin/file' - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' - ;; - sni) - lt_cv_file_magic_cmd='/bin/file' - lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib" - lt_cv_file_magic_test_file=/lib/libc.so - ;; - siemens) - lt_cv_deplibs_check_method=pass_all - ;; - esac - ;; -esac - -fi -echo "$as_me:$LINENO: result: $lt_cv_deplibs_check_method" >&5 -echo "${ECHO_T}$lt_cv_deplibs_check_method" >&6 -file_magic_cmd=$lt_cv_file_magic_cmd -deplibs_check_method=$lt_cv_deplibs_check_method - - - - - - - -# Check for command to grab the raw symbol name followed by C symbol from nm. -echo "$as_me:$LINENO: checking command to parse $NM output" >&5 -echo $ECHO_N "checking command to parse $NM output... $ECHO_C" >&6 -if test "${lt_cv_sys_global_symbol_pipe+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -# These are sane defaults that work on at least a few old systems. -# [They come from Ultrix. What could be older than Ultrix?!! ;)] - -# Character class describing NM global symbol codes. -symcode='[BCDEGRST]' - -# Regexp to match symbols that can be accessed directly from C. -sympat='\([_A-Za-z][_A-Za-z0-9]*\)' - -# Transform the above into a raw symbol and a C symbol. -symxfrm='\1 \2\3 \3' - -# Transform an extracted symbol line into a proper C declaration -lt_cv_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'" - -# Transform an extracted symbol line into symbol name and symbol address -lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([^ ]*\) \([^ ]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" - -# Define system-specific variables. -case $host_os in -aix*) - symcode='[BCDT]' - ;; -cygwin* | mingw* | pw32*) - symcode='[ABCDGISTW]' - ;; -hpux*) # Its linker distinguishes data from code symbols - lt_cv_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" - lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" - ;; -irix* | nonstopux*) - symcode='[BCDEGRST]' - ;; -osf*) - symcode='[BCDEGQRST]' - ;; -solaris* | sysv5*) - symcode='[BDT]' - ;; -sysv4) - symcode='[DFNSTU]' - ;; -esac - -# Handle CRLF in mingw tool chain -opt_cr= -case $host_os in -mingw*) - opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp - ;; -esac - -# If we're using GNU nm, then use its standard symbol codes. -if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then - symcode='[ABCDGISTW]' -fi - -# Try without a prefix undercore, then with it. -for ac_symprfx in "" "_"; do - - # Write the raw and C identifiers. -lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'" - - # Check to see that the pipe works correctly. - pipe_works=no - rm -f conftest* - cat > conftest.$ac_ext <&5 - (eval $ac_compile) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - # Now try to grab the symbols. - nlist=conftest.nm - if { (eval echo "$as_me:$LINENO: \"$NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist\"") >&5 - (eval $NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && test -s "$nlist"; then - # Try sorting and uniquifying the output. - if sort "$nlist" | uniq > "$nlist"T; then - mv -f "$nlist"T "$nlist" - else - rm -f "$nlist"T - fi - - # Make sure that we snagged all the symbols we need. - if egrep ' nm_test_var$' "$nlist" >/dev/null; then - if egrep ' nm_test_func$' "$nlist" >/dev/null; then - cat < conftest.$ac_ext -#ifdef __cplusplus -extern "C" { -#endif - -EOF - # Now generate the symbol file. - eval "$lt_cv_global_symbol_to_cdecl"' < "$nlist" >> conftest.$ac_ext' - - cat <> conftest.$ac_ext -#if defined (__STDC__) && __STDC__ -# define lt_ptr void * -#else -# define lt_ptr char * -# define const -#endif - -/* The mapping between symbol names and symbols. */ -const struct { - const char *name; - lt_ptr address; -} -lt_preloaded_symbols[] = -{ -EOF - sed "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (lt_ptr) \&\2},/" < "$nlist" >> conftest.$ac_ext - cat <<\EOF >> conftest.$ac_ext - {0, (lt_ptr) 0} -}; - -#ifdef __cplusplus -} -#endif -EOF - # Now try linking the two files. - mv conftest.$ac_objext conftstm.$ac_objext - save_LIBS="$LIBS" - save_CFLAGS="$CFLAGS" - LIBS="conftstm.$ac_objext" - CFLAGS="$CFLAGS$no_builtin_flag" - if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && test -s conftest$ac_exeext; then - pipe_works=yes - fi - LIBS="$save_LIBS" - CFLAGS="$save_CFLAGS" - else - echo "cannot find nm_test_func in $nlist" >&5 - fi - else - echo "cannot find nm_test_var in $nlist" >&5 - fi - else - echo "cannot run $lt_cv_sys_global_symbol_pipe" >&5 - fi - else - echo "$progname: failed program was:" >&5 - cat conftest.$ac_ext >&5 - fi - rm -f conftest* conftst* - - # Do not use the global_symbol_pipe unless it works. - if test "$pipe_works" = yes; then - break - else - lt_cv_sys_global_symbol_pipe= - fi -done - -fi - -global_symbol_pipe="$lt_cv_sys_global_symbol_pipe" -if test -z "$lt_cv_sys_global_symbol_pipe"; then - global_symbol_to_cdecl= - global_symbol_to_c_name_address= -else - global_symbol_to_cdecl="$lt_cv_global_symbol_to_cdecl" - global_symbol_to_c_name_address="$lt_cv_global_symbol_to_c_name_address" -fi -if test -z "$global_symbol_pipe$global_symbol_to_cdec$global_symbol_to_c_name_address"; -then - echo "$as_me:$LINENO: result: failed" >&5 -echo "${ECHO_T}failed" >&6 -else - echo "$as_me:$LINENO: result: ok" >&5 -echo "${ECHO_T}ok" >&6 -fi - -echo "$as_me:$LINENO: checking for ANSI C header files" >&5 -echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 -if test "${ac_cv_header_stdc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include -#include -#include - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_header_stdc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_header_stdc=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - -if test $ac_cv_header_stdc = yes; then - # SunOS 4.x string.h does not declare mem*, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "memchr" >/dev/null 2>&1; then - : -else - ac_cv_header_stdc=no -fi -rm -f conftest* - -fi - -if test $ac_cv_header_stdc = yes; then - # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "free" >/dev/null 2>&1; then - : -else - ac_cv_header_stdc=no -fi -rm -f conftest* - -fi - -if test $ac_cv_header_stdc = yes; then - # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. - if test "$cross_compiling" = yes; then - : -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#if ((' ' & 0x0FF) == 0x020) -# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') -# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) -#else -# define ISLOWER(c) \ - (('a' <= (c) && (c) <= 'i') \ - || ('j' <= (c) && (c) <= 'r') \ - || ('s' <= (c) && (c) <= 'z')) -# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) -#endif - -#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) -int -main () -{ - int i; - for (i = 0; i < 256; i++) - if (XOR (islower (i), ISLOWER (i)) - || toupper (i) != TOUPPER (i)) - exit(2); - exit (0); -} -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -ac_cv_header_stdc=no -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -fi -fi -echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 -echo "${ECHO_T}$ac_cv_header_stdc" >&6 -if test $ac_cv_header_stdc = yes; then - -cat >>confdefs.h <<\_ACEOF -#define STDC_HEADERS 1 -_ACEOF - -fi - -# On IRIX 5.3, sys/types and inttypes.h are conflicting. - - - - - - - - - -for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ - inttypes.h stdint.h unistd.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default - -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - eval "$as_ac_Header=yes" -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -eval "$as_ac_Header=no" -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - - -for ac_header in dlfcn.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_header_compiler=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 - -# Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------------ ## -## Report this to the AC_PACKAGE_NAME lists. ## -## ------------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - - - - - -# Only perform the check for file, if the check method requires it -case $deplibs_check_method in -file_magic*) - if test "$file_magic_cmd" = '$MAGIC_CMD'; then - echo "$as_me:$LINENO: checking for ${ac_tool_prefix}file" >&5 -echo $ECHO_N "checking for ${ac_tool_prefix}file... $ECHO_C" >&6 -if test "${lt_cv_path_MAGIC_CMD+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - case $MAGIC_CMD in - /*) - lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. - ;; - ?:/*) - lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path. - ;; - *) - ac_save_MAGIC_CMD="$MAGIC_CMD" - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" - ac_dummy="/usr/bin:$PATH" - for ac_dir in $ac_dummy; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/${ac_tool_prefix}file; then - lt_cv_path_MAGIC_CMD="$ac_dir/${ac_tool_prefix}file" - if test -n "$file_magic_test_file"; then - case $deplibs_check_method in - "file_magic "*) - file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" - MAGIC_CMD="$lt_cv_path_MAGIC_CMD" - if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | - egrep "$file_magic_regex" > /dev/null; then - : - else - cat <&2 - -*** Warning: the command libtool uses to detect shared libraries, -*** $file_magic_cmd, produces output that libtool cannot recognize. -*** The result is that libtool may fail to recognize shared libraries -*** as such. This will affect the creation of libtool libraries that -*** depend on shared libraries, but programs linked with such libtool -*** libraries will work regardless of this problem. Nevertheless, you -*** may want to report the problem to your system manager and/or to -*** bug-libtool@gnu.org - -EOF - fi ;; - esac - fi - break - fi - done - IFS="$ac_save_ifs" - MAGIC_CMD="$ac_save_MAGIC_CMD" - ;; -esac -fi - -MAGIC_CMD="$lt_cv_path_MAGIC_CMD" -if test -n "$MAGIC_CMD"; then - echo "$as_me:$LINENO: result: $MAGIC_CMD" >&5 -echo "${ECHO_T}$MAGIC_CMD" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -if test -z "$lt_cv_path_MAGIC_CMD"; then - if test -n "$ac_tool_prefix"; then - echo "$as_me:$LINENO: checking for file" >&5 -echo $ECHO_N "checking for file... $ECHO_C" >&6 -if test "${lt_cv_path_MAGIC_CMD+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - case $MAGIC_CMD in - /*) - lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. - ;; - ?:/*) - lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path. - ;; - *) - ac_save_MAGIC_CMD="$MAGIC_CMD" - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" - ac_dummy="/usr/bin:$PATH" - for ac_dir in $ac_dummy; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/file; then - lt_cv_path_MAGIC_CMD="$ac_dir/file" - if test -n "$file_magic_test_file"; then - case $deplibs_check_method in - "file_magic "*) - file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" - MAGIC_CMD="$lt_cv_path_MAGIC_CMD" - if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | - egrep "$file_magic_regex" > /dev/null; then - : - else - cat <&2 - -*** Warning: the command libtool uses to detect shared libraries, -*** $file_magic_cmd, produces output that libtool cannot recognize. -*** The result is that libtool may fail to recognize shared libraries -*** as such. This will affect the creation of libtool libraries that -*** depend on shared libraries, but programs linked with such libtool -*** libraries will work regardless of this problem. Nevertheless, you -*** may want to report the problem to your system manager and/or to -*** bug-libtool@gnu.org - -EOF - fi ;; - esac - fi - break - fi - done - IFS="$ac_save_ifs" - MAGIC_CMD="$ac_save_MAGIC_CMD" - ;; -esac -fi - -MAGIC_CMD="$lt_cv_path_MAGIC_CMD" -if test -n "$MAGIC_CMD"; then - echo "$as_me:$LINENO: result: $MAGIC_CMD" >&5 -echo "${ECHO_T}$MAGIC_CMD" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - else - MAGIC_CMD=: - fi -fi - - fi - ;; -esac - -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. -set dummy ${ac_tool_prefix}ranlib; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_RANLIB+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$RANLIB"; then - ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -RANLIB=$ac_cv_prog_RANLIB -if test -n "$RANLIB"; then - echo "$as_me:$LINENO: result: $RANLIB" >&5 -echo "${ECHO_T}$RANLIB" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$ac_cv_prog_RANLIB"; then - ac_ct_RANLIB=$RANLIB - # Extract the first word of "ranlib", so it can be a program name with args. -set dummy ranlib; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_RANLIB"; then - ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_RANLIB="ranlib" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - - test -z "$ac_cv_prog_ac_ct_RANLIB" && ac_cv_prog_ac_ct_RANLIB=":" -fi -fi -ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB -if test -n "$ac_ct_RANLIB"; then - echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5 -echo "${ECHO_T}$ac_ct_RANLIB" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - RANLIB=$ac_ct_RANLIB -else - RANLIB="$ac_cv_prog_RANLIB" -fi - -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. -set dummy ${ac_tool_prefix}strip; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_STRIP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$STRIP"; then - ac_cv_prog_STRIP="$STRIP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_STRIP="${ac_tool_prefix}strip" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -STRIP=$ac_cv_prog_STRIP -if test -n "$STRIP"; then - echo "$as_me:$LINENO: result: $STRIP" >&5 -echo "${ECHO_T}$STRIP" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$ac_cv_prog_STRIP"; then - ac_ct_STRIP=$STRIP - # Extract the first word of "strip", so it can be a program name with args. -set dummy strip; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_STRIP"; then - ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_STRIP="strip" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - - test -z "$ac_cv_prog_ac_ct_STRIP" && ac_cv_prog_ac_ct_STRIP=":" -fi -fi -ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP -if test -n "$ac_ct_STRIP"; then - echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5 -echo "${ECHO_T}$ac_ct_STRIP" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - STRIP=$ac_ct_STRIP -else - STRIP="$ac_cv_prog_STRIP" -fi - - -enable_dlopen=no -enable_win32_dll=no - -# Check whether --enable-libtool-lock or --disable-libtool-lock was given. -if test "${enable_libtool_lock+set}" = set; then - enableval="$enable_libtool_lock" - -fi; -test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes - -# Some flags need to be propagated to the compiler or linker for good -# libtool support. -case $host in -*-*-irix6*) - # Find out which ABI we are using. - echo '#line 4578 "configure"' > conftest.$ac_ext - if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - case `/usr/bin/file conftest.$ac_objext` in - *32-bit*) - LD="${LD-ld} -32" - ;; - *N32*) - LD="${LD-ld} -n32" - ;; - *64-bit*) - LD="${LD-ld} -64" - ;; - esac - fi - rm -rf conftest* - ;; - -*-*-sco3.2v5*) - # On SCO OpenServer 5, we need -belf to get full-featured binaries. - SAVE_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -belf" - echo "$as_me:$LINENO: checking whether the C compiler needs -belf" >&5 -echo $ECHO_N "checking whether the C compiler needs -belf... $ECHO_C" >&6 -if test "${lt_cv_cc_needs_belf+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - - - ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - lt_cv_cc_needs_belf=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -lt_cv_cc_needs_belf=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - -fi -echo "$as_me:$LINENO: result: $lt_cv_cc_needs_belf" >&5 -echo "${ECHO_T}$lt_cv_cc_needs_belf" >&6 - if test x"$lt_cv_cc_needs_belf" != x"yes"; then - # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf - CFLAGS="$SAVE_CFLAGS" - fi - ;; - - -esac - -# Sed substitution that helps us do robust quoting. It backslashifies -# metacharacters that are still active within double-quoted strings. -Xsed='sed -e s/^X//' -sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g' - -# Same as above, but do not quote variable references. -double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g' - -# Sed substitution to delay expansion of an escaped shell variable in a -# double_quote_subst'ed string. -delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' - -# Constants: -rm="rm -f" - -# Global variables: -default_ofile=libtool -can_build_shared=yes - -# All known linkers require a `.a' archive for static linking (except M$VC, -# which needs '.lib'). -libext=a -ltmain="$ac_aux_dir/ltmain.sh" -ofile="$default_ofile" -with_gnu_ld="$lt_cv_prog_gnu_ld" -need_locks="$enable_libtool_lock" - -old_CC="$CC" -old_CFLAGS="$CFLAGS" - -# Set sane defaults for various variables -test -z "$AR" && AR=ar -test -z "$AR_FLAGS" && AR_FLAGS=cru -test -z "$AS" && AS=as -test -z "$CC" && CC=cc -test -z "$DLLTOOL" && DLLTOOL=dlltool -test -z "$LD" && LD=ld -test -z "$LN_S" && LN_S="ln -s" -test -z "$MAGIC_CMD" && MAGIC_CMD=file -test -z "$NM" && NM=nm -test -z "$OBJDUMP" && OBJDUMP=objdump -test -z "$RANLIB" && RANLIB=: -test -z "$STRIP" && STRIP=: -test -z "$ac_objext" && ac_objext=o - -if test x"$host" != x"$build"; then - ac_tool_prefix=${host_alias}- -else - ac_tool_prefix= -fi - -# Transform linux* to *-*-linux-gnu*, to support old configure scripts. -case $host_os in -linux-gnu*) ;; -linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'` -esac - -case $host_os in -aix3*) - # 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. - if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES - fi - ;; -esac - -# Determine commands to create old-style static archives. -old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs' -old_postinstall_cmds='chmod 644 $oldlib' -old_postuninstall_cmds= - -if test -n "$RANLIB"; then - case $host_os in - openbsd*) - old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds" - ;; - *) - old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds" - ;; - esac - old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib" -fi - -# Allow CC to be a program name with arguments. -set dummy $CC -compiler="$2" - -echo "$as_me:$LINENO: checking for objdir" >&5 -echo $ECHO_N "checking for objdir... $ECHO_C" >&6 -rm -f .libs 2>/dev/null -mkdir .libs 2>/dev/null -if test -d .libs; then - objdir=.libs -else - # MS-DOS does not allow filenames that begin with a dot. - objdir=_libs -fi -rmdir .libs 2>/dev/null -echo "$as_me:$LINENO: result: $objdir" >&5 -echo "${ECHO_T}$objdir" >&6 - - - -# Check whether --with-pic or --without-pic was given. -if test "${with_pic+set}" = set; then - withval="$with_pic" - pic_mode="$withval" -else - pic_mode=default -fi; -test -z "$pic_mode" && pic_mode=default - -# We assume here that the value for lt_cv_prog_cc_pic will not be cached -# in isolation, and that seeing it set (from the cache) indicates that -# the associated values are set (in the cache) correctly too. -echo "$as_me:$LINENO: checking for $compiler option to produce PIC" >&5 -echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 -if test "${lt_cv_prog_cc_pic+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - lt_cv_prog_cc_pic= - lt_cv_prog_cc_shlib= - lt_cv_prog_cc_wl= - lt_cv_prog_cc_static= - lt_cv_prog_cc_no_builtin= - lt_cv_prog_cc_can_build_shared=$can_build_shared - - if test "$GCC" = yes; then - lt_cv_prog_cc_wl='-Wl,' - lt_cv_prog_cc_static='-static' - - case $host_os in - aix*) - # Below there is a dirty hack to force normal static linking with -ldl - # The problem is because libdl dynamically linked with both libc and - # libC (AIX C++ library), which obviously doesn't included in libraries - # list by gcc. This cause undefined symbols with -static flags. - # This hack allows C programs to be linked with "-static -ldl", but - # not sure about C++ programs. - lt_cv_prog_cc_static="$lt_cv_prog_cc_static ${lt_cv_prog_cc_wl}-lC" - ;; - 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'. - lt_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4' - ;; - beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) - # PIC is the default for these OSes. - ;; - darwin* | rhapsody*) - # PIC is the default on this platform - # Common symbols not allowed in MH_DYLIB files - lt_cv_prog_cc_pic='-fno-common' - ;; - cygwin* | mingw* | pw32* | os2*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - lt_cv_prog_cc_pic='-DDLL_EXPORT' - ;; - sysv4*MP*) - if test -d /usr/nec; then - lt_cv_prog_cc_pic=-Kconform_pic - fi - ;; - *) - lt_cv_prog_cc_pic='-fPIC' - ;; - esac - else - # PORTME Check for PIC flags for the system compiler. - case $host_os in - aix3* | aix4* | aix5*) - lt_cv_prog_cc_wl='-Wl,' - # All AIX code is PIC. - if test "$host_cpu" = ia64; then - # AIX 5 now supports IA64 processor - lt_cv_prog_cc_static='-Bstatic' - else - lt_cv_prog_cc_static='-bnso -bI:/lib/syscalls.exp' - fi - ;; - - hpux9* | hpux10* | hpux11*) - # Is there a better lt_cv_prog_cc_static that works with the bundled CC? - lt_cv_prog_cc_wl='-Wl,' - lt_cv_prog_cc_static="${lt_cv_prog_cc_wl}-a ${lt_cv_prog_cc_wl}archive" - lt_cv_prog_cc_pic='+Z' - ;; - - irix5* | irix6* | nonstopux*) - lt_cv_prog_cc_wl='-Wl,' - lt_cv_prog_cc_static='-non_shared' - # PIC (with -KPIC) is the default. - ;; - - cygwin* | mingw* | pw32* | os2*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - lt_cv_prog_cc_pic='-DDLL_EXPORT' - ;; - - newsos6) - lt_cv_prog_cc_pic='-KPIC' - lt_cv_prog_cc_static='-Bstatic' - ;; - - osf3* | osf4* | osf5*) - # All OSF/1 code is PIC. - lt_cv_prog_cc_wl='-Wl,' - lt_cv_prog_cc_static='-non_shared' - ;; - - sco3.2v5*) - lt_cv_prog_cc_pic='-Kpic' - lt_cv_prog_cc_static='-dn' - lt_cv_prog_cc_shlib='-belf' - ;; - - solaris*) - lt_cv_prog_cc_pic='-KPIC' - lt_cv_prog_cc_static='-Bstatic' - lt_cv_prog_cc_wl='-Wl,' - ;; - - sunos4*) - lt_cv_prog_cc_pic='-PIC' - lt_cv_prog_cc_static='-Bstatic' - lt_cv_prog_cc_wl='-Qoption ld ' - ;; - - sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - lt_cv_prog_cc_pic='-KPIC' - lt_cv_prog_cc_static='-Bstatic' - lt_cv_prog_cc_wl='-Wl,' - ;; - - uts4*) - lt_cv_prog_cc_pic='-pic' - lt_cv_prog_cc_static='-Bstatic' - ;; - - sysv4*MP*) - if test -d /usr/nec ;then - lt_cv_prog_cc_pic='-Kconform_pic' - lt_cv_prog_cc_static='-Bstatic' - fi - ;; - - *) - lt_cv_prog_cc_can_build_shared=no - ;; - esac - fi - -fi - -if test -z "$lt_cv_prog_cc_pic"; then - echo "$as_me:$LINENO: result: none" >&5 -echo "${ECHO_T}none" >&6 -else - echo "$as_me:$LINENO: result: $lt_cv_prog_cc_pic" >&5 -echo "${ECHO_T}$lt_cv_prog_cc_pic" >&6 - - # Check to make sure the pic_flag actually works. - echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_cv_prog_cc_pic works" >&5 -echo $ECHO_N "checking if $compiler PIC flag $lt_cv_prog_cc_pic works... $ECHO_C" >&6 - if test "${lt_cv_prog_cc_pic_works+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS $lt_cv_prog_cc_pic -DPIC" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - case $host_os in - hpux9* | hpux10* | hpux11*) - # On HP-UX, both CC and GCC only warn that PIC is supported... then - # they create non-PIC objects. So, if there were any warnings, we - # assume that PIC is not supported. - if test -s conftest.err; then - lt_cv_prog_cc_pic_works=no - else - lt_cv_prog_cc_pic_works=yes - fi - ;; - *) - lt_cv_prog_cc_pic_works=yes - ;; - esac - -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - lt_cv_prog_cc_pic_works=no - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - CFLAGS="$save_CFLAGS" - -fi - - - if test "X$lt_cv_prog_cc_pic_works" = Xno; then - lt_cv_prog_cc_pic= - lt_cv_prog_cc_can_build_shared=no - else - lt_cv_prog_cc_pic=" $lt_cv_prog_cc_pic" - fi - - echo "$as_me:$LINENO: result: $lt_cv_prog_cc_pic_works" >&5 -echo "${ECHO_T}$lt_cv_prog_cc_pic_works" >&6 -fi - -# Check for any special shared library compilation flags. -if test -n "$lt_cv_prog_cc_shlib"; then - { echo "$as_me:$LINENO: WARNING: \`$CC' requires \`$lt_cv_prog_cc_shlib' to build shared libraries" >&5 -echo "$as_me: WARNING: \`$CC' requires \`$lt_cv_prog_cc_shlib' to build shared libraries" >&2;} - if echo "$old_CC $old_CFLAGS " | egrep -e "[ ]$lt_cv_prog_cc_shlib[ ]" >/dev/null; then : - else - { echo "$as_me:$LINENO: WARNING: add \`$lt_cv_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure" >&5 -echo "$as_me: WARNING: add \`$lt_cv_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure" >&2;} - lt_cv_prog_cc_can_build_shared=no - fi -fi - -echo "$as_me:$LINENO: checking if $compiler static flag $lt_cv_prog_cc_static works" >&5 -echo $ECHO_N "checking if $compiler static flag $lt_cv_prog_cc_static works... $ECHO_C" >&6 -if test "${lt_cv_prog_cc_static_works+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - lt_cv_prog_cc_static_works=no - save_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS $lt_cv_prog_cc_static" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - lt_cv_prog_cc_static_works=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - LDFLAGS="$save_LDFLAGS" - -fi - - -# Belt *and* braces to stop my trousers falling down: -test "X$lt_cv_prog_cc_static_works" = Xno && lt_cv_prog_cc_static= -echo "$as_me:$LINENO: result: $lt_cv_prog_cc_static_works" >&5 -echo "${ECHO_T}$lt_cv_prog_cc_static_works" >&6 - -pic_flag="$lt_cv_prog_cc_pic" -special_shlib_compile_flags="$lt_cv_prog_cc_shlib" -wl="$lt_cv_prog_cc_wl" -link_static_flag="$lt_cv_prog_cc_static" -no_builtin_flag="$lt_cv_prog_cc_no_builtin" -can_build_shared="$lt_cv_prog_cc_can_build_shared" - - -# Check to see if options -o and -c are simultaneously supported by compiler -echo "$as_me:$LINENO: checking if $compiler supports -c -o file.$ac_objext" >&5 -echo $ECHO_N "checking if $compiler supports -c -o file.$ac_objext... $ECHO_C" >&6 -if test "${lt_cv_compiler_c_o+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -$rm -r conftest 2>/dev/null -mkdir conftest -cd conftest -echo "int some_variable = 0;" > conftest.$ac_ext -mkdir out -# According to Tom Tromey, Ian Lance Taylor reported there are C compilers -# that will create temporary files in the current directory regardless of -# the output directory. Thus, making CWD read-only will cause this test -# to fail, enabling locking or at least warning the user not to do parallel -# builds. -chmod -w . -save_CFLAGS="$CFLAGS" -CFLAGS="$CFLAGS -o out/conftest2.$ac_objext" -compiler_c_o=no -if { (eval echo configure:5136: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s out/conftest.err; then - lt_cv_compiler_c_o=no - else - lt_cv_compiler_c_o=yes - fi -else - # Append any errors to the config.log. - cat out/conftest.err 1>&5 - lt_cv_compiler_c_o=no -fi -CFLAGS="$save_CFLAGS" -chmod u+w . -$rm conftest* out/* -rmdir out -cd .. -rmdir conftest -$rm -r conftest 2>/dev/null - -fi - -compiler_c_o=$lt_cv_compiler_c_o -echo "$as_me:$LINENO: result: $compiler_c_o" >&5 -echo "${ECHO_T}$compiler_c_o" >&6 - -if test x"$compiler_c_o" = x"yes"; then - # Check to see if we can write to a .lo - echo "$as_me:$LINENO: checking if $compiler supports -c -o file.lo" >&5 -echo $ECHO_N "checking if $compiler supports -c -o file.lo... $ECHO_C" >&6 - if test "${lt_cv_compiler_o_lo+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - - lt_cv_compiler_o_lo=no - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -c -o conftest.lo" - save_objext="$ac_objext" - ac_objext=lo - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ -int some_variable = 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s conftest.err; then - lt_cv_compiler_o_lo=no - else - lt_cv_compiler_o_lo=yes - fi - -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - ac_objext="$save_objext" - CFLAGS="$save_CFLAGS" - -fi - - compiler_o_lo=$lt_cv_compiler_o_lo - echo "$as_me:$LINENO: result: $compiler_o_lo" >&5 -echo "${ECHO_T}$compiler_o_lo" >&6 -else - compiler_o_lo=no -fi - -# Check to see if we can do hard links to lock some files if needed -hard_links="nottested" -if test "$compiler_c_o" = no && test "$need_locks" != no; then - # do not overwrite the value of need_locks provided by the user - echo "$as_me:$LINENO: checking if we can lock with hard links" >&5 -echo $ECHO_N "checking if we can lock with hard links... $ECHO_C" >&6 - hard_links=yes - $rm conftest* - ln conftest.a conftest.b 2>/dev/null && hard_links=no - touch conftest.a - ln conftest.a conftest.b 2>&5 || hard_links=no - ln conftest.a conftest.b 2>/dev/null && hard_links=no - echo "$as_me:$LINENO: result: $hard_links" >&5 -echo "${ECHO_T}$hard_links" >&6 - if test "$hard_links" = no; then - { echo "$as_me:$LINENO: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5 -echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;} - need_locks=warn - fi -else - need_locks=no -fi - -if test "$GCC" = yes; then - # Check to see if options -fno-rtti -fno-exceptions are supported by compiler - echo "$as_me:$LINENO: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 -echo $ECHO_N "checking if $compiler supports -fno-rtti -fno-exceptions... $ECHO_C" >&6 - echo "int some_variable = 0;" > conftest.$ac_ext - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.$ac_ext" - compiler_rtti_exceptions=no - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ -int some_variable = 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s conftest.err; then - compiler_rtti_exceptions=no - else - compiler_rtti_exceptions=yes - fi - -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - CFLAGS="$save_CFLAGS" - echo "$as_me:$LINENO: result: $compiler_rtti_exceptions" >&5 -echo "${ECHO_T}$compiler_rtti_exceptions" >&6 - - if test "$compiler_rtti_exceptions" = "yes"; then - no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions' - else - no_builtin_flag=' -fno-builtin' - fi -fi - -# See if the linker supports building shared libraries. -echo "$as_me:$LINENO: checking whether the linker ($LD) supports shared libraries" >&5 -echo $ECHO_N "checking whether the linker ($LD) supports shared libraries... $ECHO_C" >&6 - -allow_undefined_flag= -no_undefined_flag= -need_lib_prefix=unknown -need_version=unknown -# when you set need_version to no, make sure it does not cause -set_version -# flags to be left without arguments -archive_cmds= -archive_expsym_cmds= -old_archive_from_new_cmds= -old_archive_from_expsyms_cmds= -export_dynamic_flag_spec= -whole_archive_flag_spec= -thread_safe_flag_spec= -hardcode_into_libs=no -hardcode_libdir_flag_spec= -hardcode_libdir_separator= -hardcode_direct=no -hardcode_minus_L=no -hardcode_shlibpath_var=unsupported -runpath_var= -link_all_deplibs=unknown -always_export_symbols=no -export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols' -# include_expsyms should be a list of space-separated symbols to be *always* -# included in the symbol list -include_expsyms= -# exclude_expsyms can be an egrep regular expression of symbols to exclude -# it will be wrapped by ` (' and `)$', so one must not match beginning or -# end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', -# as well as any symbol that contains `d'. -exclude_expsyms="_GLOBAL_OFFSET_TABLE_" -# Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out -# platforms (ab)use it in PIC code, but their linkers get confused if -# the symbol is explicitly referenced. Since portable code cannot -# rely on this symbol name, it's probably fine to never include it in -# preloaded symbol tables. -extract_expsyms_cmds= - -case $host_os in -cygwin* | mingw* | pw32*) - # FIXME: the MSVC++ port hasn't been tested in a loooong time - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - if test "$GCC" != yes; then - with_gnu_ld=no - fi - ;; -openbsd*) - with_gnu_ld=no - ;; -esac - -ld_shlibs=yes -if test "$with_gnu_ld" = yes; then - # If archive_cmds runs LD, not CC, wlarc should be empty - wlarc='${wl}' - - # See if GNU ld supports shared libraries. - case $host_os in - aix3* | aix4* | aix5*) - # On AIX, the GNU linker is very broken - # Note:Check GNU linker on AIX 5-IA64 when/if it becomes available. - ld_shlibs=no - cat <&2 - -*** Warning: the GNU linker, at least up to release 2.9.1, is reported -*** to be unable to reliably create shared libraries on AIX. -*** Therefore, libtool is disabling shared libraries support. If you -*** really care for shared libraries, you may want to modify your PATH -*** so that a non-GNU linker is found, and then restart. - -EOF - ;; - - amigaos*) - archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - - # Samuel A. Falvo II reports - # that the semantics of dynamic libraries on AmigaOS, at least up - # to version 4, is to share data among multiple programs linked - # with the same dynamic library. Since this doesn't match the - # behavior of shared libraries on other platforms, we can use - # them. - ld_shlibs=no - ;; - - beos*) - if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then - allow_undefined_flag=unsupported - # Joseph Beckenbach says some releases of gcc - # support --undefined. This deserves some investigation. FIXME - archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - else - ld_shlibs=no - fi - ;; - - cygwin* | mingw* | pw32*) - # hardcode_libdir_flag_spec is actually meaningless, as there is - # no search path for DLLs. - hardcode_libdir_flag_spec='-L$libdir' - allow_undefined_flag=unsupported - always_export_symbols=yes - - extract_expsyms_cmds='test -f $output_objdir/impgen.c || \ - sed -e "/^# \/\* impgen\.c starts here \*\//,/^# \/\* impgen.c ends here \*\// { s/^# //;s/^# *$//; p; }" -e d < $''0 > $output_objdir/impgen.c~ - test -f $output_objdir/impgen.exe || (cd $output_objdir && \ - if test "x$HOST_CC" != "x" ; then $HOST_CC -o impgen impgen.c ; \ - else $CC -o impgen impgen.c ; fi)~ - $output_objdir/impgen $dir/$soroot > $output_objdir/$soname-def' - - old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib' - - # cygwin and mingw dlls have different entry points and sets of symbols - # to exclude. - # FIXME: what about values for MSVC? - dll_entry=__cygwin_dll_entry@12 - dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12~ - case $host_os in - mingw*) - # mingw values - dll_entry=_DllMainCRTStartup@12 - dll_exclude_symbols=DllMain@12,DllMainCRTStartup@12,DllEntryPoint@12~ - ;; - esac - - # mingw and cygwin differ, and it's simplest to just exclude the union - # of the two symbol sets. - dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12,DllMainCRTStartup@12,DllEntryPoint@12 - - # recent cygwin and mingw systems supply a stub DllMain which the user - # can override, but on older systems we have to supply one (in ltdll.c) - if test "x$lt_cv_need_dllmain" = "xyes"; then - ltdll_obj='$output_objdir/$soname-ltdll.'"$ac_objext " - ltdll_cmds='test -f $output_objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $''0 > $output_objdir/$soname-ltdll.c~ - test -f $output_objdir/$soname-ltdll.$ac_objext || (cd $output_objdir && $CC -c $soname-ltdll.c)~' - else - ltdll_obj= - ltdll_cmds= - fi - - # Extract the symbol export list from an `--export-all' def file, - # then regenerate the def file from the symbol export list, so that - # the compiled dll only exports the symbol export list. - # Be careful not to strip the DATA tag left be newer dlltools. - export_symbols_cmds="$ltdll_cmds"' - $DLLTOOL --export-all --exclude-symbols '$dll_exclude_symbols' --output-def $output_objdir/$soname-def '$ltdll_obj'$libobjs $convenience~ - sed -e "1,/EXPORTS/d" -e "s/ @ [0-9]*//" -e "s/ *;.*$//" < $output_objdir/$soname-def > $export_symbols' - - # If the export-symbols file already is a .def file (1st line - # is EXPORTS), use it as is. - # If DATA tags from a recent dlltool are present, honour them! - archive_expsym_cmds='if test "x`sed 1q $export_symbols`" = xEXPORTS; then - cp $export_symbols $output_objdir/$soname-def; - else - echo EXPORTS > $output_objdir/$soname-def; - _lt_hint=1; - cat $export_symbols | while read symbol; do - set dummy \$symbol; - case \$# in - 2) echo " \$2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;; - 4) echo " \$2 \$3 \$4 ; " >> $output_objdir/$soname-def; _lt_hint=`expr \$_lt_hint - 1`;; - *) echo " \$2 @ \$_lt_hint \$3 ; " >> $output_objdir/$soname-def;; - esac; - _lt_hint=`expr 1 + \$_lt_hint`; - done; - fi~ - '"$ltdll_cmds"' - $CC -Wl,--base-file,$output_objdir/$soname-base '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~ - $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp~ - $CC -Wl,--base-file,$output_objdir/$soname-base $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~ - $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp --output-lib $output_objdir/$libname.dll.a~ - $CC $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags' - ;; - - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' - wlarc= - else - archive_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - fi - ;; - - solaris* | sysv5*) - if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then - ld_shlibs=no - cat <&2 - -*** Warning: The releases 2.8.* of the GNU linker cannot reliably -*** create shared libraries on Solaris systems. Therefore, libtool -*** is disabling shared libraries support. We urge you to upgrade GNU -*** binutils to release 2.9.1 or newer. Another option is to modify -*** your PATH or compiler configuration so that the native linker is -*** used, and then restart. - -EOF - elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - else - ld_shlibs=no - fi - ;; - - sunos4*) - archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' - wlarc= - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - *) - if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - else - ld_shlibs=no - fi - ;; - esac - - if test "$ld_shlibs" = yes; then - runpath_var=LD_RUN_PATH - hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir' - export_dynamic_flag_spec='${wl}--export-dynamic' - case $host_os in - cygwin* | mingw* | pw32*) - # dlltool doesn't understand --whole-archive et. al. - whole_archive_flag_spec= - ;; - *) - # ancient GNU ld didn't support --whole-archive et. al. - if $LD --help 2>&1 | egrep 'no-whole-archive' > /dev/null; then - whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' - else - whole_archive_flag_spec= - fi - ;; - esac - fi -else - # PORTME fill in a description of your system's linker (not GNU ld) - case $host_os in - aix3*) - allow_undefined_flag=unsupported - always_export_symbols=yes - archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' - # Note: this linker hardcodes the directories in LIBPATH if there - # are no directories specified by -L. - hardcode_minus_L=yes - if test "$GCC" = yes && test -z "$link_static_flag"; then - # Neither direct hardcoding nor static linking is supported with a - # broken collect2. - hardcode_direct=unsupported - fi - ;; - - aix4* | aix5*) - if test "$host_cpu" = ia64; then - # On IA64, the linker does run time linking by default, so we don't - # have to do anything special. - aix_use_runtimelinking=no - exp_sym_flag='-Bexport' - no_entry_flag="" - else - aix_use_runtimelinking=no - - # Test if we are trying to use run time linking or normal - # AIX style linking. If -brtl is somewhere in LDFLAGS, we - # need to do runtime linking. - case $host_os in aix4.[23]|aix4.[23].*|aix5*) - for ld_flag in $LDFLAGS; do - case $ld_flag in - *-brtl*) - aix_use_runtimelinking=yes - break - ;; - esac - done - esac - - exp_sym_flag='-bexport' - no_entry_flag='-bnoentry' - fi - - # When large executables or shared objects are built, AIX ld can - # have problems creating the table of contents. If linking a library - # or program results in "error TOC overflow" add -mminimal-toc to - # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not - # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. - - hardcode_direct=yes - archive_cmds='' - hardcode_libdir_separator=':' - if test "$GCC" = yes; then - case $host_os in aix4.[012]|aix4.[012].*) - collect2name=`${CC} -print-prog-name=collect2` - if test -f "$collect2name" && \ - strings "$collect2name" | grep resolve_lib_name >/dev/null - then - # We have reworked collect2 - hardcode_direct=yes - else - # We have old collect2 - hardcode_direct=unsupported - # It fails to find uninstalled libraries when the uninstalled - # path is not listed in the libpath. Setting hardcode_minus_L - # to unsupported forces relinking - hardcode_minus_L=yes - hardcode_libdir_flag_spec='-L$libdir' - hardcode_libdir_separator= - fi - esac - - shared_flag='-shared' - else - # not using gcc - if test "$host_cpu" = ia64; then - shared_flag='${wl}-G' - else - if test "$aix_use_runtimelinking" = yes; then - shared_flag='${wl}-G' - else - shared_flag='${wl}-bM:SRE' - fi - fi - fi - - # It seems that -bexpall can do strange things, so it is better to - # generate a list of symbols to export. - always_export_symbols=yes - if test "$aix_use_runtimelinking" = yes; then - # Warning - without using the other runtime loading flags (-brtl), - # -berok will link without error, but may produce a broken library. - allow_undefined_flag='-berok' - hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib' - archive_expsym_cmds="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag" - else - if test "$host_cpu" = ia64; then - hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib' - allow_undefined_flag="-z nodefs" - archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname ${wl}-h$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" - else - hardcode_libdir_flag_spec='${wl}-bnolibpath ${wl}-blibpath:$libdir:/usr/lib:/lib' - # Warning - without using the other run time loading flags, - # -berok will link without error, but may produce a broken library. - allow_undefined_flag='${wl}-berok' - # This is a bit strange, but is similar to how AIX traditionally builds - # it's shared libraries. - archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"' ~$AR -crlo $objdir/$libname$release.a $objdir/$soname' - fi - fi - ;; - - amigaos*) - archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - # see comment about different semantics on the GNU ld section - ld_shlibs=no - ;; - - cygwin* | mingw* | pw32*) - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - # hardcode_libdir_flag_spec is actually meaningless, as there is - # no search path for DLLs. - hardcode_libdir_flag_spec=' ' - allow_undefined_flag=unsupported - # Tell ltmain to make .lib files, not .a files. - libext=lib - # FIXME: Setting linknames here is a bad hack. - archive_cmds='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | sed -e '\''s/ -lc$//'\''` -link -dll~linknames=' - # The linker will automatically build a .lib file if we build a DLL. - old_archive_from_new_cmds='true' - # FIXME: Should let the user specify the lib program. - old_archive_cmds='lib /OUT:$oldlib$oldobjs$old_deplibs' - fix_srcfile_path='`cygpath -w "$srcfile"`' - ;; - - darwin* | rhapsody*) - case "$host_os" in - rhapsody* | darwin1.[012]) - allow_undefined_flag='-undefined suppress' - ;; - *) # Darwin 1.3 on - allow_undefined_flag='-flat_namespace -undefined suppress' - ;; - esac - # FIXME: Relying on posixy $() will cause problems for - # cross-compilation, but unfortunately the echo tests do not - # yet detect zsh echo's removal of \ escapes. Also zsh mangles - # `"' quotes if we put them in here... so don't! - archive_cmds='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs && $CC $(test .$module = .yes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib ${lib}-master.o $deplibs$linker_flags $(test .$module != .yes && echo -install_name $rpath/$soname $verstring)' - # We need to add '_' to the symbols in $export_symbols first - #archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols' - hardcode_direct=yes - hardcode_shlibpath_var=no - whole_archive_flag_spec='-all_load $convenience' - ;; - - freebsd1*) - ld_shlibs=no - ;; - - # 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 - # does not break anything, and helps significantly (at the cost of a little - # extra space). - freebsd2.2*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - # Unfortunately, older versions of FreeBSD 2 do not have this feature. - freebsd2*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes - hardcode_minus_L=yes - hardcode_shlibpath_var=no - ;; - - # FreeBSD 3 and greater uses gcc -shared to do shared libraries. - freebsd*) - archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - hpux9* | hpux10* | hpux11*) - case $host_os in - hpux9*) archive_cmds='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' ;; - *) archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' ;; - esac - hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' - hardcode_libdir_separator=: - hardcode_direct=yes - hardcode_minus_L=yes # Not in the search PATH, but as the default - # location of the library. - export_dynamic_flag_spec='${wl}-E' - ;; - - irix5* | irix6* | nonstopux*) - if test "$GCC" = yes; then - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - else - archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' - hardcode_libdir_flag_spec='-rpath $libdir' - fi - hardcode_libdir_separator=: - link_all_deplibs=yes - ;; - - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out - else - archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF - fi - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - newsos6) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - hardcode_libdir_separator=: - hardcode_shlibpath_var=no - ;; - - openbsd*) - hardcode_direct=yes - hardcode_shlibpath_var=no - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - hardcode_libdir_flag_spec='${wl}-rpath,$libdir' - export_dynamic_flag_spec='${wl}-E' - else - case "$host_os" in - openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-R$libdir' - ;; - *) - archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - hardcode_libdir_flag_spec='${wl}-rpath,$libdir' - ;; - esac - fi - ;; - - os2*) - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - allow_undefined_flag=unsupported - archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' - old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' - ;; - - osf3*) - if test "$GCC" = yes; then - allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' - archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - else - allow_undefined_flag=' -expect_unresolved \*' - archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' - fi - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - hardcode_libdir_separator=: - ;; - - osf4* | osf5*) # as osf3* with the addition of -msym flag - if test "$GCC" = yes; then - allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' - archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - else - allow_undefined_flag=' -expect_unresolved \*' - archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' - archive_expsym_cmds='for i in `cat $export_symbols`; do printf "-exported_symbol " >> $lib.exp; echo "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~ - $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp' - - #Both c and cxx compiler support -rpath directly - hardcode_libdir_flag_spec='-rpath $libdir' - fi - hardcode_libdir_separator=: - ;; - - sco3.2v5*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_shlibpath_var=no - runpath_var=LD_RUN_PATH - hardcode_runpath_var=yes - export_dynamic_flag_spec='${wl}-Bexport' - ;; - - solaris*) - # gcc --version < 3.0 without binutils cannot create self contained - # shared libraries reliably, requiring libgcc.a to resolve some of - # the object symbols generated in some cases. Libraries that use - # assert need libgcc.a to resolve __eprintf, for example. Linking - # a copy of libgcc.a into every shared library to guarantee resolving - # such symbols causes other problems: According to Tim Van Holder - # , C++ libraries end up with a separate - # (to the application) exception stack for one thing. - no_undefined_flag=' -z defs' - if test "$GCC" = yes; then - case `$CC --version 2>/dev/null` in - [12].*) - cat <&2 - -*** Warning: Releases of GCC earlier than version 3.0 cannot reliably -*** create self contained shared libraries on Solaris systems, without -*** introducing a dependency on libgcc.a. Therefore, libtool is disabling -*** -no-undefined support, which will at least allow you to build shared -*** libraries. However, you may find that when you link such libraries -*** into an application without using GCC, you have to manually add -*** \`gcc --print-libgcc-file-name\` to the link command. We urge you to -*** upgrade to a newer version of GCC. Another option is to rebuild your -*** current GCC to use the GNU linker from GNU binutils 2.9.1 or newer. - -EOF - no_undefined_flag= - ;; - esac - fi - # $CC -shared without GNU ld will not create a library from C++ - # object files and a static libstdc++, better avoid it by now - archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' - archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_shlibpath_var=no - case $host_os in - solaris2.[0-5] | solaris2.[0-5].*) ;; - *) # Supported since Solaris 2.6 (maybe 2.5.1?) - whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;; - esac - link_all_deplibs=yes - ;; - - sunos4*) - if test "x$host_vendor" = xsequent; then - # Use $CC to link under sequent, because it throws in some extra .o - # files that make .init and .fini sections work. - archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' - else - archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' - fi - hardcode_libdir_flag_spec='-L$libdir' - hardcode_direct=yes - hardcode_minus_L=yes - hardcode_shlibpath_var=no - ;; - - sysv4) - case $host_vendor in - sni) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes # is this really true??? - ;; - siemens) - ## LD is ld it makes a PLAMLIB - ## CC just makes a GrossModule. - archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' - reload_cmds='$CC -r -o $output$reload_objs' - hardcode_direct=no - ;; - motorola) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=no #Motorola manual says yes, but my tests say they lie - ;; - esac - runpath_var='LD_RUN_PATH' - hardcode_shlibpath_var=no - ;; - - sysv4.3*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_shlibpath_var=no - export_dynamic_flag_spec='-Bexport' - ;; - - sysv5*) - no_undefined_flag=' -z text' - # $CC -shared without GNU ld will not create a library from C++ - # object files and a static libstdc++, better avoid it by now - archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' - archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' - hardcode_libdir_flag_spec= - hardcode_shlibpath_var=no - runpath_var='LD_RUN_PATH' - ;; - - uts4*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_shlibpath_var=no - ;; - - dgux*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_shlibpath_var=no - ;; - - sysv4*MP*) - if test -d /usr/nec; then - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_shlibpath_var=no - runpath_var=LD_RUN_PATH - hardcode_runpath_var=yes - ld_shlibs=yes - fi - ;; - - sysv4.2uw2*) - archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes - hardcode_minus_L=no - hardcode_shlibpath_var=no - hardcode_runpath_var=yes - runpath_var=LD_RUN_PATH - ;; - - sysv5uw7* | unixware7*) - no_undefined_flag='${wl}-z ${wl}text' - if test "$GCC" = yes; then - archive_cmds='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' - else - archive_cmds='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' - fi - runpath_var='LD_RUN_PATH' - hardcode_shlibpath_var=no - ;; - - *) - ld_shlibs=no - ;; - esac -fi -echo "$as_me:$LINENO: result: $ld_shlibs" >&5 -echo "${ECHO_T}$ld_shlibs" >&6 -test "$ld_shlibs" = no && can_build_shared=no - -# Check hardcoding attributes. -echo "$as_me:$LINENO: checking how to hardcode library paths into programs" >&5 -echo $ECHO_N "checking how to hardcode library paths into programs... $ECHO_C" >&6 -hardcode_action= -if test -n "$hardcode_libdir_flag_spec" || \ - test -n "$runpath_var"; then - - # We can hardcode non-existant directories. - if test "$hardcode_direct" != no && - # If the only mechanism to avoid hardcoding is shlibpath_var, we - # have to relink, otherwise we might link with an installed library - # when we should be linking with a yet-to-be-installed one - ## test "$hardcode_shlibpath_var" != no && - test "$hardcode_minus_L" != no; then - # Linking always hardcodes the temporary library directory. - hardcode_action=relink - else - # We can link without hardcoding, and we can hardcode nonexisting dirs. - hardcode_action=immediate - fi -else - # We cannot hardcode anything, or else we can only hardcode existing - # directories. - hardcode_action=unsupported -fi -echo "$as_me:$LINENO: result: $hardcode_action" >&5 -echo "${ECHO_T}$hardcode_action" >&6 - -striplib= -old_striplib= -echo "$as_me:$LINENO: checking whether stripping libraries is possible" >&5 -echo $ECHO_N "checking whether stripping libraries is possible... $ECHO_C" >&6 -if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then - test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" - test -z "$striplib" && striplib="$STRIP --strip-unneeded" - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -reload_cmds='$LD$reload_flag -o $output$reload_objs' -test -z "$deplibs_check_method" && deplibs_check_method=unknown - -# PORTME Fill in your ld.so characteristics -echo "$as_me:$LINENO: checking dynamic linker characteristics" >&5 -echo $ECHO_N "checking dynamic linker characteristics... $ECHO_C" >&6 -library_names_spec= -libname_spec='lib$name' -soname_spec= -postinstall_cmds= -postuninstall_cmds= -finish_cmds= -finish_eval= -shlibpath_var= -shlibpath_overrides_runpath=unknown -version_type=none -dynamic_linker="$host_os ld.so" -sys_lib_dlsearch_path_spec="/lib /usr/lib" -sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" - -case $host_os in -aix3*) - version_type=linux - library_names_spec='${libname}${release}.so$versuffix $libname.a' - shlibpath_var=LIBPATH - - # AIX has no versioning support, so we append a major version to the name. - soname_spec='${libname}${release}.so$major' - ;; - -aix4* | aix5*) - version_type=linux - need_lib_prefix=no - need_version=no - hardcode_into_libs=yes - if test "$host_cpu" = ia64; then - # AIX 5 supports IA64 - library_names_spec='${libname}${release}.so$major ${libname}${release}.so$versuffix $libname.so' - shlibpath_var=LD_LIBRARY_PATH - else - # With GCC up to 2.95.x, collect2 would create an import file - # for dependence libraries. The import file would start with - # the line `#! .'. This would cause the generated library to - # depend on `.', always an invalid library. This was fixed in - # development snapshots of GCC prior to 3.0. - case $host_os in - aix4 | aix4.[01] | aix4.[01].*) - if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' - echo ' yes ' - echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then - : - else - can_build_shared=no - fi - ;; - esac - # AIX (on Power*) has no versioning support, so currently we can - # not hardcode correct soname into executable. Probably we can - # add versioning support to collect2, so additional links can - # be useful in future. - if test "$aix_use_runtimelinking" = yes; then - # If using run time linking (on AIX 4.2 or later) use lib.so - # instead of lib.a to let people know that these are not - # typical AIX shared libraries. - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - else - # We preserve .a as extension for shared libraries through AIX4.2 - # and later when we are not doing run time linking. - library_names_spec='${libname}${release}.a $libname.a' - soname_spec='${libname}${release}.so$major' - fi - shlibpath_var=LIBPATH - fi - hardcode_into_libs=yes - ;; - -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 "X$lib" | $Xsed -e '\''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' - ;; - -beos*) - library_names_spec='${libname}.so' - dynamic_linker="$host_os ld.so" - shlibpath_var=LIBRARY_PATH - ;; - -bsdi4*) - version_type=linux - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' - shlibpath_var=LD_LIBRARY_PATH - sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" - sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" - export_dynamic_flag_spec=-rdynamic - # the default ld.so.conf also contains /usr/contrib/lib and - # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow - # libtool to hard-code these into programs - ;; - -cygwin* | mingw* | pw32*) - version_type=windows - need_version=no - need_lib_prefix=no - case $GCC,$host_os in - yes,cygwin*) - library_names_spec='$libname.dll.a' - soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll' - postinstall_cmds='dlpath=`bash 2>&1 -c '\''. $dir/${file}i;echo \$dlname'\''`~ - dldir=$destdir/`dirname \$dlpath`~ - test -d \$dldir || mkdir -p \$dldir~ - $install_prog .libs/$dlname \$dldir/$dlname' - postuninstall_cmds='dldll=`bash 2>&1 -c '\''. $file; echo \$dlname'\''`~ - dlpath=$dir/\$dldll~ - $rm \$dlpath' - ;; - yes,mingw*) - library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll' - sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g" -e "s,=/,/,g"` - ;; - yes,pw32*) - library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/./-/g'`${versuffix}.dll' - ;; - *) - library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll $libname.lib' - ;; - esac - dynamic_linker='Win32 ld.exe' - # FIXME: first we should search . and the directory the executable is in - shlibpath_var=PATH - ;; - -darwin* | rhapsody*) - dynamic_linker="$host_os dyld" - version_type=darwin - need_lib_prefix=no - need_version=no - # FIXME: Relying on posixy $() will cause problems for - # cross-compilation, but unfortunately the echo tests do not - # yet detect zsh echo's removal of \ escapes. - library_names_spec='${libname}${release}${versuffix}.$(test .$module = .yes && echo so || echo dylib) ${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib) ${libname}.$(test .$module = .yes && echo so || echo dylib)' - soname_spec='${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib)' - shlibpath_overrides_runpath=yes - shlibpath_var=DYLD_LIBRARY_PATH - ;; - -freebsd1*) - dynamic_linker=no - ;; - -freebsd*) - objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` - version_type=freebsd-$objformat - case $version_type in - freebsd-elf*) - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so' - need_version=no - need_lib_prefix=no - ;; - freebsd-*) - library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix' - need_version=yes - ;; - esac - shlibpath_var=LD_LIBRARY_PATH - case $host_os in - freebsd2*) - shlibpath_overrides_runpath=yes - ;; - *) - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - ;; - esac - ;; - -gnu*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so${major} ${libname}.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - hardcode_into_libs=yes - ;; - -hpux9* | hpux10* | hpux11*) - # Give a soname corresponding to the major version so that dld.sl refuses to - # link against other versions. - dynamic_linker="$host_os dld.sl" - version_type=sunos - need_lib_prefix=no - need_version=no - shlibpath_var=SHLIB_PATH - shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH - library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl' - soname_spec='${libname}${release}.sl$major' - # HP-UX runs *really* slowly unless shared libraries are mode 555. - postinstall_cmds='chmod 555 $lib' - ;; - -irix5* | irix6* | nonstopux*) - case $host_os in - nonstopux*) version_type=nonstopux ;; - *) version_type=irix ;; - esac - need_lib_prefix=no - need_version=no - soname_spec='${libname}${release}.so$major' - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so' - case $host_os in - irix5* | nonstopux*) - libsuff= shlibsuff= - ;; - *) - case $LD in # libtool.m4 will add one of these switches to LD - *-32|*"-32 ") libsuff= shlibsuff= libmagic=32-bit;; - *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 libmagic=N32;; - *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;; - *) libsuff= shlibsuff= libmagic=never-match;; - esac - ;; - esac - shlibpath_var=LD_LIBRARY${shlibsuff}_PATH - shlibpath_overrides_runpath=no - sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" - sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" - ;; - -# No shared lib support for Linux oldld, aout, or coff. -linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*) - dynamic_linker=no - ;; - -# This must be Linux ELF. -linux-gnu*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - # This implies no fast_install, which is unacceptable. - # Some rework will be needed to allow for fast_install - # before this can be enabled. - hardcode_into_libs=yes - - # We used to test for /lib/ld.so.1 and disable shared libraries on - # powerpc, because MkLinux only supported shared libraries with the - # GNU dynamic linker. Since this was broken with cross compilers, - # most powerpc-linux boxes support dynamic linking these days and - # people can always --disable-shared, the test was removed, and we - # assume the GNU/Linux dynamic linker is in use. - dynamic_linker='GNU/Linux ld.so' - ;; - -netbsd*) - version_type=sunos - need_lib_prefix=no - need_version=no - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - dynamic_linker='NetBSD (a.out) ld.so' - else - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so' - soname_spec='${libname}${release}.so$major' - dynamic_linker='NetBSD ld.elf_so' - fi - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - ;; - -newsos6) - version_type=linux - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - ;; - -openbsd*) - version_type=sunos - need_lib_prefix=no - need_version=no - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - case "$host_os" in - openbsd2.[89] | openbsd2.[89].*) - shlibpath_overrides_runpath=no - ;; - *) - shlibpath_overrides_runpath=yes - ;; - esac - else - shlibpath_overrides_runpath=yes - fi - library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - shlibpath_var=LD_LIBRARY_PATH - ;; - -os2*) - libname_spec='$name' - need_lib_prefix=no - library_names_spec='$libname.dll $libname.a' - dynamic_linker='OS/2 ld.exe' - shlibpath_var=LIBPATH - ;; - -osf3* | osf4* | osf5*) - version_type=osf - need_version=no - soname_spec='${libname}${release}.so$major' - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - shlibpath_var=LD_LIBRARY_PATH - sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" - sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" - hardcode_into_libs=yes - ;; - -sco3.2v5*) - version_type=osf - soname_spec='${libname}${release}.so$major' - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - shlibpath_var=LD_LIBRARY_PATH - ;; - -solaris*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - # ldd complains unless libraries are executable - postinstall_cmds='chmod +x $lib' - ;; - -sunos4*) - version_type=sunos - library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' - finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - if test "$with_gnu_ld" = yes; then - need_lib_prefix=no - fi - need_version=yes - ;; - -sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - version_type=linux - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - case $host_vendor in - sni) - shlibpath_overrides_runpath=no - need_lib_prefix=no - export_dynamic_flag_spec='${wl}-Blargedynsym' - runpath_var=LD_RUN_PATH - ;; - siemens) - need_lib_prefix=no - ;; - motorola) - need_lib_prefix=no - need_version=no - shlibpath_overrides_runpath=no - sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' - ;; - esac - ;; - -uts4*) - version_type=linux - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - ;; - -dgux*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - ;; - -sysv4*MP*) - if test -d /usr/nec ;then - version_type=linux - library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so' - soname_spec='$libname.so.$major' - shlibpath_var=LD_LIBRARY_PATH - fi - ;; - -*) - dynamic_linker=no - ;; -esac -echo "$as_me:$LINENO: result: $dynamic_linker" >&5 -echo "${ECHO_T}$dynamic_linker" >&6 -test "$dynamic_linker" = no && can_build_shared=no - -# Report the final consequences. -echo "$as_me:$LINENO: checking if libtool supports shared libraries" >&5 -echo $ECHO_N "checking if libtool supports shared libraries... $ECHO_C" >&6 -echo "$as_me:$LINENO: result: $can_build_shared" >&5 -echo "${ECHO_T}$can_build_shared" >&6 - -echo "$as_me:$LINENO: checking whether to build shared libraries" >&5 -echo $ECHO_N "checking whether to build shared libraries... $ECHO_C" >&6 -test "$can_build_shared" = "no" && enable_shared=no - -# On AIX, shared libraries and static libraries use the same namespace, and -# are all built from PIC. -case "$host_os" in -aix3*) - test "$enable_shared" = yes && enable_static=no - if test -n "$RANLIB"; then - archive_cmds="$archive_cmds~\$RANLIB \$lib" - postinstall_cmds='$RANLIB $lib' - fi - ;; - -aix4*) - if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then - test "$enable_shared" = yes && enable_static=no - fi - ;; -esac -echo "$as_me:$LINENO: result: $enable_shared" >&5 -echo "${ECHO_T}$enable_shared" >&6 - -echo "$as_me:$LINENO: checking whether to build static libraries" >&5 -echo $ECHO_N "checking whether to build static libraries... $ECHO_C" >&6 -# Make sure either enable_shared or enable_static is yes. -test "$enable_shared" = yes || enable_static=yes -echo "$as_me:$LINENO: result: $enable_static" >&5 -echo "${ECHO_T}$enable_static" >&6 - -if test "$hardcode_action" = relink; then - # Fast installation is not supported - enable_fast_install=no -elif test "$shlibpath_overrides_runpath" = yes || - test "$enable_shared" = no; then - # Fast installation is not necessary - enable_fast_install=needless -fi - -variables_saved_for_relink="PATH $shlibpath_var $runpath_var" -if test "$GCC" = yes; then - variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" -fi - -if test "x$enable_dlopen" != xyes; then - enable_dlopen=unknown - enable_dlopen_self=unknown - enable_dlopen_self_static=unknown -else - lt_cv_dlopen=no - lt_cv_dlopen_libs= - - case $host_os in - beos*) - lt_cv_dlopen="load_add_on" - lt_cv_dlopen_libs= - lt_cv_dlopen_self=yes - ;; - - cygwin* | mingw* | pw32*) - lt_cv_dlopen="LoadLibrary" - lt_cv_dlopen_libs= - ;; - - *) - echo "$as_me:$LINENO: checking for shl_load" >&5 -echo $ECHO_N "checking for shl_load... $ECHO_C" >&6 -if test "${ac_cv_func_shl_load+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* Define shl_load to an innocuous variant, in case declares shl_load. - For example, HP-UX 11i declares gettimeofday. */ -#define shl_load innocuous_shl_load - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char shl_load (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef shl_load - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -{ -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char shl_load (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_shl_load) || defined (__stub___shl_load) -choke me -#else -char (*f) () = shl_load; -#endif -#ifdef __cplusplus -} -#endif - -int -main () -{ -return f != shl_load; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_shl_load=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_func_shl_load=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_func_shl_load" >&5 -echo "${ECHO_T}$ac_cv_func_shl_load" >&6 -if test $ac_cv_func_shl_load = yes; then - lt_cv_dlopen="shl_load" -else - echo "$as_me:$LINENO: checking for shl_load in -ldld" >&5 -echo $ECHO_N "checking for shl_load in -ldld... $ECHO_C" >&6 -if test "${ac_cv_lib_dld_shl_load+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-ldld $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char shl_load (); -int -main () -{ -shl_load (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_dld_shl_load=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_dld_shl_load=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -echo "$as_me:$LINENO: result: $ac_cv_lib_dld_shl_load" >&5 -echo "${ECHO_T}$ac_cv_lib_dld_shl_load" >&6 -if test $ac_cv_lib_dld_shl_load = yes; then - lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld" -else - echo "$as_me:$LINENO: checking for dlopen" >&5 -echo $ECHO_N "checking for dlopen... $ECHO_C" >&6 -if test "${ac_cv_func_dlopen+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* Define dlopen to an innocuous variant, in case declares dlopen. - For example, HP-UX 11i declares gettimeofday. */ -#define dlopen innocuous_dlopen - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char dlopen (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef dlopen - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -{ -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char dlopen (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_dlopen) || defined (__stub___dlopen) -choke me -#else -char (*f) () = dlopen; -#endif -#ifdef __cplusplus -} -#endif - -int -main () -{ -return f != dlopen; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_dlopen=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_func_dlopen=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_func_dlopen" >&5 -echo "${ECHO_T}$ac_cv_func_dlopen" >&6 -if test $ac_cv_func_dlopen = yes; then - lt_cv_dlopen="dlopen" -else - echo "$as_me:$LINENO: checking for dlopen in -ldl" >&5 -echo $ECHO_N "checking for dlopen in -ldl... $ECHO_C" >&6 -if test "${ac_cv_lib_dl_dlopen+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-ldl $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char dlopen (); -int -main () -{ -dlopen (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_dl_dlopen=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_dl_dlopen=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -echo "$as_me:$LINENO: result: $ac_cv_lib_dl_dlopen" >&5 -echo "${ECHO_T}$ac_cv_lib_dl_dlopen" >&6 -if test $ac_cv_lib_dl_dlopen = yes; then - lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" -else - echo "$as_me:$LINENO: checking for dlopen in -lsvld" >&5 -echo $ECHO_N "checking for dlopen in -lsvld... $ECHO_C" >&6 -if test "${ac_cv_lib_svld_dlopen+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lsvld $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char dlopen (); -int -main () -{ -dlopen (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_svld_dlopen=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_svld_dlopen=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -echo "$as_me:$LINENO: result: $ac_cv_lib_svld_dlopen" >&5 -echo "${ECHO_T}$ac_cv_lib_svld_dlopen" >&6 -if test $ac_cv_lib_svld_dlopen = yes; then - lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld" -else - echo "$as_me:$LINENO: checking for dld_link in -ldld" >&5 -echo $ECHO_N "checking for dld_link in -ldld... $ECHO_C" >&6 -if test "${ac_cv_lib_dld_dld_link+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-ldld $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char dld_link (); -int -main () -{ -dld_link (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_dld_dld_link=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_dld_dld_link=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -echo "$as_me:$LINENO: result: $ac_cv_lib_dld_dld_link" >&5 -echo "${ECHO_T}$ac_cv_lib_dld_dld_link" >&6 -if test $ac_cv_lib_dld_dld_link = yes; then - lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld" -fi - - -fi - - -fi - - -fi - - -fi - - -fi - - ;; - esac - - if test "x$lt_cv_dlopen" != xno; then - enable_dlopen=yes - else - enable_dlopen=no - fi - - case $lt_cv_dlopen in - dlopen) - save_CPPFLAGS="$CPPFLAGS" - test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" - - save_LDFLAGS="$LDFLAGS" - eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" - - save_LIBS="$LIBS" - LIBS="$lt_cv_dlopen_libs $LIBS" - - echo "$as_me:$LINENO: checking whether a program can dlopen itself" >&5 -echo $ECHO_N "checking whether a program can dlopen itself... $ECHO_C" >&6 -if test "${lt_cv_dlopen_self+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test "$cross_compiling" = yes; then : - lt_cv_dlopen_self=cross -else - lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 - lt_status=$lt_dlunknown - cat > conftest.$ac_ext < -#endif - -#include - -#ifdef RTLD_GLOBAL -# define LT_DLGLOBAL RTLD_GLOBAL -#else -# ifdef DL_GLOBAL -# define LT_DLGLOBAL DL_GLOBAL -# else -# define LT_DLGLOBAL 0 -# endif -#endif - -/* We may have to define LT_DLLAZY_OR_NOW in the command line if we - find out it does not work in some platform. */ -#ifndef LT_DLLAZY_OR_NOW -# ifdef RTLD_LAZY -# define LT_DLLAZY_OR_NOW RTLD_LAZY -# else -# ifdef DL_LAZY -# define LT_DLLAZY_OR_NOW DL_LAZY -# else -# ifdef RTLD_NOW -# define LT_DLLAZY_OR_NOW RTLD_NOW -# else -# ifdef DL_NOW -# define LT_DLLAZY_OR_NOW DL_NOW -# else -# define LT_DLLAZY_OR_NOW 0 -# endif -# endif -# endif -# endif -#endif - -#ifdef __cplusplus -extern "C" void exit (int); -#endif - -void fnord() { int i=42;} -int main () -{ - void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); - int status = $lt_dlunknown; - - if (self) - { - if (dlsym (self,"fnord")) status = $lt_dlno_uscore; - else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; - /* dlclose (self); */ - } - - exit (status); -} -EOF - if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then - (./conftest; exit; ) 2>/dev/null - lt_status=$? - case x$lt_status in - x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;; - x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;; - x$lt_unknown|x*) lt_cv_dlopen_self=no ;; - esac - else : - # compilation failed - lt_cv_dlopen_self=no - fi -fi -rm -fr conftest* - - -fi -echo "$as_me:$LINENO: result: $lt_cv_dlopen_self" >&5 -echo "${ECHO_T}$lt_cv_dlopen_self" >&6 - - if test "x$lt_cv_dlopen_self" = xyes; then - LDFLAGS="$LDFLAGS $link_static_flag" - echo "$as_me:$LINENO: checking whether a statically linked program can dlopen itself" >&5 -echo $ECHO_N "checking whether a statically linked program can dlopen itself... $ECHO_C" >&6 -if test "${lt_cv_dlopen_self_static+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test "$cross_compiling" = yes; then : - lt_cv_dlopen_self_static=cross -else - lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 - lt_status=$lt_dlunknown - cat > conftest.$ac_ext < -#endif - -#include - -#ifdef RTLD_GLOBAL -# define LT_DLGLOBAL RTLD_GLOBAL -#else -# ifdef DL_GLOBAL -# define LT_DLGLOBAL DL_GLOBAL -# else -# define LT_DLGLOBAL 0 -# endif -#endif - -/* We may have to define LT_DLLAZY_OR_NOW in the command line if we - find out it does not work in some platform. */ -#ifndef LT_DLLAZY_OR_NOW -# ifdef RTLD_LAZY -# define LT_DLLAZY_OR_NOW RTLD_LAZY -# else -# ifdef DL_LAZY -# define LT_DLLAZY_OR_NOW DL_LAZY -# else -# ifdef RTLD_NOW -# define LT_DLLAZY_OR_NOW RTLD_NOW -# else -# ifdef DL_NOW -# define LT_DLLAZY_OR_NOW DL_NOW -# else -# define LT_DLLAZY_OR_NOW 0 -# endif -# endif -# endif -# endif -#endif - -#ifdef __cplusplus -extern "C" void exit (int); -#endif - -void fnord() { int i=42;} -int main () -{ - void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); - int status = $lt_dlunknown; - - if (self) - { - if (dlsym (self,"fnord")) status = $lt_dlno_uscore; - else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; - /* dlclose (self); */ - } - - exit (status); -} -EOF - if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then - (./conftest; exit; ) 2>/dev/null - lt_status=$? - case x$lt_status in - x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;; - x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;; - x$lt_unknown|x*) lt_cv_dlopen_self_static=no ;; - esac - else : - # compilation failed - lt_cv_dlopen_self_static=no - fi -fi -rm -fr conftest* - - -fi -echo "$as_me:$LINENO: result: $lt_cv_dlopen_self_static" >&5 -echo "${ECHO_T}$lt_cv_dlopen_self_static" >&6 - fi - - CPPFLAGS="$save_CPPFLAGS" - LDFLAGS="$save_LDFLAGS" - LIBS="$save_LIBS" - ;; - esac - - case $lt_cv_dlopen_self in - yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; - *) enable_dlopen_self=unknown ;; - esac - - case $lt_cv_dlopen_self_static in - yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; - *) enable_dlopen_self_static=unknown ;; - esac -fi - - -if test "$enable_shared" = yes && test "$GCC" = yes; then - case $archive_cmds in - *'~'*) - # FIXME: we may have to deal with multi-command sequences. - ;; - '$CC '*) - # Test whether the compiler implicitly links with -lc since on some - # systems, -lgcc has to come before -lc. If gcc already passes -lc - # to ld, don't add -lc before -lgcc. - echo "$as_me:$LINENO: checking whether -lc should be explicitly linked in" >&5 -echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >&6 - if test "${lt_cv_archive_cmds_need_lc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - $rm conftest* - echo 'static int dummy;' > conftest.$ac_ext - - if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - soname=conftest - lib=conftest - libobjs=conftest.$ac_objext - deplibs= - wl=$lt_cv_prog_cc_wl - compiler_flags=-v - linker_flags=-v - verstring= - output_objdir=. - libname=conftest - save_allow_undefined_flag=$allow_undefined_flag - allow_undefined_flag= - if { (eval echo "$as_me:$LINENO: \"$archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1\"") >&5 - (eval $archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } - then - lt_cv_archive_cmds_need_lc=no - else - lt_cv_archive_cmds_need_lc=yes - fi - allow_undefined_flag=$save_allow_undefined_flag - else - cat conftest.err 1>&5 - fi -fi - - echo "$as_me:$LINENO: result: $lt_cv_archive_cmds_need_lc" >&5 -echo "${ECHO_T}$lt_cv_archive_cmds_need_lc" >&6 - ;; - esac -fi -need_lc=${lt_cv_archive_cmds_need_lc-yes} - -# The second clause should only fire when bootstrapping the -# libtool distribution, otherwise you forgot to ship ltmain.sh -# with your package, and you will get complaints that there are -# no rules to generate ltmain.sh. -if test -f "$ltmain"; then - : -else - # If there is no Makefile yet, we rely on a make rule to execute - # `config.status --recheck' to rerun these tests and create the - # libtool script then. - test -f Makefile && make "$ltmain" -fi - -if test -f "$ltmain"; then - trap "$rm \"${ofile}T\"; exit 1" 1 2 15 - $rm -f "${ofile}T" - - echo creating $ofile - - # Now quote all the things that may contain metacharacters while being - # careful not to overquote the AC_SUBSTed values. We take copies of the - # variables and quote the copies for generation of the libtool script. - for var in echo old_CC old_CFLAGS SED \ - AR AR_FLAGS CC LD LN_S NM SHELL \ - reload_flag reload_cmds wl \ - pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \ - thread_safe_flag_spec whole_archive_flag_spec libname_spec \ - library_names_spec soname_spec \ - RANLIB old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \ - old_postuninstall_cmds archive_cmds archive_expsym_cmds postinstall_cmds \ - postuninstall_cmds extract_expsyms_cmds old_archive_from_expsyms_cmds \ - old_striplib striplib file_magic_cmd export_symbols_cmds \ - deplibs_check_method allow_undefined_flag no_undefined_flag \ - finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \ - global_symbol_to_c_name_address \ - hardcode_libdir_flag_spec hardcode_libdir_separator \ - sys_lib_search_path_spec sys_lib_dlsearch_path_spec \ - compiler_c_o compiler_o_lo need_locks exclude_expsyms include_expsyms; do - - case $var in - reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \ - old_postinstall_cmds | old_postuninstall_cmds | \ - export_symbols_cmds | archive_cmds | archive_expsym_cmds | \ - extract_expsyms_cmds | old_archive_from_expsyms_cmds | \ - postinstall_cmds | postuninstall_cmds | \ - finish_cmds | sys_lib_search_path_spec | sys_lib_dlsearch_path_spec) - # Double-quote double-evaled strings. - eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" - ;; - *) - eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\"" - ;; - esac - done - - cat <<__EOF__ > "${ofile}T" -#! $SHELL - -# `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. -# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP) -# NOTE: Changes made to this file will be lost: look at ltmain.sh. -# -# Copyright (C) 1996-2000 Free Software Foundation, Inc. -# Originally by Gordon Matzigkeit , 1996 -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# A sed that does not truncate output. -SED=$lt_SED - -# Sed that helps us avoid accidentally triggering echo(1) options like -n. -Xsed="${SED} -e s/^X//" - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi - -# ### BEGIN LIBTOOL CONFIG - -# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: - -# Shell to use when invoking shell scripts. -SHELL=$lt_SHELL - -# Whether or not to build shared libraries. -build_libtool_libs=$enable_shared - -# Whether or not to build static libraries. -build_old_libs=$enable_static - -# Whether or not to add -lc for building shared libraries. -build_libtool_need_lc=$need_lc - -# Whether or not to optimize for fast installation. -fast_install=$enable_fast_install - -# The host system. -host_alias=$host_alias -host=$host - -# An echo program that does not interpret backslashes. -echo=$lt_echo - -# The archiver. -AR=$lt_AR -AR_FLAGS=$lt_AR_FLAGS - -# The default C compiler. -CC=$lt_CC - -# Is the compiler the GNU C compiler? -with_gcc=$GCC - -# The linker used to build libraries. -LD=$lt_LD - -# Whether we need hard or soft links. -LN_S=$lt_LN_S - -# A BSD-compatible nm program. -NM=$lt_NM - -# A symbol stripping program -STRIP=$STRIP - -# Used to examine libraries when file_magic_cmd begins "file" -MAGIC_CMD=$MAGIC_CMD - -# Used on cygwin: DLL creation program. -DLLTOOL="$DLLTOOL" - -# Used on cygwin: object dumper. -OBJDUMP="$OBJDUMP" - -# Used on cygwin: assembler. -AS="$AS" - -# The name of the directory that contains temporary libtool files. -objdir=$objdir - -# How to create reloadable object files. -reload_flag=$lt_reload_flag -reload_cmds=$lt_reload_cmds - -# How to pass a linker flag through the compiler. -wl=$lt_wl - -# Object file suffix (normally "o"). -objext="$ac_objext" - -# Old archive suffix (normally "a"). -libext="$libext" - -# Executable file suffix (normally ""). -exeext="$exeext" - -# Additional compiler flags for building library objects. -pic_flag=$lt_pic_flag -pic_mode=$pic_mode - -# Does compiler simultaneously support -c and -o options? -compiler_c_o=$lt_compiler_c_o - -# Can we write directly to a .lo ? -compiler_o_lo=$lt_compiler_o_lo - -# Must we lock files when doing compilation ? -need_locks=$lt_need_locks - -# Do we need the lib prefix for modules? -need_lib_prefix=$need_lib_prefix - -# Do we need a version for libraries? -need_version=$need_version - -# Whether dlopen is supported. -dlopen_support=$enable_dlopen - -# Whether dlopen of programs is supported. -dlopen_self=$enable_dlopen_self - -# Whether dlopen of statically linked programs is supported. -dlopen_self_static=$enable_dlopen_self_static - -# Compiler flag to prevent dynamic linking. -link_static_flag=$lt_link_static_flag - -# Compiler flag to turn off builtin functions. -no_builtin_flag=$lt_no_builtin_flag - -# Compiler flag to allow reflexive dlopens. -export_dynamic_flag_spec=$lt_export_dynamic_flag_spec - -# Compiler flag to generate shared objects directly from archives. -whole_archive_flag_spec=$lt_whole_archive_flag_spec - -# Compiler flag to generate thread-safe objects. -thread_safe_flag_spec=$lt_thread_safe_flag_spec - -# Library versioning type. -version_type=$version_type - -# Format of library name prefix. -libname_spec=$lt_libname_spec - -# List of archive names. First name is the real one, the rest are links. -# The last name is the one that the linker finds with -lNAME. -library_names_spec=$lt_library_names_spec - -# The coded name of the library, if different from the real name. -soname_spec=$lt_soname_spec - -# Commands used to build and install an old-style archive. -RANLIB=$lt_RANLIB -old_archive_cmds=$lt_old_archive_cmds -old_postinstall_cmds=$lt_old_postinstall_cmds -old_postuninstall_cmds=$lt_old_postuninstall_cmds - -# Create an old-style archive from a shared archive. -old_archive_from_new_cmds=$lt_old_archive_from_new_cmds - -# Create a temporary old-style archive to link instead of a shared archive. -old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds - -# Commands used to build and install a shared archive. -archive_cmds=$lt_archive_cmds -archive_expsym_cmds=$lt_archive_expsym_cmds -postinstall_cmds=$lt_postinstall_cmds -postuninstall_cmds=$lt_postuninstall_cmds - -# Commands to strip libraries. -old_striplib=$lt_old_striplib -striplib=$lt_striplib - -# Method to check whether dependent libraries are shared objects. -deplibs_check_method=$lt_deplibs_check_method - -# Command to use when deplibs_check_method == file_magic. -file_magic_cmd=$lt_file_magic_cmd - -# Flag that allows shared libraries with undefined symbols to be built. -allow_undefined_flag=$lt_allow_undefined_flag - -# Flag that forces no undefined symbols. -no_undefined_flag=$lt_no_undefined_flag - -# Commands used to finish a libtool library installation in a directory. -finish_cmds=$lt_finish_cmds - -# Same as above, but a single script fragment to be evaled but not shown. -finish_eval=$lt_finish_eval - -# Take the output of nm and produce a listing of raw symbols and C names. -global_symbol_pipe=$lt_global_symbol_pipe - -# Transform the output of nm in a proper C declaration -global_symbol_to_cdecl=$lt_global_symbol_to_cdecl - -# Transform the output of nm in a C name address pair -global_symbol_to_c_name_address=$lt_global_symbol_to_c_name_address - -# This is the shared library runtime path variable. -runpath_var=$runpath_var - -# This is the shared library path variable. -shlibpath_var=$shlibpath_var - -# Is shlibpath searched before the hard-coded library search path? -shlibpath_overrides_runpath=$shlibpath_overrides_runpath - -# How to hardcode a shared library path into an executable. -hardcode_action=$hardcode_action - -# Whether we should hardcode library paths into libraries. -hardcode_into_libs=$hardcode_into_libs - -# Flag to hardcode \$libdir into a binary during linking. -# This must work even if \$libdir does not exist. -hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec - -# Whether we need a single -rpath flag with a separated argument. -hardcode_libdir_separator=$lt_hardcode_libdir_separator - -# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the -# resulting binary. -hardcode_direct=$hardcode_direct - -# Set to yes if using the -LDIR flag during linking hardcodes DIR into the -# resulting binary. -hardcode_minus_L=$hardcode_minus_L - -# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into -# the resulting binary. -hardcode_shlibpath_var=$hardcode_shlibpath_var - -# Variables whose values should be saved in libtool wrapper scripts and -# restored at relink time. -variables_saved_for_relink="$variables_saved_for_relink" - -# Whether libtool must link a program against all its dependency libraries. -link_all_deplibs=$link_all_deplibs - -# Compile-time system search path for libraries -sys_lib_search_path_spec=$lt_sys_lib_search_path_spec - -# Run-time system search path for libraries -sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec - -# Fix the shell variable \$srcfile for the compiler. -fix_srcfile_path="$fix_srcfile_path" - -# Set to yes if exported symbols are required. -always_export_symbols=$always_export_symbols - -# The commands to list exported symbols. -export_symbols_cmds=$lt_export_symbols_cmds - -# The commands to extract the exported symbol list from a shared archive. -extract_expsyms_cmds=$lt_extract_expsyms_cmds - -# Symbols that should not be listed in the preloaded symbols. -exclude_expsyms=$lt_exclude_expsyms - -# Symbols that must always be exported. -include_expsyms=$lt_include_expsyms - -# ### END LIBTOOL CONFIG - -__EOF__ - - case $host_os in - aix3*) - cat <<\EOF >> "${ofile}T" - -# 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. -if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES -fi -EOF - ;; - esac - - case $host_os in - cygwin* | mingw* | pw32* | os2*) - cat <<'EOF' >> "${ofile}T" - # This is a source program that is used to create dlls on Windows - # Don't remove nor modify the starting and closing comments -# /* ltdll.c starts here */ -# #define WIN32_LEAN_AND_MEAN -# #include -# #undef WIN32_LEAN_AND_MEAN -# #include -# -# #ifndef __CYGWIN__ -# # ifdef __CYGWIN32__ -# # define __CYGWIN__ __CYGWIN32__ -# # endif -# #endif -# -# #ifdef __cplusplus -# extern "C" { -# #endif -# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved); -# #ifdef __cplusplus -# } -# #endif -# -# #ifdef __CYGWIN__ -# #include -# DECLARE_CYGWIN_DLL( DllMain ); -# #endif -# HINSTANCE __hDllInstance_base; -# -# BOOL APIENTRY -# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved) -# { -# __hDllInstance_base = hInst; -# return TRUE; -# } -# /* ltdll.c ends here */ - # This is a source program that is used to create import libraries - # on Windows for dlls which lack them. Don't remove nor modify the - # starting and closing comments -# /* impgen.c starts here */ -# /* Copyright (C) 1999-2000 Free Software Foundation, Inc. -# -# This file is part of GNU libtool. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# */ -# -# #include /* for printf() */ -# #include /* for open(), lseek(), read() */ -# #include /* for O_RDONLY, O_BINARY */ -# #include /* for strdup() */ -# -# /* O_BINARY isn't required (or even defined sometimes) under Unix */ -# #ifndef O_BINARY -# #define O_BINARY 0 -# #endif -# -# static unsigned int -# pe_get16 (fd, offset) -# int fd; -# int offset; -# { -# unsigned char b[2]; -# lseek (fd, offset, SEEK_SET); -# read (fd, b, 2); -# return b[0] + (b[1]<<8); -# } -# -# static unsigned int -# pe_get32 (fd, offset) -# int fd; -# int offset; -# { -# unsigned char b[4]; -# lseek (fd, offset, SEEK_SET); -# read (fd, b, 4); -# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24); -# } -# -# static unsigned int -# pe_as32 (ptr) -# void *ptr; -# { -# unsigned char *b = ptr; -# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24); -# } -# -# int -# main (argc, argv) -# int argc; -# char *argv[]; -# { -# int dll; -# unsigned long pe_header_offset, opthdr_ofs, num_entries, i; -# unsigned long export_rva, export_size, nsections, secptr, expptr; -# unsigned long name_rvas, nexp; -# unsigned char *expdata, *erva; -# char *filename, *dll_name; -# -# filename = argv[1]; -# -# dll = open(filename, O_RDONLY|O_BINARY); -# if (dll < 1) -# return 1; -# -# dll_name = filename; -# -# for (i=0; filename[i]; i++) -# if (filename[i] == '/' || filename[i] == '\\' || filename[i] == ':') -# dll_name = filename + i +1; -# -# pe_header_offset = pe_get32 (dll, 0x3c); -# opthdr_ofs = pe_header_offset + 4 + 20; -# num_entries = pe_get32 (dll, opthdr_ofs + 92); -# -# if (num_entries < 1) /* no exports */ -# return 1; -# -# export_rva = pe_get32 (dll, opthdr_ofs + 96); -# export_size = pe_get32 (dll, opthdr_ofs + 100); -# nsections = pe_get16 (dll, pe_header_offset + 4 +2); -# secptr = (pe_header_offset + 4 + 20 + -# pe_get16 (dll, pe_header_offset + 4 + 16)); -# -# expptr = 0; -# for (i = 0; i < nsections; i++) -# { -# char sname[8]; -# unsigned long secptr1 = secptr + 40 * i; -# unsigned long vaddr = pe_get32 (dll, secptr1 + 12); -# unsigned long vsize = pe_get32 (dll, secptr1 + 16); -# unsigned long fptr = pe_get32 (dll, secptr1 + 20); -# lseek(dll, secptr1, SEEK_SET); -# read(dll, sname, 8); -# if (vaddr <= export_rva && vaddr+vsize > export_rva) -# { -# expptr = fptr + (export_rva - vaddr); -# if (export_rva + export_size > vaddr + vsize) -# export_size = vsize - (export_rva - vaddr); -# break; -# } -# } -# -# expdata = (unsigned char*)malloc(export_size); -# lseek (dll, expptr, SEEK_SET); -# read (dll, expdata, export_size); -# erva = expdata - export_rva; -# -# nexp = pe_as32 (expdata+24); -# name_rvas = pe_as32 (expdata+32); -# -# printf ("EXPORTS\n"); -# for (i = 0; i> "${ofile}T" || (rm -f "${ofile}T"; exit 1) - - mv -f "${ofile}T" "$ofile" || \ - (rm -f "$ofile" && cp "${ofile}T" "$ofile" && rm -f "${ofile}T") - chmod +x "$ofile" -fi - - - - - -# This can be used to rebuild libtool when needed -LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh" - -# Always use our own libtool. -LIBTOOL='$(SHELL) $(top_builddir)/libtool' - -# Prevent multiple expansion - - -echo "$as_me:$LINENO: checking for pcc non-reentrant struct return convention" >&5 -echo $ECHO_N "checking for pcc non-reentrant struct return convention... $ECHO_C" >&6 -if test "${cl_cv_c_struct_return_static+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -save_CFLAGS="$CFLAGS" -test $CC_GCC = true && CFLAGS="$CFLAGS -O0" -if test "$cross_compiling" = yes; then - cl_cv_c_struct_return_static="guessing no" -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -typedef struct { int a; int b; int c; int d; int e; } foo; -foo foofun () { static foo foopi = {3141,5926,5358,9793,2385}; return foopi; } -foo* (*fun) () = (foo* (*) ()) foofun; -int main() -{ foo foo1; - foo* fooptr1; - foo foo2; - foo* fooptr2; - foo1 = foofun(); fooptr1 = (*fun)(&foo1); - foo2 = foofun(); fooptr2 = (*fun)(&foo2); - exit(!(fooptr1 == fooptr2 && fooptr1->c == 5358)); -} -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cl_cv_c_struct_return_static=yes -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -rm -f core -cl_cv_c_struct_return_static=no -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -CFLAGS="$save_CFLAGS" - -fi -echo "$as_me:$LINENO: result: $cl_cv_c_struct_return_static" >&5 -echo "${ECHO_T}$cl_cv_c_struct_return_static" >&6 -case "$cl_cv_c_struct_return_static" in - *yes) cat >>confdefs.h <<\_ACEOF -#define __PCC_STRUCT_RETURN__ 1 -_ACEOF - ;; - *no) ;; -esac - -echo "$as_me:$LINENO: checking whether small structs are returned in registers" >&5 -echo $ECHO_N "checking whether small structs are returned in registers... $ECHO_C" >&6 -if test "${cl_cv_c_struct_return_small+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -if test "$cross_compiling" = yes; then - cl_cv_c_struct_return_small="guessing no" -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -typedef struct { int x; } foo; int y; -foo foofun () { foo f; f.x = y; return f; } -int (*fun) () = (int (*) ()) foofun; -int main() -{ y = 37; if ((*fun)() != 37) exit(1); - y = 55; if ((*fun)() != 55) exit(1); - exit(0); -} -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cl_cv_c_struct_return_small=yes -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -rm -f core -cl_cv_c_struct_return_small=no -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi - -fi -echo "$as_me:$LINENO: result: $cl_cv_c_struct_return_small" >&5 -echo "${ECHO_T}$cl_cv_c_struct_return_small" >&6 -case "$cl_cv_c_struct_return_small" in - *yes) cat >>confdefs.h <<\_ACEOF -#define __SMALL_STRUCT_RETURN__ 1 -_ACEOF - ;; - *no) ;; -esac - -echo "$as_me:$LINENO: checking whether floats are returned in integer registers" >&5 -echo $ECHO_N "checking whether floats are returned in integer registers... $ECHO_C" >&6 -if test "${cl_cv_c_float_return_ireg+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -if test "$cross_compiling" = yes; then - cl_cv_c_float_return_ireg="guessing no" -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -float x = (float)1.2; -float y = (float)1.3; -float fun () { return x*y; } -int main() -{ int val = (* (int (*) ()) fun) (); - exit (!(val == 0x3FC7AE15 || val == 0x15AEC73F)); -} -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cl_cv_c_float_return_ireg=yes -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -rm -f core -cl_cv_c_float_return_ireg=no -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi - -fi -echo "$as_me:$LINENO: result: $cl_cv_c_float_return_ireg" >&5 -echo "${ECHO_T}$cl_cv_c_float_return_ireg" >&6 -case "$cl_cv_c_float_return_ireg" in - *yes) cat >>confdefs.h <<\_ACEOF -#define __IREG_FLOAT_RETURN__ 1 -_ACEOF - ;; - *no) ;; -esac - -echo "$as_me:$LINENO: checking for long long type" >&5 -echo $ECHO_N "checking for long long type... $ECHO_C" >&6 -if test "${cl_cv_c_longlong+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -if test "$cross_compiling" = yes; then - cl_cv_c_longlong="guessing no" -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -int main() -{ -/* long longs don't work right with gcc-2.7.2 on m68k */ -/* long longs don't work right with gcc-2.7.2 on rs6000: avcall/tests.c gets - miscompiled. */ -#if defined(__m68k__) || (defined(_IBMR2) || defined(__powerpc)) -#if defined(__GNUC__) && (__GNUC__ == 2) && (__GNUC_MINOR__ <= 7) - exit(1); -#endif -#endif - { long x = 944938507; long y = 737962842; long z = 162359677; - exit(!(((long long) x)*((long long) y)>>32 == z)); - } -} -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cl_cv_c_longlong=yes -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -cl_cv_c_longlong=no -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi - -fi -echo "$as_me:$LINENO: result: $cl_cv_c_longlong" >&5 -echo "${ECHO_T}$cl_cv_c_longlong" >&6 -case "$cl_cv_c_longlong" in - *yes) -cat >>confdefs.h <<\_ACEOF -#define HAVE_LONGLONG -_ACEOF - ;; - *no) ;; -esac - - -echo "$as_me:$LINENO: checking whether char is unsigned" >&5 -echo $ECHO_N "checking whether char is unsigned... $ECHO_C" >&6 -if test "${ac_cv_c_char_unsigned+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -static int test_array [1 - 2 * !(((char) -1) < 0)]; -test_array [0] = 0 - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_c_char_unsigned=no -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_c_char_unsigned=yes -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_c_char_unsigned" >&5 -echo "${ECHO_T}$ac_cv_c_char_unsigned" >&6 -if test $ac_cv_c_char_unsigned = yes && test "$GCC" != yes; then - cat >>confdefs.h <<\_ACEOF -#define __CHAR_UNSIGNED__ 1 -_ACEOF - -fi - - ac_config_files="$ac_config_files Makefile" -cat >confcache <<\_ACEOF -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs, see configure's option --config-cache. -# It is not useful on other systems. If it contains results you don't -# want to keep, you may remove or edit it. -# -# config.status only pays attention to the cache file if you give it -# the --recheck option to rerun configure. -# -# `ac_cv_env_foo' variables (set or unset) will be overridden when -# loading this file, other *unset* `ac_cv_foo' will be assigned the -# following values. - -_ACEOF - -# The following way of writing the cache mishandles newlines in values, -# but we know of no workaround that is simple, portable, and efficient. -# So, don't put newlines in cache variables' values. -# Ultrix sh set writes to stderr and can't be redirected directly, -# and sets the high bit in the cache file unless we assign to the vars. -{ - (set) 2>&1 | - case `(ac_space=' '; set | grep ac_space) 2>&1` in - *ac_space=\ *) - # `set' does not quote correctly, so add quotes (double-quote - # substitution turns \\\\ into \\, and sed turns \\ into \). - sed -n \ - "s/'/'\\\\''/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" - ;; - *) - # `set' quotes correctly as required by POSIX, so do not add quotes. - sed -n \ - "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" - ;; - esac; -} | - sed ' - t clear - : clear - s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ - t end - /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ - : end' >>confcache -if diff $cache_file confcache >/dev/null 2>&1; then :; else - if test -w $cache_file; then - test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file" - cat confcache >$cache_file - else - echo "not updating unwritable cache $cache_file" - fi -fi -rm -f confcache - -test "x$prefix" = xNONE && prefix=$ac_default_prefix -# Let make expand exec_prefix. -test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' - -# VPATH may cause trouble with some makes, so we remove $(srcdir), -# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and -# trailing colons and then remove the whole line if VPATH becomes empty -# (actually we leave an empty line to preserve line numbers). -if test "x$srcdir" = x.; then - ac_vpsub='/^[ ]*VPATH[ ]*=/{ -s/:*\$(srcdir):*/:/; -s/:*\${srcdir}:*/:/; -s/:*@srcdir@:*/:/; -s/^\([^=]*=[ ]*\):*/\1/; -s/:*$//; -s/^[^=]*=[ ]*$//; -}' -fi - -DEFS=-DHAVE_CONFIG_H - -ac_libobjs= -ac_ltlibobjs= -for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue - # 1. Remove the extension, and $U if already installed. - ac_i=`echo "$ac_i" | - sed 's/\$U\././;s/\.o$//;s/\.obj$//'` - # 2. Add them. - ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext" - ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo' -done -LIBOBJS=$ac_libobjs - -LTLIBOBJS=$ac_ltlibobjs - - - -: ${CONFIG_STATUS=./config.status} -ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files $CONFIG_STATUS" -{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5 -echo "$as_me: creating $CONFIG_STATUS" >&6;} -cat >$CONFIG_STATUS <<_ACEOF -#! $SHELL -# Generated by $as_me. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false -SHELL=\${CONFIG_SHELL-$SHELL} -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## - -# Be Bourne compatible -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' -elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then - set -o posix -fi -DUALCASE=1; export DUALCASE # for MKS sh - -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - - -# Work around bugs in pre-3.0 UWIN ksh. -$as_unset ENV MAIL MAILPATH -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -for as_var in \ - LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ - LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ - LC_TELEPHONE LC_TIME -do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var - else - $as_unset $as_var - fi -done - -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - - -# Name of the executable. -as_me=`$as_basename "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)$' \| \ - . : '\(.\)' 2>/dev/null || -echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } - /^X\/\(\/\/\)$/{ s//\1/; q; } - /^X\/\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - - -# PATH needs CR, and LINENO needs CR and PATH. -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" || { - # Find who we are. Look in the path if we contain no path at all - # relative or not. - case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done - - ;; - esac - # We did not find ourselves, most probably we were run as `sh COMMAND' - # in which case we are not to be found in the path. - if test "x$as_myself" = x; then - as_myself=$0 - fi - if test ! -f "$as_myself"; then - { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5 -echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;} - { (exit 1); exit 1; }; } - fi - case $CONFIG_SHELL in - '') - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for as_base in sh bash ksh sh5; do - case $as_dir in - /*) - if ("$as_dir/$as_base" -c ' - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then - $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } - $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } - CONFIG_SHELL=$as_dir/$as_base - export CONFIG_SHELL - exec "$CONFIG_SHELL" "$0" ${1+"$@"} - fi;; - esac - done -done -;; - esac - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line before each line; the second 'sed' does the real - # work. The second script uses 'N' to pair each line-number line - # with the numbered line, and appends trailing '-' during - # substitution so that $LINENO is not a special case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) - sed '=' <$as_myself | - sed ' - N - s,$,-, - : loop - s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, - t loop - s,-$,, - s,^['$as_cr_digits']*\n,, - ' >$as_me.lineno && - chmod +x $as_me.lineno || - { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5 -echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;} - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensible to this). - . ./$as_me.lineno - # Exit status is that of the last command. - exit -} - - -case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in - *c*,-n*) ECHO_N= ECHO_C=' -' ECHO_T=' ' ;; - *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; - *) ECHO_N= ECHO_C='\c' ECHO_T= ;; -esac - -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -rm -f conf$$ conf$$.exe conf$$.file -echo >conf$$.file -if ln -s conf$$.file conf$$ 2>/dev/null; then - # We could just check for DJGPP; but this test a) works b) is more generic - # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). - if test -f conf$$.exe; then - # Don't use ln at all; we don't have any links - as_ln_s='cp -p' - else - as_ln_s='ln -s' - fi -elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.file - -if mkdir -p . 2>/dev/null; then - as_mkdir_p=: -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -as_executable_p="test -f" - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -# IFS -# We need space, tab and new line, in precisely that order. -as_nl=' -' -IFS=" $as_nl" - -# CDPATH. -$as_unset CDPATH - -exec 6>&1 - -# Open the log real soon, to keep \$[0] and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. Logging --version etc. is OK. -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX -} >&5 -cat >&5 <<_CSEOF - -This file was extended by $as_me, which was -generated by GNU Autoconf 2.59. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -_CSEOF -echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5 -echo >&5 -_ACEOF - -# Files that config.status was made for. -if test -n "$ac_config_files"; then - echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS -fi - -if test -n "$ac_config_headers"; then - echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS -fi - -if test -n "$ac_config_links"; then - echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS -fi - -if test -n "$ac_config_commands"; then - echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS -fi - -cat >>$CONFIG_STATUS <<\_ACEOF - -ac_cs_usage="\ -\`$as_me' instantiates files from templates according to the -current configuration. - -Usage: $0 [OPTIONS] [FILE]... - - -h, --help print this help, then exit - -V, --version print version number, then exit - -q, --quiet do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - --header=FILE[:TEMPLATE] - instantiate the configuration header FILE - -Configuration files: -$config_files - -Configuration headers: -$config_headers - -Report bugs to ." -_ACEOF - -cat >>$CONFIG_STATUS <<_ACEOF -ac_cs_version="\\ -config.status -configured by $0, generated by GNU Autoconf 2.59, - with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" - -Copyright (C) 2003 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." -srcdir=$srcdir -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF -# If no file are specified by the user, then we need to provide default -# value. By we need to know if files were specified by the user. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=*) - ac_option=`expr "x$1" : 'x\([^=]*\)='` - ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'` - ac_shift=: - ;; - -*) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - *) # This is not an option, so the user has probably given explicit - # arguments. - ac_option=$1 - ac_need_defaults=false;; - esac - - case $ac_option in - # Handling of the options. -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --vers* | -V ) - echo "$ac_cs_version"; exit 0 ;; - --he | --h) - # Conflict between --help and --header - { { echo "$as_me:$LINENO: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&2;} - { (exit 1); exit 1; }; };; - --help | --hel | -h ) - echo "$ac_cs_usage"; exit 0 ;; - --debug | --d* | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - CONFIG_FILES="$CONFIG_FILES $ac_optarg" - ac_need_defaults=false;; - --header | --heade | --head | --hea ) - $ac_shift - CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" - ac_need_defaults=false;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&2;} - { (exit 1); exit 1; }; } ;; - - *) ac_config_targets="$ac_config_targets $1" ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF -if \$ac_cs_recheck; then - echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 - exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion -fi - -_ACEOF - - - - - -cat >>$CONFIG_STATUS <<\_ACEOF -for ac_config_target in $ac_config_targets -do - case "$ac_config_target" in - # Handling of arguments. - "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; - "vacall_r.h" ) CONFIG_HEADERS="$CONFIG_HEADERS vacall_r.h" ;; - "config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; - *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 -echo "$as_me: error: invalid argument: $ac_config_target" >&2;} - { (exit 1); exit 1; }; };; - esac -done - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files - test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason to put it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Create a temporary directory, and hook for its removal unless debugging. -$debug || -{ - trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 - trap '{ (exit 1); exit 1; }' 1 2 13 15 -} - -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" -} || -{ - tmp=./confstat$$-$RANDOM - (umask 077 && mkdir $tmp) -} || -{ - echo "$me: cannot create a temporary directory in ." >&2 - { (exit 1); exit 1; } -} - -_ACEOF - -cat >>$CONFIG_STATUS <<_ACEOF - -# -# CONFIG_FILES section. -# - -# No need to generate the scripts if there are no CONFIG_FILES. -# This happens for instance when ./config.status config.h -if test -n "\$CONFIG_FILES"; then - # Protect against being on the right side of a sed subst in config.status. - sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g; - s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF -s,@SHELL@,$SHELL,;t t -s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t -s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t -s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t -s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t -s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t -s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t -s,@exec_prefix@,$exec_prefix,;t t -s,@prefix@,$prefix,;t t -s,@program_transform_name@,$program_transform_name,;t t -s,@bindir@,$bindir,;t t -s,@sbindir@,$sbindir,;t t -s,@libexecdir@,$libexecdir,;t t -s,@datadir@,$datadir,;t t -s,@sysconfdir@,$sysconfdir,;t t -s,@sharedstatedir@,$sharedstatedir,;t t -s,@localstatedir@,$localstatedir,;t t -s,@libdir@,$libdir,;t t -s,@includedir@,$includedir,;t t -s,@oldincludedir@,$oldincludedir,;t t -s,@infodir@,$infodir,;t t -s,@mandir@,$mandir,;t t -s,@build_alias@,$build_alias,;t t -s,@host_alias@,$host_alias,;t t -s,@target_alias@,$target_alias,;t t -s,@DEFS@,$DEFS,;t t -s,@ECHO_C@,$ECHO_C,;t t -s,@ECHO_N@,$ECHO_N,;t t -s,@ECHO_T@,$ECHO_T,;t t -s,@LIBS@,$LIBS,;t t -s,@CC@,$CC,;t t -s,@CFLAGS@,$CFLAGS,;t t -s,@LDFLAGS@,$LDFLAGS,;t t -s,@CPPFLAGS@,$CPPFLAGS,;t t -s,@ac_ct_CC@,$ac_ct_CC,;t t -s,@EXEEXT@,$EXEEXT,;t t -s,@OBJEXT@,$OBJEXT,;t t -s,@CPP@,$CPP,;t t -s,@EGREP@,$EGREP,;t t -s,@CC_GCC@,$CC_GCC,;t t -s,@GCC_X_NONE@,$GCC_X_NONE,;t t -s,@AS_UNDERSCORE@,$AS_UNDERSCORE,;t t -s,@RANLIB@,$RANLIB,;t t -s,@SET_MAKE@,$SET_MAKE,;t t -s,@INSTALL@,$INSTALL,;t t -s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t -s,@INSTALL_DATA@,$INSTALL_DATA,;t t -s,@CP@,$CP,;t t -s,@LN@,$LN,;t t -s,@build@,$build,;t t -s,@build_cpu@,$build_cpu,;t t -s,@build_vendor@,$build_vendor,;t t -s,@build_os@,$build_os,;t t -s,@host@,$host,;t t -s,@host_cpu@,$host_cpu,;t t -s,@host_vendor@,$host_vendor,;t t -s,@host_os@,$host_os,;t t -s,@LN_S@,$LN_S,;t t -s,@ECHO@,$ECHO,;t t -s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t -s,@STRIP@,$STRIP,;t t -s,@ac_ct_STRIP@,$ac_ct_STRIP,;t t -s,@LIBTOOL@,$LIBTOOL,;t t -s,@LIBOBJS@,$LIBOBJS,;t t -s,@LTLIBOBJS@,$LTLIBOBJS,;t t -CEOF - -_ACEOF - - cat >>$CONFIG_STATUS <<\_ACEOF - # Split the substitutions into bite-sized pieces for seds with - # small command number limits, like on Digital OSF/1 and HP-UX. - ac_max_sed_lines=48 - ac_sed_frag=1 # Number of current file. - ac_beg=1 # First line for current file. - ac_end=$ac_max_sed_lines # Line after last line for current file. - ac_more_lines=: - ac_sed_cmds= - while $ac_more_lines; do - if test $ac_beg -gt 1; then - sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - else - sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - fi - if test ! -s $tmp/subs.frag; then - ac_more_lines=false - else - # The purpose of the label and of the branching condition is to - # speed up the sed processing (if there are no `@' at all, there - # is no need to browse any of the substitutions). - # These are the two extra sed commands mentioned above. - (echo ':t - /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed - if test -z "$ac_sed_cmds"; then - ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed" - else - ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed" - fi - ac_sed_frag=`expr $ac_sed_frag + 1` - ac_beg=$ac_end - ac_end=`expr $ac_end + $ac_max_sed_lines` - fi - done - if test -z "$ac_sed_cmds"; then - ac_sed_cmds=cat - fi -fi # test -n "$CONFIG_FILES" - -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF -for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; - esac - - # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories. - ac_dir=`(dirname "$ac_file") 2>/dev/null || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac - - - - if test x"$ac_file" != x-; then - { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - rm -f "$ac_file" - fi - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - configure_input= - else - configure_input="$ac_file. " - fi - configure_input=$configure_input"Generated from `echo $ac_file_in | - sed 's,.*/,,'` by configure." - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF - sed "$ac_vpsub -$extrasub -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s,@configure_input@,$configure_input,;t t -s,@srcdir@,$ac_srcdir,;t t -s,@abs_srcdir@,$ac_abs_srcdir,;t t -s,@top_srcdir@,$ac_top_srcdir,;t t -s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t -s,@builddir@,$ac_builddir,;t t -s,@abs_builddir@,$ac_abs_builddir,;t t -s,@top_builddir@,$ac_top_builddir,;t t -s,@abs_top_builddir@,$ac_abs_top_builddir,;t t -" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out - rm -f $tmp/stdin - if test x"$ac_file" != x-; then - mv $tmp/out $ac_file - else - cat $tmp/out - rm -f $tmp/out - fi - -done -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF - -# -# CONFIG_HEADER section. -# - -# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where -# NAME is the cpp macro being defined and VALUE is the value it is being given. -# -# ac_d sets the value in "#define NAME VALUE" lines. -ac_dA='s,^\([ ]*\)#\([ ]*define[ ][ ]*\)' -ac_dB='[ ].*$,\1#\2' -ac_dC=' ' -ac_dD=',;t' -# ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE". -ac_uA='s,^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' -ac_uB='$,\1#\2define\3' -ac_uC=' ' -ac_uD=',;t' - -for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; - esac - - test x"$ac_file" != x- && { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - # Do quote $f, to prevent DOS paths from being IFS'd. - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } - # Remove the trailing spaces. - sed 's/[ ]*$//' $ac_file_inputs >$tmp/in - -_ACEOF - -# Transform confdefs.h into two sed scripts, `conftest.defines' and -# `conftest.undefs', that substitutes the proper values into -# config.h.in to produce config.h. The first handles `#define' -# templates, and the second `#undef' templates. -# And first: Protect against being on the right side of a sed subst in -# config.status. Protect against being in an unquoted here document -# in config.status. -rm -f conftest.defines conftest.undefs -# Using a here document instead of a string reduces the quoting nightmare. -# Putting comments in sed scripts is not portable. -# -# `end' is used to avoid that the second main sed command (meant for -# 0-ary CPP macros) applies to n-ary macro definitions. -# See the Autoconf documentation for `clear'. -cat >confdef2sed.sed <<\_ACEOF -s/[\\&,]/\\&/g -s,[\\$`],\\&,g -t clear -: clear -s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*\)\(([^)]*)\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1\2${ac_dC}\3${ac_dD},gp -t end -s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD},gp -: end -_ACEOF -# If some macros were called several times there might be several times -# the same #defines, which is useless. Nevertheless, we may not want to -# sort them, since we want the *last* AC-DEFINE to be honored. -uniq confdefs.h | sed -n -f confdef2sed.sed >conftest.defines -sed 's/ac_d/ac_u/g' conftest.defines >conftest.undefs -rm -f confdef2sed.sed - -# This sed command replaces #undef with comments. This is necessary, for -# example, in the case of _POSIX_SOURCE, which is predefined and required -# on some systems where configure will not decide to define it. -cat >>conftest.undefs <<\_ACEOF -s,^[ ]*#[ ]*undef[ ][ ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */, -_ACEOF - -# Break up conftest.defines because some shells have a limit on the size -# of here documents, and old seds have small limits too (100 cmds). -echo ' # Handle all the #define templates only if necessary.' >>$CONFIG_STATUS -echo ' if grep "^[ ]*#[ ]*define" $tmp/in >/dev/null; then' >>$CONFIG_STATUS -echo ' # If there are no defines, we may have an empty if/fi' >>$CONFIG_STATUS -echo ' :' >>$CONFIG_STATUS -rm -f conftest.tail -while grep . conftest.defines >/dev/null -do - # Write a limited-size here document to $tmp/defines.sed. - echo ' cat >$tmp/defines.sed <>$CONFIG_STATUS - # Speed up: don't consider the non `#define' lines. - echo '/^[ ]*#[ ]*define/!b' >>$CONFIG_STATUS - # Work around the forget-to-reset-the-flag bug. - echo 't clr' >>$CONFIG_STATUS - echo ': clr' >>$CONFIG_STATUS - sed ${ac_max_here_lines}q conftest.defines >>$CONFIG_STATUS - echo 'CEOF - sed -f $tmp/defines.sed $tmp/in >$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in -' >>$CONFIG_STATUS - sed 1,${ac_max_here_lines}d conftest.defines >conftest.tail - rm -f conftest.defines - mv conftest.tail conftest.defines -done -rm -f conftest.defines -echo ' fi # grep' >>$CONFIG_STATUS -echo >>$CONFIG_STATUS - -# Break up conftest.undefs because some shells have a limit on the size -# of here documents, and old seds have small limits too (100 cmds). -echo ' # Handle all the #undef templates' >>$CONFIG_STATUS -rm -f conftest.tail -while grep . conftest.undefs >/dev/null -do - # Write a limited-size here document to $tmp/undefs.sed. - echo ' cat >$tmp/undefs.sed <>$CONFIG_STATUS - # Speed up: don't consider the non `#undef' - echo '/^[ ]*#[ ]*undef/!b' >>$CONFIG_STATUS - # Work around the forget-to-reset-the-flag bug. - echo 't clr' >>$CONFIG_STATUS - echo ': clr' >>$CONFIG_STATUS - sed ${ac_max_here_lines}q conftest.undefs >>$CONFIG_STATUS - echo 'CEOF - sed -f $tmp/undefs.sed $tmp/in >$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in -' >>$CONFIG_STATUS - sed 1,${ac_max_here_lines}d conftest.undefs >conftest.tail - rm -f conftest.undefs - mv conftest.tail conftest.undefs -done -rm -f conftest.undefs - -cat >>$CONFIG_STATUS <<\_ACEOF - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - echo "/* Generated by configure. */" >$tmp/config.h - else - echo "/* $ac_file. Generated by configure. */" >$tmp/config.h - fi - cat $tmp/in >>$tmp/config.h - rm -f $tmp/in - if test x"$ac_file" != x-; then - if diff $ac_file $tmp/config.h >/dev/null 2>&1; then - { echo "$as_me:$LINENO: $ac_file is unchanged" >&5 -echo "$as_me: $ac_file is unchanged" >&6;} - else - ac_dir=`(dirname "$ac_file") 2>/dev/null || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - rm -f $ac_file - mv $tmp/config.h $ac_file - fi - else - cat $tmp/config.h - rm -f $tmp/config.h - fi -done -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF - -{ (exit 0); exit 0; } -_ACEOF -chmod +x $CONFIG_STATUS -ac_clean_files=$ac_clean_files_save - - -# configure is writing to config.log, and then calls config.status. -# config.status does its own redirection, appending to config.log. -# Unfortunately, on DOS this fails, as config.log is still kept open -# by configure, so config.status won't be able to write to it; its -# output is simply discarded. So we exec the FD to /dev/null, -# effectively closing config.log, so it can be properly (re)opened and -# appended to by config.status. When coming back to configure, we -# need to make the FD available again. -if test "$no_create" != yes; then - ac_cs_success=: - ac_config_status_args= - test "$silent" = yes && - ac_config_status_args="$ac_config_status_args --quiet" - exec 5>/dev/null - $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false - exec 5>>config.log - # Use ||, not &&, to avoid exiting from the if with $? = 1, which - # would make configure fail if this is the last instruction. - $ac_cs_success || { (exit 1); exit 1; } -fi - DELETED ffcall/callback/vacall_r/configure.in Index: ffcall/callback/vacall_r/configure.in ================================================================== --- ffcall/callback/vacall_r/configure.in +++ /dev/null @@ -1,29 +0,0 @@ -dnl AUTOCONF configuration for VACALL -dnl Bruno Haible 2000-04-02 -dnl -AC_INIT(vacall_r.h.in) -AC_CONFIG_HEADER(vacall_r.h config.h) -AC_PROG_CC -AC_PROG_CPP -AC_PROG_GCC_TRADITIONAL -CL_CC_GCC -CL_AS_UNDERSCORE -CL_PROG_RANLIB -AC_PROG_MAKE_SET -CL_PROG_INSTALL -CL_PROG_CP -CL_PROG_LN -CL_CANONICAL_HOST(../../autoconf) -CL_CANONICAL_HOST_CPU_FOR_FFCALL -PACKAGE=callback -AM_DISABLE_SHARED -AM_PROG_LIBTOOL -dnl See above. Avoid duplicate warning. -dnl CL_CANONICAL_HOST(../../autoconf) -dnl CL_CANONICAL_HOST_CPU_FOR_FFCALL -CL_PCC_STRUCT_RETURN -CL_SMALL_STRUCT_RETURN -CL_IREG_FLOAT_RETURN -CL_LONGLONG -AC_C_CHAR_UNSIGNED -AC_OUTPUT(Makefile) DELETED ffcall/callback/vacall_r/misc.c Index: ffcall/callback/vacall_r/misc.c ================================================================== --- ffcall/callback/vacall_r/misc.c +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Copyright 1995-1999 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#include -#include - -#include "vacall_r.h" -#include "config.h" - -/* Room for returning structs according to the pcc non-reentrant struct return convention. */ -__va_struct_buffer_t __va_struct_buffer; - -int /* no return type, since this never returns */ -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -__va_error1 (enum __VAtype start_type, enum __VAtype return_type) -#else -__va_error1 (start_type, return_type) - enum __VAtype start_type; - enum __VAtype return_type; -#endif -{ - /* If you see this, fix your code. */ - fprintf (stderr, "vacall: va_start type %d and va_return type %d disagree.\n", - (int)start_type, (int)return_type); - abort(); -#if defined(__cplusplus) - return 0; -#endif -} - -int /* no return type, since this never returns */ -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -__va_error2 (unsigned int size) -#else -__va_error2 (size) - unsigned int size; -#endif -{ - /* If you see this, increase __VA_ALIST_WORDS: */ - fprintf (stderr, "vacall: struct of size %u too large for pcc struct return.\n", - size); - abort(); -#if defined(__cplusplus) - return 0; -#endif -} DELETED ffcall/callback/vacall_r/reg-struct-return Index: ffcall/callback/vacall_r/reg-struct-return ================================================================== --- ffcall/callback/vacall_r/reg-struct-return +++ /dev/null @@ -1,16 +0,0 @@ -Return values in registers, with "gcc -freg-struct-return": -"---" means return in memory. - - I_III C_CdC D_fDd J_JiJ T_TcT X_BcdB -i386 eax al --- eax,edx --- --- -m68k d0 d0 --- d0,d1 --- --- -mips $2 $2 --- --- --- --- -sparc %o0 %o0 --- --- --- --- -alpha $0 $0 $0 $0,$1 --- --- -hppa %r28 %r28 --- --- --- --- -arm r0 r0 --- r0,r1 --- --- -rs6000 3 3 --- 3,4 --- --- -m88k r2 --- --- --- --- --- -convex s0 s0 s0 s0.l --- --- -ia64 r8 r8 f8 r8,r9 r8 --- -x86_64 eax eax xmm0 rax,rdx rax DELETED ffcall/callback/vacall_r/structcpy.c Index: ffcall/callback/vacall_r/structcpy.c ================================================================== --- ffcall/callback/vacall_r/structcpy.c +++ /dev/null @@ -1,33 +0,0 @@ -/* copy structs */ - -/* - * Copyright 1995-1999 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -void __structcpy (void* dest, void* src, unsigned long size, unsigned long alignment) -#else -void __structcpy(dest,src,size,alignment) - void* dest; - void* src; - unsigned long size; - unsigned long alignment; -#endif -{ - if (alignment % sizeof(long)) - { char* d = (char*)dest; - char* s = (char*)src; - do { *d++ = *s++; } while (--size > 0); - } - else - /* If the alignment is a multiple of sizeof(long), the size is as well. */ - { long* d = (long*)dest; - long* s = (long*)src; - do { *d++ = *s++; } while ((size -= sizeof(long)) > 0); - } -} DELETED ffcall/callback/vacall_r/vacall-alpha.c Index: ffcall/callback/vacall_r/vacall-alpha.c ================================================================== --- ffcall/callback/vacall_r/vacall-alpha.c +++ /dev/null @@ -1,149 +0,0 @@ -/* vacall function for alpha CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifndef REENTRANT -#include "vacall.h.in" -#else /* REENTRANT */ -#include "vacall_r.h.in" -#endif - -#ifdef REENTRANT -#define __vacall __vacall_r -register struct { void (*vacall_function) (void*,va_alist); void* arg; } - * env __asm__("$1"); -#endif -register long arg1 __asm__("$16"); -register long arg2 __asm__("$17"); -register long arg3 __asm__("$18"); -register long arg4 __asm__("$19"); -register long arg5 __asm__("$20"); -register long arg6 __asm__("$21"); -register double farg1 __asm__("$f16"); -register double farg2 __asm__("$f17"); -register double farg3 __asm__("$f18"); -register double farg4 __asm__("$f19"); -register double farg5 __asm__("$f20"); -register double farg6 __asm__("$f21"); -register __vaword iret __asm__("$0"); -register __vaword iret2 __asm__("$1"); -register float fret __asm__("$f0"); -register double dret __asm__("$f0"); - -void /* the return type is variable, not void! */ -__vacall (__vaword word1, __vaword word2, __vaword word3, __vaword word4, - __vaword word5, __vaword word6, - __vaword firstword) -{ - __va_alist list; - struct { double farg1, farg2, farg3, farg4, farg5, farg6; - long arg1, arg2, arg3, arg4, arg5, arg6; - } - args; - /* MAGIC ALERT! This is the last struct on the stack, so that - * &args + 1 == &firstword. Look at the assembly code to convince yourself. - */ - /* Move the arguments passed in registers to their stack locations. */ - /* args.arg1 = */ (&firstword)[-6] = word1; - /* args.arg2 = */ (&firstword)[-5] = word2; - /* args.arg3 = */ (&firstword)[-4] = word3; - /* args.arg4 = */ (&firstword)[-3] = word4; - /* args.arg5 = */ (&firstword)[-2] = word5; - /* args.arg6 = */ (&firstword)[-1] = word6; - args.farg1 = farg1; - args.farg2 = farg2; - args.farg3 = farg3; - args.farg4 = farg4; - args.farg5 = farg5; - args.farg6 = farg6; - /* Prepare the va_alist. */ - list.flags = 0; - list.aptr = (long)(&firstword - 6); - list.raddr = (void*)0; - list.rtype = __VAvoid; - list.memargptr = (long)&firstword; - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*vacall_function) (&list); -#else /* REENTRANT */ - (*env->vacall_function) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulonglong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAfloat) { - fret = list.tmp._float; - } else - if (list.rtype == __VAdouble) { - dret = list.tmp._double; - } else - if (list.rtype == __VAvoidp) { - iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - iret = (long) list.raddr; - } else { - /* normal struct return convention */ - if (list.flags & __VA_REGISTER_STRUCT_RETURN) { - if (list.rsize == sizeof(char)) { - iret = *(unsigned char *) list.raddr; - } else - if (list.rsize == sizeof(short)) { - iret = *(unsigned short *) list.raddr; - } else - if (list.rsize == sizeof(int)) { - iret = *(unsigned int *) list.raddr; - } else - if (list.rsize == sizeof(long)) { - iret = *(unsigned long *) list.raddr; - } else - if (list.rsize == 2*sizeof(__vaword)) { - iret = ((__vaword *) list.raddr)[0]; - iret2 = ((__vaword *) list.raddr)[1]; - } - } - } - } -} DELETED ffcall/callback/vacall_r/vacall-alpha.s Index: ffcall/callback/vacall_r/vacall-alpha.s ================================================================== --- ffcall/callback/vacall_r/vacall-alpha.s +++ /dev/null @@ -1,176 +0,0 @@ - .set noreorder - .set volatile - .set noat - .file 1 "vacall-alpha.c" -gcc2_compiled.: -__gnu_compiled_c: -.text - .align 3 - .globl __vacall_r - .ent __vacall_r -__vacall_r: -__vacall_r..ng: - lda $30,-176($30) - .frame $30,176,$26,0 - stq $26,0($30) - .mask 0x4000000,-176 - .prologue 1 - stq $16,128($30) - stq $17,136($30) - stq $18,144($30) - stq $19,152($30) - stq $20,160($30) - stq $21,168($30) - stt $f16,80($30) - stt $f17,88($30) - stt $f18,96($30) - stt $f19,104($30) - stt $f20,112($30) - stt $f21,120($30) - stl $31,16($30) - addq $30,128,$2 - stq $2,24($30) - stq $31,32($30) - stl $31,40($30) - addq $30,176,$4 - stq $4,72($30) - ldq $16,8($1) - ldq $27,0($1) - addq $30,16,$17 - jsr $26,($27),0 - ldl $2,40($30) - zapnot $2,15,$3 - beq $3,$35 - subq $3,1,$2 - beq $2,$77 - subq $3,2,$2 - bne $2,$38 -$77: - ldl $2,56($30) - insbl $2,7,$2 - sra $2,56,$0 - br $31,$35 - .align 4 -$38: - subq $3,3,$2 - bne $2,$40 - ldl $2,56($30) - extbl $2,0,$2 - zapnot $2,1,$0 - br $31,$35 - .align 4 -$40: - subq $3,4,$2 - bne $2,$42 - ldl $2,56($30) - inswl $2,6,$2 - sra $2,48,$0 - br $31,$35 - .align 4 -$42: - subq $3,5,$2 - bne $2,$44 - ldl $2,56($30) - extwl $2,0,$2 - zapnot $2,3,$0 - br $31,$35 - .align 4 -$44: - subq $3,6,$2 - bne $2,$46 - ldl $0,56($30) - br $31,$35 - .align 4 -$46: - subq $3,7,$2 - bne $2,$48 - ldl $2,56($30) - zapnot $2,15,$0 - br $31,$35 - .align 4 -$48: - subq $3,8,$2 - beq $2,$78 - subq $3,9,$2 - beq $2,$78 - subq $3,10,$2 - beq $2,$78 - ldl $2,40($30) - zapnot $2,15,$3 - subq $3,11,$2 - beq $2,$78 - subq $3,12,$2 - bne $2,$58 - lds $f0,56($30) - br $31,$35 - .align 4 -$58: - subq $3,13,$2 - bne $2,$60 - ldt $f0,56($30) - br $31,$35 - .align 4 -$60: - subq $3,14,$2 - bne $2,$62 -$78: - ldq $0,56($30) - br $31,$35 - .align 4 -$62: - subq $3,15,$2 - bne $2,$35 - ldl $2,16($30) - blbc $2,$65 - ldq $0,32($30) - br $31,$35 - .align 4 -$65: - srl $2,10,$2 - blbc $2,$35 - ldq $3,48($30) - subq $3,1,$2 - bne $2,$68 - ldq $3,32($30) - ldq_u $2,0($3) - extbl $2,$3,$2 - zapnot $2,1,$0 - br $31,$35 - .align 4 -$68: - subq $3,2,$2 - bne $2,$70 - ldq $2,32($30) - bic $2,6,$3 - ldq $3,0($3) - bic $2,1,$2 - extwl $3,$2,$3 - zapnot $3,3,$0 - br $31,$35 - .align 4 -$70: - subq $3,4,$2 - bne $2,$72 - ldq $2,32($30) - ldl $2,0($2) - zapnot $2,15,$0 - br $31,$35 - .align 4 -$72: - subq $3,8,$2 - bne $2,$74 - ldq $2,32($30) - ldq $0,0($2) - br $31,$35 - .align 4 -$74: - subq $3,16,$2 - bne $2,$35 - ldq $2,32($30) - ldq $0,0($2) - ldq $1,8($2) -$35: - ldq $26,0($30) - addq $30,176,$30 - ret $31,($26),1 - .end __vacall_r DELETED ffcall/callback/vacall_r/vacall-arm.c Index: ffcall/callback/vacall_r/vacall-arm.c ================================================================== --- ffcall/callback/vacall_r/vacall-arm.c +++ /dev/null @@ -1,124 +0,0 @@ -/* vacall function for arm CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifndef REENTRANT -#include "vacall.h.in" -#else /* REENTRANT */ -#include "vacall_r.h.in" -#endif - -#ifdef REENTRANT -#define __vacall __vacall_r -register struct { void (*vacall_function) (void*,va_alist); void* arg; } - * env __asm__("r12"); -#endif -register __vaword iret __asm__("r0"); -register __vaword iret2 __asm__("r1"); -register float fret __asm__("f0"); -register double dret __asm__("f0"); - -void /* the return type is variable, not void! */ -__vacall (__vaword word1, __vaword word2, __vaword word3, __vaword word4, - __vaword firstword) -{ - struct { long retaddr, arg1, arg2, arg3, arg4; } args; - __va_alist list; - /* MAGIC ALERT! - * This is the last struct on the stack, so that - * &args + 1 == &return_address == &firstword - 1. - * Look at the assembly code to convince yourself. - */ - /* Move the arguments passed in registers to their stack locations. */ - args.retaddr = (&firstword)[-1]; /* save the return address */ - (&firstword)[-4] = word1; - (&firstword)[-3] = word2; - (&firstword)[-2] = word3; - (&firstword)[-1] = word4; - /* Prepare the va_alist. */ - list.flags = 0; - list.aptr = (long)(&firstword - 4); - list.raddr = (void*)0; - list.rtype = __VAvoid; - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*vacall_function) (&list); -#else /* REENTRANT */ - (*env->vacall_function) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong || list.rtype == __VAulonglong) { - iret = ((__vaword *) &list.tmp._longlong)[0]; - iret2 = ((__vaword *) &list.tmp._longlong)[1]; - } else - if (list.rtype == __VAfloat) { - fret = list.tmp._float; - } else - if (list.rtype == __VAdouble) { - dret = list.tmp._double; - } else - if (list.rtype == __VAvoidp) { - iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - /* NB: On arm, all structure sizes are divisible by 4. */ - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - iret = (long) list.raddr; - } else { - /* normal struct return convention */ - if (list.flags & __VA_REGISTER_STRUCT_RETURN) { - if (list.rsize == sizeof(char)) { /* can't occur */ - iret = *(unsigned char *) list.raddr; - } else - if (list.rsize == sizeof(short)) { /* can't occur */ - iret = *(unsigned short *) list.raddr; - } else - if (list.rsize == sizeof(int)) { - iret = *(unsigned int *) list.raddr; - } else - if (list.rsize == 2*sizeof(__vaword)) { - iret = ((__vaword *) list.raddr)[0]; - iret2 = ((__vaword *) list.raddr)[1]; - } - } - } - } - (&firstword)[-1] = args.retaddr; /* restore the return address */ -} DELETED ffcall/callback/vacall_r/vacall-convex.c Index: ffcall/callback/vacall_r/vacall-convex.c ================================================================== --- ffcall/callback/vacall_r/vacall-convex.c +++ /dev/null @@ -1,110 +0,0 @@ -/* vacall function for convex CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifndef REENTRANT -#include "vacall.h.in" -#else /* REENTRANT */ -#include "vacall_r.h.in" -#endif - -#ifdef REENTRANT -#define __vacall __vacall_r -register struct { void (*vacall_function) (void*,va_alist); void* arg; } - * env __asm__("s0"); -#endif -register int iret __asm__("s0"); -register long long llret __asm__("s0"); -register float fret __asm__("s0"); -register double dret __asm__("s0"); - -void /* the return type is variable, not void! */ -__vacall (__vaword firstword) -{ - __va_alist list; - /* Prepare the va_alist. */ - list.flags = 0; - list.aptr = (long)&firstword; - list.raddr = (void*)0; - list.rtype = __VAvoid; - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*vacall_function) (&list); -#else /* REENTRANT */ - (*env->vacall_function) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong) { - iret = list.tmp._longlong; - } else - if (list.rtype == __VAulonglong) { - iret = list.tmp._ulonglong; - } else - if (list.rtype == __VAfloat) { - fret = list.tmp._float; - } else - if (list.rtype == __VAdouble) { - dret = list.tmp._double; - } else - if (list.rtype == __VAvoidp) { - iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - iret = (long) list.raddr; - } else { - /* normal struct return convention */ - if (list.flags & __VA_REGISTER_STRUCT_RETURN) { - if (list.rsize == sizeof(char)) { - iret = *(unsigned char *) list.raddr; - } else - if (list.rsize == sizeof(short)) { - iret = *(unsigned short *) list.raddr; - } else - if (list.rsize == sizeof(int)) { - iret = *(unsigned int *) list.raddr; - } else - if (list.rsize == 2*sizeof(__vaword)) { - llret = *(long long *) list.raddr; - } - } - } - } -} DELETED ffcall/callback/vacall_r/vacall-convex.s Index: ffcall/callback/vacall_r/vacall-convex.s ================================================================== --- ffcall/callback/vacall_r/vacall-convex.s +++ /dev/null @@ -1,133 +0,0 @@ -;NO_APP -.fpmode native -gcc2_compiled.: -___gnu_compiled_c: -.text -.text -.align 2 -.globl ___vacall_r - ds.b "g263" - ds.b "+01\0" -___vacall_r: - sub.w #32,sp - ld.w #0,s1 - st.w s1,-28(fp) - st.w ap,-24(fp) - st.w s1,-20(fp) - st.w s1,-16(fp) - pshea -28(fp) - mov s0,a1 - ld.w 4(a1),s1 - psh.w s1 - ld.w (a1),a1 - mov sp,ap - calls (a1) - ld.w 12(fp),ap - add.w #8,sp - ld.w -16(fp),s1 - eq.w #0,s1 - jbrs.t L2 - eq.w #1,s1 - jbrs.t L42 - eq.w #2,s1 - jbrs.f L5 -L42: - ld.b -8(fp),s1 - cvtb.w s1,s0 - rtn -L5: - eq.w #3,s1 - jbrs.f L7 - ld.b -8(fp),s1 - jbr L43 -L7: - eq.w #4,s1 - jbrs.f L9 - ld.h -8(fp),s1 - cvth.w s1,s0 - rtn -L9: - eq.w #5,s1 - jbrs.f L11 - ld.h -8(fp),s1 - jbr L44 -L11: - eq.w #6,s1 - jbrs.t L45 - eq.w #7,s1 - jbrs.t L45 - eq.w #8,s1 - jbrs.t L45 - eq.w #9,s1 - jbrs.t L45 - eq.w #10,s1 - jbrs.t L46 - ld.w -16(fp),s1 - eq.w #11,s1 - jbrs.f L23 -L46: - ld.w -4(fp),s0 - rtn -L23: - eq.w #12,s1 - jbrs.f L25 - ld.s -8(fp),s0 - rtn -L25: - eq.w #13,s1 - jbrs.f L27 - ld.d -8(fp),s0 - rtn -L27: - eq.w #14,s1 - jbrs.f L29 -L45: - ld.w -8(fp),s0 - rtn -L29: - eq.w #15,s1 - jbrs.f L2 - ld.w -28(fp),s2 - mov.w s2,s1 - and #1,s1 - eq.w #0,s1 - jbrs.t L32 - ld.w -20(fp),s0 - rtn -L32: - mov.w s2,s1 - and #1024,s1 - eq.w #0,s1 - jbrs.t L2 - ld.w -12(fp),s1 - eq.w #1,s1 - jbrs.f L35 - ld.w -20(fp),a1 - ld.b (a1),s1 -L43: - mov.w s1,s0 - and #0xff,s0 - rtn -L35: - eq.w #2,s1 - jbrs.f L37 - ld.w -20(fp),a1 - ld.h (a1),s1 -L44: - mov.w s1,s0 - and #0xffff,s0 - rtn -L37: - eq.w #4,s1 - jbrs.f L39 - ld.w -20(fp),a1 - ld.w (a1),s0 - rtn -L39: - eq.w #8,s1 - jbrs.f L2 - ld.w -20(fp),a1 - ld.l (a1),s0 -L2: - rtn - ds.h 0 DELETED ffcall/callback/vacall_r/vacall-hppa.c Index: ffcall/callback/vacall_r/vacall-hppa.c ================================================================== --- ffcall/callback/vacall_r/vacall-hppa.c +++ /dev/null @@ -1,225 +0,0 @@ -/* vacall function for hppa CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -/*--------------------------------------------------------------------------- - HPPA Argument Passing Conventions: - - The calling conventions for anonymous functions and for explicitly named - functions are different. Only the convention for explicitly named functions - matters here. - - All arguments, except the first 4 words, are passed on the stack - - growing down! - with word alignment. Doubles take two words and force - double alignment. Structures args are passed as true structures embedded - in the argument stack. They force double alignment and - if they don't - fit entirely in the 4 register words - are passed in memory. - The first 2 words are passed like this: - %r26 = first integer arg, %r25 = second integer arg, or - %fr4L = first float arg, %fr5L = second float arg, or - %fr5 = double arg. - Similarly for the next 2 words, passed in %r24 and %r23, or - %fr6L and %fr7L, or - %fr7. - - To return a structure, the called function copies the return value to - the address supplied in register "%r28". ----------------------------------------------------------------------------*/ - -#ifndef REENTRANT -#include "vacall.h.in" -#else /* REENTRANT */ -#include "vacall_r.h.in" -#endif - -#ifdef REENTRANT -#define __vacall __vacall_r -register struct { void (*vacall_function) (void*,va_alist); void* arg; } - * env __asm__("%r29"); -#endif -register void* sret __asm__("%r28"); -register long arg1 __asm__("%r26"); -register long arg2 __asm__("%r25"); -register long arg3 __asm__("%r24"); -register long arg4 __asm__("%r23"); -register float farg1 __asm__("%fr4"); /* fr4L */ -register float farg2 __asm__("%fr5"); /* fr5L */ -register float farg3 __asm__("%fr6"); /* fr6L */ -register float farg4 __asm__("%fr7"); /* fr7L */ -register double darg1 __asm__("%fr5"); -register double darg2 __asm__("%fr7"); -register int iret __asm__("%r28"); -register float fret __asm__("%fr4"); /* fr4L */ -register double dret __asm__("%fr4"); -register __vaword iret1 __asm__("%r28"); -register __vaword iret2 __asm__("%r29"); - -void /* the return type is variable, not void! */ -__vacall (__vaword word1, __vaword word2, __vaword word3, __vaword word4, - __vaword firstword) -{ - /* gcc-2.6.3 source says: When a parameter is passed in a register, - * stack space is still allocated for it. - */ - /* Note about stack offsets (see vacall-hppa.s): - * &firstword = %r30 - 244, &word4 = %r30 - 240, ..., &word1 = %r30 - 228, - */ - __va_alist list; - /* Move the arguments passed in registers to their stack locations. */ - &word1; /* (&firstword)[4] = word1; */ - &word2; /* (&firstword)[3] = word2; */ - &word3; /* (&firstword)[2] = word3; */ - &word4; /* (&firstword)[1] = word4; */ - list.darg[1] = darg1; - list.darg[0] = darg2; - list.farg[3] = farg1; - list.farg[2] = farg2; - list.farg[1] = farg3; - list.farg[0] = farg4; - /* Prepare the va_alist. */ - list.flags = 0; - list.aptr = (long)(&firstword + 5); - list.raddr = (void*)0; - list.rtype = __VAvoid; - list.structraddr = sret; - list.memargptr = (long)(&firstword + 1); - list.farg_offset = (long)&list.farg[4] - list.aptr; - list.darg_offset = (long)&list.darg[2] - list.aptr; - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*vacall_function) (&list); -#else /* REENTRANT */ - (*env->vacall_function) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong || list.rtype == __VAulonglong) { - iret1 = ((__vaword *) &list.tmp._longlong)[0]; - iret2 = ((__vaword *) &list.tmp._longlong)[1]; - } else - if (list.rtype == __VAfloat) { - fret = list.tmp._float; - iret1 = list.tmp._words[0]; /* HP cc generates a RTNVAL=GR call */ - } else - if (list.rtype == __VAdouble) { - dret = list.tmp._double; - iret1 = list.tmp._words[0]; /* HP cc generates a RTNVAL=GR call */ - iret2 = list.tmp._words[1]; /* i.e. result is expected in r28,r29 */ - } else - if (list.rtype == __VAvoidp) { - iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - iret = (long) list.raddr; - } else { - /* normal struct return convention */ - if (list.flags & __VA_SMALL_STRUCT_RETURN) { - if (list.flags & __VA_OLDGCC_STRUCT_RETURN) { - /* gcc <= 2.6.3 returns structs of size 1,2,4 in registers. */ - if (list.rsize == sizeof(char)) { - iret = *(unsigned char *) list.raddr; - } else - if (list.rsize == sizeof(short)) { - iret = *(unsigned short *) list.raddr; - } else - if (list.rsize == sizeof(int)) { - iret = *(unsigned int *) list.raddr; - } - } else { - /* cc, c89 and gcc >= 2.7 return structs of size <= 8 in registers. */ - if (list.rsize > 0 && list.rsize <= 8) { - if (list.rsize == 1) { - iret = ((unsigned char *) list.raddr)[0]; - } else - if (list.rsize == 2) { - iret = (((unsigned char *) list.raddr)[0] << 8) - | ((unsigned char *) list.raddr)[1]; - } else - if (list.rsize == 3) { - iret = (((unsigned char *) list.raddr)[0] << 16) - | (((unsigned char *) list.raddr)[1] << 8) - | ((unsigned char *) list.raddr)[2]; - } else - if (list.rsize == 4) { - iret = (((unsigned char *) list.raddr)[0] << 24) - | (((unsigned char *) list.raddr)[1] << 16) - | (((unsigned char *) list.raddr)[2] << 8) - | ((unsigned char *) list.raddr)[3]; - } else - if (list.rsize == 5) { - iret1 = (((unsigned char *) list.raddr)[0] << 24) - | (((unsigned char *) list.raddr)[1] << 16) - | (((unsigned char *) list.raddr)[2] << 8) - | ((unsigned char *) list.raddr)[3]; - iret2 = ((unsigned char *) list.raddr)[4]; - } else - if (list.rsize == 6) { - iret1 = (((unsigned char *) list.raddr)[0] << 24) - | (((unsigned char *) list.raddr)[1] << 16) - | (((unsigned char *) list.raddr)[2] << 8) - | ((unsigned char *) list.raddr)[3]; - iret2 = (((unsigned char *) list.raddr)[4] << 8) - | ((unsigned char *) list.raddr)[5]; - } else - if (list.rsize == 7) { - iret1 = (((unsigned char *) list.raddr)[0] << 24) - | (((unsigned char *) list.raddr)[1] << 16) - | (((unsigned char *) list.raddr)[2] << 8) - | ((unsigned char *) list.raddr)[3]; - iret2 = (((unsigned char *) list.raddr)[4] << 16) - | (((unsigned char *) list.raddr)[5] << 8) - | ((unsigned char *) list.raddr)[6]; - } else - if (list.rsize == 8) { - iret1 = (((unsigned char *) list.raddr)[0] << 24) - | (((unsigned char *) list.raddr)[1] << 16) - | (((unsigned char *) list.raddr)[2] << 8) - | ((unsigned char *) list.raddr)[3]; - iret2 = (((unsigned char *) list.raddr)[4] << 24) - | (((unsigned char *) list.raddr)[5] << 16) - | (((unsigned char *) list.raddr)[6] << 8) - | ((unsigned char *) list.raddr)[7]; - } - } - } - } - } - } -} DELETED ffcall/callback/vacall_r/vacall-hppa.s Index: ffcall/callback/vacall_r/vacall-hppa.s ================================================================== --- ffcall/callback/vacall_r/vacall-hppa.s +++ /dev/null @@ -1,229 +0,0 @@ - .code - .IMPORT $global$,DATA - .IMPORT $$dyncall,MILLICODE -; gcc_compiled.: - .code - - .align 4 - .EXPORT __vacall_r,ENTRY,PRIV_LEV=3,ARGW0=GR,ARGW1=GR,ARGW2=GR,ARGW3=GR - .label __vacall_r - .PROC - .CALLINFO FRAME=192,CALLS,SAVE_RP - .ENTRY - stw %r2,-20(0,%r30) - ldo 192(%r30),%r30 - stw %r26,-228(0,%r30) - stw %r25,-232(0,%r30) - stw %r24,-236(0,%r30) - ldo -120(%r30),%r19 - fstds %fr5,8(0,%r19) - fstds %fr7,0(0,%r19) - fstws %fr4L,-4(0,%r19) - fstws %fr5L,-8(0,%r19) - fstws %fr6L,-12(0,%r19) - fstws %fr7L,-16(0,%r19) - stw %r23,-240(0,%r30) - stw 0,-184(0,%r30) - ldo -224(%r30),%r19 - stw %r19,-180(0,%r30) - stw 0,-176(0,%r30) - stw 0,-172(0,%r30) - stw %r28,-152(0,%r30) - ldo -240(%r30),%r19 - stw %r19,-148(0,%r30) - ldi 104,%r19 - stw %r19,-144(0,%r30) - ldi 120,%r19 - stw %r19,-140(0,%r30) - ldw 4(0,%r29),%r26 - ldw 0(0,%r29),%r19 - ldo -184(%r30),%r25 - copy %r19,%r22 - .CALL ARGW0=GR - bl $$dyncall,%r31 - copy %r31,%r2 - ldw -172(0,%r30),%r19 - comib,= 0,%r19,L$0065 - ldw -212(0,%r30),%r2 - comiclr,= 1,%r19,0 - comib,<>,n 2,%r19,L$0006 - .label L$0057 - ldb -160(0,%r30),%r19 - bl L$0065,0 - extrs %r19,31,8,%r28 - .label L$0006 - comib,<>,n 3,%r19,L$0008 - ldb -160(0,%r30),%r28 - bl L$0065,0 - ldw -212(0,%r30),%r2 - .label L$0008 - comib,<>,n 4,%r19,L$0010 - ldh -160(0,%r30),%r19 - bl L$0003,0 - extrs %r19,31,16,%r28 - .label L$0010 - comib,<>,n 5,%r19,L$0012 - ldh -160(0,%r30),%r28 - bl L$0065,0 - ldw -212(0,%r30),%r2 - .label L$0012 - comib,=,n 6,%r19,L$0060 - comib,=,n 7,%r19,L$0060 - comib,=,n 8,%r19,L$0060 - comib,= 9,%r19,L$0060 - ldo -10(%r19),%r19 - comib,>>= 1,%r19,L$0059 - ldw -172(0,%r30),%r19 - comib,<>,n 12,%r19,L$0024 - ldo -152(%r30),%r19 - fldws -8(0,%r19),%fr4L - .label L$0060 - bl L$0003,0 - ldw -160(0,%r30),%r28 - .label L$0024 - comib,<>,n 13,%r19,L$0026 - ldo -152(%r30),%r19 - fldds -8(0,%r19),%fr4 - .label L$0059 - ldw -160(0,%r30),%r28 - bl L$0003,0 - ldw -156(0,%r30),%r29 - .label L$0026 - comiclr,<> 14,%r19,0 - bl,n L$0060,0 - comib,<> 15,%r19,L$0065 - ldw -212(0,%r30),%r2 - ldw -184(0,%r30),%r19 - bb,>=,n %r19,31,L$0031 - ldw -176(0,%r30),%r28 - bl,n L$0003,0 - .label L$0031 - bb,>= %r19,30,L$0065 - ldw -212(0,%r30),%r2 - bb,>= %r19,28,L$0034 - ldw -168(0,%r30),%r19 - comib,=,n 1,%r19,L$0061 - comib,<>,n 2,%r19,L$0037 - ldw -176(0,%r30),%r19 - bl L$0065,0 - ldh 0(0,%r19),%r28 - .label L$0037 - comib,<> 4,%r19,L$0065 - ldw -212(0,%r30),%r2 - ldw -176(0,%r30),%r19 - bl L$0065,0 - ldw 0(0,%r19),%r28 - .label L$0034 - comib,= 0,%r19,L$0065 - ldw -212(0,%r30),%r2 - comib,<<,n 8,%r19,L$0065 - comib,<>,n 1,%r19,L$0042 - .label L$0061 - ldw -176(0,%r30),%r19 - bl L$0003,0 - ldb 0(0,%r19),%r28 - .label L$0042 - comib,<>,n 2,%r19,L$0044 - ldw -176(0,%r30),%r19 - ldb 0(0,%r19),%r20 - ldb 1(0,%r19),%r19 - zdep %r20,23,24,%r20 - bl L$0003,0 - or %r20,%r19,%r28 - .label L$0044 - comib,<> 3,%r19,L$0046 - ldw -176(0,%r30),%r21 - ldb 0(0,%r21),%r19 - ldb 1(0,%r21),%r20 - ldb 2(0,%r21),%r21 - zdep %r19,15,16,%r19 - zdep %r20,23,24,%r20 - or %r19,%r20,%r19 - bl L$0003,0 - or %r19,%r21,%r28 - .label L$0046 - comib,= 4,%r19,L$0062 - ldw -176(0,%r30),%r22 - comib,<>,n 5,%r19,L$0050 - ldb 4(0,%r22),%r29 - .label L$0062 - ldb 0(0,%r22),%r19 - ldb 1(0,%r22),%r20 - ldb 2(0,%r22),%r21 - zdep %r19,7,8,%r19 - zdep %r20,15,16,%r20 - or %r19,%r20,%r19 - zdep %r21,23,24,%r21 - ldb 3(0,%r22),%r20 - or %r19,%r21,%r19 - bl L$0003,0 - or %r19,%r20,%r28 - .label L$0050 - comib,<> 6,%r19,L$0052 - ldw -176(0,%r30),%r22 - ldb 0(0,%r22),%r19 - ldb 1(0,%r22),%r20 - ldb 2(0,%r22),%r21 - zdep %r19,7,8,%r19 - zdep %r20,15,16,%r20 - or %r19,%r20,%r19 - zdep %r21,23,24,%r21 - ldb 3(0,%r22),%r20 - or %r19,%r21,%r19 - or %r19,%r20,%r28 - ldb 4(0,%r22),%r19 - ldb 5(0,%r22),%r20 - bl L$0063,0 - zdep %r19,23,24,%r19 - .label L$0052 - comib,<>,n 7,%r19,L$0054 - ldb 0(0,%r22),%r19 - ldb 1(0,%r22),%r20 - ldb 2(0,%r22),%r21 - zdep %r19,7,8,%r19 - zdep %r20,15,16,%r20 - or %r19,%r20,%r19 - zdep %r21,23,24,%r21 - or %r19,%r21,%r19 - ldb 3(0,%r22),%r20 - ldb 6(0,%r22),%r21 - or %r19,%r20,%r28 - ldb 4(0,%r22),%r19 - ldb 5(0,%r22),%r20 - zdep %r19,15,16,%r19 - zdep %r20,23,24,%r20 - or %r19,%r20,%r19 - bl L$0003,0 - or %r19,%r21,%r29 - .label L$0054 - comib,<> 8,%r19,L$0065 - ldw -212(0,%r30),%r2 - ldw -176(0,%r30),%r22 - ldb 0(0,%r22),%r19 - ldb 1(0,%r22),%r20 - ldb 2(0,%r22),%r21 - zdep %r19,7,8,%r19 - zdep %r20,15,16,%r20 - or %r19,%r20,%r19 - zdep %r21,23,24,%r21 - or %r19,%r21,%r19 - ldb 3(0,%r22),%r20 - ldb 6(0,%r22),%r21 - or %r19,%r20,%r28 - zdep %r21,23,24,%r21 - ldb 4(0,%r22),%r19 - ldb 5(0,%r22),%r20 - zdep %r19,7,8,%r19 - zdep %r20,15,16,%r20 - or %r19,%r20,%r19 - ldb 7(0,%r22),%r20 - or %r19,%r21,%r19 - .label L$0063 - or %r19,%r20,%r29 - .label L$0003 - ldw -212(0,%r30),%r2 - .label L$0065 - bv 0(%r2) - ldo -192(%r30),%r30 - .EXIT - .PROCEND DELETED ffcall/callback/vacall_r/vacall-i386-macro.S Index: ffcall/callback/vacall_r/vacall-i386-macro.S ================================================================== --- ffcall/callback/vacall_r/vacall-i386-macro.S +++ /dev/null @@ -1,133 +0,0 @@ -#include "asmi386.h" -TEXT() - ALIGN(2) -GLOBL(C(__vacall_r)) - DECLARE_FUNCTION(__vacall_r) -FUNBEGIN(__vacall_r) - INSN2(sub,l ,NUM(36),R(esp)) - INSN2(mov,l ,NUM(0),X4 MEM(esp)) - INSN2(lea,l ,X4 MEM_DISP(esp,44),R(ecx)) - INSN2(mov,l ,R(ecx),X4 MEM_DISP(esp,4)) - INSN2(mov,l ,NUM(0),X4 MEM_DISP(esp,8)) - INSN2(mov,l ,NUM(0),X4 MEM_DISP(esp,12)) - INSN2(mov,l ,R(ebx),X4 MEM_DISP(esp,32)) - INSN2(mov,l ,R(esp),R(edx)) - INSN1(push,l ,R(edx)) - INSN2(mov,l ,X4 MEM_DISP(esp,44),R(ecx)) - INSN2(mov,l ,X4 MEM_DISP(ecx,4),R(edx)) - INSN1(push,l ,R(edx)) - INSN2(mov,l ,X4 MEM_DISP(esp,48),R(ecx)) - INSN2(mov,l ,X4 MEM(ecx),R(edx)) - INSN1(call,_ ,INDIR(R(edx))) - INSN2(add,l ,NUM(8),R(esp)) - INSN2(cmp,l ,NUM(0),X4 MEM_DISP(esp,12)) - INSN1(je,_ ,L3) - INSN2(cmp,l ,NUM(1),X4 MEM_DISP(esp,12)) - INSN1(je,_ ,L45) - INSN2(cmp,l ,NUM(2),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L6) -L45: - INSN2MOVX(movs,b ,X1 MEM_DISP(esp,24),R(eax)) - INSN1(jmp,_ ,L3) -L6: - INSN2(cmp,l ,NUM(3),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L8) - INSN2MOVX(movz,b ,X1 MEM_DISP(esp,24),R(eax)) - INSN1(jmp,_ ,L3) -L8: - INSN2(cmp,l ,NUM(4),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L10) - INSN2MOVX(movs,w ,X2 MEM_DISP(esp,24),R(eax)) - INSN1(jmp,_ ,L3) -L10: - INSN2(cmp,l ,NUM(5),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L12) - INSN2MOVX(movz,w ,X2 MEM_DISP(esp,24),R(eax)) - INSN1(jmp,_ ,L3) -L12: - INSN2(cmp,l ,NUM(6),X4 MEM_DISP(esp,12)) - INSN1(je,_ ,L46) - INSN2(cmp,l ,NUM(7),X4 MEM_DISP(esp,12)) - INSN1(je,_ ,L46) - INSN2(cmp,l ,NUM(8),X4 MEM_DISP(esp,12)) - INSN1(je,_ ,L46) - INSN2(cmp,l ,NUM(9),X4 MEM_DISP(esp,12)) - INSN1(je,_ ,L46) - INSN2(mov,l ,X4 MEM_DISP(esp,12),R(edx)) - INSN2(add,l ,NUM(-10),R(edx)) - INSN2(cmp,l ,NUM(1),R(edx)) - INSN1(ja,_ ,L22) - INSN2(mov,l ,X4 MEM_DISP(esp,24),R(eax)) - INSN2(mov,l ,X4 MEM_DISP(esp,28),R(edx)) - INSN1(jmp,_ ,L3) -L22: - INSN2(cmp,l ,NUM(12),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L24) - INSN1(fld,s ,X4 MEM_DISP(esp,24)) - INSN1(jmp,_ ,L3) -L24: - INSN2(cmp,l ,NUM(13),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L26) - INSN1(fld,l ,X8 MEM_DISP(esp,24)) - INSN1(jmp,_ ,L3) -L26: - INSN2(cmp,l ,NUM(14),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L28) -L46: - INSN2(mov,l ,X4 MEM_DISP(esp,24),R(eax)) - INSN1(jmp,_ ,L3) -L28: - INSN2(cmp,l ,NUM(15),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L3) - INSN2(test,b ,NUM(1),X1 MEM(esp)) - INSN1(jne,_ ,L47) - INSN2(test,b ,NUM(4),X1 MEM_DISP(esp,1)) - INSN1(je,_ ,L33) - INSN2(cmp,l ,NUM(1),X4 MEM_DISP(esp,16)) - INSN1(jne,_ ,L34) - INSN2(mov,l ,X4 MEM_DISP(esp,8),R(edx)) - INSN2MOVX(movz,b ,X1 MEM(edx),R(eax)) - INSN1(jmp,_ ,L3) -L34: - INSN2(cmp,l ,NUM(2),X4 MEM_DISP(esp,16)) - INSN1(jne,_ ,L37) - INSN2(mov,l ,X4 MEM_DISP(esp,8),R(edx)) - INSN2MOVX(movz,w ,X2 MEM(edx),R(eax)) - INSN1(jmp,_ ,L3) -L37: - INSN2(cmp,l ,NUM(4),X4 MEM_DISP(esp,16)) - INSN1(jne,_ ,L39) - INSN2(mov,l ,X4 MEM_DISP(esp,8),R(edx)) - INSN2(mov,l ,X4 MEM(edx),R(eax)) - INSN1(jmp,_ ,L3) -L39: - INSN2(cmp,l ,NUM(8),X4 MEM_DISP(esp,16)) - INSN1(jne,_ ,L33) - INSN2(mov,l ,X4 MEM_DISP(esp,8),R(edx)) - INSN2(mov,l ,X4 MEM(edx),R(eax)) - INSN2(mov,l ,X4 MEM_DISP(esp,8),R(edx)) - INSN2(mov,l ,X4 MEM_DISP(edx,4),R(edx)) - INSN1(jmp,_ ,L3) -L33: - INSN2(test,b ,NUM(24),X1 MEM(esp)) - INSN1(jne,_ ,L42) - INSN2(add,l ,NUM(36),R(esp)) - ret NUM(8) -L42: - INSN2(test,b ,NUM(16),X1 MEM(esp)) - INSN1(je,_ ,L3) -L47: - INSN2(mov,l ,X4 MEM_DISP(esp,8),R(eax)) -L3: - INSN2(test,b ,NUM(2),X1 MEM_DISP(esp,1)) - INSN1(je,_ ,L44) - INSN2(mov,l ,X4 MEM_DISP(esp,36),R(ecx)) - INSN2(mov,l ,X4 MEM_DISP(esp,4),R(esp)) - INSN1(jmp,_ ,INDIR(R(ecx))) -L44: - INSN2(add,l ,NUM(36),R(esp)) - ret NUM(4) - INSN2(add,l ,NUM(36),R(esp)) - ret -FUNEND() - DELETED ffcall/callback/vacall_r/vacall-i386-msvc.c Index: ffcall/callback/vacall_r/vacall-i386-msvc.c ================================================================== --- ffcall/callback/vacall_r/vacall-i386-msvc.c +++ /dev/null @@ -1,136 +0,0 @@ -#ifdef _MSC_VER -#include "vacall_r.h" -#endif -#include "asmi386.h" -TEXT() - ALIGN(2) -GLOBL(C(__vacall_r)) - DECLARE_FUNCTION(__vacall_r) -FUNBEGIN(__vacall_r) - INSN2(sub,l ,NUM(36),R(esp)) - INSN2(mov,l ,NUM(0),X4 MEM(esp)) - INSN2(lea,l ,X4 MEM_DISP(esp,44),R(ecx)) - INSN2(mov,l ,R(ecx),X4 MEM_DISP(esp,4)) - INSN2(mov,l ,NUM(0),X4 MEM_DISP(esp,8)) - INSN2(mov,l ,NUM(0),X4 MEM_DISP(esp,12)) - INSN2(mov,l ,R(ebx),X4 MEM_DISP(esp,32)) - INSN2(mov,l ,R(esp),R(edx)) - INSN1(push,l ,R(edx)) - INSN2(mov,l ,X4 MEM_DISP(esp,44),R(ecx)) - INSN2(mov,l ,X4 MEM_DISP(ecx,4),R(edx)) - INSN1(push,l ,R(edx)) - INSN2(mov,l ,X4 MEM_DISP(esp,48),R(ecx)) - INSN2(mov,l ,X4 MEM(ecx),R(edx)) - INSN1(call,_ ,INDIR(R(edx))) - INSN2(add,l ,NUM(8),R(esp)) - INSN2(cmp,l ,NUM(0),X4 MEM_DISP(esp,12)) - INSN1(je,_ ,L3) - INSN2(cmp,l ,NUM(1),X4 MEM_DISP(esp,12)) - INSN1(je,_ ,L45) - INSN2(cmp,l ,NUM(2),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L6) -L45: - INSN2MOVX(movs,b ,X1 MEM_DISP(esp,24),R(eax)) - INSN1(jmp,_ ,L3) -L6: - INSN2(cmp,l ,NUM(3),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L8) - INSN2MOVX(movz,b ,X1 MEM_DISP(esp,24),R(eax)) - INSN1(jmp,_ ,L3) -L8: - INSN2(cmp,l ,NUM(4),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L10) - INSN2MOVX(movs,w ,X2 MEM_DISP(esp,24),R(eax)) - INSN1(jmp,_ ,L3) -L10: - INSN2(cmp,l ,NUM(5),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L12) - INSN2MOVX(movz,w ,X2 MEM_DISP(esp,24),R(eax)) - INSN1(jmp,_ ,L3) -L12: - INSN2(cmp,l ,NUM(6),X4 MEM_DISP(esp,12)) - INSN1(je,_ ,L46) - INSN2(cmp,l ,NUM(7),X4 MEM_DISP(esp,12)) - INSN1(je,_ ,L46) - INSN2(cmp,l ,NUM(8),X4 MEM_DISP(esp,12)) - INSN1(je,_ ,L46) - INSN2(cmp,l ,NUM(9),X4 MEM_DISP(esp,12)) - INSN1(je,_ ,L46) - INSN2(mov,l ,X4 MEM_DISP(esp,12),R(edx)) - INSN2(add,l ,NUM(-10),R(edx)) - INSN2(cmp,l ,NUM(1),R(edx)) - INSN1(ja,_ ,L22) - INSN2(mov,l ,X4 MEM_DISP(esp,24),R(eax)) - INSN2(mov,l ,X4 MEM_DISP(esp,28),R(edx)) - INSN1(jmp,_ ,L3) -L22: - INSN2(cmp,l ,NUM(12),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L24) - INSN1(fld,s ,X4 MEM_DISP(esp,24)) - INSN1(jmp,_ ,L3) -L24: - INSN2(cmp,l ,NUM(13),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L26) - INSN1(fld,l ,X8 MEM_DISP(esp,24)) - INSN1(jmp,_ ,L3) -L26: - INSN2(cmp,l ,NUM(14),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L28) -L46: - INSN2(mov,l ,X4 MEM_DISP(esp,24),R(eax)) - INSN1(jmp,_ ,L3) -L28: - INSN2(cmp,l ,NUM(15),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L3) - INSN2(test,b ,NUM(1),X1 MEM(esp)) - INSN1(jne,_ ,L47) - INSN2(test,b ,NUM(4),X1 MEM_DISP(esp,1)) - INSN1(je,_ ,L33) - INSN2(cmp,l ,NUM(1),X4 MEM_DISP(esp,16)) - INSN1(jne,_ ,L34) - INSN2(mov,l ,X4 MEM_DISP(esp,8),R(edx)) - INSN2MOVX(movz,b ,X1 MEM(edx),R(eax)) - INSN1(jmp,_ ,L3) -L34: - INSN2(cmp,l ,NUM(2),X4 MEM_DISP(esp,16)) - INSN1(jne,_ ,L37) - INSN2(mov,l ,X4 MEM_DISP(esp,8),R(edx)) - INSN2MOVX(movz,w ,X2 MEM(edx),R(eax)) - INSN1(jmp,_ ,L3) -L37: - INSN2(cmp,l ,NUM(4),X4 MEM_DISP(esp,16)) - INSN1(jne,_ ,L39) - INSN2(mov,l ,X4 MEM_DISP(esp,8),R(edx)) - INSN2(mov,l ,X4 MEM(edx),R(eax)) - INSN1(jmp,_ ,L3) -L39: - INSN2(cmp,l ,NUM(8),X4 MEM_DISP(esp,16)) - INSN1(jne,_ ,L33) - INSN2(mov,l ,X4 MEM_DISP(esp,8),R(edx)) - INSN2(mov,l ,X4 MEM(edx),R(eax)) - INSN2(mov,l ,X4 MEM_DISP(esp,8),R(edx)) - INSN2(mov,l ,X4 MEM_DISP(edx,4),R(edx)) - INSN1(jmp,_ ,L3) -L33: - INSN2(test,b ,NUM(24),X1 MEM(esp)) - INSN1(jne,_ ,L42) - INSN2(add,l ,NUM(36),R(esp)) - ret NUM(8) -L42: - INSN2(test,b ,NUM(16),X1 MEM(esp)) - INSN1(je,_ ,L3) -L47: - INSN2(mov,l ,X4 MEM_DISP(esp,8),R(eax)) -L3: - INSN2(test,b ,NUM(2),X1 MEM_DISP(esp,1)) - INSN1(je,_ ,L44) - INSN2(mov,l ,X4 MEM_DISP(esp,36),R(ecx)) - INSN2(mov,l ,X4 MEM_DISP(esp,4),R(esp)) - INSN1(jmp,_ ,INDIR(R(ecx))) -L44: - INSN2(add,l ,NUM(36),R(esp)) - ret NUM(4) - INSN2(add,l ,NUM(36),R(esp)) - ret -FUNEND() - DELETED ffcall/callback/vacall_r/vacall-i386.c Index: ffcall/callback/vacall_r/vacall-i386.c ================================================================== --- ffcall/callback/vacall_r/vacall-i386.c +++ /dev/null @@ -1,166 +0,0 @@ -/* vacall function for i386 CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifndef REENTRANT -#include "vacall.h.in" -#else /* REENTRANT */ -#include "vacall_r.h.in" -#endif - -#ifdef REENTRANT -typedef struct { void (*vacall_function) (void*,va_alist); void* arg; } env_t; -#endif -register void* sp __asm__("%esp"); -register void* sret __asm__("%ebx"); -register int iret __asm__("%eax"); -/* - * Tell gcc to not use the call-saved registers %esi, %edi, %ebp. - * This ensures that the return sequence does not need to restore registers - * from the stack. - */ -register void* dummy1 __asm__("%esi"); -register void* dummy2 __asm__("%edi"); -register void* dummy3 __asm__("%ebp"); - -void /* the return type is variable, not void! */ -#ifdef REENTRANT -__vacall_r (env_t * env, __vaword firstword) -#else -__vacall (__vaword firstword) -#endif -{ - __va_alist list; - /* Prepare the va_alist. */ - list.flags = 0; - list.aptr = (long)&firstword; - list.raddr = (void*)0; - list.rtype = __VAvoid; - list.structraddr = sret; - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*vacall_function) (&list); -#else /* REENTRANT */ - (*env->vacall_function) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong || list.rtype == __VAulonglong) { - /* This code is EXTREMELY fragile!! */ - /* It depends on the register allocation chosen by gcc. */ - iret = ((__vaword *) &list.tmp._longlong)[0]; - asm volatile ("movl %0,%%edx" : : "g"(((__vaword *) &list.tmp._longlong)[1])); - } else - if (list.rtype == __VAfloat) { - asm volatile ("flds %0": : "m"(list.tmp._float)); - } else - if (list.rtype == __VAdouble) { - asm volatile ("fldl %0": : "m"(list.tmp._double)); - } else - if (list.rtype == __VAvoidp) { - iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - iret = (long) list.raddr; - } else { - /* normal struct return convention */ - if (list.flags & __VA_REGISTER_STRUCT_RETURN) { - if (list.rsize == sizeof(char)) { - iret = *(unsigned char *) list.raddr; - goto done; - } else - if (list.rsize == sizeof(short)) { - iret = *(unsigned short *) list.raddr; - goto done; - } else - if (list.rsize == sizeof(int)) { - iret = *(unsigned int *) list.raddr; - goto done; - } else - if (list.rsize == 2*sizeof(__vaword)) { - /* This code is EXTREMELY fragile!! */ - /* It depends on the register allocation chosen by gcc. */ - iret = ((__vaword *) list.raddr)[0]; - asm volatile ("movl %0,%%edx" : : "g"(((__vaword *) list.raddr)[1])); - goto done; - } - } - if (!(list.flags & (__VA_NEXTGCC_STRUCT_RETURN | __VA_MSVC_STRUCT_RETURN))) { - /* We have to pop the struct return address off the stack. */ - /* Callers compiled with -fomit-frame-pointer expect this. */ - /* Return via a "ret $4" instruction. */ - /* NOTE: This is EXTREMELY fragile. It depends on the fact that - * no registers have to be restored from the stack. Look at the - * assembly code! - */ - sp = __builtin_frame_address(0); -#ifndef REENTRANT - asm volatile ("ret $4"); -#else - /* Also pop env off the stack. */ - asm volatile ("ret $8"); -#endif - /*NOTREACHED*/ - } - if (list.flags & __VA_MSVC_STRUCT_RETURN) { - /* on MSVC, must put the structure address into %eax */ - iret = (long) list.raddr; - } - done: ; - } - } - if (list.flags & __VA_STDCALL_CLEANUP) { - /* Return, and at the same time pop the arguments off the stack. */ - /* Normally done through a "ret $n" instruction. */ - /* Be careful not to clobber %eax and %edx. Only %ecx can be used. */ - /* Use *__builtin_frame_address(0), since __builtin_return_address(0) - * is buggy in gcc-2.7.2. */ - asm volatile ("movl %0,%%ecx" : : "g" (*(void**)__builtin_frame_address(0))); - sp = (void*)list.aptr; - asm volatile ("jmp *%ecx"); - /*NOTREACHED*/ - } -#ifdef REENTRANT - /* Pop env off the stack. */ - /* Callers compiled with -fomit-frame-pointer expect this. */ - sp = __builtin_frame_address(0); - asm volatile ("ret $4"); -#endif -} DELETED ffcall/callback/vacall_r/vacall-ia64.c Index: ffcall/callback/vacall_r/vacall-ia64.c ================================================================== --- ffcall/callback/vacall_r/vacall-ia64.c +++ /dev/null @@ -1,203 +0,0 @@ -/* vacall function for ia64 CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifndef REENTRANT -#include "vacall.h.in" -#else /* REENTRANT */ -#include "vacall_r.h.in" -#endif - -#ifdef REENTRANT -#define __vacall __vacall_r -register struct { void (*vacall_function) (void*,va_alist); void* arg; } - * env __asm__("r15"); -#endif -register double farg1 __asm__("f8"); -register double farg2 __asm__("f9"); -register double farg3 __asm__("f10"); -register double farg4 __asm__("f11"); -register double farg5 __asm__("f12"); -register double farg6 __asm__("f13"); -register double farg7 __asm__("f14"); -register double farg8 __asm__("f15"); -register __vaword* sret __asm__("r8"); -register __vaword iret __asm__("r8"); -register __vaword iret2 __asm__("r9"); -register __vaword iret3 __asm__("r10"); -register __vaword iret4 __asm__("r11"); -register float fret __asm__("f8"); -register double dret __asm__("f8"); - -void /* the return type is variable, not void! */ -__vacall (__vaword word1, __vaword word2, __vaword word3, __vaword word4, - __vaword word5, __vaword word6, __vaword word7, __vaword word8, - __vaword firstword) -{ - /* The default scratch area right below firstword is only 2 words, but - we need 8 words. */ - __vaword room[6]; /* FRAGILE! */ - __va_alist list; - /* Move the arguments passed in registers to their stack locations. */ - (&firstword)[-8] = word1; - (&firstword)[-7] = word2; - (&firstword)[-6] = word3; - (&firstword)[-5] = word4; - (&firstword)[-4] = word5; - (&firstword)[-3] = word6; - (&firstword)[-2] = word7; - (&firstword)[-1] = word8; - list.farg[0] = farg1; - list.farg[1] = farg2; - list.farg[2] = farg3; - list.farg[3] = farg4; - list.farg[4] = farg5; - list.farg[5] = farg6; - list.farg[6] = farg7; - list.farg[7] = farg8; - /* Prepare the va_alist. */ - list.flags = 0; - list.aptr = (long)(&firstword - 8); - list.saptr = &firstword - 8; - list.memfargptr = &list.farg[0]; - list.raddr = (void*)0; - list.rtype = __VAvoid; - list.structraddr = sret; - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*vacall_function) (&list); -#else /* REENTRANT */ - (*env->vacall_function) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulonglong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAfloat) { - fret = list.tmp._float; - } else - if (list.rtype == __VAdouble) { - dret = list.tmp._double; - } else - if (list.rtype == __VAvoidp) { - iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - iret = (long) list.raddr; - } else { - /* normal struct return convention */ - if (list.flags & __VA_REGISTER_STRUCT_RETURN) { - /* Return structs of size <= 32 in registers. */ - if (list.rsize > 0 && list.rsize <= 32) { - iret = (__vaword)((unsigned char *) list.raddr)[0]; - if (list.rsize >= 2) - iret |= (__vaword)((unsigned char *) list.raddr)[1] << 8; - if (list.rsize >= 3) - iret |= (__vaword)((unsigned char *) list.raddr)[2] << 16; - if (list.rsize >= 4) - iret |= (__vaword)((unsigned char *) list.raddr)[3] << 24; - if (list.rsize >= 5) - iret |= (__vaword)((unsigned char *) list.raddr)[4] << 32; - if (list.rsize >= 6) - iret |= (__vaword)((unsigned char *) list.raddr)[5] << 40; - if (list.rsize >= 7) - iret |= (__vaword)((unsigned char *) list.raddr)[6] << 48; - if (list.rsize >= 8) - iret |= (__vaword)((unsigned char *) list.raddr)[7] << 56; - if (list.rsize >= 9) { - iret2 = (__vaword)((unsigned char *) list.raddr)[8]; - if (list.rsize >= 10) - iret2 |= (__vaword)((unsigned char *) list.raddr)[9] << 8; - if (list.rsize >= 11) - iret2 |= (__vaword)((unsigned char *) list.raddr)[10] << 16; - if (list.rsize >= 12) - iret2 |= (__vaword)((unsigned char *) list.raddr)[11] << 24; - if (list.rsize >= 13) - iret2 |= (__vaword)((unsigned char *) list.raddr)[12] << 32; - if (list.rsize >= 14) - iret2 |= (__vaword)((unsigned char *) list.raddr)[13] << 40; - if (list.rsize >= 15) - iret2 |= (__vaword)((unsigned char *) list.raddr)[14] << 48; - if (list.rsize >= 16) - iret2 |= (__vaword)((unsigned char *) list.raddr)[15] << 56; - if (list.rsize >= 17) { - iret3 = (__vaword)((unsigned char *) list.raddr)[16]; - if (list.rsize >= 18) - iret3 |= (__vaword)((unsigned char *) list.raddr)[17] << 8; - if (list.rsize >= 19) - iret3 |= (__vaword)((unsigned char *) list.raddr)[18] << 16; - if (list.rsize >= 20) - iret3 |= (__vaword)((unsigned char *) list.raddr)[19] << 24; - if (list.rsize >= 21) - iret3 |= (__vaword)((unsigned char *) list.raddr)[20] << 32; - if (list.rsize >= 22) - iret3 |= (__vaword)((unsigned char *) list.raddr)[21] << 40; - if (list.rsize >= 23) - iret3 |= (__vaword)((unsigned char *) list.raddr)[22] << 48; - if (list.rsize >= 24) - iret3 |= (__vaword)((unsigned char *) list.raddr)[23] << 56; - if (list.rsize >= 25) { - iret4 = (__vaword)((unsigned char *) list.raddr)[24]; - if (list.rsize >= 26) - iret4 |= (__vaword)((unsigned char *) list.raddr)[25] << 8; - if (list.rsize >= 27) - iret4 |= (__vaword)((unsigned char *) list.raddr)[26] << 16; - if (list.rsize >= 28) - iret4 |= (__vaword)((unsigned char *) list.raddr)[27] << 24; - if (list.rsize >= 29) - iret4 |= (__vaword)((unsigned char *) list.raddr)[28] << 32; - if (list.rsize >= 30) - iret4 |= (__vaword)((unsigned char *) list.raddr)[29] << 40; - if (list.rsize >= 31) - iret4 |= (__vaword)((unsigned char *) list.raddr)[30] << 48; - if (list.rsize >= 32) - iret4 |= (__vaword)((unsigned char *) list.raddr)[31] << 56; - } - } - } - } - } - } - } -} DELETED ffcall/callback/vacall_r/vacall-ia64.s Index: ffcall/callback/vacall_r/vacall-ia64.s ================================================================== --- ffcall/callback/vacall_r/vacall-ia64.s +++ /dev/null @@ -1,555 +0,0 @@ - .file "vacall-ia64.c" - .version "01.01" -.text - .align 16 - .global __vacall_r# - .proc __vacall_r# -__vacall_r: - alloc r44 = ar.pfs, 8, 5, 2, 0 - adds r12 = -208, r12 - mov r43 = b0 - ;; - adds r16 = 208, r12 - adds r14 = 224, r12 - adds r17 = 208, r12 - ;; - adds r22 = -112, r16 - adds r21 = -64, r14 - adds r23 = 208, r12 - adds r16 = -56, r14 - ;; - stfd [r22] = f8 - st8 [r21] = r32 - adds r14 = -104, r17 - st8 [r16] = r33 - adds r18 = 224, r12 - ;; - stfd [r14] = f9 - adds r17 = -96, r17 - adds r16 = -48, r18 - ;; - stfd [r17] = f10 - adds r14 = -88, r23 - st8 [r16] = r34 - ;; - stfd [r14] = f11 - adds r18 = -40, r18 - adds r17 = 224, r12 - adds r14 = 224, r12 - ;; - st8 [r18] = r35 - adds r42 = -176, r23 - adds r16 = -32, r14 - addl r18 = 0, r0 - adds r41 = -192, r23 - adds r14 = -80, r23 - ;; - st8 [r16] = r36 - st8 [r42] = r18 - stfd [r14] = f12 - adds r16 = -24, r17 - adds r40 = -168, r23 - adds r14 = -72, r23 - ;; - st8 [r16] = r37 - adds r17 = -16, r17 - stfd [r14] = f13 - adds r16 = -64, r23 - ;; - st8 [r17] = r38 - adds r14 = 208, r12 - stfd [r16] = f14 - adds r23 = 224, r12 - ;; - adds r19 = -56, r14 - adds r20 = -184, r14 - adds r18 = 208, r12 - adds r14 = -128, r14 - adds r17 = -8, r23 - ;; - adds r16 = -120, r18 - st8 [r14] = r21 - st8 [r17] = r39 - ;; - st8 [r16] = r22 - addl r23 = 0, r0 - mov r14 = r15 - adds r18 = -136, r18 - ;; - st8 [r18] = r8 - st4 [r40] = r23 - ld8 r16 = [r14], 8 - stfd [r19] = f15 - st8 [r20] = r21 - st4 [r41] = r23 - ;; - ld8 r17 = [r16], 8 - ld8 r45 = [r14] - mov r46 = r41 - ;; - ld8 r1 = [r16] - mov b6 = r17 - ;; - br.call.sptk.many b0 = b6 ;; - ld4 r40 = [r40] - ;; - cmp4.ne p6, p7 = 0, r40 - (p7) br.cond.dpnt .L4 - ;; - cmp4.ne p6, p7 = 1, r40 - (p6) br.cond.dptk .L5 - adds r16 = 208, r12 - ;; - adds r14 = -152, r16 - br .L69 -.L5: - cmp4.ne p6, p7 = 2, r40 - (p6) br.cond.dptk .L7 - adds r17 = 208, r12 - ;; - adds r14 = -152, r17 - ;; -.L69: - ld1 r16 = [r14] - ;; - sxt1 r8 = r16 - br .L4 -.L7: - cmp4.ne p6, p7 = 3, r40 - (p6) br.cond.dptk .L9 - adds r18 = 208, r12 - ;; - adds r14 = -152, r18 - ;; - ld1 r8 = [r14] - br .L4 -.L9: - cmp4.ne p6, p7 = 4, r40 - (p6) br.cond.dptk .L11 - adds r23 = 208, r12 - ;; - adds r14 = -152, r23 - ;; - ld2 r16 = [r14] - ;; - sxt2 r8 = r16 - br .L4 -.L11: - cmp4.ne p6, p7 = 5, r40 - (p6) br.cond.dptk .L13 - adds r16 = 208, r12 - ;; - adds r14 = -152, r16 - ;; - ld2 r8 = [r14] - br .L4 -.L13: - cmp4.ne p6, p7 = 6, r40 - (p6) br.cond.dptk .L15 - adds r17 = 208, r12 - ;; - adds r14 = -152, r17 - ;; - ld4 r16 = [r14] - ;; - sxt4 r8 = r16 - br .L4 -.L15: - cmp4.ne p6, p7 = 7, r40 - (p6) br.cond.dptk .L17 - adds r18 = 208, r12 - ;; - adds r14 = -152, r18 - ;; - ld4 r8 = [r14] - br .L4 -.L17: - cmp4.ne p6, p7 = 8, r40 - (p6) br.cond.dptk .L19 - adds r23 = 208, r12 - ;; - adds r14 = -152, r23 - ;; - ld8 r8 = [r14] - br .L4 -.L19: - cmp4.ne p6, p7 = 9, r40 - (p6) br.cond.dptk .L21 - adds r16 = 208, r12 - ;; - adds r14 = -152, r16 - ;; - ld8 r8 = [r14] - br .L4 -.L21: - cmp4.ne p6, p7 = 10, r40 - (p7) br.cond.dpnt .L70 - ;; - cmp4.ne p6, p7 = 11, r40 - (p6) br.cond.dptk .L25 - adds r18 = 208, r12 - ;; - adds r14 = -152, r18 - ;; - ld8 r8 = [r14] - br .L4 -.L25: - cmp4.ne p6, p7 = 12, r40 - (p6) br.cond.dptk .L27 - adds r23 = 208, r12 - ;; - adds r14 = -152, r23 - ;; - ldfs f8 = [r14] - br .L4 -.L27: - cmp4.ne p6, p7 = 13, r40 - (p6) br.cond.dptk .L29 - adds r16 = 208, r12 - ;; - adds r14 = -152, r16 - ;; - ldfd f8 = [r14] - br .L4 -.L29: - cmp4.ne p6, p7 = 14, r40 - (p6) br.cond.dptk .L31 -.L70: - adds r17 = 208, r12 - ;; - adds r14 = -152, r17 - ;; - ld8 r8 = [r14] - br .L4 -.L31: - cmp4.ne p6, p7 = 15, r40 - (p6) br.cond.dptk .L4 - ld4 r16 = [r41] - ;; - and r14 = 1, r16 - ;; - cmp4.eq p6, p7 = 0, r14 - (p6) br.cond.dptk .L34 - ld8 r8 = [r42] - br .L4 -.L34: - addl r14 = 1024, r0 - ;; - and r14 = r14, r16 - ;; - cmp4.eq p6, p7 = 0, r14 - (p6) br.cond.dptk .L4 - adds r18 = 208, r12 - ;; - adds r14 = -160, r18 - ;; - ld8 r18 = [r14] - ;; - adds r16 = -1, r18 - ;; - cmp.ltu p6, p7 = 31, r16 - (p6) br.cond.dptk .L4 - ld8 r17 = [r42] - ;; - cmp.geu p6, p7 = 1, r18 - ld1 r8 = [r17] - (p6) br.cond.dptk .L38 - adds r16 = 1, r17 - ;; - ld1 r14 = [r16] - ;; - shl r14 = r14, 8 - ;; - or r8 = r14, r8 -.L38: - cmp.geu p6, p7 = 2, r18 - (p6) br.cond.dptk .L39 - adds r16 = 2, r17 - ;; - ld1 r14 = [r16] - ;; - shl r14 = r14, 16 - ;; - or r8 = r14, r8 -.L39: - cmp.geu p6, p7 = 3, r18 - (p6) br.cond.dptk .L40 - adds r16 = 3, r17 - ;; - ld1 r14 = [r16] - ;; - shl r14 = r14, 24 - ;; - or r8 = r14, r8 -.L40: - cmp.geu p6, p7 = 4, r18 - (p6) br.cond.dptk .L41 - adds r16 = 4, r17 - ;; - ld1 r14 = [r16] - ;; - shl r14 = r14, 32 - ;; - or r8 = r14, r8 -.L41: - cmp.geu p6, p7 = 5, r18 - (p6) br.cond.dptk .L42 - adds r16 = 5, r17 - ;; - ld1 r14 = [r16] - ;; - shl r14 = r14, 40 - ;; - or r8 = r14, r8 -.L42: - cmp.geu p6, p7 = 6, r18 - (p6) br.cond.dptk .L43 - adds r16 = 6, r17 - ;; - ld1 r14 = [r16] - ;; - shl r14 = r14, 48 - ;; - or r8 = r14, r8 -.L43: - cmp.geu p6, p7 = 7, r18 - (p6) br.cond.dptk .L44 - adds r16 = 7, r17 - ;; - ld1 r14 = [r16] - ;; - shl r14 = r14, 56 - ;; - or r8 = r14, r8 -.L44: - cmp.geu p6, p7 = 8, r18 - (p6) br.cond.dptk .L4 - adds r14 = 8, r17 - ;; - cmp.geu p6, p7 = 9, r18 - ld1 r9 = [r14] - (p6) br.cond.dptk .L46 - adds r16 = 9, r17 - ;; - ld1 r14 = [r16] - ;; - shl r14 = r14, 8 - ;; - or r9 = r14, r9 -.L46: - cmp.geu p6, p7 = 10, r18 - (p6) br.cond.dptk .L47 - adds r16 = 10, r17 - ;; - ld1 r14 = [r16] - ;; - shl r14 = r14, 16 - ;; - or r9 = r14, r9 -.L47: - cmp.geu p6, p7 = 11, r18 - (p6) br.cond.dptk .L48 - adds r16 = 11, r17 - ;; - ld1 r14 = [r16] - ;; - shl r14 = r14, 24 - ;; - or r9 = r14, r9 -.L48: - cmp.geu p6, p7 = 12, r18 - (p6) br.cond.dptk .L49 - adds r16 = 12, r17 - ;; - ld1 r14 = [r16] - ;; - shl r14 = r14, 32 - ;; - or r9 = r14, r9 -.L49: - cmp.geu p6, p7 = 13, r18 - (p6) br.cond.dptk .L50 - adds r16 = 13, r17 - ;; - ld1 r14 = [r16] - ;; - shl r14 = r14, 40 - ;; - or r9 = r14, r9 -.L50: - cmp.geu p6, p7 = 14, r18 - (p6) br.cond.dptk .L51 - adds r16 = 14, r17 - ;; - ld1 r14 = [r16] - ;; - shl r14 = r14, 48 - ;; - or r9 = r14, r9 -.L51: - cmp.geu p6, p7 = 15, r18 - (p6) br.cond.dptk .L52 - adds r16 = 15, r17 - ;; - ld1 r14 = [r16] - ;; - shl r14 = r14, 56 - ;; - or r9 = r14, r9 -.L52: - cmp.geu p6, p7 = 16, r18 - (p6) br.cond.dptk .L4 - adds r14 = 16, r17 - ;; - cmp.geu p6, p7 = 17, r18 - ld1 r10 = [r14] - (p6) br.cond.dptk .L54 - adds r16 = 17, r17 - ;; - ld1 r14 = [r16] - ;; - shl r14 = r14, 8 - ;; - or r10 = r14, r10 -.L54: - cmp.geu p6, p7 = 18, r18 - (p6) br.cond.dptk .L55 - adds r16 = 18, r17 - ;; - ld1 r14 = [r16] - ;; - shl r14 = r14, 16 - ;; - or r10 = r14, r10 -.L55: - cmp.geu p6, p7 = 19, r18 - (p6) br.cond.dptk .L56 - adds r16 = 19, r17 - ;; - ld1 r14 = [r16] - ;; - shl r14 = r14, 24 - ;; - or r10 = r14, r10 -.L56: - cmp.geu p6, p7 = 20, r18 - (p6) br.cond.dptk .L57 - adds r16 = 20, r17 - ;; - ld1 r14 = [r16] - ;; - shl r14 = r14, 32 - ;; - or r10 = r14, r10 -.L57: - cmp.geu p6, p7 = 21, r18 - (p6) br.cond.dptk .L58 - adds r16 = 21, r17 - ;; - ld1 r14 = [r16] - ;; - shl r14 = r14, 40 - ;; - or r10 = r14, r10 -.L58: - cmp.geu p6, p7 = 22, r18 - (p6) br.cond.dptk .L59 - adds r16 = 22, r17 - ;; - ld1 r14 = [r16] - ;; - shl r14 = r14, 48 - ;; - or r10 = r14, r10 -.L59: - cmp.geu p6, p7 = 23, r18 - (p6) br.cond.dptk .L60 - adds r16 = 23, r17 - ;; - ld1 r14 = [r16] - ;; - shl r14 = r14, 56 - ;; - or r10 = r14, r10 -.L60: - cmp.geu p6, p7 = 24, r18 - (p6) br.cond.dptk .L4 - adds r14 = 24, r17 - ;; - cmp.geu p6, p7 = 25, r18 - ld1 r11 = [r14] - (p6) br.cond.dptk .L62 - adds r16 = 25, r17 - ;; - ld1 r14 = [r16] - ;; - shl r14 = r14, 8 - ;; - or r11 = r14, r11 -.L62: - cmp.geu p6, p7 = 26, r18 - (p6) br.cond.dptk .L63 - adds r16 = 26, r17 - ;; - ld1 r14 = [r16] - ;; - shl r14 = r14, 16 - ;; - or r11 = r14, r11 -.L63: - cmp.geu p6, p7 = 27, r18 - (p6) br.cond.dptk .L64 - adds r16 = 27, r17 - ;; - ld1 r14 = [r16] - ;; - shl r14 = r14, 24 - ;; - or r11 = r14, r11 -.L64: - cmp.geu p6, p7 = 28, r18 - (p6) br.cond.dptk .L65 - adds r16 = 28, r17 - ;; - ld1 r14 = [r16] - ;; - shl r14 = r14, 32 - ;; - or r11 = r14, r11 -.L65: - cmp.geu p6, p7 = 29, r18 - (p6) br.cond.dptk .L66 - adds r16 = 29, r17 - ;; - ld1 r14 = [r16] - ;; - shl r14 = r14, 40 - ;; - or r11 = r14, r11 -.L66: - cmp.geu p6, p7 = 30, r18 - (p6) br.cond.dptk .L67 - adds r16 = 30, r17 - ;; - ld1 r14 = [r16] - ;; - shl r14 = r14, 48 - ;; - or r11 = r14, r11 -.L67: - cmp.geu p6, p7 = 31, r18 - (p6) br.cond.dptk .L4 - adds r16 = 31, r17 - ;; - ld1 r14 = [r16] - ;; - shl r14 = r14, 56 - ;; - or r11 = r14, r11 -.L4: - adds r12 = 208, r12 - mov ar.pfs = r44 - mov b0 = r43 - br.ret.sptk.many b0 - .endp __vacall_r# - .ident "GCC: (GNU) 2.9-ia64-000216 snap-000324" DELETED ffcall/callback/vacall_r/vacall-m68k.c Index: ffcall/callback/vacall_r/vacall-m68k.c ================================================================== --- ffcall/callback/vacall_r/vacall-m68k.c +++ /dev/null @@ -1,132 +0,0 @@ -/* vacall function for m68k CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifndef REENTRANT -#include "vacall.h.in" -#else /* REENTRANT */ -#include "vacall_r.h.in" -#endif - -#ifdef REENTRANT -#define __vacall __vacall_r -register struct { void (*vacall_function) (void*,va_alist); void* arg; } - * env __asm__("a0"); -#endif -register void* sret __asm__("a1"); -register int iret __asm__("d0"); -register int iret2 __asm__("d1"); -register int pret __asm__("a0"); /* some compilers return pointers in a0 */ -register float fret __asm__("d0"); /* d0 */ -register double dret __asm__("d0"); /* d0,d1 */ -register float fp_fret __asm__("fp0"); -register double fp_dret __asm__("fp0"); - -void /* the return type is variable, not void! */ -__vacall (__vaword firstword) -{ - __va_alist list; - /* Prepare the va_alist. */ - list.flags = 0; - list.aptr = (long)&firstword; - list.raddr = (void*)0; - list.rtype = __VAvoid; - list.structraddr = sret; - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*vacall_function) (&list); -#else /* REENTRANT */ - (*env->vacall_function) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong || list.rtype == __VAulonglong) { - iret = ((__vaword *) &list.tmp._longlong)[0]; - iret2 = ((__vaword *) &list.tmp._longlong)[1]; - } else - if (list.rtype == __VAfloat) { - if (list.flags & __VA_FREG_FLOAT_RETURN) { - fp_fret = list.tmp._float; - } else { - if (list.flags & __VA_SUNCC_FLOAT_RETURN) { - dret = (double)list.tmp._float; - } else { - fret = list.tmp._float; - } - } - } else - if (list.rtype == __VAdouble) { - if (list.flags & __VA_FREG_FLOAT_RETURN) { - fp_dret = list.tmp._double; - } else { - dret = list.tmp._double; - } - } else - if (list.rtype == __VAvoidp) { - pret = iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - /* NB: On m68k, all structure sizes are divisible by 2. */ - if (list.flags & __VA_REGISTER_STRUCT_RETURN) { - if (list.rsize == sizeof(char)) { /* can't occur */ - iret = *(unsigned char *) list.raddr; - goto done; - } else - if (list.rsize == sizeof(short)) { - iret = *(unsigned short *) list.raddr; - goto done; - } else - if (list.rsize == sizeof(int)) { - iret = *(unsigned int *) list.raddr; - goto done; - } else - if (list.rsize == 2*sizeof(__vaword)) { - iret = ((__vaword *) list.raddr)[0]; - iret2 = ((__vaword *) list.raddr)[1]; - goto done; - } - } - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - pret = iret = (long) list.raddr; - } else { - /* normal struct return convention */ - } - done: ; - } -} DELETED ffcall/callback/vacall_r/vacall-m68k.mit.S Index: ffcall/callback/vacall_r/vacall-m68k.mit.S ================================================================== --- ffcall/callback/vacall_r/vacall-m68k.mit.S +++ /dev/null @@ -1,180 +0,0 @@ -#include "asmm68k.h" -.text - .even -.globl C(__vacall_r) - DECLARE_FUNCTION(__vacall_r) -C(__vacall_r:) - link $a6,#-32 - moveml #0x3020,$sp@- - clrl $a6@(-32) - lea $a6@(8),$a2 - movel $a2,$a6@(-28) - clrl $a6@(-24) - clrl $a6@(-20) - movel $a1,$a6@(-4) - pea $a6@(-32) - movel $a0@(4),$sp@- - movel $a0@,$a2 - jbsr $a2@ - addql #8,$sp - movel $a6@(-20),$d2 - jeq L4 - moveq #1,$d3 - cmpl $d2,$d3 - jeq L49 - moveq #2,$d3 - cmpl $d2,$d3 - jne L7 -L49: - moveb $a6@(-12),$d0 - extbl $d0 - jra L4 - .even -L7: - moveq #3,$d3 - cmpl $d2,$d3 - jne L9 - clrl $d0 - moveb $a6@(-12),$d0 - jra L4 - .even -L9: - moveq #4,$d3 - cmpl $d2,$d3 - jne L11 - movew $a6@(-12),$d0 - extl $d0 - jra L4 - .even -L11: - moveq #5,$d3 - cmpl $d2,$d3 - jne L13 - clrl $d0 - movew $a6@(-12),$d0 - jra L4 - .even -L13: - moveq #6,$d3 - cmpl $d2,$d3 - jeq L50 - moveq #7,$d3 - cmpl $d2,$d3 - jeq L50 - moveq #8,$d3 - cmpl $d2,$d3 - jeq L50 - moveq #9,$d3 - cmpl $d2,$d3 - jne L21 -L50: - movel $a6@(-12),$d0 - jra L4 - .even -L21: - moveq #-10,$d3 - addl $d3,$d2 - moveq #1,$d3 - cmpl $d2,$d3 - jcs L23 - movel $a6@(-12),$d0 - movel $a6@(-8),$d1 - jra L4 - .even -L23: - movel $a6@(-20),$d2 - moveq #12,$d3 - cmpl $d2,$d3 - jne L25 - movel $a6@(-32),$d2 - btst #6,$d2 - jeq L26 - fmoves $a6@(-12),$fp0 - jra L4 - .even -L26: - btst #5,$d2 - jeq L28 - fmoves $a6@(-12),$fp1 - fmoved $fp1,$sp@- - movel $sp@+,$d0 - movel $sp@+,$d1 - jra L4 - .even -L28: - movel $a6@(-12),$d0 - jra L4 - .even -L25: - moveq #13,$d3 - cmpl $d2,$d3 - jne L31 - btst #6,$a6@(-29) - jeq L32 - fmoved $a6@(-12),$fp0 - jra L4 - .even -L32: - movel $a6@(-12),$d0 - movel $a6@(-8),$d1 - jra L4 - .even -L31: - moveq #14,$d3 - cmpl $d2,$d3 - jne L35 - movel $a6@(-12),$d0 - jra L51 - .even -L35: - moveq #15,$d3 - cmpl $d2,$d3 - jne L4 - movel $a6@(-32),$d2 - btst #10,$d2 - jeq L38 - movel $a6@(-16),$a2 - moveq #1,$d3 - cmpl $a2,$d3 - jne L39 - movel $a6@(-24),$a2 - clrl $d0 - moveb $a2@,$d0 - jra L4 - .even -L39: - moveq #2,$d3 - cmpl $a2,$d3 - jne L42 - movel $a6@(-24),$a2 - clrl $d0 - movew $a2@,$d0 - jra L4 - .even -L42: - moveq #4,$d3 - cmpl $a2,$d3 - jne L44 - movel $a6@(-24),$a2 - movel $a2@,$d0 - jra L4 - .even -L44: - moveq #8,$d3 - cmpl $a2,$d3 - jne L38 - movel $a6@(-24),$a2 - movel $a2@,$d0 - movel $a2@(4),$d1 - jra L4 - .even -L38: - btst #0,$d2 - jeq L4 - movel $a6@(-24),$d0 -L51: - movel $d0,$a0 -L4: - moveml $a6@(-44),#0x40c - unlk $a6 - rts DELETED ffcall/callback/vacall_r/vacall-m68k.mot.s Index: ffcall/callback/vacall_r/vacall-m68k.mot.s ================================================================== --- ffcall/callback/vacall_r/vacall-m68k.mot.s +++ /dev/null @@ -1,185 +0,0 @@ - .file "vacall-m68k.c" - .version "01.01" -gcc2_compiled.: -.text - .align 2 -.globl __vacall_r - .type __vacall_r,@function -__vacall_r: - link.w %a6,#-32 - movm.l #0x3020,-(%sp) - clr.l -32(%a6) - lea (8,%a6),%a2 - move.l %a2,-28(%a6) - clr.l -24(%a6) - clr.l -20(%a6) - move.l %a1,-4(%a6) - pea -32(%a6) - move.l 4(%a0),-(%sp) - move.l (%a0),%a2 - jbsr (%a2) - addq.l #8,%sp - move.l -20(%a6),%d2 - jbeq .L4 - moveq.l #1,%d3 - cmp.l %d2,%d3 - jbeq .L49 - moveq.l #2,%d3 - cmp.l %d2,%d3 - jbne .L7 -.L49: - move.b -12(%a6),%d0 - extb.l %d0 - jbra .L4 - .align 2 -.L7: - moveq.l #3,%d3 - cmp.l %d2,%d3 - jbne .L9 - clr.l %d0 - move.b -12(%a6),%d0 - jbra .L4 - .align 2 -.L9: - moveq.l #4,%d3 - cmp.l %d2,%d3 - jbne .L11 - move.w -12(%a6),%d0 - ext.l %d0 - jbra .L4 - .align 2 -.L11: - moveq.l #5,%d3 - cmp.l %d2,%d3 - jbne .L13 - clr.l %d0 - move.w -12(%a6),%d0 - jbra .L4 - .align 2 -.L13: - moveq.l #6,%d3 - cmp.l %d2,%d3 - jbeq .L50 - moveq.l #7,%d3 - cmp.l %d2,%d3 - jbeq .L50 - moveq.l #8,%d3 - cmp.l %d2,%d3 - jbeq .L50 - moveq.l #9,%d3 - cmp.l %d2,%d3 - jbne .L21 -.L50: - move.l -12(%a6),%d0 - jbra .L4 - .align 2 -.L21: - moveq.l #-10,%d3 - add.l %d3,%d2 - moveq.l #1,%d3 - cmp.l %d2,%d3 - jbcs .L23 - move.l -12(%a6),%d0 - move.l -8(%a6),%d1 - jbra .L4 - .align 2 -.L23: - move.l -20(%a6),%d2 - moveq.l #12,%d3 - cmp.l %d2,%d3 - jbne .L25 - move.l -32(%a6),%d2 - btst #6,%d2 - jbeq .L26 - fmove.s -12(%a6),%fp0 - jbra .L4 - .align 2 -.L26: - btst #5,%d2 - jbeq .L28 - fmove.s -12(%a6),%fp1 - fmove.d %fp1,-(%sp) - move.l (%sp)+,%d0 - move.l (%sp)+,%d1 - jbra .L4 - .align 2 -.L28: - move.l -12(%a6),%d0 - jbra .L4 - .align 2 -.L25: - moveq.l #13,%d3 - cmp.l %d2,%d3 - jbne .L31 - btst #6,-29(%a6) - jbeq .L32 - fmove.d -12(%a6),%fp0 - jbra .L4 - .align 2 -.L32: - move.l -12(%a6),%d0 - move.l -8(%a6),%d1 - jbra .L4 - .align 2 -.L31: - moveq.l #14,%d3 - cmp.l %d2,%d3 - jbne .L35 - move.l -12(%a6),%d0 - jbra .L51 - .align 2 -.L35: - moveq.l #15,%d3 - cmp.l %d2,%d3 - jbne .L4 - move.l -32(%a6),%d2 - btst #10,%d2 - jbeq .L38 - move.l -16(%a6),%a2 - moveq.l #1,%d3 - cmp.l %a2,%d3 - jbne .L39 - move.l -24(%a6),%a2 - clr.l %d0 - move.b (%a2),%d0 - jbra .L4 - .align 2 -.L39: - moveq.l #2,%d3 - cmp.l %a2,%d3 - jbne .L42 - move.l -24(%a6),%a2 - clr.l %d0 - move.w (%a2),%d0 - jbra .L4 - .align 2 -.L42: - moveq.l #4,%d3 - cmp.l %a2,%d3 - jbne .L44 - move.l -24(%a6),%a2 - move.l (%a2),%d0 - jbra .L4 - .align 2 -.L44: - moveq.l #8,%d3 - cmp.l %a2,%d3 - jbne .L38 - move.l -24(%a6),%a2 - move.l (%a2),%d0 - move.l 4(%a2),%d1 - jbra .L4 - .align 2 -.L38: - btst #0,%d2 - jbeq .L4 - move.l -24(%a6),%d0 -.L51: - move.l %d0,%a0 -.L4: - movm.l -44(%a6),#0x40c - unlk %a6 - rts -.Lfe1: - .size __vacall_r,.Lfe1-__vacall_r - .ident "GCC: (GNU) 2.95.2 19991024 (release)" DELETED ffcall/callback/vacall_r/vacall-m88k.c Index: ffcall/callback/vacall_r/vacall-m88k.c ================================================================== --- ffcall/callback/vacall_r/vacall-m88k.c +++ /dev/null @@ -1,126 +0,0 @@ -/* vacall function for m88k CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifndef REENTRANT -#include "vacall.h.in" -#else /* REENTRANT */ -#include "vacall_r.h.in" -#endif - -#ifdef REENTRANT -#define __vacall __vacall_r -register struct { void (*vacall_function) (void*,va_alist); void* arg; } - * env __asm__("r11"); -#endif -register __vaword* sret __asm__("r12"); -register int iret __asm__("r2"); -register int iret2 __asm__("r3"); -register float fret __asm__("r2"); -register double dret __asm__("r2"); - -void /* the return type is variable, not void! */ -__vacall (__vaword word1, __vaword word2, __vaword word3, __vaword word4, - __vaword word5, __vaword word6, __vaword word7, __vaword word8, - __vaword firstword) -{ - __va_alist list; - /* gcc-2.6.3 source says: When a parameter is passed in a register, - * stack space is still allocated for it. - */ - /* Move the arguments passed in registers to their stack locations. */ - /* - * Is this correct?? I think struct arguments among the first 8 words - * are passed on the stack, not in registers, and we shouldn't overwrite - * them. - */ - (&firstword)[-8] = word1; - (&firstword)[-7] = word2; - (&firstword)[-6] = word3; - (&firstword)[-5] = word4; - (&firstword)[-4] = word5; - (&firstword)[-3] = word6; - (&firstword)[-2] = word7; - (&firstword)[-1] = word8; - /* Prepare the va_alist. */ - list.flags = 0; - list.aptr = (long)&firstword; - list.raddr = (void*)0; - list.rtype = __VAvoid; - list.structraddr = sret; - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*vacall_function) (&list); -#else /* REENTRANT */ - (*env->vacall_function) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong || list.rtype == __VAulonglong) { - iret = ((__vaword *) &list.tmp._longlong)[0]; - iret2 = ((__vaword *) &list.tmp._longlong)[1]; - } else - if (list.rtype == __VAfloat) { - fret = list.tmp._float; - } else - if (list.rtype == __VAdouble) { - dret = list.tmp._double; - } else - if (list.rtype == __VAvoidp) { - iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - iret = (long) list.raddr; - } else { - /* normal struct return convention */ - if (list.flags & __VA_SMALL_STRUCT_RETURN) { - if (list.rsize == sizeof(char)) { - iret = *(unsigned char *) list.raddr; - } else - if (list.rsize == sizeof(short)) { - iret = *(unsigned short *) list.raddr; - } else - if (list.rsize == sizeof(int)) { - iret = *(unsigned int *) list.raddr; - } - } - } - } -} DELETED ffcall/callback/vacall_r/vacall-m88k.s Index: ffcall/callback/vacall_r/vacall-m88k.s ================================================================== --- ffcall/callback/vacall_r/vacall-m88k.s +++ /dev/null @@ -1,134 +0,0 @@ - version "03.00" - file "vacall-m88k.c" -data -gcc2_compiled.: -text - align 8 - global __vacall_r - type __vacall_r,#function -__vacall_r: - ld #r10,#r0,#r11 - subu #r31,#r31,80 - st #r2,#r31,80 - ld #r2,#r11,4 - st #r1,#r31,36 -.Ltb0: - st #r3,#r31,84 - st #r4,#r31,88 - st #r5,#r31,92 - st #r6,#r31,96 - st #r7,#r31,100 - st #r8,#r31,104 - st #r9,#r31,108 - st #r0,#r31,40 - addu #r13,#r31,112 - st #r13,#r31,44 - st #r0,#r31,48 - st #r0,#r31,52 - addu #r3,#r31,40 - jsr.n #r10 - st #r12,#r31,72 - ld #r10,#r31,52 - bcnd.n #eq0,#r10,.L4 - cmp #r13,#r10,1 - bb0.n #ne,#r13,.L40 - cmp #r13,#r10,2 - bb1.n #ne,#r13,.L7 - cmp #r13,#r10,3 -.L40: - ld.b #r2,#r31,64 - br .L4 - align 4 -.L7: - bb1.n #ne,#r13,.L9 - cmp #r13,#r10,4 - ld.bu #r2,#r31,64 - br .L4 - align 4 -.L9: - bb1.n #ne,#r13,.L11 - cmp #r13,#r10,5 - ld.h #r2,#r31,64 - br .L4 - align 4 -.L11: - bb1.n #ne,#r13,.L13 - cmp #r13,#r10,6 - ld.hu #r2,#r31,64 - br .L4 - align 4 -.L13: - bb0.n #ne,#r13,.L41 - cmp #r13,#r10,7 - bb0.n #ne,#r13,.L41 - cmp #r13,#r10,8 - bb0.n #ne,#r13,.L41 - cmp #r13,#r10,9 - bb0.n #ne,#r13,.L41 - subu #r13,#r10,10 - cmp #r13,#r13,1 - bb0 #ls,#r13,.L23 - ld #r2,#r31,64 - ld #r3,#r31,68 - br .L4 - align 4 -.L23: - ld #r10,#r31,52 - cmp #r13,#r10,12 - bb1.n #ne,#r13,.L25 - cmp #r13,#r10,13 - ld #r2,#r31,64 - br .L4 - align 4 -.L25: - bb1.n #ne,#r13,.L27 - cmp #r13,#r10,14 - ld.d #r2,#r31,64 - br .L4 - align 4 -.L27: - bb1.n #ne,#r13,.L29 - cmp #r13,#r10,15 -.L41: - ld #r2,#r31,64 - br .L4 - align 4 -.L29: - bb0 #eq,#r13,.L4 - ld #r13,#r31,40 - bb0 (31-31),#r13,.L32 - ld #r2,#r31,48 - br .L4 - align 4 -.L32: - bb0 (31-30),#r13,.L4 - ld #r10,#r31,56 - cmp #r13,#r10,1 - bb1.n #ne,#r13,.L35 - cmp #r13,#r10,2 - ld #r13,#r31,48 - ld.bu #r2,#r0,#r13 - br .L4 - align 4 -.L35: - bb1.n #ne,#r13,.L37 - cmp #r13,#r10,4 - ld #r13,#r31,48 - ld.hu #r2,#r0,#r13 - br .L4 - align 4 -.L37: - bb1 #ne,#r13,.L4 - ld #r13,#r31,48 - ld #r2,#r0,#r13 -.L4: -.Lte0: - ld #r1,#r31,36 - jmp.n #r1 - addu #r31,#r31,80 - -section .tdesc,"a" - word 66,1,.Ltb0,.Lte0,0x100003f,0x50,0xffffffd4,0xffffffd4 -text -.Lfe1: - size __vacall_r,.Lfe1-__vacall_r DELETED ffcall/callback/vacall_r/vacall-mips.c Index: ffcall/callback/vacall_r/vacall-mips.c ================================================================== --- ffcall/callback/vacall_r/vacall-mips.c +++ /dev/null @@ -1,128 +0,0 @@ -/* vacall function for mips CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifndef REENTRANT -#include "vacall.h.in" -#else /* REENTRANT */ -#include "vacall_r.h.in" -#endif - -#ifndef REENTRANT -typedef void (*func_pointer)(va_alist); -#else /* REENTRANT */ -#define __vacall __vacall_r -typedef void (*func_pointer)(void*,va_alist); -register struct { func_pointer vacall_function; void* arg; } - * env __asm__("$2"); -#endif -register func_pointer t9 __asm__("$25"); -register float farg1 __asm__("$f12"); -register float farg2 __asm__("$f14"); -register double darg1 __asm__("$f12"); -register double darg2 __asm__("$f14"); -register int iret __asm__("$2"); -register int iret2 __asm__("$3"); -register float fret __asm__("$f0"); -register double dret __asm__("$f0"); - -void /* the return type is variable, not void! */ -__vacall (__vaword word1, __vaword word2, __vaword word3, __vaword word4, - __vaword firstword) -{ - __va_alist list; - /* gcc-2.6.3 source says: When a parameter is passed in a register, - * stack space is still allocated for it. - */ - /* Move the arguments passed in registers to their stack locations. */ - (&firstword)[-4] = word1; - (&firstword)[-3] = word2; - (&firstword)[-2] = word3; - (&firstword)[-1] = word4; - list.darg[0] = darg1; - list.darg[1] = darg2; - list.farg[0] = farg1; - list.farg[1] = farg2; - /* Prepare the va_alist. */ - list.flags = 0; - list.aptr = (long)(&firstword - 4); - list.raddr = (void*)0; - list.rtype = __VAvoid; - list.memargptr = (long)&firstword; - list.anum = 0; - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*(t9 = vacall_function)) (&list); -#else /* REENTRANT */ - (*(t9 = env->vacall_function)) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong || list.rtype == __VAulonglong) { - iret = ((__vaword *) &list.tmp._longlong)[0]; - iret2 = ((__vaword *) &list.tmp._longlong)[1]; - } else - if (list.rtype == __VAfloat) { - fret = list.tmp._float; - } else - if (list.rtype == __VAdouble) { - dret = list.tmp._double; - } else - if (list.rtype == __VAvoidp) { - iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - iret = (long) list.raddr; - } else { - /* normal struct return convention */ - if (list.flags & __VA_SMALL_STRUCT_RETURN) { - if (list.rsize == sizeof(char)) { - iret = *(unsigned char *) list.raddr; - } else - if (list.rsize == sizeof(short)) { - iret = *(unsigned short *) list.raddr; - } else - if (list.rsize == sizeof(int)) { - iret = *(unsigned int *) list.raddr; - } - } - } - } -} DELETED ffcall/callback/vacall_r/vacall-mips64.c Index: ffcall/callback/vacall_r/vacall-mips64.c ================================================================== --- ffcall/callback/vacall_r/vacall-mips64.c +++ /dev/null @@ -1,313 +0,0 @@ -/* vacall function for mips CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifndef REENTRANT -#include "vacall.h.in" -#else /* REENTRANT */ -#include "vacall_r.h.in" -#endif - -#ifndef REENTRANT -typedef void (*func_pointer)(va_alist); -#else /* REENTRANT */ -#define __vacall __vacall_r -typedef void (*func_pointer)(void*,va_alist); -register struct { func_pointer vacall_function; void* arg; } - * env __asm__("$2"); -#endif -register func_pointer t9 __asm__("$25"); -register void* sp __asm__("$sp"); -register long iarg0 __asm__("$4"); -register long iarg1 __asm__("$5"); -register long iarg2 __asm__("$6"); -register long iarg3 __asm__("$7"); -register long iarg4 __asm__("$8"); -register long iarg5 __asm__("$9"); -register long iarg6 __asm__("$10"); -register long iarg7 __asm__("$11"); -register float farg0 __asm__("$f12"); -register float farg1 __asm__("$f13"); -register float farg2 __asm__("$f14"); -register float farg3 __asm__("$f15"); -register float farg4 __asm__("$f16"); -register float farg5 __asm__("$f17"); -register float farg6 __asm__("$f18"); -register float farg7 __asm__("$f19"); -register double darg0 __asm__("$f12"); -register double darg1 __asm__("$f13"); -register double darg2 __asm__("$f14"); -register double darg3 __asm__("$f15"); -register double darg4 __asm__("$f16"); -register double darg5 __asm__("$f17"); -register double darg6 __asm__("$f18"); -register double darg7 __asm__("$f19"); -register long iret __asm__("$2"); -register long iret2 __asm__("$3"); -register float fret __asm__("$f0"); -register float fret2 __asm__("$f2"); -register double dret __asm__("$f0"); -register double dret2 __asm__("$f2"); - -void /* the return type is variable, not void! */ -__vacall (__vaword word1, __vaword word2, __vaword word3, __vaword word4, - __vaword word5, __vaword word6, __vaword word7, __vaword word8, - __vaword firstword) -{ - /* Move the arguments passed in registers to their stack locations. */ - (&firstword)[-8] = iarg0; /* word1 */ - (&firstword)[-7] = iarg1; /* word2 */ - (&firstword)[-6] = iarg2; /* word3 */ - (&firstword)[-5] = iarg3; /* word4 */ - (&firstword)[-4] = iarg4; /* word5 */ - (&firstword)[-3] = iarg5; /* word6 */ - (&firstword)[-2] = iarg6; /* word7 */ - (&firstword)[-1] = iarg7; /* word8 */ - {__va_alist list; - list.darg[0] = darg0; - list.darg[1] = darg1; - list.darg[2] = darg2; - list.darg[3] = darg3; - list.darg[4] = darg4; - list.darg[5] = darg5; - list.darg[6] = darg6; - list.darg[7] = darg7; - list.farg[0] = farg0; - list.farg[1] = farg1; - list.farg[2] = farg2; - list.farg[3] = farg3; - list.farg[4] = farg4; - list.farg[5] = farg5; - list.farg[6] = farg6; - list.farg[7] = farg7; - /* Prepare the va_alist. */ - list.flags = 0; - list.aptr = (long)(&firstword - 8); - list.raddr = (void*)0; - list.rtype = __VAvoid; - list.memargptr = (long)&firstword; - list.anum = 0; - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*(t9 = vacall_function)) (&list); -#else /* REENTRANT */ - (*(t9 = env->vacall_function)) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulonglong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAfloat) { - fret = list.tmp._float; - } else - if (list.rtype == __VAdouble) { - dret = list.tmp._double; - } else - if (list.rtype == __VAvoidp) { - iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - iret = (long) list.raddr; - } else { - /* normal struct return convention */ - if (list.flags & __VA_REGISTER_STRUCT_RETURN) { - if (list.flags & __VA_GCC_STRUCT_RETURN) { - /* gcc returns structs of size 1,2,4,8 in registers. */ - if (list.rsize == sizeof(char)) { - iret = *(unsigned char *) list.raddr; - } else - if (list.rsize == sizeof(short)) { - iret = *(unsigned short *) list.raddr; - } else - if (list.rsize == sizeof(int)) { - iret = *(unsigned int *) list.raddr; - } else - if (list.rsize == sizeof(long)) { - iret = *(unsigned long *) list.raddr; - } - } else { - /* cc returns structs of size <= 16 in registers. */ - /* Maybe this big if cascade could be replaced with - * if (list.rsize > 0 && list.rsize <= 16) - * __asm__ ("ldl $2,%0 ; ldr $2,%1" - * : : "m" (((unsigned char *) list.raddr)[0]), - * "m" (((unsigned char *) list.raddr)[7])); - */ - if (list.rsize > 0 && list.rsize <= 16) { - if (list.rsize == 1) { - iret = (__vaword)((unsigned char *) list.raddr)[0] << 56; - } else - if (list.rsize == 2) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48); - } else - if (list.rsize == 3) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40); - } else - if (list.rsize == 4) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40) - | ((__vaword)((unsigned char *) list.raddr)[3] << 32); - } else - if (list.rsize == 5) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40) - | ((__vaword)((unsigned char *) list.raddr)[3] << 32) - | ((__vaword)((unsigned char *) list.raddr)[4] << 24); - } else - if (list.rsize == 6) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40) - | ((__vaword)((unsigned char *) list.raddr)[3] << 32) - | ((__vaword)((unsigned char *) list.raddr)[4] << 24) - | ((__vaword)((unsigned char *) list.raddr)[5] << 16); - } else - if (list.rsize == 7) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40) - | ((__vaword)((unsigned char *) list.raddr)[3] << 32) - | ((__vaword)((unsigned char *) list.raddr)[4] << 24) - | ((__vaword)((unsigned char *) list.raddr)[5] << 16) - | ((__vaword)((unsigned char *) list.raddr)[6] << 8); - } else - if (list.rsize >= 8 && list.rsize <= 16) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40) - | ((__vaword)((unsigned char *) list.raddr)[3] << 32) - | ((__vaword)((unsigned char *) list.raddr)[4] << 24) - | ((__vaword)((unsigned char *) list.raddr)[5] << 16) - | ((__vaword)((unsigned char *) list.raddr)[6] << 8) - | (__vaword)((unsigned char *) list.raddr)[7]; - /* Maybe this big if cascade could be replaced with - * if (list.rsize > 8 && list.rsize <= 16) - * __asm__ ("ldl $3,%0 ; ldr $3,%1" - * : : "m" (((unsigned char *) list.raddr)[8]), - * "m" (((unsigned char *) list.raddr)[15])); - */ - if (list.rsize == 8) { - } else - if (list.rsize == 9) { - iret2 = (__vaword)((unsigned char *) list.raddr)[8] << 56; - } else - if (list.rsize == 10) { - iret2 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48); - } else - if (list.rsize == 11) { - iret2 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40); - } else - if (list.rsize == 12) { - iret2 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40) - | ((__vaword)((unsigned char *) list.raddr)[11] << 32); - } else - if (list.rsize == 13) { - iret2 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40) - | ((__vaword)((unsigned char *) list.raddr)[11] << 32) - | ((__vaword)((unsigned char *) list.raddr)[12] << 24); - } else - if (list.rsize == 14) { - iret2 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40) - | ((__vaword)((unsigned char *) list.raddr)[11] << 32) - | ((__vaword)((unsigned char *) list.raddr)[12] << 24) - | ((__vaword)((unsigned char *) list.raddr)[13] << 16); - } else - if (list.rsize == 15) { - iret2 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40) - | ((__vaword)((unsigned char *) list.raddr)[11] << 32) - | ((__vaword)((unsigned char *) list.raddr)[12] << 24) - | ((__vaword)((unsigned char *) list.raddr)[13] << 16) - | ((__vaword)((unsigned char *) list.raddr)[14] << 8); - } else - if (list.rsize == 16) { - iret2 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40) - | ((__vaword)((unsigned char *) list.raddr)[11] << 32) - | ((__vaword)((unsigned char *) list.raddr)[12] << 24) - | ((__vaword)((unsigned char *) list.raddr)[13] << 16) - | ((__vaword)((unsigned char *) list.raddr)[14] << 8) - | (__vaword)((unsigned char *) list.raddr)[15]; - } - } - } - if (list.flags & __VA_REGISTER_FLOATSTRUCT_RETURN) { - if (list.rsize == sizeof(float)) { - fret = *(float*)list.raddr; - } else - if (list.rsize == 2*sizeof(float)) { - fret = *(float*)list.raddr; - fret2 = *(float*)((char*)list.raddr + 4); - } - } - if (list.flags & __VA_REGISTER_DOUBLESTRUCT_RETURN) { - if (list.rsize == sizeof(double)) { - dret = *(double*)list.raddr; - } else - if (list.rsize == 2*sizeof(double)) { - dret = *(double*)list.raddr; - dret2 = *(double*)((char*)list.raddr + 8); - } - } - } - } - } - } -}} DELETED ffcall/callback/vacall_r/vacall-mipsn32.c Index: ffcall/callback/vacall_r/vacall-mipsn32.c ================================================================== --- ffcall/callback/vacall_r/vacall-mipsn32.c +++ /dev/null @@ -1,317 +0,0 @@ -/* vacall function for mips CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifndef REENTRANT -#include "vacall.h.in" -#else /* REENTRANT */ -#include "vacall_r.h.in" -#endif - -#ifndef REENTRANT -typedef void (*func_pointer)(va_alist); -#else /* REENTRANT */ -#define __vacall __vacall_r -typedef void (*func_pointer)(void*,va_alist); -register struct { func_pointer vacall_function; void* arg; } - * env __asm__("$2"); -#endif -register func_pointer t9 __asm__("$25"); -register void* sp __asm__("$sp"); -register __vaword iarg0 __asm__("$4"); -register __vaword iarg1 __asm__("$5"); -register __vaword iarg2 __asm__("$6"); -register __vaword iarg3 __asm__("$7"); -register __vaword iarg4 __asm__("$8"); -register __vaword iarg5 __asm__("$9"); -register __vaword iarg6 __asm__("$10"); -register __vaword iarg7 __asm__("$11"); -register float farg0 __asm__("$f12"); -register float farg1 __asm__("$f13"); -register float farg2 __asm__("$f14"); -register float farg3 __asm__("$f15"); -register float farg4 __asm__("$f16"); -register float farg5 __asm__("$f17"); -register float farg6 __asm__("$f18"); -register float farg7 __asm__("$f19"); -register double darg0 __asm__("$f12"); -register double darg1 __asm__("$f13"); -register double darg2 __asm__("$f14"); -register double darg3 __asm__("$f15"); -register double darg4 __asm__("$f16"); -register double darg5 __asm__("$f17"); -register double darg6 __asm__("$f18"); -register double darg7 __asm__("$f19"); -register __vaword iret __asm__("$2"); -register __vaword iret2 __asm__("$3"); -register float fret __asm__("$f0"); -register float fret2 __asm__("$f2"); -register double dret __asm__("$f0"); -register double dret2 __asm__("$f2"); - -void /* the return type is variable, not void! */ -__vacall (__vaword word1, __vaword word2, __vaword word3, __vaword word4, - __vaword word5, __vaword word6, __vaword word7, __vaword word8, - __vaword firstword) -{ - /* gcc-2.95 does not allocate stack space for word1,...,word8. */ - /* The following account for the stack frame increase from 192 to 256 bytes - * done by postprocessing. */ -#define firstword (*(&firstword+8)) - /* Move the arguments passed in registers to their stack locations. */ - (&firstword)[-8] = iarg0; /* word1 */ - (&firstword)[-7] = iarg1; /* word2 */ - (&firstword)[-6] = iarg2; /* word3 */ - (&firstword)[-5] = iarg3; /* word4 */ - (&firstword)[-4] = iarg4; /* word5 */ - (&firstword)[-3] = iarg5; /* word6 */ - (&firstword)[-2] = iarg6; /* word7 */ - (&firstword)[-1] = iarg7; /* word8 */ - {__va_alist list; - list.darg[0] = darg0; - list.darg[1] = darg1; - list.darg[2] = darg2; - list.darg[3] = darg3; - list.darg[4] = darg4; - list.darg[5] = darg5; - list.darg[6] = darg6; - list.darg[7] = darg7; - list.farg[0] = farg0; - list.farg[1] = farg1; - list.farg[2] = farg2; - list.farg[3] = farg3; - list.farg[4] = farg4; - list.farg[5] = farg5; - list.farg[6] = farg6; - list.farg[7] = farg7; - /* Prepare the va_alist. */ - list.flags = 0; - list.aptr = (long)(&firstword - 8); - list.raddr = (void*)0; - list.rtype = __VAvoid; - list.memargptr = (long)&firstword; - list.anum = 0; - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*(t9 = vacall_function)) (&list); -#else /* REENTRANT */ - (*(t9 = env->vacall_function)) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong) { - iret = list.tmp._longlong; - } else - if (list.rtype == __VAulonglong) { - iret = list.tmp._ulonglong; - } else - if (list.rtype == __VAfloat) { - fret = list.tmp._float; - } else - if (list.rtype == __VAdouble) { - dret = list.tmp._double; - } else - if (list.rtype == __VAvoidp) { - iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - iret = (__vaword) list.raddr; - } else { - /* normal struct return convention */ - if (list.flags & __VA_REGISTER_STRUCT_RETURN) { - if (list.flags & __VA_GCC_STRUCT_RETURN) { - /* gcc returns structs of size 1,2,4,8 in registers. */ - if (list.rsize == sizeof(char)) { - iret = *(unsigned char *) list.raddr; - } else - if (list.rsize == sizeof(short)) { - iret = *(unsigned short *) list.raddr; - } else - if (list.rsize == sizeof(int)) { - iret = *(unsigned int *) list.raddr; - } else - if (list.rsize == sizeof(long long)) { - iret = *(unsigned long long *) list.raddr; - } - } else { - /* cc returns structs of size <= 16 in registers. */ - /* Maybe this big if cascade could be replaced with - * if (list.rsize > 0 && list.rsize <= 16) - * __asm__ ("ldl $2,%0 ; ldr $2,%1" - * : : "m" (((unsigned char *) list.raddr)[0]), - * "m" (((unsigned char *) list.raddr)[7])); - */ - if (list.rsize > 0 && list.rsize <= 16) { - if (list.rsize == 1) { - iret = (__vaword)((unsigned char *) list.raddr)[0] << 56; - } else - if (list.rsize == 2) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48); - } else - if (list.rsize == 3) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40); - } else - if (list.rsize == 4) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40) - | ((__vaword)((unsigned char *) list.raddr)[3] << 32); - } else - if (list.rsize == 5) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40) - | ((__vaword)((unsigned char *) list.raddr)[3] << 32) - | ((__vaword)((unsigned char *) list.raddr)[4] << 24); - } else - if (list.rsize == 6) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40) - | ((__vaword)((unsigned char *) list.raddr)[3] << 32) - | ((__vaword)((unsigned char *) list.raddr)[4] << 24) - | ((__vaword)((unsigned char *) list.raddr)[5] << 16); - } else - if (list.rsize == 7) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40) - | ((__vaword)((unsigned char *) list.raddr)[3] << 32) - | ((__vaword)((unsigned char *) list.raddr)[4] << 24) - | ((__vaword)((unsigned char *) list.raddr)[5] << 16) - | ((__vaword)((unsigned char *) list.raddr)[6] << 8); - } else - if (list.rsize >= 8 && list.rsize <= 16) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40) - | ((__vaword)((unsigned char *) list.raddr)[3] << 32) - | ((__vaword)((unsigned char *) list.raddr)[4] << 24) - | ((__vaword)((unsigned char *) list.raddr)[5] << 16) - | ((__vaword)((unsigned char *) list.raddr)[6] << 8) - | (__vaword)((unsigned char *) list.raddr)[7]; - /* Maybe this big if cascade could be replaced with - * if (list.rsize > 8 && list.rsize <= 16) - * __asm__ ("ldl $3,%0 ; ldr $3,%1" - * : : "m" (((unsigned char *) list.raddr)[8]), - * "m" (((unsigned char *) list.raddr)[15])); - */ - if (list.rsize == 8) { - } else - if (list.rsize == 9) { - iret2 = (__vaword)((unsigned char *) list.raddr)[8] << 56; - } else - if (list.rsize == 10) { - iret2 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48); - } else - if (list.rsize == 11) { - iret2 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40); - } else - if (list.rsize == 12) { - iret2 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40) - | ((__vaword)((unsigned char *) list.raddr)[11] << 32); - } else - if (list.rsize == 13) { - iret2 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40) - | ((__vaword)((unsigned char *) list.raddr)[11] << 32) - | ((__vaword)((unsigned char *) list.raddr)[12] << 24); - } else - if (list.rsize == 14) { - iret2 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40) - | ((__vaword)((unsigned char *) list.raddr)[11] << 32) - | ((__vaword)((unsigned char *) list.raddr)[12] << 24) - | ((__vaword)((unsigned char *) list.raddr)[13] << 16); - } else - if (list.rsize == 15) { - iret2 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40) - | ((__vaword)((unsigned char *) list.raddr)[11] << 32) - | ((__vaword)((unsigned char *) list.raddr)[12] << 24) - | ((__vaword)((unsigned char *) list.raddr)[13] << 16) - | ((__vaword)((unsigned char *) list.raddr)[14] << 8); - } else - if (list.rsize == 16) { - iret2 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40) - | ((__vaword)((unsigned char *) list.raddr)[11] << 32) - | ((__vaword)((unsigned char *) list.raddr)[12] << 24) - | ((__vaword)((unsigned char *) list.raddr)[13] << 16) - | ((__vaword)((unsigned char *) list.raddr)[14] << 8) - | (__vaword)((unsigned char *) list.raddr)[15]; - } - } - } - if (list.flags & __VA_REGISTER_FLOATSTRUCT_RETURN) { - if (list.rsize == sizeof(float)) { - fret = *(float*)list.raddr; - } else - if (list.rsize == 2*sizeof(float)) { - fret = *(float*)list.raddr; - fret2 = *(float*)((char*)list.raddr + 4); - } - } - if (list.flags & __VA_REGISTER_DOUBLESTRUCT_RETURN) { - if (list.rsize == sizeof(double)) { - dret = *(double*)list.raddr; - } else - if (list.rsize == 2*sizeof(double)) { - dret = *(double*)list.raddr; - dret2 = *(double*)((char*)list.raddr + 8); - } - } - } - } - } - } -}} DELETED ffcall/callback/vacall_r/vacall-rs6000-aix.new.s Index: ffcall/callback/vacall_r/vacall-rs6000-aix.new.s ================================================================== --- ffcall/callback/vacall_r/vacall-rs6000-aix.new.s +++ /dev/null @@ -1,181 +0,0 @@ - .file "vacall-rs6000.c" -.toc -.csect .text[PR] -gcc2_compiled.: -__gnu_compiled_c: - .align 2 - .globl __vacall_r - .globl .__vacall_r -.csect __vacall_r[DS] -__vacall_r: - .long .__vacall_r, TOC[tc0], 0 -.csect .text[PR] -.__vacall_r: - .extern __mulh - .extern __mull - .extern __divss - .extern __divus - .extern __quoss - .extern __quous - mflr 0 - stw 27,-20(1) - stw 28,-16(1) - stw 29,-12(1) - stw 30,-8(1) - stw 31,-4(1) - stw 0,8(1) - stwu 1,-224(1) - addi 29,1,280 - stw 10,-4(29) - stw 5,-24(29) - stw 6,-20(29) - stw 7,-16(29) - stw 8,-12(29) - stw 9,-8(29) - li 0,0 - addi 28,1,248 - addi 27,1,92 - stw 28,60(1) - stw 0,68(1) - stw 27,88(1) - stw 4,-28(29) - stw 3,-32(29) - stfd 1,92(1) - stfd 2,100(1) - stfd 3,108(1) - stfd 4,116(1) - stfd 5,124(1) - stfd 6,132(1) - stfd 7,140(1) - stfd 8,148(1) - stfd 9,156(1) - stfd 10,164(1) - stfd 11,172(1) - stfd 12,180(1) - stfd 13,188(1) - stw 0,56(1) - stw 0,64(1) - lwz 9,0(11) - lwz 3,4(11) - addi 4,1,56 - stw 2,20(1) - lwz 0,0(9) - lwz 2,4(9) - mtlr 0 - lwz 11,8(9) - blrl - lwz 2,20(1) - lwz 9,68(1) - cmpwi 0,9,0 - bc 12,2,L..4 - cmpwi 0,9,1 - bc 12,2,L..42 - cmpwi 0,9,2 - bc 4,2,L..7 - lbz 0,80(1) - slwi 0,0,24 - srawi 3,0,24 - b L..4 -L..7: - cmpwi 0,9,3 - bc 4,2,L..9 -L..42: - lbz 3,80(1) - b L..4 -L..9: - cmpwi 0,9,4 - bc 4,2,L..11 - lha 3,80(1) - b L..4 -L..11: - cmpwi 0,9,5 - bc 4,2,L..13 - lhz 3,80(1) - b L..4 -L..13: - cmpwi 0,9,6 - bc 12,2,L..43 - cmpwi 0,9,7 - bc 12,2,L..43 - cmpwi 0,9,8 - bc 12,2,L..43 - cmpwi 0,9,9 - bc 12,2,L..43 - addi 0,9,-10 - cmplwi 0,0,1 - bc 12,1,L..23 - lwz 3,80(1) - lwz 4,84(1) - b L..4 -L..23: - lwz 0,68(1) - cmpwi 0,0,12 - bc 4,2,L..25 - lfs 1,80(1) - b L..4 -L..25: - cmpwi 0,0,13 - bc 4,2,L..27 - lfd 1,80(1) - b L..4 -L..27: - cmpwi 0,0,14 - bc 4,2,L..29 -L..43: - lwz 3,80(1) - b L..4 -L..29: - cmpwi 0,0,15 - bc 4,2,L..4 - lwz 0,56(1) - andi. 9,0,1 - bc 12,2,L..32 - lwz 3,64(1) - b L..4 -L..32: - andi. 9,0,1024 - bc 12,2,L..4 - lwz 0,72(1) - cmpwi 0,0,1 - bc 4,2,L..35 - lwz 9,64(1) - lbz 3,0(9) - b L..4 -L..35: - cmpwi 0,0,2 - bc 4,2,L..37 - lwz 9,64(1) - lhz 3,0(9) - b L..4 -L..37: - cmpwi 0,0,4 - bc 4,2,L..39 - lwz 9,64(1) - b L..44 -L..39: - cmpwi 0,0,8 - bc 4,2,L..4 - lwz 9,64(1) - lwz 4,4(9) -L..44: - lwz 3,0(9) -L..4: - la 1,224(1) - lwz 0,8(1) - mtlr 0 - lwz 27,-20(1) - lwz 28,-16(1) - lwz 29,-12(1) - lwz 30,-8(1) - lwz 31,-4(1) - blr -LT..__vacall_r: - .long 0 - .byte 0,0,32,65,128,5,8,0 - .long 0 - .long LT..__vacall_r-.__vacall_r - .short 10 - .byte "__vacall_r" -_section_.text: -.csect .data[RW],3 - .long _section_.text DELETED ffcall/callback/vacall_r/vacall-rs6000-aix.old.s Index: ffcall/callback/vacall_r/vacall-rs6000-aix.old.s ================================================================== --- ffcall/callback/vacall_r/vacall-rs6000-aix.old.s +++ /dev/null @@ -1,181 +0,0 @@ - .file "vacall-rs6000.c" -.toc -.csect .text[PR] -gcc2_compiled.: -__gnu_compiled_c: - .align 2 - .globl __vacall_r - .globl .__vacall_r -.csect __vacall_r[DS] -__vacall_r: - .long .__vacall_r, TOC[tc0], 0 -.csect .text[PR] -.__vacall_r: - .extern __mulh - .extern __mull - .extern __divss - .extern __divus - .extern __quoss - .extern __quous - mflr 0 - st 27,-20(1) - st 28,-16(1) - st 29,-12(1) - st 30,-8(1) - st 31,-4(1) - st 0,8(1) - stu 1,-224(1) - cal 29,280(1) - st 10,-4(29) - st 5,-24(29) - st 6,-20(29) - st 7,-16(29) - st 8,-12(29) - st 9,-8(29) - lil 0,0 - cal 28,248(1) - cal 27,92(1) - st 28,60(1) - st 0,68(1) - st 27,88(1) - st 4,-28(29) - st 3,-32(29) - stfd 1,92(1) - stfd 2,100(1) - stfd 3,108(1) - stfd 4,116(1) - stfd 5,124(1) - stfd 6,132(1) - stfd 7,140(1) - stfd 8,148(1) - stfd 9,156(1) - stfd 10,164(1) - stfd 11,172(1) - stfd 12,180(1) - stfd 13,188(1) - st 0,56(1) - st 0,64(1) - l 9,0(11) - l 3,4(11) - cal 4,56(1) - st 2,20(1) - l 0,0(9) - l 2,4(9) - mtlr 0 - l 11,8(9) - brl - l 2,20(1) - l 9,68(1) - cmpi 0,9,0 - bc 12,2,L..4 - cmpi 0,9,1 - bc 12,2,L..42 - cmpi 0,9,2 - bc 4,2,L..7 - lbz 0,80(1) - sli 0,0,24 - srai 3,0,24 - b L..4 -L..7: - cmpi 0,9,3 - bc 4,2,L..9 -L..42: - lbz 3,80(1) - b L..4 -L..9: - cmpi 0,9,4 - bc 4,2,L..11 - lha 3,80(1) - b L..4 -L..11: - cmpi 0,9,5 - bc 4,2,L..13 - lhz 3,80(1) - b L..4 -L..13: - cmpi 0,9,6 - bc 12,2,L..43 - cmpi 0,9,7 - bc 12,2,L..43 - cmpi 0,9,8 - bc 12,2,L..43 - cmpi 0,9,9 - bc 12,2,L..43 - cal 0,-10(9) - cmpli 0,0,1 - bc 12,1,L..23 - l 3,80(1) - l 4,84(1) - b L..4 -L..23: - l 0,68(1) - cmpi 0,0,12 - bc 4,2,L..25 - lfs 1,80(1) - b L..4 -L..25: - cmpi 0,0,13 - bc 4,2,L..27 - lfd 1,80(1) - b L..4 -L..27: - cmpi 0,0,14 - bc 4,2,L..29 -L..43: - l 3,80(1) - b L..4 -L..29: - cmpi 0,0,15 - bc 4,2,L..4 - l 0,56(1) - andil. 9,0,1 - bc 12,2,L..32 - l 3,64(1) - b L..4 -L..32: - andil. 9,0,1024 - bc 12,2,L..4 - l 0,72(1) - cmpi 0,0,1 - bc 4,2,L..35 - l 9,64(1) - lbz 3,0(9) - b L..4 -L..35: - cmpi 0,0,2 - bc 4,2,L..37 - l 9,64(1) - lhz 3,0(9) - b L..4 -L..37: - cmpi 0,0,4 - bc 4,2,L..39 - l 9,64(1) - b L..44 -L..39: - cmpi 0,0,8 - bc 4,2,L..4 - l 9,64(1) - l 4,4(9) -L..44: - l 3,0(9) -L..4: - cal 1,224(1) - l 0,8(1) - mtlr 0 - l 27,-20(1) - l 28,-16(1) - l 29,-12(1) - l 30,-8(1) - l 31,-4(1) - br -LT..__vacall_r: - .long 0 - .byte 0,0,32,65,128,5,8,0 - .long 0 - .long LT..__vacall_r-.__vacall_r - .short 10 - .byte "__vacall_r" -_section_.text: -.csect .data[RW],3 - .long _section_.text DELETED ffcall/callback/vacall_r/vacall-rs6000-linux.s Index: ffcall/callback/vacall_r/vacall-rs6000-linux.s ================================================================== --- ffcall/callback/vacall_r/vacall-rs6000-linux.s +++ /dev/null @@ -1,159 +0,0 @@ - .file "vacall-rs6000.c" -gcc2_compiled.: - .section ".text" - .align 2 - .globl __vacall_r - .type __vacall_r,@function -__vacall_r: - stwu 1,-208(1) - mflr 0 - stw 0,212(1) - stw 3,152(1) - stw 4,156(1) - stw 5,160(1) - stw 6,164(1) - stw 7,168(1) - stw 8,172(1) - stw 9,176(1) - stw 10,180(1) - stfd 1,48(1) - stfd 2,56(1) - stfd 3,64(1) - stfd 4,72(1) - stfd 5,80(1) - stfd 6,88(1) - stfd 7,96(1) - stfd 8,104(1) - li 9,0 - stw 9,8(1) - addi 0,1,152 - stw 0,12(1) - addi 0,1,216 - stw 0,184(1) - stw 9,188(1) - stw 9,16(1) - stw 9,20(1) - addi 0,1,48 - stw 0,40(1) - lwz 9,0(11) - lwz 3,4(11) - addi 4,1,8 - mtlr 9 - blrl - lwz 0,20(1) - cmpwi 0,0,0 - bc 12,2,.L4 - cmpwi 0,0,1 - bc 12,2,.L42 - lwz 0,20(1) - cmpwi 0,0,2 - bc 4,2,.L7 - lbz 0,32(1) - extsb 3,0 - b .L4 -.L7: - lwz 0,20(1) - cmpwi 0,0,3 - bc 4,2,.L9 -.L42: - lbz 3,32(1) - b .L4 -.L9: - lwz 0,20(1) - cmpwi 0,0,4 - bc 4,2,.L11 - lha 3,32(1) - b .L4 -.L11: - lwz 0,20(1) - cmpwi 0,0,5 - bc 4,2,.L13 - lhz 3,32(1) - b .L4 -.L13: - lwz 0,20(1) - cmpwi 0,0,6 - bc 12,2,.L43 - lwz 0,20(1) - cmpwi 0,0,7 - bc 12,2,.L43 - lwz 0,20(1) - cmpwi 0,0,8 - bc 12,2,.L43 - lwz 0,20(1) - cmpwi 0,0,9 - bc 12,2,.L43 - lwz 9,20(1) - addi 9,9,-10 - cmplwi 0,9,1 - bc 12,1,.L23 - lwz 3,32(1) - lwz 4,36(1) - b .L4 -.L23: - lwz 0,20(1) - cmpwi 0,0,12 - bc 4,2,.L25 - lfs 1,32(1) - b .L4 -.L25: - lwz 0,20(1) - cmpwi 0,0,13 - bc 4,2,.L27 - lfd 1,32(1) - b .L4 -.L27: - lwz 0,20(1) - cmpwi 0,0,14 - bc 4,2,.L29 -.L43: - lwz 3,32(1) - b .L4 -.L29: - lwz 0,20(1) - cmpwi 0,0,15 - bc 4,2,.L4 - lwz 0,8(1) - andi. 9,0,1 - bc 12,2,.L32 - lwz 3,16(1) - b .L4 -.L32: - lwz 0,8(1) - andi. 9,0,1024 - bc 12,2,.L4 - lwz 0,24(1) - cmpwi 0,0,1 - bc 4,2,.L35 - lwz 9,16(1) - lbz 3,0(9) - b .L4 -.L35: - lwz 0,24(1) - cmpwi 0,0,2 - bc 4,2,.L37 - lwz 9,16(1) - lhz 3,0(9) - b .L4 -.L37: - lwz 0,24(1) - cmpwi 0,0,4 - bc 4,2,.L39 - lwz 9,16(1) - lwz 3,0(9) - b .L4 -.L39: - lwz 0,24(1) - cmpwi 0,0,8 - bc 4,2,.L4 - lwz 9,16(1) - lwz 3,0(9) - lwz 4,4(9) -.L4: - lwz 0,212(1) - mtlr 0 - la 1,208(1) - blr -.Lfe1: - .size __vacall_r,.Lfe1-__vacall_r - .ident "GCC: (GNU) 2.95.2 19991024 (release/franzo)" DELETED ffcall/callback/vacall_r/vacall-rs6000-macos.s Index: ffcall/callback/vacall_r/vacall-rs6000-macos.s ================================================================== --- ffcall/callback/vacall_r/vacall-rs6000-macos.s +++ /dev/null @@ -1,138 +0,0 @@ -.text - .align 2 - .globl ___vacall_r -___vacall_r: - mflr r0 - stmw r29,-12(r1) - stw r0,8(r1) - li r29,0 - stwu r1,-224(r1) - addi r0,r1,248 - stw r29,72(r1) - stw r0,68(r1) - addi r0,r1,100 - stw r0,96(r1) - lwz r0,0(r11) - stw r3,248(r1) - stw r4,252(r1) - mtctr r0 - stw r9,272(r1) - addi r4,r1,64 - stw r5,256(r1) - stw r6,260(r1) - stw r7,264(r1) - stw r8,268(r1) - stw r10,276(r1) - stw r29,76(r1) - stfd f1,100(r1) - stfd f2,108(r1) - stfd f3,116(r1) - stfd f4,124(r1) - stfd f5,132(r1) - stfd f6,140(r1) - stfd f7,148(r1) - stfd f8,156(r1) - stfd f9,164(r1) - stfd f10,172(r1) - stfd f11,180(r1) - stfd f12,188(r1) - stfd f13,196(r1) - stw r29,64(r1) - lwz r3,4(r11) - bctrl - lwz r9,76(r1) - cmpwi cr0,r9,0 - beq- cr0,L1 - cmpwi cr0,r9,1 - beq- cr0,L43 - cmpwi cr0,r9,2 - beq- cr0,L43 - cmpwi cr0,r9,3 - beq- cr0,L44 - cmpwi cr0,r9,4 - beq- cr0,L45 - cmpwi cr0,r9,5 - beq- cr0,L46 - cmpwi cr0,r9,6 - beq- cr0,L42 - cmpwi cr0,r9,7 - beq- cr0,L42 - cmpwi cr0,r9,8 - beq- cr0,L42 - cmpwi cr0,r9,9 - beq- cr0,L42 - addi r0,r9,-10 - cmplwi cr0,r0,1 - bgt- cr0,L22 - lwz r3,88(r1) - lwz r4,92(r1) -L1: - addi r1,r1,224 - lwz r0,8(r1) - lmw r29,-12(r1) - mtlr r0 - blr -L22: - cmpwi cr0,r9,12 - beq- cr0,L47 - cmpwi cr0,r9,13 - beq- cr0,L48 - cmpwi cr0,r9,14 - beq- cr0,L42 - cmpwi cr0,r9,15 - bne+ cr0,L1 - lwz r0,64(r1) - andi. r9,r0,1 - beq- cr0,L31 - lwz r3,72(r1) - b L1 -L31: - andi. r9,r0,1024 - beq- cr0,L1 - lwz r0,80(r1) - cmpwi cr0,r0,1 - beq- cr0,L49 - cmpwi cr0,r0,2 - beq- cr0,L50 - cmpwi cr0,r0,4 - beq- cr0,L51 - cmpwi cr0,r0,8 - bne+ cr0,L1 - lwz r9,72(r1) - lwz r4,4(r9) -L41: - lwz r3,0(r9) - b L1 -L51: - lwz r9,72(r1) - b L41 -L50: - lwz r9,72(r1) - lhz r3,0(r9) - b L1 -L49: - lwz r9,72(r1) - lbz r3,0(r9) - b L1 -L42: - lwz r3,88(r1) - b L1 -L48: - lfd f1,88(r1) - b L1 -L47: - lfs f1,88(r1) - b L1 -L46: - lhz r3,88(r1) - b L1 -L45: - lha r3,88(r1) - b L1 -L44: - lbz r3,88(r1) - b L1 -L43: - lbz r0,88(r1) - extsb r3,r0 - b L1 DELETED ffcall/callback/vacall_r/vacall-rs6000-sysv4.s Index: ffcall/callback/vacall_r/vacall-rs6000-sysv4.s ================================================================== --- ffcall/callback/vacall_r/vacall-rs6000-sysv4.s +++ /dev/null @@ -1,158 +0,0 @@ - .file "vacall-rs6000.c" -gcc2_compiled.: - .section ".text" - .align 2 - .globl __vacall_r - .type __vacall_r,@function -__vacall_r: - .extern __mulh - .extern __mull - .extern __divss - .extern __divus - .extern __quoss - .extern __quous - stwu 1,-176(1) - mflr 0 - stw 27,156(1) - stw 28,160(1) - stw 29,164(1) - stw 30,168(1) - stw 31,172(1) - stw 0,180(1) - addi 29,1,184 - lwz 12,0(11) - stw 3,-32(29) - stw 4,-28(29) - mtlr 12 - lwz 3,4(11) - addi 4,1,8 - stw 9,-8(29) - stw 10,-4(29) - stw 5,-24(29) - stw 6,-20(29) - stw 7,-16(29) - stw 8,-12(29) - li 0,0 - addi 28,1,152 - addi 27,1,48 - stw 28,12(1) - stw 0,20(1) - stw 27,40(1) - stfd 1,48(1) - stfd 2,56(1) - stfd 3,64(1) - stfd 4,72(1) - stfd 5,80(1) - stfd 6,88(1) - stfd 7,96(1) - stfd 8,104(1) - stw 0,8(1) - stw 0,16(1) - blrl - lwz 9,20(1) - cmpwi 0,9,0 - bc 12,2,.L4 - cmpwi 0,9,1 - bc 12,2,.L42 - cmpwi 0,9,2 - bc 4,2,.L7 - lbz 0,32(1) - slwi 0,0,24 - srawi 3,0,24 - b .L4 -.L7: - cmpwi 0,9,3 - bc 4,2,.L9 -.L42: - lbz 3,32(1) - b .L4 -.L9: - cmpwi 0,9,4 - bc 4,2,.L11 - lha 3,32(1) - b .L4 -.L11: - cmpwi 0,9,5 - bc 4,2,.L13 - lhz 3,32(1) - b .L4 -.L13: - cmpwi 0,9,6 - bc 12,2,.L43 - cmpwi 0,9,7 - bc 12,2,.L43 - cmpwi 0,9,8 - bc 12,2,.L43 - cmpwi 0,9,9 - bc 12,2,.L43 - addi 0,9,-10 - cmplwi 0,0,1 - bc 12,1,.L23 - lwz 3,32(1) - lwz 4,36(1) - b .L4 -.L23: - lwz 0,20(1) - cmpwi 0,0,12 - bc 4,2,.L25 - lfs 1,32(1) - b .L4 -.L25: - cmpwi 0,0,13 - bc 4,2,.L27 - lfd 1,32(1) - b .L4 -.L27: - cmpwi 0,0,14 - bc 4,2,.L29 -.L43: - lwz 3,32(1) - b .L4 -.L29: - cmpwi 0,0,15 - bc 4,2,.L4 - lwz 0,8(1) - andi. 9,0,1 - bc 12,2,.L32 - lwz 3,16(1) - b .L4 -.L32: - andi. 9,0,1024 - bc 12,2,.L4 - lwz 0,24(1) - cmpwi 0,0,1 - bc 4,2,.L35 - lwz 9,16(1) - lbz 3,0(9) - b .L4 -.L35: - cmpwi 0,0,2 - bc 4,2,.L37 - lwz 9,16(1) - lhz 3,0(9) - b .L4 -.L37: - cmpwi 0,0,4 - bc 4,2,.L39 - lwz 9,16(1) - b .L44 -.L39: - cmpwi 0,0,8 - bc 4,2,.L4 - lwz 9,16(1) - lwz 4,4(9) -.L44: - lwz 3,0(9) -.L4: - lwz 0,180(1) - mtlr 0 - lwz 27,156(1) - lwz 28,160(1) - lwz 29,164(1) - lwz 30,168(1) - lwz 31,172(1) - la 1,176(1) - blr -.Lfe1: - .size __vacall_r,.Lfe1-__vacall_r - .ident "GCC: (GNU) 2.95.2 19991024 (release)" DELETED ffcall/callback/vacall_r/vacall-rs6000.c Index: ffcall/callback/vacall_r/vacall-rs6000.c ================================================================== --- ffcall/callback/vacall_r/vacall-rs6000.c +++ /dev/null @@ -1,173 +0,0 @@ -/* vacall function for rs6000 CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * Copyright 2000 Adam Fedor, - * Copyright 2004 Paul Guyot, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifndef REENTRANT -#include "vacall.h.in" -#else /* REENTRANT */ -#include "vacall_r.h.in" -#endif - -#ifdef REENTRANT -#define __vacall __vacall_r -register struct { void (*vacall_function) (void*,va_alist); void* arg; } - * env __asm__("r11"); -#endif -register double farg1 __asm__("fr1"); -register double farg2 __asm__("fr2"); -register double farg3 __asm__("fr3"); -register double farg4 __asm__("fr4"); -register double farg5 __asm__("fr5"); -register double farg6 __asm__("fr6"); -register double farg7 __asm__("fr7"); -register double farg8 __asm__("fr8"); -register double farg9 __asm__("fr9"); -register double farg10 __asm__("fr10"); -register double farg11 __asm__("fr11"); -register double farg12 __asm__("fr12"); -register double farg13 __asm__("fr13"); -register __vaword iret __asm__("r3"); -register __vaword iret2 __asm__("r4"); -register float fret __asm__("fr1"); -register double dret __asm__("fr1"); - -void /* the return type is variable, not void! */ -__vacall (__vaword word1, __vaword word2, __vaword word3, __vaword word4, - __vaword word5, __vaword word6, __vaword word7, __vaword word8, - __vaword firstword) -{ - __va_alist list; -#if defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)) - /* gcc-2.6.3 source says: When a parameter is passed in a register, - * stack space is still allocated for it. - */ - /* Move the arguments passed in registers to their stack locations. */ - (&firstword)[-8] = word1; - (&firstword)[-7] = word2; - (&firstword)[-6] = word3; - (&firstword)[-5] = word4; - (&firstword)[-4] = word5; - (&firstword)[-3] = word6; - (&firstword)[-2] = word7; - (&firstword)[-1] = word8; -#else - /* Move the arguments passed in registers to temp storage, since - moving them to the stack would mess up the stack */ - list.regarg[0] = word1; - list.regarg[1] = word2; - list.regarg[2] = word3; - list.regarg[3] = word4; - list.regarg[4] = word5; - list.regarg[5] = word6; - list.regarg[6] = word7; - list.regarg[7] = word8; -#endif - list.farg[0] = farg1; - list.farg[1] = farg2; - list.farg[2] = farg3; - list.farg[3] = farg4; - list.farg[4] = farg5; - list.farg[5] = farg6; - list.farg[6] = farg7; - list.farg[7] = farg8; -#if defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)) - list.farg[8] = farg9; - list.farg[9] = farg10; - list.farg[10] = farg11; - list.farg[11] = farg12; - list.farg[12] = farg13; -#endif - /* Prepare the va_alist. */ - list.flags = 0; -#if defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)) - list.aptr = (long)(&firstword - 8); -#else - list.aptr = (long)(&list.regarg[0]); - list.saptr = (long)(&firstword); - list.onstack = 0; -#endif - list.raddr = (void*)0; - list.rtype = __VAvoid; - list.memfargptr = &list.farg[0]; - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*vacall_function) (&list); -#else /* REENTRANT */ - (*env->vacall_function) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong || list.rtype == __VAulonglong) { - iret = ((__vaword *) &list.tmp._longlong)[0]; - iret2 = ((__vaword *) &list.tmp._longlong)[1]; - } else - if (list.rtype == __VAfloat) { - fret = list.tmp._float; - } else - if (list.rtype == __VAdouble) { - dret = list.tmp._double; - } else - if (list.rtype == __VAvoidp) { - iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - iret = (long) list.raddr; - } else { - /* normal struct return convention */ - if (list.flags & __VA_REGISTER_STRUCT_RETURN) { - if (list.rsize == sizeof(char)) { - iret = *(unsigned char *) list.raddr; - } else - if (list.rsize == sizeof(short)) { - iret = *(unsigned short *) list.raddr; - } else - if (list.rsize == sizeof(int)) { - iret = *(unsigned int *) list.raddr; - } else - if (list.rsize == 2*sizeof(__vaword)) { - iret = ((__vaword *) list.raddr)[0]; - iret2 = ((__vaword *) list.raddr)[1]; - } - } - } - } -} DELETED ffcall/callback/vacall_r/vacall-s390.c Index: ffcall/callback/vacall_r/vacall-s390.c ================================================================== --- ffcall/callback/vacall_r/vacall-s390.c +++ /dev/null @@ -1,135 +0,0 @@ -/* vacall function for S/390 CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * Copyright 2000 Adam Fedor, - * Copyright 2001 Gerhard Tonn, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifndef REENTRANT -#include "vacall.h.in" -#else /* REENTRANT */ -#include "vacall_r.h" -#endif - -#ifdef REENTRANT -#define __vacall __vacall_r -register struct { void (*vacall_function) (void*,va_alist); void* arg; } - * env __asm__("r0"); -#endif -register float farg1 __asm__("f0"); -register float farg2 __asm__("f2"); -register double darg1 __asm__("f0"); -register double darg2 __asm__("f2"); -register __vaword iret __asm__("%r2"); -register __vaword iret2 __asm__("%r3"); -register float fret __asm__("%f0"); -register double dret __asm__("%f0"); - -void /* the return type is variable, not void! */ -__vacall (__vaword word1, __vaword word2, __vaword word3, __vaword word4, - __vaword word5, - __vaword firstword) -{ - __va_alist list; - /* Move the arguments passed in registers to temp storage, since - moving them to the stack would mess up the stack */ - list.regarg[0] = word1; - list.regarg[1] = word2; - list.regarg[2] = word3; - list.regarg[3] = word4; - list.regarg[4] = word5; - - list.darg[1] = darg2; - list.darg[0] = darg1; - - list.farg[1] = farg2; - list.farg[0] = farg1; - - /* Prepare the va_alist. */ - list.flags = 0; - list.aptr = (long)(&list.regarg[0]); - list.saptr = (long)(&firstword); - list.onstack = 0; - list.raddr = (void*)0; - list.rtype = __VAvoid; - list.memfargptr = &list.farg[0]; - list.memdargptr = &list.darg[0]; - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*vacall_function) (&list); -#else /* REENTRANT */ - (*env->vacall_function) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong || list.rtype == __VAulonglong) { - iret = ((__vaword *) &list.tmp._longlong)[0]; - iret2 = ((__vaword *) &list.tmp._longlong)[1]; - } else - if (list.rtype == __VAfloat) { - fret = list.tmp._float; - } else - if (list.rtype == __VAdouble) { - dret = list.tmp._double; - } else - if (list.rtype == __VAvoidp) { - iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - iret = (long) list.raddr; - } else { - /* normal struct return convention */ - if (list.flags & __VA_REGISTER_STRUCT_RETURN) { - if (list.rsize == sizeof(char)) { - iret = *(unsigned char *) list.raddr; - } else - if (list.rsize == sizeof(short)) { - iret = *(unsigned short *) list.raddr; - } else - if (list.rsize == sizeof(int)) { - iret = *(unsigned int *) list.raddr; - } else - if (list.rsize == 2*sizeof(__vaword)) { - iret = ((__vaword *) list.raddr)[0]; - iret2 = ((__vaword *) list.raddr)[1]; - } - } - } - } -} DELETED ffcall/callback/vacall_r/vacall-s390.s Index: ffcall/callback/vacall_r/vacall-s390.s ================================================================== --- ffcall/callback/vacall_r/vacall-s390.s +++ /dev/null @@ -1,243 +0,0 @@ - .file "vacall-s390.c" - .version "01.01" -gcc2_compiled.: -.text - .align 4 -.globl __vacall_r - .type __vacall_r,@function -__vacall_r: -# leaf function 0 -# automatics 120 -# outgoing args 0 -# need frame pointer 1 -# call alloca 0 -# has varargs 0 -# incoming args (stack) 8 -# function length 646 -# register live 1111111000010110110000000000000011 - stm %r6,%r15,24(%r15) - bras %r13,.LTN0_0 -.LT0_0: -.LC0: - .long 0 -.LTN0_0: - lr %r1,%r15 - ahi %r15,-216 - st %r1,0(%r15) - lr %r11,%r15 - st %r2,96(%r11) - st %r3,100(%r11) - st %r4,104(%r11) - st %r5,108(%r11) - st %r6,112(%r11) - mvc 184(4,%r11),96(%r11) - mvc 188(4,%r11),100(%r11) - mvc 192(4,%r11),104(%r11) - mvc 196(4,%r11),108(%r11) - mvc 200(4,%r11),112(%r11) - std %f2,176(%r11) - std %f0,168(%r11) - ste %f2,164(%r11) - ste %f0,160(%r11) - lhi %r1,0 - st %r1,120(%r11) - lr %r1,%r11 - ahi %r1,120 - lr %r4,%r1 - ahi %r4,64 - st %r4,124(%r11) - la %r1,312(%r11) - st %r1,204(%r11) - lhi %r1,0 - st %r1,208(%r11) - lhi %r1,0 - st %r1,128(%r11) - lhi %r1,0 - st %r1,132(%r11) - lr %r1,%r11 - ahi %r1,120 - lr %r4,%r1 - ahi %r4,40 - st %r4,152(%r11) - lr %r1,%r11 - ahi %r1,120 - lr %r4,%r1 - ahi %r4,48 - st %r4,156(%r11) - lr %r1,%r0 - lr %r4,%r0 - lr %r5,%r11 - ahi %r5,120 - l %r1,0(%r1) - l %r2,4(%r4) - lr %r3,%r5 - basr %r14,%r1 - l %r1,132(%r11) - ltr %r1,%r1 - jne .L3 - j .L4 -.L3: - l %r1,132(%r11) - chi %r1,1 - jne .L5 - sr %r2,%r2 - ic %r2,144(%r11) - j .L4 -.L5: - l %r1,132(%r11) - chi %r1,2 - jne .L7 - icm %r2,8,144(%r11) - sra %r2,24 - j .L4 -.L7: - l %r1,132(%r11) - chi %r1,3 - jne .L9 - sr %r2,%r2 - ic %r2,144(%r11) - j .L4 -.L9: - l %r1,132(%r11) - chi %r1,4 - jne .L11 - lh %r2,144(%r11) - j .L4 -.L11: - l %r1,132(%r11) - chi %r1,5 - jne .L13 - icm %r2,12,144(%r11) - srl %r2,16 - j .L4 -.L13: - l %r1,132(%r11) - chi %r1,6 - jne .L15 - l %r2,144(%r11) - j .L4 -.L15: - l %r1,132(%r11) - chi %r1,7 - jne .L17 - l %r2,144(%r11) - j .L4 -.L17: - l %r1,132(%r11) - chi %r1,8 - jne .L19 - l %r2,144(%r11) - j .L4 -.L19: - l %r1,132(%r11) - chi %r1,9 - jne .L21 - l %r2,144(%r11) - j .L4 -.L21: - l %r1,132(%r11) - chi %r1,10 - je .L24 - l %r1,132(%r11) - chi %r1,11 - je .L24 - j .L23 -.L24: - l %r2,144(%r11) - l %r3,148(%r11) - j .L4 -.L23: - l %r1,132(%r11) - chi %r1,12 - jne .L26 - le %f0,144(%r11) - j .L4 -.L26: - l %r1,132(%r11) - chi %r1,13 - jne .L28 - ld %f0,144(%r11) - j .L4 -.L28: - l %r1,132(%r11) - chi %r1,14 - jne .L30 - l %r2,144(%r11) - j .L4 -.L30: - l %r1,132(%r11) - chi %r1,15 - jne .L4 - lhi %r4,1 - l %r1,120(%r11) - nr %r1,%r4 - ltr %r1,%r1 - je .L33 - l %r2,128(%r11) - j .L4 -.L33: - lhi %r4,1024 - l %r1,120(%r11) - nr %r1,%r4 - ltr %r1,%r1 - je .L4 - l %r1,136(%r11) - chi %r1,1 - jne .L36 - l %r1,128(%r11) - sr %r2,%r2 - ic %r2,0(%r1) - j .L4 -.L36: - l %r1,136(%r11) - chi %r1,2 - jne .L38 - l %r1,128(%r11) - icm %r2,12,0(%r1) - srl %r2,16 - j .L4 -.L38: - l %r1,136(%r11) - chi %r1,4 - jne .L40 - l %r1,128(%r11) - l %r2,0(%r1) - j .L4 -.L40: - l %r1,136(%r11) - chi %r1,8 - jne .L4 - l %r1,128(%r11) - l %r2,0(%r1) - l %r4,128(%r11) - lr %r1,%r4 - ahi %r1,4 - l %r3,0(%r1) -.L42: -.L41: -.L39: -.L37: -.L35: -.L34: -.L32: -.L31: -.L29: -.L27: -.L25: -.L22: -.L20: -.L18: -.L16: -.L14: -.L12: -.L10: -.L8: -.L6: -.L4: -.L2: - l %r4,272(%r11) - lm %r6,%r15,240(%r11) - br %r4 -.Lfe1: - .size __vacall_r,.Lfe1-__vacall_r - .ident "GCC: (GNU) 2.95.4 20011006 (Debian prerelease)" DELETED ffcall/callback/vacall_r/vacall-sparc.c Index: ffcall/callback/vacall_r/vacall-sparc.c ================================================================== --- ffcall/callback/vacall_r/vacall-sparc.c +++ /dev/null @@ -1,142 +0,0 @@ -/* vacall function for sparc CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifndef REENTRANT -#include "vacall.h.in" -#else /* REENTRANT */ -#include "vacall_r.h.in" -#endif - -#ifdef REENTRANT -#define __vacall __vacall_r -register struct { void (*vacall_function) (void*,va_alist); void* arg; } - * env __asm__("%g2"); -#endif -register __vaword* fp __asm__("%fp"); /* our %fp, caller's %sp */ -register __vaword* ret __asm__("%i7"); /* %i7+8 = return address */ -register int iret __asm__("%i0"); -register int iret2 __asm__("%i1"); -register float fret __asm__("%f0"); /* %f0 */ -register double dret __asm__("%f0"); /* %f0,%f1 */ - -void /* the return type is variable, not void! */ -__vacall (__vaword word1, __vaword word2, __vaword word3, __vaword word4, - __vaword word5, __vaword word6, - __vaword firstword) -{ - __va_alist list; - /* gcc-2.6.3 source says: When a parameter is passed in a register, - * stack space is still allocated for it. - */ - /* Move the arguments passed in registers to their stack locations. */ - (&firstword)[-6] = word1; - (&firstword)[-5] = word2; - (&firstword)[-4] = word3; - (&firstword)[-3] = word4; - (&firstword)[-2] = word5; - (&firstword)[-1] = word6; - /* Prepare the va_alist. */ - list.flags = 0; - list.aptr = (long)(&firstword - 6); - list.raddr = (void*)0; - list.rtype = __VAvoid; - list.structraddr = (void*)((&firstword)[-7]); /* = (void*) fp[16] */ - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*vacall_function) (&list); -#else /* REENTRANT */ - (*env->vacall_function) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong || list.rtype == __VAulonglong) { - iret = ((__vaword *) &list.tmp._longlong)[0]; - iret2 = ((__vaword *) &list.tmp._longlong)[1]; - } else - if (list.rtype == __VAfloat) { - if (list.flags & __VA_SUNCC_FLOAT_RETURN) { - dret = (double)list.tmp._float; - } else { - fret = list.tmp._float; - } - } else - if (list.rtype == __VAdouble) { - dret = list.tmp._double; - } else - if (list.rtype == __VAvoidp) { - iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - if (list.flags & (__VA_SUNCC_STRUCT_RETURN | __VA_SUNPROCC_STRUCT_RETURN)) { - /* Sun cc struct return convention. */ - /* The desired struct return address was passed in fp[16], later on - * list.raddr = list.structraddr = fp[16]. Now the result has - * already been copied there. No need to copy the result once more. - * The caller expects to receive the struct return address in %o0. - */ - iret = (long) list.raddr; - if ((list.rsize & 0xfff) == ret[2]) - ret++; /* skip the "unimp n" instruction at the return address */ - /* else the "unimp n" instruction will cause a core dump */ - } else { - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - iret = (long) list.raddr; - } else { - /* normal struct return convention */ - if (list.flags & __VA_SMALL_STRUCT_RETURN) { - if (list.rsize == sizeof(char)) { - iret = *(unsigned char *) list.raddr; - goto done; - } else - if (list.rsize == sizeof(short)) { - iret = *(unsigned short *) list.raddr; - goto done; - } else - if (list.rsize == sizeof(int)) { - iret = *(unsigned int *) list.raddr; - goto done; - } - } - ret++; /* skip the "unimp n" instruction at the return address */ - done: ; - } - } - } -} DELETED ffcall/callback/vacall_r/vacall-sparc64.c Index: ffcall/callback/vacall_r/vacall-sparc64.c ================================================================== --- ffcall/callback/vacall_r/vacall-sparc64.c +++ /dev/null @@ -1,394 +0,0 @@ -/* vacall function for sparc64 CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifndef REENTRANT -#include "vacall.h.in" -#else /* REENTRANT */ -#include "vacall_r.h.in" -#endif - -#ifdef REENTRANT -#define __vacall __vacall_r -register struct { void (*vacall_function) (void*,va_alist); void* arg; } - * env __asm__("%g5"); -#endif -register __vaword* fp __asm__("%fp"); /* our %fp, caller's %sp */ -register __vaword* ret __asm__("%i7"); /* %i7+8 = return address */ -register float farg0 __asm__("%f1"); -register float farg1 __asm__("%f3"); -register float farg2 __asm__("%f5"); -register float farg3 __asm__("%f7"); -register float farg4 __asm__("%f9"); -register float farg5 __asm__("%f11"); -register float farg6 __asm__("%f13"); -register float farg7 __asm__("%f15"); -register float farg8 __asm__("%f17"); -register float farg9 __asm__("%f19"); -register float farg10 __asm__("%f21"); -register float farg11 __asm__("%f23"); -register float farg12 __asm__("%f25"); -register float farg13 __asm__("%f27"); -register float farg14 __asm__("%f29"); -register float farg15 __asm__("%f31"); -register double darg0 __asm__("%f0"); -register double darg1 __asm__("%f2"); -register double darg2 __asm__("%f4"); -register double darg3 __asm__("%f6"); -register double darg4 __asm__("%f8"); -register double darg5 __asm__("%f10"); -register double darg6 __asm__("%f12"); -register double darg7 __asm__("%f14"); -register double darg8 __asm__("%f16"); -register double darg9 __asm__("%f18"); -register double darg10 __asm__("%f20"); -register double darg11 __asm__("%f22"); -register double darg12 __asm__("%f24"); -register double darg13 __asm__("%f26"); -register double darg14 __asm__("%f28"); -register double darg15 __asm__("%f30"); -register __vaword iret __asm__("%i0"); -register __vaword o1 __asm__("%i1"); -register __vaword o2 __asm__("%i2"); -register __vaword o3 __asm__("%i3"); -register __vaword o4 __asm__("%i4"); -register __vaword o5 __asm__("%i5"); -register float fret __asm__("%f0"); /* %f0 */ -register double dret __asm__("%f0"); /* %f0,%f1 */ - -void /* the return type is variable, not void! */ -__vacall (__vaword word1, __vaword word2, __vaword word3, __vaword word4, - __vaword word5, __vaword word6, - __vaword firstword) -{ - __va_alist list; - /* Move the arguments passed in registers to their stack locations. */ - (&firstword)[-6] = word1; - (&firstword)[-5] = word2; - (&firstword)[-4] = word3; - (&firstword)[-3] = word4; - (&firstword)[-2] = word5; - (&firstword)[-1] = word6; - list.darg[0] = darg0; - list.darg[1] = darg1; - list.darg[2] = darg2; - list.darg[3] = darg3; - list.darg[4] = darg4; - list.darg[5] = darg5; - list.darg[6] = darg6; - list.darg[7] = darg7; - list.darg[8] = darg8; - list.darg[9] = darg9; - list.darg[10] = darg10; - list.darg[11] = darg11; - list.darg[12] = darg12; - list.darg[13] = darg13; - list.darg[14] = darg14; - list.darg[15] = darg15; - list.farg[0] = farg0; - list.farg[1] = farg1; - list.farg[2] = farg2; - list.farg[3] = farg3; - list.farg[4] = farg4; - list.farg[5] = farg5; - list.farg[6] = farg6; - list.farg[7] = farg7; - list.farg[8] = farg8; - list.farg[9] = farg9; - list.farg[10] = farg10; - list.farg[11] = farg11; - list.farg[12] = farg12; - list.farg[13] = farg13; - list.farg[14] = farg14; - list.farg[15] = farg15; - /* Prepare the va_alist. */ - list.flags = 0; - list.aptr = (long)(&firstword - 6); - list.raddr = (void*)0; - list.rtype = __VAvoid; - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*vacall_function) (&list); -#else /* REENTRANT */ - (*env->vacall_function) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulonglong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAfloat) { - fret = list.tmp._float; - } else - if (list.rtype == __VAdouble) { - dret = list.tmp._double; - } else - if (list.rtype == __VAvoidp) { - iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - iret = (long) list.raddr; - } else { - /* normal struct return convention */ - if (list.flags & __VA_REGISTER_STRUCT_RETURN) { - /* Return structs of size <= 32 in registers. */ - if (list.rsize > 0 && list.rsize <= 32) { - if (list.rsize == 1) { - iret = (__vaword)((unsigned char *) list.raddr)[0] << 56; - } else - if (list.rsize == 2) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48); - } else - if (list.rsize == 3) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40); - } else - if (list.rsize == 4) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40) - | ((__vaword)((unsigned char *) list.raddr)[3] << 32); - } else - if (list.rsize == 5) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40) - | ((__vaword)((unsigned char *) list.raddr)[3] << 32) - | ((__vaword)((unsigned char *) list.raddr)[4] << 24); - } else - if (list.rsize == 6) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40) - | ((__vaword)((unsigned char *) list.raddr)[3] << 32) - | ((__vaword)((unsigned char *) list.raddr)[4] << 24) - | ((__vaword)((unsigned char *) list.raddr)[5] << 16); - } else - if (list.rsize == 7) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40) - | ((__vaword)((unsigned char *) list.raddr)[3] << 32) - | ((__vaword)((unsigned char *) list.raddr)[4] << 24) - | ((__vaword)((unsigned char *) list.raddr)[5] << 16) - | ((__vaword)((unsigned char *) list.raddr)[6] << 8); - } else - if (list.rsize >= 8 && list.rsize <= 32) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40) - | ((__vaword)((unsigned char *) list.raddr)[3] << 32) - | ((__vaword)((unsigned char *) list.raddr)[4] << 24) - | ((__vaword)((unsigned char *) list.raddr)[5] << 16) - | ((__vaword)((unsigned char *) list.raddr)[6] << 8) - | (__vaword)((unsigned char *) list.raddr)[7]; - if (list.rsize == 8) { - } else - if (list.rsize == 9) { - o1 = (__vaword)((unsigned char *) list.raddr)[8] << 56; - } else - if (list.rsize == 10) { - o1 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48); - } else - if (list.rsize == 11) { - o1 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40); - } else - if (list.rsize == 12) { - o1 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40) - | ((__vaword)((unsigned char *) list.raddr)[11] << 32); - } else - if (list.rsize == 13) { - o1 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40) - | ((__vaword)((unsigned char *) list.raddr)[11] << 32) - | ((__vaword)((unsigned char *) list.raddr)[12] << 24); - } else - if (list.rsize == 14) { - o1 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40) - | ((__vaword)((unsigned char *) list.raddr)[11] << 32) - | ((__vaword)((unsigned char *) list.raddr)[12] << 24) - | ((__vaword)((unsigned char *) list.raddr)[13] << 16); - } else - if (list.rsize == 15) { - o1 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40) - | ((__vaword)((unsigned char *) list.raddr)[11] << 32) - | ((__vaword)((unsigned char *) list.raddr)[12] << 24) - | ((__vaword)((unsigned char *) list.raddr)[13] << 16) - | ((__vaword)((unsigned char *) list.raddr)[14] << 8); - } else - if (list.rsize >= 16 && list.rsize <= 32) { - o1 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40) - | ((__vaword)((unsigned char *) list.raddr)[11] << 32) - | ((__vaword)((unsigned char *) list.raddr)[12] << 24) - | ((__vaword)((unsigned char *) list.raddr)[13] << 16) - | ((__vaword)((unsigned char *) list.raddr)[14] << 8) - | (__vaword)((unsigned char *) list.raddr)[15]; - if (list.rsize == 16) { - } else - if (list.rsize == 17) { - o2 = (__vaword)((unsigned char *) list.raddr)[16] << 56; - } else - if (list.rsize == 18) { - o2 = ((__vaword)((unsigned char *) list.raddr)[16] << 56) - | ((__vaword)((unsigned char *) list.raddr)[17] << 48); - } else - if (list.rsize == 19) { - o2 = ((__vaword)((unsigned char *) list.raddr)[16] << 56) - | ((__vaword)((unsigned char *) list.raddr)[17] << 48) - | ((__vaword)((unsigned char *) list.raddr)[18] << 40); - } else - if (list.rsize == 20) { - o2 = ((__vaword)((unsigned char *) list.raddr)[16] << 56) - | ((__vaword)((unsigned char *) list.raddr)[17] << 48) - | ((__vaword)((unsigned char *) list.raddr)[18] << 40) - | ((__vaword)((unsigned char *) list.raddr)[19] << 32); - } else - if (list.rsize == 21) { - o2 = ((__vaword)((unsigned char *) list.raddr)[16] << 56) - | ((__vaword)((unsigned char *) list.raddr)[17] << 48) - | ((__vaword)((unsigned char *) list.raddr)[18] << 40) - | ((__vaword)((unsigned char *) list.raddr)[19] << 32) - | ((__vaword)((unsigned char *) list.raddr)[20] << 24); - } else - if (list.rsize == 22) { - o2 = ((__vaword)((unsigned char *) list.raddr)[16] << 56) - | ((__vaword)((unsigned char *) list.raddr)[17] << 48) - | ((__vaword)((unsigned char *) list.raddr)[18] << 40) - | ((__vaword)((unsigned char *) list.raddr)[19] << 32) - | ((__vaword)((unsigned char *) list.raddr)[20] << 24) - | ((__vaword)((unsigned char *) list.raddr)[21] << 16); - } else - if (list.rsize == 23) { - o2 = ((__vaword)((unsigned char *) list.raddr)[16] << 56) - | ((__vaword)((unsigned char *) list.raddr)[17] << 48) - | ((__vaword)((unsigned char *) list.raddr)[18] << 40) - | ((__vaword)((unsigned char *) list.raddr)[19] << 32) - | ((__vaword)((unsigned char *) list.raddr)[20] << 24) - | ((__vaword)((unsigned char *) list.raddr)[21] << 16) - | ((__vaword)((unsigned char *) list.raddr)[22] << 8); - } else - if (list.rsize >= 24 && list.rsize <= 32) { - o2 = ((__vaword)((unsigned char *) list.raddr)[16] << 56) - | ((__vaword)((unsigned char *) list.raddr)[17] << 48) - | ((__vaword)((unsigned char *) list.raddr)[18] << 40) - | ((__vaword)((unsigned char *) list.raddr)[19] << 32) - | ((__vaword)((unsigned char *) list.raddr)[20] << 24) - | ((__vaword)((unsigned char *) list.raddr)[21] << 16) - | ((__vaword)((unsigned char *) list.raddr)[22] << 8) - | (__vaword)((unsigned char *) list.raddr)[23]; - if (list.rsize == 24) { - } else - if (list.rsize == 25) { - o3 = (__vaword)((unsigned char *) list.raddr)[24] << 56; - } else - if (list.rsize == 26) { - o3 = ((__vaword)((unsigned char *) list.raddr)[24] << 56) - | ((__vaword)((unsigned char *) list.raddr)[25] << 48); - } else - if (list.rsize == 27) { - o3 = ((__vaword)((unsigned char *) list.raddr)[24] << 56) - | ((__vaword)((unsigned char *) list.raddr)[25] << 48) - | ((__vaword)((unsigned char *) list.raddr)[26] << 40); - } else - if (list.rsize == 28) { - o3 = ((__vaword)((unsigned char *) list.raddr)[24] << 56) - | ((__vaword)((unsigned char *) list.raddr)[25] << 48) - | ((__vaword)((unsigned char *) list.raddr)[26] << 40) - | ((__vaword)((unsigned char *) list.raddr)[27] << 32); - } else - if (list.rsize == 29) { - o3 = ((__vaword)((unsigned char *) list.raddr)[24] << 56) - | ((__vaword)((unsigned char *) list.raddr)[25] << 48) - | ((__vaword)((unsigned char *) list.raddr)[26] << 40) - | ((__vaword)((unsigned char *) list.raddr)[27] << 32) - | ((__vaword)((unsigned char *) list.raddr)[28] << 24); - } else - if (list.rsize == 30) { - o3 = ((__vaword)((unsigned char *) list.raddr)[24] << 56) - | ((__vaword)((unsigned char *) list.raddr)[25] << 48) - | ((__vaword)((unsigned char *) list.raddr)[26] << 40) - | ((__vaword)((unsigned char *) list.raddr)[27] << 32) - | ((__vaword)((unsigned char *) list.raddr)[28] << 24) - | ((__vaword)((unsigned char *) list.raddr)[29] << 16); - } else - if (list.rsize == 31) { - o3 = ((__vaword)((unsigned char *) list.raddr)[24] << 56) - | ((__vaword)((unsigned char *) list.raddr)[25] << 48) - | ((__vaword)((unsigned char *) list.raddr)[26] << 40) - | ((__vaword)((unsigned char *) list.raddr)[27] << 32) - | ((__vaword)((unsigned char *) list.raddr)[28] << 24) - | ((__vaword)((unsigned char *) list.raddr)[29] << 16) - | ((__vaword)((unsigned char *) list.raddr)[30] << 8); - } else - if (list.rsize == 32) { - o3 = ((__vaword)((unsigned char *) list.raddr)[24] << 56) - | ((__vaword)((unsigned char *) list.raddr)[25] << 48) - | ((__vaword)((unsigned char *) list.raddr)[26] << 40) - | ((__vaword)((unsigned char *) list.raddr)[27] << 32) - | ((__vaword)((unsigned char *) list.raddr)[28] << 24) - | ((__vaword)((unsigned char *) list.raddr)[29] << 16) - | ((__vaword)((unsigned char *) list.raddr)[30] << 8) - | (__vaword)((unsigned char *) list.raddr)[31]; - } - } - } - } - } - } - } - } -} DELETED ffcall/callback/vacall_r/vacall-x86_64.c Index: ffcall/callback/vacall_r/vacall-x86_64.c ================================================================== --- ffcall/callback/vacall_r/vacall-x86_64.c +++ /dev/null @@ -1,177 +0,0 @@ -/* vacall function for x86_64 CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifndef REENTRANT -#include "vacall.h.in" -#else /* REENTRANT */ -#include "vacall_r.h.in" -#endif - -#ifdef REENTRANT -#define __vacall __vacall_r -register struct { void (*vacall_function) (void*,va_alist); void* arg; } - * env __asm__("r10"); -#endif - -register __vaword iarg1 __asm__("rdi"); -register __vaword iarg2 __asm__("rsi"); -register __vaword iarg3 __asm__("rdx"); -register __vaword iarg4 __asm__("rcx"); -register __vaword iarg5 __asm__("r8"); -register __vaword iarg6 __asm__("r9"); - -register double farg1 __asm__("xmm0"); -register double farg2 __asm__("xmm1"); -register double farg3 __asm__("xmm2"); -register double farg4 __asm__("xmm3"); -register double farg5 __asm__("xmm4"); -register double farg6 __asm__("xmm5"); -register double farg7 __asm__("xmm6"); -register double farg8 __asm__("xmm7"); - -register __vaword iret __asm__("rax"); -register __vaword iret2 __asm__("rdx"); -register float fret __asm__("xmm0"); -register double dret __asm__("xmm0"); - -/* - * Tell gcc to not use the call-saved registers %rbx, %rbp. - * This ensures that the return sequence does not need to restore registers - * from the stack. - */ -register void* dummy1 __asm__("%rbx"); -register void* dummy2 __asm__("%rbp"); - -void /* the return type is variable, not void! */ -__vacall (__vaword word1, __vaword word2, __vaword word3, __vaword word4, - __vaword word5, __vaword word6, - __vaword firstword) -{ - __va_alist list; - /* Move the arguments passed in registers to temp storage. */ - list.iarg[0] = iarg1; - list.iarg[1] = iarg2; - list.iarg[2] = iarg3; - list.iarg[3] = iarg4; - list.iarg[4] = iarg5; - list.iarg[5] = iarg6; - list.farg[0] = farg1; - list.farg[1] = farg2; - list.farg[2] = farg3; - list.farg[3] = farg4; - list.farg[4] = farg5; - list.farg[5] = farg6; - list.farg[6] = farg7; - list.farg[7] = farg8; - /* Prepare the va_alist. */ - list.flags = 0; - list.aptr = (long)&firstword; - list.raddr = (void*)0; - list.rtype = __VAvoid; - list.memiargptr = &list.iarg[0]; - list.memfargptr = &list.farg[0]; - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*vacall_function) (&list); -#else /* REENTRANT */ - (*env->vacall_function) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulonglong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAfloat) { - fret = list.tmp._float; - } else - if (list.rtype == __VAdouble) { - dret = list.tmp._double; - } else - if (list.rtype == __VAvoidp) { - iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - iret = (long) list.raddr; - } else { - /* normal struct return convention */ - if (list.flags & __VA_REGISTER_STRUCT_RETURN) { - /* Return structs of size <= 16 in registers. */ - if (list.rsize > 0 && list.rsize <= 16) { - iret = (__vaword)((unsigned char *) list.raddr)[0]; - if (list.rsize >= 2) - iret |= (__vaword)((unsigned char *) list.raddr)[1] << 8; - if (list.rsize >= 3) - iret |= (__vaword)((unsigned char *) list.raddr)[2] << 16; - if (list.rsize >= 4) - iret |= (__vaword)((unsigned char *) list.raddr)[3] << 24; - if (list.rsize >= 5) - iret |= (__vaword)((unsigned char *) list.raddr)[4] << 32; - if (list.rsize >= 6) - iret |= (__vaword)((unsigned char *) list.raddr)[5] << 40; - if (list.rsize >= 7) - iret |= (__vaword)((unsigned char *) list.raddr)[6] << 48; - if (list.rsize >= 8) - iret |= (__vaword)((unsigned char *) list.raddr)[7] << 56; - if (list.rsize >= 9) { - iret2 = (__vaword)((unsigned char *) list.raddr)[8]; - if (list.rsize >= 10) - iret2 |= (__vaword)((unsigned char *) list.raddr)[9] << 8; - if (list.rsize >= 11) - iret2 |= (__vaword)((unsigned char *) list.raddr)[10] << 16; - if (list.rsize >= 12) - iret2 |= (__vaword)((unsigned char *) list.raddr)[11] << 24; - if (list.rsize >= 13) - iret2 |= (__vaword)((unsigned char *) list.raddr)[12] << 32; - if (list.rsize >= 14) - iret2 |= (__vaword)((unsigned char *) list.raddr)[13] << 40; - if (list.rsize >= 15) - iret2 |= (__vaword)((unsigned char *) list.raddr)[14] << 48; - if (list.rsize >= 16) - iret2 |= (__vaword)((unsigned char *) list.raddr)[15] << 56; - } - } - } - } - } -} DELETED ffcall/callback/vacall_r/vacall-x86_64.s Index: ffcall/callback/vacall_r/vacall-x86_64.s ================================================================== --- ffcall/callback/vacall_r/vacall-x86_64.s +++ /dev/null @@ -1,254 +0,0 @@ - .file "vacall-x86_64.c" - .text - .p2align 4,,15 -.globl __vacall_r - .type __vacall_r,@function -__vacall_r: -.LFB1: - pushq %r13 -.LCFI0: - pushq %r12 -.LCFI1: - subq $200, %rsp -.LCFI2: - leaq 136(%rsp), %r12 - leaq 224(%rsp), %r11 - movq %rdi, 136(%rsp) - movq %r12, 128(%rsp) - movq %rsi, 144(%rsp) - movq %r11, 8(%rsp) - leaq 64(%rsp), %r12 - movq $0, 16(%rsp) - movq %rdx, 152(%rsp) - movq %rcx, 160(%rsp) - movq %r8, 168(%rsp) - movq %r9, 176(%rsp) - movsd %xmm0, 64(%rsp) - movsd %xmm1, 72(%rsp) - movsd %xmm2, 80(%rsp) - movsd %xmm3, 88(%rsp) - movsd %xmm4, 96(%rsp) - movsd %xmm5, 104(%rsp) - movsd %xmm6, 112(%rsp) - movsd %xmm7, 120(%rsp) - movl $0, (%rsp) - movl $0, 24(%rsp) - movq %r12, 56(%rsp) - movq %rsp, %rsi - movq 8(%r10), %rdi - call *(%r10) - movl 24(%rsp), %r11d - testl %r11d, %r11d - je .L1 - cmpl $1, %r11d - je .L53 - cmpl $2, %r11d - je .L53 - cmpl $3, %r11d - je .L54 - cmpl $4, %r11d - je .L55 - cmpl $5, %r11d - je .L56 - cmpl $6, %r11d - je .L57 - cmpl $7, %r11d - je .L58 - cmpl $8, %r11d - je .L52 - cmpl $9, %r11d - je .L52 - cmpl $10, %r11d - je .L52 - cmpl $11, %r11d - je .L52 - cmpl $12, %r11d - je .L59 - cmpl $13, %r11d - je .L60 - cmpl $14, %r11d - je .L52 - cmpl $15, %r11d - je .L61 - .p2align 4,,7 -.L1: - addq $200, %rsp - popq %r12 - popq %r13 - ret -.L61: - movl (%rsp), %r11d - testl $1, %r11d - je .L33 - movq 16(%rsp), %rax - jmp .L1 -.L33: - andl $1024, %r11d - je .L1 - movq 32(%rsp), %r12 - leaq -1(%r12), %r11 - cmpq $15, %r11 - ja .L1 - movq 16(%rsp), %r13 - cmpq $1, %r12 - movzbq (%r13), %rax - jbe .L37 - movzbq 1(%r13), %r11 - salq $8, %r11 - orq %r11, %rax -.L37: - cmpq $2, %r12 - jbe .L38 - movzbq 2(%r13), %r11 - salq $16, %r11 - orq %r11, %rax -.L38: - cmpq $3, %r12 - jbe .L39 - movzbq 3(%r13), %r11 - salq $24, %r11 - orq %r11, %rax -.L39: - cmpq $4, %r12 - jbe .L40 - movzbq 4(%r13), %r11 - salq $32, %r11 - orq %r11, %rax -.L40: - cmpq $5, %r12 - jbe .L41 - movzbq 5(%r13), %r11 - salq $40, %r11 - orq %r11, %rax -.L41: - cmpq $6, %r12 - jbe .L42 - movzbq 6(%r13), %r11 - salq $48, %r11 - orq %r11, %rax -.L42: - cmpq $7, %r12 - jbe .L43 - movzbq 7(%r13), %r11 - salq $56, %r11 - orq %r11, %rax -.L43: - cmpq $8, %r12 - jbe .L1 - cmpq $9, %r12 - movzbq 8(%r13), %rdx - jbe .L45 - movzbq 9(%r13), %r11 - salq $8, %r11 - orq %r11, %rdx -.L45: - cmpq $10, %r12 - jbe .L46 - movzbq 10(%r13), %r11 - salq $16, %r11 - orq %r11, %rdx -.L46: - cmpq $11, %r12 - jbe .L47 - movzbq 11(%r13), %r11 - salq $24, %r11 - orq %r11, %rdx -.L47: - cmpq $12, %r12 - jbe .L48 - movzbq 12(%r13), %r11 - salq $32, %r11 - orq %r11, %rdx -.L48: - cmpq $13, %r12 - jbe .L49 - movzbq 13(%r13), %r11 - salq $40, %r11 - orq %r11, %rdx -.L49: - cmpq $14, %r12 - jbe .L50 - movzbq 14(%r13), %r11 - salq $48, %r11 - orq %r11, %rdx -.L50: - cmpq $15, %r12 - jbe .L1 - movzbq 15(%r13), %r11 - salq $56, %r11 - orq %r11, %rdx - jmp .L1 - .p2align 4,,7 -.L52: - movq 40(%rsp), %rax - jmp .L1 -.L60: - movlpd 40(%rsp), %xmm0 - jmp .L1 -.L59: - movss 40(%rsp), %xmm0 - jmp .L1 -.L58: - mov 40(%rsp), %eax - jmp .L1 -.L57: - movslq 40(%rsp),%rax - jmp .L1 -.L56: - movzwq 40(%rsp), %rax - jmp .L1 -.L55: - movswq 40(%rsp),%rax - jmp .L1 -.L54: - movzbq 40(%rsp), %rax - jmp .L1 - .p2align 4,,7 -.L53: - movsbq 40(%rsp),%rax - jmp .L1 -.LFE1: -.Lfe1: - .size __vacall_r,.Lfe1-__vacall_r - .section .eh_frame,"aw",@progbits -.Lframe1: - .long .LECIE1-.LSCIE1 -.LSCIE1: - .long 0x0 - .byte 0x1 - .string "" - .uleb128 0x1 - .sleb128 -8 - .byte 0x10 - .byte 0xc - .uleb128 0x7 - .uleb128 0x8 - .byte 0x90 - .uleb128 0x1 - .align 8 -.LECIE1: -.LSFDE1: - .long .LEFDE1-.LASFDE1 -.LASFDE1: - .long .LASFDE1-.Lframe1 - .quad .LFB1 - .quad .LFE1-.LFB1 - .byte 0x4 - .long .LCFI0-.LFB1 - .byte 0xe - .uleb128 0x10 - .byte 0x4 - .long .LCFI1-.LCFI0 - .byte 0xe - .uleb128 0x18 - .byte 0x4 - .long .LCFI2-.LCFI1 - .byte 0xe - .uleb128 0xe0 - .byte 0x8c - .uleb128 0x3 - .byte 0x8d - .uleb128 0x2 - .align 8 -.LEFDE1: - .ident "GCC: (GNU) 3.2.2 (SuSE Linux)" DELETED ffcall/callback/vacall_r/vacall_r.h.in Index: ffcall/callback/vacall_r/vacall_r.h.in ================================================================== --- ffcall/callback/vacall_r/vacall_r.h.in +++ /dev/null @@ -1,1286 +0,0 @@ -#ifndef _VACALL_R_H /*-*- C -*-*/ -#define _VACALL_R_H - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - - -/* These definitions are adjusted by `configure' automatically. */ - -/* CPU */ -#ifndef __i386__ -#undef __i386__ -#endif -#ifndef __m68k__ -#undef __m68k__ -#endif -#ifndef __mips__ -#undef __mips__ -#endif -#ifndef __mipsn32__ -#undef __mipsn32__ -#endif -#ifndef __mips64__ -#undef __mips64__ -#endif -#ifndef __sparc__ -#undef __sparc__ -#endif -#ifndef __sparc64__ -#undef __sparc64__ -#endif -#ifndef __alpha__ -#undef __alpha__ -#endif -#ifndef __hppa__ -#undef __hppa__ -#endif -#ifndef __arm__ -#undef __arm__ -#endif -#ifndef __rs6000__ -#undef __rs6000__ -#endif -#ifndef __s390__ -#undef __s390__ -#endif -#ifndef __m88k__ -#undef __m88k__ -#endif -#ifndef __convex__ -#undef __convex__ -#endif -#ifndef __ia64__ -#undef __ia64__ -#endif -#ifndef __x86_64__ -#undef __x86_64__ -#endif - -/* Calling convention */ -/* Define if using pcc non-reentrant struct return convention */ -#undef __PCC_STRUCT_RETURN__ -/* Define if small structs are returned in registers */ -#undef __SMALL_STRUCT_RETURN__ -/* Define if floating-point results are returned in the integer registers */ -#undef __IREG_FLOAT_RETURN__ - -/* CL_LONGLONG */ -/* Define if your compiler supports the `long long' type. */ -#ifndef HAVE_LONGLONG -#undef HAVE_LONGLONG -#endif - -/* AC_C_CHAR_UNSIGNED */ -#ifndef __CHAR_UNSIGNED__ -#undef __CHAR_UNSIGNED__ -#endif - -/* End of definitions adjusted by `configure'. */ - - -/* Max # words in argument-list and temporary structure storage. - */ -#ifndef __VA_ALIST_WORDS -#define __VA_ALIST_WORDS 256 -#endif - -/* The `signed' keyword. - */ -#if !defined(__STDC__) && !defined(__CHAR_UNSIGNED__) && !defined(signed) -#define signed -#endif - -/* Determine the alignment of a type at compile time. - */ -#if defined(__GNUC__) -#define __VA_alignof __alignof__ -#else -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) /* SGI compiler */ -#define __VA_alignof __builtin_alignof -#else -#define __VA_offsetof(type,ident) ((unsigned long)&(((type*)0)->ident)) -#define __VA_alignof(type) __VA_offsetof(struct { char __slot1; type __slot2; }, __slot2) -#endif -#endif - -/* C builtin types. - */ -#if defined(__mipsn32__) -typedef long long __vaword; -#else -typedef long __vaword; -#endif - -enum __VAtype -{ - __VAvoid, - __VAchar, - __VAschar, - __VAuchar, - __VAshort, - __VAushort, - __VAint, - __VAuint, - __VAlong, - __VAulong, - __VAlonglong, - __VAulonglong, - __VAfloat, - __VAdouble, - __VAvoidp, - __VAstruct -}; - -enum __VA_alist_flags -{ - - /* how to return structs */ - /* There are basically 3 ways to return structs: - * a. The called function returns a pointer to static data. Not reentrant. - * b. The caller passes the return structure address in a dedicated register - * or as a first (or last), invisible argument. The called function stores - * its result there. - * c. Like b, and the called function also returns the return structure - * address in the return value register. (This is not very distinguishable - * from b.) - * Independently of this, - * r. small structures (<= 4 or <= 8 bytes) may be returned in the return - * value register(s), or - * m. even small structures are passed in memory. - */ - /* gcc-2.6.3 employs the following strategy: - * - If PCC_STATIC_STRUCT_RETURN is defined in the machine description - * it uses method a, else method c. - * - If flag_pcc_struct_return is set (either by -fpcc-struct-return or if - * DEFAULT_PCC_STRUCT_RETURN is defined to 1 in the machine description) - * it uses method m, else (either by -freg-struct-return or if - * DEFAULT_PCC_STRUCT_RETURN is defined to 0 in the machine description) - * method r. - */ - __VA_PCC_STRUCT_RETURN = 1<<0, /* a: need to copy the struct */ - __VA_SMALL_STRUCT_RETURN = 1<<1, /* r: special case for small structs */ - __VA_GCC_STRUCT_RETURN = 1<<2, /* consider 8 byte structs as small */ -#if defined(__sparc__) && !defined(__sparc64__) - __VA_SUNCC_STRUCT_RETURN = 1<<3, - __VA_SUNPROCC_STRUCT_RETURN = 1<<4, -#else - __VA_SUNCC_STRUCT_RETURN = 0, - __VA_SUNPROCC_STRUCT_RETURN = 0, -#endif -#if defined(__i386__) - __VA_NEXTGCC_STRUCT_RETURN = 1<<3, - __VA_MSVC_STRUCT_RETURN = 1<<4, -#endif -#if defined(__hppa__) - __VA_OLDGCC_STRUCT_RETURN = 1<<3, -#endif - /* the default way to return structs */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another struct returning convention, - * just #define __VA_STRUCT_RETURN ... - * before or after #including . - */ -#ifndef __VA_STRUCT_RETURN - __VA_STRUCT_RETURN = -#if defined(__sparc__) && !defined(__sparc64__) && defined(sun) && defined(__SUNPRO_C) /* SUNWspro cc */ - __VA_SUNPROCC_STRUCT_RETURN, -#else -#if defined(__PCC_STRUCT_RETURN__) /* defined through configure, see above */ - __VA_PCC_STRUCT_RETURN | -#if defined(__sparc__) && !defined(__sparc64__) && defined(sun) && !(defined(__STDC__) || defined(__GNUC__)) /* sun cc */ - __VA_SUNCC_STRUCT_RETURN, -#else - 0, -#endif -#else -#if defined(__SMALL_STRUCT_RETURN__) || defined(__mipsn32__) || defined(__mips64__) /* defined through configure, see above */ - __VA_SMALL_STRUCT_RETURN | -#endif -#if defined(__GNUC__) - __VA_GCC_STRUCT_RETURN | -#endif -#if defined(__i386__) && defined(NeXT) && defined(__GNUC__) /* NeXT gcc-2.5.8 */ - __VA_NEXTGCC_STRUCT_RETURN | -#endif -#if defined(__i386__) && defined(_MSC_VER) /* MSVC 4.0 */ - __VA_MSVC_STRUCT_RETURN | -#endif -#if defined(__hppa__) && defined(__GNUC__) && (__GNUC__ < 3) && (__GNUC_MINOR__ < 7) - __VA_OLDGCC_STRUCT_RETURN | -#endif - 0, -#endif -#endif -#endif - - /* how to return floats */ -#if defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) - __VA_SUNCC_FLOAT_RETURN = 1<<5, -#endif -#if defined(__m68k__) - __VA_FREG_FLOAT_RETURN = 1<<6, -#endif - /* the default way to return floats */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float returning convention, - * just #define __VA_FLOAT_RETURN ... - * before or after #including . - */ -#ifndef __VA_FLOAT_RETURN -#if (defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__))) && !defined(__GNUC__) && defined(sun) && !defined(__SUNPRO_C) /* sun cc */ - __VA_FLOAT_RETURN = __VA_SUNCC_FLOAT_RETURN, -#elif (defined(__m68k__) && !defined(__IREG_FLOAT_RETURN__)) - __VA_FLOAT_RETURN = __VA_FREG_FLOAT_RETURN, -#else - __VA_FLOAT_RETURN = 0, -#endif -#endif - - /* how to pass structs */ -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) - __VA_SGICC_STRUCT_ARGS = 1<<7, -#endif -#if defined(__rs6000__) - __VA_AIXCC_STRUCT_ARGS = 1<<7, -#endif - /* the default way to pass floats */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float passing convention, - * just #define __VA_STRUCT_ARGS ... - * before or after #including . - */ -#ifndef __VA_STRUCT_ARGS -#if (defined(__mips__) || defined(__mipsn32__) || defined(__mips64__)) && !defined(__GNUC__) /* SGI mips cc */ - __VA_STRUCT_ARGS = __VA_SGICC_STRUCT_ARGS, -#else -#if defined(__rs6000__) && defined(_AIX) && !defined(__GNUC__) /* AIX cc, xlc */ - __VA_STRUCT_ARGS = __VA_AIXCC_STRUCT_ARGS, -#else - __VA_STRUCT_ARGS = 0, -#endif -#endif -#endif - - /* how to pass floats */ - /* ANSI C compilers and GNU gcc pass floats as floats. - * K&R C compilers pass floats as doubles. - * (Except some compilers like SGI MIPS "cc" and "cc -cckr" if a prototype is - * known for the called functions. But to compile a program with prototypes, - * "cc -ansi" is better anyway. - */ - __VA_ANSI_FLOAT_ARGS = 0, /* pass floats as floats */ - __VA_TRADITIONAL_FLOAT_ARGS = 1<<8, /* pass floats as doubles */ - /* the default way to pass floats */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float passing convention, - * just #define __VA_FLOAT_ARGS ... - * before or after #including . - */ -#ifndef __VA_FLOAT_ARGS -#if defined(__STDC__) || defined(__GNUC__) /* what about hppa "cc -Aa" ?? */ - __VA_FLOAT_ARGS = __VA_ANSI_FLOAT_ARGS, -#else - __VA_FLOAT_ARGS = __VA_TRADITIONAL_FLOAT_ARGS, -#endif -#endif - - /* how to pass and return small integer arguments */ - __VA_ANSI_INTEGERS = 0, /* no promotions */ - __VA_TRADITIONAL_INTEGERS = 0, /* promote [u]char, [u]short to [u]int */ - /* Fortunately these two methods are compatible. Our macros work with both. */ - /* the default way to pass and return small integer arguments */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float passing convention, - * just #define __VA_INTEGERS ... - * before or after #including . - */ -#ifndef __VA_INTEGERS -#if defined(__STDC__) || defined(__GNUC__) - __VA_INTEGERS = __VA_ANSI_INTEGERS, -#else - __VA_INTEGERS = __VA_TRADITIONAL_INTEGERS, -#endif -#endif - - /* stack cleanup policy */ - __VA_CDECL_CLEANUP = 0, /* caller pops args after return */ - __VA_STDCALL_CLEANUP = 1<<9, /* callee pops args before return */ - /* currently only supported on __i386__ */ -#ifndef __VA_CLEANUP - __VA_CLEANUP = __VA_CDECL_CLEANUP, -#endif - - /* These are for internal use only */ -#if defined(__i386__) || defined(__m68k__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc64__) || defined(__alpha__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__ia64__) || defined(__x86_64__) || defined(__s390__) - __VA_REGISTER_STRUCT_RETURN = 1<<10, -#endif -#if defined(__mips__) && !defined(__mipsn32__) - __VA_FLOAT_1 = 1<<11, - __VA_FLOAT_2 = 1<<12, -#endif -#if defined(__mipsn32__) || defined(__mips64__) - __VA_REGISTER_FLOATSTRUCT_RETURN = 1<<13, - __VA_REGISTER_DOUBLESTRUCT_RETURN = 1<<14, -#endif - - __VA_flag_for_broken_compilers_that_dont_like_trailing_commas -}; - -/* - * Definition of the `va_alist' type. - */ -typedef struct -{ - /* some va_... macros need these flags */ - int flags; - /* current pointer into the argument array */ - unsigned long aptr; - /* structure return pointer, return type, return type size */ - void* raddr; - enum __VAtype rtype; - unsigned long rsize; -#if defined(__i386__) || (defined(__rs6000__) && defined(__MACH__) && defined(__APPLE__)) - /* Filler word, needed if the numbers of words up to now in this structure */ - /* is odd (because on MSVC, alignof(double) = 8, normally = 4; similarly, */ - /* on MacOS X, the Apple compiler has alignof(double) = 8 whereas the */ - /* standard GCC has alignof(double) = 4. */ - __vaword filler1; -#endif - /* temporary storage for return value */ - union { - char _char; - signed char _schar; - unsigned char _uchar; - short _short; - unsigned short _ushort; - int _int; - unsigned int _uint; - long _long; - unsigned long _ulong; -#if !(defined(__mips64__) || defined(__alpha__)) && defined(HAVE_LONGLONG) - long long _longlong; - unsigned long long _ulonglong; -#endif - float _float; - double _double; - void* _ptr; - __vaword _words[2]; - } tmp; -#if defined(__i386__) || defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__hppa__) || defined(__m88k__) || defined(__ia64__) - void* structraddr; -#endif -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) || defined(__alpha__) || defined(__hppa__) - long memargptr; -#endif -#if defined(__hppa__) - long farg_offset; - long darg_offset; - float farg[4]; - double darg[2]; -#endif -#if defined(__mips__) && !defined(__mipsn32__) - int anum; - float farg[2]; - double darg[2]; -#endif -#if defined(__mipsn32__) || defined(__mips64__) - int anum; - float farg[8]; - double darg[8]; -#endif -#if defined(__sparc64__) - int anum; - float farg[16]; - double darg[16]; -#endif -#if defined(__rs6000__) - double* memfargptr; - double farg[13]; -#if !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) - __vaword regarg[8]; - unsigned long saptr; - int onstack; -#endif -#endif -#if defined(__s390__) - float* memfargptr; - double* memdargptr; - float farg[2]; - double darg[2]; - __vaword regarg[5]; - unsigned long saptr; - int onstack; -#endif -#if defined(__ia64__) - __vaword* saptr; - double* memfargptr; - double farg[8]; -#endif -#if defined(__x86_64__) - double* memfargptr; - double farg[8]; - __vaword* memiargptr; - __vaword iarg[6]; -#endif -} __va_alist; - -typedef __va_alist* va_alist; - - -/* - * Definition of the va_start_xxx macros. - */ -#define __VA_START_FLAGS \ - __VA_STRUCT_RETURN | __VA_FLOAT_RETURN | __VA_STRUCT_ARGS | __VA_FLOAT_ARGS | __VA_INTEGERS | __VA_CLEANUP -#define __va_start(LIST,RETTYPE) \ - ((LIST)->flags = __VA_START_FLAGS, \ - (LIST)->rtype = (RETTYPE) \ - ) -#define va_start_void(LIST) __va_start(LIST,__VAvoid) -#define va_start_char(LIST) __va_start(LIST,__VAchar) -#define va_start_schar(LIST) __va_start(LIST,__VAschar) -#define va_start_uchar(LIST) __va_start(LIST,__VAuchar) -#define va_start_short(LIST) __va_start(LIST,__VAshort) -#define va_start_ushort(LIST) __va_start(LIST,__VAushort) -#define va_start_int(LIST) __va_start(LIST,__VAint) -#define va_start_uint(LIST) __va_start(LIST,__VAuint) -#define va_start_long(LIST) __va_start(LIST,__VAlong) -#define va_start_ulong(LIST) __va_start(LIST,__VAulong) -#define va_start_longlong(LIST) __va_start(LIST,__VAlonglong) -#define va_start_ulonglong(LIST) __va_start(LIST,__VAulonglong) -#define va_start_float(LIST) __va_start(LIST,__VAfloat) -#define va_start_double(LIST) __va_start(LIST,__VAdouble) -#define va_start_ptr(LIST,TYPE) __va_start(LIST,__VAvoidp) - -/* - * va_start_struct: Preparing structure return. - */ -#define va_start_struct(LIST,TYPE,TYPE_SPLITTABLE) \ - _va_start_struct(LIST,sizeof(TYPE),__VA_alignof(TYPE),TYPE_SPLITTABLE) -/* _va_start_struct() is like va_start_struct(), except that you pass - * the type's size and alignment instead of the type itself. - */ -#define _va_start_struct(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - (__va_start(LIST,__VAstruct), \ - (LIST)->rsize = (TYPE_SIZE), \ - ((LIST)->flags & __VA_SUNPROCC_STRUCT_RETURN \ - ? __va_start_struct2(LIST) \ - : ((LIST)->flags & (__VA_PCC_STRUCT_RETURN | __VA_SUNCC_STRUCT_RETURN) \ - ? ((TYPE_SIZE) <= sizeof(__va_struct_buffer) || __va_error2(TYPE_SIZE), \ - (LIST)->raddr = &__va_struct_buffer, \ - 0 \ - ) \ - : (((LIST)->flags & __VA_SMALL_STRUCT_RETURN) \ - && __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ? ((LIST)->raddr = &(LIST)->tmp, \ - __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ) \ - : __va_start_struct2(LIST) \ - )) ) ) -/* Determines whether a structure is returned in registers, - * depending on its size and its word-splittable flag. - */ -#if (defined(__i386__) && defined(_WIN32)) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 \ - || ((TYPE_SIZE) == 8 \ - && (((LIST)->flags & __VA_MSVC_STRUCT_RETURN) \ - || ((TYPE_SPLITTABLE) \ - && ((LIST)->flags & __VA_GCC_STRUCT_RETURN) \ - ) ) ) ) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, 0) -#endif -#if (defined(__i386__) && !defined(_WIN32)) || defined(__m68k__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__s390__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 \ - || ((TYPE_SIZE) == 8 && (TYPE_SPLITTABLE) \ - && ((LIST)->flags & __VA_GCC_STRUCT_RETURN) \ - ) ) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, 0) -#endif -#if defined(__alpha__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 || (TYPE_SIZE) == 8 \ - || ((TYPE_SIZE) == 16 && (TYPE_SPLITTABLE) \ - && ((LIST)->flags & __VA_GCC_STRUCT_RETURN) \ - ) ) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, 0) -#endif -#if defined(__hppa__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((LIST)->flags & __VA_OLDGCC_STRUCT_RETURN \ - ? ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4) \ - : ((TYPE_SIZE) <= 8) \ - ) -/* Test both __VA_OLDGCC_STRUCT_RETURN and __VA_SMALL_STRUCT_RETURN at run time. */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - 0 -#endif -#if defined(__mips__) && !defined(__mipsn32__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__m88k__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4) -/* Test __VA_SMALL_STRUCT_RETURN instead of __VA_REGISTER_STRUCT_RETURN. */ -#if defined(__mips__) && !defined(__mipsn32__) -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->anum++, \ - 0 \ - ) -#else -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - 0 -#endif -#endif -#if defined(__mipsn32__) || defined(__mips64__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((LIST)->flags & __VA_GCC_STRUCT_RETURN \ - ? ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 || (TYPE_SIZE) == 8) \ - : ((TYPE_SIZE) <= 16) \ - ) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. Also turn on - * __VA_REGISTER_FLOATSTRUCT_RETURN or __VA_REGISTER_DOUBLESTRUCT_RETURN if - * the struct will be returned in floating-point registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, \ - (TYPE_ALIGN) == sizeof(float) && (TYPE_SPLITTABLE) \ - && ((TYPE_SIZE) == sizeof(float) || (TYPE_SIZE) == 2*sizeof(float)) \ - && ((LIST)->flags |= __VA_REGISTER_FLOATSTRUCT_RETURN), \ - (TYPE_ALIGN) == sizeof(double) && (TYPE_SPLITTABLE) \ - && ((TYPE_SIZE) == sizeof(double) || (TYPE_SIZE) == 2*sizeof(double)) \ - && ((LIST)->flags |= __VA_REGISTER_DOUBLESTRUCT_RETURN), \ - 0) -#endif -#if defined(__sparc64__) || defined(__ia64__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) <= 32) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, \ - 0) -#endif -#if defined(__x86_64__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) <= 16) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, \ - 0) -#endif -/* - * Preparing structure return in memory. - */ -#if defined(__i386__) -/* Return structure pointer is passed in a special register or as first arg. */ -#define __va_start_struct2(LIST) \ - ((LIST)->flags & __VA_NEXTGCC_STRUCT_RETURN \ - ? ((LIST)->raddr = (LIST)->structraddr, 0) /* special register */ \ - : ((LIST)->raddr = *(void* *)((LIST)->aptr), /* first arg */ \ - (LIST)->aptr += sizeof(void*), \ - 0 \ - ) ) -#endif -#if defined(__alpha__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__s390__) -/* Return structure pointer is passed as first arg. */ -#define __va_start_struct2(LIST) \ - ((LIST)->raddr = *(void* *)((LIST)->aptr), \ - (LIST)->aptr += sizeof(void*), \ - 0 \ - ) -#endif -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc64__) -/* Return structure pointer is passed as first arg. */ -#define __va_start_struct2(LIST) \ - ((LIST)->raddr = *(void* *)((LIST)->aptr), \ - (LIST)->aptr += sizeof(void*), \ - (LIST)->anum++, \ - 0 \ - ) -#endif -#if defined(__x86_64__) -/* Return structure pointer is passed as first arg. */ -#define __va_start_struct2(LIST) \ - ((LIST)->raddr = (void *)(*(LIST)->memiargptr++), \ - 0 \ - ) -#endif -#if defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__hppa__) || defined(__m88k__) || defined(__ia64__) -/* Return structure pointer is passed in a special register. */ -#define __va_start_struct2(LIST) \ - ((LIST)->raddr = (LIST)->structraddr, 0) -#endif - - -/* - * Definition of the va_arg_xxx macros. - */ - -/* Padding of non-struct arguments. */ -#define __va_argsize(TYPE_SIZE) \ - (((TYPE_SIZE) + sizeof(__vaword)-1) & -(long)sizeof(__vaword)) -#if defined(__i386__) || defined(__m68k__) || defined(__mips__) && !defined(__mipsn32__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__alpha__) || defined(__arm__) || (defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__m88k__) || defined(__convex__) || defined(__ia64__) || defined(__x86_64__) -/* args grow up */ -/* small structures < 1 word are adjusted depending on compiler */ -#define __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - __va_argsize(TYPE_SIZE) \ - ) -#define __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - ((TYPE_SIZE) < sizeof(__vaword) \ - ? (TYPE_SIZE) \ - : __va_argsize(TYPE_SIZE) \ - ) \ - ) -#endif -#if defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) -/* args grow up */ -/* small structures < 1 word are adjusted depending on compiler */ -/* Also make sure we switch to the stack pointer after 8 args */ -#define __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((((LIST)->onstack == 0 && (LIST)->aptr >= (long)&(LIST)->regarg[8]) \ - ? ((LIST)->onstack=1, (LIST)->aptr = (LIST)->saptr) : 0), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - __va_argsize(TYPE_SIZE) \ - ) -#define __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((((LIST)->onstack == 0 && (LIST)->aptr >= (long)&(LIST)->regarg[8]) \ - ? ((LIST)->onstack=1, (LIST)->aptr = (LIST)->saptr) : 0), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - ((TYPE_SIZE) < sizeof(__vaword) \ - ? (TYPE_SIZE) \ - : __va_argsize(TYPE_SIZE) \ - ) \ - ) -#endif -#if defined(__s390__) -/* args grow up */ -/* small structures < 1 word are adjusted depending on compiler */ -/* Also make sure we switch to the stack pointer after 5 args */ -#define __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((((LIST)->onstack == 0 && (LIST)->aptr >= (long)&(LIST)->regarg[5]) \ - ? ((LIST)->onstack=1, (LIST)->aptr = (LIST)->saptr) : 0), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - __va_argsize(TYPE_SIZE) \ - ) -#define __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (((((LIST)->onstack == 0 && ((LIST)->aptr >= (long)&(LIST)->regarg[5])) \ - || ((TYPE_SIZE) > sizeof(__vaword) && (LIST)->aptr >= (long)&(LIST)->regarg[4])) \ - ? ((LIST)->onstack=1, (LIST)->aptr = (LIST)->saptr) : 0), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - ((TYPE_SIZE) < sizeof(__vaword) \ - ? (TYPE_SIZE) \ - : __va_argsize(TYPE_SIZE) \ - ) \ - ) -#endif -#if defined(__mipsn32__) || defined(__mips64__) || defined(__sparc64__) -/* args grow up */ -/* small structures < 1 word are adjusted depending on compiler */ -#define __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->anum += __va_argsize(TYPE_SIZE)/sizeof(__vaword), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - __va_argsize(TYPE_SIZE) \ - ) -#define __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->anum += __va_argsize(TYPE_SIZE)/sizeof(__vaword), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - ((TYPE_SIZE) < sizeof(__vaword) \ - ? (TYPE_SIZE) \ - : __va_argsize(TYPE_SIZE) \ - ) \ - ) -#endif -#if defined(__hppa__) -/* args grow down */ -#define __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->aptr = (LIST)->aptr - __va_argsize(TYPE_SIZE), \ - ((TYPE_SIZE) > 4 && ((LIST)->aptr &= -8)), \ - (LIST)->aptr \ - ) -#define __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->aptr = (LIST)->aptr - __va_argsize(TYPE_SIZE), \ - ((TYPE_SIZE) > 4 && ((LIST)->aptr &= -8)), \ - (LIST)->aptr + ((-(TYPE_SIZE)) & 3) \ - ) -#endif -#if defined(__i386__) || defined(__alpha__) || defined(__ia64__) -/* little endian -> small args < 1 word are adjusted to the left */ -#define __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) -#endif -#if defined(__m68k__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc__) || defined(__sparc64__) || defined(__hppa__) || defined(__arm__) || defined(__rs6000__) || defined(__m88k__) || defined(__convex__) || defined(__s390__) -/* big endian -> small args < 1 word are adjusted to the right */ -#define __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) -#endif -#if defined(__mips__) && !defined(__mipsn32__) -/* big endian -> small args < 1 word are adjusted to the right */ -#define __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->anum++, __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN)) -#endif -#if defined(__x86_64__) -/* the first 6 argument words are passed in registers */ -#define __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->memiargptr + ((TYPE_SIZE) + sizeof(__vaword)-1) / sizeof(__vaword) <= &(LIST)->iarg[6] \ - ? ((LIST)->memiargptr += ((TYPE_SIZE) + sizeof(__vaword)-1) / sizeof(__vaword), \ - (LIST)->memiargptr - ((TYPE_SIZE) + sizeof(__vaword)-1) / sizeof(__vaword) \ - ) \ - : (void*)__va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ) -#endif -#define __va_arg(LIST,TYPE) \ - *(TYPE*)__va_arg_adjusted(LIST,sizeof(TYPE),__VA_alignof(TYPE)) - -/* Integer arguments. */ - -#define va_arg_char(LIST) __va_arg(LIST,char) -#define va_arg_schar(LIST) __va_arg(LIST,signed char) -#define va_arg_uchar(LIST) __va_arg(LIST,unsigned char) -#define va_arg_short(LIST) __va_arg(LIST,short) -#define va_arg_ushort(LIST) __va_arg(LIST,unsigned short) -#define va_arg_int(LIST) __va_arg(LIST,int) -#define va_arg_uint(LIST) __va_arg(LIST,unsigned int) -#define va_arg_long(LIST) __va_arg(LIST,long) -#define va_arg_ulong(LIST) __va_arg(LIST,unsigned long) - -#if defined(__mips64__) || defined(__sparc64__) || defined(__alpha__) || defined(__ia64__) || defined(__x86_64__) -/* `long long' and `long' are identical. */ -#define va_arg_longlong va_arg_long -#define va_arg_ulonglong va_arg_ulong -#elif defined(__mipsn32__) -/* `long long' fits in __vaword. */ -#define va_arg_longlong(LIST) __va_arg(LIST,long long) -#define va_arg_ulonglong(LIST) __va_arg(LIST,unsigned long long) -#elif defined(__i386__) || defined(__m68k__) || defined(__mips__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__hppa__) || defined(__arm__) || defined(__rs6000__) || defined(__m88k__) || defined(__convex__) || defined(__s390__) -/* `long long's are passed embedded on the arg stack. */ -#define va_arg_longlong(LIST) __va_arg_longlong(LIST,long long) -#define va_arg_ulonglong(LIST) __va_arg_longlong(LIST,unsigned long long) -#if defined(__i386__) || defined(__m68k__) || defined(__arm__) || (defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__convex__) -/* `long long's are (at most) word-aligned. */ -#define __va_arg_longlong(LIST,TYPE) __va_arg(LIST,TYPE) -#endif -#if defined(__mips__) || (defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__m88k__) -/* `long long's have alignment 8. */ -#define __va_arg_longlong(LIST,TYPE) \ - ((LIST)->aptr = (((LIST)->aptr+__VA_alignof(TYPE)-1) & -(long)__VA_alignof(TYPE)), \ - __va_arg(LIST,TYPE)) -#endif -#if (defined(__sparc__) && !defined(__sparc64__)) || defined(__s390__) -/* Within the arg stack, the alignment is only 4, not 8. */ -/* Beware against unaligned accesses! */ -#define __va_arg_longlong(LIST,TYPE) \ - ((LIST)->tmp._words[0] = ((__vaword*)((LIST)->aptr))[0], \ - (LIST)->tmp._words[1] = ((__vaword*)((LIST)->aptr))[1], \ - (LIST)->aptr += sizeof(TYPE), \ - (TYPE)((LIST)->tmp._longlong) \ - ) -#endif -#if defined(__hppa__) -/* `long long's have alignment 8. */ -#define __va_arg_longlong(LIST,TYPE) \ - ((LIST)->aptr = ((LIST)->aptr & -(long)__VA_alignof(TYPE)), \ - __va_arg(LIST,TYPE)) -#endif -#endif - -/* Floating point arguments. */ - -#define va_arg_float(LIST) \ - ((LIST)->flags & __VA_TRADITIONAL_FLOAT_ARGS \ - ? (float)va_arg_double(LIST) \ - : __va_arg_float(LIST) \ - ) - -#if defined(__i386__) || defined(__m68k__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc__) || defined(__sparc64__) || defined(__alpha__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__ia64__) || defined(__x86_64__) || defined(__s390__) -#define __va_align_double(LIST) -#endif -#if defined(__mips__) && !defined(__mipsn32__) || defined(__m88k__) -/* __VA_alignof(double) > sizeof(__vaword) */ -#define __va_align_double(LIST) \ - (LIST)->aptr = ((LIST)->aptr + sizeof(double)-1) & -(long)sizeof(double), -#endif -#if defined(__hppa__) -#define __va_align_double(LIST) \ - (LIST)->aptr = (LIST)->aptr & -(long)sizeof(double), -#endif - -#if defined(__sparc__) && !defined(__sparc64__) -/* Beware against unaligned `double' accesses! */ -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->tmp._words[0] = ((__vaword*)((LIST)->aptr))[0], \ - (LIST)->tmp._words[1] = ((__vaword*)((LIST)->aptr))[1], \ - (LIST)->aptr += sizeof(double), \ - (LIST)->tmp._double \ - ) -#endif -#if defined(__alpha__) -/* The first 6 floating point registers have been stored in another place. */ -#define va_arg_double(LIST) \ - (((LIST)->aptr += sizeof(double)) <= (LIST)->memargptr \ - ? *(double*)((LIST)->aptr - sizeof(double) - 6*sizeof(double)) \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - ) -#define __va_arg_float(LIST) \ - (((LIST)->aptr += sizeof(double)) <= (LIST)->memargptr \ - ? /* The first 6 args have been put into memory by "stt" instructions */\ - /* (see vacall-alpha.s!). Therefore load them as doubles. */ \ - /* When viewed as floats, the value will be the correct one. */ \ - (float)*(double*)((LIST)->aptr - sizeof(double) - 6*sizeof(double)) \ - : /* These args have been put into memory by "sts" instructions, */ \ - /* therefore load them as floats. */ \ - *(float*)((LIST)->aptr - sizeof(double)) \ - ) -#endif -#if defined(__hppa__) -/* The first 4 float registers and the first 2 double registers are stored - * elsewhere. - */ -#if 1 /* gcc-2.5.2 passes these args in general registers! A bug, I think. */ -#define __va_arg_float(LIST) \ - (*(float*)((LIST)->aptr -= sizeof(float))) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - *(double*)((LIST)->aptr -= sizeof(double)) \ - ) -#else /* this would be correct if the args were passed in float registers. */ -#define __va_arg_float(LIST) \ - (((LIST)->aptr -= sizeof(float)) >= (LIST)->memargptr \ - ? /* The first 4 float args are stored separately. */ \ - *(float*)((LIST)->aptr + (LIST)->farg_offset) \ - : *(float*)((LIST)->aptr) \ - ) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (((LIST)->aptr -= sizeof(double)) >= (LIST)->memargptr \ - ? /* The first 2 double args are stored separately. */ \ - *(double*)((LIST)->aptr + (LIST)->darg_offset) \ - : *(double*)((LIST)->aptr) \ - )) -#endif -#endif -#if defined(__mips__) && !defined(__mipsn32__) -/* The first 0,1,2 registers are stored elsewhere if they are floating-point - * parameters. - */ -#define __va_arg_float(LIST) \ - ((LIST)->aptr += sizeof(float), \ - (LIST)->anum++, \ - ((LIST)->anum == 1 \ - ? ((LIST)->flags |= __VA_FLOAT_1, (LIST)->farg[0]) \ - : ((LIST)->anum == 2 && ((LIST)->flags & __VA_FLOAT_1) \ - ? (/* (LIST)->flags |= __VA_FLOAT_2, */ (LIST)->farg[1]) \ - : *(float*)((LIST)->aptr - sizeof(float)) \ - )) ) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - (LIST)->anum++, \ - ((LIST)->anum == 1 \ - ? ((LIST)->flags |= __VA_FLOAT_1, (LIST)->darg[0]) \ - : ((LIST)->anum == 2 && ((LIST)->flags & __VA_FLOAT_1) \ - ? (/* (LIST)->flags |= __VA_FLOAT_2, */ (LIST)->darg[1]) \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - )) ) -#endif -#if defined(__mipsn32__) || defined(__mips64__) -/* The first 0,..,8 registers are stored elsewhere if they are floating-point - * parameters. - */ -#define __va_arg_float(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - (++(LIST)->anum <= 8 \ - ? (LIST)->farg[(LIST)->anum - 1] \ - : *(float*)((LIST)->aptr - sizeof(double)) \ - )) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - (++(LIST)->anum <= 8 \ - ? (LIST)->darg[(LIST)->anum - 1] \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__sparc64__) -/* The first 0,..,16 registers are stored elsewhere if they are floating-point - * parameters. - */ -#define __va_arg_float(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - (++(LIST)->anum <= 16 \ - ? (LIST)->farg[(LIST)->anum - 1] \ - : *(float*)((LIST)->aptr - sizeof(double)) \ - )) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - (++(LIST)->anum <= 16 \ - ? (LIST)->darg[(LIST)->anum - 1] \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) -/* The first 13 floating-point args have been stored elsewhere. */ -#define __va_arg_float(LIST) \ - ((LIST)->aptr += sizeof(float), \ - ((LIST)->memfargptr < &(LIST)->farg[13] \ - ? (float) *((LIST)->memfargptr++) \ - : *(float*)((LIST)->aptr - sizeof(float)) \ - )) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - ((LIST)->memfargptr < &(LIST)->farg[13] \ - ? *((LIST)->memfargptr++) \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) -/* The first 8 floating-point args have been stored elsewhere. */ -#define __va_arg_float(LIST) \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? (float) *((LIST)->memfargptr++) \ - : ((LIST)->aptr = ((LIST)->onstack == 0 \ - ? ((LIST)->onstack=1, (LIST)->saptr) \ - : (LIST)->aptr \ - ), \ - (LIST)->aptr += sizeof(float), \ - *(float*)((LIST)->aptr - sizeof(float)) \ - )) -#define va_arg_double(LIST) \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? *((LIST)->memfargptr++) \ - : ((LIST)->aptr = ((LIST)->onstack == 0 \ - ? ((LIST)->onstack=1, (LIST)->saptr) \ - : (LIST)->aptr \ - ), \ - __va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__s390__) -/* The first 2 floating-point args have been stored elsewhere. */ -#define __va_arg_float(LIST) \ - ((LIST)->memfargptr < &(LIST)->farg[2] \ - ? (LIST)->memdargptr++, (float) *((LIST)->memfargptr++) \ - : ((LIST)->aptr = ((LIST)->onstack == 0 \ - ? ((LIST)->onstack=1, (LIST)->saptr) \ - : (LIST)->aptr \ - ), \ - (LIST)->aptr += sizeof(float), \ - *(float*)((LIST)->aptr - sizeof(float)) \ - )) -#define va_arg_double(LIST) \ - ((LIST)->memdargptr < &(LIST)->darg[2] \ - ? (LIST)->memfargptr++, *((LIST)->memdargptr++) \ - : ((LIST)->aptr = ((LIST)->onstack == 0 \ - ? ((LIST)->onstack=1, (LIST)->saptr) \ - : (LIST)->aptr \ - ), \ - __va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__ia64__) -/* The first 8 floating-point args have been stored elsewhere. */ -#define __va_arg_float(LIST) \ - ((LIST)->aptr += sizeof(__vaword), \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? (float) *((LIST)->memfargptr++) \ - : *(float*)((LIST)->aptr - sizeof(__vaword)) \ - )) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? *((LIST)->memfargptr++) \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__x86_64__) -/* The first 8 floating-point args have been stored elsewhere. */ -#define __va_arg_float(LIST) \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? ((LIST)->memfargptr++, \ - *(float*)((LIST)->memfargptr - 1) \ - ) \ - : ((LIST)->aptr += sizeof(__vaword), \ - *(float*)((LIST)->aptr - sizeof(__vaword)) \ - ) ) -#define va_arg_double(LIST) \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? *(LIST)->memfargptr++ \ - : ((LIST)->aptr += sizeof(__vaword), \ - *(double*)((LIST)->aptr - sizeof(__vaword)) \ - ) ) -#endif -#ifndef __va_arg_float -#define __va_arg_float(LIST) __va_arg(LIST,float) -#endif -#ifndef va_arg_double -#define va_arg_double(LIST) \ - (__va_align_double(LIST) __va_arg(LIST,double)) -#endif - -/* Pointer arguments. */ -#define va_arg_ptr(LIST,TYPE) __va_arg(LIST,TYPE) - -/* Structure arguments. */ -#define va_arg_struct(LIST,TYPE) \ - *(TYPE*)__va_arg_struct(LIST,sizeof(TYPE),__VA_alignof(TYPE)) -/* _va_arg_struct() is like va_arg_struct(), except that you pass the type's - * size and alignment instead of the type and get the value's address instead - * of the value itself. - */ -#define _va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (void*)__va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) -/* Structure argument alignment. */ -#if defined(__i386__) && defined(_MSC_VER) -/* In MSVC, doubles inside structures have alignment 8, i.e. - * __VA_alignof(double) = 8, but doubles (and also structures containing - * doubles) are passed on the stack with alignment 4. Looks really weird. - */ -#define __va_struct_alignment(TYPE_ALIGN) \ - ((TYPE_ALIGN) <= 4 ? (TYPE_ALIGN) : 4) -#else -#define __va_struct_alignment(TYPE_ALIGN) \ - (TYPE_ALIGN) -#endif -#define __va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (LIST)->aptr = ((LIST)->aptr + __va_struct_alignment(TYPE_ALIGN)-1) & -(long)__va_struct_alignment(TYPE_ALIGN), -#if defined(__i386__) || defined(__m68k__) || defined(__alpha__) || defined(__arm__) || defined(__m88k__) || defined(__convex__) || defined(__x86_64__) -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ) -#endif -#if defined(__mips__) && !defined(__mipsn32__) -/* small structures < 1 word are adjusted depending on compiler */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->flags & __VA_SGICC_STRUCT_ARGS \ - ? /* SGI MIPS cc passes small structures left-adjusted, although big-endian! */\ - __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - : /* SGI MIPS gcc passes small structures within the first four words left- \ - * adjusted, for compatibility with cc. But structures in memory are passed \ - * right-adjusted!! See gcc-2.6.3/config/mips/mips.c:function_arg(). \ - */ \ - ((LIST)->aptr < (LIST)->memargptr \ - ? __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - : __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - )) ) -#endif -#if defined(__mipsn32__) || defined(__mips64__) -/* small structures < 1 word are adjusted depending on compiler */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->flags & __VA_SGICC_STRUCT_ARGS \ - ? /* SGI MIPS cc passes small structures left-adjusted, although big-endian! */\ - __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - : /* SGI MIPS gcc passes small structures right-adjusted. */ \ - __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - )) -#endif -#if defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) -/* small structures < 1 word are adjusted depending on compiler */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->flags & __VA_AIXCC_STRUCT_ARGS \ - ? /* AIX cc and xlc pass small structures left-adjusted, although big-endian! */\ - __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - : /* gcc passes small structures right-adjusted. */ \ - __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - )) -#endif -#if defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) -/* Structures are passed as pointers to caller-made local copies. */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - va_arg_ptr(LIST,void*) -#endif -#if defined(__sparc__) && !defined(__sparc64__) -/* Structures are passed as pointers to caller-made local copies. */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - va_arg_ptr(LIST,void*) -#endif -#if defined(__sparc64__) -/* Small structures are passed left-adjusted, although big-endian! */ -/* Big structures are passed as pointers to caller-made local copies. */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((TYPE_SIZE) <= 16 \ - ? (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN)) \ - : va_arg_ptr(LIST,void*) \ - ) -#endif -#if defined(__s390__) -/* Structures <= 8 bytes are passed as embedded copies on the arg stack. - * Big structures are passed as pointers to caller-made local copies. - */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((TYPE_SIZE) != 1 && (TYPE_SIZE) != 2 && (TYPE_SIZE) != 4 && (TYPE_SIZE) != 8 \ - ? va_arg_ptr(LIST,void*) \ - : (void*)__va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ) -#endif -#if defined(__hppa__) -/* Structures <= 8 bytes are passed as embedded copies on the arg stack. - * Big structures are passed as pointers to caller-made local copies. - */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((TYPE_SIZE) > 8 \ - ? va_arg_ptr(LIST,void*) \ - : /* FIXME: gcc-2.6.3 passes structures <= 4 bytes in memory left-adjusted! ?? */\ - (void*)__va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ) -#endif -#if defined(__ia64__) -/* Types larger than a word have 2-word alignment. */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((TYPE_SIZE) > sizeof(__vaword) && (((__vaword*)(LIST)->aptr - (LIST)->saptr) & 1) ? (LIST)->aptr += sizeof(__vaword) : 0), \ - __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ) -#endif - - -/* - * Definition of the va_return_xxx macros. - */ -#define __va_return(LIST,RETTYPE) \ - (((LIST)->rtype == (RETTYPE)) || __va_error1((LIST)->rtype,RETTYPE)) -#define va_return_void(LIST) \ - __va_return(LIST,__VAvoid) -#define va_return_char(LIST,VAL) \ - (__va_return(LIST,__VAchar), (LIST)->tmp._char = (VAL)) -#define va_return_schar(LIST,VAL) \ - (__va_return(LIST,__VAschar), (LIST)->tmp._schar = (VAL)) -#define va_return_uchar(LIST,VAL) \ - (__va_return(LIST,__VAuchar), (LIST)->tmp._uchar = (VAL)) -#define va_return_short(LIST,VAL) \ - (__va_return(LIST,__VAshort), (LIST)->tmp._short = (VAL)) -#define va_return_ushort(LIST,VAL) \ - (__va_return(LIST,__VAushort), (LIST)->tmp._ushort = (VAL)) -#define va_return_int(LIST,VAL) \ - (__va_return(LIST,__VAint), (LIST)->tmp._int = (VAL)) -#define va_return_uint(LIST,VAL) \ - (__va_return(LIST,__VAuint), (LIST)->tmp._uint = (VAL)) -#define va_return_long(LIST,VAL) \ - (__va_return(LIST,__VAlong), (LIST)->tmp._long = (VAL)) -#define va_return_ulong(LIST,VAL) \ - (__va_return(LIST,__VAulong), (LIST)->tmp._ulong = (VAL)) -#if defined(__mips64__) || defined(__sparc64__) || defined(__alpha__) || defined(__ia64__) || defined(__x86_64__) -#define va_return_longlong(LIST,VAL) \ - (__va_return(LIST,__VAlonglong), (LIST)->tmp._long = (VAL)) -#define va_return_ulonglong(LIST,VAL) \ - (__va_return(LIST,__VAulonglong), (LIST)->tmp._ulong = (VAL)) -#else -#define va_return_longlong(LIST,VAL) \ - (__va_return(LIST,__VAlonglong), (LIST)->tmp._longlong = (VAL)) -#define va_return_ulonglong(LIST,VAL) \ - (__va_return(LIST,__VAulonglong), (LIST)->tmp._ulonglong = (VAL)) -#endif -#define va_return_float(LIST,VAL) \ - (__va_return(LIST,__VAfloat), (LIST)->tmp._float = (VAL)) -#define va_return_double(LIST,VAL) \ - (__va_return(LIST,__VAdouble), (LIST)->tmp._double = (VAL)) -#define va_return_ptr(LIST,TYPE,VAL) \ - (__va_return(LIST,__VAvoidp), (LIST)->tmp._ptr = (void*)(TYPE)(VAL)) -#define va_return_struct(LIST,TYPE,VAL) \ - (__va_return(LIST,__VAstruct), *(TYPE*)((LIST)->raddr) = (VAL)) -#define _va_return_struct(LIST,TYPE_SIZE,TYPE_ALIGN,VAL_ADDR) \ - (__va_return(LIST,__VAstruct), \ - __structcpy((void*)((LIST)->raddr),VAL_ADDR,TYPE_SIZE,TYPE_ALIGN) \ - ) - - -/* Determine whether a struct type is word-splittable, i.e. whether each of - * its components fit into a register. - * The entire computation is done at compile time. - */ -#define va_word_splittable_1(slot1) \ - (__va_offset1(slot1)/sizeof(__vaword) == (__va_offset1(slot1)+sizeof(slot1)-1)/sizeof(__vaword)) -#define va_word_splittable_2(slot1,slot2) \ - ((__va_offset1(slot1)/sizeof(__vaword) == (__va_offset1(slot1)+sizeof(slot1)-1)/sizeof(__vaword)) \ - && (__va_offset2(slot1,slot2)/sizeof(__vaword) == (__va_offset2(slot1,slot2)+sizeof(slot2)-1)/sizeof(__vaword)) \ - ) -#define va_word_splittable_3(slot1,slot2,slot3) \ - ((__va_offset1(slot1)/sizeof(__vaword) == (__va_offset1(slot1)+sizeof(slot1)-1)/sizeof(__vaword)) \ - && (__va_offset2(slot1,slot2)/sizeof(__vaword) == (__va_offset2(slot1,slot2)+sizeof(slot2)-1)/sizeof(__vaword)) \ - && (__va_offset3(slot1,slot2,slot3)/sizeof(__vaword) == (__va_offset3(slot1,slot2,slot3)+sizeof(slot3)-1)/sizeof(__vaword)) \ - ) -#define va_word_splittable_4(slot1,slot2,slot3,slot4) \ - ((__va_offset1(slot1)/sizeof(__vaword) == (__va_offset1(slot1)+sizeof(slot1)-1)/sizeof(__vaword)) \ - && (__va_offset2(slot1,slot2)/sizeof(__vaword) == (__va_offset2(slot1,slot2)+sizeof(slot2)-1)/sizeof(__vaword)) \ - && (__va_offset3(slot1,slot2,slot3)/sizeof(__vaword) == (__va_offset3(slot1,slot2,slot3)+sizeof(slot3)-1)/sizeof(__vaword)) \ - && (__va_offset4(slot1,slot2,slot3,slot4)/sizeof(__vaword) == (__va_offset4(slot1,slot2,slot3,slot4)+sizeof(slot4)-1)/sizeof(__vaword)) \ - ) -#define __va_offset1(slot1) \ - 0 -#define __va_offset2(slot1,slot2) \ - ((__va_offset1(slot1)+sizeof(slot1)+__VA_alignof(slot2)-1) & -(long)__VA_alignof(slot2)) -#define __va_offset3(slot1,slot2,slot3) \ - ((__va_offset2(slot1,slot2)+sizeof(slot2)+__VA_alignof(slot3)-1) & -(long)__VA_alignof(slot3)) -#define __va_offset4(slot1,slot2,slot3,slot4) \ - ((__va_offset3(slot1,slot2,slot3)+sizeof(slot3)+__VA_alignof(slot4)-1) & -(long)__VA_alignof(slot4)) - - -/* - * Miscellaneous declarations. - */ -#ifdef __cplusplus -extern "C" void __vacall_r (); /* the return type is variable, not void! */ -#else -extern void __vacall_r (); /* the return type is variable, not void! */ -#endif -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -extern int __va_error1 (enum __VAtype, enum __VAtype); -extern int __va_error2 (unsigned int); -extern void __structcpy (void* dest, void* src, unsigned long size, unsigned long alignment); -#else -extern int __va_error1 (); -extern int __va_error2 (); -extern void __structcpy (); -#endif -typedef union { __vaword room[__VA_ALIST_WORDS]; double align; } __va_struct_buffer_t; -extern __va_struct_buffer_t __va_struct_buffer; - - -#endif /* _VACALL_R_H */ DELETED ffcall/callback/vacall_r/vacall_r.h.mingw32 Index: ffcall/callback/vacall_r/vacall_r.h.mingw32 ================================================================== --- ffcall/callback/vacall_r/vacall_r.h.mingw32 +++ /dev/null @@ -1,1286 +0,0 @@ -#ifndef _VACALL_R_H /*-*- C -*-*/ -#define _VACALL_R_H - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - - -/* These definitions are adjusted by `configure' automatically. */ - -/* CPU */ -#ifndef __i386__ -#define __i386__ 1 -#endif -#ifndef __m68k__ -#undef __m68k__ -#endif -#ifndef __mips__ -#undef __mips__ -#endif -#ifndef __mipsn32__ -#undef __mipsn32__ -#endif -#ifndef __mips64__ -#undef __mips64__ -#endif -#ifndef __sparc__ -#undef __sparc__ -#endif -#ifndef __sparc64__ -#undef __sparc64__ -#endif -#ifndef __alpha__ -#undef __alpha__ -#endif -#ifndef __hppa__ -#undef __hppa__ -#endif -#ifndef __arm__ -#undef __arm__ -#endif -#ifndef __rs6000__ -#undef __rs6000__ -#endif -#ifndef __s390__ -#undef __s390__ -#endif -#ifndef __m88k__ -#undef __m88k__ -#endif -#ifndef __convex__ -#undef __convex__ -#endif -#ifndef __ia64__ -#undef __ia64__ -#endif -#ifndef __x86_64__ -#undef __x86_64__ -#endif - -/* Calling convention */ -/* Define if using pcc non-reentrant struct return convention */ -#undef __PCC_STRUCT_RETURN__ -/* Define if small structs are returned in registers */ -#define __SMALL_STRUCT_RETURN__ 1 -/* Define if floating-point results are returned in the integer registers */ -#undef __IREG_FLOAT_RETURN__ - -/* CL_LONGLONG */ -/* Define if your compiler supports the `long long' type. */ -#ifndef HAVE_LONGLONG -#undef HAVE_LONGLONG -#endif - -/* AC_C_CHAR_UNSIGNED */ -#ifndef __CHAR_UNSIGNED__ -#undef __CHAR_UNSIGNED__ -#endif - -/* End of definitions adjusted by `configure'. */ - - -/* Max # words in argument-list and temporary structure storage. - */ -#ifndef __VA_ALIST_WORDS -#define __VA_ALIST_WORDS 256 -#endif - -/* The `signed' keyword. - */ -#if !defined(__STDC__) && !defined(__CHAR_UNSIGNED__) && !defined(signed) -#define signed -#endif - -/* Determine the alignment of a type at compile time. - */ -#if defined(__GNUC__) -#define __VA_alignof __alignof__ -#else -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) /* SGI compiler */ -#define __VA_alignof __builtin_alignof -#else -#define __VA_offsetof(type,ident) ((unsigned long)&(((type*)0)->ident)) -#define __VA_alignof(type) __VA_offsetof(struct { char __slot1; type __slot2; }, __slot2) -#endif -#endif - -/* C builtin types. - */ -#if defined(__mipsn32__) -typedef long long __vaword; -#else -typedef long __vaword; -#endif - -enum __VAtype -{ - __VAvoid, - __VAchar, - __VAschar, - __VAuchar, - __VAshort, - __VAushort, - __VAint, - __VAuint, - __VAlong, - __VAulong, - __VAlonglong, - __VAulonglong, - __VAfloat, - __VAdouble, - __VAvoidp, - __VAstruct -}; - -enum __VA_alist_flags -{ - - /* how to return structs */ - /* There are basically 3 ways to return structs: - * a. The called function returns a pointer to static data. Not reentrant. - * b. The caller passes the return structure address in a dedicated register - * or as a first (or last), invisible argument. The called function stores - * its result there. - * c. Like b, and the called function also returns the return structure - * address in the return value register. (This is not very distinguishable - * from b.) - * Independently of this, - * r. small structures (<= 4 or <= 8 bytes) may be returned in the return - * value register(s), or - * m. even small structures are passed in memory. - */ - /* gcc-2.6.3 employs the following strategy: - * - If PCC_STATIC_STRUCT_RETURN is defined in the machine description - * it uses method a, else method c. - * - If flag_pcc_struct_return is set (either by -fpcc-struct-return or if - * DEFAULT_PCC_STRUCT_RETURN is defined to 1 in the machine description) - * it uses method m, else (either by -freg-struct-return or if - * DEFAULT_PCC_STRUCT_RETURN is defined to 0 in the machine description) - * method r. - */ - __VA_PCC_STRUCT_RETURN = 1<<0, /* a: need to copy the struct */ - __VA_SMALL_STRUCT_RETURN = 1<<1, /* r: special case for small structs */ - __VA_GCC_STRUCT_RETURN = 1<<2, /* consider 8 byte structs as small */ -#if defined(__sparc__) && !defined(__sparc64__) - __VA_SUNCC_STRUCT_RETURN = 1<<3, - __VA_SUNPROCC_STRUCT_RETURN = 1<<4, -#else - __VA_SUNCC_STRUCT_RETURN = 0, - __VA_SUNPROCC_STRUCT_RETURN = 0, -#endif -#if defined(__i386__) - __VA_NEXTGCC_STRUCT_RETURN = 1<<3, - __VA_MSVC_STRUCT_RETURN = 1<<4, -#endif -#if defined(__hppa__) - __VA_OLDGCC_STRUCT_RETURN = 1<<3, -#endif - /* the default way to return structs */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another struct returning convention, - * just #define __VA_STRUCT_RETURN ... - * before or after #including . - */ -#ifndef __VA_STRUCT_RETURN - __VA_STRUCT_RETURN = -#if defined(__sparc__) && !defined(__sparc64__) && defined(sun) && defined(__SUNPRO_C) /* SUNWspro cc */ - __VA_SUNPROCC_STRUCT_RETURN, -#else -#if defined(__PCC_STRUCT_RETURN__) /* defined through configure, see above */ - __VA_PCC_STRUCT_RETURN | -#if defined(__sparc__) && !defined(__sparc64__) && defined(sun) && !(defined(__STDC__) || defined(__GNUC__)) /* sun cc */ - __VA_SUNCC_STRUCT_RETURN, -#else - 0, -#endif -#else -#if defined(__SMALL_STRUCT_RETURN__) || defined(__mipsn32__) || defined(__mips64__) /* defined through configure, see above */ - __VA_SMALL_STRUCT_RETURN | -#endif -#if defined(__GNUC__) - __VA_GCC_STRUCT_RETURN | -#endif -#if defined(__i386__) && defined(NeXT) && defined(__GNUC__) /* NeXT gcc-2.5.8 */ - __VA_NEXTGCC_STRUCT_RETURN | -#endif -#if defined(__i386__) && defined(_MSC_VER) /* MSVC 4.0 */ - __VA_MSVC_STRUCT_RETURN | -#endif -#if defined(__hppa__) && defined(__GNUC__) && (__GNUC__ < 3) && (__GNUC_MINOR__ < 7) - __VA_OLDGCC_STRUCT_RETURN | -#endif - 0, -#endif -#endif -#endif - - /* how to return floats */ -#if defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) - __VA_SUNCC_FLOAT_RETURN = 1<<5, -#endif -#if defined(__m68k__) - __VA_FREG_FLOAT_RETURN = 1<<6, -#endif - /* the default way to return floats */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float returning convention, - * just #define __VA_FLOAT_RETURN ... - * before or after #including . - */ -#ifndef __VA_FLOAT_RETURN -#if (defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__))) && !defined(__GNUC__) && defined(sun) && !defined(__SUNPRO_C) /* sun cc */ - __VA_FLOAT_RETURN = __VA_SUNCC_FLOAT_RETURN, -#elif (defined(__m68k__) && !defined(__IREG_FLOAT_RETURN__)) - __VA_FLOAT_RETURN = __VA_FREG_FLOAT_RETURN, -#else - __VA_FLOAT_RETURN = 0, -#endif -#endif - - /* how to pass structs */ -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) - __VA_SGICC_STRUCT_ARGS = 1<<7, -#endif -#if defined(__rs6000__) - __VA_AIXCC_STRUCT_ARGS = 1<<7, -#endif - /* the default way to pass floats */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float passing convention, - * just #define __VA_STRUCT_ARGS ... - * before or after #including . - */ -#ifndef __VA_STRUCT_ARGS -#if (defined(__mips__) || defined(__mipsn32__) || defined(__mips64__)) && !defined(__GNUC__) /* SGI mips cc */ - __VA_STRUCT_ARGS = __VA_SGICC_STRUCT_ARGS, -#else -#if defined(__rs6000__) && defined(_AIX) && !defined(__GNUC__) /* AIX cc, xlc */ - __VA_STRUCT_ARGS = __VA_AIXCC_STRUCT_ARGS, -#else - __VA_STRUCT_ARGS = 0, -#endif -#endif -#endif - - /* how to pass floats */ - /* ANSI C compilers and GNU gcc pass floats as floats. - * K&R C compilers pass floats as doubles. - * (Except some compilers like SGI MIPS "cc" and "cc -cckr" if a prototype is - * known for the called functions. But to compile a program with prototypes, - * "cc -ansi" is better anyway. - */ - __VA_ANSI_FLOAT_ARGS = 0, /* pass floats as floats */ - __VA_TRADITIONAL_FLOAT_ARGS = 1<<8, /* pass floats as doubles */ - /* the default way to pass floats */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float passing convention, - * just #define __VA_FLOAT_ARGS ... - * before or after #including . - */ -#ifndef __VA_FLOAT_ARGS -#if defined(__STDC__) || defined(__GNUC__) /* what about hppa "cc -Aa" ?? */ - __VA_FLOAT_ARGS = __VA_ANSI_FLOAT_ARGS, -#else - __VA_FLOAT_ARGS = __VA_TRADITIONAL_FLOAT_ARGS, -#endif -#endif - - /* how to pass and return small integer arguments */ - __VA_ANSI_INTEGERS = 0, /* no promotions */ - __VA_TRADITIONAL_INTEGERS = 0, /* promote [u]char, [u]short to [u]int */ - /* Fortunately these two methods are compatible. Our macros work with both. */ - /* the default way to pass and return small integer arguments */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float passing convention, - * just #define __VA_INTEGERS ... - * before or after #including . - */ -#ifndef __VA_INTEGERS -#if defined(__STDC__) || defined(__GNUC__) - __VA_INTEGERS = __VA_ANSI_INTEGERS, -#else - __VA_INTEGERS = __VA_TRADITIONAL_INTEGERS, -#endif -#endif - - /* stack cleanup policy */ - __VA_CDECL_CLEANUP = 0, /* caller pops args after return */ - __VA_STDCALL_CLEANUP = 1<<9, /* callee pops args before return */ - /* currently only supported on __i386__ */ -#ifndef __VA_CLEANUP - __VA_CLEANUP = __VA_CDECL_CLEANUP, -#endif - - /* These are for internal use only */ -#if defined(__i386__) || defined(__m68k__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc64__) || defined(__alpha__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__ia64__) || defined(__x86_64__) || defined(__s390__) - __VA_REGISTER_STRUCT_RETURN = 1<<10, -#endif -#if defined(__mips__) && !defined(__mipsn32__) - __VA_FLOAT_1 = 1<<11, - __VA_FLOAT_2 = 1<<12, -#endif -#if defined(__mipsn32__) || defined(__mips64__) - __VA_REGISTER_FLOATSTRUCT_RETURN = 1<<13, - __VA_REGISTER_DOUBLESTRUCT_RETURN = 1<<14, -#endif - - __VA_flag_for_broken_compilers_that_dont_like_trailing_commas -}; - -/* - * Definition of the `va_alist' type. - */ -typedef struct -{ - /* some va_... macros need these flags */ - int flags; - /* current pointer into the argument array */ - unsigned long aptr; - /* structure return pointer, return type, return type size */ - void* raddr; - enum __VAtype rtype; - unsigned long rsize; -#if defined(__i386__) || (defined(__rs6000__) && defined(__MACH__) && defined(__APPLE__)) - /* Filler word, needed if the numbers of words up to now in this structure */ - /* is odd (because on MSVC, alignof(double) = 8, normally = 4; similarly, */ - /* on MacOS X, the Apple compiler has alignof(double) = 8 whereas the */ - /* standard GCC has alignof(double) = 4. */ - __vaword filler1; -#endif - /* temporary storage for return value */ - union { - char _char; - signed char _schar; - unsigned char _uchar; - short _short; - unsigned short _ushort; - int _int; - unsigned int _uint; - long _long; - unsigned long _ulong; -#if !(defined(__mips64__) || defined(__alpha__)) && defined(HAVE_LONGLONG) - long long _longlong; - unsigned long long _ulonglong; -#endif - float _float; - double _double; - void* _ptr; - __vaword _words[2]; - } tmp; -#if defined(__i386__) || defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__hppa__) || defined(__m88k__) || defined(__ia64__) - void* structraddr; -#endif -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) || defined(__alpha__) || defined(__hppa__) - long memargptr; -#endif -#if defined(__hppa__) - long farg_offset; - long darg_offset; - float farg[4]; - double darg[2]; -#endif -#if defined(__mips__) && !defined(__mipsn32__) - int anum; - float farg[2]; - double darg[2]; -#endif -#if defined(__mipsn32__) || defined(__mips64__) - int anum; - float farg[8]; - double darg[8]; -#endif -#if defined(__sparc64__) - int anum; - float farg[16]; - double darg[16]; -#endif -#if defined(__rs6000__) - double* memfargptr; - double farg[13]; -#if !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) - __vaword regarg[8]; - unsigned long saptr; - int onstack; -#endif -#endif -#if defined(__s390__) - float* memfargptr; - double* memdargptr; - float farg[2]; - double darg[2]; - __vaword regarg[5]; - unsigned long saptr; - int onstack; -#endif -#if defined(__ia64__) - __vaword* saptr; - double* memfargptr; - double farg[8]; -#endif -#if defined(__x86_64__) - double* memfargptr; - double farg[8]; - __vaword* memiargptr; - __vaword iarg[6]; -#endif -} __va_alist; - -typedef __va_alist* va_alist; - - -/* - * Definition of the va_start_xxx macros. - */ -#define __VA_START_FLAGS \ - __VA_STRUCT_RETURN | __VA_FLOAT_RETURN | __VA_STRUCT_ARGS | __VA_FLOAT_ARGS | __VA_INTEGERS | __VA_CLEANUP -#define __va_start(LIST,RETTYPE) \ - ((LIST)->flags = __VA_START_FLAGS, \ - (LIST)->rtype = (RETTYPE) \ - ) -#define va_start_void(LIST) __va_start(LIST,__VAvoid) -#define va_start_char(LIST) __va_start(LIST,__VAchar) -#define va_start_schar(LIST) __va_start(LIST,__VAschar) -#define va_start_uchar(LIST) __va_start(LIST,__VAuchar) -#define va_start_short(LIST) __va_start(LIST,__VAshort) -#define va_start_ushort(LIST) __va_start(LIST,__VAushort) -#define va_start_int(LIST) __va_start(LIST,__VAint) -#define va_start_uint(LIST) __va_start(LIST,__VAuint) -#define va_start_long(LIST) __va_start(LIST,__VAlong) -#define va_start_ulong(LIST) __va_start(LIST,__VAulong) -#define va_start_longlong(LIST) __va_start(LIST,__VAlonglong) -#define va_start_ulonglong(LIST) __va_start(LIST,__VAulonglong) -#define va_start_float(LIST) __va_start(LIST,__VAfloat) -#define va_start_double(LIST) __va_start(LIST,__VAdouble) -#define va_start_ptr(LIST,TYPE) __va_start(LIST,__VAvoidp) - -/* - * va_start_struct: Preparing structure return. - */ -#define va_start_struct(LIST,TYPE,TYPE_SPLITTABLE) \ - _va_start_struct(LIST,sizeof(TYPE),__VA_alignof(TYPE),TYPE_SPLITTABLE) -/* _va_start_struct() is like va_start_struct(), except that you pass - * the type's size and alignment instead of the type itself. - */ -#define _va_start_struct(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - (__va_start(LIST,__VAstruct), \ - (LIST)->rsize = (TYPE_SIZE), \ - ((LIST)->flags & __VA_SUNPROCC_STRUCT_RETURN \ - ? __va_start_struct2(LIST) \ - : ((LIST)->flags & (__VA_PCC_STRUCT_RETURN | __VA_SUNCC_STRUCT_RETURN) \ - ? ((TYPE_SIZE) <= sizeof(__va_struct_buffer) || __va_error2(TYPE_SIZE), \ - (LIST)->raddr = &__va_struct_buffer, \ - 0 \ - ) \ - : (((LIST)->flags & __VA_SMALL_STRUCT_RETURN) \ - && __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ? ((LIST)->raddr = &(LIST)->tmp, \ - __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ) \ - : __va_start_struct2(LIST) \ - )) ) ) -/* Determines whether a structure is returned in registers, - * depending on its size and its word-splittable flag. - */ -#if (defined(__i386__) && defined(_WIN32)) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 \ - || ((TYPE_SIZE) == 8 \ - && (((LIST)->flags & __VA_MSVC_STRUCT_RETURN) \ - || ((TYPE_SPLITTABLE) \ - && ((LIST)->flags & __VA_GCC_STRUCT_RETURN) \ - ) ) ) ) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, 0) -#endif -#if (defined(__i386__) && !defined(_WIN32)) || defined(__m68k__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__s390__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 \ - || ((TYPE_SIZE) == 8 && (TYPE_SPLITTABLE) \ - && ((LIST)->flags & __VA_GCC_STRUCT_RETURN) \ - ) ) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, 0) -#endif -#if defined(__alpha__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 || (TYPE_SIZE) == 8 \ - || ((TYPE_SIZE) == 16 && (TYPE_SPLITTABLE) \ - && ((LIST)->flags & __VA_GCC_STRUCT_RETURN) \ - ) ) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, 0) -#endif -#if defined(__hppa__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((LIST)->flags & __VA_OLDGCC_STRUCT_RETURN \ - ? ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4) \ - : ((TYPE_SIZE) <= 8) \ - ) -/* Test both __VA_OLDGCC_STRUCT_RETURN and __VA_SMALL_STRUCT_RETURN at run time. */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - 0 -#endif -#if defined(__mips__) && !defined(__mipsn32__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__m88k__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4) -/* Test __VA_SMALL_STRUCT_RETURN instead of __VA_REGISTER_STRUCT_RETURN. */ -#if defined(__mips__) && !defined(__mipsn32__) -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->anum++, \ - 0 \ - ) -#else -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - 0 -#endif -#endif -#if defined(__mipsn32__) || defined(__mips64__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((LIST)->flags & __VA_GCC_STRUCT_RETURN \ - ? ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 || (TYPE_SIZE) == 8) \ - : ((TYPE_SIZE) <= 16) \ - ) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. Also turn on - * __VA_REGISTER_FLOATSTRUCT_RETURN or __VA_REGISTER_DOUBLESTRUCT_RETURN if - * the struct will be returned in floating-point registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, \ - (TYPE_ALIGN) == sizeof(float) && (TYPE_SPLITTABLE) \ - && ((TYPE_SIZE) == sizeof(float) || (TYPE_SIZE) == 2*sizeof(float)) \ - && ((LIST)->flags |= __VA_REGISTER_FLOATSTRUCT_RETURN), \ - (TYPE_ALIGN) == sizeof(double) && (TYPE_SPLITTABLE) \ - && ((TYPE_SIZE) == sizeof(double) || (TYPE_SIZE) == 2*sizeof(double)) \ - && ((LIST)->flags |= __VA_REGISTER_DOUBLESTRUCT_RETURN), \ - 0) -#endif -#if defined(__sparc64__) || defined(__ia64__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) <= 32) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, \ - 0) -#endif -#if defined(__x86_64__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) <= 16) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, \ - 0) -#endif -/* - * Preparing structure return in memory. - */ -#if defined(__i386__) -/* Return structure pointer is passed in a special register or as first arg. */ -#define __va_start_struct2(LIST) \ - ((LIST)->flags & __VA_NEXTGCC_STRUCT_RETURN \ - ? ((LIST)->raddr = (LIST)->structraddr, 0) /* special register */ \ - : ((LIST)->raddr = *(void* *)((LIST)->aptr), /* first arg */ \ - (LIST)->aptr += sizeof(void*), \ - 0 \ - ) ) -#endif -#if defined(__alpha__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__s390__) -/* Return structure pointer is passed as first arg. */ -#define __va_start_struct2(LIST) \ - ((LIST)->raddr = *(void* *)((LIST)->aptr), \ - (LIST)->aptr += sizeof(void*), \ - 0 \ - ) -#endif -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc64__) -/* Return structure pointer is passed as first arg. */ -#define __va_start_struct2(LIST) \ - ((LIST)->raddr = *(void* *)((LIST)->aptr), \ - (LIST)->aptr += sizeof(void*), \ - (LIST)->anum++, \ - 0 \ - ) -#endif -#if defined(__x86_64__) -/* Return structure pointer is passed as first arg. */ -#define __va_start_struct2(LIST) \ - ((LIST)->raddr = (void *)(*(LIST)->memiargptr++), \ - 0 \ - ) -#endif -#if defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__hppa__) || defined(__m88k__) || defined(__ia64__) -/* Return structure pointer is passed in a special register. */ -#define __va_start_struct2(LIST) \ - ((LIST)->raddr = (LIST)->structraddr, 0) -#endif - - -/* - * Definition of the va_arg_xxx macros. - */ - -/* Padding of non-struct arguments. */ -#define __va_argsize(TYPE_SIZE) \ - (((TYPE_SIZE) + sizeof(__vaword)-1) & -(long)sizeof(__vaword)) -#if defined(__i386__) || defined(__m68k__) || defined(__mips__) && !defined(__mipsn32__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__alpha__) || defined(__arm__) || (defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__m88k__) || defined(__convex__) || defined(__ia64__) || defined(__x86_64__) -/* args grow up */ -/* small structures < 1 word are adjusted depending on compiler */ -#define __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - __va_argsize(TYPE_SIZE) \ - ) -#define __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - ((TYPE_SIZE) < sizeof(__vaword) \ - ? (TYPE_SIZE) \ - : __va_argsize(TYPE_SIZE) \ - ) \ - ) -#endif -#if defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) -/* args grow up */ -/* small structures < 1 word are adjusted depending on compiler */ -/* Also make sure we switch to the stack pointer after 8 args */ -#define __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((((LIST)->onstack == 0 && (LIST)->aptr >= (long)&(LIST)->regarg[8]) \ - ? ((LIST)->onstack=1, (LIST)->aptr = (LIST)->saptr) : 0), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - __va_argsize(TYPE_SIZE) \ - ) -#define __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((((LIST)->onstack == 0 && (LIST)->aptr >= (long)&(LIST)->regarg[8]) \ - ? ((LIST)->onstack=1, (LIST)->aptr = (LIST)->saptr) : 0), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - ((TYPE_SIZE) < sizeof(__vaword) \ - ? (TYPE_SIZE) \ - : __va_argsize(TYPE_SIZE) \ - ) \ - ) -#endif -#if defined(__s390__) -/* args grow up */ -/* small structures < 1 word are adjusted depending on compiler */ -/* Also make sure we switch to the stack pointer after 5 args */ -#define __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((((LIST)->onstack == 0 && (LIST)->aptr >= (long)&(LIST)->regarg[5]) \ - ? ((LIST)->onstack=1, (LIST)->aptr = (LIST)->saptr) : 0), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - __va_argsize(TYPE_SIZE) \ - ) -#define __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (((((LIST)->onstack == 0 && ((LIST)->aptr >= (long)&(LIST)->regarg[5])) \ - || ((TYPE_SIZE) > sizeof(__vaword) && (LIST)->aptr >= (long)&(LIST)->regarg[4])) \ - ? ((LIST)->onstack=1, (LIST)->aptr = (LIST)->saptr) : 0), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - ((TYPE_SIZE) < sizeof(__vaword) \ - ? (TYPE_SIZE) \ - : __va_argsize(TYPE_SIZE) \ - ) \ - ) -#endif -#if defined(__mipsn32__) || defined(__mips64__) || defined(__sparc64__) -/* args grow up */ -/* small structures < 1 word are adjusted depending on compiler */ -#define __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->anum += __va_argsize(TYPE_SIZE)/sizeof(__vaword), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - __va_argsize(TYPE_SIZE) \ - ) -#define __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->anum += __va_argsize(TYPE_SIZE)/sizeof(__vaword), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - ((TYPE_SIZE) < sizeof(__vaword) \ - ? (TYPE_SIZE) \ - : __va_argsize(TYPE_SIZE) \ - ) \ - ) -#endif -#if defined(__hppa__) -/* args grow down */ -#define __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->aptr = (LIST)->aptr - __va_argsize(TYPE_SIZE), \ - ((TYPE_SIZE) > 4 && ((LIST)->aptr &= -8)), \ - (LIST)->aptr \ - ) -#define __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->aptr = (LIST)->aptr - __va_argsize(TYPE_SIZE), \ - ((TYPE_SIZE) > 4 && ((LIST)->aptr &= -8)), \ - (LIST)->aptr + ((-(TYPE_SIZE)) & 3) \ - ) -#endif -#if defined(__i386__) || defined(__alpha__) || defined(__ia64__) -/* little endian -> small args < 1 word are adjusted to the left */ -#define __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) -#endif -#if defined(__m68k__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc__) || defined(__sparc64__) || defined(__hppa__) || defined(__arm__) || defined(__rs6000__) || defined(__m88k__) || defined(__convex__) || defined(__s390__) -/* big endian -> small args < 1 word are adjusted to the right */ -#define __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) -#endif -#if defined(__mips__) && !defined(__mipsn32__) -/* big endian -> small args < 1 word are adjusted to the right */ -#define __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->anum++, __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN)) -#endif -#if defined(__x86_64__) -/* the first 6 argument words are passed in registers */ -#define __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->memiargptr + ((TYPE_SIZE) + sizeof(__vaword)-1) / sizeof(__vaword) <= &(LIST)->iarg[6] \ - ? ((LIST)->memiargptr += ((TYPE_SIZE) + sizeof(__vaword)-1) / sizeof(__vaword), \ - (LIST)->memiargptr - ((TYPE_SIZE) + sizeof(__vaword)-1) / sizeof(__vaword) \ - ) \ - : (void*)__va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ) -#endif -#define __va_arg(LIST,TYPE) \ - *(TYPE*)__va_arg_adjusted(LIST,sizeof(TYPE),__VA_alignof(TYPE)) - -/* Integer arguments. */ - -#define va_arg_char(LIST) __va_arg(LIST,char) -#define va_arg_schar(LIST) __va_arg(LIST,signed char) -#define va_arg_uchar(LIST) __va_arg(LIST,unsigned char) -#define va_arg_short(LIST) __va_arg(LIST,short) -#define va_arg_ushort(LIST) __va_arg(LIST,unsigned short) -#define va_arg_int(LIST) __va_arg(LIST,int) -#define va_arg_uint(LIST) __va_arg(LIST,unsigned int) -#define va_arg_long(LIST) __va_arg(LIST,long) -#define va_arg_ulong(LIST) __va_arg(LIST,unsigned long) - -#if defined(__mips64__) || defined(__sparc64__) || defined(__alpha__) || defined(__ia64__) || defined(__x86_64__) -/* `long long' and `long' are identical. */ -#define va_arg_longlong va_arg_long -#define va_arg_ulonglong va_arg_ulong -#elif defined(__mipsn32__) -/* `long long' fits in __vaword. */ -#define va_arg_longlong(LIST) __va_arg(LIST,long long) -#define va_arg_ulonglong(LIST) __va_arg(LIST,unsigned long long) -#elif defined(__i386__) || defined(__m68k__) || defined(__mips__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__hppa__) || defined(__arm__) || defined(__rs6000__) || defined(__m88k__) || defined(__convex__) || defined(__s390__) -/* `long long's are passed embedded on the arg stack. */ -#define va_arg_longlong(LIST) __va_arg_longlong(LIST,long long) -#define va_arg_ulonglong(LIST) __va_arg_longlong(LIST,unsigned long long) -#if defined(__i386__) || defined(__m68k__) || defined(__arm__) || (defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__convex__) -/* `long long's are (at most) word-aligned. */ -#define __va_arg_longlong(LIST,TYPE) __va_arg(LIST,TYPE) -#endif -#if defined(__mips__) || (defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__m88k__) -/* `long long's have alignment 8. */ -#define __va_arg_longlong(LIST,TYPE) \ - ((LIST)->aptr = (((LIST)->aptr+__VA_alignof(TYPE)-1) & -(long)__VA_alignof(TYPE)), \ - __va_arg(LIST,TYPE)) -#endif -#if (defined(__sparc__) && !defined(__sparc64__)) || defined(__s390__) -/* Within the arg stack, the alignment is only 4, not 8. */ -/* Beware against unaligned accesses! */ -#define __va_arg_longlong(LIST,TYPE) \ - ((LIST)->tmp._words[0] = ((__vaword*)((LIST)->aptr))[0], \ - (LIST)->tmp._words[1] = ((__vaword*)((LIST)->aptr))[1], \ - (LIST)->aptr += sizeof(TYPE), \ - (TYPE)((LIST)->tmp._longlong) \ - ) -#endif -#if defined(__hppa__) -/* `long long's have alignment 8. */ -#define __va_arg_longlong(LIST,TYPE) \ - ((LIST)->aptr = ((LIST)->aptr & -(long)__VA_alignof(TYPE)), \ - __va_arg(LIST,TYPE)) -#endif -#endif - -/* Floating point arguments. */ - -#define va_arg_float(LIST) \ - ((LIST)->flags & __VA_TRADITIONAL_FLOAT_ARGS \ - ? (float)va_arg_double(LIST) \ - : __va_arg_float(LIST) \ - ) - -#if defined(__i386__) || defined(__m68k__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc__) || defined(__sparc64__) || defined(__alpha__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__ia64__) || defined(__x86_64__) || defined(__s390__) -#define __va_align_double(LIST) -#endif -#if defined(__mips__) && !defined(__mipsn32__) || defined(__m88k__) -/* __VA_alignof(double) > sizeof(__vaword) */ -#define __va_align_double(LIST) \ - (LIST)->aptr = ((LIST)->aptr + sizeof(double)-1) & -(long)sizeof(double), -#endif -#if defined(__hppa__) -#define __va_align_double(LIST) \ - (LIST)->aptr = (LIST)->aptr & -(long)sizeof(double), -#endif - -#if defined(__sparc__) && !defined(__sparc64__) -/* Beware against unaligned `double' accesses! */ -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->tmp._words[0] = ((__vaword*)((LIST)->aptr))[0], \ - (LIST)->tmp._words[1] = ((__vaword*)((LIST)->aptr))[1], \ - (LIST)->aptr += sizeof(double), \ - (LIST)->tmp._double \ - ) -#endif -#if defined(__alpha__) -/* The first 6 floating point registers have been stored in another place. */ -#define va_arg_double(LIST) \ - (((LIST)->aptr += sizeof(double)) <= (LIST)->memargptr \ - ? *(double*)((LIST)->aptr - sizeof(double) - 6*sizeof(double)) \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - ) -#define __va_arg_float(LIST) \ - (((LIST)->aptr += sizeof(double)) <= (LIST)->memargptr \ - ? /* The first 6 args have been put into memory by "stt" instructions */\ - /* (see vacall-alpha.s!). Therefore load them as doubles. */ \ - /* When viewed as floats, the value will be the correct one. */ \ - (float)*(double*)((LIST)->aptr - sizeof(double) - 6*sizeof(double)) \ - : /* These args have been put into memory by "sts" instructions, */ \ - /* therefore load them as floats. */ \ - *(float*)((LIST)->aptr - sizeof(double)) \ - ) -#endif -#if defined(__hppa__) -/* The first 4 float registers and the first 2 double registers are stored - * elsewhere. - */ -#if 1 /* gcc-2.5.2 passes these args in general registers! A bug, I think. */ -#define __va_arg_float(LIST) \ - (*(float*)((LIST)->aptr -= sizeof(float))) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - *(double*)((LIST)->aptr -= sizeof(double)) \ - ) -#else /* this would be correct if the args were passed in float registers. */ -#define __va_arg_float(LIST) \ - (((LIST)->aptr -= sizeof(float)) >= (LIST)->memargptr \ - ? /* The first 4 float args are stored separately. */ \ - *(float*)((LIST)->aptr + (LIST)->farg_offset) \ - : *(float*)((LIST)->aptr) \ - ) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (((LIST)->aptr -= sizeof(double)) >= (LIST)->memargptr \ - ? /* The first 2 double args are stored separately. */ \ - *(double*)((LIST)->aptr + (LIST)->darg_offset) \ - : *(double*)((LIST)->aptr) \ - )) -#endif -#endif -#if defined(__mips__) && !defined(__mipsn32__) -/* The first 0,1,2 registers are stored elsewhere if they are floating-point - * parameters. - */ -#define __va_arg_float(LIST) \ - ((LIST)->aptr += sizeof(float), \ - (LIST)->anum++, \ - ((LIST)->anum == 1 \ - ? ((LIST)->flags |= __VA_FLOAT_1, (LIST)->farg[0]) \ - : ((LIST)->anum == 2 && ((LIST)->flags & __VA_FLOAT_1) \ - ? (/* (LIST)->flags |= __VA_FLOAT_2, */ (LIST)->farg[1]) \ - : *(float*)((LIST)->aptr - sizeof(float)) \ - )) ) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - (LIST)->anum++, \ - ((LIST)->anum == 1 \ - ? ((LIST)->flags |= __VA_FLOAT_1, (LIST)->darg[0]) \ - : ((LIST)->anum == 2 && ((LIST)->flags & __VA_FLOAT_1) \ - ? (/* (LIST)->flags |= __VA_FLOAT_2, */ (LIST)->darg[1]) \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - )) ) -#endif -#if defined(__mipsn32__) || defined(__mips64__) -/* The first 0,..,8 registers are stored elsewhere if they are floating-point - * parameters. - */ -#define __va_arg_float(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - (++(LIST)->anum <= 8 \ - ? (LIST)->farg[(LIST)->anum - 1] \ - : *(float*)((LIST)->aptr - sizeof(double)) \ - )) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - (++(LIST)->anum <= 8 \ - ? (LIST)->darg[(LIST)->anum - 1] \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__sparc64__) -/* The first 0,..,16 registers are stored elsewhere if they are floating-point - * parameters. - */ -#define __va_arg_float(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - (++(LIST)->anum <= 16 \ - ? (LIST)->farg[(LIST)->anum - 1] \ - : *(float*)((LIST)->aptr - sizeof(double)) \ - )) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - (++(LIST)->anum <= 16 \ - ? (LIST)->darg[(LIST)->anum - 1] \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) -/* The first 13 floating-point args have been stored elsewhere. */ -#define __va_arg_float(LIST) \ - ((LIST)->aptr += sizeof(float), \ - ((LIST)->memfargptr < &(LIST)->farg[13] \ - ? (float) *((LIST)->memfargptr++) \ - : *(float*)((LIST)->aptr - sizeof(float)) \ - )) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - ((LIST)->memfargptr < &(LIST)->farg[13] \ - ? *((LIST)->memfargptr++) \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) -/* The first 8 floating-point args have been stored elsewhere. */ -#define __va_arg_float(LIST) \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? (float) *((LIST)->memfargptr++) \ - : ((LIST)->aptr = ((LIST)->onstack == 0 \ - ? ((LIST)->onstack=1, (LIST)->saptr) \ - : (LIST)->aptr \ - ), \ - (LIST)->aptr += sizeof(float), \ - *(float*)((LIST)->aptr - sizeof(float)) \ - )) -#define va_arg_double(LIST) \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? *((LIST)->memfargptr++) \ - : ((LIST)->aptr = ((LIST)->onstack == 0 \ - ? ((LIST)->onstack=1, (LIST)->saptr) \ - : (LIST)->aptr \ - ), \ - __va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__s390__) -/* The first 2 floating-point args have been stored elsewhere. */ -#define __va_arg_float(LIST) \ - ((LIST)->memfargptr < &(LIST)->farg[2] \ - ? (LIST)->memdargptr++, (float) *((LIST)->memfargptr++) \ - : ((LIST)->aptr = ((LIST)->onstack == 0 \ - ? ((LIST)->onstack=1, (LIST)->saptr) \ - : (LIST)->aptr \ - ), \ - (LIST)->aptr += sizeof(float), \ - *(float*)((LIST)->aptr - sizeof(float)) \ - )) -#define va_arg_double(LIST) \ - ((LIST)->memdargptr < &(LIST)->darg[2] \ - ? (LIST)->memfargptr++, *((LIST)->memdargptr++) \ - : ((LIST)->aptr = ((LIST)->onstack == 0 \ - ? ((LIST)->onstack=1, (LIST)->saptr) \ - : (LIST)->aptr \ - ), \ - __va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__ia64__) -/* The first 8 floating-point args have been stored elsewhere. */ -#define __va_arg_float(LIST) \ - ((LIST)->aptr += sizeof(__vaword), \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? (float) *((LIST)->memfargptr++) \ - : *(float*)((LIST)->aptr - sizeof(__vaword)) \ - )) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? *((LIST)->memfargptr++) \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__x86_64__) -/* The first 8 floating-point args have been stored elsewhere. */ -#define __va_arg_float(LIST) \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? ((LIST)->memfargptr++, \ - *(float*)((LIST)->memfargptr - 1) \ - ) \ - : ((LIST)->aptr += sizeof(__vaword), \ - *(float*)((LIST)->aptr - sizeof(__vaword)) \ - ) ) -#define va_arg_double(LIST) \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? *(LIST)->memfargptr++ \ - : ((LIST)->aptr += sizeof(__vaword), \ - *(double*)((LIST)->aptr - sizeof(__vaword)) \ - ) ) -#endif -#ifndef __va_arg_float -#define __va_arg_float(LIST) __va_arg(LIST,float) -#endif -#ifndef va_arg_double -#define va_arg_double(LIST) \ - (__va_align_double(LIST) __va_arg(LIST,double)) -#endif - -/* Pointer arguments. */ -#define va_arg_ptr(LIST,TYPE) __va_arg(LIST,TYPE) - -/* Structure arguments. */ -#define va_arg_struct(LIST,TYPE) \ - *(TYPE*)__va_arg_struct(LIST,sizeof(TYPE),__VA_alignof(TYPE)) -/* _va_arg_struct() is like va_arg_struct(), except that you pass the type's - * size and alignment instead of the type and get the value's address instead - * of the value itself. - */ -#define _va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (void*)__va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) -/* Structure argument alignment. */ -#if defined(__i386__) && defined(_MSC_VER) -/* In MSVC, doubles inside structures have alignment 8, i.e. - * __VA_alignof(double) = 8, but doubles (and also structures containing - * doubles) are passed on the stack with alignment 4. Looks really weird. - */ -#define __va_struct_alignment(TYPE_ALIGN) \ - ((TYPE_ALIGN) <= 4 ? (TYPE_ALIGN) : 4) -#else -#define __va_struct_alignment(TYPE_ALIGN) \ - (TYPE_ALIGN) -#endif -#define __va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (LIST)->aptr = ((LIST)->aptr + __va_struct_alignment(TYPE_ALIGN)-1) & -(long)__va_struct_alignment(TYPE_ALIGN), -#if defined(__i386__) || defined(__m68k__) || defined(__alpha__) || defined(__arm__) || defined(__m88k__) || defined(__convex__) || defined(__x86_64__) -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ) -#endif -#if defined(__mips__) && !defined(__mipsn32__) -/* small structures < 1 word are adjusted depending on compiler */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->flags & __VA_SGICC_STRUCT_ARGS \ - ? /* SGI MIPS cc passes small structures left-adjusted, although big-endian! */\ - __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - : /* SGI MIPS gcc passes small structures within the first four words left- \ - * adjusted, for compatibility with cc. But structures in memory are passed \ - * right-adjusted!! See gcc-2.6.3/config/mips/mips.c:function_arg(). \ - */ \ - ((LIST)->aptr < (LIST)->memargptr \ - ? __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - : __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - )) ) -#endif -#if defined(__mipsn32__) || defined(__mips64__) -/* small structures < 1 word are adjusted depending on compiler */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->flags & __VA_SGICC_STRUCT_ARGS \ - ? /* SGI MIPS cc passes small structures left-adjusted, although big-endian! */\ - __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - : /* SGI MIPS gcc passes small structures right-adjusted. */ \ - __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - )) -#endif -#if defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) -/* small structures < 1 word are adjusted depending on compiler */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->flags & __VA_AIXCC_STRUCT_ARGS \ - ? /* AIX cc and xlc pass small structures left-adjusted, although big-endian! */\ - __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - : /* gcc passes small structures right-adjusted. */ \ - __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - )) -#endif -#if defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) -/* Structures are passed as pointers to caller-made local copies. */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - va_arg_ptr(LIST,void*) -#endif -#if defined(__sparc__) && !defined(__sparc64__) -/* Structures are passed as pointers to caller-made local copies. */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - va_arg_ptr(LIST,void*) -#endif -#if defined(__sparc64__) -/* Small structures are passed left-adjusted, although big-endian! */ -/* Big structures are passed as pointers to caller-made local copies. */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((TYPE_SIZE) <= 16 \ - ? (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN)) \ - : va_arg_ptr(LIST,void*) \ - ) -#endif -#if defined(__s390__) -/* Structures <= 8 bytes are passed as embedded copies on the arg stack. - * Big structures are passed as pointers to caller-made local copies. - */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((TYPE_SIZE) != 1 && (TYPE_SIZE) != 2 && (TYPE_SIZE) != 4 && (TYPE_SIZE) != 8 \ - ? va_arg_ptr(LIST,void*) \ - : (void*)__va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ) -#endif -#if defined(__hppa__) -/* Structures <= 8 bytes are passed as embedded copies on the arg stack. - * Big structures are passed as pointers to caller-made local copies. - */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((TYPE_SIZE) > 8 \ - ? va_arg_ptr(LIST,void*) \ - : /* FIXME: gcc-2.6.3 passes structures <= 4 bytes in memory left-adjusted! ?? */\ - (void*)__va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ) -#endif -#if defined(__ia64__) -/* Types larger than a word have 2-word alignment. */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((TYPE_SIZE) > sizeof(__vaword) && (((__vaword*)(LIST)->aptr - (LIST)->saptr) & 1) ? (LIST)->aptr += sizeof(__vaword) : 0), \ - __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ) -#endif - - -/* - * Definition of the va_return_xxx macros. - */ -#define __va_return(LIST,RETTYPE) \ - (((LIST)->rtype == (RETTYPE)) || __va_error1((LIST)->rtype,RETTYPE)) -#define va_return_void(LIST) \ - __va_return(LIST,__VAvoid) -#define va_return_char(LIST,VAL) \ - (__va_return(LIST,__VAchar), (LIST)->tmp._char = (VAL)) -#define va_return_schar(LIST,VAL) \ - (__va_return(LIST,__VAschar), (LIST)->tmp._schar = (VAL)) -#define va_return_uchar(LIST,VAL) \ - (__va_return(LIST,__VAuchar), (LIST)->tmp._uchar = (VAL)) -#define va_return_short(LIST,VAL) \ - (__va_return(LIST,__VAshort), (LIST)->tmp._short = (VAL)) -#define va_return_ushort(LIST,VAL) \ - (__va_return(LIST,__VAushort), (LIST)->tmp._ushort = (VAL)) -#define va_return_int(LIST,VAL) \ - (__va_return(LIST,__VAint), (LIST)->tmp._int = (VAL)) -#define va_return_uint(LIST,VAL) \ - (__va_return(LIST,__VAuint), (LIST)->tmp._uint = (VAL)) -#define va_return_long(LIST,VAL) \ - (__va_return(LIST,__VAlong), (LIST)->tmp._long = (VAL)) -#define va_return_ulong(LIST,VAL) \ - (__va_return(LIST,__VAulong), (LIST)->tmp._ulong = (VAL)) -#if defined(__mips64__) || defined(__sparc64__) || defined(__alpha__) || defined(__ia64__) || defined(__x86_64__) -#define va_return_longlong(LIST,VAL) \ - (__va_return(LIST,__VAlonglong), (LIST)->tmp._long = (VAL)) -#define va_return_ulonglong(LIST,VAL) \ - (__va_return(LIST,__VAulonglong), (LIST)->tmp._ulong = (VAL)) -#else -#define va_return_longlong(LIST,VAL) \ - (__va_return(LIST,__VAlonglong), (LIST)->tmp._longlong = (VAL)) -#define va_return_ulonglong(LIST,VAL) \ - (__va_return(LIST,__VAulonglong), (LIST)->tmp._ulonglong = (VAL)) -#endif -#define va_return_float(LIST,VAL) \ - (__va_return(LIST,__VAfloat), (LIST)->tmp._float = (VAL)) -#define va_return_double(LIST,VAL) \ - (__va_return(LIST,__VAdouble), (LIST)->tmp._double = (VAL)) -#define va_return_ptr(LIST,TYPE,VAL) \ - (__va_return(LIST,__VAvoidp), (LIST)->tmp._ptr = (void*)(TYPE)(VAL)) -#define va_return_struct(LIST,TYPE,VAL) \ - (__va_return(LIST,__VAstruct), *(TYPE*)((LIST)->raddr) = (VAL)) -#define _va_return_struct(LIST,TYPE_SIZE,TYPE_ALIGN,VAL_ADDR) \ - (__va_return(LIST,__VAstruct), \ - __structcpy((void*)((LIST)->raddr),VAL_ADDR,TYPE_SIZE,TYPE_ALIGN) \ - ) - - -/* Determine whether a struct type is word-splittable, i.e. whether each of - * its components fit into a register. - * The entire computation is done at compile time. - */ -#define va_word_splittable_1(slot1) \ - (__va_offset1(slot1)/sizeof(__vaword) == (__va_offset1(slot1)+sizeof(slot1)-1)/sizeof(__vaword)) -#define va_word_splittable_2(slot1,slot2) \ - ((__va_offset1(slot1)/sizeof(__vaword) == (__va_offset1(slot1)+sizeof(slot1)-1)/sizeof(__vaword)) \ - && (__va_offset2(slot1,slot2)/sizeof(__vaword) == (__va_offset2(slot1,slot2)+sizeof(slot2)-1)/sizeof(__vaword)) \ - ) -#define va_word_splittable_3(slot1,slot2,slot3) \ - ((__va_offset1(slot1)/sizeof(__vaword) == (__va_offset1(slot1)+sizeof(slot1)-1)/sizeof(__vaword)) \ - && (__va_offset2(slot1,slot2)/sizeof(__vaword) == (__va_offset2(slot1,slot2)+sizeof(slot2)-1)/sizeof(__vaword)) \ - && (__va_offset3(slot1,slot2,slot3)/sizeof(__vaword) == (__va_offset3(slot1,slot2,slot3)+sizeof(slot3)-1)/sizeof(__vaword)) \ - ) -#define va_word_splittable_4(slot1,slot2,slot3,slot4) \ - ((__va_offset1(slot1)/sizeof(__vaword) == (__va_offset1(slot1)+sizeof(slot1)-1)/sizeof(__vaword)) \ - && (__va_offset2(slot1,slot2)/sizeof(__vaword) == (__va_offset2(slot1,slot2)+sizeof(slot2)-1)/sizeof(__vaword)) \ - && (__va_offset3(slot1,slot2,slot3)/sizeof(__vaword) == (__va_offset3(slot1,slot2,slot3)+sizeof(slot3)-1)/sizeof(__vaword)) \ - && (__va_offset4(slot1,slot2,slot3,slot4)/sizeof(__vaword) == (__va_offset4(slot1,slot2,slot3,slot4)+sizeof(slot4)-1)/sizeof(__vaword)) \ - ) -#define __va_offset1(slot1) \ - 0 -#define __va_offset2(slot1,slot2) \ - ((__va_offset1(slot1)+sizeof(slot1)+__VA_alignof(slot2)-1) & -(long)__VA_alignof(slot2)) -#define __va_offset3(slot1,slot2,slot3) \ - ((__va_offset2(slot1,slot2)+sizeof(slot2)+__VA_alignof(slot3)-1) & -(long)__VA_alignof(slot3)) -#define __va_offset4(slot1,slot2,slot3,slot4) \ - ((__va_offset3(slot1,slot2,slot3)+sizeof(slot3)+__VA_alignof(slot4)-1) & -(long)__VA_alignof(slot4)) - - -/* - * Miscellaneous declarations. - */ -#ifdef __cplusplus -extern "C" void __vacall_r (); /* the return type is variable, not void! */ -#else -extern void __vacall_r (); /* the return type is variable, not void! */ -#endif -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -extern int __va_error1 (enum __VAtype, enum __VAtype); -extern int __va_error2 (unsigned int); -extern void __structcpy (void* dest, void* src, unsigned long size, unsigned long alignment); -#else -extern int __va_error1 (); -extern int __va_error2 (); -extern void __structcpy (); -#endif -typedef union { __vaword room[__VA_ALIST_WORDS]; double align; } __va_struct_buffer_t; -extern __va_struct_buffer_t __va_struct_buffer; - - -#endif /* _VACALL_R_H */ DELETED ffcall/callback/vacall_r/vacall_r.h.msvc Index: ffcall/callback/vacall_r/vacall_r.h.msvc ================================================================== --- ffcall/callback/vacall_r/vacall_r.h.msvc +++ /dev/null @@ -1,1286 +0,0 @@ -#ifndef _VACALL_R_H /*-*- C -*-*/ -#define _VACALL_R_H - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - - -/* These definitions are adjusted by `configure' automatically. */ - -/* CPU */ -#ifndef __i386__ -#define __i386__ 1 -#endif -#ifndef __m68k__ -#undef __m68k__ -#endif -#ifndef __mips__ -#undef __mips__ -#endif -#ifndef __mipsn32__ -#undef __mipsn32__ -#endif -#ifndef __mips64__ -#undef __mips64__ -#endif -#ifndef __sparc__ -#undef __sparc__ -#endif -#ifndef __sparc64__ -#undef __sparc64__ -#endif -#ifndef __alpha__ -#undef __alpha__ -#endif -#ifndef __hppa__ -#undef __hppa__ -#endif -#ifndef __arm__ -#undef __arm__ -#endif -#ifndef __rs6000__ -#undef __rs6000__ -#endif -#ifndef __s390__ -#undef __s390__ -#endif -#ifndef __m88k__ -#undef __m88k__ -#endif -#ifndef __convex__ -#undef __convex__ -#endif -#ifndef __ia64__ -#undef __ia64__ -#endif -#ifndef __x86_64__ -#undef __x86_64__ -#endif - -/* Calling convention */ -/* Define if using pcc non-reentrant struct return convention */ -#undef __PCC_STRUCT_RETURN__ -/* Define if small structs are returned in registers */ -#define __SMALL_STRUCT_RETURN__ 1 -/* Define if floating-point results are returned in the integer registers */ -#undef __IREG_FLOAT_RETURN__ - -/* CL_LONGLONG */ -/* Define if your compiler supports the `long long' type. */ -#ifndef HAVE_LONGLONG -#undef HAVE_LONGLONG -#endif - -/* AC_C_CHAR_UNSIGNED */ -#ifndef __CHAR_UNSIGNED__ -#undef __CHAR_UNSIGNED__ -#endif - -/* End of definitions adjusted by `configure'. */ - - -/* Max # words in argument-list and temporary structure storage. - */ -#ifndef __VA_ALIST_WORDS -#define __VA_ALIST_WORDS 256 -#endif - -/* The `signed' keyword. - */ -#if !defined(__STDC__) && !defined(__CHAR_UNSIGNED__) && !defined(signed) -#define signed -#endif - -/* Determine the alignment of a type at compile time. - */ -#if defined(__GNUC__) -#define __VA_alignof __alignof__ -#else -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) /* SGI compiler */ -#define __VA_alignof __builtin_alignof -#else -#define __VA_offsetof(type,ident) ((unsigned long)&(((type*)0)->ident)) -#define __VA_alignof(type) __VA_offsetof(struct { char __slot1; type __slot2; }, __slot2) -#endif -#endif - -/* C builtin types. - */ -#if defined(__mipsn32__) -typedef long long __vaword; -#else -typedef long __vaword; -#endif - -enum __VAtype -{ - __VAvoid, - __VAchar, - __VAschar, - __VAuchar, - __VAshort, - __VAushort, - __VAint, - __VAuint, - __VAlong, - __VAulong, - __VAlonglong, - __VAulonglong, - __VAfloat, - __VAdouble, - __VAvoidp, - __VAstruct -}; - -enum __VA_alist_flags -{ - - /* how to return structs */ - /* There are basically 3 ways to return structs: - * a. The called function returns a pointer to static data. Not reentrant. - * b. The caller passes the return structure address in a dedicated register - * or as a first (or last), invisible argument. The called function stores - * its result there. - * c. Like b, and the called function also returns the return structure - * address in the return value register. (This is not very distinguishable - * from b.) - * Independently of this, - * r. small structures (<= 4 or <= 8 bytes) may be returned in the return - * value register(s), or - * m. even small structures are passed in memory. - */ - /* gcc-2.6.3 employs the following strategy: - * - If PCC_STATIC_STRUCT_RETURN is defined in the machine description - * it uses method a, else method c. - * - If flag_pcc_struct_return is set (either by -fpcc-struct-return or if - * DEFAULT_PCC_STRUCT_RETURN is defined to 1 in the machine description) - * it uses method m, else (either by -freg-struct-return or if - * DEFAULT_PCC_STRUCT_RETURN is defined to 0 in the machine description) - * method r. - */ - __VA_PCC_STRUCT_RETURN = 1<<0, /* a: need to copy the struct */ - __VA_SMALL_STRUCT_RETURN = 1<<1, /* r: special case for small structs */ - __VA_GCC_STRUCT_RETURN = 1<<2, /* consider 8 byte structs as small */ -#if defined(__sparc__) && !defined(__sparc64__) - __VA_SUNCC_STRUCT_RETURN = 1<<3, - __VA_SUNPROCC_STRUCT_RETURN = 1<<4, -#else - __VA_SUNCC_STRUCT_RETURN = 0, - __VA_SUNPROCC_STRUCT_RETURN = 0, -#endif -#if defined(__i386__) - __VA_NEXTGCC_STRUCT_RETURN = 1<<3, - __VA_MSVC_STRUCT_RETURN = 1<<4, -#endif -#if defined(__hppa__) - __VA_OLDGCC_STRUCT_RETURN = 1<<3, -#endif - /* the default way to return structs */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another struct returning convention, - * just #define __VA_STRUCT_RETURN ... - * before or after #including . - */ -#ifndef __VA_STRUCT_RETURN - __VA_STRUCT_RETURN = -#if defined(__sparc__) && !defined(__sparc64__) && defined(sun) && defined(__SUNPRO_C) /* SUNWspro cc */ - __VA_SUNPROCC_STRUCT_RETURN, -#else -#if defined(__PCC_STRUCT_RETURN__) /* defined through configure, see above */ - __VA_PCC_STRUCT_RETURN | -#if defined(__sparc__) && !defined(__sparc64__) && defined(sun) && !(defined(__STDC__) || defined(__GNUC__)) /* sun cc */ - __VA_SUNCC_STRUCT_RETURN, -#else - 0, -#endif -#else -#if defined(__SMALL_STRUCT_RETURN__) || defined(__mipsn32__) || defined(__mips64__) /* defined through configure, see above */ - __VA_SMALL_STRUCT_RETURN | -#endif -#if defined(__GNUC__) - __VA_GCC_STRUCT_RETURN | -#endif -#if defined(__i386__) && defined(NeXT) && defined(__GNUC__) /* NeXT gcc-2.5.8 */ - __VA_NEXTGCC_STRUCT_RETURN | -#endif -#if defined(__i386__) && defined(_MSC_VER) /* MSVC 4.0 */ - __VA_MSVC_STRUCT_RETURN | -#endif -#if defined(__hppa__) && defined(__GNUC__) && (__GNUC__ < 3) && (__GNUC_MINOR__ < 7) - __VA_OLDGCC_STRUCT_RETURN | -#endif - 0, -#endif -#endif -#endif - - /* how to return floats */ -#if defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) - __VA_SUNCC_FLOAT_RETURN = 1<<5, -#endif -#if defined(__m68k__) - __VA_FREG_FLOAT_RETURN = 1<<6, -#endif - /* the default way to return floats */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float returning convention, - * just #define __VA_FLOAT_RETURN ... - * before or after #including . - */ -#ifndef __VA_FLOAT_RETURN -#if (defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__))) && !defined(__GNUC__) && defined(sun) && !defined(__SUNPRO_C) /* sun cc */ - __VA_FLOAT_RETURN = __VA_SUNCC_FLOAT_RETURN, -#elif (defined(__m68k__) && !defined(__IREG_FLOAT_RETURN__)) - __VA_FLOAT_RETURN = __VA_FREG_FLOAT_RETURN, -#else - __VA_FLOAT_RETURN = 0, -#endif -#endif - - /* how to pass structs */ -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) - __VA_SGICC_STRUCT_ARGS = 1<<7, -#endif -#if defined(__rs6000__) - __VA_AIXCC_STRUCT_ARGS = 1<<7, -#endif - /* the default way to pass floats */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float passing convention, - * just #define __VA_STRUCT_ARGS ... - * before or after #including . - */ -#ifndef __VA_STRUCT_ARGS -#if (defined(__mips__) || defined(__mipsn32__) || defined(__mips64__)) && !defined(__GNUC__) /* SGI mips cc */ - __VA_STRUCT_ARGS = __VA_SGICC_STRUCT_ARGS, -#else -#if defined(__rs6000__) && defined(_AIX) && !defined(__GNUC__) /* AIX cc, xlc */ - __VA_STRUCT_ARGS = __VA_AIXCC_STRUCT_ARGS, -#else - __VA_STRUCT_ARGS = 0, -#endif -#endif -#endif - - /* how to pass floats */ - /* ANSI C compilers and GNU gcc pass floats as floats. - * K&R C compilers pass floats as doubles. - * (Except some compilers like SGI MIPS "cc" and "cc -cckr" if a prototype is - * known for the called functions. But to compile a program with prototypes, - * "cc -ansi" is better anyway. - */ - __VA_ANSI_FLOAT_ARGS = 0, /* pass floats as floats */ - __VA_TRADITIONAL_FLOAT_ARGS = 1<<8, /* pass floats as doubles */ - /* the default way to pass floats */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float passing convention, - * just #define __VA_FLOAT_ARGS ... - * before or after #including . - */ -#ifndef __VA_FLOAT_ARGS -#if defined(__STDC__) || defined(__GNUC__) /* what about hppa "cc -Aa" ?? */ - __VA_FLOAT_ARGS = __VA_ANSI_FLOAT_ARGS, -#else - __VA_FLOAT_ARGS = __VA_TRADITIONAL_FLOAT_ARGS, -#endif -#endif - - /* how to pass and return small integer arguments */ - __VA_ANSI_INTEGERS = 0, /* no promotions */ - __VA_TRADITIONAL_INTEGERS = 0, /* promote [u]char, [u]short to [u]int */ - /* Fortunately these two methods are compatible. Our macros work with both. */ - /* the default way to pass and return small integer arguments */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float passing convention, - * just #define __VA_INTEGERS ... - * before or after #including . - */ -#ifndef __VA_INTEGERS -#if defined(__STDC__) || defined(__GNUC__) - __VA_INTEGERS = __VA_ANSI_INTEGERS, -#else - __VA_INTEGERS = __VA_TRADITIONAL_INTEGERS, -#endif -#endif - - /* stack cleanup policy */ - __VA_CDECL_CLEANUP = 0, /* caller pops args after return */ - __VA_STDCALL_CLEANUP = 1<<9, /* callee pops args before return */ - /* currently only supported on __i386__ */ -#ifndef __VA_CLEANUP - __VA_CLEANUP = __VA_CDECL_CLEANUP, -#endif - - /* These are for internal use only */ -#if defined(__i386__) || defined(__m68k__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc64__) || defined(__alpha__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__ia64__) || defined(__x86_64__) || defined(__s390__) - __VA_REGISTER_STRUCT_RETURN = 1<<10, -#endif -#if defined(__mips__) && !defined(__mipsn32__) - __VA_FLOAT_1 = 1<<11, - __VA_FLOAT_2 = 1<<12, -#endif -#if defined(__mipsn32__) || defined(__mips64__) - __VA_REGISTER_FLOATSTRUCT_RETURN = 1<<13, - __VA_REGISTER_DOUBLESTRUCT_RETURN = 1<<14, -#endif - - __VA_flag_for_broken_compilers_that_dont_like_trailing_commas -}; - -/* - * Definition of the `va_alist' type. - */ -typedef struct -{ - /* some va_... macros need these flags */ - int flags; - /* current pointer into the argument array */ - unsigned long aptr; - /* structure return pointer, return type, return type size */ - void* raddr; - enum __VAtype rtype; - unsigned long rsize; -#if defined(__i386__) || (defined(__rs6000__) && defined(__MACH__) && defined(__APPLE__)) - /* Filler word, needed if the numbers of words up to now in this structure */ - /* is odd (because on MSVC, alignof(double) = 8, normally = 4; similarly, */ - /* on MacOS X, the Apple compiler has alignof(double) = 8 whereas the */ - /* standard GCC has alignof(double) = 4. */ - __vaword filler1; -#endif - /* temporary storage for return value */ - union { - char _char; - signed char _schar; - unsigned char _uchar; - short _short; - unsigned short _ushort; - int _int; - unsigned int _uint; - long _long; - unsigned long _ulong; -#if !(defined(__mips64__) || defined(__alpha__)) && defined(HAVE_LONGLONG) - long long _longlong; - unsigned long long _ulonglong; -#endif - float _float; - double _double; - void* _ptr; - __vaword _words[2]; - } tmp; -#if defined(__i386__) || defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__hppa__) || defined(__m88k__) || defined(__ia64__) - void* structraddr; -#endif -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) || defined(__alpha__) || defined(__hppa__) - long memargptr; -#endif -#if defined(__hppa__) - long farg_offset; - long darg_offset; - float farg[4]; - double darg[2]; -#endif -#if defined(__mips__) && !defined(__mipsn32__) - int anum; - float farg[2]; - double darg[2]; -#endif -#if defined(__mipsn32__) || defined(__mips64__) - int anum; - float farg[8]; - double darg[8]; -#endif -#if defined(__sparc64__) - int anum; - float farg[16]; - double darg[16]; -#endif -#if defined(__rs6000__) - double* memfargptr; - double farg[13]; -#if !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) - __vaword regarg[8]; - unsigned long saptr; - int onstack; -#endif -#endif -#if defined(__s390__) - float* memfargptr; - double* memdargptr; - float farg[2]; - double darg[2]; - __vaword regarg[5]; - unsigned long saptr; - int onstack; -#endif -#if defined(__ia64__) - __vaword* saptr; - double* memfargptr; - double farg[8]; -#endif -#if defined(__x86_64__) - double* memfargptr; - double farg[8]; - __vaword* memiargptr; - __vaword iarg[6]; -#endif -} __va_alist; - -typedef __va_alist* va_alist; - - -/* - * Definition of the va_start_xxx macros. - */ -#define __VA_START_FLAGS \ - __VA_STRUCT_RETURN | __VA_FLOAT_RETURN | __VA_STRUCT_ARGS | __VA_FLOAT_ARGS | __VA_INTEGERS | __VA_CLEANUP -#define __va_start(LIST,RETTYPE) \ - ((LIST)->flags = __VA_START_FLAGS, \ - (LIST)->rtype = (RETTYPE) \ - ) -#define va_start_void(LIST) __va_start(LIST,__VAvoid) -#define va_start_char(LIST) __va_start(LIST,__VAchar) -#define va_start_schar(LIST) __va_start(LIST,__VAschar) -#define va_start_uchar(LIST) __va_start(LIST,__VAuchar) -#define va_start_short(LIST) __va_start(LIST,__VAshort) -#define va_start_ushort(LIST) __va_start(LIST,__VAushort) -#define va_start_int(LIST) __va_start(LIST,__VAint) -#define va_start_uint(LIST) __va_start(LIST,__VAuint) -#define va_start_long(LIST) __va_start(LIST,__VAlong) -#define va_start_ulong(LIST) __va_start(LIST,__VAulong) -#define va_start_longlong(LIST) __va_start(LIST,__VAlonglong) -#define va_start_ulonglong(LIST) __va_start(LIST,__VAulonglong) -#define va_start_float(LIST) __va_start(LIST,__VAfloat) -#define va_start_double(LIST) __va_start(LIST,__VAdouble) -#define va_start_ptr(LIST,TYPE) __va_start(LIST,__VAvoidp) - -/* - * va_start_struct: Preparing structure return. - */ -#define va_start_struct(LIST,TYPE,TYPE_SPLITTABLE) \ - _va_start_struct(LIST,sizeof(TYPE),__VA_alignof(TYPE),TYPE_SPLITTABLE) -/* _va_start_struct() is like va_start_struct(), except that you pass - * the type's size and alignment instead of the type itself. - */ -#define _va_start_struct(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - (__va_start(LIST,__VAstruct), \ - (LIST)->rsize = (TYPE_SIZE), \ - ((LIST)->flags & __VA_SUNPROCC_STRUCT_RETURN \ - ? __va_start_struct2(LIST) \ - : ((LIST)->flags & (__VA_PCC_STRUCT_RETURN | __VA_SUNCC_STRUCT_RETURN) \ - ? ((TYPE_SIZE) <= sizeof(__va_struct_buffer) || __va_error2(TYPE_SIZE), \ - (LIST)->raddr = &__va_struct_buffer, \ - 0 \ - ) \ - : (((LIST)->flags & __VA_SMALL_STRUCT_RETURN) \ - && __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ? ((LIST)->raddr = &(LIST)->tmp, \ - __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ) \ - : __va_start_struct2(LIST) \ - )) ) ) -/* Determines whether a structure is returned in registers, - * depending on its size and its word-splittable flag. - */ -#if (defined(__i386__) && defined(_WIN32)) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 \ - || ((TYPE_SIZE) == 8 \ - && (((LIST)->flags & __VA_MSVC_STRUCT_RETURN) \ - || ((TYPE_SPLITTABLE) \ - && ((LIST)->flags & __VA_GCC_STRUCT_RETURN) \ - ) ) ) ) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, 0) -#endif -#if (defined(__i386__) && !defined(_WIN32)) || defined(__m68k__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__s390__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 \ - || ((TYPE_SIZE) == 8 && (TYPE_SPLITTABLE) \ - && ((LIST)->flags & __VA_GCC_STRUCT_RETURN) \ - ) ) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, 0) -#endif -#if defined(__alpha__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 || (TYPE_SIZE) == 8 \ - || ((TYPE_SIZE) == 16 && (TYPE_SPLITTABLE) \ - && ((LIST)->flags & __VA_GCC_STRUCT_RETURN) \ - ) ) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, 0) -#endif -#if defined(__hppa__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((LIST)->flags & __VA_OLDGCC_STRUCT_RETURN \ - ? ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4) \ - : ((TYPE_SIZE) <= 8) \ - ) -/* Test both __VA_OLDGCC_STRUCT_RETURN and __VA_SMALL_STRUCT_RETURN at run time. */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - 0 -#endif -#if defined(__mips__) && !defined(__mipsn32__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__m88k__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4) -/* Test __VA_SMALL_STRUCT_RETURN instead of __VA_REGISTER_STRUCT_RETURN. */ -#if defined(__mips__) && !defined(__mipsn32__) -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->anum++, \ - 0 \ - ) -#else -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - 0 -#endif -#endif -#if defined(__mipsn32__) || defined(__mips64__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((LIST)->flags & __VA_GCC_STRUCT_RETURN \ - ? ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 || (TYPE_SIZE) == 8) \ - : ((TYPE_SIZE) <= 16) \ - ) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. Also turn on - * __VA_REGISTER_FLOATSTRUCT_RETURN or __VA_REGISTER_DOUBLESTRUCT_RETURN if - * the struct will be returned in floating-point registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, \ - (TYPE_ALIGN) == sizeof(float) && (TYPE_SPLITTABLE) \ - && ((TYPE_SIZE) == sizeof(float) || (TYPE_SIZE) == 2*sizeof(float)) \ - && ((LIST)->flags |= __VA_REGISTER_FLOATSTRUCT_RETURN), \ - (TYPE_ALIGN) == sizeof(double) && (TYPE_SPLITTABLE) \ - && ((TYPE_SIZE) == sizeof(double) || (TYPE_SIZE) == 2*sizeof(double)) \ - && ((LIST)->flags |= __VA_REGISTER_DOUBLESTRUCT_RETURN), \ - 0) -#endif -#if defined(__sparc64__) || defined(__ia64__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) <= 32) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, \ - 0) -#endif -#if defined(__x86_64__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) <= 16) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, \ - 0) -#endif -/* - * Preparing structure return in memory. - */ -#if defined(__i386__) -/* Return structure pointer is passed in a special register or as first arg. */ -#define __va_start_struct2(LIST) \ - ((LIST)->flags & __VA_NEXTGCC_STRUCT_RETURN \ - ? ((LIST)->raddr = (LIST)->structraddr, 0) /* special register */ \ - : ((LIST)->raddr = *(void* *)((LIST)->aptr), /* first arg */ \ - (LIST)->aptr += sizeof(void*), \ - 0 \ - ) ) -#endif -#if defined(__alpha__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__s390__) -/* Return structure pointer is passed as first arg. */ -#define __va_start_struct2(LIST) \ - ((LIST)->raddr = *(void* *)((LIST)->aptr), \ - (LIST)->aptr += sizeof(void*), \ - 0 \ - ) -#endif -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc64__) -/* Return structure pointer is passed as first arg. */ -#define __va_start_struct2(LIST) \ - ((LIST)->raddr = *(void* *)((LIST)->aptr), \ - (LIST)->aptr += sizeof(void*), \ - (LIST)->anum++, \ - 0 \ - ) -#endif -#if defined(__x86_64__) -/* Return structure pointer is passed as first arg. */ -#define __va_start_struct2(LIST) \ - ((LIST)->raddr = (void *)(*(LIST)->memiargptr++), \ - 0 \ - ) -#endif -#if defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__hppa__) || defined(__m88k__) || defined(__ia64__) -/* Return structure pointer is passed in a special register. */ -#define __va_start_struct2(LIST) \ - ((LIST)->raddr = (LIST)->structraddr, 0) -#endif - - -/* - * Definition of the va_arg_xxx macros. - */ - -/* Padding of non-struct arguments. */ -#define __va_argsize(TYPE_SIZE) \ - (((TYPE_SIZE) + sizeof(__vaword)-1) & -(long)sizeof(__vaword)) -#if defined(__i386__) || defined(__m68k__) || defined(__mips__) && !defined(__mipsn32__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__alpha__) || defined(__arm__) || (defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__m88k__) || defined(__convex__) || defined(__ia64__) || defined(__x86_64__) -/* args grow up */ -/* small structures < 1 word are adjusted depending on compiler */ -#define __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - __va_argsize(TYPE_SIZE) \ - ) -#define __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - ((TYPE_SIZE) < sizeof(__vaword) \ - ? (TYPE_SIZE) \ - : __va_argsize(TYPE_SIZE) \ - ) \ - ) -#endif -#if defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) -/* args grow up */ -/* small structures < 1 word are adjusted depending on compiler */ -/* Also make sure we switch to the stack pointer after 8 args */ -#define __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((((LIST)->onstack == 0 && (LIST)->aptr >= (long)&(LIST)->regarg[8]) \ - ? ((LIST)->onstack=1, (LIST)->aptr = (LIST)->saptr) : 0), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - __va_argsize(TYPE_SIZE) \ - ) -#define __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((((LIST)->onstack == 0 && (LIST)->aptr >= (long)&(LIST)->regarg[8]) \ - ? ((LIST)->onstack=1, (LIST)->aptr = (LIST)->saptr) : 0), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - ((TYPE_SIZE) < sizeof(__vaword) \ - ? (TYPE_SIZE) \ - : __va_argsize(TYPE_SIZE) \ - ) \ - ) -#endif -#if defined(__s390__) -/* args grow up */ -/* small structures < 1 word are adjusted depending on compiler */ -/* Also make sure we switch to the stack pointer after 5 args */ -#define __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((((LIST)->onstack == 0 && (LIST)->aptr >= (long)&(LIST)->regarg[5]) \ - ? ((LIST)->onstack=1, (LIST)->aptr = (LIST)->saptr) : 0), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - __va_argsize(TYPE_SIZE) \ - ) -#define __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (((((LIST)->onstack == 0 && ((LIST)->aptr >= (long)&(LIST)->regarg[5])) \ - || ((TYPE_SIZE) > sizeof(__vaword) && (LIST)->aptr >= (long)&(LIST)->regarg[4])) \ - ? ((LIST)->onstack=1, (LIST)->aptr = (LIST)->saptr) : 0), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - ((TYPE_SIZE) < sizeof(__vaword) \ - ? (TYPE_SIZE) \ - : __va_argsize(TYPE_SIZE) \ - ) \ - ) -#endif -#if defined(__mipsn32__) || defined(__mips64__) || defined(__sparc64__) -/* args grow up */ -/* small structures < 1 word are adjusted depending on compiler */ -#define __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->anum += __va_argsize(TYPE_SIZE)/sizeof(__vaword), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - __va_argsize(TYPE_SIZE) \ - ) -#define __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->anum += __va_argsize(TYPE_SIZE)/sizeof(__vaword), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - ((TYPE_SIZE) < sizeof(__vaword) \ - ? (TYPE_SIZE) \ - : __va_argsize(TYPE_SIZE) \ - ) \ - ) -#endif -#if defined(__hppa__) -/* args grow down */ -#define __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->aptr = (LIST)->aptr - __va_argsize(TYPE_SIZE), \ - ((TYPE_SIZE) > 4 && ((LIST)->aptr &= -8)), \ - (LIST)->aptr \ - ) -#define __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->aptr = (LIST)->aptr - __va_argsize(TYPE_SIZE), \ - ((TYPE_SIZE) > 4 && ((LIST)->aptr &= -8)), \ - (LIST)->aptr + ((-(TYPE_SIZE)) & 3) \ - ) -#endif -#if defined(__i386__) || defined(__alpha__) || defined(__ia64__) -/* little endian -> small args < 1 word are adjusted to the left */ -#define __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) -#endif -#if defined(__m68k__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc__) || defined(__sparc64__) || defined(__hppa__) || defined(__arm__) || defined(__rs6000__) || defined(__m88k__) || defined(__convex__) || defined(__s390__) -/* big endian -> small args < 1 word are adjusted to the right */ -#define __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) -#endif -#if defined(__mips__) && !defined(__mipsn32__) -/* big endian -> small args < 1 word are adjusted to the right */ -#define __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->anum++, __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN)) -#endif -#if defined(__x86_64__) -/* the first 6 argument words are passed in registers */ -#define __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->memiargptr + ((TYPE_SIZE) + sizeof(__vaword)-1) / sizeof(__vaword) <= &(LIST)->iarg[6] \ - ? ((LIST)->memiargptr += ((TYPE_SIZE) + sizeof(__vaword)-1) / sizeof(__vaword), \ - (LIST)->memiargptr - ((TYPE_SIZE) + sizeof(__vaword)-1) / sizeof(__vaword) \ - ) \ - : (void*)__va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ) -#endif -#define __va_arg(LIST,TYPE) \ - *(TYPE*)__va_arg_adjusted(LIST,sizeof(TYPE),__VA_alignof(TYPE)) - -/* Integer arguments. */ - -#define va_arg_char(LIST) __va_arg(LIST,char) -#define va_arg_schar(LIST) __va_arg(LIST,signed char) -#define va_arg_uchar(LIST) __va_arg(LIST,unsigned char) -#define va_arg_short(LIST) __va_arg(LIST,short) -#define va_arg_ushort(LIST) __va_arg(LIST,unsigned short) -#define va_arg_int(LIST) __va_arg(LIST,int) -#define va_arg_uint(LIST) __va_arg(LIST,unsigned int) -#define va_arg_long(LIST) __va_arg(LIST,long) -#define va_arg_ulong(LIST) __va_arg(LIST,unsigned long) - -#if defined(__mips64__) || defined(__sparc64__) || defined(__alpha__) || defined(__ia64__) || defined(__x86_64__) -/* `long long' and `long' are identical. */ -#define va_arg_longlong va_arg_long -#define va_arg_ulonglong va_arg_ulong -#elif defined(__mipsn32__) -/* `long long' fits in __vaword. */ -#define va_arg_longlong(LIST) __va_arg(LIST,long long) -#define va_arg_ulonglong(LIST) __va_arg(LIST,unsigned long long) -#elif defined(__i386__) || defined(__m68k__) || defined(__mips__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__hppa__) || defined(__arm__) || defined(__rs6000__) || defined(__m88k__) || defined(__convex__) || defined(__s390__) -/* `long long's are passed embedded on the arg stack. */ -#define va_arg_longlong(LIST) __va_arg_longlong(LIST,long long) -#define va_arg_ulonglong(LIST) __va_arg_longlong(LIST,unsigned long long) -#if defined(__i386__) || defined(__m68k__) || defined(__arm__) || (defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__convex__) -/* `long long's are (at most) word-aligned. */ -#define __va_arg_longlong(LIST,TYPE) __va_arg(LIST,TYPE) -#endif -#if defined(__mips__) || (defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__m88k__) -/* `long long's have alignment 8. */ -#define __va_arg_longlong(LIST,TYPE) \ - ((LIST)->aptr = (((LIST)->aptr+__VA_alignof(TYPE)-1) & -(long)__VA_alignof(TYPE)), \ - __va_arg(LIST,TYPE)) -#endif -#if (defined(__sparc__) && !defined(__sparc64__)) || defined(__s390__) -/* Within the arg stack, the alignment is only 4, not 8. */ -/* Beware against unaligned accesses! */ -#define __va_arg_longlong(LIST,TYPE) \ - ((LIST)->tmp._words[0] = ((__vaword*)((LIST)->aptr))[0], \ - (LIST)->tmp._words[1] = ((__vaword*)((LIST)->aptr))[1], \ - (LIST)->aptr += sizeof(TYPE), \ - (TYPE)((LIST)->tmp._longlong) \ - ) -#endif -#if defined(__hppa__) -/* `long long's have alignment 8. */ -#define __va_arg_longlong(LIST,TYPE) \ - ((LIST)->aptr = ((LIST)->aptr & -(long)__VA_alignof(TYPE)), \ - __va_arg(LIST,TYPE)) -#endif -#endif - -/* Floating point arguments. */ - -#define va_arg_float(LIST) \ - ((LIST)->flags & __VA_TRADITIONAL_FLOAT_ARGS \ - ? (float)va_arg_double(LIST) \ - : __va_arg_float(LIST) \ - ) - -#if defined(__i386__) || defined(__m68k__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc__) || defined(__sparc64__) || defined(__alpha__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__ia64__) || defined(__x86_64__) || defined(__s390__) -#define __va_align_double(LIST) -#endif -#if defined(__mips__) && !defined(__mipsn32__) || defined(__m88k__) -/* __VA_alignof(double) > sizeof(__vaword) */ -#define __va_align_double(LIST) \ - (LIST)->aptr = ((LIST)->aptr + sizeof(double)-1) & -(long)sizeof(double), -#endif -#if defined(__hppa__) -#define __va_align_double(LIST) \ - (LIST)->aptr = (LIST)->aptr & -(long)sizeof(double), -#endif - -#if defined(__sparc__) && !defined(__sparc64__) -/* Beware against unaligned `double' accesses! */ -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->tmp._words[0] = ((__vaword*)((LIST)->aptr))[0], \ - (LIST)->tmp._words[1] = ((__vaword*)((LIST)->aptr))[1], \ - (LIST)->aptr += sizeof(double), \ - (LIST)->tmp._double \ - ) -#endif -#if defined(__alpha__) -/* The first 6 floating point registers have been stored in another place. */ -#define va_arg_double(LIST) \ - (((LIST)->aptr += sizeof(double)) <= (LIST)->memargptr \ - ? *(double*)((LIST)->aptr - sizeof(double) - 6*sizeof(double)) \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - ) -#define __va_arg_float(LIST) \ - (((LIST)->aptr += sizeof(double)) <= (LIST)->memargptr \ - ? /* The first 6 args have been put into memory by "stt" instructions */\ - /* (see vacall-alpha.s!). Therefore load them as doubles. */ \ - /* When viewed as floats, the value will be the correct one. */ \ - (float)*(double*)((LIST)->aptr - sizeof(double) - 6*sizeof(double)) \ - : /* These args have been put into memory by "sts" instructions, */ \ - /* therefore load them as floats. */ \ - *(float*)((LIST)->aptr - sizeof(double)) \ - ) -#endif -#if defined(__hppa__) -/* The first 4 float registers and the first 2 double registers are stored - * elsewhere. - */ -#if 1 /* gcc-2.5.2 passes these args in general registers! A bug, I think. */ -#define __va_arg_float(LIST) \ - (*(float*)((LIST)->aptr -= sizeof(float))) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - *(double*)((LIST)->aptr -= sizeof(double)) \ - ) -#else /* this would be correct if the args were passed in float registers. */ -#define __va_arg_float(LIST) \ - (((LIST)->aptr -= sizeof(float)) >= (LIST)->memargptr \ - ? /* The first 4 float args are stored separately. */ \ - *(float*)((LIST)->aptr + (LIST)->farg_offset) \ - : *(float*)((LIST)->aptr) \ - ) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (((LIST)->aptr -= sizeof(double)) >= (LIST)->memargptr \ - ? /* The first 2 double args are stored separately. */ \ - *(double*)((LIST)->aptr + (LIST)->darg_offset) \ - : *(double*)((LIST)->aptr) \ - )) -#endif -#endif -#if defined(__mips__) && !defined(__mipsn32__) -/* The first 0,1,2 registers are stored elsewhere if they are floating-point - * parameters. - */ -#define __va_arg_float(LIST) \ - ((LIST)->aptr += sizeof(float), \ - (LIST)->anum++, \ - ((LIST)->anum == 1 \ - ? ((LIST)->flags |= __VA_FLOAT_1, (LIST)->farg[0]) \ - : ((LIST)->anum == 2 && ((LIST)->flags & __VA_FLOAT_1) \ - ? (/* (LIST)->flags |= __VA_FLOAT_2, */ (LIST)->farg[1]) \ - : *(float*)((LIST)->aptr - sizeof(float)) \ - )) ) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - (LIST)->anum++, \ - ((LIST)->anum == 1 \ - ? ((LIST)->flags |= __VA_FLOAT_1, (LIST)->darg[0]) \ - : ((LIST)->anum == 2 && ((LIST)->flags & __VA_FLOAT_1) \ - ? (/* (LIST)->flags |= __VA_FLOAT_2, */ (LIST)->darg[1]) \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - )) ) -#endif -#if defined(__mipsn32__) || defined(__mips64__) -/* The first 0,..,8 registers are stored elsewhere if they are floating-point - * parameters. - */ -#define __va_arg_float(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - (++(LIST)->anum <= 8 \ - ? (LIST)->farg[(LIST)->anum - 1] \ - : *(float*)((LIST)->aptr - sizeof(double)) \ - )) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - (++(LIST)->anum <= 8 \ - ? (LIST)->darg[(LIST)->anum - 1] \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__sparc64__) -/* The first 0,..,16 registers are stored elsewhere if they are floating-point - * parameters. - */ -#define __va_arg_float(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - (++(LIST)->anum <= 16 \ - ? (LIST)->farg[(LIST)->anum - 1] \ - : *(float*)((LIST)->aptr - sizeof(double)) \ - )) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - (++(LIST)->anum <= 16 \ - ? (LIST)->darg[(LIST)->anum - 1] \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) -/* The first 13 floating-point args have been stored elsewhere. */ -#define __va_arg_float(LIST) \ - ((LIST)->aptr += sizeof(float), \ - ((LIST)->memfargptr < &(LIST)->farg[13] \ - ? (float) *((LIST)->memfargptr++) \ - : *(float*)((LIST)->aptr - sizeof(float)) \ - )) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - ((LIST)->memfargptr < &(LIST)->farg[13] \ - ? *((LIST)->memfargptr++) \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) -/* The first 8 floating-point args have been stored elsewhere. */ -#define __va_arg_float(LIST) \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? (float) *((LIST)->memfargptr++) \ - : ((LIST)->aptr = ((LIST)->onstack == 0 \ - ? ((LIST)->onstack=1, (LIST)->saptr) \ - : (LIST)->aptr \ - ), \ - (LIST)->aptr += sizeof(float), \ - *(float*)((LIST)->aptr - sizeof(float)) \ - )) -#define va_arg_double(LIST) \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? *((LIST)->memfargptr++) \ - : ((LIST)->aptr = ((LIST)->onstack == 0 \ - ? ((LIST)->onstack=1, (LIST)->saptr) \ - : (LIST)->aptr \ - ), \ - __va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__s390__) -/* The first 2 floating-point args have been stored elsewhere. */ -#define __va_arg_float(LIST) \ - ((LIST)->memfargptr < &(LIST)->farg[2] \ - ? (LIST)->memdargptr++, (float) *((LIST)->memfargptr++) \ - : ((LIST)->aptr = ((LIST)->onstack == 0 \ - ? ((LIST)->onstack=1, (LIST)->saptr) \ - : (LIST)->aptr \ - ), \ - (LIST)->aptr += sizeof(float), \ - *(float*)((LIST)->aptr - sizeof(float)) \ - )) -#define va_arg_double(LIST) \ - ((LIST)->memdargptr < &(LIST)->darg[2] \ - ? (LIST)->memfargptr++, *((LIST)->memdargptr++) \ - : ((LIST)->aptr = ((LIST)->onstack == 0 \ - ? ((LIST)->onstack=1, (LIST)->saptr) \ - : (LIST)->aptr \ - ), \ - __va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__ia64__) -/* The first 8 floating-point args have been stored elsewhere. */ -#define __va_arg_float(LIST) \ - ((LIST)->aptr += sizeof(__vaword), \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? (float) *((LIST)->memfargptr++) \ - : *(float*)((LIST)->aptr - sizeof(__vaword)) \ - )) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? *((LIST)->memfargptr++) \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__x86_64__) -/* The first 8 floating-point args have been stored elsewhere. */ -#define __va_arg_float(LIST) \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? ((LIST)->memfargptr++, \ - *(float*)((LIST)->memfargptr - 1) \ - ) \ - : ((LIST)->aptr += sizeof(__vaword), \ - *(float*)((LIST)->aptr - sizeof(__vaword)) \ - ) ) -#define va_arg_double(LIST) \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? *(LIST)->memfargptr++ \ - : ((LIST)->aptr += sizeof(__vaword), \ - *(double*)((LIST)->aptr - sizeof(__vaword)) \ - ) ) -#endif -#ifndef __va_arg_float -#define __va_arg_float(LIST) __va_arg(LIST,float) -#endif -#ifndef va_arg_double -#define va_arg_double(LIST) \ - (__va_align_double(LIST) __va_arg(LIST,double)) -#endif - -/* Pointer arguments. */ -#define va_arg_ptr(LIST,TYPE) __va_arg(LIST,TYPE) - -/* Structure arguments. */ -#define va_arg_struct(LIST,TYPE) \ - *(TYPE*)__va_arg_struct(LIST,sizeof(TYPE),__VA_alignof(TYPE)) -/* _va_arg_struct() is like va_arg_struct(), except that you pass the type's - * size and alignment instead of the type and get the value's address instead - * of the value itself. - */ -#define _va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (void*)__va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) -/* Structure argument alignment. */ -#if defined(__i386__) && defined(_MSC_VER) -/* In MSVC, doubles inside structures have alignment 8, i.e. - * __VA_alignof(double) = 8, but doubles (and also structures containing - * doubles) are passed on the stack with alignment 4. Looks really weird. - */ -#define __va_struct_alignment(TYPE_ALIGN) \ - ((TYPE_ALIGN) <= 4 ? (TYPE_ALIGN) : 4) -#else -#define __va_struct_alignment(TYPE_ALIGN) \ - (TYPE_ALIGN) -#endif -#define __va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (LIST)->aptr = ((LIST)->aptr + __va_struct_alignment(TYPE_ALIGN)-1) & -(long)__va_struct_alignment(TYPE_ALIGN), -#if defined(__i386__) || defined(__m68k__) || defined(__alpha__) || defined(__arm__) || defined(__m88k__) || defined(__convex__) || defined(__x86_64__) -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ) -#endif -#if defined(__mips__) && !defined(__mipsn32__) -/* small structures < 1 word are adjusted depending on compiler */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->flags & __VA_SGICC_STRUCT_ARGS \ - ? /* SGI MIPS cc passes small structures left-adjusted, although big-endian! */\ - __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - : /* SGI MIPS gcc passes small structures within the first four words left- \ - * adjusted, for compatibility with cc. But structures in memory are passed \ - * right-adjusted!! See gcc-2.6.3/config/mips/mips.c:function_arg(). \ - */ \ - ((LIST)->aptr < (LIST)->memargptr \ - ? __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - : __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - )) ) -#endif -#if defined(__mipsn32__) || defined(__mips64__) -/* small structures < 1 word are adjusted depending on compiler */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->flags & __VA_SGICC_STRUCT_ARGS \ - ? /* SGI MIPS cc passes small structures left-adjusted, although big-endian! */\ - __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - : /* SGI MIPS gcc passes small structures right-adjusted. */ \ - __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - )) -#endif -#if defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) -/* small structures < 1 word are adjusted depending on compiler */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->flags & __VA_AIXCC_STRUCT_ARGS \ - ? /* AIX cc and xlc pass small structures left-adjusted, although big-endian! */\ - __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - : /* gcc passes small structures right-adjusted. */ \ - __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - )) -#endif -#if defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) -/* Structures are passed as pointers to caller-made local copies. */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - va_arg_ptr(LIST,void*) -#endif -#if defined(__sparc__) && !defined(__sparc64__) -/* Structures are passed as pointers to caller-made local copies. */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - va_arg_ptr(LIST,void*) -#endif -#if defined(__sparc64__) -/* Small structures are passed left-adjusted, although big-endian! */ -/* Big structures are passed as pointers to caller-made local copies. */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((TYPE_SIZE) <= 16 \ - ? (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN)) \ - : va_arg_ptr(LIST,void*) \ - ) -#endif -#if defined(__s390__) -/* Structures <= 8 bytes are passed as embedded copies on the arg stack. - * Big structures are passed as pointers to caller-made local copies. - */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((TYPE_SIZE) != 1 && (TYPE_SIZE) != 2 && (TYPE_SIZE) != 4 && (TYPE_SIZE) != 8 \ - ? va_arg_ptr(LIST,void*) \ - : (void*)__va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ) -#endif -#if defined(__hppa__) -/* Structures <= 8 bytes are passed as embedded copies on the arg stack. - * Big structures are passed as pointers to caller-made local copies. - */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((TYPE_SIZE) > 8 \ - ? va_arg_ptr(LIST,void*) \ - : /* FIXME: gcc-2.6.3 passes structures <= 4 bytes in memory left-adjusted! ?? */\ - (void*)__va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ) -#endif -#if defined(__ia64__) -/* Types larger than a word have 2-word alignment. */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((TYPE_SIZE) > sizeof(__vaword) && (((__vaword*)(LIST)->aptr - (LIST)->saptr) & 1) ? (LIST)->aptr += sizeof(__vaword) : 0), \ - __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ) -#endif - - -/* - * Definition of the va_return_xxx macros. - */ -#define __va_return(LIST,RETTYPE) \ - (((LIST)->rtype == (RETTYPE)) || __va_error1((LIST)->rtype,RETTYPE)) -#define va_return_void(LIST) \ - __va_return(LIST,__VAvoid) -#define va_return_char(LIST,VAL) \ - (__va_return(LIST,__VAchar), (LIST)->tmp._char = (VAL)) -#define va_return_schar(LIST,VAL) \ - (__va_return(LIST,__VAschar), (LIST)->tmp._schar = (VAL)) -#define va_return_uchar(LIST,VAL) \ - (__va_return(LIST,__VAuchar), (LIST)->tmp._uchar = (VAL)) -#define va_return_short(LIST,VAL) \ - (__va_return(LIST,__VAshort), (LIST)->tmp._short = (VAL)) -#define va_return_ushort(LIST,VAL) \ - (__va_return(LIST,__VAushort), (LIST)->tmp._ushort = (VAL)) -#define va_return_int(LIST,VAL) \ - (__va_return(LIST,__VAint), (LIST)->tmp._int = (VAL)) -#define va_return_uint(LIST,VAL) \ - (__va_return(LIST,__VAuint), (LIST)->tmp._uint = (VAL)) -#define va_return_long(LIST,VAL) \ - (__va_return(LIST,__VAlong), (LIST)->tmp._long = (VAL)) -#define va_return_ulong(LIST,VAL) \ - (__va_return(LIST,__VAulong), (LIST)->tmp._ulong = (VAL)) -#if defined(__mips64__) || defined(__sparc64__) || defined(__alpha__) || defined(__ia64__) || defined(__x86_64__) -#define va_return_longlong(LIST,VAL) \ - (__va_return(LIST,__VAlonglong), (LIST)->tmp._long = (VAL)) -#define va_return_ulonglong(LIST,VAL) \ - (__va_return(LIST,__VAulonglong), (LIST)->tmp._ulong = (VAL)) -#else -#define va_return_longlong(LIST,VAL) \ - (__va_return(LIST,__VAlonglong), (LIST)->tmp._longlong = (VAL)) -#define va_return_ulonglong(LIST,VAL) \ - (__va_return(LIST,__VAulonglong), (LIST)->tmp._ulonglong = (VAL)) -#endif -#define va_return_float(LIST,VAL) \ - (__va_return(LIST,__VAfloat), (LIST)->tmp._float = (VAL)) -#define va_return_double(LIST,VAL) \ - (__va_return(LIST,__VAdouble), (LIST)->tmp._double = (VAL)) -#define va_return_ptr(LIST,TYPE,VAL) \ - (__va_return(LIST,__VAvoidp), (LIST)->tmp._ptr = (void*)(TYPE)(VAL)) -#define va_return_struct(LIST,TYPE,VAL) \ - (__va_return(LIST,__VAstruct), *(TYPE*)((LIST)->raddr) = (VAL)) -#define _va_return_struct(LIST,TYPE_SIZE,TYPE_ALIGN,VAL_ADDR) \ - (__va_return(LIST,__VAstruct), \ - __structcpy((void*)((LIST)->raddr),VAL_ADDR,TYPE_SIZE,TYPE_ALIGN) \ - ) - - -/* Determine whether a struct type is word-splittable, i.e. whether each of - * its components fit into a register. - * The entire computation is done at compile time. - */ -#define va_word_splittable_1(slot1) \ - (__va_offset1(slot1)/sizeof(__vaword) == (__va_offset1(slot1)+sizeof(slot1)-1)/sizeof(__vaword)) -#define va_word_splittable_2(slot1,slot2) \ - ((__va_offset1(slot1)/sizeof(__vaword) == (__va_offset1(slot1)+sizeof(slot1)-1)/sizeof(__vaword)) \ - && (__va_offset2(slot1,slot2)/sizeof(__vaword) == (__va_offset2(slot1,slot2)+sizeof(slot2)-1)/sizeof(__vaword)) \ - ) -#define va_word_splittable_3(slot1,slot2,slot3) \ - ((__va_offset1(slot1)/sizeof(__vaword) == (__va_offset1(slot1)+sizeof(slot1)-1)/sizeof(__vaword)) \ - && (__va_offset2(slot1,slot2)/sizeof(__vaword) == (__va_offset2(slot1,slot2)+sizeof(slot2)-1)/sizeof(__vaword)) \ - && (__va_offset3(slot1,slot2,slot3)/sizeof(__vaword) == (__va_offset3(slot1,slot2,slot3)+sizeof(slot3)-1)/sizeof(__vaword)) \ - ) -#define va_word_splittable_4(slot1,slot2,slot3,slot4) \ - ((__va_offset1(slot1)/sizeof(__vaword) == (__va_offset1(slot1)+sizeof(slot1)-1)/sizeof(__vaword)) \ - && (__va_offset2(slot1,slot2)/sizeof(__vaword) == (__va_offset2(slot1,slot2)+sizeof(slot2)-1)/sizeof(__vaword)) \ - && (__va_offset3(slot1,slot2,slot3)/sizeof(__vaword) == (__va_offset3(slot1,slot2,slot3)+sizeof(slot3)-1)/sizeof(__vaword)) \ - && (__va_offset4(slot1,slot2,slot3,slot4)/sizeof(__vaword) == (__va_offset4(slot1,slot2,slot3,slot4)+sizeof(slot4)-1)/sizeof(__vaword)) \ - ) -#define __va_offset1(slot1) \ - 0 -#define __va_offset2(slot1,slot2) \ - ((__va_offset1(slot1)+sizeof(slot1)+__VA_alignof(slot2)-1) & -(long)__VA_alignof(slot2)) -#define __va_offset3(slot1,slot2,slot3) \ - ((__va_offset2(slot1,slot2)+sizeof(slot2)+__VA_alignof(slot3)-1) & -(long)__VA_alignof(slot3)) -#define __va_offset4(slot1,slot2,slot3,slot4) \ - ((__va_offset3(slot1,slot2,slot3)+sizeof(slot3)+__VA_alignof(slot4)-1) & -(long)__VA_alignof(slot4)) - - -/* - * Miscellaneous declarations. - */ -#ifdef __cplusplus -extern "C" void __vacall_r (); /* the return type is variable, not void! */ -#else -extern void __vacall_r (); /* the return type is variable, not void! */ -#endif -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -extern int __va_error1 (enum __VAtype, enum __VAtype); -extern int __va_error2 (unsigned int); -extern void __structcpy (void* dest, void* src, unsigned long size, unsigned long alignment); -#else -extern int __va_error1 (); -extern int __va_error2 (); -extern void __structcpy (); -#endif -typedef union { __vaword room[__VA_ALIST_WORDS]; double align; } __va_struct_buffer_t; -extern __va_struct_buffer_t __va_struct_buffer; - - -#endif /* _VACALL_R_H */ DELETED ffcall/configurations/README Index: ffcall/configurations/README ================================================================== --- ffcall/configurations/README +++ /dev/null @@ -1,5 +0,0 @@ -This directory contains a set of `config.cache' files for different platforms. -It is not actually used. The only purpose of saving these files is to have -a reference for questions like -"Does AIX c89 return small structs in registers?" -"Does HP-UX have mmap?" DELETED ffcall/configurations/alpha-dec-osf3.0-cc Index: ffcall/configurations/alpha-dec-osf3.0-cc ================================================================== --- ffcall/configurations/alpha-dec-osf3.0-cc +++ /dev/null @@ -1,73 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -: ${ac_cv_c_char_unsigned='no'} -: ${ac_cv_c_cross='no'} -: ${ac_cv_func_mmap='yes'} -: ${ac_cv_func_mprotect='yes'} -: ${ac_cv_header_stdc='yes'} -: ${ac_cv_header_stdlib_h='yes'} -: ${ac_cv_header_sys_file_h='yes'} -: ${ac_cv_header_sys_ipc_h='yes'} -: ${ac_cv_header_sys_mman_h='yes'} -: ${ac_cv_header_sys_shm_h='yes'} -: ${ac_cv_header_unistd_h='yes'} -: ${ac_cv_prog_CC='cc -O'} -: ${ac_cv_prog_CPP='cc -O -E'} -: ${ac_cv_prog_RANLIB='ranlib'} -: ${ac_cv_prog_gcc='no'} -: ${ac_cv_prog_make_make_set='yes'} -: ${ac_cv_type_size_t='yes'} -: ${cl_cv_c_return_void='no'} -: ${cl_cv_c_struct_return_small='no'} -: ${cl_cv_c_struct_return_static='no'} -: ${cl_cv_c_void='yes'} -: ${cl_cv_codeexec='yes'} -: ${cl_cv_decl_O_RDWR_fcntl_h='yes'} -: ${cl_cv_func_getpagesize='yes'} -: ${cl_cv_func_mmap_anon='yes'} -: ${cl_cv_func_mmap_anonymous='yes'} -: ${cl_cv_func_mmap_devzero='yes'} -: ${cl_cv_func_mmap_works='yes'} -: ${cl_cv_func_mprotect_works='yes'} -: ${cl_cv_func_vm='no'} -: ${cl_cv_header_stdc='yes'} -: ${cl_cv_host='alpha-dec-osf3.0'} -: ${cl_cv_path_install='/usr/bin/installbsd -c'} -: ${cl_cv_prog_as_underscore='no'} -: ${cl_cv_proto_abort='extern void abort (void);'} -: ${cl_cv_proto_abort_ret='void'} -: ${cl_cv_proto_abort_vol=''} -: ${cl_cv_proto_free='extern void free (void*);'} -: ${cl_cv_proto_free_ret='void'} -: ${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -: ${cl_cv_proto_getpagesize_ret='int'} -: ${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -: ${cl_cv_proto_malloc_arg1='unsigned int'} -: ${cl_cv_proto_malloc_ret='void*'} -: ${cl_cv_proto_mmap='extern caddr_t mmap (void*, int, int, int, int, off_t);'} -: ${cl_cv_proto_mmap_arg1='void*'} -: ${cl_cv_proto_mmap_arg2='int'} -: ${cl_cv_proto_mmap_ret='caddr_t'} -: ${cl_cv_proto_mprotect='extern int mprotect (void*, int, int);'} -: ${cl_cv_proto_mprotect_arg1=''} -: ${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -: ${cl_cv_proto_shmat_arg2=''} -: ${cl_cv_proto_shmat_ret='void*'} -: ${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -: ${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -: ${cl_cv_proto_shmctl_dots='no'} -: ${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -: ${cl_cv_proto_shmget_arg2='int'} -: ${cl_cv_sys_shm_works='no'} DELETED ffcall/configurations/alpha-dec-osf4.0-cc-O Index: ffcall/configurations/alpha-dec-osf4.0-cc-O ================================================================== --- ffcall/configurations/alpha-dec-osf4.0-cc-O +++ /dev/null @@ -1,87 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_path_install=${ac_cv_path_install='/bin/installbsd -c'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -O -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross='no'} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works='yes'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_off_t=${ac_cv_type_off_t='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_longlong=${cl_cv_c_longlong='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_anon=${cl_cv_func_mmap_anon='yes'} -cl_cv_func_mmap_anonymous=${cl_cv_func_mmap_anonymous='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='alpha-dec-osf4.0'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=''} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, int, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='int'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, int, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (char*, int, mode_t);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=''} -cl_cv_proto_open_args=${cl_cv_proto_open_args=' char*, int, mode_t'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='no'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (void*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='void*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/alpha-dec-osf4.0-gcc Index: ffcall/configurations/alpha-dec-osf4.0-gcc ================================================================== --- ffcall/configurations/alpha-dec-osf4.0-gcc +++ /dev/null @@ -1,88 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_path_install=${ac_cv_path_install='/bin/installbsd -c'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -O -E -w'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross='no'} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works='yes'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='yes'} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_off_t=${ac_cv_type_off_t='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_longlong=${cl_cv_c_longlong='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='yes'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_anon=${cl_cv_func_mmap_anon='yes'} -cl_cv_func_mmap_anonymous=${cl_cv_func_mmap_anonymous='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='alpha-dec-osf4.0'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (size_t);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='size_t'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (const char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1='const'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (const void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1='const'} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2='const'} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='size_t'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/alpha-dec-osf4.0a-gcc Index: ffcall/configurations/alpha-dec-osf4.0a-gcc ================================================================== --- ffcall/configurations/alpha-dec-osf4.0a-gcc +++ /dev/null @@ -1,90 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_path_install=${ac_cv_path_install='/bin/installbsd -c'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -O -E -w'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross='no'} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works='yes'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='yes'} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_off_t=${ac_cv_type_off_t='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg='no'} -cl_cv_c_longlong=${cl_cv_c_longlong='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='yes'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_anon=${cl_cv_func_mmap_anon='yes'} -cl_cv_func_mmap_anonymous=${cl_cv_func_mmap_anonymous='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='alpha-dec-osf4.0a'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc='yes'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (size_t);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='size_t'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (const char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1='const'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (const void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1='const'} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2='const'} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='size_t'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/alpha-dec-osf4.0d-cc-O Index: ffcall/configurations/alpha-dec-osf4.0d-cc-O ================================================================== --- ffcall/configurations/alpha-dec-osf4.0d-cc-O +++ /dev/null @@ -1,87 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_sys_sysmacros_h=${ac_cv_header_sys_sysmacros_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_path_LD=${ac_cv_path_LD='/bin/ld'} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ucb/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -O -E'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross='no'} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works='yes'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='no'} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg='no'} -cl_cv_c_longlong=${cl_cv_c_longlong='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_anon=${cl_cv_func_mmap_anon='yes'} -cl_cv_func_mmap_anonymous=${cl_cv_func_mmap_anonymous='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='alphaev56-dec-osf4.0d'} -cl_cv_path_install=${cl_cv_path_install='/bin/installbsd -c'} -cl_cv_prog_LN=${cl_cv_prog_LN='ln'} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc='no'} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, int, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='int'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, int, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (char*, int, mode_t);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=''} -cl_cv_proto_open_args=${cl_cv_proto_open_args=' char*, int, mode_t'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='no'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (void*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='void*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='yes'} DELETED ffcall/configurations/alpha-dec-osf4.0d-gcc Index: ffcall/configurations/alpha-dec-osf4.0d-gcc ================================================================== --- ffcall/configurations/alpha-dec-osf4.0d-gcc +++ /dev/null @@ -1,88 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_sys_sysmacros_h=${ac_cv_header_sys_sysmacros_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_path_LD=${ac_cv_path_LD='/bin/ld'} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ucb/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -O -E -w'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross='no'} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works='yes'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='yes'} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional='no'} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='no'} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg='no'} -cl_cv_c_longlong=${cl_cv_c_longlong='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='yes'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_anon=${cl_cv_func_mmap_anon='yes'} -cl_cv_func_mmap_anonymous=${cl_cv_func_mmap_anonymous='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='alphaev56-dec-osf4.0d'} -cl_cv_path_install=${cl_cv_path_install='/bin/installbsd -c'} -cl_cv_prog_LN=${cl_cv_prog_LN='ln'} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc='yes'} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (size_t);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='size_t'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (const void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1='const'} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2='const'} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='size_t'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='yes'} DELETED ffcall/configurations/alpha-dec-osf4.0d-gcc-fpcc-struct-return Index: ffcall/configurations/alpha-dec-osf4.0d-gcc-fpcc-struct-return ================================================================== --- ffcall/configurations/alpha-dec-osf4.0d-gcc-fpcc-struct-return +++ /dev/null @@ -1,88 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_sys_sysmacros_h=${ac_cv_header_sys_sysmacros_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_path_LD=${ac_cv_path_LD='/bin/ld'} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ucb/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -fpcc-struct-return -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -fpcc-struct-return -O -E -w'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross='no'} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works='yes'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='yes'} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional='no'} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='no'} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg='no'} -cl_cv_c_longlong=${cl_cv_c_longlong='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='yes'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_anon=${cl_cv_func_mmap_anon='yes'} -cl_cv_func_mmap_anonymous=${cl_cv_func_mmap_anonymous='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='alphaev56-dec-osf4.0d'} -cl_cv_path_install=${cl_cv_path_install='/bin/installbsd -c'} -cl_cv_prog_LN=${cl_cv_prog_LN='ln'} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc='yes'} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (size_t);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='size_t'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (const void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1='const'} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2='const'} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='size_t'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='yes'} DELETED ffcall/configurations/alpha-dec-osf4.0d-gcc-freg-struct-return Index: ffcall/configurations/alpha-dec-osf4.0d-gcc-freg-struct-return ================================================================== --- ffcall/configurations/alpha-dec-osf4.0d-gcc-freg-struct-return +++ /dev/null @@ -1,88 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_sys_sysmacros_h=${ac_cv_header_sys_sysmacros_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_path_LD=${ac_cv_path_LD='/bin/ld'} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ucb/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -freg-struct-return -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -freg-struct-return -O -E -w'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross='no'} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works='yes'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='yes'} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional='no'} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='no'} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg='no'} -cl_cv_c_longlong=${cl_cv_c_longlong='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='yes'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='yes'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_anon=${cl_cv_func_mmap_anon='yes'} -cl_cv_func_mmap_anonymous=${cl_cv_func_mmap_anonymous='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='alphaev56-dec-osf4.0d'} -cl_cv_path_install=${cl_cv_path_install='/bin/installbsd -c'} -cl_cv_prog_LN=${cl_cv_prog_LN='ln'} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc='yes'} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (size_t);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='size_t'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (const void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1='const'} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2='const'} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='size_t'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='yes'} DELETED ffcall/configurations/hppa1.0-hp-hpux8.00-c89 Index: ffcall/configurations/hppa1.0-hp-hpux8.00-c89 ================================================================== --- ffcall/configurations/hppa1.0-hp-hpux8.00-c89 +++ /dev/null @@ -1,74 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='no'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='c89'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='c89 -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_off_t=${ac_cv_type_off_t='no'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='yes'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='guessing yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='no'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='no'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='no'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='hppa1.0-hp-hpux8.00'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (char*, int);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=''} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, int, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='int'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (char*, int, int);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=''} -cl_cv_proto_open_args=${cl_cv_proto_open_args=' char*, int, int'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='no'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='size_t'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='int'} DELETED ffcall/configurations/hppa1.0-hp-hpux8.00-cc Index: ffcall/configurations/hppa1.0-hp-hpux8.00-cc ================================================================== --- ffcall/configurations/hppa1.0-hp-hpux8.00-cc +++ /dev/null @@ -1,74 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='no'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='yes'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='guessing yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='no'} -cl_cv_func_mmap_anonymous=${cl_cv_func_mmap_anonymous='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='hppa1.0-hp-hpux8.00'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern int abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='int'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern int free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=''} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, int, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='int'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (char*, int, mode_t);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=''} -cl_cv_proto_open_args=${cl_cv_proto_open_args=' char*, int, mode_t'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='no'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern char* shmat (int, char*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='char*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/hppa1.0-hp-hpux8.00-cc-Aa Index: ffcall/configurations/hppa1.0-hp-hpux8.00-cc-Aa ================================================================== --- ffcall/configurations/hppa1.0-hp-hpux8.00-cc-Aa +++ /dev/null @@ -1,63 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -: ${ac_cv_c_char_unsigned='no'} -: ${ac_cv_c_cross='no'} -: ${ac_cv_func_mmap='yes'} -: ${ac_cv_func_mprotect='no'} -: ${ac_cv_header_stdc='yes'} -: ${ac_cv_header_stdlib_h='yes'} -: ${ac_cv_header_sys_file_h='yes'} -: ${ac_cv_header_sys_ipc_h='yes'} -: ${ac_cv_header_sys_mman_h='yes'} -: ${ac_cv_header_sys_shm_h='yes'} -: ${ac_cv_header_unistd_h='yes'} -: ${ac_cv_prog_CC='cc -Aa -O'} -: ${ac_cv_prog_CPP='cc -Aa -O -E'} -: ${ac_cv_prog_RANLIB='ranlib'} -: ${ac_cv_prog_gcc='no'} -: ${ac_cv_prog_make_make_set='yes'} -: ${ac_cv_type_size_t='yes'} -: ${cl_cv_c_return_void='no'} -: ${cl_cv_c_struct_return_small='yes'} -: ${cl_cv_c_struct_return_static='no'} -: ${cl_cv_c_void='yes'} -: ${cl_cv_codeexec='guessing yes'} -: ${cl_cv_decl_O_RDWR_fcntl_h='no'} -: ${cl_cv_func_getpagesize='no'} -: ${cl_cv_func_mmap_works='no'} -: ${cl_cv_func_vm='no'} -: ${cl_cv_header_stdc='yes'} -: ${cl_cv_host='hppa1.0-hp-hpux8.00'} -: ${cl_cv_path_install='cp'} -: ${cl_cv_prog_as_underscore='no'} -: ${cl_cv_proto_abort='extern void abort (void);'} -: ${cl_cv_proto_abort_ret='void'} -: ${cl_cv_proto_abort_vol=''} -: ${cl_cv_proto_free='extern void free (void*);'} -: ${cl_cv_proto_free_ret='void'} -: ${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -: ${cl_cv_proto_malloc_arg1='unsigned int'} -: ${cl_cv_proto_malloc_ret='void*'} -: ${cl_cv_proto_mmap='extern void* mmap (, , int, int, int, off_t);'} -: ${cl_cv_proto_mmap_ret='void*'} -: ${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -: ${cl_cv_proto_shmat_arg2=''} -: ${cl_cv_proto_shmat_ret='void*'} -: ${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -: ${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -: ${cl_cv_proto_shmctl_dots='no'} -: ${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -: ${cl_cv_proto_shmget_arg2='size_t'} -: ${cl_cv_sys_shm_works='no'} DELETED ffcall/configurations/hppa1.0-hp-hpux8.00-gcc Index: ffcall/configurations/hppa1.0-hp-hpux8.00-gcc ================================================================== --- ffcall/configurations/hppa1.0-hp-hpux8.00-gcc +++ /dev/null @@ -1,67 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -: ${ac_cv_c_char_unsigned='no'} -: ${ac_cv_c_cross='no'} -: ${ac_cv_func_mmap='yes'} -: ${ac_cv_func_mprotect='no'} -: ${ac_cv_header_stdc='yes'} -: ${ac_cv_header_stdlib_h='yes'} -: ${ac_cv_header_sys_file_h='yes'} -: ${ac_cv_header_sys_ipc_h='yes'} -: ${ac_cv_header_sys_mman_h='yes'} -: ${ac_cv_header_sys_shm_h='yes'} -: ${ac_cv_header_unistd_h='yes'} -: ${ac_cv_prog_CC='gcc -O'} -: ${ac_cv_prog_CPP='gcc -O -E -w'} -: ${ac_cv_prog_RANLIB='ranlib'} -: ${ac_cv_prog_gcc='yes'} -: ${ac_cv_prog_gcc_traditional='no'} -: ${ac_cv_prog_make_make_set='yes'} -: ${ac_cv_type_size_t='yes'} -: ${cl_cv_c_return_void='yes'} -: ${cl_cv_c_struct_return_small='no'} -: ${cl_cv_c_struct_return_static='no'} -: ${cl_cv_c_void='yes'} -: ${cl_cv_codeexec='guessing yes'} -: ${cl_cv_decl_O_RDWR_fcntl_h='yes'} -: ${cl_cv_func_getpagesize='no'} -: ${cl_cv_func_mmap_anonymous='yes'} -: ${cl_cv_func_mmap_works='yes'} -: ${cl_cv_func_vm='no'} -: ${cl_cv_header_stdc='yes'} -: ${cl_cv_host='hppa1.0-hp-hpux8.00'} -: ${cl_cv_path_install='cp'} -: ${cl_cv_prog_as_underscore='no'} -: ${cl_cv_proto_abort='extern void abort (void);'} -: ${cl_cv_proto_abort_ret='void'} -: ${cl_cv_proto_abort_vol=''} -: ${cl_cv_proto_free='extern void free (void*);'} -: ${cl_cv_proto_free_ret='void'} -: ${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -: ${cl_cv_proto_malloc_arg1='unsigned int'} -: ${cl_cv_proto_malloc_ret='void*'} -: ${cl_cv_proto_mmap='extern void* mmap (void*, int, int, int, int, off_t);'} -: ${cl_cv_proto_mmap_arg1='void*'} -: ${cl_cv_proto_mmap_arg2='int'} -: ${cl_cv_proto_mmap_ret='void*'} -: ${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -: ${cl_cv_proto_shmat_arg2='const'} -: ${cl_cv_proto_shmat_ret='void*'} -: ${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -: ${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -: ${cl_cv_proto_shmctl_dots='no'} -: ${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -: ${cl_cv_proto_shmget_arg2='int'} -: ${cl_cv_sys_shm_works='no'} DELETED ffcall/configurations/hppa1.1-hp-hpux10.01-cc-O Index: ffcall/configurations/hppa1.1-hp-hpux10.01-cc-O ================================================================== --- ffcall/configurations/hppa1.1-hp-hpux10.01-cc-O +++ /dev/null @@ -1,81 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=no} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_stdc=${ac_cv_header_stdc=yes} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -O -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -ac_cv_type_off_t=${ac_cv_type_off_t=yes} -ac_cv_type_size_t=${ac_cv_type_size_t=yes} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=no} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=yes} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec='guessing yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=no} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=no} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=no} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=hppa1.1-hp-hpux10.01} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_proto_abort=${cl_cv_proto_abort='extern int abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=int} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern int free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=''} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern caddr_t mmap (void*, int, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=int} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret=caddr_t} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, int, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (char*, int, mode_t);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=''} -cl_cv_proto_open_args=${cl_cv_proto_open_args=' char*, int, mode_t'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=no} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (void*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='void*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=int} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=no} -cl_cv_type_mode_t=${cl_cv_type_mode_t=mode_t} DELETED ffcall/configurations/hppa1.1-hp-hpux9.05-cc-O Index: ffcall/configurations/hppa1.1-hp-hpux9.05-cc-O ================================================================== --- ffcall/configurations/hppa1.1-hp-hpux9.05-cc-O +++ /dev/null @@ -1,82 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -O -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross='no'} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works='yes'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_off_t=${ac_cv_type_off_t='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_longlong=${cl_cv_c_longlong='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='yes'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='guessing yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='no'} -cl_cv_func_mmap_anonymous=${cl_cv_func_mmap_anonymous='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='no'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='hppa1.1-hp-hpux9.05'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern int abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='int'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern int free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=''} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern caddr_t mmap (void*, int, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='int'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='caddr_t'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, int, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (char*, int, mode_t);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=''} -cl_cv_proto_open_args=${cl_cv_proto_open_args=' char*, int, mode_t'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='no'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern char* shmat (int, char*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='char*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (void*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='void*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/hppa2.0-hp-hpux10.20-cc Index: ffcall/configurations/hppa2.0-hp-hpux10.20-cc ================================================================== --- ffcall/configurations/hppa2.0-hp-hpux10.20-cc +++ /dev/null @@ -1,83 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=no} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -p'} -ac_cv_prog_CC=${ac_cv_prog_CC=cc} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -E'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=yes} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=no} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=yes} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec='guessing yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=no} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=yes} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=hppa2.0-hp-hpux10.20} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_LN=${cl_cv_prog_LN=ln} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=no} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern int abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=int} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern int free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=int} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, int, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=int} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, int, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (char*, int, mode_t);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=''} -cl_cv_proto_open_args=${cl_cv_proto_open_args=' char*, int, mode_t'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=no} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (void*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='void*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=int} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=no} DELETED ffcall/configurations/hppa2.0-hp-hpux10.20-cc-Ae Index: ffcall/configurations/hppa2.0-hp-hpux10.20-cc-Ae ================================================================== --- ffcall/configurations/hppa2.0-hp-hpux10.20-cc-Ae +++ /dev/null @@ -1,83 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=no} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -p'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -Ae'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -Ae -E'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=yes} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=no} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=yes} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec='guessing yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=no} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=yes} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=hppa2.0-hp-hpux10.20} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_LN=${cl_cv_prog_LN=ln} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=no} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=size_t} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=const} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=size_t} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=no} DELETED ffcall/configurations/hppa2.0-hp-hpux10.20-cc-O+DA1.1 Index: ffcall/configurations/hppa2.0-hp-hpux10.20-cc-O+DA1.1 ================================================================== --- ffcall/configurations/hppa2.0-hp-hpux10.20-cc-O+DA1.1 +++ /dev/null @@ -1,83 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=no} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_stdc=${ac_cv_header_stdc=yes} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -O +DA1.1'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -O +DA1.1 -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -ac_cv_type_off_t=${ac_cv_type_off_t=yes} -ac_cv_type_size_t=${ac_cv_type_size_t=yes} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=no} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=yes} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec='guessing yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=no} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=no} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=hppa2.0-hp-hpux10.20} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_proto_abort=${cl_cv_proto_abort='extern int abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=int} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern int free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=int} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=''} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, int, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=int} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, int, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (char*, int, mode_t);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=''} -cl_cv_proto_open_args=${cl_cv_proto_open_args=' char*, int, mode_t'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=no} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (void*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='void*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=int} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=no} -cl_cv_type_mode_t=${cl_cv_type_mode_t=mode_t} DELETED ffcall/configurations/hppa2.0-hp-hpux10.20-gcc Index: ffcall/configurations/hppa2.0-hp-hpux10.20-gcc ================================================================== --- ffcall/configurations/hppa2.0-hp-hpux10.20-gcc +++ /dev/null @@ -1,84 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=no} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/usr/ccs/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -p'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -O -E -w'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=yes} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=yes} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=yes} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec='guessing yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=no} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=yes} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=hppa2.0-hp-hpux10.20} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_LN=${cl_cv_prog_LN=ln} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=yes} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=size_t} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=const} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=size_t} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=no} DELETED ffcall/configurations/hppa2.0-hp-hpux10.20-gcc-fpcc-struct-return Index: ffcall/configurations/hppa2.0-hp-hpux10.20-gcc-fpcc-struct-return ================================================================== --- ffcall/configurations/hppa2.0-hp-hpux10.20-gcc-fpcc-struct-return +++ /dev/null @@ -1,84 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=no} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/usr/ccs/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -p'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -fpcc-struct-return -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -fpcc-struct-return -O -E -w'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=yes} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=yes} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=no} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec='guessing yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=no} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=yes} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=hppa2.0-hp-hpux10.20} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_LN=${cl_cv_prog_LN=ln} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=yes} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=size_t} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=const} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=size_t} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=no} DELETED ffcall/configurations/hppa2.0-hp-hpux10.20-gcc-freg-struct-return Index: ffcall/configurations/hppa2.0-hp-hpux10.20-gcc-freg-struct-return ================================================================== --- ffcall/configurations/hppa2.0-hp-hpux10.20-gcc-freg-struct-return +++ /dev/null @@ -1,84 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=no} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/usr/ccs/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -p'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -freg-struct-return -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -freg-struct-return -O -E -w'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=yes} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=yes} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=yes} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec='guessing yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=no} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=yes} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=hppa2.0-hp-hpux10.20} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_LN=${cl_cv_prog_LN=ln} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=yes} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=size_t} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=const} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=size_t} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=no} DELETED ffcall/configurations/i386-pc-solaris2.6-cc-O Index: ffcall/configurations/i386-pc-solaris2.6-cc-O ================================================================== --- ffcall/configurations/i386-pc-solaris2.6-cc-O +++ /dev/null @@ -1,84 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_path_LD=${ac_cv_path_LD='/usr/ccs/bin/ld'} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -p'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -O -E'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross='no'} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works='yes'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg='no'} -cl_cv_c_longlong=${cl_cv_c_longlong='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='i386-pc-solaris2.6'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_LN=${cl_cv_prog_LN='ln'} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc='no'} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (caddr_t, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='caddr_t'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (caddr_t, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2='const'} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (char*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='char*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='size_t'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} DELETED ffcall/configurations/i386-pc-solaris2.6-gcc Index: ffcall/configurations/i386-pc-solaris2.6-gcc ================================================================== --- ffcall/configurations/i386-pc-solaris2.6-gcc +++ /dev/null @@ -1,85 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_path_LD=${ac_cv_path_LD='/usr/ccs/bin/ld'} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -p'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -O -E -w'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross='no'} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works='yes'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='yes'} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional='no'} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg='no'} -cl_cv_c_longlong=${cl_cv_c_longlong='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='yes'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='i386-pc-solaris2.6'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_LN=${cl_cv_prog_LN='ln'} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc='yes'} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern caddr_t mmap (caddr_t, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='caddr_t'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='caddr_t'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (caddr_t, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2='const'} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (char*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='char*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='size_t'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} DELETED ffcall/configurations/i386-pc-solaris2.6-gcc-fpcc-struct-return Index: ffcall/configurations/i386-pc-solaris2.6-gcc-fpcc-struct-return ================================================================== --- ffcall/configurations/i386-pc-solaris2.6-gcc-fpcc-struct-return +++ /dev/null @@ -1,85 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_path_LD=${ac_cv_path_LD='/usr/ccs/bin/ld'} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -p'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -fpcc-struct-return -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -fpcc-struct-return -O -E -w'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross='no'} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works='yes'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='yes'} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional='no'} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg='no'} -cl_cv_c_longlong=${cl_cv_c_longlong='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='yes'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='i386-pc-solaris2.6'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_LN=${cl_cv_prog_LN='ln'} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc='yes'} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern caddr_t mmap (caddr_t, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='caddr_t'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='caddr_t'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (caddr_t, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2='const'} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (char*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='char*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='size_t'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} DELETED ffcall/configurations/i386-pc-solaris2.6-gcc-freg-struct-return Index: ffcall/configurations/i386-pc-solaris2.6-gcc-freg-struct-return ================================================================== --- ffcall/configurations/i386-pc-solaris2.6-gcc-freg-struct-return +++ /dev/null @@ -1,85 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_path_LD=${ac_cv_path_LD='/usr/ccs/bin/ld'} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -p'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -freg-struct-return -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -freg-struct-return -O -E -w'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross='no'} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works='yes'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='yes'} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional='no'} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg='no'} -cl_cv_c_longlong=${cl_cv_c_longlong='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='yes'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='yes'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='i386-pc-solaris2.6'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_LN=${cl_cv_prog_LN='ln'} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc='yes'} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern caddr_t mmap (caddr_t, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='caddr_t'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='caddr_t'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (caddr_t, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2='const'} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (char*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='char*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='size_t'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} DELETED ffcall/configurations/i386-unknown-sysv4.0-gcc Index: ffcall/configurations/i386-unknown-sysv4.0-gcc ================================================================== --- ffcall/configurations/i386-unknown-sysv4.0-gcc +++ /dev/null @@ -1,79 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -O -E -w'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='true'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='yes'} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_off_t=${ac_cv_type_off_t='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='yes'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='no'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='i386-unknown-sysv4.0'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (const char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1='const'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern caddr_t mmap (caddr_t, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='caddr_t'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='caddr_t'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (caddr_t, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, ...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='yes'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/i386-unknown-sysv4.0-usr_bin_cc Index: ffcall/configurations/i386-unknown-sysv4.0-usr_bin_cc ================================================================== --- ffcall/configurations/i386-unknown-sysv4.0-usr_bin_cc +++ /dev/null @@ -1,78 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='/usr/bin/cc'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='/usr/bin/cc -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='true'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_off_t=${ac_cv_type_off_t='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='no'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='i386-unknown-sysv4.0'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (const char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1='const'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, int, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='int'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, int, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, ...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='yes'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/i386-unknown-sysv4.0-usr_ucb_cc Index: ffcall/configurations/i386-unknown-sysv4.0-usr_ucb_cc ================================================================== --- ffcall/configurations/i386-unknown-sysv4.0-usr_ucb_cc +++ /dev/null @@ -1,80 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='/usr/ucb/cc'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='/usr/ucb/cc -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='true'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_off_t=${ac_cv_type_off_t='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='i386-unknown-sysv4.0'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (const char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1='const'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, int, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='int'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, int, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, ...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='yes'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/i486-unknown-linux-gcc Index: ffcall/configurations/i486-unknown-linux-gcc ================================================================== --- ffcall/configurations/i486-unknown-linux-gcc +++ /dev/null @@ -1,83 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_sys_sysmacros_h=${ac_cv_header_sys_sysmacros_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -O -E -w'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='yes'} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='yes'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='yes'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_anon=${cl_cv_func_mmap_anon='yes'} -cl_cv_func_mmap_anonymous=${cl_cv_func_mmap_anonymous='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='i486-unknown-linux'} -cl_cv_path_install=${cl_cv_path_install='/bin/install -c'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='yes'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern size_t getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='size_t'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (const char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1='const'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern caddr_t mmap (caddr_t, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='caddr_t'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='caddr_t'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (caddr_t, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern char* shmat (int, char*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='char*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='yes'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/i486-unknown-linux-gcc-traditional Index: ffcall/configurations/i486-unknown-linux-gcc-traditional ================================================================== --- ffcall/configurations/i486-unknown-linux-gcc-traditional +++ /dev/null @@ -1,83 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_sys_sysmacros_h=${ac_cv_header_sys_sysmacros_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -traditional -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -traditional -O -E -w'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='yes'} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='yes'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='yes'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_anon=${cl_cv_func_mmap_anon='yes'} -cl_cv_func_mmap_anonymous=${cl_cv_func_mmap_anonymous='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='i486-unknown-linux'} -cl_cv_path_install=${cl_cv_path_install='/bin/install -c'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='yes'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern size_t getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='size_t'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=''} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern caddr_t mmap (void*, int, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='int'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='caddr_t'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, int, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (char*, int, mode_t);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=''} -cl_cv_proto_open_args=${cl_cv_proto_open_args=' char*, int, mode_t'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='no'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern char* shmat (int, char*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='char*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='yes'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/i486-unknown-sco3.2v4.2-cc-Of Index: ffcall/configurations/i486-unknown-sco3.2v4.2-cc-Of ================================================================== --- ffcall/configurations/i486-unknown-sco3.2v4.2-cc-Of +++ /dev/null @@ -1,68 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='no'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='no'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -Of'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -Of -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_off_t=${ac_cv_type_off_t='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='yes'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='no'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='i486-unknown-sco3.2v4.2'} -cl_cv_path_install=${cl_cv_path_install='/usr/bin/X11/scoinst -c'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (char*, int, mode_t);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=''} -cl_cv_proto_open_args=${cl_cv_proto_open_args=' char*, int, mode_t'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='no'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern char* shmat (int, char*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='char*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/i486-unknown-sco3.2v4.2-cc-Of-Om Index: ffcall/configurations/i486-unknown-sco3.2v4.2-cc-Of-Om ================================================================== --- ffcall/configurations/i486-unknown-sco3.2v4.2-cc-Of-Om +++ /dev/null @@ -1,68 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='no'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='no'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -Of -Om'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -Of -Om -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_off_t=${ac_cv_type_off_t='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='yes'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='yes'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='no'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='i486-unknown-sco3.2v4.2'} -cl_cv_path_install=${cl_cv_path_install='/usr/bin/X11/scoinst -c'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (char*, int, mode_t);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=''} -cl_cv_proto_open_args=${cl_cv_proto_open_args=' char*, int, mode_t'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='no'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern char* shmat (int, char*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='char*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/i486-unknown-sco3.2v4.2-gcc Index: ffcall/configurations/i486-unknown-sco3.2v4.2-gcc ================================================================== --- ffcall/configurations/i486-unknown-sco3.2v4.2-gcc +++ /dev/null @@ -1,69 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='no'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='no'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -O -E -w'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='yes'} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_off_t=${ac_cv_type_off_t='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='yes'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='no'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='i486-unknown-sco3.2v4.2'} -cl_cv_path_install=${cl_cv_path_install='/usr/bin/X11/scoinst -c'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (const char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1='const'} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern char* shmat (int, char*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='char*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/i486-unknown-sco3.2v4.2-rcc Index: ffcall/configurations/i486-unknown-sco3.2v4.2-rcc ================================================================== --- ffcall/configurations/i486-unknown-sco3.2v4.2-rcc +++ /dev/null @@ -1,68 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='no'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='no'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='rcc'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='rcc -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_off_t=${ac_cv_type_off_t='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='no'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='i486-unknown-sco3.2v4.2'} -cl_cv_path_install=${cl_cv_path_install='/usr/bin/X11/scoinst -c'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (char*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern char* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='char*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (char*, int, mode_t);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=''} -cl_cv_proto_open_args=${cl_cv_proto_open_args=' char*, int, mode_t'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='no'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern char* shmat (int, char*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='char*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/i586-pc-beos-gcc Index: ffcall/configurations/i586-pc-beos-gcc ================================================================== --- ffcall/configurations/i586-pc-beos-gcc +++ /dev/null @@ -1,62 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=no} -ac_cv_func_mprotect=${ac_cv_func_mprotect=no} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=no} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=no} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/boot/develop/tools/gnupro/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/boot/develop/tools/gnupro/bin/nm -B'} -ac_cv_path_install=${ac_cv_path_install='/bin/install -c'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -O -E -w'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=yes} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=yes} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=yes} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=no} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec=yes} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=no} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=i586-pc-beos} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_LN=${cl_cv_prog_LN='cp -p'} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=yes} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (size_t);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1=size_t} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} DELETED ffcall/configurations/i686-pc-linuxlibc6-gcc Index: ffcall/configurations/i686-pc-linuxlibc6-gcc ================================================================== --- ffcall/configurations/i686-pc-linuxlibc6-gcc +++ /dev/null @@ -1,88 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=no} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_sys_sysmacros_h=${ac_cv_header_sys_sysmacros_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/usr/i486-suse-linux/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/usr/bin/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -O -E -w'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=yes} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=yes} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=yes} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=no} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec=yes} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_anon=${cl_cv_func_mmap_anon=yes} -cl_cv_func_mmap_anonymous=${cl_cv_func_mmap_anonymous=yes} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=yes} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=yes} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=i686-pc-linuxlibc6} -cl_cv_path_install=${cl_cv_path_install='/usr/bin/ginstall -c'} -cl_cv_prog_LN=${cl_cv_prog_LN=ln} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=yes} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=size_t} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=const} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=size_t} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=yes} DELETED ffcall/configurations/i686-pc-linuxlibc6-gcc-fpcc-struct-return Index: ffcall/configurations/i686-pc-linuxlibc6-gcc-fpcc-struct-return ================================================================== --- ffcall/configurations/i686-pc-linuxlibc6-gcc-fpcc-struct-return +++ /dev/null @@ -1,88 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=no} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_sys_sysmacros_h=${ac_cv_header_sys_sysmacros_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/usr/i486-suse-linux/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/usr/bin/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -fpcc-struct-return -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -fpcc-struct-return -O -E -w'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=yes} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=yes} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=yes} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=no} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec=yes} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_anon=${cl_cv_func_mmap_anon=yes} -cl_cv_func_mmap_anonymous=${cl_cv_func_mmap_anonymous=yes} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=yes} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=yes} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=i686-pc-linuxlibc6} -cl_cv_path_install=${cl_cv_path_install='/usr/bin/ginstall -c'} -cl_cv_prog_LN=${cl_cv_prog_LN=ln} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=yes} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=size_t} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=const} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=size_t} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=yes} DELETED ffcall/configurations/i686-pc-linuxlibc6-gcc-freg-struct-return Index: ffcall/configurations/i686-pc-linuxlibc6-gcc-freg-struct-return ================================================================== --- ffcall/configurations/i686-pc-linuxlibc6-gcc-freg-struct-return +++ /dev/null @@ -1,88 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=no} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_sys_sysmacros_h=${ac_cv_header_sys_sysmacros_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/usr/i486-suse-linux/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/usr/bin/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -freg-struct-return -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -freg-struct-return -O -E -w'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=yes} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=yes} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=yes} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=yes} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec=yes} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_anon=${cl_cv_func_mmap_anon=yes} -cl_cv_func_mmap_anonymous=${cl_cv_func_mmap_anonymous=yes} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=yes} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=yes} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=i686-pc-linuxlibc6} -cl_cv_path_install=${cl_cv_path_install='/usr/bin/ginstall -c'} -cl_cv_prog_LN=${cl_cv_prog_LN=ln} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=yes} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=size_t} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=const} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=size_t} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=yes} DELETED ffcall/configurations/ia64-unknown-linux-gcc Index: ffcall/configurations/ia64-unknown-linux-gcc ================================================================== --- ffcall/configurations/ia64-unknown-linux-gcc +++ /dev/null @@ -1,88 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_sys_sysmacros_h=${ac_cv_header_sys_sysmacros_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_path_LD=${ac_cv_path_LD='/usr/lib/gcc-lib/ia64-hp-linux/2.9-ia64-000216/../../../../ia64-hp-linux/bin/ld'} -ac_cv_path_NM=${ac_cv_path_NM='/usr/bin/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -O -E -w'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross='no'} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works='yes'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='yes'} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional='no'} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld='yes'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg='no'} -cl_cv_c_longlong=${cl_cv_c_longlong='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='yes'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='yes'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_anon=${cl_cv_func_mmap_anon='yes'} -cl_cv_func_mmap_anonymous=${cl_cv_func_mmap_anonymous='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='ia64-unknown-linux'} -cl_cv_path_install=${cl_cv_path_install='/usr/bin/install -c'} -cl_cv_prog_LN=${cl_cv_prog_LN='ln'} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc='yes'} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (size_t);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='size_t'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2='const'} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='size_t'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='yes'} DELETED ffcall/configurations/m68k-next-nextstep3-cc Index: ffcall/configurations/m68k-next-nextstep3-cc ================================================================== --- ffcall/configurations/m68k-next-nextstep3-cc +++ /dev/null @@ -1,31 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -: ${ac_cv_c_char_unsigned='no'} -: ${ac_cv_c_cross='no'} -: ${ac_cv_header_stdlib_h='yes'} -: ${ac_cv_prog_CC='cc -O -traditional-cpp'} -: ${ac_cv_prog_CPP='cc -O -E -traditional-cpp'} -: ${ac_cv_prog_RANLIB='ranlib'} -: ${ac_cv_prog_gcc='yes'} -: ${ac_cv_prog_gcc_traditional='no'} -: ${ac_cv_prog_make_make_set='yes'} -: ${cl_cv_c_struct_return_small='yes'} -: ${cl_cv_c_struct_return_static='no'} -: ${cl_cv_host='m68k-next-nextstep3'} -: ${cl_cv_path_install='/usr/bin/install -c'} -: ${cl_cv_prog_as_underscore='yes'} -: ${cl_cv_proto_abort='extern void abort (void);'} -: ${cl_cv_proto_abort_ret='void'} -: ${cl_cv_proto_abort_vol=''} DELETED ffcall/configurations/m68k-unknown-linuxlibc6-gcc Index: ffcall/configurations/m68k-unknown-linuxlibc6-gcc ================================================================== --- ffcall/configurations/m68k-unknown-linuxlibc6-gcc +++ /dev/null @@ -1,91 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=no} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_stdc=${ac_cv_header_stdc=yes} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_sys_sysmacros_h=${ac_cv_header_sys_sysmacros_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_install=${ac_cv_path_install='/usr/bin/install -c'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -O -E -w'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=yes} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -ac_cv_type_off_t=${ac_cv_type_off_t=yes} -ac_cv_type_size_t=${ac_cv_type_size_t=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=no} -cl_cv_c_return_void=${cl_cv_c_return_void=yes} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=yes} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec=no} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_anon=${cl_cv_func_mmap_anon=yes} -cl_cv_func_mmap_anonymous=${cl_cv_func_mmap_anonymous=yes} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=yes} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=yes} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=m68k-unknown-linuxlibc6} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=yes} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (const char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=const} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern caddr_t mmap (caddr_t, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1=caddr_t} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=size_t} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret=caddr_t} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (caddr_t, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=const} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=int} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=yes} -cl_cv_type_mode_t=${cl_cv_type_mode_t=mode_t} DELETED ffcall/configurations/mips-dec-ultrix4.4-cc Index: ffcall/configurations/mips-dec-ultrix4.4-cc ================================================================== --- ffcall/configurations/mips-dec-ultrix4.4-cc +++ /dev/null @@ -1,81 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_cachectl_h=${ac_cv_header_sys_cachectl_h='no'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_off_t=${ac_cv_type_off_t='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='no'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='mips-dec-ultrix4.4'} -cl_cv_host_mips64=${cl_cv_host_mips64='no'} -cl_cv_path_install=${cl_cv_path_install='/usr/bin/install -c'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='externvoidabort(void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='externvoidfree(void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='externintgetpagesize(void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='externvoid*malloc(unsignedint);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='externintmkdir(char*,mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=''} -cl_cv_proto_mmap=${cl_cv_proto_mmap='externvoid*mmap(void*,int,int,int,int,off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='int'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='externintmprotect(void*,int,int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='externintopen(char*,int,mode_t);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=''} -cl_cv_proto_open_args=${cl_cv_proto_open_args=' char*, int, mode_t'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='no'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='externchar*shmat(int,char*,int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='char*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='externintshmctl(int,int,structshmid_ds*);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='externintshmget(key_t,int,int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/mips-dec-ultrix4.4-gcc Index: ffcall/configurations/mips-dec-ultrix4.4-gcc ================================================================== --- ffcall/configurations/mips-dec-ultrix4.4-gcc +++ /dev/null @@ -1,82 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_cachectl_h=${ac_cv_header_sys_cachectl_h='no'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -O -E -w'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='yes'} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_off_t=${ac_cv_type_off_t='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='yes'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='no'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='mips-dec-ultrix4.4'} -cl_cv_host_mips64=${cl_cv_host_mips64='no'} -cl_cv_path_install=${cl_cv_path_install='/usr/bin/install -c'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='externvoidabort(void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='externvoidfree(void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='externintgetpagesize(void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='externvoid*malloc(unsignedint);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='externintmkdir(constchar*,mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1='const'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='externvoid*mmap(void*,int,int,int,int,off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='int'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='externintmprotect(void*,int,int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='externintopen(constchar*,int,...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='externchar*shmat(int,constchar*,int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2='const'} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='char*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='externintshmctl(int,int,...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='yes'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='externintshmget(key_t,int,int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/mips-sgi-irix4.0.5H-cc-D__STDC__ Index: ffcall/configurations/mips-sgi-irix4.0.5H-cc-D__STDC__ ================================================================== --- ffcall/configurations/mips-sgi-irix4.0.5H-cc-D__STDC__ +++ /dev/null @@ -1,72 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='yes'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='no'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -D__STDC__=1'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -D__STDC__=1 -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='no'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='mips-sgi-irix4.0.5H'} -cl_cv_path_install=${cl_cv_path_install='/usr/gnu/bin/install -c'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, int, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='int'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, int, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, ...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='yes'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} DELETED ffcall/configurations/mips-sgi-irix4.0.5H-cc-ansi Index: ffcall/configurations/mips-sgi-irix4.0.5H-cc-ansi ================================================================== --- ffcall/configurations/mips-sgi-irix4.0.5H-cc-ansi +++ /dev/null @@ -1,72 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='yes'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -ansi'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -ansi -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='no'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='mips-sgi-irix4.0.5H'} -cl_cv_path_install=${cl_cv_path_install='/usr/gnu/bin/install -c'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, int, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='int'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, int, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, ...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='yes'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} DELETED ffcall/configurations/mips-sgi-irix4.0.5H-cc-cckr Index: ffcall/configurations/mips-sgi-irix4.0.5H-cc-cckr ================================================================== --- ffcall/configurations/mips-sgi-irix4.0.5H-cc-cckr +++ /dev/null @@ -1,72 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='yes'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='no'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -cckr'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -cckr -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='no'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='no'} -cl_cv_host=${cl_cv_host='mips-sgi-irix4.0.5H'} -cl_cv_path_install=${cl_cv_path_install='/usr/gnu/bin/install -c'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, int, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='int'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, int, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} DELETED ffcall/configurations/mips-sgi-irix4.0.5H-gcc-fpcc-struct-return Index: ffcall/configurations/mips-sgi-irix4.0.5H-gcc-fpcc-struct-return ================================================================== --- ffcall/configurations/mips-sgi-irix4.0.5H-gcc-fpcc-struct-return +++ /dev/null @@ -1,73 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='yes'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='no'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -fpcc-struct-return -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -fpcc-struct-return -O -E -w'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='yes'} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='yes'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='no'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='mips-sgi-irix4.0.5H'} -cl_cv_path_install=${cl_cv_path_install='/usr/gnu/bin/install -c'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, int, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='int'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, int, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, ...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='yes'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} DELETED ffcall/configurations/mips-sgi-irix4.0.5H-gcc-freg-struct-return Index: ffcall/configurations/mips-sgi-irix4.0.5H-gcc-freg-struct-return ================================================================== --- ffcall/configurations/mips-sgi-irix4.0.5H-gcc-freg-struct-return +++ /dev/null @@ -1,73 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='yes'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='no'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -freg-struct-return -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -freg-struct-return -O -E -w'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='yes'} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='yes'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='yes'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='no'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='mips-sgi-irix4.0.5H'} -cl_cv_path_install=${cl_cv_path_install='/usr/gnu/bin/install -c'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, int, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='int'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, int, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, ...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='yes'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} DELETED ffcall/configurations/mips-sgi-irix4.0.5H-gcc-traditional Index: ffcall/configurations/mips-sgi-irix4.0.5H-gcc-traditional ================================================================== --- ffcall/configurations/mips-sgi-irix4.0.5H-gcc-traditional +++ /dev/null @@ -1,70 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='yes'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='no'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -traditional -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -traditional -O -E -w'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='yes'} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='yes'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='no'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='no'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='no'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='mips-sgi-irix4.0.5H'} -cl_cv_path_install=${cl_cv_path_install='/usr/gnu/bin/install -c'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern __volatile__ void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol='__volatile__'} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern size_t getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='size_t'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (size_t);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='size_t'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern caddr_t mmap (, , int, int, int, off_t);'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='caddr_t'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (const , , int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1='const'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern char* shmat (int, const char*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2='const'} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='char*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, ...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='yes'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='size_t'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} DELETED ffcall/configurations/mips-sgi-irix5.2-cc Index: ffcall/configurations/mips-sgi-irix5.2-cc ================================================================== --- ffcall/configurations/mips-sgi-irix5.2-cc +++ /dev/null @@ -1,82 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='yes'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_cachectl_h=${ac_cv_header_sys_cachectl_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='true'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_off_t=${ac_cv_type_off_t='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='mips-sgi-irix5.2'} -cl_cv_host_mips64=${cl_cv_host_mips64='no'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (const char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1='const'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, ...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='yes'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/mips-sgi-irix5.2-cc-D__STDC__ Index: ffcall/configurations/mips-sgi-irix5.2-cc-D__STDC__ ================================================================== --- ffcall/configurations/mips-sgi-irix5.2-cc-D__STDC__ +++ /dev/null @@ -1,82 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='yes'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_cachectl_h=${ac_cv_header_sys_cachectl_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -D__STDC__'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -D__STDC__ -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='true'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_off_t=${ac_cv_type_off_t='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='mips-sgi-irix5.2'} -cl_cv_host_mips64=${cl_cv_host_mips64='no'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (const char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1='const'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, ...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='yes'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/mips-sgi-irix5.2-cc-ansi Index: ffcall/configurations/mips-sgi-irix5.2-cc-ansi ================================================================== --- ffcall/configurations/mips-sgi-irix5.2-cc-ansi +++ /dev/null @@ -1,82 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='yes'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_cachectl_h=${ac_cv_header_sys_cachectl_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -ansi'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -ansi -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='true'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_off_t=${ac_cv_type_off_t='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='mips-sgi-irix5.2'} -cl_cv_host_mips64=${cl_cv_host_mips64='no'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (const char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1='const'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, ...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='yes'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/mips-sgi-irix5.2-cc-cckr Index: ffcall/configurations/mips-sgi-irix5.2-cc-cckr ================================================================== --- ffcall/configurations/mips-sgi-irix5.2-cc-cckr +++ /dev/null @@ -1,82 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='yes'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_cachectl_h=${ac_cv_header_sys_cachectl_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -cckr'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -cckr -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='true'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_off_t=${ac_cv_type_off_t='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='mips-sgi-irix5.2'} -cl_cv_host_mips64=${cl_cv_host_mips64='no'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=''} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, int, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='int'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, int, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (char*, int, mode_t);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=''} -cl_cv_proto_open_args=${cl_cv_proto_open_args=' char*, int, mode_t'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='no'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/mips-sgi-irix5.2-gcc Index: ffcall/configurations/mips-sgi-irix5.2-gcc ================================================================== --- ffcall/configurations/mips-sgi-irix5.2-gcc +++ /dev/null @@ -1,83 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='yes'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_cachectl_h=${ac_cv_header_sys_cachectl_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -O -E -w'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='true'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='yes'} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_off_t=${ac_cv_type_off_t='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='yes'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='mips-sgi-irix5.2'} -cl_cv_host_mips64=${cl_cv_host_mips64='no'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (const char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1='const'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, ...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='yes'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/mips-sgi-irix5.3-cc Index: ffcall/configurations/mips-sgi-irix5.3-cc ================================================================== --- ffcall/configurations/mips-sgi-irix5.3-cc +++ /dev/null @@ -1,82 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='yes'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_cachectl_h=${ac_cv_header_sys_cachectl_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='true'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_off_t=${ac_cv_type_off_t='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='mips-sgi-irix5.3'} -cl_cv_host_mips64=${cl_cv_host_mips64='no'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (const char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1='const'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, ...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='yes'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/mips-sgi-irix5.3-cc-D__STDC__ Index: ffcall/configurations/mips-sgi-irix5.3-cc-D__STDC__ ================================================================== --- ffcall/configurations/mips-sgi-irix5.3-cc-D__STDC__ +++ /dev/null @@ -1,82 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='yes'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_cachectl_h=${ac_cv_header_sys_cachectl_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -D__STDC__'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -D__STDC__ -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='true'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_off_t=${ac_cv_type_off_t='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='mips-sgi-irix5.3'} -cl_cv_host_mips64=${cl_cv_host_mips64='no'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (const char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1='const'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, ...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='yes'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/mips-sgi-irix5.3-cc-O Index: ffcall/configurations/mips-sgi-irix5.3-cc-O ================================================================== --- ffcall/configurations/mips-sgi-irix5.3-cc-O +++ /dev/null @@ -1,86 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='yes'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_cachectl_h=${ac_cv_header_sys_cachectl_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -O -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='true'} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross='no'} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works='yes'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_off_t=${ac_cv_type_off_t='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_longlong=${cl_cv_c_longlong='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='mips-sgi-irix5.3'} -cl_cv_host_mips64=${cl_cv_host_mips64='no'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (const char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1='const'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, ...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='yes'} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (void*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='void*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/mips-sgi-irix5.3-cc-ansi Index: ffcall/configurations/mips-sgi-irix5.3-cc-ansi ================================================================== --- ffcall/configurations/mips-sgi-irix5.3-cc-ansi +++ /dev/null @@ -1,82 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='yes'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_cachectl_h=${ac_cv_header_sys_cachectl_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -ansi'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -ansi -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='true'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_off_t=${ac_cv_type_off_t='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='mips-sgi-irix5.3'} -cl_cv_host_mips64=${cl_cv_host_mips64='no'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (const char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1='const'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, ...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='yes'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/mips-sgi-irix5.3-cc-cckr Index: ffcall/configurations/mips-sgi-irix5.3-cc-cckr ================================================================== --- ffcall/configurations/mips-sgi-irix5.3-cc-cckr +++ /dev/null @@ -1,82 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='yes'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_cachectl_h=${ac_cv_header_sys_cachectl_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -cckr'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -cckr -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='true'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_off_t=${ac_cv_type_off_t='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='mips-sgi-irix5.3'} -cl_cv_host_mips64=${cl_cv_host_mips64='no'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=''} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, int, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='int'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, int, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (char*, int, mode_t);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=''} -cl_cv_proto_open_args=${cl_cv_proto_open_args=' char*, int, mode_t'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='no'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/mips-sgi-irix5.3-gcc Index: ffcall/configurations/mips-sgi-irix5.3-gcc ================================================================== --- ffcall/configurations/mips-sgi-irix5.3-gcc +++ /dev/null @@ -1,83 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='yes'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_cachectl_h=${ac_cv_header_sys_cachectl_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -O -E -w'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='true'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='yes'} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_off_t=${ac_cv_type_off_t='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='yes'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='mips-sgi-irix5.3'} -cl_cv_host_mips64=${cl_cv_host_mips64='no'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (const char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1='const'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, ...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='yes'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/mips-sgi-irix6.2-cc-32 Index: ffcall/configurations/mips-sgi-irix6.2-cc-32 ================================================================== --- ffcall/configurations/mips-sgi-irix6.2-cc-32 +++ /dev/null @@ -1,82 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='yes'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_cachectl_h=${ac_cv_header_sys_cachectl_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -32'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -32 -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='true'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_off_t=${ac_cv_type_off_t='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='mips-sgi-irix6.2'} -cl_cv_host_mips64=${cl_cv_host_mips64='no'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (const char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1='const'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2='const'} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, ...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='yes'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='size_t'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/mips-sgi-irix6.2-cc-64 Index: ffcall/configurations/mips-sgi-irix6.2-cc-64 ================================================================== --- ffcall/configurations/mips-sgi-irix6.2-cc-64 +++ /dev/null @@ -1,82 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='yes'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_cachectl_h=${ac_cv_header_sys_cachectl_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -64'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -64 -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='true'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_off_t=${ac_cv_type_off_t='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='mips-sgi-irix6.2'} -cl_cv_host_mips64=${cl_cv_host_mips64='yes'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (size_t);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='size_t'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (const char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1='const'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2='const'} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, ...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='yes'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='size_t'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/mips-sgi-irix6.2-cc-o32-O Index: ffcall/configurations/mips-sgi-irix6.2-cc-o32-O ================================================================== --- ffcall/configurations/mips-sgi-irix6.2-cc-o32-O +++ /dev/null @@ -1,86 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='yes'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_cachectl_h=${ac_cv_header_sys_cachectl_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -o32'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -o32 -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='true'} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross='no'} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works='yes'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_off_t=${ac_cv_type_off_t='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_longlong=${cl_cv_c_longlong='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='mips-sgi-irix6.2'} -cl_cv_host_mips64=${cl_cv_host_mips64='no'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (const char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1='const'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2='const'} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, ...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='yes'} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='size_t'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/mips-sgi-irix6.4-cc-64 Index: ffcall/configurations/mips-sgi-irix6.4-cc-64 ================================================================== --- ffcall/configurations/mips-sgi-irix6.4-cc-64 +++ /dev/null @@ -1,87 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=yes} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_cachectl_h=${ac_cv_header_sys_cachectl_h=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_sys_sysmacros_h=${ac_cv_header_sys_sysmacros_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/bin/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -64'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -64 -E'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=no} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=no} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec=no} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=yes} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=yes} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=mips-sgi-irix6.4} -cl_cv_host_mips64=${cl_cv_host_mips64=yes} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_LN=${cl_cv_prog_LN=ln} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=no} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (size_t);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1=size_t} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=size_t} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=const} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, ...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=yes} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=size_t} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=yes} DELETED ffcall/configurations/mips-sgi-irix6.4-cc-n32-O Index: ffcall/configurations/mips-sgi-irix6.4-cc-n32-O ================================================================== --- ffcall/configurations/mips-sgi-irix6.4-cc-n32-O +++ /dev/null @@ -1,87 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=yes} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_stdc=${ac_cv_header_stdc=yes} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h=yes} -ac_cv_header_sys_cachectl_h=${ac_cv_header_sys_cachectl_h=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_sys_sysmacros_h=${ac_cv_header_sys_sysmacros_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -n32'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -n32 -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=true} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -ac_cv_type_off_t=${ac_cv_type_off_t=yes} -ac_cv_type_size_t=${ac_cv_type_size_t=yes} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=no} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=no} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec=no} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=yes} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=yes} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=mips-sgi-irix6.4} -cl_cv_host_mips64=${cl_cv_host_mips64=no} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (const char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=const} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=size_t} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=const} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, ...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=yes} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=size_t} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=yes} -cl_cv_type_mode_t=${cl_cv_type_mode_t=mode_t} DELETED ffcall/configurations/mips-sgi-irix6.4-cc-o32-O Index: ffcall/configurations/mips-sgi-irix6.4-cc-o32-O ================================================================== --- ffcall/configurations/mips-sgi-irix6.4-cc-o32-O +++ /dev/null @@ -1,87 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=yes} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_stdc=${ac_cv_header_stdc=yes} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h=yes} -ac_cv_header_sys_cachectl_h=${ac_cv_header_sys_cachectl_h=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_sys_sysmacros_h=${ac_cv_header_sys_sysmacros_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -o32'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -o32 -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=true} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -ac_cv_type_off_t=${ac_cv_type_off_t=yes} -ac_cv_type_size_t=${ac_cv_type_size_t=yes} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=no} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=no} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec=no} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=yes} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=yes} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=mips-sgi-irix6.4} -cl_cv_host_mips64=${cl_cv_host_mips64=no} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (const char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=const} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=size_t} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=const} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, ...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=yes} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=size_t} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=yes} -cl_cv_type_mode_t=${cl_cv_type_mode_t=mode_t} DELETED ffcall/configurations/mips-sgi-irix6.5-cc Index: ffcall/configurations/mips-sgi-irix6.5-cc ================================================================== --- ffcall/configurations/mips-sgi-irix6.5-cc +++ /dev/null @@ -1,88 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=yes} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_cachectl_h=${ac_cv_header_sys_cachectl_h=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_sys_sysmacros_h=${ac_cv_header_sys_sysmacros_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/bin/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC=cc} -ac_cv_prog_CPP=${ac_cv_prog_CPP=/lib/cpp} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=no} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=no} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec=no} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=yes} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=yes} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=mips-sgi-irix6.5} -cl_cv_host_mips64=${cl_cv_host_mips64=no} -cl_cv_host_mipsn32=${cl_cv_host_mipsn32=no} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_LN=${cl_cv_prog_LN=ln} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=no} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=size_t} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=const} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, ...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=yes} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=size_t} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=yes} DELETED ffcall/configurations/mips-sgi-irix6.5-cc-32 Index: ffcall/configurations/mips-sgi-irix6.5-cc-32 ================================================================== --- ffcall/configurations/mips-sgi-irix6.5-cc-32 +++ /dev/null @@ -1,88 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=yes} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_cachectl_h=${ac_cv_header_sys_cachectl_h=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_sys_sysmacros_h=${ac_cv_header_sys_sysmacros_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/bin/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -32'} -ac_cv_prog_CPP=${ac_cv_prog_CPP=/lib/cpp} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=no} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=no} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec=no} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=yes} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=yes} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=mips-sgi-irix6.5} -cl_cv_host_mips64=${cl_cv_host_mips64=no} -cl_cv_host_mipsn32=${cl_cv_host_mipsn32=no} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_LN=${cl_cv_prog_LN=ln} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=no} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=size_t} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=const} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, ...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=yes} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=size_t} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=yes} DELETED ffcall/configurations/mips-sgi-irix6.5-cc-64 Index: ffcall/configurations/mips-sgi-irix6.5-cc-64 ================================================================== --- ffcall/configurations/mips-sgi-irix6.5-cc-64 +++ /dev/null @@ -1,86 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='guessing no'} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_cachectl_h=${ac_cv_header_sys_cachectl_h=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/bin/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -64'} -ac_cv_prog_CPP=${ac_cv_prog_CPP=/lib/cpp} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=yes} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg='guessing no'} -cl_cv_c_longlong=${cl_cv_c_longlong='guessing no'} -cl_cv_c_return_void=${cl_cv_c_return_void=no} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='guessing no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='guessing no'} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec='guessing yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=no} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=no} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=mips-sgi-irix6.5} -cl_cv_host_mips64=${cl_cv_host_mips64=no} -cl_cv_host_mipsn32=${cl_cv_host_mipsn32=no} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_LN=${cl_cv_prog_LN=ln} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=no} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (size_t);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1=size_t} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=size_t} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=const} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, ...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=yes} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=size_t} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='guessing no'} DELETED ffcall/configurations/mips-sgi-irix6.5-cc-n32 Index: ffcall/configurations/mips-sgi-irix6.5-cc-n32 ================================================================== --- ffcall/configurations/mips-sgi-irix6.5-cc-n32 +++ /dev/null @@ -1,88 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=yes} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_cachectl_h=${ac_cv_header_sys_cachectl_h=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_sys_sysmacros_h=${ac_cv_header_sys_sysmacros_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/bin/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -n32'} -ac_cv_prog_CPP=${ac_cv_prog_CPP=/lib/cpp} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=no} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=no} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec=no} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=yes} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=yes} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=mips-sgi-irix6.5} -cl_cv_host_mips64=${cl_cv_host_mips64=no} -cl_cv_host_mipsn32=${cl_cv_host_mipsn32=no} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_LN=${cl_cv_prog_LN=ln} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=no} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=size_t} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=const} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, ...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=yes} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=size_t} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=yes} DELETED ffcall/configurations/mips-sgi-irix6.5-cc-o32 Index: ffcall/configurations/mips-sgi-irix6.5-cc-o32 ================================================================== --- ffcall/configurations/mips-sgi-irix6.5-cc-o32 +++ /dev/null @@ -1,88 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=yes} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_cachectl_h=${ac_cv_header_sys_cachectl_h=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_sys_sysmacros_h=${ac_cv_header_sys_sysmacros_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/bin/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -o32'} -ac_cv_prog_CPP=${ac_cv_prog_CPP=/lib/cpp} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=no} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=no} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec=no} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=yes} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=yes} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=mips-sgi-irix6.5} -cl_cv_host_mips64=${cl_cv_host_mips64=no} -cl_cv_host_mipsn32=${cl_cv_host_mipsn32=no} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_LN=${cl_cv_prog_LN=ln} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=no} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=size_t} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=const} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, ...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=yes} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=size_t} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=yes} DELETED ffcall/configurations/mips-sgi-irix6.5-gcc Index: ffcall/configurations/mips-sgi-irix6.5-gcc ================================================================== --- ffcall/configurations/mips-sgi-irix6.5-gcc +++ /dev/null @@ -1,89 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=yes} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_cachectl_h=${ac_cv_header_sys_cachectl_h=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_sys_sysmacros_h=${ac_cv_header_sys_sysmacros_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/usr/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/bin/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -O -E -w'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=yes} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=yes} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=yes} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec=no} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=yes} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=yes} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=mips-sgi-irix6.5} -cl_cv_host_mips64=${cl_cv_host_mips64=no} -cl_cv_host_mipsn32=${cl_cv_host_mipsn32=yes} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_LN=${cl_cv_prog_LN=ln} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=yes} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=size_t} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=const} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, ...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=yes} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=size_t} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=yes} DELETED ffcall/configurations/mips-sgi-irix6.5-gcc-fpcc-struct-return Index: ffcall/configurations/mips-sgi-irix6.5-gcc-fpcc-struct-return ================================================================== --- ffcall/configurations/mips-sgi-irix6.5-gcc-fpcc-struct-return +++ /dev/null @@ -1,89 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=yes} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_cachectl_h=${ac_cv_header_sys_cachectl_h=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_sys_sysmacros_h=${ac_cv_header_sys_sysmacros_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/usr/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/bin/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -fpcc-struct-return -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -fpcc-struct-return -O -E -w'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=yes} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=yes} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=yes} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec=no} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=yes} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=yes} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=mips-sgi-irix6.5} -cl_cv_host_mips64=${cl_cv_host_mips64=no} -cl_cv_host_mipsn32=${cl_cv_host_mipsn32=yes} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_LN=${cl_cv_prog_LN=ln} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=yes} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=size_t} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=const} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, ...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=yes} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=size_t} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=yes} DELETED ffcall/configurations/mips-sgi-irix6.5-gcc-freg-struct-return Index: ffcall/configurations/mips-sgi-irix6.5-gcc-freg-struct-return ================================================================== --- ffcall/configurations/mips-sgi-irix6.5-gcc-freg-struct-return +++ /dev/null @@ -1,89 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=yes} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_cachectl_h=${ac_cv_header_sys_cachectl_h=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_sys_sysmacros_h=${ac_cv_header_sys_sysmacros_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/usr/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/bin/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -freg-struct-return -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -freg-struct-return -O -E -w'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=yes} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=yes} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=yes} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec=no} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=yes} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=yes} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=mips-sgi-irix6.5} -cl_cv_host_mips64=${cl_cv_host_mips64=no} -cl_cv_host_mipsn32=${cl_cv_host_mipsn32=yes} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_LN=${cl_cv_prog_LN=ln} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=yes} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=size_t} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=const} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, ...);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, ...'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=yes} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=size_t} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=yes} DELETED ffcall/configurations/powerpc-ibm-aix4.1.4.0-cc Index: ffcall/configurations/powerpc-ibm-aix4.1.4.0-cc ================================================================== --- ffcall/configurations/powerpc-ibm-aix4.1.4.0-cc +++ /dev/null @@ -1,85 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=yes} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_stdc=${ac_cv_header_stdc=yes} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_prog_CC=${ac_cv_prog_CC=cc} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -ac_cv_type_off_t=${ac_cv_type_off_t=yes} -ac_cv_type_size_t=${ac_cv_type_size_t=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=no} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=no} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec='guessing no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=no} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=no} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=powerpc-ibm-aix4.1.4.0} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=no} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=''} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, int, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=int} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, int, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (void*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='void*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=int} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=no} -cl_cv_type_mode_t=${cl_cv_type_mode_t=mode_t} DELETED ffcall/configurations/powerpc-ibm-aix4.1.4.0-xlc Index: ffcall/configurations/powerpc-ibm-aix4.1.4.0-xlc ================================================================== --- ffcall/configurations/powerpc-ibm-aix4.1.4.0-xlc +++ /dev/null @@ -1,85 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=yes} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_stdc=${ac_cv_header_stdc=yes} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_prog_CC=${ac_cv_prog_CC=xlc} -ac_cv_prog_CPP=${ac_cv_prog_CPP='xlc -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -ac_cv_type_off_t=${ac_cv_type_off_t=yes} -ac_cv_type_size_t=${ac_cv_type_size_t=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=no} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=no} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec='guessing no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=no} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=no} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=powerpc-ibm-aix4.1.4.0} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=no} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (size_t);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1=size_t} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (const char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=const} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=size_t} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=const} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=int} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=no} -cl_cv_type_mode_t=${cl_cv_type_mode_t=mode_t} DELETED ffcall/configurations/powerpc-ibm-aix4.1.5.0-cc Index: ffcall/configurations/powerpc-ibm-aix4.1.5.0-cc ================================================================== --- ffcall/configurations/powerpc-ibm-aix4.1.5.0-cc +++ /dev/null @@ -1,83 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=yes} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC=cc} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=no} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=no} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec='guessing no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=no} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=no} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=powerpc-ibm-aix4.1.5.0} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=no} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=''} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, int, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=int} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, int, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (void*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='void*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=int} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=no} DELETED ffcall/configurations/powerpc-ibm-aix4.1.5.0-cc-O Index: ffcall/configurations/powerpc-ibm-aix4.1.5.0-cc-O ================================================================== --- ffcall/configurations/powerpc-ibm-aix4.1.5.0-cc-O +++ /dev/null @@ -1,83 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=yes} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -O -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=no} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=no} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec='guessing no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=no} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=no} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=powerpc-ibm-aix4.1.5.0} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=no} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=''} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, int, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=int} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, int, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (void*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='void*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=int} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=no} DELETED ffcall/configurations/powerpc-ibm-aix4.1.5.0-xlc Index: ffcall/configurations/powerpc-ibm-aix4.1.5.0-xlc ================================================================== --- ffcall/configurations/powerpc-ibm-aix4.1.5.0-xlc +++ /dev/null @@ -1,83 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=yes} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC=xlc} -ac_cv_prog_CPP=${ac_cv_prog_CPP='xlc -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=no} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=no} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec='guessing no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=no} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=no} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=powerpc-ibm-aix4.1.5.0} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=no} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (size_t);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1=size_t} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (const char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=const} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=size_t} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=const} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=int} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=no} DELETED ffcall/configurations/powerpc-ibm-aix4.1.5.0-xlc-O Index: ffcall/configurations/powerpc-ibm-aix4.1.5.0-xlc-O ================================================================== --- ffcall/configurations/powerpc-ibm-aix4.1.5.0-xlc-O +++ /dev/null @@ -1,83 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=yes} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC='xlc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='xlc -O -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=no} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=no} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec='guessing no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=no} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=no} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=powerpc-ibm-aix4.1.5.0} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=no} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (size_t);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1=size_t} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (const char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=const} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=size_t} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=const} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=int} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=no} DELETED ffcall/configurations/powerpc-ibm-aix4.3.2.0-cc Index: ffcall/configurations/powerpc-ibm-aix4.3.2.0-cc ================================================================== --- ffcall/configurations/powerpc-ibm-aix4.3.2.0-cc +++ /dev/null @@ -1,84 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=yes} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -B'} -ac_cv_path_install=${ac_cv_path_install='/bin/installbsd -c'} -ac_cv_prog_CC=${ac_cv_prog_CC=cc} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=no} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=no} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec='guessing no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=no} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=yes} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=powerpc-ibm-aix4.3.2.0} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=no} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=''} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, int, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=int} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, int, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (void*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='void*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=int} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=no} DELETED ffcall/configurations/powerpc-ibm-aix4.3.2.0-cc-O Index: ffcall/configurations/powerpc-ibm-aix4.3.2.0-cc-O ================================================================== --- ffcall/configurations/powerpc-ibm-aix4.3.2.0-cc-O +++ /dev/null @@ -1,84 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=yes} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -B'} -ac_cv_path_install=${ac_cv_path_install='/bin/installbsd -c'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -O -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=no} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=no} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec='guessing no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=no} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=yes} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=powerpc-ibm-aix4.3.2.0} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=no} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=''} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, int, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=int} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, int, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (void*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='void*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=int} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=no} DELETED ffcall/configurations/powerpc-ibm-aix4.3.2.0-xlc Index: ffcall/configurations/powerpc-ibm-aix4.3.2.0-xlc ================================================================== --- ffcall/configurations/powerpc-ibm-aix4.3.2.0-xlc +++ /dev/null @@ -1,84 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=yes} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -B'} -ac_cv_path_install=${ac_cv_path_install='/bin/installbsd -c'} -ac_cv_prog_CC=${ac_cv_prog_CC=xlc} -ac_cv_prog_CPP=${ac_cv_prog_CPP='xlc -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=no} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=no} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec='guessing no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=no} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=yes} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=powerpc-ibm-aix4.3.2.0} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=no} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (size_t);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1=size_t} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (const char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=const} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=size_t} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=const} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=size_t} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=no} DELETED ffcall/configurations/powerpc-ibm-aix4.3.2.0-xlc-O Index: ffcall/configurations/powerpc-ibm-aix4.3.2.0-xlc-O ================================================================== --- ffcall/configurations/powerpc-ibm-aix4.3.2.0-xlc-O +++ /dev/null @@ -1,84 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=yes} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -B'} -ac_cv_path_install=${ac_cv_path_install='/bin/installbsd -c'} -ac_cv_prog_CC=${ac_cv_prog_CC='xlc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='xlc -O -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=no} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=no} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec='guessing no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=no} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=yes} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=powerpc-ibm-aix4.3.2.0} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=no} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (size_t);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1=size_t} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (const char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=const} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=size_t} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=const} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=size_t} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=no} DELETED ffcall/configurations/rs6000-ibm-aix3.2.5-c89 Index: ffcall/configurations/rs6000-ibm-aix3.2.5-c89 ================================================================== --- ffcall/configurations/rs6000-ibm-aix3.2.5-c89 +++ /dev/null @@ -1,76 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='yes'} -ac_cv_c_cross=${ac_cv_c_cross='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='c89'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='c89 -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='guessing no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='no'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='no'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='no'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='rs6000-ibm-aix3.2.5'} -cl_cv_path_install=${cl_cv_path_install='/client/bin/install -c'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (size_t);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='size_t'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (char*, int);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=''} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern caddr_t mmap (, , int, int, int, off_t);'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='caddr_t'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (const , , int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1='const'} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (char*, int, int);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=''} -cl_cv_proto_open_args=${cl_cv_proto_open_args=' char*, int, int'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='no'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='size_t'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='int'} DELETED ffcall/configurations/rs6000-ibm-aix3.2.5-cc Index: ffcall/configurations/rs6000-ibm-aix3.2.5-cc ================================================================== --- ffcall/configurations/rs6000-ibm-aix3.2.5-cc +++ /dev/null @@ -1,85 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='yes'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='yes'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross='no'} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works='yes'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_off_t=${ac_cv_type_off_t='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg='no'} -cl_cv_c_longlong=${cl_cv_c_longlong='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='guessing no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='no'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='no'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='rs6000-ibm-aix3.2.5'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=''} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern caddr_t mmap (void*, int, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='int'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='caddr_t'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, int, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern char* shmat (int, char*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='char*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (void*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='void*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/rs6000-ibm-aix3.2.5-gcc Index: ffcall/configurations/rs6000-ibm-aix3.2.5-gcc ================================================================== --- ffcall/configurations/rs6000-ibm-aix3.2.5-gcc +++ /dev/null @@ -1,84 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='yes'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_path_LD=${ac_cv_path_LD='/nfs/home/haible/gnu/arch/rs6000/lib/gcc-lib/rs6000-ibm-aix3.2.5/egcs-2.90.25/ld'} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ucb/nm -p'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -O -E -w'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross='no'} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works='yes'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='yes'} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional='no'} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='no'} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg='no'} -cl_cv_c_longlong=${cl_cv_c_longlong='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='yes'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='guessing no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='no'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='no'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='rs6000-ibm-aix3.2.5'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_LN=${cl_cv_prog_LN='ln'} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc='yes'} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (size_t);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='size_t'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern caddr_t mmap (caddr_t, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='caddr_t'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='caddr_t'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (caddr_t, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern char* shmat (int, char*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='char*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (char*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='char*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} DELETED ffcall/configurations/rs6000-ibm-aix3.2.5-gcc-fpcc-struct-return Index: ffcall/configurations/rs6000-ibm-aix3.2.5-gcc-fpcc-struct-return ================================================================== --- ffcall/configurations/rs6000-ibm-aix3.2.5-gcc-fpcc-struct-return +++ /dev/null @@ -1,84 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='yes'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_path_LD=${ac_cv_path_LD='/nfs/home/haible/gnu/arch/rs6000/lib/gcc-lib/rs6000-ibm-aix3.2.5/egcs-2.90.25/ld'} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ucb/nm -p'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -fpcc-struct-return -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -fpcc-struct-return -O -E -w'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross='no'} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works='yes'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='yes'} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional='no'} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='no'} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg='no'} -cl_cv_c_longlong=${cl_cv_c_longlong='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='yes'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='guessing no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='no'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='no'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='rs6000-ibm-aix3.2.5'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_LN=${cl_cv_prog_LN='ln'} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc='yes'} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (size_t);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='size_t'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern caddr_t mmap (caddr_t, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='caddr_t'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='caddr_t'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (caddr_t, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern char* shmat (int, char*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='char*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (char*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='char*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} DELETED ffcall/configurations/rs6000-ibm-aix3.2.5-gcc-freg-struct-return Index: ffcall/configurations/rs6000-ibm-aix3.2.5-gcc-freg-struct-return ================================================================== --- ffcall/configurations/rs6000-ibm-aix3.2.5-gcc-freg-struct-return +++ /dev/null @@ -1,84 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='yes'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_path_LD=${ac_cv_path_LD='/nfs/home/haible/gnu/arch/rs6000/lib/gcc-lib/rs6000-ibm-aix3.2.5/egcs-2.90.25/ld'} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ucb/nm -p'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -freg-struct-return -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -freg-struct-return -O -E -w'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross='no'} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works='yes'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='yes'} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional='no'} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='no'} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg='no'} -cl_cv_c_longlong=${cl_cv_c_longlong='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='yes'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='yes'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='guessing no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='no'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='no'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='rs6000-ibm-aix3.2.5'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_LN=${cl_cv_prog_LN='ln'} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc='yes'} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (size_t);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='size_t'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern caddr_t mmap (caddr_t, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='caddr_t'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='caddr_t'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (caddr_t, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern char* shmat (int, char*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='char*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (char*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='char*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} DELETED ffcall/configurations/rs6000-ibm-aix3.2.5-xlc Index: ffcall/configurations/rs6000-ibm-aix3.2.5-xlc ================================================================== --- ffcall/configurations/rs6000-ibm-aix3.2.5-xlc +++ /dev/null @@ -1,80 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='yes'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_path_LD=${ac_cv_path_LD='/bin/ld'} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ucb/nm -p'} -ac_cv_prog_CC=${ac_cv_prog_CC='xlc'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='xlc -E'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross='no'} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works='yes'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='no'} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg='no'} -cl_cv_c_longlong=${cl_cv_c_longlong='no'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='guessing no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='no'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='no'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='no'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='rs6000-ibm-aix3.2.5'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_LN=${cl_cv_prog_LN='ln'} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc='no'} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (size_t);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='size_t'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern mmap (, , int, int, int, off_t);'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (const , , int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1='const'} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=''} -cl_cv_proto_open_args=${cl_cv_proto_open_args=' char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (void*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='void*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='size_t'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} DELETED ffcall/configurations/rs6000-ibm-aix4.1.5.0-cc Index: ffcall/configurations/rs6000-ibm-aix4.1.5.0-cc ================================================================== --- ffcall/configurations/rs6000-ibm-aix4.1.5.0-cc +++ /dev/null @@ -1,83 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=yes} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC=cc} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -E'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=no} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=no} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec='guessing no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=no} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=no} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=powerpc-ibm-aix4.1.5.0} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_LN=${cl_cv_prog_LN=ln} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=no} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, int, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=int} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, int, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (void*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='void*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=int} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=no} DELETED ffcall/configurations/rs6000-ibm-aix4.1.5.0-cc-O Index: ffcall/configurations/rs6000-ibm-aix4.1.5.0-cc-O ================================================================== --- ffcall/configurations/rs6000-ibm-aix4.1.5.0-cc-O +++ /dev/null @@ -1,83 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=yes} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -O -E'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=no} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=no} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec='guessing no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=no} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=no} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=powerpc-ibm-aix4.1.5.0} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_LN=${cl_cv_prog_LN=ln} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=no} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, int, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=int} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, int, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (void*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='void*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=int} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=no} DELETED ffcall/configurations/rs6000-ibm-aix4.1.5.0-xlc Index: ffcall/configurations/rs6000-ibm-aix4.1.5.0-xlc ================================================================== --- ffcall/configurations/rs6000-ibm-aix4.1.5.0-xlc +++ /dev/null @@ -1,83 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=yes} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC=xlc} -ac_cv_prog_CPP=${ac_cv_prog_CPP='xlc -E'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=no} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=no} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec='guessing no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=no} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=no} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=powerpc-ibm-aix4.1.5.0} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_LN=${cl_cv_prog_LN=ln} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=no} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (size_t);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1=size_t} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=size_t} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=const} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=int} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=no} DELETED ffcall/configurations/rs6000-ibm-aix4.1.5.0-xlc-O Index: ffcall/configurations/rs6000-ibm-aix4.1.5.0-xlc-O ================================================================== --- ffcall/configurations/rs6000-ibm-aix4.1.5.0-xlc-O +++ /dev/null @@ -1,83 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=yes} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC='xlc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='xlc -O -E'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=no} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=no} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec='guessing no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=no} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=no} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=powerpc-ibm-aix4.1.5.0} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_LN=${cl_cv_prog_LN=ln} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=no} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (size_t);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1=size_t} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=size_t} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=const} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=int} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=no} DELETED ffcall/configurations/rs6000-ibm-aix4.2.0.0-cc Index: ffcall/configurations/rs6000-ibm-aix4.2.0.0-cc ================================================================== --- ffcall/configurations/rs6000-ibm-aix4.2.0.0-cc +++ /dev/null @@ -1,83 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=yes} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC=cc} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=no} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=no} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec='guessing no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=no} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=no} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=rs6000-ibm-aix4.2.0.0} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=no} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=''} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, int, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=int} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, int, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (void*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='void*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=int} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=no} DELETED ffcall/configurations/rs6000-ibm-aix4.2.0.0-cc-O Index: ffcall/configurations/rs6000-ibm-aix4.2.0.0-cc-O ================================================================== --- ffcall/configurations/rs6000-ibm-aix4.2.0.0-cc-O +++ /dev/null @@ -1,83 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=yes} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -O -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=no} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=no} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec='guessing no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=no} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=no} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=rs6000-ibm-aix4.2.0.0} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=no} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=''} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, int, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=int} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, int, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (void*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='void*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=int} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=no} DELETED ffcall/configurations/rs6000-ibm-aix4.2.0.0-gcc Index: ffcall/configurations/rs6000-ibm-aix4.2.0.0-gcc ================================================================== --- ffcall/configurations/rs6000-ibm-aix4.2.0.0-gcc +++ /dev/null @@ -1,84 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=yes} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -O -E -w'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=yes} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=yes} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=no} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec='guessing no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=no} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=no} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=rs6000-ibm-aix4.2.0.0} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_LN=${cl_cv_prog_LN=ln} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=yes} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (size_t);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1=size_t} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=size_t} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=const} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=int} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=no} DELETED ffcall/configurations/rs6000-ibm-aix4.2.0.0-gcc-fpcc-struct-return Index: ffcall/configurations/rs6000-ibm-aix4.2.0.0-gcc-fpcc-struct-return ================================================================== --- ffcall/configurations/rs6000-ibm-aix4.2.0.0-gcc-fpcc-struct-return +++ /dev/null @@ -1,84 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=yes} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -fpcc-struct-return -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -fpcc-struct-return -O -E -w'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=yes} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=yes} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=no} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec='guessing no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=no} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=no} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=rs6000-ibm-aix4.2.0.0} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_LN=${cl_cv_prog_LN=ln} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=yes} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (size_t);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1=size_t} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=size_t} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=const} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=int} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=no} DELETED ffcall/configurations/rs6000-ibm-aix4.2.0.0-gcc-freg-struct-return Index: ffcall/configurations/rs6000-ibm-aix4.2.0.0-gcc-freg-struct-return ================================================================== --- ffcall/configurations/rs6000-ibm-aix4.2.0.0-gcc-freg-struct-return +++ /dev/null @@ -1,84 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=yes} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -freg-struct-return -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -freg-struct-return -O -E -w'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=yes} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=yes} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=yes} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec='guessing no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=no} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=no} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=rs6000-ibm-aix4.2.0.0} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_LN=${cl_cv_prog_LN=ln} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=yes} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (size_t);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1=size_t} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=size_t} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=const} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=int} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=no} DELETED ffcall/configurations/rs6000-ibm-aix4.2.0.0-xlc Index: ffcall/configurations/rs6000-ibm-aix4.2.0.0-xlc ================================================================== --- ffcall/configurations/rs6000-ibm-aix4.2.0.0-xlc +++ /dev/null @@ -1,83 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=yes} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC=xlc} -ac_cv_prog_CPP=${ac_cv_prog_CPP='xlc -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=no} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=no} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec='guessing no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=no} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=no} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=rs6000-ibm-aix4.2.0.0} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=no} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (size_t);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1=size_t} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (const char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=const} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=size_t} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=const} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=int} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=no} DELETED ffcall/configurations/rs6000-ibm-aix4.2.0.0-xlc-O Index: ffcall/configurations/rs6000-ibm-aix4.2.0.0-xlc-O ================================================================== --- ffcall/configurations/rs6000-ibm-aix4.2.0.0-xlc-O +++ /dev/null @@ -1,83 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned=yes} -ac_cv_func_mmap=${ac_cv_func_mmap=yes} -ac_cv_func_mprotect=${ac_cv_func_mprotect=yes} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h=yes} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h=yes} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h=yes} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h=yes} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h=yes} -ac_cv_path_LD=${ac_cv_path_LD=/bin/ld} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -B'} -ac_cv_prog_CC=${ac_cv_prog_CC='xlc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='xlc -O -E'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB=ranlib} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross=no} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works=yes} -ac_cv_prog_gcc=${ac_cv_prog_gcc=no} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld=no} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set=yes} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg=no} -cl_cv_c_longlong=${cl_cv_c_longlong=yes} -cl_cv_c_return_void=${cl_cv_c_return_void=no} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small=no} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static=no} -cl_cv_c_void=${cl_cv_c_void=yes} -cl_cv_codeexec=${cl_cv_codeexec='guessing no'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h=yes} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize=yes} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works=no} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works=no} -cl_cv_func_vm=${cl_cv_func_vm=no} -cl_cv_header_stdc=${cl_cv_header_stdc=yes} -cl_cv_host=${cl_cv_host=rs6000-ibm-aix4.2.0.0} -cl_cv_path_install=${cl_cv_path_install=cp} -cl_cv_prog_LN=${cl_cv_prog_LN=ln} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore=no} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc=no} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret=void} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret=void} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret=int} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (size_t);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1=size_t} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2=size_t} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=const} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots=yes} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=const} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots=no} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2=int} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works=no} DELETED ffcall/configurations/sparc-sun-solaris2.4-cc Index: ffcall/configurations/sparc-sun-solaris2.4-cc ================================================================== --- ffcall/configurations/sparc-sun-solaris2.4-cc +++ /dev/null @@ -1,83 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_path_LD=${ac_cv_path_LD='/usr/ccs/bin/ld'} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -p'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='true'} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross='no'} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works='yes'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg='no'} -cl_cv_c_longlong=${cl_cv_c_longlong='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='yes'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='no'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='sparc-sun-solaris2.4'} -cl_cv_host_sparc64=${cl_cv_host_sparc64='no'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (const char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1='const'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern caddr_t mmap (caddr_t, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='caddr_t'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='caddr_t'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (caddr_t, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2='const'} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (char*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='char*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='size_t'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} DELETED ffcall/configurations/sparc-sun-solaris2.4-cc-O Index: ffcall/configurations/sparc-sun-solaris2.4-cc-O ================================================================== --- ffcall/configurations/sparc-sun-solaris2.4-cc-O +++ /dev/null @@ -1,83 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_path_LD=${ac_cv_path_LD='/usr/ccs/bin/ld'} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -p'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -O -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='true'} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross='no'} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works='yes'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg='no'} -cl_cv_c_longlong=${cl_cv_c_longlong='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='no'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='sparc-sun-solaris2.4'} -cl_cv_host_sparc64=${cl_cv_host_sparc64='no'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc='no'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (const char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1='const'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern caddr_t mmap (caddr_t, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='caddr_t'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='caddr_t'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (caddr_t, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2='const'} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (char*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='char*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='size_t'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} DELETED ffcall/configurations/sparc-sun-solaris2.4-gcc Index: ffcall/configurations/sparc-sun-solaris2.4-gcc ================================================================== --- ffcall/configurations/sparc-sun-solaris2.4-gcc +++ /dev/null @@ -1,84 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_path_LD=${ac_cv_path_LD='/usr/ccs/bin/ld'} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -p'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -O -E -w'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='true'} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross='no'} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works='yes'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='yes'} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional='no'} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg='no'} -cl_cv_c_longlong=${cl_cv_c_longlong='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='yes'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='no'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='sparc-sun-solaris2.4'} -cl_cv_host_sparc64=${cl_cv_host_sparc64='no'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_LN=${cl_cv_prog_LN='ln'} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc='yes'} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern caddr_t mmap (caddr_t, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='caddr_t'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='caddr_t'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (caddr_t, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2='const'} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (char*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='char*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='size_t'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} DELETED ffcall/configurations/sparc-sun-solaris2.4-gcc-fpcc-struct-return Index: ffcall/configurations/sparc-sun-solaris2.4-gcc-fpcc-struct-return ================================================================== --- ffcall/configurations/sparc-sun-solaris2.4-gcc-fpcc-struct-return +++ /dev/null @@ -1,84 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_path_LD=${ac_cv_path_LD='/usr/ccs/bin/ld'} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -p'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -fpcc-struct-return -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -fpcc-struct-return -O -E -w'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='true'} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross='no'} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works='yes'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='yes'} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional='no'} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg='no'} -cl_cv_c_longlong=${cl_cv_c_longlong='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='yes'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='no'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='sparc-sun-solaris2.4'} -cl_cv_host_sparc64=${cl_cv_host_sparc64='no'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_LN=${cl_cv_prog_LN='ln'} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc='yes'} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern caddr_t mmap (caddr_t, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='caddr_t'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='caddr_t'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (caddr_t, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2='const'} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (char*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='char*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='size_t'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} DELETED ffcall/configurations/sparc-sun-solaris2.4-gcc-freg-struct-return Index: ffcall/configurations/sparc-sun-solaris2.4-gcc-freg-struct-return ================================================================== --- ffcall/configurations/sparc-sun-solaris2.4-gcc-freg-struct-return +++ /dev/null @@ -1,84 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_path_LD=${ac_cv_path_LD='/usr/ccs/bin/ld'} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -p'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -freg-struct-return -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -freg-struct-return -O -E -w'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='true'} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross='no'} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works='yes'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='yes'} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional='no'} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg='no'} -cl_cv_c_longlong=${cl_cv_c_longlong='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='yes'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='yes'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='no'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='sparc-sun-solaris2.4'} -cl_cv_host_sparc64=${cl_cv_host_sparc64='no'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_LN=${cl_cv_prog_LN='ln'} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc='yes'} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern caddr_t mmap (caddr_t, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='caddr_t'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='caddr_t'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (caddr_t, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2='const'} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (char*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='char*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='size_t'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} DELETED ffcall/configurations/sparc-sun-solaris2.7-cc-O Index: ffcall/configurations/sparc-sun-solaris2.7-cc-O ================================================================== --- ffcall/configurations/sparc-sun-solaris2.7-cc-O +++ /dev/null @@ -1,85 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_path_LD=${ac_cv_path_LD='/usr/ccs/bin/ld'} -ac_cv_path_NM=${ac_cv_path_NM='/usr/ccs/bin/nm -p'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -O -E'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross='no'} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works='yes'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg='no'} -cl_cv_c_longlong=${cl_cv_c_longlong='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_devzero=${cl_cv_func_mmap_devzero='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='sparc-sun-solaris2.7'} -cl_cv_host_sparc64=${cl_cv_host_sparc64='no'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_LN=${cl_cv_prog_LN='ln'} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc='no'} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern caddr_t mmap (caddr_t, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='caddr_t'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='caddr_t'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (caddr_t, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2='const'} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (char*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='char*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, size_t, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='size_t'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='no'} DELETED ffcall/configurations/sparc-sun-sunos4.1.1-cc Index: ffcall/configurations/sparc-sun-sunos4.1.1-cc ================================================================== --- ffcall/configurations/sparc-sun-sunos4.1.1-cc +++ /dev/null @@ -1,68 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -: ${ac_cv_c_char_unsigned='no'} -: ${ac_cv_c_cross='no'} -: ${ac_cv_func_mmap='yes'} -: ${ac_cv_func_mprotect='yes'} -: ${ac_cv_header_stdlib_h='yes'} -: ${ac_cv_header_sys_file_h='yes'} -: ${ac_cv_header_sys_ipc_h='yes'} -: ${ac_cv_header_sys_mman_h='yes'} -: ${ac_cv_header_sys_shm_h='yes'} -: ${ac_cv_header_unistd_h='yes'} -: ${ac_cv_prog_CC='cc -O'} -: ${ac_cv_prog_CPP='cc -O -E'} -: ${ac_cv_prog_RANLIB='ranlib'} -: ${ac_cv_prog_gcc='no'} -: ${ac_cv_prog_make_make_set='yes'} -: ${cl_cv_c_return_void='no'} -: ${cl_cv_c_struct_return_small='no'} -: ${cl_cv_c_struct_return_static='yes'} -: ${cl_cv_c_void='yes'} -: ${cl_cv_codeexec='yes'} -: ${cl_cv_decl_O_RDWR_fcntl_h='yes'} -: ${cl_cv_func_getpagesize='yes'} -: ${cl_cv_func_mmap_devzero_sun4_29='yes'} -: ${cl_cv_func_mmap_works='yes'} -: ${cl_cv_func_mprotect_works='yes'} -: ${cl_cv_func_vm='no'} -: ${cl_cv_host='sparc-sun-sunos4.1.1'} -: ${cl_cv_path_install='/usr1/haible/bin/install -c'} -: ${cl_cv_prog_as_underscore='yes'} -: ${cl_cv_proto_abort='extern int abort (void);'} -: ${cl_cv_proto_abort_ret='int'} -: ${cl_cv_proto_abort_vol=''} -: ${cl_cv_proto_free='extern int free (char*);'} -: ${cl_cv_proto_free_ret='int'} -: ${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -: ${cl_cv_proto_getpagesize_ret='int'} -: ${cl_cv_proto_malloc='extern char* malloc (unsigned int);'} -: ${cl_cv_proto_malloc_arg1='unsigned int'} -: ${cl_cv_proto_malloc_ret='char*'} -: ${cl_cv_proto_mmap='extern caddr_t mmap (void*, int, int, int, int, off_t);'} -: ${cl_cv_proto_mmap_arg1='void*'} -: ${cl_cv_proto_mmap_arg2='int'} -: ${cl_cv_proto_mmap_ret='caddr_t'} -: ${cl_cv_proto_mprotect='extern int mprotect (void*, int, int);'} -: ${cl_cv_proto_mprotect_arg1=''} -: ${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -: ${cl_cv_proto_shmat_arg2=''} -: ${cl_cv_proto_shmat_ret='void*'} -: ${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -: ${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -: ${cl_cv_proto_shmctl_dots='no'} -: ${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -: ${cl_cv_proto_shmget_arg2='int'} -: ${cl_cv_sys_shm_works='no'} DELETED ffcall/configurations/sparc-sun-sunos4.1.1-gcc Index: ffcall/configurations/sparc-sun-sunos4.1.1-gcc ================================================================== --- ffcall/configurations/sparc-sun-sunos4.1.1-gcc +++ /dev/null @@ -1,69 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -: ${ac_cv_c_char_unsigned='no'} -: ${ac_cv_c_cross='no'} -: ${ac_cv_func_mmap='yes'} -: ${ac_cv_func_mprotect='yes'} -: ${ac_cv_header_stdlib_h='yes'} -: ${ac_cv_header_sys_file_h='yes'} -: ${ac_cv_header_sys_ipc_h='yes'} -: ${ac_cv_header_sys_mman_h='yes'} -: ${ac_cv_header_sys_shm_h='yes'} -: ${ac_cv_header_unistd_h='yes'} -: ${ac_cv_prog_CC='gcc -fpcc-struct-return -O'} -: ${ac_cv_prog_CPP='gcc -fpcc-struct-return -O -E -w'} -: ${ac_cv_prog_RANLIB='ranlib'} -: ${ac_cv_prog_gcc='yes'} -: ${ac_cv_prog_gcc_traditional='no'} -: ${ac_cv_prog_make_make_set='yes'} -: ${cl_cv_c_return_void='yes'} -: ${cl_cv_c_struct_return_small='no'} -: ${cl_cv_c_struct_return_static='no'} -: ${cl_cv_c_void='yes'} -: ${cl_cv_codeexec='yes'} -: ${cl_cv_decl_O_RDWR_fcntl_h='yes'} -: ${cl_cv_func_getpagesize='yes'} -: ${cl_cv_func_mmap_devzero_sun4_29='yes'} -: ${cl_cv_func_mmap_works='yes'} -: ${cl_cv_func_mprotect_works='yes'} -: ${cl_cv_func_vm='no'} -: ${cl_cv_host='sparc-sun-sunos4.1.1'} -: ${cl_cv_path_install='/usr1/haible/bin/install -c'} -: ${cl_cv_prog_as_underscore='yes'} -: ${cl_cv_proto_abort='extern void abort (void);'} -: ${cl_cv_proto_abort_ret='void'} -: ${cl_cv_proto_abort_vol=''} -: ${cl_cv_proto_free='extern void free (void*);'} -: ${cl_cv_proto_free_ret='void'} -: ${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -: ${cl_cv_proto_getpagesize_ret='int'} -: ${cl_cv_proto_malloc='extern void* malloc (size_t);'} -: ${cl_cv_proto_malloc_arg1='size_t'} -: ${cl_cv_proto_malloc_ret='void*'} -: ${cl_cv_proto_mmap='extern void* mmap (void*, int, int, int, int, off_t);'} -: ${cl_cv_proto_mmap_arg1='void*'} -: ${cl_cv_proto_mmap_arg2='int'} -: ${cl_cv_proto_mmap_ret='void*'} -: ${cl_cv_proto_mprotect='extern int mprotect (void*, int, int);'} -: ${cl_cv_proto_mprotect_arg1=''} -: ${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -: ${cl_cv_proto_shmat_arg2=''} -: ${cl_cv_proto_shmat_ret='void*'} -: ${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -: ${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -: ${cl_cv_proto_shmctl_dots='no'} -: ${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -: ${cl_cv_proto_shmget_arg2='int'} -: ${cl_cv_sys_shm_works='no'} DELETED ffcall/configurations/sparc-sun-sunos4.1.3_U1-cc-O Index: ffcall/configurations/sparc-sun-sunos4.1.3_U1-cc-O ================================================================== --- ffcall/configurations/sparc-sun-sunos4.1.3_U1-cc-O +++ /dev/null @@ -1,86 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_stdc=${ac_cv_header_stdc='no'} -ac_cv_header_stdlib_h=${ac_cv_header_stdlib_h='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_sys_sysmacros_h=${ac_cv_header_sys_sysmacros_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_path_install=${ac_cv_path_install='/bin/install -c'} -ac_cv_prog_CC=${ac_cv_prog_CC='cc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='cc -O -E'} -ac_cv_prog_LN_S=${ac_cv_prog_LN_S='ln -s'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross='no'} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works='yes'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -ac_cv_type_off_t=${ac_cv_type_off_t='yes'} -ac_cv_type_size_t=${ac_cv_type_size_t='yes'} -cl_cv_c_longlong=${cl_cv_c_longlong='no'} -cl_cv_c_return_void=${cl_cv_c_return_void='no'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='yes'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_devzero_sun4_29=${cl_cv_func_mmap_devzero_sun4_29='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='no'} -cl_cv_host=${cl_cv_host='sparc-sun-sunos4.1.3_U1'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='yes'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern int abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='int'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern int free (char*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='int'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern char* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='char*'} -cl_cv_proto_mkdir=${cl_cv_proto_mkdir='extern int mkdir (char*, mode_t);'} -cl_cv_proto_mkdir_arg1=${cl_cv_proto_mkdir_arg1=''} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern caddr_t mmap (void*, int, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='int'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='caddr_t'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, int, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (char*, int, mode_t);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1=''} -cl_cv_proto_open_args=${cl_cv_proto_open_args=' char*, int, mode_t'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='no'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (void*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='void*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='yes'} -cl_cv_type_mode_t=${cl_cv_type_mode_t='mode_t'} DELETED ffcall/configurations/sparc-sun-sunos4.1.3_U1-gcc Index: ffcall/configurations/sparc-sun-sunos4.1.3_U1-gcc ================================================================== --- ffcall/configurations/sparc-sun-sunos4.1.3_U1-gcc +++ /dev/null @@ -1,88 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_sys_sysmacros_h=${ac_cv_header_sys_sysmacros_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_path_LD=${ac_cv_path_LD='/bin/ld'} -ac_cv_path_NM=${ac_cv_path_NM='/bin/nm -p'} -ac_cv_path_install=${ac_cv_path_install='/bin/install -c'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -O -E -w'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross='no'} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works='yes'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='yes'} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional='no'} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld='no'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg='no'} -cl_cv_c_longlong=${cl_cv_c_longlong='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='yes'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_devzero_sun4_29=${cl_cv_func_mmap_devzero_sun4_29='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='sparc-sun-sunos4.1.3_U1'} -cl_cv_host_sparc64=${cl_cv_host_sparc64='no'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_LN=${cl_cv_prog_LN='ln'} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='yes'} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc='yes'} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern void* mmap (void*, int, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='void*'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='int'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='void*'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (void*, int, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2=''} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (void*);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='void*'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='yes'} DELETED ffcall/configurations/sparc-unknown-linuxlibc6-gcc Index: ffcall/configurations/sparc-unknown-linuxlibc6-gcc ================================================================== --- ffcall/configurations/sparc-unknown-linuxlibc6-gcc +++ /dev/null @@ -1,88 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -ac_cv_c_char_unsigned=${ac_cv_c_char_unsigned='no'} -ac_cv_func_mmap=${ac_cv_func_mmap='yes'} -ac_cv_func_mprotect=${ac_cv_func_mprotect='yes'} -ac_cv_header_sys_file_h=${ac_cv_header_sys_file_h='yes'} -ac_cv_header_sys_ipc_h=${ac_cv_header_sys_ipc_h='yes'} -ac_cv_header_sys_mman_h=${ac_cv_header_sys_mman_h='yes'} -ac_cv_header_sys_shm_h=${ac_cv_header_sys_shm_h='yes'} -ac_cv_header_sys_sysmacros_h=${ac_cv_header_sys_sysmacros_h='yes'} -ac_cv_header_unistd_h=${ac_cv_header_unistd_h='yes'} -ac_cv_path_LD=${ac_cv_path_LD='/usr/bin/ld'} -ac_cv_path_NM=${ac_cv_path_NM='/usr/bin/nm -B'} -ac_cv_path_install=${ac_cv_path_install='/usr/bin/install -c'} -ac_cv_prog_CC=${ac_cv_prog_CC='gcc -O'} -ac_cv_prog_CPP=${ac_cv_prog_CPP='gcc -O -E -w'} -ac_cv_prog_RANLIB=${ac_cv_prog_RANLIB='ranlib'} -ac_cv_prog_cc_cross=${ac_cv_prog_cc_cross='no'} -ac_cv_prog_cc_works=${ac_cv_prog_cc_works='yes'} -ac_cv_prog_gcc=${ac_cv_prog_gcc='yes'} -ac_cv_prog_gcc_traditional=${ac_cv_prog_gcc_traditional='no'} -ac_cv_prog_gnu_ld=${ac_cv_prog_gnu_ld='yes'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -cl_cv_c_float_return_ireg=${cl_cv_c_float_return_ireg='no'} -cl_cv_c_longlong=${cl_cv_c_longlong='yes'} -cl_cv_c_return_void=${cl_cv_c_return_void='yes'} -cl_cv_c_struct_return_small=${cl_cv_c_struct_return_small='no'} -cl_cv_c_struct_return_static=${cl_cv_c_struct_return_static='no'} -cl_cv_c_void=${cl_cv_c_void='yes'} -cl_cv_codeexec=${cl_cv_codeexec='yes'} -cl_cv_decl_O_RDWR_fcntl_h=${cl_cv_decl_O_RDWR_fcntl_h='yes'} -cl_cv_func_getpagesize=${cl_cv_func_getpagesize='yes'} -cl_cv_func_mmap_devzero_sun4_29=${cl_cv_func_mmap_devzero_sun4_29='yes'} -cl_cv_func_mmap_works=${cl_cv_func_mmap_works='yes'} -cl_cv_func_mprotect_works=${cl_cv_func_mprotect_works='yes'} -cl_cv_func_vm=${cl_cv_func_vm='no'} -cl_cv_header_stdc=${cl_cv_header_stdc='yes'} -cl_cv_host=${cl_cv_host='sparc-unknown-linuxlibc6'} -cl_cv_host_sparc64=${cl_cv_host_sparc64='no'} -cl_cv_path_install=${cl_cv_path_install='cp'} -cl_cv_prog_LN=${cl_cv_prog_LN='ln'} -cl_cv_prog_LN_S=${cl_cv_prog_LN_S='ln -s'} -cl_cv_prog_as_underscore=${cl_cv_prog_as_underscore='no'} -cl_cv_prog_cc_gcc=${cl_cv_prog_cc_gcc='yes'} -cl_cv_prog_cp=${cl_cv_prog_cp='cp -p'} -cl_cv_proto_abort=${cl_cv_proto_abort='extern void abort (void);'} -cl_cv_proto_abort_ret=${cl_cv_proto_abort_ret='void'} -cl_cv_proto_abort_vol=${cl_cv_proto_abort_vol=''} -cl_cv_proto_free=${cl_cv_proto_free='extern void free (void*);'} -cl_cv_proto_free_ret=${cl_cv_proto_free_ret='void'} -cl_cv_proto_getpagesize=${cl_cv_proto_getpagesize='extern int getpagesize (void);'} -cl_cv_proto_getpagesize_ret=${cl_cv_proto_getpagesize_ret='int'} -cl_cv_proto_malloc=${cl_cv_proto_malloc='extern void* malloc (unsigned int);'} -cl_cv_proto_malloc_arg1=${cl_cv_proto_malloc_arg1='unsigned int'} -cl_cv_proto_malloc_ret=${cl_cv_proto_malloc_ret='void*'} -cl_cv_proto_mmap=${cl_cv_proto_mmap='extern caddr_t mmap (caddr_t, size_t, int, int, int, off_t);'} -cl_cv_proto_mmap_arg1=${cl_cv_proto_mmap_arg1='caddr_t'} -cl_cv_proto_mmap_arg2=${cl_cv_proto_mmap_arg2='size_t'} -cl_cv_proto_mmap_ret=${cl_cv_proto_mmap_ret='caddr_t'} -cl_cv_proto_mprotect=${cl_cv_proto_mprotect='extern int mprotect (caddr_t, size_t, int);'} -cl_cv_proto_mprotect_arg1=${cl_cv_proto_mprotect_arg1=''} -cl_cv_proto_open=${cl_cv_proto_open='extern int open (const char*, int, ...);'} -cl_cv_proto_open_arg1=${cl_cv_proto_open_arg1='const'} -cl_cv_proto_open_args=${cl_cv_proto_open_args='const char*, int, ...'} -cl_cv_proto_open_dots=${cl_cv_proto_open_dots='yes'} -cl_cv_proto_shmat=${cl_cv_proto_shmat='extern void* shmat (int, const void*, int);'} -cl_cv_proto_shmat_arg2=${cl_cv_proto_shmat_arg2='const'} -cl_cv_proto_shmat_ret=${cl_cv_proto_shmat_ret='void*'} -cl_cv_proto_shmctl=${cl_cv_proto_shmctl='extern int shmctl (int, int, struct shmid_ds *);'} -cl_cv_proto_shmctl_args=${cl_cv_proto_shmctl_args='int, int, struct shmid_ds *'} -cl_cv_proto_shmctl_dots=${cl_cv_proto_shmctl_dots='no'} -cl_cv_proto_shmdt=${cl_cv_proto_shmdt='extern int shmdt (const void *);'} -cl_cv_proto_shmdt_arg1=${cl_cv_proto_shmdt_arg1='const void *'} -cl_cv_proto_shmget=${cl_cv_proto_shmget='extern int shmget (key_t, int, int);'} -cl_cv_proto_shmget_arg2=${cl_cv_proto_shmget_arg2='int'} -cl_cv_sys_shm_works=${cl_cv_sys_shm_works='yes'} DELETED ffcall/configure Index: ffcall/configure ================================================================== --- ffcall/configure +++ /dev/null @@ -1,2349 +0,0 @@ -#! /bin/sh -# Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.59. -# -# Copyright (C) 2003 Free Software Foundation, Inc. -# This configure script is free software; the Free Software Foundation -# gives unlimited permission to copy, distribute and modify it. -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## - -# Be Bourne compatible -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' -elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then - set -o posix -fi -DUALCASE=1; export DUALCASE # for MKS sh - -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - - -# Work around bugs in pre-3.0 UWIN ksh. -$as_unset ENV MAIL MAILPATH -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -for as_var in \ - LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ - LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ - LC_TELEPHONE LC_TIME -do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var - else - $as_unset $as_var - fi -done - -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - - -# Name of the executable. -as_me=`$as_basename "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)$' \| \ - . : '\(.\)' 2>/dev/null || -echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } - /^X\/\(\/\/\)$/{ s//\1/; q; } - /^X\/\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - - -# PATH needs CR, and LINENO needs CR and PATH. -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" || { - # Find who we are. Look in the path if we contain no path at all - # relative or not. - case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done - - ;; - esac - # We did not find ourselves, most probably we were run as `sh COMMAND' - # in which case we are not to be found in the path. - if test "x$as_myself" = x; then - as_myself=$0 - fi - if test ! -f "$as_myself"; then - { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2 - { (exit 1); exit 1; }; } - fi - case $CONFIG_SHELL in - '') - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for as_base in sh bash ksh sh5; do - case $as_dir in - /*) - if ("$as_dir/$as_base" -c ' - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then - $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } - $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } - CONFIG_SHELL=$as_dir/$as_base - export CONFIG_SHELL - exec "$CONFIG_SHELL" "$0" ${1+"$@"} - fi;; - esac - done -done -;; - esac - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line before each line; the second 'sed' does the real - # work. The second script uses 'N' to pair each line-number line - # with the numbered line, and appends trailing '-' during - # substitution so that $LINENO is not a special case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) - sed '=' <$as_myself | - sed ' - N - s,$,-, - : loop - s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, - t loop - s,-$,, - s,^['$as_cr_digits']*\n,, - ' >$as_me.lineno && - chmod +x $as_me.lineno || - { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensible to this). - . ./$as_me.lineno - # Exit status is that of the last command. - exit -} - - -case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in - *c*,-n*) ECHO_N= ECHO_C=' -' ECHO_T=' ' ;; - *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; - *) ECHO_N= ECHO_C='\c' ECHO_T= ;; -esac - -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -rm -f conf$$ conf$$.exe conf$$.file -echo >conf$$.file -if ln -s conf$$.file conf$$ 2>/dev/null; then - # We could just check for DJGPP; but this test a) works b) is more generic - # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). - if test -f conf$$.exe; then - # Don't use ln at all; we don't have any links - as_ln_s='cp -p' - else - as_ln_s='ln -s' - fi -elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.file - -if mkdir -p . 2>/dev/null; then - as_mkdir_p=: -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -as_executable_p="test -f" - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -# IFS -# We need space, tab and new line, in precisely that order. -as_nl=' -' -IFS=" $as_nl" - -# CDPATH. -$as_unset CDPATH - - -# Name of the host. -# hostname on some systems (SVR3.2, Linux) returns a bogus exit status, -# so uname gets run too. -ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` - -exec 6>&1 - -# -# Initializations. -# -ac_default_prefix=/usr/local -ac_config_libobj_dir=. -cross_compiling=no -subdirs= -MFLAGS= -MAKEFLAGS= -SHELL=${CONFIG_SHELL-/bin/sh} - -# Maximum number of lines to put in a shell here document. -# This variable seems obsolete. It should probably be removed, and -# only ac_max_sed_lines should be used. -: ${ac_max_here_lines=38} - -# Identity of this package. -PACKAGE_NAME= -PACKAGE_TARNAME= -PACKAGE_VERSION= -PACKAGE_STRING= -PACKAGE_BUGREPORT= - -ac_unique_file="trampoline/trampoline.h.in" -ac_subdirs_all="$ac_subdirs_all avcall vacall trampoline callback" -ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS SET_MAKE subdirs LIBOBJS LTLIBOBJS' -ac_subst_files='' - -# Initialize some variables set by options. -ac_init_help= -ac_init_version=false -# The variables have the same names as the options, with -# dashes changed to underlines. -cache_file=/dev/null -exec_prefix=NONE -no_create= -no_recursion= -prefix=NONE -program_prefix=NONE -program_suffix=NONE -program_transform_name=s,x,x, -silent= -site= -srcdir= -verbose= -x_includes=NONE -x_libraries=NONE - -# Installation directory options. -# These are left unexpanded so users can "make install exec_prefix=/foo" -# and all the variables that are supposed to be based on exec_prefix -# by default will actually change. -# Use braces instead of parens because sh, perl, etc. also accept them. -bindir='${exec_prefix}/bin' -sbindir='${exec_prefix}/sbin' -libexecdir='${exec_prefix}/libexec' -datadir='${prefix}/share' -sysconfdir='${prefix}/etc' -sharedstatedir='${prefix}/com' -localstatedir='${prefix}/var' -libdir='${exec_prefix}/lib' -includedir='${prefix}/include' -oldincludedir='/usr/include' -infodir='${prefix}/info' -mandir='${prefix}/man' - -ac_prev= -for ac_option -do - # If the previous option needs an argument, assign it. - if test -n "$ac_prev"; then - eval "$ac_prev=\$ac_option" - ac_prev= - continue - fi - - ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'` - - # Accept the important Cygnus configure options, so we can diagnose typos. - - case $ac_option in - - -bindir | --bindir | --bindi | --bind | --bin | --bi) - ac_prev=bindir ;; - -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) - bindir=$ac_optarg ;; - - -build | --build | --buil | --bui | --bu) - ac_prev=build_alias ;; - -build=* | --build=* | --buil=* | --bui=* | --bu=*) - build_alias=$ac_optarg ;; - - -cache-file | --cache-file | --cache-fil | --cache-fi \ - | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) - ac_prev=cache_file ;; - -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ - | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) - cache_file=$ac_optarg ;; - - --config-cache | -C) - cache_file=config.cache ;; - - -datadir | --datadir | --datadi | --datad | --data | --dat | --da) - ac_prev=datadir ;; - -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \ - | --da=*) - datadir=$ac_optarg ;; - - -disable-* | --disable-*) - ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid feature name: $ac_feature" >&2 - { (exit 1); exit 1; }; } - ac_feature=`echo $ac_feature | sed 's/-/_/g'` - eval "enable_$ac_feature=no" ;; - - -enable-* | --enable-*) - ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid feature name: $ac_feature" >&2 - { (exit 1); exit 1; }; } - ac_feature=`echo $ac_feature | sed 's/-/_/g'` - case $ac_option in - *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; - *) ac_optarg=yes ;; - esac - eval "enable_$ac_feature='$ac_optarg'" ;; - - -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ - | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ - | --exec | --exe | --ex) - ac_prev=exec_prefix ;; - -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ - | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ - | --exec=* | --exe=* | --ex=*) - exec_prefix=$ac_optarg ;; - - -gas | --gas | --ga | --g) - # Obsolete; use --with-gas. - with_gas=yes ;; - - -help | --help | --hel | --he | -h) - ac_init_help=long ;; - -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) - ac_init_help=recursive ;; - -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) - ac_init_help=short ;; - - -host | --host | --hos | --ho) - ac_prev=host_alias ;; - -host=* | --host=* | --hos=* | --ho=*) - host_alias=$ac_optarg ;; - - -includedir | --includedir | --includedi | --included | --include \ - | --includ | --inclu | --incl | --inc) - ac_prev=includedir ;; - -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ - | --includ=* | --inclu=* | --incl=* | --inc=*) - includedir=$ac_optarg ;; - - -infodir | --infodir | --infodi | --infod | --info | --inf) - ac_prev=infodir ;; - -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) - infodir=$ac_optarg ;; - - -libdir | --libdir | --libdi | --libd) - ac_prev=libdir ;; - -libdir=* | --libdir=* | --libdi=* | --libd=*) - libdir=$ac_optarg ;; - - -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ - | --libexe | --libex | --libe) - ac_prev=libexecdir ;; - -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ - | --libexe=* | --libex=* | --libe=*) - libexecdir=$ac_optarg ;; - - -localstatedir | --localstatedir | --localstatedi | --localstated \ - | --localstate | --localstat | --localsta | --localst \ - | --locals | --local | --loca | --loc | --lo) - ac_prev=localstatedir ;; - -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ - | --localstate=* | --localstat=* | --localsta=* | --localst=* \ - | --locals=* | --local=* | --loca=* | --loc=* | --lo=*) - localstatedir=$ac_optarg ;; - - -mandir | --mandir | --mandi | --mand | --man | --ma | --m) - ac_prev=mandir ;; - -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) - mandir=$ac_optarg ;; - - -nfp | --nfp | --nf) - # Obsolete; use --without-fp. - with_fp=no ;; - - -no-create | --no-create | --no-creat | --no-crea | --no-cre \ - | --no-cr | --no-c | -n) - no_create=yes ;; - - -no-recursion | --no-recursion | --no-recursio | --no-recursi \ - | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) - no_recursion=yes ;; - - -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ - | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ - | --oldin | --oldi | --old | --ol | --o) - ac_prev=oldincludedir ;; - -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ - | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ - | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) - oldincludedir=$ac_optarg ;; - - -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) - ac_prev=prefix ;; - -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) - prefix=$ac_optarg ;; - - -program-prefix | --program-prefix | --program-prefi | --program-pref \ - | --program-pre | --program-pr | --program-p) - ac_prev=program_prefix ;; - -program-prefix=* | --program-prefix=* | --program-prefi=* \ - | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) - program_prefix=$ac_optarg ;; - - -program-suffix | --program-suffix | --program-suffi | --program-suff \ - | --program-suf | --program-su | --program-s) - ac_prev=program_suffix ;; - -program-suffix=* | --program-suffix=* | --program-suffi=* \ - | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) - program_suffix=$ac_optarg ;; - - -program-transform-name | --program-transform-name \ - | --program-transform-nam | --program-transform-na \ - | --program-transform-n | --program-transform- \ - | --program-transform | --program-transfor \ - | --program-transfo | --program-transf \ - | --program-trans | --program-tran \ - | --progr-tra | --program-tr | --program-t) - ac_prev=program_transform_name ;; - -program-transform-name=* | --program-transform-name=* \ - | --program-transform-nam=* | --program-transform-na=* \ - | --program-transform-n=* | --program-transform-=* \ - | --program-transform=* | --program-transfor=* \ - | --program-transfo=* | --program-transf=* \ - | --program-trans=* | --program-tran=* \ - | --progr-tra=* | --program-tr=* | --program-t=*) - program_transform_name=$ac_optarg ;; - - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - silent=yes ;; - - -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) - ac_prev=sbindir ;; - -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ - | --sbi=* | --sb=*) - sbindir=$ac_optarg ;; - - -sharedstatedir | --sharedstatedir | --sharedstatedi \ - | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ - | --sharedst | --shareds | --shared | --share | --shar \ - | --sha | --sh) - ac_prev=sharedstatedir ;; - -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ - | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ - | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ - | --sha=* | --sh=*) - sharedstatedir=$ac_optarg ;; - - -site | --site | --sit) - ac_prev=site ;; - -site=* | --site=* | --sit=*) - site=$ac_optarg ;; - - -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) - ac_prev=srcdir ;; - -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) - srcdir=$ac_optarg ;; - - -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ - | --syscon | --sysco | --sysc | --sys | --sy) - ac_prev=sysconfdir ;; - -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ - | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) - sysconfdir=$ac_optarg ;; - - -target | --target | --targe | --targ | --tar | --ta | --t) - ac_prev=target_alias ;; - -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) - target_alias=$ac_optarg ;; - - -v | -verbose | --verbose | --verbos | --verbo | --verb) - verbose=yes ;; - - -version | --version | --versio | --versi | --vers | -V) - ac_init_version=: ;; - - -with-* | --with-*) - ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid package name: $ac_package" >&2 - { (exit 1); exit 1; }; } - ac_package=`echo $ac_package| sed 's/-/_/g'` - case $ac_option in - *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; - *) ac_optarg=yes ;; - esac - eval "with_$ac_package='$ac_optarg'" ;; - - -without-* | --without-*) - ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid package name: $ac_package" >&2 - { (exit 1); exit 1; }; } - ac_package=`echo $ac_package | sed 's/-/_/g'` - eval "with_$ac_package=no" ;; - - --x) - # Obsolete; use --with-x. - with_x=yes ;; - - -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ - | --x-incl | --x-inc | --x-in | --x-i) - ac_prev=x_includes ;; - -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ - | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) - x_includes=$ac_optarg ;; - - -x-libraries | --x-libraries | --x-librarie | --x-librari \ - | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) - ac_prev=x_libraries ;; - -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ - | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) - x_libraries=$ac_optarg ;; - - -*) { echo "$as_me: error: unrecognized option: $ac_option -Try \`$0 --help' for more information." >&2 - { (exit 1); exit 1; }; } - ;; - - *=*) - ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` - # Reject names that are not valid shell variable names. - expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid variable name: $ac_envvar" >&2 - { (exit 1); exit 1; }; } - ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` - eval "$ac_envvar='$ac_optarg'" - export $ac_envvar ;; - - *) - # FIXME: should be removed in autoconf 3.0. - echo "$as_me: WARNING: you should use --build, --host, --target" >&2 - expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && - echo "$as_me: WARNING: invalid host type: $ac_option" >&2 - : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option} - ;; - - esac -done - -if test -n "$ac_prev"; then - ac_option=--`echo $ac_prev | sed 's/_/-/g'` - { echo "$as_me: error: missing argument to $ac_option" >&2 - { (exit 1); exit 1; }; } -fi - -# Be sure to have absolute paths. -for ac_var in exec_prefix prefix -do - eval ac_val=$`echo $ac_var` - case $ac_val in - [\\/$]* | ?:[\\/]* | NONE | '' ) ;; - *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 - { (exit 1); exit 1; }; };; - esac -done - -# Be sure to have absolute paths. -for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \ - localstatedir libdir includedir oldincludedir infodir mandir -do - eval ac_val=$`echo $ac_var` - case $ac_val in - [\\/$]* | ?:[\\/]* ) ;; - *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 - { (exit 1); exit 1; }; };; - esac -done - -# There might be people who depend on the old broken behavior: `$host' -# used to hold the argument of --host etc. -# FIXME: To remove some day. -build=$build_alias -host=$host_alias -target=$target_alias - -# FIXME: To remove some day. -if test "x$host_alias" != x; then - if test "x$build_alias" = x; then - cross_compiling=maybe - echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host. - If a cross compiler is detected then cross compile mode will be used." >&2 - elif test "x$build_alias" != "x$host_alias"; then - cross_compiling=yes - fi -fi - -ac_tool_prefix= -test -n "$host_alias" && ac_tool_prefix=$host_alias- - -test "$silent" = yes && exec 6>/dev/null - - -# Find the source files, if location was not specified. -if test -z "$srcdir"; then - ac_srcdir_defaulted=yes - # Try the directory containing this script, then its parent. - ac_confdir=`(dirname "$0") 2>/dev/null || -$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$0" : 'X\(//\)[^/]' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$0" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - srcdir=$ac_confdir - if test ! -r $srcdir/$ac_unique_file; then - srcdir=.. - fi -else - ac_srcdir_defaulted=no -fi -if test ! -r $srcdir/$ac_unique_file; then - if test "$ac_srcdir_defaulted" = yes; then - { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2 - { (exit 1); exit 1; }; } - else - { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 - { (exit 1); exit 1; }; } - fi -fi -(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null || - { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2 - { (exit 1); exit 1; }; } -srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'` -ac_env_build_alias_set=${build_alias+set} -ac_env_build_alias_value=$build_alias -ac_cv_env_build_alias_set=${build_alias+set} -ac_cv_env_build_alias_value=$build_alias -ac_env_host_alias_set=${host_alias+set} -ac_env_host_alias_value=$host_alias -ac_cv_env_host_alias_set=${host_alias+set} -ac_cv_env_host_alias_value=$host_alias -ac_env_target_alias_set=${target_alias+set} -ac_env_target_alias_value=$target_alias -ac_cv_env_target_alias_set=${target_alias+set} -ac_cv_env_target_alias_value=$target_alias - -# -# Report the --help message. -# -if test "$ac_init_help" = "long"; then - # Omit some internal or obsolete options to make the list less imposing. - # This message is too long to be a string in the A/UX 3.1 sh. - cat <<_ACEOF -\`configure' configures this package to adapt to many kinds of systems. - -Usage: $0 [OPTION]... [VAR=VALUE]... - -To assign environment variables (e.g., CC, CFLAGS...), specify them as -VAR=VALUE. See below for descriptions of some of the useful variables. - -Defaults for the options are specified in brackets. - -Configuration: - -h, --help display this help and exit - --help=short display options specific to this package - --help=recursive display the short help of all the included packages - -V, --version display version information and exit - -q, --quiet, --silent do not print \`checking...' messages - --cache-file=FILE cache test results in FILE [disabled] - -C, --config-cache alias for \`--cache-file=config.cache' - -n, --no-create do not create output files - --srcdir=DIR find the sources in DIR [configure dir or \`..'] - -_ACEOF - - cat <<_ACEOF -Installation directories: - --prefix=PREFIX install architecture-independent files in PREFIX - [$ac_default_prefix] - --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX - [PREFIX] - -By default, \`make install' will install all the files in -\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify -an installation prefix other than \`$ac_default_prefix' using \`--prefix', -for instance \`--prefix=\$HOME'. - -For better control, use the options below. - -Fine tuning of the installation directories: - --bindir=DIR user executables [EPREFIX/bin] - --sbindir=DIR system admin executables [EPREFIX/sbin] - --libexecdir=DIR program executables [EPREFIX/libexec] - --datadir=DIR read-only architecture-independent data [PREFIX/share] - --sysconfdir=DIR read-only single-machine data [PREFIX/etc] - --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] - --localstatedir=DIR modifiable single-machine data [PREFIX/var] - --libdir=DIR object code libraries [EPREFIX/lib] - --includedir=DIR C header files [PREFIX/include] - --oldincludedir=DIR C header files for non-gcc [/usr/include] - --infodir=DIR info documentation [PREFIX/info] - --mandir=DIR man documentation [PREFIX/man] -_ACEOF - - cat <<\_ACEOF -_ACEOF -fi - -if test -n "$ac_init_help"; then - - cat <<\_ACEOF - -_ACEOF -fi - -if test "$ac_init_help" = "recursive"; then - # If there are subdirs, report their specific --help. - ac_popdir=`pwd` - for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue - test -d $ac_dir || continue - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac - - cd $ac_dir - # Check for guested configure; otherwise get Cygnus style configure. - if test -f $ac_srcdir/configure.gnu; then - echo - $SHELL $ac_srcdir/configure.gnu --help=recursive - elif test -f $ac_srcdir/configure; then - echo - $SHELL $ac_srcdir/configure --help=recursive - elif test -f $ac_srcdir/configure.ac || - test -f $ac_srcdir/configure.in; then - echo - $ac_configure --help - else - echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 - fi - cd $ac_popdir - done -fi - -test -n "$ac_init_help" && exit 0 -if $ac_init_version; then - cat <<\_ACEOF - -Copyright (C) 2003 Free Software Foundation, Inc. -This configure script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it. -_ACEOF - exit 0 -fi -exec 5>config.log -cat >&5 <<_ACEOF -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. - -It was created by $as_me, which was -generated by GNU Autoconf 2.59. Invocation command line was - - $ $0 $@ - -_ACEOF -{ -cat <<_ASUNAME -## --------- ## -## Platform. ## -## --------- ## - -hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` -uname -m = `(uname -m) 2>/dev/null || echo unknown` -uname -r = `(uname -r) 2>/dev/null || echo unknown` -uname -s = `(uname -s) 2>/dev/null || echo unknown` -uname -v = `(uname -v) 2>/dev/null || echo unknown` - -/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` -/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` - -/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` -/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` -/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` -hostinfo = `(hostinfo) 2>/dev/null || echo unknown` -/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` -/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` -/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` - -_ASUNAME - -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - echo "PATH: $as_dir" -done - -} >&5 - -cat >&5 <<_ACEOF - - -## ----------- ## -## Core tests. ## -## ----------- ## - -_ACEOF - - -# Keep a trace of the command line. -# Strip out --no-create and --no-recursion so they do not pile up. -# Strip out --silent because we don't want to record it for future runs. -# Also quote any args containing shell meta-characters. -# Make two passes to allow for proper duplicate-argument suppression. -ac_configure_args= -ac_configure_args0= -ac_configure_args1= -ac_sep= -ac_must_keep_next=false -for ac_pass in 1 2 -do - for ac_arg - do - case $ac_arg in - -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - continue ;; - *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) - ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - case $ac_pass in - 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;; - 2) - ac_configure_args1="$ac_configure_args1 '$ac_arg'" - if test $ac_must_keep_next = true; then - ac_must_keep_next=false # Got value, back to normal. - else - case $ac_arg in - *=* | --config-cache | -C | -disable-* | --disable-* \ - | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ - | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ - | -with-* | --with-* | -without-* | --without-* | --x) - case "$ac_configure_args0 " in - "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; - esac - ;; - -* ) ac_must_keep_next=true ;; - esac - fi - ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'" - # Get rid of the leading space. - ac_sep=" " - ;; - esac - done -done -$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; } -$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; } - -# When interrupted or exit'd, cleanup temporary files, and complete -# config.log. We remove comments because anyway the quotes in there -# would cause problems or look ugly. -# WARNING: Be sure not to use single quotes in there, as some shells, -# such as our DU 5.0 friend, will then `close' the trap. -trap 'exit_status=$? - # Save into config.log some information that might help in debugging. - { - echo - - cat <<\_ASBOX -## ---------------- ## -## Cache variables. ## -## ---------------- ## -_ASBOX - echo - # The following way of writing the cache mishandles newlines in values, -{ - (set) 2>&1 | - case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in - *ac_space=\ *) - sed -n \ - "s/'"'"'/'"'"'\\\\'"'"''"'"'/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p" - ;; - *) - sed -n \ - "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" - ;; - esac; -} - echo - - cat <<\_ASBOX -## ----------------- ## -## Output variables. ## -## ----------------- ## -_ASBOX - echo - for ac_var in $ac_subst_vars - do - eval ac_val=$`echo $ac_var` - echo "$ac_var='"'"'$ac_val'"'"'" - done | sort - echo - - if test -n "$ac_subst_files"; then - cat <<\_ASBOX -## ------------- ## -## Output files. ## -## ------------- ## -_ASBOX - echo - for ac_var in $ac_subst_files - do - eval ac_val=$`echo $ac_var` - echo "$ac_var='"'"'$ac_val'"'"'" - done | sort - echo - fi - - if test -s confdefs.h; then - cat <<\_ASBOX -## ----------- ## -## confdefs.h. ## -## ----------- ## -_ASBOX - echo - sed "/^$/d" confdefs.h | sort - echo - fi - test "$ac_signal" != 0 && - echo "$as_me: caught signal $ac_signal" - echo "$as_me: exit $exit_status" - } >&5 - rm -f core *.core && - rm -rf conftest* confdefs* conf$$* $ac_clean_files && - exit $exit_status - ' 0 -for ac_signal in 1 2 13 15; do - trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal -done -ac_signal=0 - -# confdefs.h avoids OS command line length limits that DEFS can exceed. -rm -rf conftest* confdefs.h -# AIX cpp loses on an empty file, so make sure it contains at least a newline. -echo >confdefs.h - -# Predefined preprocessor variables. - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_NAME "$PACKAGE_NAME" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_TARNAME "$PACKAGE_TARNAME" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_VERSION "$PACKAGE_VERSION" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_STRING "$PACKAGE_STRING" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" -_ACEOF - - -# Let the site file select an alternate cache file if it wants to. -# Prefer explicitly selected file to automatically selected ones. -if test -z "$CONFIG_SITE"; then - if test "x$prefix" != xNONE; then - CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" - else - CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" - fi -fi -for ac_site_file in $CONFIG_SITE; do - if test -r "$ac_site_file"; then - { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5 -echo "$as_me: loading site script $ac_site_file" >&6;} - sed 's/^/| /' "$ac_site_file" >&5 - . "$ac_site_file" - fi -done - -if test -r "$cache_file"; then - # Some versions of bash will fail to source /dev/null (special - # files actually), so we avoid doing that. - if test -f "$cache_file"; then - { echo "$as_me:$LINENO: loading cache $cache_file" >&5 -echo "$as_me: loading cache $cache_file" >&6;} - case $cache_file in - [\\/]* | ?:[\\/]* ) . $cache_file;; - *) . ./$cache_file;; - esac - fi -else - { echo "$as_me:$LINENO: creating cache $cache_file" >&5 -echo "$as_me: creating cache $cache_file" >&6;} - >$cache_file -fi - -# Check that the precious variables saved in the cache have kept the same -# value. -ac_cache_corrupted=false -for ac_var in `(set) 2>&1 | - sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do - eval ac_old_set=\$ac_cv_env_${ac_var}_set - eval ac_new_set=\$ac_env_${ac_var}_set - eval ac_old_val="\$ac_cv_env_${ac_var}_value" - eval ac_new_val="\$ac_env_${ac_var}_value" - case $ac_old_set,$ac_new_set in - set,) - { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 -echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,set) - { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5 -echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,);; - *) - if test "x$ac_old_val" != "x$ac_new_val"; then - { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 -echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} - { echo "$as_me:$LINENO: former value: $ac_old_val" >&5 -echo "$as_me: former value: $ac_old_val" >&2;} - { echo "$as_me:$LINENO: current value: $ac_new_val" >&5 -echo "$as_me: current value: $ac_new_val" >&2;} - ac_cache_corrupted=: - fi;; - esac - # Pass precious variables to config.status. - if test "$ac_new_set" = set; then - case $ac_new_val in - *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) - ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; - *) ac_arg=$ac_var=$ac_new_val ;; - esac - case " $ac_configure_args " in - *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. - *) ac_configure_args="$ac_configure_args '$ac_arg'" ;; - esac - fi -done -if $ac_cache_corrupted; then - { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5 -echo "$as_me: error: changes in the environment can compromise the build" >&2;} - { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 -echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;} - { (exit 1); exit 1; }; } -fi - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - - - - - - - - - - - - - - - - - - -echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5 -echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6 -set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,:./+-,___p_,'` -if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.make <<\_ACEOF -all: - @echo 'ac_maketemp="$(MAKE)"' -_ACEOF -# GNU make sometimes prints "make[1]: Entering...", which would confuse us. -eval `${MAKE-make} -f conftest.make 2>/dev/null | grep temp=` -if test -n "$ac_maketemp"; then - eval ac_cv_prog_make_${ac_make}_set=yes -else - eval ac_cv_prog_make_${ac_make}_set=no -fi -rm -f conftest.make -fi -if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 - SET_MAKE= -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 - SET_MAKE="MAKE=${MAKE-make}" -fi - -extrasub="$extrasub"' -/@subdir@/{ -h -g -s/@subdir@/avcall/ -p -g -s/@subdir@/vacall/ -p -g -s/@subdir@/trampoline/ -p -g -s/@subdir@/callback/ -p -d -} -' - - - -subdirs="$subdirs avcall vacall trampoline callback" - - ac_config_files="$ac_config_files Makefile" -cat >confcache <<\_ACEOF -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs, see configure's option --config-cache. -# It is not useful on other systems. If it contains results you don't -# want to keep, you may remove or edit it. -# -# config.status only pays attention to the cache file if you give it -# the --recheck option to rerun configure. -# -# `ac_cv_env_foo' variables (set or unset) will be overridden when -# loading this file, other *unset* `ac_cv_foo' will be assigned the -# following values. - -_ACEOF - -# The following way of writing the cache mishandles newlines in values, -# but we know of no workaround that is simple, portable, and efficient. -# So, don't put newlines in cache variables' values. -# Ultrix sh set writes to stderr and can't be redirected directly, -# and sets the high bit in the cache file unless we assign to the vars. -{ - (set) 2>&1 | - case `(ac_space=' '; set | grep ac_space) 2>&1` in - *ac_space=\ *) - # `set' does not quote correctly, so add quotes (double-quote - # substitution turns \\\\ into \\, and sed turns \\ into \). - sed -n \ - "s/'/'\\\\''/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" - ;; - *) - # `set' quotes correctly as required by POSIX, so do not add quotes. - sed -n \ - "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" - ;; - esac; -} | - sed ' - t clear - : clear - s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ - t end - /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ - : end' >>confcache -if diff $cache_file confcache >/dev/null 2>&1; then :; else - if test -w $cache_file; then - test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file" - cat confcache >$cache_file - else - echo "not updating unwritable cache $cache_file" - fi -fi -rm -f confcache - -test "x$prefix" = xNONE && prefix=$ac_default_prefix -# Let make expand exec_prefix. -test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' - -# VPATH may cause trouble with some makes, so we remove $(srcdir), -# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and -# trailing colons and then remove the whole line if VPATH becomes empty -# (actually we leave an empty line to preserve line numbers). -if test "x$srcdir" = x.; then - ac_vpsub='/^[ ]*VPATH[ ]*=/{ -s/:*\$(srcdir):*/:/; -s/:*\${srcdir}:*/:/; -s/:*@srcdir@:*/:/; -s/^\([^=]*=[ ]*\):*/\1/; -s/:*$//; -s/^[^=]*=[ ]*$//; -}' -fi - -# Transform confdefs.h into DEFS. -# Protect against shell expansion while executing Makefile rules. -# Protect against Makefile macro expansion. -# -# If the first sed substitution is executed (which looks for macros that -# take arguments), then we branch to the quote section. Otherwise, -# look for a macro that doesn't take arguments. -cat >confdef2opt.sed <<\_ACEOF -t clear -: clear -s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\),-D\1=\2,g -t quote -s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\),-D\1=\2,g -t quote -d -: quote -s,[ `~#$^&*(){}\\|;'"<>?],\\&,g -s,\[,\\&,g -s,\],\\&,g -s,\$,$$,g -p -_ACEOF -# We use echo to avoid assuming a particular line-breaking character. -# The extra dot is to prevent the shell from consuming trailing -# line-breaks from the sub-command output. A line-break within -# single-quotes doesn't work because, if this script is created in a -# platform that uses two characters for line-breaks (e.g., DOS), tr -# would break. -ac_LF_and_DOT=`echo; echo .` -DEFS=`sed -n -f confdef2opt.sed confdefs.h | tr "$ac_LF_and_DOT" ' .'` -rm -f confdef2opt.sed - - -ac_libobjs= -ac_ltlibobjs= -for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue - # 1. Remove the extension, and $U if already installed. - ac_i=`echo "$ac_i" | - sed 's/\$U\././;s/\.o$//;s/\.obj$//'` - # 2. Add them. - ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext" - ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo' -done -LIBOBJS=$ac_libobjs - -LTLIBOBJS=$ac_ltlibobjs - - - -: ${CONFIG_STATUS=./config.status} -ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files $CONFIG_STATUS" -{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5 -echo "$as_me: creating $CONFIG_STATUS" >&6;} -cat >$CONFIG_STATUS <<_ACEOF -#! $SHELL -# Generated by $as_me. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false -SHELL=\${CONFIG_SHELL-$SHELL} -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## - -# Be Bourne compatible -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' -elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then - set -o posix -fi -DUALCASE=1; export DUALCASE # for MKS sh - -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - - -# Work around bugs in pre-3.0 UWIN ksh. -$as_unset ENV MAIL MAILPATH -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -for as_var in \ - LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ - LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ - LC_TELEPHONE LC_TIME -do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var - else - $as_unset $as_var - fi -done - -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - - -# Name of the executable. -as_me=`$as_basename "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)$' \| \ - . : '\(.\)' 2>/dev/null || -echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } - /^X\/\(\/\/\)$/{ s//\1/; q; } - /^X\/\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - - -# PATH needs CR, and LINENO needs CR and PATH. -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" || { - # Find who we are. Look in the path if we contain no path at all - # relative or not. - case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done - - ;; - esac - # We did not find ourselves, most probably we were run as `sh COMMAND' - # in which case we are not to be found in the path. - if test "x$as_myself" = x; then - as_myself=$0 - fi - if test ! -f "$as_myself"; then - { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5 -echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;} - { (exit 1); exit 1; }; } - fi - case $CONFIG_SHELL in - '') - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for as_base in sh bash ksh sh5; do - case $as_dir in - /*) - if ("$as_dir/$as_base" -c ' - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then - $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } - $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } - CONFIG_SHELL=$as_dir/$as_base - export CONFIG_SHELL - exec "$CONFIG_SHELL" "$0" ${1+"$@"} - fi;; - esac - done -done -;; - esac - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line before each line; the second 'sed' does the real - # work. The second script uses 'N' to pair each line-number line - # with the numbered line, and appends trailing '-' during - # substitution so that $LINENO is not a special case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) - sed '=' <$as_myself | - sed ' - N - s,$,-, - : loop - s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, - t loop - s,-$,, - s,^['$as_cr_digits']*\n,, - ' >$as_me.lineno && - chmod +x $as_me.lineno || - { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5 -echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;} - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensible to this). - . ./$as_me.lineno - # Exit status is that of the last command. - exit -} - - -case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in - *c*,-n*) ECHO_N= ECHO_C=' -' ECHO_T=' ' ;; - *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; - *) ECHO_N= ECHO_C='\c' ECHO_T= ;; -esac - -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -rm -f conf$$ conf$$.exe conf$$.file -echo >conf$$.file -if ln -s conf$$.file conf$$ 2>/dev/null; then - # We could just check for DJGPP; but this test a) works b) is more generic - # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). - if test -f conf$$.exe; then - # Don't use ln at all; we don't have any links - as_ln_s='cp -p' - else - as_ln_s='ln -s' - fi -elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.file - -if mkdir -p . 2>/dev/null; then - as_mkdir_p=: -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -as_executable_p="test -f" - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -# IFS -# We need space, tab and new line, in precisely that order. -as_nl=' -' -IFS=" $as_nl" - -# CDPATH. -$as_unset CDPATH - -exec 6>&1 - -# Open the log real soon, to keep \$[0] and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. Logging --version etc. is OK. -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX -} >&5 -cat >&5 <<_CSEOF - -This file was extended by $as_me, which was -generated by GNU Autoconf 2.59. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -_CSEOF -echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5 -echo >&5 -_ACEOF - -# Files that config.status was made for. -if test -n "$ac_config_files"; then - echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS -fi - -if test -n "$ac_config_headers"; then - echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS -fi - -if test -n "$ac_config_links"; then - echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS -fi - -if test -n "$ac_config_commands"; then - echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS -fi - -cat >>$CONFIG_STATUS <<\_ACEOF - -ac_cs_usage="\ -\`$as_me' instantiates files from templates according to the -current configuration. - -Usage: $0 [OPTIONS] [FILE]... - - -h, --help print this help, then exit - -V, --version print version number, then exit - -q, --quiet do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - -Configuration files: -$config_files - -Report bugs to ." -_ACEOF - -cat >>$CONFIG_STATUS <<_ACEOF -ac_cs_version="\\ -config.status -configured by $0, generated by GNU Autoconf 2.59, - with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" - -Copyright (C) 2003 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." -srcdir=$srcdir -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF -# If no file are specified by the user, then we need to provide default -# value. By we need to know if files were specified by the user. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=*) - ac_option=`expr "x$1" : 'x\([^=]*\)='` - ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'` - ac_shift=: - ;; - -*) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - *) # This is not an option, so the user has probably given explicit - # arguments. - ac_option=$1 - ac_need_defaults=false;; - esac - - case $ac_option in - # Handling of the options. -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --vers* | -V ) - echo "$ac_cs_version"; exit 0 ;; - --he | --h) - # Conflict between --help and --header - { { echo "$as_me:$LINENO: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&2;} - { (exit 1); exit 1; }; };; - --help | --hel | -h ) - echo "$ac_cs_usage"; exit 0 ;; - --debug | --d* | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - CONFIG_FILES="$CONFIG_FILES $ac_optarg" - ac_need_defaults=false;; - --header | --heade | --head | --hea ) - $ac_shift - CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" - ac_need_defaults=false;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&2;} - { (exit 1); exit 1; }; } ;; - - *) ac_config_targets="$ac_config_targets $1" ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF -if \$ac_cs_recheck; then - echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 - exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion -fi - -_ACEOF - - - - - -cat >>$CONFIG_STATUS <<\_ACEOF -for ac_config_target in $ac_config_targets -do - case "$ac_config_target" in - # Handling of arguments. - "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; - *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 -echo "$as_me: error: invalid argument: $ac_config_target" >&2;} - { (exit 1); exit 1; }; };; - esac -done - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason to put it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Create a temporary directory, and hook for its removal unless debugging. -$debug || -{ - trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 - trap '{ (exit 1); exit 1; }' 1 2 13 15 -} - -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" -} || -{ - tmp=./confstat$$-$RANDOM - (umask 077 && mkdir $tmp) -} || -{ - echo "$me: cannot create a temporary directory in ." >&2 - { (exit 1); exit 1; } -} - -_ACEOF - -cat >>$CONFIG_STATUS <<_ACEOF - -# -# CONFIG_FILES section. -# - -# No need to generate the scripts if there are no CONFIG_FILES. -# This happens for instance when ./config.status config.h -if test -n "\$CONFIG_FILES"; then - # Protect against being on the right side of a sed subst in config.status. - sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g; - s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF -s,@SHELL@,$SHELL,;t t -s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t -s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t -s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t -s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t -s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t -s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t -s,@exec_prefix@,$exec_prefix,;t t -s,@prefix@,$prefix,;t t -s,@program_transform_name@,$program_transform_name,;t t -s,@bindir@,$bindir,;t t -s,@sbindir@,$sbindir,;t t -s,@libexecdir@,$libexecdir,;t t -s,@datadir@,$datadir,;t t -s,@sysconfdir@,$sysconfdir,;t t -s,@sharedstatedir@,$sharedstatedir,;t t -s,@localstatedir@,$localstatedir,;t t -s,@libdir@,$libdir,;t t -s,@includedir@,$includedir,;t t -s,@oldincludedir@,$oldincludedir,;t t -s,@infodir@,$infodir,;t t -s,@mandir@,$mandir,;t t -s,@build_alias@,$build_alias,;t t -s,@host_alias@,$host_alias,;t t -s,@target_alias@,$target_alias,;t t -s,@DEFS@,$DEFS,;t t -s,@ECHO_C@,$ECHO_C,;t t -s,@ECHO_N@,$ECHO_N,;t t -s,@ECHO_T@,$ECHO_T,;t t -s,@LIBS@,$LIBS,;t t -s,@SET_MAKE@,$SET_MAKE,;t t -s,@subdirs@,$subdirs,;t t -s,@LIBOBJS@,$LIBOBJS,;t t -s,@LTLIBOBJS@,$LTLIBOBJS,;t t -CEOF - -_ACEOF - - cat >>$CONFIG_STATUS <<\_ACEOF - # Split the substitutions into bite-sized pieces for seds with - # small command number limits, like on Digital OSF/1 and HP-UX. - ac_max_sed_lines=48 - ac_sed_frag=1 # Number of current file. - ac_beg=1 # First line for current file. - ac_end=$ac_max_sed_lines # Line after last line for current file. - ac_more_lines=: - ac_sed_cmds= - while $ac_more_lines; do - if test $ac_beg -gt 1; then - sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - else - sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - fi - if test ! -s $tmp/subs.frag; then - ac_more_lines=false - else - # The purpose of the label and of the branching condition is to - # speed up the sed processing (if there are no `@' at all, there - # is no need to browse any of the substitutions). - # These are the two extra sed commands mentioned above. - (echo ':t - /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed - if test -z "$ac_sed_cmds"; then - ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed" - else - ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed" - fi - ac_sed_frag=`expr $ac_sed_frag + 1` - ac_beg=$ac_end - ac_end=`expr $ac_end + $ac_max_sed_lines` - fi - done - if test -z "$ac_sed_cmds"; then - ac_sed_cmds=cat - fi -fi # test -n "$CONFIG_FILES" - -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF -for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; - esac - - # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories. - ac_dir=`(dirname "$ac_file") 2>/dev/null || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac - - - - if test x"$ac_file" != x-; then - { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - rm -f "$ac_file" - fi - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - configure_input= - else - configure_input="$ac_file. " - fi - configure_input=$configure_input"Generated from `echo $ac_file_in | - sed 's,.*/,,'` by configure." - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF - sed "$ac_vpsub -$extrasub -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s,@configure_input@,$configure_input,;t t -s,@srcdir@,$ac_srcdir,;t t -s,@abs_srcdir@,$ac_abs_srcdir,;t t -s,@top_srcdir@,$ac_top_srcdir,;t t -s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t -s,@builddir@,$ac_builddir,;t t -s,@abs_builddir@,$ac_abs_builddir,;t t -s,@top_builddir@,$ac_top_builddir,;t t -s,@abs_top_builddir@,$ac_abs_top_builddir,;t t -" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out - rm -f $tmp/stdin - if test x"$ac_file" != x-; then - mv $tmp/out $ac_file - else - cat $tmp/out - rm -f $tmp/out - fi - -done -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF - -{ (exit 0); exit 0; } -_ACEOF -chmod +x $CONFIG_STATUS -ac_clean_files=$ac_clean_files_save - - -# configure is writing to config.log, and then calls config.status. -# config.status does its own redirection, appending to config.log. -# Unfortunately, on DOS this fails, as config.log is still kept open -# by configure, so config.status won't be able to write to it; its -# output is simply discarded. So we exec the FD to /dev/null, -# effectively closing config.log, so it can be properly (re)opened and -# appended to by config.status. When coming back to configure, we -# need to make the FD available again. -if test "$no_create" != yes; then - ac_cs_success=: - ac_config_status_args= - test "$silent" = yes && - ac_config_status_args="$ac_config_status_args --quiet" - exec 5>/dev/null - $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false - exec 5>>config.log - # Use ||, not &&, to avoid exiting from the if with $? = 1, which - # would make configure fail if this is the last instruction. - $ac_cs_success || { (exit 1); exit 1; } -fi - -# -# CONFIG_SUBDIRS section. -# -if test "$no_recursion" != yes; then - - # Remove --cache-file and --srcdir arguments so they do not pile up. - ac_sub_configure_args= - ac_prev= - for ac_arg in $ac_configure_args; do - if test -n "$ac_prev"; then - ac_prev= - continue - fi - case $ac_arg in - -cache-file | --cache-file | --cache-fil | --cache-fi \ - | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) - ac_prev=cache_file ;; - -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ - | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* \ - | --c=*) - ;; - --config-cache | -C) - ;; - -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) - ac_prev=srcdir ;; - -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) - ;; - -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) - ac_prev=prefix ;; - -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) - ;; - *) ac_sub_configure_args="$ac_sub_configure_args $ac_arg" ;; - esac - done - - # Always prepend --prefix to ensure using the same prefix - # in subdir configurations. - ac_sub_configure_args="--prefix=$prefix $ac_sub_configure_args" - - ac_popdir=`pwd` - for ac_dir in : $subdirs; do test "x$ac_dir" = x: && continue - - # Do not complain, so a configure script can configure whichever - # parts of a large source tree are present. - test -d $srcdir/$ac_dir || continue - - { echo "$as_me:$LINENO: configuring in $ac_dir" >&5 -echo "$as_me: configuring in $ac_dir" >&6;} - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac - - - cd $ac_dir - - # Check for guested configure; otherwise get Cygnus style configure. - if test -f $ac_srcdir/configure.gnu; then - ac_sub_configure="$SHELL '$ac_srcdir/configure.gnu'" - elif test -f $ac_srcdir/configure; then - ac_sub_configure="$SHELL '$ac_srcdir/configure'" - elif test -f $ac_srcdir/configure.in; then - ac_sub_configure=$ac_configure - else - { echo "$as_me:$LINENO: WARNING: no configuration information is in $ac_dir" >&5 -echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2;} - ac_sub_configure= - fi - - # The recursion is here. - if test -n "$ac_sub_configure"; then - # Make the cache file name correct relative to the subdirectory. - case $cache_file in - [\\/]* | ?:[\\/]* ) ac_sub_cache_file=$cache_file ;; - *) # Relative path. - ac_sub_cache_file=$ac_top_builddir$cache_file ;; - esac - - { echo "$as_me:$LINENO: running $ac_sub_configure $ac_sub_configure_args --cache-file=$ac_sub_cache_file --srcdir=$ac_srcdir" >&5 -echo "$as_me: running $ac_sub_configure $ac_sub_configure_args --cache-file=$ac_sub_cache_file --srcdir=$ac_srcdir" >&6;} - # The eval makes quoting arguments work. - eval $ac_sub_configure $ac_sub_configure_args \ - --cache-file=$ac_sub_cache_file --srcdir=$ac_srcdir || - { { echo "$as_me:$LINENO: error: $ac_sub_configure failed for $ac_dir" >&5 -echo "$as_me: error: $ac_sub_configure failed for $ac_dir" >&2;} - { (exit 1); exit 1; }; } - fi - - cd $ac_popdir - done -fi - DELETED ffcall/configure.in Index: ffcall/configure.in ================================================================== --- ffcall/configure.in +++ /dev/null @@ -1,27 +0,0 @@ -dnl AUTOCONF configuration for FFCALL -dnl Bruno Haible 24.10.1997 -dnl -AC_INIT(trampoline/trampoline.h.in) -AC_PROG_MAKE_SET -dnl This piece of sed script replaces every line containing '@subdir@' -dnl by several consecutive lines, each referencing one subdir. -extrasub="$extrasub"' -/@subdir@/{ -h -g -s/@subdir@/avcall/ -p -g -s/@subdir@/vacall/ -p -g -s/@subdir@/trampoline/ -p -g -s/@subdir@/callback/ -p -d -} -' -CL_CONFIG_SUBDIRS(avcall vacall trampoline callback) -AC_OUTPUT(Makefile) DELETED ffcall/ffcall.spec Index: ffcall/ffcall.spec ================================================================== --- ffcall/ffcall.spec +++ /dev/null @@ -1,62 +0,0 @@ -%define name ffcall -%define version 1.9 -%define release 1 -%define serial 1 - -Summary: Libraries that can be used to build foreign function call interfaces. -Name: %{name} -Version: %{version} -Release: %{release} -Serial: %{serial} -Copyright: GPL -Group: Development/Libraries -Vendor: The GNUstep Project -URL: ftp://ftp.santafe.edu/pub/gnu/ -Source: %{name}-%{version}.tar.gz -BuildRoot: /var/tmp/%{name}-%{version} -Packager: Adam Fedor - -%description -This is a collection of four libraries which can be used to build -foreign function call interfaces in embedded interpreters. - -The four packages are: - - avcall - calling C functions with variable arguments - - vacall - C functions accepting variable argument prototypes - - trampoline - closures as first-class C functions - - callback - closures with variable arguments as first-class C functions - (a reentrant combination of vacall and trampoline) - -%prep -%setup -q - -%build -CFLAGS="$RPM_OPT_FLAGS" ./configure --prefix=$RPM_BUILD_ROOT/usr - -make - -%install -if [ -d $RPM_BUILD_ROOT ]; then rm -r $RPM_BUILD_ROOT; fi -mkdir -p $RPM_BUILD_ROOT -make prefix=$RPM_BUILD_ROOT/usr install - -%post -p /sbin/ldconfig -%postun -p /sbin/ldconfig - -%clean -if [ -d $RPM_BUILD_ROOT ]; then rm -r $RPM_BUILD_ROOT; fi - -%files -%defattr(-,root,root) -%doc COPYING NEWS README PLATFORMS -/usr/include/* -/usr/lib/* -/usr/man/* -/usr/share/* - -%changelog - DELETED ffcall/install-check-results Index: ffcall/install-check-results ================================================================== --- ffcall/install-check-results +++ /dev/null @@ -1,40 +0,0 @@ -# Commands for installing "make check" results - -# Set this once. -#HOST=sparc-sun-solaris2.4 -#COMPILER=cc -#BUILDDIR=/tmp/ffcall-sparc-solaris2.4/build-cc - -ls old: - -ll \ - configurations/${HOST}-${COMPILER} \ - avcall/tests.output/${HOST}-${COMPILER} \ - vacall/tests.output/${HOST}-${COMPILER} \ - trampoline/tests.passed/${HOST}-${COMPILER} \ - callback/tests.output/${HOST}-${COMPILER} - -ls new: - -ll \ - ${BUILDDIR}/config.cache \ - ${BUILDDIR}/avcall/tests.output.${HOST} \ - ${BUILDDIR}/vacall/tests.output.${HOST} \ - ${BUILDDIR}/trampoline/tests.passed.${HOST} \ - ${BUILDDIR}/callback/tests.output.${HOST} - -diff: - -diff -c1 configurations/${HOST}-${COMPILER} ${BUILDDIR}/config.cache -diff -c1 avcall/tests.output/${HOST}-${COMPILER} ${BUILDDIR}/avcall/tests.output.${HOST} -diff -c1 vacall/tests.output/${HOST}-${COMPILER} ${BUILDDIR}/vacall/tests.output.${HOST} -diff -c1 trampoline/tests.passed/${HOST}-${COMPILER} ${BUILDDIR}/trampoline/tests.passed.${HOST} -diff -c1 callback/tests.output/${HOST}-${COMPILER} ${BUILDDIR}/callback/tests.output.${HOST} - -install: - -cp -p ${BUILDDIR}/config.cache configurations/${HOST}-${COMPILER} -cp -p ${BUILDDIR}/avcall/tests.output.${HOST} avcall/tests.output/${HOST}-${COMPILER} -cp -p ${BUILDDIR}/vacall/tests.output.${HOST} vacall/tests.output/${HOST}-${COMPILER} -cp -p ${BUILDDIR}/trampoline/tests.passed.${HOST} trampoline/tests.passed/${HOST}-${COMPILER} -cp -p ${BUILDDIR}/callback/tests.output.${HOST} callback/tests.output/${HOST}-${COMPILER} DELETED ffcall/m4/as-underscore.m4 Index: ffcall/m4/as-underscore.m4 ================================================================== --- ffcall/m4/as-underscore.m4 +++ /dev/null @@ -1,39 +0,0 @@ -dnl -*- Autoconf -*- -dnl Copyright (C) 1993-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels, Sam Steingold. - -AC_PREREQ(2.57) - -AC_DEFUN([CL_AS_UNDERSCORE], -[AC_BEFORE([$0], [CL_GLOBAL_CONSTRUCTORS]) -m4_pattern_allow([^AS_UNDERSCORE$]) -AC_CACHE_CHECK(for underscore in external names, cl_cv_prog_as_underscore, [ -cat > conftest.c </dev/null 2>&1 -if grep _foo conftest.s >/dev/null ; then - cl_cv_prog_as_underscore=yes -else - cl_cv_prog_as_underscore=no -fi -rm -f conftest* -]) -if test $cl_cv_prog_as_underscore = yes; then - AS_UNDERSCORE=true - AC_DEFINE(ASM_UNDERSCORE,,[symbols are prefixed by an underscore in assembly language]) -else - AS_UNDERSCORE=false -fi -AC_SUBST(AS_UNDERSCORE)dnl -]) DELETED ffcall/m4/cc-gcc.m4 Index: ffcall/m4/cc-gcc.m4 ================================================================== --- ffcall/m4/cc-gcc.m4 +++ /dev/null @@ -1,29 +0,0 @@ -dnl Copyright (C) 1993-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels. - -AC_PREREQ(2.13) - -AC_DEFUN([CL_CC_GCC], -[AC_REQUIRE([AC_PROG_CPP]) -AC_CACHE_CHECK(whether using GNU C, cl_cv_prog_cc_gcc, [ -AC_EGREP_CPP(yes,[#ifdef __GNUC__ - yes -#endif -], cl_cv_prog_cc_gcc=yes, cl_cv_prog_cc_gcc=no) -]) -if test $cl_cv_prog_cc_gcc = yes; then - CC_GCC=true - GCC_X_NONE='-x none' -else - CC_GCC=false - GCC_X_NONE='' -fi -AC_SUBST(CC_GCC)dnl -AC_SUBST(GCC_X_NONE)dnl -]) DELETED ffcall/m4/cc-void.m4 Index: ffcall/m4/cc-void.m4 ================================================================== --- ffcall/m4/cc-void.m4 +++ /dev/null @@ -1,33 +0,0 @@ -dnl -*- Autoconf -*- -dnl Copyright (C) 1993-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels, Sam Steingold - -AC_PREREQ(2.57) - -AC_DEFUN([RL_VOID], -[CL_COMPILE_CHECK([working void], rl_cv_c_void, , -[void f(); -typedef void x; x g(); -typedef void* y; y a; -], , AC_DEFINE([void],[char],[Define to, say, char, if your system does not support void type]))dnl -]) - -AC_DEFUN([CL_VOID], -[CL_COMPILE_CHECK([working void], cl_cv_c_void, , -[void f(); -typedef void x; x g(); -typedef void* y; y a; -], have_void=1, AC_DEFINE(void,char,[Define to, say, char, if your system does not support void type]))dnl -if test -n "$have_void"; then -CL_COMPILE_CHECK([working \"return void\"], cl_cv_c_return_void, -[void f() {} typedef void x; x g() { return f(); }], [], -cl_cv_c_return_void_form=return, cl_cv_c_return_void_form="") -fi -AC_DEFINE_UNQUOTED(return_void,$cl_cv_c_return_void_form,[Define as `return' if your compiler allows returning expressions of type `void' from functions]) -]) DELETED ffcall/m4/cp.m4 Index: ffcall/m4/cp.m4 ================================================================== --- ffcall/m4/cp.m4 +++ /dev/null @@ -1,25 +0,0 @@ -dnl Copyright (C) 1993-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels. - -AC_PREREQ(2.13) - -AC_DEFUN([CL_PROG_CP], -[AC_CACHE_CHECK(how to copy files, cl_cv_prog_cp, [ -echo "blabla" > conftest.x -err=`/bin/sh -c "cp -p conftest.x conftest.y 2>&1"` -if test -z "$err"; then - cl_cv_prog_cp='cp -p' -else - cl_cv_prog_cp='cp' -fi -rm -f conftest* -]) -CP="$cl_cv_prog_cp" -AC_SUBST(CP)dnl -]) DELETED ffcall/m4/ffcall-codeexec.m4 Index: ffcall/m4/ffcall-codeexec.m4 ================================================================== --- ffcall/m4/ffcall-codeexec.m4 +++ /dev/null @@ -1,47 +0,0 @@ -dnl Copyright (C) 1993-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels. - -AC_PREREQ(2.13) - -AC_DEFUN([CL_CODEEXEC], -[AC_CACHE_CHECK([whether code in malloc'ed memory is executable], cl_cv_codeexec, [ -dnl The test below does not work on host=hppa*-hp-hpux* because on this system -dnl function pointers are actually pointers into(!) a two-pointer struct. -dnl The test below does not work on host=rs6000-*-* because on this system -dnl function pointers are actually pointers to a three-pointer struct. -case "$host_os" in - hpux*) cl_cv_codeexec="guessing yes" ;; - *) -case "$host_cpu" in - # On host=rs6000-*-aix3.2.5 malloc'ed memory is indeed not executable. - rs6000) cl_cv_codeexec="guessing no" ;; - *) -AC_TRY_RUN([ -#include -/* declare malloc() */ -#include -int fun () { return 31415926; } -int main () -{ long size = (char*)&main - (char*)&fun; - char* funcopy = (char*) malloc(size); - int i; - for (i = 0; i < size; i++) { funcopy[i] = ((char*)&fun)[i]; } - exit(!((*(int(*)())funcopy)() == 31415926)); -}], cl_cv_codeexec=yes, rm -f core -cl_cv_codeexec=no, cl_cv_codeexec="guessing yes") - ;; -esac - ;; -esac -]) -case "$cl_cv_codeexec" in - *yes) AC_DEFINE(CODE_EXECUTABLE) ;; - *no) ;; -esac -]) DELETED ffcall/m4/ffcall-ireg.m4 Index: ffcall/m4/ffcall-ireg.m4 ================================================================== --- ffcall/m4/ffcall-ireg.m4 +++ /dev/null @@ -1,30 +0,0 @@ -dnl Copyright (C) 1993-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels. - -AC_PREREQ(2.13) - -AC_DEFUN([CL_IREG_FLOAT_RETURN], -[AC_CACHE_CHECK([whether floats are returned in integer registers], cl_cv_c_float_return_ireg, [ -AC_TRY_RUN([float x = (float)1.2; -float y = (float)1.3; -float fun () { return x*y; } -int main() -{ int val = (* (int (*) ()) fun) (); - exit (!(val == 0x3FC7AE15 || val == 0x15AEC73F)); -}], cl_cv_c_float_return_ireg=yes, rm -f core -cl_cv_c_float_return_ireg=no, -dnl When cross-compiling, assume no, because that's how it comes out on -dnl most platforms with floating-point unit, including m68k-linux. -cl_cv_c_float_return_ireg="guessing no") -]) -case "$cl_cv_c_float_return_ireg" in - *yes) AC_DEFINE(__IREG_FLOAT_RETURN__) ;; - *no) ;; -esac -]) DELETED ffcall/m4/ffcall-pccstruct.m4 Index: ffcall/m4/ffcall-pccstruct.m4 ================================================================== --- ffcall/m4/ffcall-pccstruct.m4 +++ /dev/null @@ -1,38 +0,0 @@ -dnl Copyright (C) 1993-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels, Sam Steingold. - -AC_PREREQ(2.13) - -AC_DEFUN([CL_PCC_STRUCT_RETURN], -[AC_CACHE_CHECK([for pcc non-reentrant struct return convention], cl_cv_c_struct_return_static, [ -save_CFLAGS="$CFLAGS" -test $CC_GCC = true && CFLAGS="$CFLAGS -O0" -AC_TRY_RUN([typedef struct { int a; int b; int c; int d; int e; } foo; -foo foofun () { static foo foopi = {3141,5926,5358,9793,2385}; return foopi; } -foo* (*fun) () = (foo* (*) ()) foofun; -int main() -{ foo foo1; - foo* fooptr1; - foo foo2; - foo* fooptr2; - foo1 = foofun(); fooptr1 = (*fun)(&foo1); - foo2 = foofun(); fooptr2 = (*fun)(&foo2); - exit(!(fooptr1 == fooptr2 && fooptr1->c == 5358)); -}], cl_cv_c_struct_return_static=yes, rm -f core -cl_cv_c_struct_return_static=no, -dnl When cross-compiling, don't assume anything. -dnl There are even weirder return value passing conventions than pcc. -cl_cv_c_struct_return_static="guessing no") -CFLAGS="$save_CFLAGS" -]) -case "$cl_cv_c_struct_return_static" in - *yes) AC_DEFINE(__PCC_STRUCT_RETURN__) ;; - *no) ;; -esac -]) DELETED ffcall/m4/ffcall-smallstruct.m4 Index: ffcall/m4/ffcall-smallstruct.m4 ================================================================== --- ffcall/m4/ffcall-smallstruct.m4 +++ /dev/null @@ -1,31 +0,0 @@ -dnl Copyright (C) 1993-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels. - -AC_PREREQ(2.13) - -AC_DEFUN([CL_SMALL_STRUCT_RETURN], -[AC_CACHE_CHECK([whether small structs are returned in registers], cl_cv_c_struct_return_small, [ -AC_TRY_RUN([typedef struct { int x; } foo; int y; -foo foofun () { foo f; f.x = y; return f; } -int (*fun) () = (int (*) ()) foofun; -int main() -{ y = 37; if ((*fun)() != 37) exit(1); - y = 55; if ((*fun)() != 55) exit(1); - exit(0); -}], cl_cv_c_struct_return_small=yes, rm -f core -cl_cv_c_struct_return_small=no, -dnl When cross-compiling, don't assume anything. -dnl There are even weirder return value passing conventions than pcc. -cl_cv_c_struct_return_small="guessing no") -]) -case "$cl_cv_c_struct_return_small" in - *yes) AC_DEFINE(__SMALL_STRUCT_RETURN__) ;; - *no) ;; -esac -]) DELETED ffcall/m4/general.m4 Index: ffcall/m4/general.m4 ================================================================== --- ffcall/m4/general.m4 +++ /dev/null @@ -1,268 +0,0 @@ -dnl Copyright (C) 1993-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels, Sam Steingold. - -AC_PREREQ(2.13) - -dnl without AC_MSG_...: with AC_MSG_... and caching: -dnl AC_TRY_CPP CL_CPP_CHECK -dnl AC_TRY_COMPILE CL_COMPILE_CHECK -dnl AC_TRY_LINK CL_LINK_CHECK -dnl AC_TRY_RUN CL_RUN_CHECK - would require cross-compiling support -dnl Usage: -dnl AC_TRY_CPP(INCLUDES, -dnl ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]) -dnl CL_CPP_CHECK(ECHO-TEXT, CACHE-ID, -dnl INCLUDES, -dnl ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]) -dnl AC_TRY_xxx(INCLUDES, FUNCTION-BODY, -dnl ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]) -dnl CL_xxx_CHECK(ECHO-TEXT, CACHE-ID, -dnl INCLUDES, FUNCTION-BODY, -dnl ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]) - -AC_DEFUN([CL_CPP_CHECK], -[AC_MSG_CHECKING(for $1) -AC_CACHE_VAL($2,[ -AC_TRY_CPP([$3], $2=yes, $2=no) -]) -AC_MSG_RESULT([$]$2) -if test [$]$2 = yes; then - ifelse([$4], , :, [$4]) -ifelse([$5], , , [else - $5 -])dnl -fi -]) - -AC_DEFUN([CL_COMPILE_CHECK], -[AC_MSG_CHECKING(for $1) -AC_CACHE_VAL($2,[ -AC_TRY_COMPILE([$3],[$4], $2=yes, $2=no) -]) -AC_MSG_RESULT([$]$2) -if test [$]$2 = yes; then - ifelse([$5], , :, [$5]) -ifelse([$6], , , [else - $6 -])dnl -fi -]) - -AC_DEFUN([CL_LINK_CHECK], -[AC_MSG_CHECKING(for $1) -AC_CACHE_VAL($2,[ -AC_TRY_LINK([$3],[$4], $2=yes, $2=no) -]) -AC_MSG_RESULT([$]$2) -if test [$]$2 = yes; then - ifelse([$5], , :, [$5]) -ifelse([$6], , , [else - $6 -])dnl -fi -]) - -dnl CL_SILENT(ACTION) -dnl performs ACTION, with AC_MSG_CHECKING and AC_MSG_RESULT being defined away. -AC_DEFUN([CL_SILENT], -[pushdef([AC_MSG_CHECKING],[:])dnl -pushdef([AC_CHECKING],[:])dnl -pushdef([AC_MSG_RESULT],[:])dnl -$1[]dnl -popdef([AC_MSG_RESULT])dnl -popdef([AC_CHECKING])dnl -popdef([AC_MSG_CHECKING])dnl -]) - -dnl Expands to the "extern ..." prefix used for system declarations. -dnl AC_LANG_EXTERN() -AC_DEFUN([AC_LANG_EXTERN], -[extern -#ifdef __cplusplus -"C" -#endif -]) - -AC_DEFUN([CL_CC_WORKS], -[AC_CACHE_CHECK(whether CC works at all, cl_cv_prog_cc_works, [ -AC_LANG_SAVE() -AC_LANG_C() -AC_TRY_RUN([int main() { exit(0); }], -cl_cv_prog_cc_works=yes, cl_cv_prog_cc_works=no, -AC_TRY_LINK([], [], cl_cv_prog_cc_works=yes, cl_cv_prog_cc_works=no)) -AC_LANG_RESTORE() -]) -case "$cl_cv_prog_cc_works" in - *no) echo "Installation or configuration problem: C compiler cannot create executables."; exit 1;; - *yes) ;; -esac -]) - -AC_DEFUN([CL_CONFIG_SUBDIRS], -[dnl No AC_CONFIG_AUX_DIR_DEFAULT, so we don't need install.sh. -AC_PROVIDE([AC_CONFIG_AUX_DIR_DEFAULT]) -AC_CONFIG_SUBDIRS([$1])dnl -]) - -AC_DEFUN([CL_CANONICAL_HOST], -[AC_REQUIRE([AC_PROG_CC]) dnl Actually: AC_REQUIRE([CL_CC_WORKS]) -dnl Set ac_aux_dir before the cache check, because AM_PROG_LIBTOOL needs it. -ac_aux_dir=${srcdir}/$1 -dnl A substitute for AC_CONFIG_AUX_DIR_DEFAULT, so we don't need install.sh. -ac_config_guess="$SHELL $ac_aux_dir/config.guess" -ac_config_sub="$SHELL $ac_aux_dir/config.sub" -dnl We have defined $ac_aux_dir. -AC_PROVIDE([AC_CONFIG_AUX_DIR_DEFAULT])dnl -dnl In autoconf-2.52, a single AC_CANONICAL_HOST has the effect of inserting -dnl the code of AC_CANONICAL_BUILD *before* CL_CANONICAL_HOST, i.e. before -dnl ac_aux_dir has been set. To work around this, we list AC_CANONICAL_BUILD -dnl explicitly. -AC_CANONICAL_BUILD -AC_CANONICAL_HOST -]) - -AC_DEFUN([CL_CANONICAL_HOST_CPU], -[AC_REQUIRE([CL_CANONICAL_HOST])AC_REQUIRE([AC_PROG_CC]) -case "$host_cpu" in -changequote(,)dnl - i[4567]86 ) - host_cpu=i386 - ;; - alphaev[4-8] | alphaev56 | alphapca5[67] | alphaev6[78] ) - host_cpu=alpha - ;; - hppa1.0 | hppa1.1 | hppa2.0* | hppa64 ) - host_cpu=hppa - ;; - powerpc ) - host_cpu=rs6000 - ;; - c1 | c2 | c32 | c34 | c38 | c4 ) - host_cpu=convex - ;; - arm* ) - host_cpu=arm - ;; -changequote([,])dnl - mips ) - AC_CACHE_CHECK([for 64-bit MIPS], cl_cv_host_mips64, [ -AC_EGREP_CPP(yes, -[#if defined(_MIPS_SZLONG) -#if (_MIPS_SZLONG == 64) -/* We should also check for (_MIPS_SZPTR == 64), but gcc keeps this at 32. */ - yes -#endif -#endif -], cl_cv_host_mips64=yes, cl_cv_host_mips64=no) -]) -if test $cl_cv_host_mips64 = yes; then - host_cpu=mips64 -fi - ;; -dnl UltraSPARCs running Linux have `uname -m` = "sparc64", but the C compiler -dnl still generates 32-bit code. - sparc | sparc64 ) - AC_CACHE_CHECK([for 64-bit SPARC], cl_cv_host_sparc64, [ -AC_EGREP_CPP(yes, -[#if defined(__sparcv9) || defined(__arch64__) - yes -#endif -], cl_cv_host_sparc64=yes, cl_cv_host_sparc64=no) -]) -if test $cl_cv_host_sparc64 = yes; then - host_cpu=sparc64 -else - host_cpu=sparc -fi - ;; -esac -dnl was AC_DEFINE_UNQUOTED(__${host_cpu}__) but KAI C++ 3.2d doesn't like this -cat >> confdefs.h <= 3 - yes -#endif -], cl_cv_host_mipsn32=yes, cl_cv_host_mipsn32=no) -]) -if test $cl_cv_host_mipsn32 = yes; then - host_cpu=mipsn32 -fi -fi - ;; -dnl UltraSPARCs running Linux have `uname -m` = "sparc64", but the C compiler -dnl still generates 32-bit code. - sparc | sparc64 ) - AC_CACHE_CHECK([for 64-bit SPARC], cl_cv_host_sparc64, [ -AC_EGREP_CPP(yes, -[#if defined(__sparcv9) || defined(__arch64__) - yes -#endif -], cl_cv_host_sparc64=yes, cl_cv_host_sparc64=no) -]) -if test $cl_cv_host_sparc64 = yes; then - host_cpu=sparc64 -else - host_cpu=sparc -fi - ;; -esac -dnl was AC_DEFINE_UNQUOTED(__${host_cpu}__) but KAI C++ 3.2d doesn't like this -cat >> confdefs.h < -#include -#endif -], [getpagesize();], -AC_DEFINE(HAVE_GETPAGESIZE,,[have getpagesize()]) -have_getpagesize=1)dnl -if test -n "$have_getpagesize"; then -CL_PROTO([getpagesize], [ -CL_PROTO_RET([ -#include -#ifdef HAVE_UNISTD_H -#include -#endif -], [int getpagesize();], [int getpagesize();], -cl_cv_proto_getpagesize_ret, int, size_t) -], [extern $cl_cv_proto_getpagesize_ret getpagesize (void);]) -AC_DEFINE_UNQUOTED(RETGETPAGESIZETYPE,$cl_cv_proto_getpagesize_ret,[return type of getpagesize()]) -else -dnl Otherwise we use PAGESIZE defined in . -dnl But mingw32 doesn't have . -AC_CHECK_HEADERS(sys/param.h) -fi -]) DELETED ffcall/m4/install.m4 Index: ffcall/m4/install.m4 ================================================================== --- ffcall/m4/install.m4 +++ /dev/null @@ -1,82 +0,0 @@ -dnl Copyright (C) 1993-2004 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels. - -AC_PREREQ(2.13) - -AC_DEFUN([CL_PROG_INSTALL], -[dnl This is mostly copied from AC_PROG_INSTALL. -# Find a good install program. We prefer a C program (faster), -# so one script is as good as another. But avoid the broken or -# incompatible versions: -# SysV /etc/install, /usr/sbin/install -# SunOS /usr/etc/install -# IRIX /sbin/install -# AIX /bin/install -# AFS /usr/afsws/bin/install, which mis-handles nonexistent args -# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" -# ./install, which can be erroneously created by make from ./install.sh. -AC_MSG_CHECKING(for a BSD compatible install) -if test -z "$INSTALL"; then -AC_CACHE_VAL(cl_cv_path_install, -[ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" - for ac_dir in $PATH; do - # Account for people who put trailing slashes in PATH elements. - case "$ac_dir/" in - /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;; - *) - # OSF1 and SCO ODT 3.0 have their own names for install. - # Don't use installbsd from OSF since it installs stuff as root - # by default. - for ac_prog in ginstall scoinst install; do - if test -f $ac_dir/$ac_prog; then - if test $ac_prog = install && - grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then - # AIX install. It has an incompatible calling convention. - : - else - cl_cv_path_install="$ac_dir/$ac_prog -c" - break 2 - fi - fi - done - ;; - esac - done - IFS="$ac_save_ifs" - # As a last resort, use the absolute pathname of cp. - if test -z "$cl_cv_path_install"; then - cl_cv_path_install="cp" - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" - for ac_dir in $PATH; do - if test -f $ac_dir/cp; then - cl_cv_path_install="$ac_dir/cp" - break - fi - done - IFS="$ac_save_ifs" - fi -])dnl - INSTALL="$cl_cv_path_install" -fi -dnl We do special magic for INSTALL instead of AC_SUBST, to get -dnl relative paths right. -AC_MSG_RESULT($INSTALL) -AC_SUBST(INSTALL)dnl -# Use test -z because SunOS4 sh mishandles braces in ${var-val}. -# It thinks the first close brace ends the variable substitution. -test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='$(INSTALL)' -AC_SUBST(INSTALL_PROGRAM)dnl -if test -z "$INSTALL_DATA"; then - case "$INSTALL" in - cp | */cp ) INSTALL_DATA='$(INSTALL)' ;; - * ) INSTALL_DATA='$(INSTALL) -m 644' ;; - esac -fi -AC_SUBST(INSTALL_DATA)dnl -]) DELETED ffcall/m4/libtool.m4 Index: ffcall/m4/libtool.m4 ================================================================== --- ffcall/m4/libtool.m4 +++ /dev/null @@ -1,3704 +0,0 @@ -# libtool.m4 - Configure libtool for the host system. -*-Shell-script-*- -## Copyright 1996, 1997, 1998, 1999, 2000, 2001 -## Free Software Foundation, Inc. -## Originally by Gordon Matzigkeit , 1996 -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, but -## WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -## General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -## -## As a special exception to the GNU General Public License, if you -## distribute this file as part of a program that contains a -## configuration script generated by Autoconf, you may include it under -## the same distribution terms that you use for the rest of that program. - -# serial 46 AC_PROG_LIBTOOL - -AC_DEFUN([AC_PROG_LIBTOOL], -[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl - -# This can be used to rebuild libtool when needed -LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh" - -# Always use our own libtool. -LIBTOOL='$(SHELL) $(top_builddir)/libtool' -AC_SUBST(LIBTOOL)dnl - -# Prevent multiple expansion -define([AC_PROG_LIBTOOL], []) -]) - -AC_DEFUN([AC_LIBTOOL_SETUP], -[AC_PREREQ(2.13)dnl -AC_REQUIRE([AC_ENABLE_SHARED])dnl -AC_REQUIRE([AC_ENABLE_STATIC])dnl -AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl -AC_REQUIRE([CL_CANONICAL_HOST])dnl -AC_REQUIRE([AC_CANONICAL_BUILD])dnl -AC_REQUIRE([AC_PROG_CC])dnl -AC_REQUIRE([AC_PROG_LD])dnl -AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl -AC_REQUIRE([AC_PROG_NM])dnl -AC_REQUIRE([LT_AC_PROG_SED])dnl - -AC_REQUIRE([CL_PROG_LN_S])dnl -AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl -AC_REQUIRE([AC_OBJEXT])dnl -AC_REQUIRE([AC_EXEEXT])dnl -dnl - -_LT_AC_PROG_ECHO_BACKSLASH -# Only perform the check for file, if the check method requires it -case $deplibs_check_method in -file_magic*) - if test "$file_magic_cmd" = '$MAGIC_CMD'; then - AC_PATH_MAGIC - fi - ;; -esac - -AC_CHECK_TOOL(RANLIB, ranlib, :) -AC_CHECK_TOOL(STRIP, strip, :) - -ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN], enable_dlopen=yes, enable_dlopen=no) -ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], -enable_win32_dll=yes, enable_win32_dll=no) - -AC_ARG_ENABLE(libtool-lock, - [ --disable-libtool-lock avoid locking (might break parallel builds)]) -test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes - -# Some flags need to be propagated to the compiler or linker for good -# libtool support. -case $host in -*-*-irix6*) - # Find out which ABI we are using. - echo '[#]line __oline__ "configure"' > conftest.$ac_ext - if AC_TRY_EVAL(ac_compile); then - case `/usr/bin/file conftest.$ac_objext` in - *32-bit*) - LD="${LD-ld} -32" - ;; - *N32*) - LD="${LD-ld} -n32" - ;; - *64-bit*) - LD="${LD-ld} -64" - ;; - esac - fi - rm -rf conftest* - ;; - -*-*-sco3.2v5*) - # On SCO OpenServer 5, we need -belf to get full-featured binaries. - SAVE_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -belf" - AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, - [AC_LANG_SAVE - AC_LANG_C - AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) - AC_LANG_RESTORE]) - if test x"$lt_cv_cc_needs_belf" != x"yes"; then - # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf - CFLAGS="$SAVE_CFLAGS" - fi - ;; - -ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], -[*-*-cygwin* | *-*-mingw* | *-*-pw32*) - AC_CHECK_TOOL(DLLTOOL, dlltool, false) - AC_CHECK_TOOL(AS, as, false) - AC_CHECK_TOOL(OBJDUMP, objdump, false) - - # recent cygwin and mingw systems supply a stub DllMain which the user - # can override, but on older systems we have to supply one - AC_CACHE_CHECK([if libtool should supply DllMain function], lt_cv_need_dllmain, - [AC_TRY_LINK([], - [extern int __attribute__((__stdcall__)) DllMain(void*, int, void*); - DllMain (0, 0, 0);], - [lt_cv_need_dllmain=no],[lt_cv_need_dllmain=yes])]) - - case $host/$CC in - *-*-cygwin*/gcc*-mno-cygwin*|*-*-mingw*) - # old mingw systems require "-dll" to link a DLL, while more recent ones - # require "-mdll" - SAVE_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -mdll" - AC_CACHE_CHECK([how to link DLLs], lt_cv_cc_dll_switch, - [AC_TRY_LINK([], [], [lt_cv_cc_dll_switch=-mdll],[lt_cv_cc_dll_switch=-dll])]) - CFLAGS="$SAVE_CFLAGS" ;; - *-*-cygwin* | *-*-pw32*) - # cygwin systems need to pass --dll to the linker, and not link - # crt.o which will require a WinMain@16 definition. - lt_cv_cc_dll_switch="-Wl,--dll -nostartfiles" ;; - esac - ;; - ]) -esac - -_LT_AC_LTCONFIG_HACK - -]) - -# AC_LIBTOOL_HEADER_ASSERT -# ------------------------ -AC_DEFUN([AC_LIBTOOL_HEADER_ASSERT], -[AC_CACHE_CHECK([whether $CC supports assert without backlinking], - [lt_cv_func_assert_works], - [case $host in - *-*-solaris*) - if test "$GCC" = yes && test "$with_gnu_ld" != yes; then - case `$CC --version 2>/dev/null` in - [[12]].*) lt_cv_func_assert_works=no ;; - *) lt_cv_func_assert_works=yes ;; - esac - fi - ;; - esac]) - -if test "x$lt_cv_func_assert_works" = xyes; then - AC_CHECK_HEADERS(assert.h) -fi -])# AC_LIBTOOL_HEADER_ASSERT - -# _LT_AC_CHECK_DLFCN -# -------------------- -AC_DEFUN([_LT_AC_CHECK_DLFCN], -[AC_CHECK_HEADERS(dlfcn.h) -])# _LT_AC_CHECK_DLFCN - -# AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE -# --------------------------------- -AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], -[AC_REQUIRE([CL_CANONICAL_HOST]) -AC_REQUIRE([AC_PROG_NM]) -AC_REQUIRE([AC_OBJEXT]) -# Check for command to grab the raw symbol name followed by C symbol from nm. -AC_MSG_CHECKING([command to parse $NM output]) -AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe], [dnl - -# These are sane defaults that work on at least a few old systems. -# [They come from Ultrix. What could be older than Ultrix?!! ;)] - -# Character class describing NM global symbol codes. -symcode='[[BCDEGRST]]' - -# Regexp to match symbols that can be accessed directly from C. -sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)' - -# Transform the above into a raw symbol and a C symbol. -symxfrm='\1 \2\3 \3' - -# Transform an extracted symbol line into a proper C declaration -lt_cv_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'" - -# Transform an extracted symbol line into symbol name and symbol address -lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" - -# Define system-specific variables. -case $host_os in -aix*) - symcode='[[BCDT]]' - ;; -cygwin* | mingw* | pw32*) - symcode='[[ABCDGISTW]]' - ;; -hpux*) # Its linker distinguishes data from code symbols - lt_cv_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" - lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" - ;; -irix* | nonstopux*) - symcode='[[BCDEGRST]]' - ;; -osf*) - symcode='[[BCDEGQRST]]' - ;; -solaris* | sysv5*) - symcode='[[BDT]]' - ;; -sysv4) - symcode='[[DFNSTU]]' - ;; -esac - -# Handle CRLF in mingw tool chain -opt_cr= -case $host_os in -mingw*) - opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp - ;; -esac - -# If we're using GNU nm, then use its standard symbol codes. -if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then - symcode='[[ABCDGISTW]]' -fi - -# Try without a prefix undercore, then with it. -for ac_symprfx in "" "_"; do - - # Write the raw and C identifiers. -lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'" - - # Check to see that the pipe works correctly. - pipe_works=no - rm -f conftest* - cat > conftest.$ac_ext < $nlist) && test -s "$nlist"; then - # Try sorting and uniquifying the output. - if sort "$nlist" | uniq > "$nlist"T; then - mv -f "$nlist"T "$nlist" - else - rm -f "$nlist"T - fi - - # Make sure that we snagged all the symbols we need. - if egrep ' nm_test_var$' "$nlist" >/dev/null; then - if egrep ' nm_test_func$' "$nlist" >/dev/null; then - cat < conftest.$ac_ext -#ifdef __cplusplus -extern "C" { -#endif - -EOF - # Now generate the symbol file. - eval "$lt_cv_global_symbol_to_cdecl"' < "$nlist" >> conftest.$ac_ext' - - cat <> conftest.$ac_ext -#if defined (__STDC__) && __STDC__ -# define lt_ptr void * -#else -# define lt_ptr char * -# define const -#endif - -/* The mapping between symbol names and symbols. */ -const struct { - const char *name; - lt_ptr address; -} -lt_preloaded_symbols[[]] = -{ -EOF - sed "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (lt_ptr) \&\2},/" < "$nlist" >> conftest.$ac_ext - cat <<\EOF >> conftest.$ac_ext - {0, (lt_ptr) 0} -}; - -#ifdef __cplusplus -} -#endif -EOF - # Now try linking the two files. - mv conftest.$ac_objext conftstm.$ac_objext - save_LIBS="$LIBS" - save_CFLAGS="$CFLAGS" - LIBS="conftstm.$ac_objext" - CFLAGS="$CFLAGS$no_builtin_flag" - if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then - pipe_works=yes - fi - LIBS="$save_LIBS" - CFLAGS="$save_CFLAGS" - else - echo "cannot find nm_test_func in $nlist" >&AC_FD_CC - fi - else - echo "cannot find nm_test_var in $nlist" >&AC_FD_CC - fi - else - echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AC_FD_CC - fi - else - echo "$progname: failed program was:" >&AC_FD_CC - cat conftest.$ac_ext >&5 - fi - rm -f conftest* conftst* - - # Do not use the global_symbol_pipe unless it works. - if test "$pipe_works" = yes; then - break - else - lt_cv_sys_global_symbol_pipe= - fi -done -]) -global_symbol_pipe="$lt_cv_sys_global_symbol_pipe" -if test -z "$lt_cv_sys_global_symbol_pipe"; then - global_symbol_to_cdecl= - global_symbol_to_c_name_address= -else - global_symbol_to_cdecl="$lt_cv_global_symbol_to_cdecl" - global_symbol_to_c_name_address="$lt_cv_global_symbol_to_c_name_address" -fi -if test -z "$global_symbol_pipe$global_symbol_to_cdec$global_symbol_to_c_name_address"; -then - AC_MSG_RESULT(failed) -else - AC_MSG_RESULT(ok) -fi -]) # AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE - -# _LT_AC_LIBTOOL_SYS_PATH_SEPARATOR -# --------------------------------- -AC_DEFUN([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR], -[# Find the correct PATH separator. Usually this is `:', but -# DJGPP uses `;' like DOS. -if test "X${PATH_SEPARATOR+set}" != Xset; then - UNAME=${UNAME-`uname 2>/dev/null`} - case X$UNAME in - *-DOS) lt_cv_sys_path_separator=';' ;; - *) lt_cv_sys_path_separator=':' ;; - esac - PATH_SEPARATOR=$lt_cv_sys_path_separator -fi -])# _LT_AC_LIBTOOL_SYS_PATH_SEPARATOR - -# _LT_AC_PROG_ECHO_BACKSLASH -# -------------------------- -# Add some code to the start of the generated configure script which -# will find an echo command which doesn't interpret backslashes. -AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH], -[ifdef([AC_DIVERSION_NOTICE], [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)], - [AC_DIVERT_PUSH(NOTICE)]) -_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR - -# Check that we are running under the correct shell. -SHELL=${CONFIG_SHELL-/bin/sh} - -case X$ECHO in -X*--fallback-echo) - # Remove one level of quotation (which was required for Make). - ECHO=`echo "$ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','` - ;; -esac - -echo=${ECHO-echo} -if test "X[$]1" = X--no-reexec; then - # Discard the --no-reexec flag, and continue. - shift -elif test "X[$]1" = X--fallback-echo; then - # Avoid inline document here, it may be left over - : -elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then - # Yippee, $echo works! - : -else - # Restart under the correct shell. - exec $SHELL "[$]0" --no-reexec ${1+"[$]@"} -fi - -if test "X[$]1" = X--fallback-echo; then - # used as fallback echo - shift - cat </dev/null && - echo_test_string="`eval $cmd`" && - (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null - then - break - fi - done -fi - -if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - : -else - # The Solaris, AIX, and Digital Unix default echo programs unquote - # backslashes. This makes it impossible to quote backslashes using - # echo "$something" | sed 's/\\/\\\\/g' - # - # So, first we look for a working echo in the user's PATH. - - IFS="${IFS= }"; save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for dir in $PATH /usr/ucb; do - if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && - test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - echo="$dir/echo" - break - fi - done - IFS="$save_ifs" - - if test "X$echo" = Xecho; then - # We didn't find a better echo, so look for alternatives. - if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - # This shell has a builtin print -r that does the trick. - echo='print -r' - elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) && - test "X$CONFIG_SHELL" != X/bin/ksh; then - # If we have ksh, try running configure again with it. - ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} - export ORIGINAL_CONFIG_SHELL - CONFIG_SHELL=/bin/ksh - export CONFIG_SHELL - exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"} - else - # Try using printf. - echo='printf %s\n' - if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - # Cool, printf works - : - elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && - test "X$echo_testing_string" = 'X\t' && - echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL - export CONFIG_SHELL - SHELL="$CONFIG_SHELL" - export SHELL - echo="$CONFIG_SHELL [$]0 --fallback-echo" - elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && - test "X$echo_testing_string" = 'X\t' && - echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - echo="$CONFIG_SHELL [$]0 --fallback-echo" - else - # maybe with a smaller string... - prev=: - - for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do - if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null - then - break - fi - prev="$cmd" - done - - if test "$prev" != 'sed 50q "[$]0"'; then - echo_test_string=`eval $prev` - export echo_test_string - exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"} - else - # Oops. We lost completely, so just stick with echo. - echo=echo - fi - fi - fi - fi -fi -fi - -# Copy echo and quote the copy suitably for passing to libtool from -# the Makefile, instead of quoting the original, which is used later. -ECHO=$echo -if test "X$ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then - ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo" -fi - -AC_SUBST(ECHO) -AC_DIVERT_POP -])# _LT_AC_PROG_ECHO_BACKSLASH - -# _LT_AC_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE, -# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING) -# ------------------------------------------------------------------ -AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF], -[if test "$cross_compiling" = yes; then : - [$4] -else - AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl - lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 - lt_status=$lt_dlunknown - cat > conftest.$ac_ext < -#endif - -#include - -#ifdef RTLD_GLOBAL -# define LT_DLGLOBAL RTLD_GLOBAL -#else -# ifdef DL_GLOBAL -# define LT_DLGLOBAL DL_GLOBAL -# else -# define LT_DLGLOBAL 0 -# endif -#endif - -/* We may have to define LT_DLLAZY_OR_NOW in the command line if we - find out it does not work in some platform. */ -#ifndef LT_DLLAZY_OR_NOW -# ifdef RTLD_LAZY -# define LT_DLLAZY_OR_NOW RTLD_LAZY -# else -# ifdef DL_LAZY -# define LT_DLLAZY_OR_NOW DL_LAZY -# else -# ifdef RTLD_NOW -# define LT_DLLAZY_OR_NOW RTLD_NOW -# else -# ifdef DL_NOW -# define LT_DLLAZY_OR_NOW DL_NOW -# else -# define LT_DLLAZY_OR_NOW 0 -# endif -# endif -# endif -# endif -#endif - -#ifdef __cplusplus -extern "C" void exit (int); -#endif - -void fnord() { int i=42;} -int main () -{ - void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); - int status = $lt_dlunknown; - - if (self) - { - if (dlsym (self,"fnord")) status = $lt_dlno_uscore; - else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; - /* dlclose (self); */ - } - - exit (status); -}] -EOF - if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then - (./conftest; exit; ) 2>/dev/null - lt_status=$? - case x$lt_status in - x$lt_dlno_uscore) $1 ;; - x$lt_dlneed_uscore) $2 ;; - x$lt_unknown|x*) $3 ;; - esac - else : - # compilation failed - $3 - fi -fi -rm -fr conftest* -])# _LT_AC_TRY_DLOPEN_SELF - -# AC_LIBTOOL_DLOPEN_SELF -# ------------------- -AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], -[if test "x$enable_dlopen" != xyes; then - enable_dlopen=unknown - enable_dlopen_self=unknown - enable_dlopen_self_static=unknown -else - lt_cv_dlopen=no - lt_cv_dlopen_libs= - - case $host_os in - beos*) - lt_cv_dlopen="load_add_on" - lt_cv_dlopen_libs= - lt_cv_dlopen_self=yes - ;; - - cygwin* | mingw* | pw32*) - lt_cv_dlopen="LoadLibrary" - lt_cv_dlopen_libs= - ;; - - *) - AC_CHECK_FUNC([shl_load], - [lt_cv_dlopen="shl_load"], - [AC_CHECK_LIB([dld], [shl_load], - [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"], - [AC_CHECK_FUNC([dlopen], - [lt_cv_dlopen="dlopen"], - [AC_CHECK_LIB([dl], [dlopen], - [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"], - [AC_CHECK_LIB([svld], [dlopen], - [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"], - [AC_CHECK_LIB([dld], [dld_link], - [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"]) - ]) - ]) - ]) - ]) - ]) - ;; - esac - - if test "x$lt_cv_dlopen" != xno; then - enable_dlopen=yes - else - enable_dlopen=no - fi - - case $lt_cv_dlopen in - dlopen) - save_CPPFLAGS="$CPPFLAGS" - AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl - test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" - - save_LDFLAGS="$LDFLAGS" - eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" - - save_LIBS="$LIBS" - LIBS="$lt_cv_dlopen_libs $LIBS" - - AC_CACHE_CHECK([whether a program can dlopen itself], - lt_cv_dlopen_self, [dnl - _LT_AC_TRY_DLOPEN_SELF( - lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes, - lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross) - ]) - - if test "x$lt_cv_dlopen_self" = xyes; then - LDFLAGS="$LDFLAGS $link_static_flag" - AC_CACHE_CHECK([whether a statically linked program can dlopen itself], - lt_cv_dlopen_self_static, [dnl - _LT_AC_TRY_DLOPEN_SELF( - lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes, - lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross) - ]) - fi - - CPPFLAGS="$save_CPPFLAGS" - LDFLAGS="$save_LDFLAGS" - LIBS="$save_LIBS" - ;; - esac - - case $lt_cv_dlopen_self in - yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; - *) enable_dlopen_self=unknown ;; - esac - - case $lt_cv_dlopen_self_static in - yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; - *) enable_dlopen_self_static=unknown ;; - esac -fi -])# AC_LIBTOOL_DLOPEN_SELF - -AC_DEFUN([_LT_AC_LTCONFIG_HACK], -[AC_REQUIRE([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])dnl -# Sed substitution that helps us do robust quoting. It backslashifies -# metacharacters that are still active within double-quoted strings. -Xsed='sed -e s/^X//' -sed_quote_subst='s/\([[\\"\\`$\\\\]]\)/\\\1/g' - -# Same as above, but do not quote variable references. -double_quote_subst='s/\([[\\"\\`\\\\]]\)/\\\1/g' - -# Sed substitution to delay expansion of an escaped shell variable in a -# double_quote_subst'ed string. -delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' - -# Constants: -rm="rm -f" - -# Global variables: -default_ofile=libtool -can_build_shared=yes - -# All known linkers require a `.a' archive for static linking (except M$VC, -# which needs '.lib'). -libext=a -ltmain="$ac_aux_dir/ltmain.sh" -ofile="$default_ofile" -with_gnu_ld="$lt_cv_prog_gnu_ld" -need_locks="$enable_libtool_lock" - -old_CC="$CC" -old_CFLAGS="$CFLAGS" - -# Set sane defaults for various variables -test -z "$AR" && AR=ar -test -z "$AR_FLAGS" && AR_FLAGS=cru -test -z "$AS" && AS=as -test -z "$CC" && CC=cc -test -z "$DLLTOOL" && DLLTOOL=dlltool -test -z "$LD" && LD=ld -test -z "$LN_S" && LN_S="ln -s" -test -z "$MAGIC_CMD" && MAGIC_CMD=file -test -z "$NM" && NM=nm -test -z "$OBJDUMP" && OBJDUMP=objdump -test -z "$RANLIB" && RANLIB=: -test -z "$STRIP" && STRIP=: -test -z "$ac_objext" && ac_objext=o - -if test x"$host" != x"$build"; then - ac_tool_prefix=${host_alias}- -else - ac_tool_prefix= -fi - -# Transform linux* to *-*-linux-gnu*, to support old configure scripts. -case $host_os in -linux-gnu*) ;; -linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'` -esac - -case $host_os in -aix3*) - # 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. - if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES - fi - ;; -esac - -# Determine commands to create old-style static archives. -old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs' -old_postinstall_cmds='chmod 644 $oldlib' -old_postuninstall_cmds= - -if test -n "$RANLIB"; then - case $host_os in - openbsd*) - old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds" - ;; - *) - old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds" - ;; - esac - old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib" -fi - -# Allow CC to be a program name with arguments. -set dummy $CC -compiler="[$]2" - -## FIXME: this should be a separate macro -## -AC_MSG_CHECKING([for objdir]) -rm -f .libs 2>/dev/null -mkdir .libs 2>/dev/null -if test -d .libs; then - objdir=.libs -else - # MS-DOS does not allow filenames that begin with a dot. - objdir=_libs -fi -rmdir .libs 2>/dev/null -AC_MSG_RESULT($objdir) -## -## END FIXME - - -## FIXME: this should be a separate macro -## -AC_ARG_WITH(pic, -[ --with-pic try to use only PIC/non-PIC objects [default=use both]], -pic_mode="$withval", pic_mode=default) -test -z "$pic_mode" && pic_mode=default - -# We assume here that the value for lt_cv_prog_cc_pic will not be cached -# in isolation, and that seeing it set (from the cache) indicates that -# the associated values are set (in the cache) correctly too. -AC_MSG_CHECKING([for $compiler option to produce PIC]) -AC_CACHE_VAL(lt_cv_prog_cc_pic, -[ lt_cv_prog_cc_pic= - lt_cv_prog_cc_shlib= - lt_cv_prog_cc_wl= - lt_cv_prog_cc_static= - lt_cv_prog_cc_no_builtin= - lt_cv_prog_cc_can_build_shared=$can_build_shared - - if test "$GCC" = yes; then - lt_cv_prog_cc_wl='-Wl,' - lt_cv_prog_cc_static='-static' - - case $host_os in - aix*) - # Below there is a dirty hack to force normal static linking with -ldl - # The problem is because libdl dynamically linked with both libc and - # libC (AIX C++ library), which obviously doesn't included in libraries - # list by gcc. This cause undefined symbols with -static flags. - # This hack allows C programs to be linked with "-static -ldl", but - # not sure about C++ programs. - lt_cv_prog_cc_static="$lt_cv_prog_cc_static ${lt_cv_prog_cc_wl}-lC" - ;; - 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'. - lt_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4' - ;; - beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) - # PIC is the default for these OSes. - ;; - darwin* | rhapsody*) - # PIC is the default on this platform - # Common symbols not allowed in MH_DYLIB files - lt_cv_prog_cc_pic='-fno-common' - ;; - cygwin* | mingw* | pw32* | os2*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - lt_cv_prog_cc_pic='-DDLL_EXPORT' - ;; - sysv4*MP*) - if test -d /usr/nec; then - lt_cv_prog_cc_pic=-Kconform_pic - fi - ;; - *) - lt_cv_prog_cc_pic='-fPIC' - ;; - esac - else - # PORTME Check for PIC flags for the system compiler. - case $host_os in - aix3* | aix4* | aix5*) - lt_cv_prog_cc_wl='-Wl,' - # All AIX code is PIC. - if test "$host_cpu" = ia64; then - # AIX 5 now supports IA64 processor - lt_cv_prog_cc_static='-Bstatic' - else - lt_cv_prog_cc_static='-bnso -bI:/lib/syscalls.exp' - fi - ;; - - hpux9* | hpux10* | hpux11*) - # Is there a better lt_cv_prog_cc_static that works with the bundled CC? - lt_cv_prog_cc_wl='-Wl,' - lt_cv_prog_cc_static="${lt_cv_prog_cc_wl}-a ${lt_cv_prog_cc_wl}archive" - lt_cv_prog_cc_pic='+Z' - ;; - - irix5* | irix6* | nonstopux*) - lt_cv_prog_cc_wl='-Wl,' - lt_cv_prog_cc_static='-non_shared' - # PIC (with -KPIC) is the default. - ;; - - cygwin* | mingw* | pw32* | os2*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - lt_cv_prog_cc_pic='-DDLL_EXPORT' - ;; - - newsos6) - lt_cv_prog_cc_pic='-KPIC' - lt_cv_prog_cc_static='-Bstatic' - ;; - - osf3* | osf4* | osf5*) - # All OSF/1 code is PIC. - lt_cv_prog_cc_wl='-Wl,' - lt_cv_prog_cc_static='-non_shared' - ;; - - sco3.2v5*) - lt_cv_prog_cc_pic='-Kpic' - lt_cv_prog_cc_static='-dn' - lt_cv_prog_cc_shlib='-belf' - ;; - - solaris*) - lt_cv_prog_cc_pic='-KPIC' - lt_cv_prog_cc_static='-Bstatic' - lt_cv_prog_cc_wl='-Wl,' - ;; - - sunos4*) - lt_cv_prog_cc_pic='-PIC' - lt_cv_prog_cc_static='-Bstatic' - lt_cv_prog_cc_wl='-Qoption ld ' - ;; - - sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - lt_cv_prog_cc_pic='-KPIC' - lt_cv_prog_cc_static='-Bstatic' - lt_cv_prog_cc_wl='-Wl,' - ;; - - uts4*) - lt_cv_prog_cc_pic='-pic' - lt_cv_prog_cc_static='-Bstatic' - ;; - - sysv4*MP*) - if test -d /usr/nec ;then - lt_cv_prog_cc_pic='-Kconform_pic' - lt_cv_prog_cc_static='-Bstatic' - fi - ;; - - *) - lt_cv_prog_cc_can_build_shared=no - ;; - esac - fi -]) -if test -z "$lt_cv_prog_cc_pic"; then - AC_MSG_RESULT([none]) -else - AC_MSG_RESULT([$lt_cv_prog_cc_pic]) - - # Check to make sure the pic_flag actually works. - AC_MSG_CHECKING([if $compiler PIC flag $lt_cv_prog_cc_pic works]) - AC_CACHE_VAL(lt_cv_prog_cc_pic_works, [dnl - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS $lt_cv_prog_cc_pic -DPIC" - AC_TRY_COMPILE([], [], [dnl - case $host_os in - hpux9* | hpux10* | hpux11*) - # On HP-UX, both CC and GCC only warn that PIC is supported... then - # they create non-PIC objects. So, if there were any warnings, we - # assume that PIC is not supported. - if test -s conftest.err; then - lt_cv_prog_cc_pic_works=no - else - lt_cv_prog_cc_pic_works=yes - fi - ;; - *) - lt_cv_prog_cc_pic_works=yes - ;; - esac - ], [dnl - lt_cv_prog_cc_pic_works=no - ]) - CFLAGS="$save_CFLAGS" - ]) - - if test "X$lt_cv_prog_cc_pic_works" = Xno; then - lt_cv_prog_cc_pic= - lt_cv_prog_cc_can_build_shared=no - else - lt_cv_prog_cc_pic=" $lt_cv_prog_cc_pic" - fi - - AC_MSG_RESULT([$lt_cv_prog_cc_pic_works]) -fi -## -## END FIXME - -# Check for any special shared library compilation flags. -if test -n "$lt_cv_prog_cc_shlib"; then - AC_MSG_WARN([\`$CC' requires \`$lt_cv_prog_cc_shlib' to build shared libraries]) - if echo "$old_CC $old_CFLAGS " | egrep -e "[[ ]]$lt_cv_prog_cc_shlib[[ ]]" >/dev/null; then : - else - AC_MSG_WARN([add \`$lt_cv_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure]) - lt_cv_prog_cc_can_build_shared=no - fi -fi - -## FIXME: this should be a separate macro -## -AC_MSG_CHECKING([if $compiler static flag $lt_cv_prog_cc_static works]) -AC_CACHE_VAL([lt_cv_prog_cc_static_works], [dnl - lt_cv_prog_cc_static_works=no - save_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS $lt_cv_prog_cc_static" - AC_TRY_LINK([], [], [lt_cv_prog_cc_static_works=yes]) - LDFLAGS="$save_LDFLAGS" -]) - -# Belt *and* braces to stop my trousers falling down: -test "X$lt_cv_prog_cc_static_works" = Xno && lt_cv_prog_cc_static= -AC_MSG_RESULT([$lt_cv_prog_cc_static_works]) - -pic_flag="$lt_cv_prog_cc_pic" -special_shlib_compile_flags="$lt_cv_prog_cc_shlib" -wl="$lt_cv_prog_cc_wl" -link_static_flag="$lt_cv_prog_cc_static" -no_builtin_flag="$lt_cv_prog_cc_no_builtin" -can_build_shared="$lt_cv_prog_cc_can_build_shared" -## -## END FIXME - - -## FIXME: this should be a separate macro -## -# Check to see if options -o and -c are simultaneously supported by compiler -AC_MSG_CHECKING([if $compiler supports -c -o file.$ac_objext]) -AC_CACHE_VAL([lt_cv_compiler_c_o], [ -$rm -r conftest 2>/dev/null -mkdir conftest -cd conftest -echo "int some_variable = 0;" > conftest.$ac_ext -mkdir out -# According to Tom Tromey, Ian Lance Taylor reported there are C compilers -# that will create temporary files in the current directory regardless of -# the output directory. Thus, making CWD read-only will cause this test -# to fail, enabling locking or at least warning the user not to do parallel -# builds. -chmod -w . -save_CFLAGS="$CFLAGS" -CFLAGS="$CFLAGS -o out/conftest2.$ac_objext" -compiler_c_o=no -if { (eval echo configure:__oline__: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s out/conftest.err; then - lt_cv_compiler_c_o=no - else - lt_cv_compiler_c_o=yes - fi -else - # Append any errors to the config.log. - cat out/conftest.err 1>&AC_FD_CC - lt_cv_compiler_c_o=no -fi -CFLAGS="$save_CFLAGS" -chmod u+w . -$rm conftest* out/* -rmdir out -cd .. -rmdir conftest -$rm -r conftest 2>/dev/null -]) -compiler_c_o=$lt_cv_compiler_c_o -AC_MSG_RESULT([$compiler_c_o]) - -if test x"$compiler_c_o" = x"yes"; then - # Check to see if we can write to a .lo - AC_MSG_CHECKING([if $compiler supports -c -o file.lo]) - AC_CACHE_VAL([lt_cv_compiler_o_lo], [ - lt_cv_compiler_o_lo=no - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -c -o conftest.lo" - save_objext="$ac_objext" - ac_objext=lo - AC_TRY_COMPILE([], [int some_variable = 0;], [dnl - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s conftest.err; then - lt_cv_compiler_o_lo=no - else - lt_cv_compiler_o_lo=yes - fi - ]) - ac_objext="$save_objext" - CFLAGS="$save_CFLAGS" - ]) - compiler_o_lo=$lt_cv_compiler_o_lo - AC_MSG_RESULT([$compiler_o_lo]) -else - compiler_o_lo=no -fi -## -## END FIXME - -## FIXME: this should be a separate macro -## -# Check to see if we can do hard links to lock some files if needed -hard_links="nottested" -if test "$compiler_c_o" = no && test "$need_locks" != no; then - # do not overwrite the value of need_locks provided by the user - AC_MSG_CHECKING([if we can lock with hard links]) - hard_links=yes - $rm conftest* - ln conftest.a conftest.b 2>/dev/null && hard_links=no - touch conftest.a - ln conftest.a conftest.b 2>&5 || hard_links=no - ln conftest.a conftest.b 2>/dev/null && hard_links=no - AC_MSG_RESULT([$hard_links]) - if test "$hard_links" = no; then - AC_MSG_WARN([\`$CC' does not support \`-c -o', so \`make -j' may be unsafe]) - need_locks=warn - fi -else - need_locks=no -fi -## -## END FIXME - -## FIXME: this should be a separate macro -## -if test "$GCC" = yes; then - # Check to see if options -fno-rtti -fno-exceptions are supported by compiler - AC_MSG_CHECKING([if $compiler supports -fno-rtti -fno-exceptions]) - echo "int some_variable = 0;" > conftest.$ac_ext - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.$ac_ext" - compiler_rtti_exceptions=no - AC_TRY_COMPILE([], [int some_variable = 0;], [dnl - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s conftest.err; then - compiler_rtti_exceptions=no - else - compiler_rtti_exceptions=yes - fi - ]) - CFLAGS="$save_CFLAGS" - AC_MSG_RESULT([$compiler_rtti_exceptions]) - - if test "$compiler_rtti_exceptions" = "yes"; then - no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions' - else - no_builtin_flag=' -fno-builtin' - fi -fi -## -## END FIXME - -## FIXME: this should be a separate macro -## -# See if the linker supports building shared libraries. -AC_MSG_CHECKING([whether the linker ($LD) supports shared libraries]) - -allow_undefined_flag= -no_undefined_flag= -need_lib_prefix=unknown -need_version=unknown -# when you set need_version to no, make sure it does not cause -set_version -# flags to be left without arguments -archive_cmds= -archive_expsym_cmds= -old_archive_from_new_cmds= -old_archive_from_expsyms_cmds= -export_dynamic_flag_spec= -whole_archive_flag_spec= -thread_safe_flag_spec= -hardcode_into_libs=no -hardcode_libdir_flag_spec= -hardcode_libdir_separator= -hardcode_direct=no -hardcode_minus_L=no -hardcode_shlibpath_var=unsupported -runpath_var= -link_all_deplibs=unknown -always_export_symbols=no -export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols' -# include_expsyms should be a list of space-separated symbols to be *always* -# included in the symbol list -include_expsyms= -# exclude_expsyms can be an egrep regular expression of symbols to exclude -# it will be wrapped by ` (' and `)$', so one must not match beginning or -# end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', -# as well as any symbol that contains `d'. -exclude_expsyms="_GLOBAL_OFFSET_TABLE_" -# Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out -# platforms (ab)use it in PIC code, but their linkers get confused if -# the symbol is explicitly referenced. Since portable code cannot -# rely on this symbol name, it's probably fine to never include it in -# preloaded symbol tables. -extract_expsyms_cmds= - -case $host_os in -cygwin* | mingw* | pw32*) - # FIXME: the MSVC++ port hasn't been tested in a loooong time - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - if test "$GCC" != yes; then - with_gnu_ld=no - fi - ;; -openbsd*) - with_gnu_ld=no - ;; -esac - -ld_shlibs=yes -if test "$with_gnu_ld" = yes; then - # If archive_cmds runs LD, not CC, wlarc should be empty - wlarc='${wl}' - - # See if GNU ld supports shared libraries. - case $host_os in - aix3* | aix4* | aix5*) - # On AIX, the GNU linker is very broken - # Note:Check GNU linker on AIX 5-IA64 when/if it becomes available. - ld_shlibs=no - cat <&2 - -*** Warning: the GNU linker, at least up to release 2.9.1, is reported -*** to be unable to reliably create shared libraries on AIX. -*** Therefore, libtool is disabling shared libraries support. If you -*** really care for shared libraries, you may want to modify your PATH -*** so that a non-GNU linker is found, and then restart. - -EOF - ;; - - amigaos*) - archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - - # Samuel A. Falvo II reports - # that the semantics of dynamic libraries on AmigaOS, at least up - # to version 4, is to share data among multiple programs linked - # with the same dynamic library. Since this doesn't match the - # behavior of shared libraries on other platforms, we can use - # them. - ld_shlibs=no - ;; - - beos*) - if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then - allow_undefined_flag=unsupported - # Joseph Beckenbach says some releases of gcc - # support --undefined. This deserves some investigation. FIXME - archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - else - ld_shlibs=no - fi - ;; - - cygwin* | mingw* | pw32*) - # hardcode_libdir_flag_spec is actually meaningless, as there is - # no search path for DLLs. - hardcode_libdir_flag_spec='-L$libdir' - allow_undefined_flag=unsupported - always_export_symbols=yes - - extract_expsyms_cmds='test -f $output_objdir/impgen.c || \ - sed -e "/^# \/\* impgen\.c starts here \*\//,/^# \/\* impgen.c ends here \*\// { s/^# //;s/^# *$//; p; }" -e d < $''0 > $output_objdir/impgen.c~ - test -f $output_objdir/impgen.exe || (cd $output_objdir && \ - if test "x$HOST_CC" != "x" ; then $HOST_CC -o impgen impgen.c ; \ - else $CC -o impgen impgen.c ; fi)~ - $output_objdir/impgen $dir/$soroot > $output_objdir/$soname-def' - - old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib' - - # cygwin and mingw dlls have different entry points and sets of symbols - # to exclude. - # FIXME: what about values for MSVC? - dll_entry=__cygwin_dll_entry@12 - dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12~ - case $host_os in - mingw*) - # mingw values - dll_entry=_DllMainCRTStartup@12 - dll_exclude_symbols=DllMain@12,DllMainCRTStartup@12,DllEntryPoint@12~ - ;; - esac - - # mingw and cygwin differ, and it's simplest to just exclude the union - # of the two symbol sets. - dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12,DllMainCRTStartup@12,DllEntryPoint@12 - - # recent cygwin and mingw systems supply a stub DllMain which the user - # can override, but on older systems we have to supply one (in ltdll.c) - if test "x$lt_cv_need_dllmain" = "xyes"; then - ltdll_obj='$output_objdir/$soname-ltdll.'"$ac_objext " - ltdll_cmds='test -f $output_objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $''0 > $output_objdir/$soname-ltdll.c~ - test -f $output_objdir/$soname-ltdll.$ac_objext || (cd $output_objdir && $CC -c $soname-ltdll.c)~' - else - ltdll_obj= - ltdll_cmds= - fi - - # Extract the symbol export list from an `--export-all' def file, - # then regenerate the def file from the symbol export list, so that - # the compiled dll only exports the symbol export list. - # Be careful not to strip the DATA tag left be newer dlltools. - export_symbols_cmds="$ltdll_cmds"' - $DLLTOOL --export-all --exclude-symbols '$dll_exclude_symbols' --output-def $output_objdir/$soname-def '$ltdll_obj'$libobjs $convenience~ - sed -e "1,/EXPORTS/d" -e "s/ @ [[0-9]]*//" -e "s/ *;.*$//" < $output_objdir/$soname-def > $export_symbols' - - # If the export-symbols file already is a .def file (1st line - # is EXPORTS), use it as is. - # If DATA tags from a recent dlltool are present, honour them! - archive_expsym_cmds='if test "x`sed 1q $export_symbols`" = xEXPORTS; then - cp $export_symbols $output_objdir/$soname-def; - else - echo EXPORTS > $output_objdir/$soname-def; - _lt_hint=1; - cat $export_symbols | while read symbol; do - set dummy \$symbol; - case \[$]# in - 2) echo " \[$]2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;; - 4) echo " \[$]2 \[$]3 \[$]4 ; " >> $output_objdir/$soname-def; _lt_hint=`expr \$_lt_hint - 1`;; - *) echo " \[$]2 @ \$_lt_hint \[$]3 ; " >> $output_objdir/$soname-def;; - esac; - _lt_hint=`expr 1 + \$_lt_hint`; - done; - fi~ - '"$ltdll_cmds"' - $CC -Wl,--base-file,$output_objdir/$soname-base '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~ - $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp~ - $CC -Wl,--base-file,$output_objdir/$soname-base $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~ - $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp --output-lib $output_objdir/$libname.dll.a~ - $CC $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags' - ;; - - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' - wlarc= - else - archive_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - fi - ;; - - solaris* | sysv5*) - if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then - ld_shlibs=no - cat <&2 - -*** Warning: The releases 2.8.* of the GNU linker cannot reliably -*** create shared libraries on Solaris systems. Therefore, libtool -*** is disabling shared libraries support. We urge you to upgrade GNU -*** binutils to release 2.9.1 or newer. Another option is to modify -*** your PATH or compiler configuration so that the native linker is -*** used, and then restart. - -EOF - elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - else - ld_shlibs=no - fi - ;; - - sunos4*) - archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' - wlarc= - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - *) - if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - else - ld_shlibs=no - fi - ;; - esac - - if test "$ld_shlibs" = yes; then - runpath_var=LD_RUN_PATH - hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir' - export_dynamic_flag_spec='${wl}--export-dynamic' - case $host_os in - cygwin* | mingw* | pw32*) - # dlltool doesn't understand --whole-archive et. al. - whole_archive_flag_spec= - ;; - *) - # ancient GNU ld didn't support --whole-archive et. al. - if $LD --help 2>&1 | egrep 'no-whole-archive' > /dev/null; then - whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' - else - whole_archive_flag_spec= - fi - ;; - esac - fi -else - # PORTME fill in a description of your system's linker (not GNU ld) - case $host_os in - aix3*) - allow_undefined_flag=unsupported - always_export_symbols=yes - archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' - # Note: this linker hardcodes the directories in LIBPATH if there - # are no directories specified by -L. - hardcode_minus_L=yes - if test "$GCC" = yes && test -z "$link_static_flag"; then - # Neither direct hardcoding nor static linking is supported with a - # broken collect2. - hardcode_direct=unsupported - fi - ;; - - aix4* | aix5*) - if test "$host_cpu" = ia64; then - # On IA64, the linker does run time linking by default, so we don't - # have to do anything special. - aix_use_runtimelinking=no - exp_sym_flag='-Bexport' - no_entry_flag="" - else - aix_use_runtimelinking=no - - # Test if we are trying to use run time linking or normal - # AIX style linking. If -brtl is somewhere in LDFLAGS, we - # need to do runtime linking. - case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*) - for ld_flag in $LDFLAGS; do - case $ld_flag in - *-brtl*) - aix_use_runtimelinking=yes - break - ;; - esac - done - esac - - exp_sym_flag='-bexport' - no_entry_flag='-bnoentry' - fi - - # When large executables or shared objects are built, AIX ld can - # have problems creating the table of contents. If linking a library - # or program results in "error TOC overflow" add -mminimal-toc to - # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not - # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. - - hardcode_direct=yes - archive_cmds='' - hardcode_libdir_separator=':' - if test "$GCC" = yes; then - case $host_os in aix4.[[012]]|aix4.[[012]].*) - collect2name=`${CC} -print-prog-name=collect2` - if test -f "$collect2name" && \ - strings "$collect2name" | grep resolve_lib_name >/dev/null - then - # We have reworked collect2 - hardcode_direct=yes - else - # We have old collect2 - hardcode_direct=unsupported - # It fails to find uninstalled libraries when the uninstalled - # path is not listed in the libpath. Setting hardcode_minus_L - # to unsupported forces relinking - hardcode_minus_L=yes - hardcode_libdir_flag_spec='-L$libdir' - hardcode_libdir_separator= - fi - esac - - shared_flag='-shared' - else - # not using gcc - if test "$host_cpu" = ia64; then - shared_flag='${wl}-G' - else - if test "$aix_use_runtimelinking" = yes; then - shared_flag='${wl}-G' - else - shared_flag='${wl}-bM:SRE' - fi - fi - fi - - # It seems that -bexpall can do strange things, so it is better to - # generate a list of symbols to export. - always_export_symbols=yes - if test "$aix_use_runtimelinking" = yes; then - # Warning - without using the other runtime loading flags (-brtl), - # -berok will link without error, but may produce a broken library. - allow_undefined_flag='-berok' - hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib' - archive_expsym_cmds="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag" - else - if test "$host_cpu" = ia64; then - hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib' - allow_undefined_flag="-z nodefs" - archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname ${wl}-h$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" - else - hardcode_libdir_flag_spec='${wl}-bnolibpath ${wl}-blibpath:$libdir:/usr/lib:/lib' - # Warning - without using the other run time loading flags, - # -berok will link without error, but may produce a broken library. - allow_undefined_flag='${wl}-berok' - # This is a bit strange, but is similar to how AIX traditionally builds - # it's shared libraries. - archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"' ~$AR -crlo $objdir/$libname$release.a $objdir/$soname' - fi - fi - ;; - - amigaos*) - archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - # see comment about different semantics on the GNU ld section - ld_shlibs=no - ;; - - cygwin* | mingw* | pw32*) - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - # hardcode_libdir_flag_spec is actually meaningless, as there is - # no search path for DLLs. - hardcode_libdir_flag_spec=' ' - allow_undefined_flag=unsupported - # Tell ltmain to make .lib files, not .a files. - libext=lib - # FIXME: Setting linknames here is a bad hack. - archive_cmds='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | sed -e '\''s/ -lc$//'\''` -link -dll~linknames=' - # The linker will automatically build a .lib file if we build a DLL. - old_archive_from_new_cmds='true' - # FIXME: Should let the user specify the lib program. - old_archive_cmds='lib /OUT:$oldlib$oldobjs$old_deplibs' - fix_srcfile_path='`cygpath -w "$srcfile"`' - ;; - - darwin* | rhapsody*) - case "$host_os" in - rhapsody* | darwin1.[[012]]) - allow_undefined_flag='-undefined suppress' - ;; - *) # Darwin 1.3 on - allow_undefined_flag='-flat_namespace -undefined suppress' - ;; - esac - # FIXME: Relying on posixy $() will cause problems for - # cross-compilation, but unfortunately the echo tests do not - # yet detect zsh echo's removal of \ escapes. Also zsh mangles - # `"' quotes if we put them in here... so don't! - archive_cmds='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs && $CC $(test .$module = .yes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib ${lib}-master.o $deplibs$linker_flags $(test .$module != .yes && echo -install_name $rpath/$soname $verstring)' - # We need to add '_' to the symbols in $export_symbols first - #archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols' - hardcode_direct=yes - hardcode_shlibpath_var=no - whole_archive_flag_spec='-all_load $convenience' - ;; - - freebsd1*) - ld_shlibs=no - ;; - - # 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 - # does not break anything, and helps significantly (at the cost of a little - # extra space). - freebsd2.2*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - # Unfortunately, older versions of FreeBSD 2 do not have this feature. - freebsd2*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes - hardcode_minus_L=yes - hardcode_shlibpath_var=no - ;; - - # FreeBSD 3 and greater uses gcc -shared to do shared libraries. - freebsd*) - archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - hpux9* | hpux10* | hpux11*) - case $host_os in - hpux9*) archive_cmds='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' ;; - *) archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' ;; - esac - hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' - hardcode_libdir_separator=: - hardcode_direct=yes - hardcode_minus_L=yes # Not in the search PATH, but as the default - # location of the library. - export_dynamic_flag_spec='${wl}-E' - ;; - - irix5* | irix6* | nonstopux*) - if test "$GCC" = yes; then - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - else - archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' - hardcode_libdir_flag_spec='-rpath $libdir' - fi - hardcode_libdir_separator=: - link_all_deplibs=yes - ;; - - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out - else - archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF - fi - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - newsos6) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - hardcode_libdir_separator=: - hardcode_shlibpath_var=no - ;; - - openbsd*) - hardcode_direct=yes - hardcode_shlibpath_var=no - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - hardcode_libdir_flag_spec='${wl}-rpath,$libdir' - export_dynamic_flag_spec='${wl}-E' - else - case "$host_os" in - openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-R$libdir' - ;; - *) - archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - hardcode_libdir_flag_spec='${wl}-rpath,$libdir' - ;; - esac - fi - ;; - - os2*) - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - allow_undefined_flag=unsupported - archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' - old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' - ;; - - osf3*) - if test "$GCC" = yes; then - allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' - archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - else - allow_undefined_flag=' -expect_unresolved \*' - archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' - fi - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - hardcode_libdir_separator=: - ;; - - osf4* | osf5*) # as osf3* with the addition of -msym flag - if test "$GCC" = yes; then - allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' - archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - else - allow_undefined_flag=' -expect_unresolved \*' - archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' - archive_expsym_cmds='for i in `cat $export_symbols`; do printf "-exported_symbol " >> $lib.exp; echo "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~ - $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp' - - #Both c and cxx compiler support -rpath directly - hardcode_libdir_flag_spec='-rpath $libdir' - fi - hardcode_libdir_separator=: - ;; - - sco3.2v5*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_shlibpath_var=no - runpath_var=LD_RUN_PATH - hardcode_runpath_var=yes - export_dynamic_flag_spec='${wl}-Bexport' - ;; - - solaris*) - # gcc --version < 3.0 without binutils cannot create self contained - # shared libraries reliably, requiring libgcc.a to resolve some of - # the object symbols generated in some cases. Libraries that use - # assert need libgcc.a to resolve __eprintf, for example. Linking - # a copy of libgcc.a into every shared library to guarantee resolving - # such symbols causes other problems: According to Tim Van Holder - # , C++ libraries end up with a separate - # (to the application) exception stack for one thing. - no_undefined_flag=' -z defs' - if test "$GCC" = yes; then - case `$CC --version 2>/dev/null` in - [[12]].*) - cat <&2 - -*** Warning: Releases of GCC earlier than version 3.0 cannot reliably -*** create self contained shared libraries on Solaris systems, without -*** introducing a dependency on libgcc.a. Therefore, libtool is disabling -*** -no-undefined support, which will at least allow you to build shared -*** libraries. However, you may find that when you link such libraries -*** into an application without using GCC, you have to manually add -*** \`gcc --print-libgcc-file-name\` to the link command. We urge you to -*** upgrade to a newer version of GCC. Another option is to rebuild your -*** current GCC to use the GNU linker from GNU binutils 2.9.1 or newer. - -EOF - no_undefined_flag= - ;; - esac - fi - # $CC -shared without GNU ld will not create a library from C++ - # object files and a static libstdc++, better avoid it by now - archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' - archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_shlibpath_var=no - case $host_os in - solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; - *) # Supported since Solaris 2.6 (maybe 2.5.1?) - whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;; - esac - link_all_deplibs=yes - ;; - - sunos4*) - if test "x$host_vendor" = xsequent; then - # Use $CC to link under sequent, because it throws in some extra .o - # files that make .init and .fini sections work. - archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' - else - archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' - fi - hardcode_libdir_flag_spec='-L$libdir' - hardcode_direct=yes - hardcode_minus_L=yes - hardcode_shlibpath_var=no - ;; - - sysv4) - case $host_vendor in - sni) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes # is this really true??? - ;; - siemens) - ## LD is ld it makes a PLAMLIB - ## CC just makes a GrossModule. - archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' - reload_cmds='$CC -r -o $output$reload_objs' - hardcode_direct=no - ;; - motorola) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=no #Motorola manual says yes, but my tests say they lie - ;; - esac - runpath_var='LD_RUN_PATH' - hardcode_shlibpath_var=no - ;; - - sysv4.3*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_shlibpath_var=no - export_dynamic_flag_spec='-Bexport' - ;; - - sysv5*) - no_undefined_flag=' -z text' - # $CC -shared without GNU ld will not create a library from C++ - # object files and a static libstdc++, better avoid it by now - archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' - archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' - hardcode_libdir_flag_spec= - hardcode_shlibpath_var=no - runpath_var='LD_RUN_PATH' - ;; - - uts4*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_shlibpath_var=no - ;; - - dgux*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_shlibpath_var=no - ;; - - sysv4*MP*) - if test -d /usr/nec; then - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_shlibpath_var=no - runpath_var=LD_RUN_PATH - hardcode_runpath_var=yes - ld_shlibs=yes - fi - ;; - - sysv4.2uw2*) - archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes - hardcode_minus_L=no - hardcode_shlibpath_var=no - hardcode_runpath_var=yes - runpath_var=LD_RUN_PATH - ;; - - sysv5uw7* | unixware7*) - no_undefined_flag='${wl}-z ${wl}text' - if test "$GCC" = yes; then - archive_cmds='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' - else - archive_cmds='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' - fi - runpath_var='LD_RUN_PATH' - hardcode_shlibpath_var=no - ;; - - *) - ld_shlibs=no - ;; - esac -fi -AC_MSG_RESULT([$ld_shlibs]) -test "$ld_shlibs" = no && can_build_shared=no -## -## END FIXME - -## FIXME: this should be a separate macro -## -# Check hardcoding attributes. -AC_MSG_CHECKING([how to hardcode library paths into programs]) -hardcode_action= -if test -n "$hardcode_libdir_flag_spec" || \ - test -n "$runpath_var"; then - - # We can hardcode non-existant directories. - if test "$hardcode_direct" != no && - # If the only mechanism to avoid hardcoding is shlibpath_var, we - # have to relink, otherwise we might link with an installed library - # when we should be linking with a yet-to-be-installed one - ## test "$hardcode_shlibpath_var" != no && - test "$hardcode_minus_L" != no; then - # Linking always hardcodes the temporary library directory. - hardcode_action=relink - else - # We can link without hardcoding, and we can hardcode nonexisting dirs. - hardcode_action=immediate - fi -else - # We cannot hardcode anything, or else we can only hardcode existing - # directories. - hardcode_action=unsupported -fi -AC_MSG_RESULT([$hardcode_action]) -## -## END FIXME - -## FIXME: this should be a separate macro -## -striplib= -old_striplib= -AC_MSG_CHECKING([whether stripping libraries is possible]) -if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then - test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" - test -z "$striplib" && striplib="$STRIP --strip-unneeded" - AC_MSG_RESULT([yes]) -else - AC_MSG_RESULT([no]) -fi -## -## END FIXME - -reload_cmds='$LD$reload_flag -o $output$reload_objs' -test -z "$deplibs_check_method" && deplibs_check_method=unknown - -## FIXME: this should be a separate macro -## -# PORTME Fill in your ld.so characteristics -AC_MSG_CHECKING([dynamic linker characteristics]) -library_names_spec= -libname_spec='lib$name' -soname_spec= -postinstall_cmds= -postuninstall_cmds= -finish_cmds= -finish_eval= -shlibpath_var= -shlibpath_overrides_runpath=unknown -version_type=none -dynamic_linker="$host_os ld.so" -sys_lib_dlsearch_path_spec="/lib /usr/lib" -sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" - -case $host_os in -aix3*) - version_type=linux - library_names_spec='${libname}${release}.so$versuffix $libname.a' - shlibpath_var=LIBPATH - - # AIX has no versioning support, so we append a major version to the name. - soname_spec='${libname}${release}.so$major' - ;; - -aix4* | aix5*) - version_type=linux - need_lib_prefix=no - need_version=no - hardcode_into_libs=yes - if test "$host_cpu" = ia64; then - # AIX 5 supports IA64 - library_names_spec='${libname}${release}.so$major ${libname}${release}.so$versuffix $libname.so' - shlibpath_var=LD_LIBRARY_PATH - else - # With GCC up to 2.95.x, collect2 would create an import file - # for dependence libraries. The import file would start with - # the line `#! .'. This would cause the generated library to - # depend on `.', always an invalid library. This was fixed in - # development snapshots of GCC prior to 3.0. - case $host_os in - aix4 | aix4.[[01]] | aix4.[[01]].*) - if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' - echo ' yes ' - echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then - : - else - can_build_shared=no - fi - ;; - esac - # AIX (on Power*) has no versioning support, so currently we can - # not hardcode correct soname into executable. Probably we can - # add versioning support to collect2, so additional links can - # be useful in future. - if test "$aix_use_runtimelinking" = yes; then - # If using run time linking (on AIX 4.2 or later) use lib.so - # instead of lib.a to let people know that these are not - # typical AIX shared libraries. - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - else - # We preserve .a as extension for shared libraries through AIX4.2 - # and later when we are not doing run time linking. - library_names_spec='${libname}${release}.a $libname.a' - soname_spec='${libname}${release}.so$major' - fi - shlibpath_var=LIBPATH - fi - hardcode_into_libs=yes - ;; - -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 "X$lib" | $Xsed -e '\''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' - ;; - -beos*) - library_names_spec='${libname}.so' - dynamic_linker="$host_os ld.so" - shlibpath_var=LIBRARY_PATH - ;; - -bsdi4*) - version_type=linux - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' - shlibpath_var=LD_LIBRARY_PATH - sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" - sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" - export_dynamic_flag_spec=-rdynamic - # the default ld.so.conf also contains /usr/contrib/lib and - # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow - # libtool to hard-code these into programs - ;; - -cygwin* | mingw* | pw32*) - version_type=windows - need_version=no - need_lib_prefix=no - case $GCC,$host_os in - yes,cygwin*) - library_names_spec='$libname.dll.a' - soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll' - postinstall_cmds='dlpath=`bash 2>&1 -c '\''. $dir/${file}i;echo \$dlname'\''`~ - dldir=$destdir/`dirname \$dlpath`~ - test -d \$dldir || mkdir -p \$dldir~ - $install_prog .libs/$dlname \$dldir/$dlname' - postuninstall_cmds='dldll=`bash 2>&1 -c '\''. $file; echo \$dlname'\''`~ - dlpath=$dir/\$dldll~ - $rm \$dlpath' - ;; - yes,mingw*) - library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll' - sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g" -e "s,=/,/,g"` - ;; - yes,pw32*) - library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll' - ;; - *) - library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll $libname.lib' - ;; - esac - dynamic_linker='Win32 ld.exe' - # FIXME: first we should search . and the directory the executable is in - shlibpath_var=PATH - ;; - -darwin* | rhapsody*) - dynamic_linker="$host_os dyld" - version_type=darwin - need_lib_prefix=no - need_version=no - # FIXME: Relying on posixy $() will cause problems for - # cross-compilation, but unfortunately the echo tests do not - # yet detect zsh echo's removal of \ escapes. - library_names_spec='${libname}${release}${versuffix}.$(test .$module = .yes && echo so || echo dylib) ${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib) ${libname}.$(test .$module = .yes && echo so || echo dylib)' - soname_spec='${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib)' - shlibpath_overrides_runpath=yes - shlibpath_var=DYLD_LIBRARY_PATH - ;; - -freebsd1*) - dynamic_linker=no - ;; - -freebsd*) - objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` - version_type=freebsd-$objformat - case $version_type in - freebsd-elf*) - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so' - need_version=no - need_lib_prefix=no - ;; - freebsd-*) - library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix' - need_version=yes - ;; - esac - shlibpath_var=LD_LIBRARY_PATH - case $host_os in - freebsd2*) - shlibpath_overrides_runpath=yes - ;; - *) - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - ;; - esac - ;; - -gnu*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so${major} ${libname}.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - hardcode_into_libs=yes - ;; - -hpux9* | hpux10* | hpux11*) - # Give a soname corresponding to the major version so that dld.sl refuses to - # link against other versions. - dynamic_linker="$host_os dld.sl" - version_type=sunos - need_lib_prefix=no - need_version=no - shlibpath_var=SHLIB_PATH - shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH - library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl' - soname_spec='${libname}${release}.sl$major' - # HP-UX runs *really* slowly unless shared libraries are mode 555. - postinstall_cmds='chmod 555 $lib' - ;; - -irix5* | irix6* | nonstopux*) - case $host_os in - nonstopux*) version_type=nonstopux ;; - *) version_type=irix ;; - esac - need_lib_prefix=no - need_version=no - soname_spec='${libname}${release}.so$major' - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so' - case $host_os in - irix5* | nonstopux*) - libsuff= shlibsuff= - ;; - *) - case $LD in # libtool.m4 will add one of these switches to LD - *-32|*"-32 ") libsuff= shlibsuff= libmagic=32-bit;; - *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 libmagic=N32;; - *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;; - *) libsuff= shlibsuff= libmagic=never-match;; - esac - ;; - esac - shlibpath_var=LD_LIBRARY${shlibsuff}_PATH - shlibpath_overrides_runpath=no - sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" - sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" - ;; - -# No shared lib support for Linux oldld, aout, or coff. -linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*) - dynamic_linker=no - ;; - -# This must be Linux ELF. -linux-gnu*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - # This implies no fast_install, which is unacceptable. - # Some rework will be needed to allow for fast_install - # before this can be enabled. - hardcode_into_libs=yes - - # We used to test for /lib/ld.so.1 and disable shared libraries on - # powerpc, because MkLinux only supported shared libraries with the - # GNU dynamic linker. Since this was broken with cross compilers, - # most powerpc-linux boxes support dynamic linking these days and - # people can always --disable-shared, the test was removed, and we - # assume the GNU/Linux dynamic linker is in use. - dynamic_linker='GNU/Linux ld.so' - ;; - -netbsd*) - version_type=sunos - need_lib_prefix=no - need_version=no - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - dynamic_linker='NetBSD (a.out) ld.so' - else - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so' - soname_spec='${libname}${release}.so$major' - dynamic_linker='NetBSD ld.elf_so' - fi - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - ;; - -newsos6) - version_type=linux - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - ;; - -openbsd*) - version_type=sunos - need_lib_prefix=no - need_version=no - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - case "$host_os" in - openbsd2.[[89]] | openbsd2.[[89]].*) - shlibpath_overrides_runpath=no - ;; - *) - shlibpath_overrides_runpath=yes - ;; - esac - else - shlibpath_overrides_runpath=yes - fi - library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - shlibpath_var=LD_LIBRARY_PATH - ;; - -os2*) - libname_spec='$name' - need_lib_prefix=no - library_names_spec='$libname.dll $libname.a' - dynamic_linker='OS/2 ld.exe' - shlibpath_var=LIBPATH - ;; - -osf3* | osf4* | osf5*) - version_type=osf - need_version=no - soname_spec='${libname}${release}.so$major' - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - shlibpath_var=LD_LIBRARY_PATH - sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" - sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" - hardcode_into_libs=yes - ;; - -sco3.2v5*) - version_type=osf - soname_spec='${libname}${release}.so$major' - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - shlibpath_var=LD_LIBRARY_PATH - ;; - -solaris*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - # ldd complains unless libraries are executable - postinstall_cmds='chmod +x $lib' - ;; - -sunos4*) - version_type=sunos - library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' - finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - if test "$with_gnu_ld" = yes; then - need_lib_prefix=no - fi - need_version=yes - ;; - -sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - version_type=linux - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - case $host_vendor in - sni) - shlibpath_overrides_runpath=no - need_lib_prefix=no - export_dynamic_flag_spec='${wl}-Blargedynsym' - runpath_var=LD_RUN_PATH - ;; - siemens) - need_lib_prefix=no - ;; - motorola) - need_lib_prefix=no - need_version=no - shlibpath_overrides_runpath=no - sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' - ;; - esac - ;; - -uts4*) - version_type=linux - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - ;; - -dgux*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - ;; - -sysv4*MP*) - if test -d /usr/nec ;then - version_type=linux - library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so' - soname_spec='$libname.so.$major' - shlibpath_var=LD_LIBRARY_PATH - fi - ;; - -*) - dynamic_linker=no - ;; -esac -AC_MSG_RESULT([$dynamic_linker]) -test "$dynamic_linker" = no && can_build_shared=no -## -## END FIXME - -## FIXME: this should be a separate macro -## -# Report the final consequences. -AC_MSG_CHECKING([if libtool supports shared libraries]) -AC_MSG_RESULT([$can_build_shared]) -## -## END FIXME - -## FIXME: this should be a separate macro -## -AC_MSG_CHECKING([whether to build shared libraries]) -test "$can_build_shared" = "no" && enable_shared=no - -# On AIX, shared libraries and static libraries use the same namespace, and -# are all built from PIC. -case "$host_os" in -aix3*) - test "$enable_shared" = yes && enable_static=no - if test -n "$RANLIB"; then - archive_cmds="$archive_cmds~\$RANLIB \$lib" - postinstall_cmds='$RANLIB $lib' - fi - ;; - -aix4*) - if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then - test "$enable_shared" = yes && enable_static=no - fi - ;; -esac -AC_MSG_RESULT([$enable_shared]) -## -## END FIXME - -## FIXME: this should be a separate macro -## -AC_MSG_CHECKING([whether to build static libraries]) -# Make sure either enable_shared or enable_static is yes. -test "$enable_shared" = yes || enable_static=yes -AC_MSG_RESULT([$enable_static]) -## -## END FIXME - -if test "$hardcode_action" = relink; then - # Fast installation is not supported - enable_fast_install=no -elif test "$shlibpath_overrides_runpath" = yes || - test "$enable_shared" = no; then - # Fast installation is not necessary - enable_fast_install=needless -fi - -variables_saved_for_relink="PATH $shlibpath_var $runpath_var" -if test "$GCC" = yes; then - variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" -fi - -AC_LIBTOOL_DLOPEN_SELF - -## FIXME: this should be a separate macro -## -if test "$enable_shared" = yes && test "$GCC" = yes; then - case $archive_cmds in - *'~'*) - # FIXME: we may have to deal with multi-command sequences. - ;; - '$CC '*) - # Test whether the compiler implicitly links with -lc since on some - # systems, -lgcc has to come before -lc. If gcc already passes -lc - # to ld, don't add -lc before -lgcc. - AC_MSG_CHECKING([whether -lc should be explicitly linked in]) - AC_CACHE_VAL([lt_cv_archive_cmds_need_lc], - [$rm conftest* - echo 'static int dummy;' > conftest.$ac_ext - - if AC_TRY_EVAL(ac_compile); then - soname=conftest - lib=conftest - libobjs=conftest.$ac_objext - deplibs= - wl=$lt_cv_prog_cc_wl - compiler_flags=-v - linker_flags=-v - verstring= - output_objdir=. - libname=conftest - save_allow_undefined_flag=$allow_undefined_flag - allow_undefined_flag= - if AC_TRY_EVAL(archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1) - then - lt_cv_archive_cmds_need_lc=no - else - lt_cv_archive_cmds_need_lc=yes - fi - allow_undefined_flag=$save_allow_undefined_flag - else - cat conftest.err 1>&5 - fi]) - AC_MSG_RESULT([$lt_cv_archive_cmds_need_lc]) - ;; - esac -fi -need_lc=${lt_cv_archive_cmds_need_lc-yes} -## -## END FIXME - -## FIXME: this should be a separate macro -## -# The second clause should only fire when bootstrapping the -# libtool distribution, otherwise you forgot to ship ltmain.sh -# with your package, and you will get complaints that there are -# no rules to generate ltmain.sh. -if test -f "$ltmain"; then - : -else - # If there is no Makefile yet, we rely on a make rule to execute - # `config.status --recheck' to rerun these tests and create the - # libtool script then. - test -f Makefile && make "$ltmain" -fi - -if test -f "$ltmain"; then - trap "$rm \"${ofile}T\"; exit 1" 1 2 15 - $rm -f "${ofile}T" - - echo creating $ofile - - # Now quote all the things that may contain metacharacters while being - # careful not to overquote the AC_SUBSTed values. We take copies of the - # variables and quote the copies for generation of the libtool script. - for var in echo old_CC old_CFLAGS SED \ - AR AR_FLAGS CC LD LN_S NM SHELL \ - reload_flag reload_cmds wl \ - pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \ - thread_safe_flag_spec whole_archive_flag_spec libname_spec \ - library_names_spec soname_spec \ - RANLIB old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \ - old_postuninstall_cmds archive_cmds archive_expsym_cmds postinstall_cmds \ - postuninstall_cmds extract_expsyms_cmds old_archive_from_expsyms_cmds \ - old_striplib striplib file_magic_cmd export_symbols_cmds \ - deplibs_check_method allow_undefined_flag no_undefined_flag \ - finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \ - global_symbol_to_c_name_address \ - hardcode_libdir_flag_spec hardcode_libdir_separator \ - sys_lib_search_path_spec sys_lib_dlsearch_path_spec \ - compiler_c_o compiler_o_lo need_locks exclude_expsyms include_expsyms; do - - case $var in - reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \ - old_postinstall_cmds | old_postuninstall_cmds | \ - export_symbols_cmds | archive_cmds | archive_expsym_cmds | \ - extract_expsyms_cmds | old_archive_from_expsyms_cmds | \ - postinstall_cmds | postuninstall_cmds | \ - finish_cmds | sys_lib_search_path_spec | sys_lib_dlsearch_path_spec) - # Double-quote double-evaled strings. - eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" - ;; - *) - eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\"" - ;; - esac - done - - cat <<__EOF__ > "${ofile}T" -#! $SHELL - -# `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. -# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP) -# NOTE: Changes made to this file will be lost: look at ltmain.sh. -# -# Copyright (C) 1996-2000 Free Software Foundation, Inc. -# Originally by Gordon Matzigkeit , 1996 -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# A sed that does not truncate output. -SED=$lt_SED - -# Sed that helps us avoid accidentally triggering echo(1) options like -n. -Xsed="${SED} -e s/^X//" - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi - -# ### BEGIN LIBTOOL CONFIG - -# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: - -# Shell to use when invoking shell scripts. -SHELL=$lt_SHELL - -# Whether or not to build shared libraries. -build_libtool_libs=$enable_shared - -# Whether or not to build static libraries. -build_old_libs=$enable_static - -# Whether or not to add -lc for building shared libraries. -build_libtool_need_lc=$need_lc - -# Whether or not to optimize for fast installation. -fast_install=$enable_fast_install - -# The host system. -host_alias=$host_alias -host=$host - -# An echo program that does not interpret backslashes. -echo=$lt_echo - -# The archiver. -AR=$lt_AR -AR_FLAGS=$lt_AR_FLAGS - -# The default C compiler. -CC=$lt_CC - -# Is the compiler the GNU C compiler? -with_gcc=$GCC - -# The linker used to build libraries. -LD=$lt_LD - -# Whether we need hard or soft links. -LN_S=$lt_LN_S - -# A BSD-compatible nm program. -NM=$lt_NM - -# A symbol stripping program -STRIP=$STRIP - -# Used to examine libraries when file_magic_cmd begins "file" -MAGIC_CMD=$MAGIC_CMD - -# Used on cygwin: DLL creation program. -DLLTOOL="$DLLTOOL" - -# Used on cygwin: object dumper. -OBJDUMP="$OBJDUMP" - -# Used on cygwin: assembler. -AS="$AS" - -# The name of the directory that contains temporary libtool files. -objdir=$objdir - -# How to create reloadable object files. -reload_flag=$lt_reload_flag -reload_cmds=$lt_reload_cmds - -# How to pass a linker flag through the compiler. -wl=$lt_wl - -# Object file suffix (normally "o"). -objext="$ac_objext" - -# Old archive suffix (normally "a"). -libext="$libext" - -# Executable file suffix (normally ""). -exeext="$exeext" - -# Additional compiler flags for building library objects. -pic_flag=$lt_pic_flag -pic_mode=$pic_mode - -# Does compiler simultaneously support -c and -o options? -compiler_c_o=$lt_compiler_c_o - -# Can we write directly to a .lo ? -compiler_o_lo=$lt_compiler_o_lo - -# Must we lock files when doing compilation ? -need_locks=$lt_need_locks - -# Do we need the lib prefix for modules? -need_lib_prefix=$need_lib_prefix - -# Do we need a version for libraries? -need_version=$need_version - -# Whether dlopen is supported. -dlopen_support=$enable_dlopen - -# Whether dlopen of programs is supported. -dlopen_self=$enable_dlopen_self - -# Whether dlopen of statically linked programs is supported. -dlopen_self_static=$enable_dlopen_self_static - -# Compiler flag to prevent dynamic linking. -link_static_flag=$lt_link_static_flag - -# Compiler flag to turn off builtin functions. -no_builtin_flag=$lt_no_builtin_flag - -# Compiler flag to allow reflexive dlopens. -export_dynamic_flag_spec=$lt_export_dynamic_flag_spec - -# Compiler flag to generate shared objects directly from archives. -whole_archive_flag_spec=$lt_whole_archive_flag_spec - -# Compiler flag to generate thread-safe objects. -thread_safe_flag_spec=$lt_thread_safe_flag_spec - -# Library versioning type. -version_type=$version_type - -# Format of library name prefix. -libname_spec=$lt_libname_spec - -# List of archive names. First name is the real one, the rest are links. -# The last name is the one that the linker finds with -lNAME. -library_names_spec=$lt_library_names_spec - -# The coded name of the library, if different from the real name. -soname_spec=$lt_soname_spec - -# Commands used to build and install an old-style archive. -RANLIB=$lt_RANLIB -old_archive_cmds=$lt_old_archive_cmds -old_postinstall_cmds=$lt_old_postinstall_cmds -old_postuninstall_cmds=$lt_old_postuninstall_cmds - -# Create an old-style archive from a shared archive. -old_archive_from_new_cmds=$lt_old_archive_from_new_cmds - -# Create a temporary old-style archive to link instead of a shared archive. -old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds - -# Commands used to build and install a shared archive. -archive_cmds=$lt_archive_cmds -archive_expsym_cmds=$lt_archive_expsym_cmds -postinstall_cmds=$lt_postinstall_cmds -postuninstall_cmds=$lt_postuninstall_cmds - -# Commands to strip libraries. -old_striplib=$lt_old_striplib -striplib=$lt_striplib - -# Method to check whether dependent libraries are shared objects. -deplibs_check_method=$lt_deplibs_check_method - -# Command to use when deplibs_check_method == file_magic. -file_magic_cmd=$lt_file_magic_cmd - -# Flag that allows shared libraries with undefined symbols to be built. -allow_undefined_flag=$lt_allow_undefined_flag - -# Flag that forces no undefined symbols. -no_undefined_flag=$lt_no_undefined_flag - -# Commands used to finish a libtool library installation in a directory. -finish_cmds=$lt_finish_cmds - -# Same as above, but a single script fragment to be evaled but not shown. -finish_eval=$lt_finish_eval - -# Take the output of nm and produce a listing of raw symbols and C names. -global_symbol_pipe=$lt_global_symbol_pipe - -# Transform the output of nm in a proper C declaration -global_symbol_to_cdecl=$lt_global_symbol_to_cdecl - -# Transform the output of nm in a C name address pair -global_symbol_to_c_name_address=$lt_global_symbol_to_c_name_address - -# This is the shared library runtime path variable. -runpath_var=$runpath_var - -# This is the shared library path variable. -shlibpath_var=$shlibpath_var - -# Is shlibpath searched before the hard-coded library search path? -shlibpath_overrides_runpath=$shlibpath_overrides_runpath - -# How to hardcode a shared library path into an executable. -hardcode_action=$hardcode_action - -# Whether we should hardcode library paths into libraries. -hardcode_into_libs=$hardcode_into_libs - -# Flag to hardcode \$libdir into a binary during linking. -# This must work even if \$libdir does not exist. -hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec - -# Whether we need a single -rpath flag with a separated argument. -hardcode_libdir_separator=$lt_hardcode_libdir_separator - -# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the -# resulting binary. -hardcode_direct=$hardcode_direct - -# Set to yes if using the -LDIR flag during linking hardcodes DIR into the -# resulting binary. -hardcode_minus_L=$hardcode_minus_L - -# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into -# the resulting binary. -hardcode_shlibpath_var=$hardcode_shlibpath_var - -# Variables whose values should be saved in libtool wrapper scripts and -# restored at relink time. -variables_saved_for_relink="$variables_saved_for_relink" - -# Whether libtool must link a program against all its dependency libraries. -link_all_deplibs=$link_all_deplibs - -# Compile-time system search path for libraries -sys_lib_search_path_spec=$lt_sys_lib_search_path_spec - -# Run-time system search path for libraries -sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec - -# Fix the shell variable \$srcfile for the compiler. -fix_srcfile_path="$fix_srcfile_path" - -# Set to yes if exported symbols are required. -always_export_symbols=$always_export_symbols - -# The commands to list exported symbols. -export_symbols_cmds=$lt_export_symbols_cmds - -# The commands to extract the exported symbol list from a shared archive. -extract_expsyms_cmds=$lt_extract_expsyms_cmds - -# Symbols that should not be listed in the preloaded symbols. -exclude_expsyms=$lt_exclude_expsyms - -# Symbols that must always be exported. -include_expsyms=$lt_include_expsyms - -# ### END LIBTOOL CONFIG - -__EOF__ - - case $host_os in - aix3*) - cat <<\EOF >> "${ofile}T" - -# 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. -if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES -fi -EOF - ;; - esac - - case $host_os in - cygwin* | mingw* | pw32* | os2*) - cat <<'EOF' >> "${ofile}T" - # This is a source program that is used to create dlls on Windows - # Don't remove nor modify the starting and closing comments -# /* ltdll.c starts here */ -# #define WIN32_LEAN_AND_MEAN -# #include -# #undef WIN32_LEAN_AND_MEAN -# #include -# -# #ifndef __CYGWIN__ -# # ifdef __CYGWIN32__ -# # define __CYGWIN__ __CYGWIN32__ -# # endif -# #endif -# -# #ifdef __cplusplus -# extern "C" { -# #endif -# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved); -# #ifdef __cplusplus -# } -# #endif -# -# #ifdef __CYGWIN__ -# #include -# DECLARE_CYGWIN_DLL( DllMain ); -# #endif -# HINSTANCE __hDllInstance_base; -# -# BOOL APIENTRY -# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved) -# { -# __hDllInstance_base = hInst; -# return TRUE; -# } -# /* ltdll.c ends here */ - # This is a source program that is used to create import libraries - # on Windows for dlls which lack them. Don't remove nor modify the - # starting and closing comments -# /* impgen.c starts here */ -# /* Copyright (C) 1999-2000 Free Software Foundation, Inc. -# -# This file is part of GNU libtool. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# */ -# -# #include /* for printf() */ -# #include /* for open(), lseek(), read() */ -# #include /* for O_RDONLY, O_BINARY */ -# #include /* for strdup() */ -# -# /* O_BINARY isn't required (or even defined sometimes) under Unix */ -# #ifndef O_BINARY -# #define O_BINARY 0 -# #endif -# -# static unsigned int -# pe_get16 (fd, offset) -# int fd; -# int offset; -# { -# unsigned char b[2]; -# lseek (fd, offset, SEEK_SET); -# read (fd, b, 2); -# return b[0] + (b[1]<<8); -# } -# -# static unsigned int -# pe_get32 (fd, offset) -# int fd; -# int offset; -# { -# unsigned char b[4]; -# lseek (fd, offset, SEEK_SET); -# read (fd, b, 4); -# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24); -# } -# -# static unsigned int -# pe_as32 (ptr) -# void *ptr; -# { -# unsigned char *b = ptr; -# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24); -# } -# -# int -# main (argc, argv) -# int argc; -# char *argv[]; -# { -# int dll; -# unsigned long pe_header_offset, opthdr_ofs, num_entries, i; -# unsigned long export_rva, export_size, nsections, secptr, expptr; -# unsigned long name_rvas, nexp; -# unsigned char *expdata, *erva; -# char *filename, *dll_name; -# -# filename = argv[1]; -# -# dll = open(filename, O_RDONLY|O_BINARY); -# if (dll < 1) -# return 1; -# -# dll_name = filename; -# -# for (i=0; filename[i]; i++) -# if (filename[i] == '/' || filename[i] == '\\' || filename[i] == ':') -# dll_name = filename + i +1; -# -# pe_header_offset = pe_get32 (dll, 0x3c); -# opthdr_ofs = pe_header_offset + 4 + 20; -# num_entries = pe_get32 (dll, opthdr_ofs + 92); -# -# if (num_entries < 1) /* no exports */ -# return 1; -# -# export_rva = pe_get32 (dll, opthdr_ofs + 96); -# export_size = pe_get32 (dll, opthdr_ofs + 100); -# nsections = pe_get16 (dll, pe_header_offset + 4 +2); -# secptr = (pe_header_offset + 4 + 20 + -# pe_get16 (dll, pe_header_offset + 4 + 16)); -# -# expptr = 0; -# for (i = 0; i < nsections; i++) -# { -# char sname[8]; -# unsigned long secptr1 = secptr + 40 * i; -# unsigned long vaddr = pe_get32 (dll, secptr1 + 12); -# unsigned long vsize = pe_get32 (dll, secptr1 + 16); -# unsigned long fptr = pe_get32 (dll, secptr1 + 20); -# lseek(dll, secptr1, SEEK_SET); -# read(dll, sname, 8); -# if (vaddr <= export_rva && vaddr+vsize > export_rva) -# { -# expptr = fptr + (export_rva - vaddr); -# if (export_rva + export_size > vaddr + vsize) -# export_size = vsize - (export_rva - vaddr); -# break; -# } -# } -# -# expdata = (unsigned char*)malloc(export_size); -# lseek (dll, expptr, SEEK_SET); -# read (dll, expdata, export_size); -# erva = expdata - export_rva; -# -# nexp = pe_as32 (expdata+24); -# name_rvas = pe_as32 (expdata+32); -# -# printf ("EXPORTS\n"); -# for (i = 0; i> "${ofile}T" || (rm -f "${ofile}T"; exit 1) - - mv -f "${ofile}T" "$ofile" || \ - (rm -f "$ofile" && cp "${ofile}T" "$ofile" && rm -f "${ofile}T") - chmod +x "$ofile" -fi -## -## END FIXME - -])# _LT_AC_LTCONFIG_HACK - -# AC_LIBTOOL_DLOPEN - enable checks for dlopen support -AC_DEFUN([AC_LIBTOOL_DLOPEN], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])]) - -# AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's -AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])]) - -# AC_ENABLE_SHARED - implement the --enable-shared flag -# Usage: AC_ENABLE_SHARED[(DEFAULT)] -# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to -# `yes'. -AC_DEFUN([AC_ENABLE_SHARED], -[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl -AC_ARG_ENABLE(shared, -changequote(<<, >>)dnl -<< --enable-shared[=PKGS] build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT], -changequote([, ])dnl -[p=${PACKAGE-default} -case $enableval in -yes) enable_shared=yes ;; -no) enable_shared=no ;; -*) - enable_shared=no - # Look at the argument we got. We use all the common list separators. - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," - for pkg in $enableval; do - if test "X$pkg" = "X$p"; then - enable_shared=yes - fi - done - IFS="$ac_save_ifs" - ;; -esac], -enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl -]) - -# AC_DISABLE_SHARED - set the default shared flag to --disable-shared -AC_DEFUN([AC_DISABLE_SHARED], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -AC_ENABLE_SHARED(no)]) - -# AC_ENABLE_STATIC - implement the --enable-static flag -# Usage: AC_ENABLE_STATIC[(DEFAULT)] -# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to -# `yes'. -AC_DEFUN([AC_ENABLE_STATIC], -[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl -AC_ARG_ENABLE(static, -changequote(<<, >>)dnl -<< --enable-static[=PKGS] build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT], -changequote([, ])dnl -[p=${PACKAGE-default} -case $enableval in -yes) enable_static=yes ;; -no) enable_static=no ;; -*) - enable_static=no - # Look at the argument we got. We use all the common list separators. - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," - for pkg in $enableval; do - if test "X$pkg" = "X$p"; then - enable_static=yes - fi - done - IFS="$ac_save_ifs" - ;; -esac], -enable_static=AC_ENABLE_STATIC_DEFAULT)dnl -]) - -# AC_DISABLE_STATIC - set the default static flag to --disable-static -AC_DEFUN([AC_DISABLE_STATIC], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -AC_ENABLE_STATIC(no)]) - - -# AC_ENABLE_FAST_INSTALL - implement the --enable-fast-install flag -# Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)] -# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to -# `yes'. -AC_DEFUN([AC_ENABLE_FAST_INSTALL], -[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl -AC_ARG_ENABLE(fast-install, -changequote(<<, >>)dnl -<< --enable-fast-install[=PKGS] optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT], -changequote([, ])dnl -[p=${PACKAGE-default} -case $enableval in -yes) enable_fast_install=yes ;; -no) enable_fast_install=no ;; -*) - enable_fast_install=no - # Look at the argument we got. We use all the common list separators. - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," - for pkg in $enableval; do - if test "X$pkg" = "X$p"; then - enable_fast_install=yes - fi - done - IFS="$ac_save_ifs" - ;; -esac], -enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl -]) - -# AC_DISABLE_FAST_INSTALL - set the default to --disable-fast-install -AC_DEFUN([AC_DISABLE_FAST_INSTALL], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -AC_ENABLE_FAST_INSTALL(no)]) - -# AC_LIBTOOL_PICMODE - implement the --with-pic flag -# Usage: AC_LIBTOOL_PICMODE[(MODE)] -# Where MODE is either `yes' or `no'. If omitted, it defaults to -# `both'. -AC_DEFUN([AC_LIBTOOL_PICMODE], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -pic_mode=ifelse($#,1,$1,default)]) - - -# AC_PATH_TOOL_PREFIX - find a file program which can recognise shared library -AC_DEFUN([AC_PATH_TOOL_PREFIX], -[AC_MSG_CHECKING([for $1]) -AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, -[case $MAGIC_CMD in - /*) - lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. - ;; - ?:/*) - lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path. - ;; - *) - ac_save_MAGIC_CMD="$MAGIC_CMD" - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" -dnl $ac_dummy forces splitting on constant user-supplied paths. -dnl POSIX.2 word splitting is done only on the output of word expansions, -dnl not every word. This closes a longstanding sh security hole. - ac_dummy="ifelse([$2], , $PATH, [$2])" - for ac_dir in $ac_dummy; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$1; then - lt_cv_path_MAGIC_CMD="$ac_dir/$1" - if test -n "$file_magic_test_file"; then - case $deplibs_check_method in - "file_magic "*) - file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" - MAGIC_CMD="$lt_cv_path_MAGIC_CMD" - if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | - egrep "$file_magic_regex" > /dev/null; then - : - else - cat <&2 - -*** Warning: the command libtool uses to detect shared libraries, -*** $file_magic_cmd, produces output that libtool cannot recognize. -*** The result is that libtool may fail to recognize shared libraries -*** as such. This will affect the creation of libtool libraries that -*** depend on shared libraries, but programs linked with such libtool -*** libraries will work regardless of this problem. Nevertheless, you -*** may want to report the problem to your system manager and/or to -*** bug-libtool@gnu.org - -EOF - fi ;; - esac - fi - break - fi - done - IFS="$ac_save_ifs" - MAGIC_CMD="$ac_save_MAGIC_CMD" - ;; -esac]) -MAGIC_CMD="$lt_cv_path_MAGIC_CMD" -if test -n "$MAGIC_CMD"; then - AC_MSG_RESULT($MAGIC_CMD) -else - AC_MSG_RESULT(no) -fi -]) - - -# AC_PATH_MAGIC - find a file program which can recognise a shared library -AC_DEFUN([AC_PATH_MAGIC], -[AC_REQUIRE([AC_CHECK_TOOL_PREFIX])dnl -AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin:$PATH) -if test -z "$lt_cv_path_MAGIC_CMD"; then - if test -n "$ac_tool_prefix"; then - AC_PATH_TOOL_PREFIX(file, /usr/bin:$PATH) - else - MAGIC_CMD=: - fi -fi -]) - - -# AC_PROG_LD - find the path to the GNU or non-GNU linker -AC_DEFUN([AC_PROG_LD], -[AC_ARG_WITH(gnu-ld, -[ --with-gnu-ld assume the C compiler uses GNU ld [default=no]], -test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no) -AC_REQUIRE([AC_PROG_CC])dnl -AC_REQUIRE([CL_CANONICAL_HOST])dnl -AC_REQUIRE([AC_CANONICAL_BUILD])dnl -AC_REQUIRE([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR])dnl -ac_prog=ld -if test "$GCC" = yes; then - # Check if gcc -print-prog-name=ld gives a path. - AC_MSG_CHECKING([for ld used by GCC]) - case $host in - *-*-mingw*) - # gcc leaves a trailing carriage return which upsets mingw - ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; - *) - ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; - esac - case $ac_prog in - # Accept absolute paths. - [[\\/]]* | [[A-Za-z]]:[[\\/]]*) - re_direlt='/[[^/]][[^/]]*/\.\./' - # Canonicalize the path of ld - ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` - while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do - ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` - done - test -z "$LD" && LD="$ac_prog" - ;; - "") - # If it fails, then pretend we aren't using GCC. - ac_prog=ld - ;; - *) - # If it is relative, then search for the first ld in PATH. - with_gnu_ld=unknown - ;; - esac -elif test "$with_gnu_ld" = yes; then - AC_MSG_CHECKING([for GNU ld]) -else - AC_MSG_CHECKING([for non-GNU ld]) -fi -AC_CACHE_VAL(lt_cv_path_LD, -[if test -z "$LD"; then - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH; do - test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then - lt_cv_path_LD="$ac_dir/$ac_prog" - # Check to see if the program is GNU ld. I'd rather use --version, - # but apparently some GNU ld's only accept -v. - # Break only if it was the GNU/non-GNU ld that we prefer. - if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then - test "$with_gnu_ld" != no && break - else - test "$with_gnu_ld" != yes && break - fi - fi - done - IFS="$ac_save_ifs" -else - lt_cv_path_LD="$LD" # Let the user override the test with a path. -fi]) -LD="$lt_cv_path_LD" -if test -n "$LD"; then - AC_MSG_RESULT($LD) -else - AC_MSG_RESULT(no) -fi -test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) -AC_PROG_LD_GNU -]) - -# AC_PROG_LD_GNU - -AC_DEFUN([AC_PROG_LD_GNU], -[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld, -[# I'd rather use --version here, but apparently some GNU ld's only accept -v. -if $LD -v 2>&1 &5; then - lt_cv_prog_gnu_ld=yes -else - lt_cv_prog_gnu_ld=no -fi]) -with_gnu_ld=$lt_cv_prog_gnu_ld -]) - -# AC_PROG_LD_RELOAD_FLAG - find reload flag for linker -# -- PORTME Some linkers may need a different reload flag. -AC_DEFUN([AC_PROG_LD_RELOAD_FLAG], -[AC_CACHE_CHECK([for $LD option to reload object files], lt_cv_ld_reload_flag, -[lt_cv_ld_reload_flag='-r']) -reload_flag=$lt_cv_ld_reload_flag -test -n "$reload_flag" && reload_flag=" $reload_flag" -]) - -# AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies -# -- PORTME fill in with the dynamic library characteristics -AC_DEFUN([AC_DEPLIBS_CHECK_METHOD], -[AC_CACHE_CHECK([how to recognise dependent libraries], -lt_cv_deplibs_check_method, -[lt_cv_file_magic_cmd='$MAGIC_CMD' -lt_cv_file_magic_test_file= -lt_cv_deplibs_check_method='unknown' -# Need to set the preceding variable on all platforms that support -# interlibrary dependencies. -# 'none' -- dependencies not supported. -# `unknown' -- same as none, but documents that we really don't know. -# 'pass_all' -- all dependencies passed with no checks. -# 'test_compile' -- check by making test program. -# 'file_magic [[regex]]' -- check by looking for files in library path -# which responds to the $file_magic_cmd with a given egrep regex. -# If you have `file' or equivalent on your system and you're not sure -# whether `pass_all' will *always* work, you probably want this one. - -case $host_os in -aix4* | aix5*) - lt_cv_deplibs_check_method=pass_all - ;; - -beos*) - lt_cv_deplibs_check_method=pass_all - ;; - -bsdi4*) - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)' - lt_cv_file_magic_cmd='/usr/bin/file -L' - lt_cv_file_magic_test_file=/shlib/libc.so - ;; - -cygwin* | mingw* | pw32*) - lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' - lt_cv_file_magic_cmd='$OBJDUMP -f' - ;; - -darwin* | rhapsody*) - lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library' - lt_cv_file_magic_cmd='/usr/bin/file -L' - case "$host_os" in - rhapsody* | darwin1.[[012]]) - lt_cv_file_magic_test_file=`echo /System/Library/Frameworks/System.framework/Versions/*/System | head -1` - ;; - *) # Darwin 1.3 on - lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib' - ;; - esac - ;; - -freebsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - case $host_cpu in - i*86 ) - # Not sure whether the presence of OpenBSD here was a mistake. - # Let's accept both of them until this is cleared up. - lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[[3-9]]86 (compact )?demand paged shared library' - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` - ;; - esac - else - lt_cv_deplibs_check_method=pass_all - fi - ;; - -gnu*) - lt_cv_deplibs_check_method=pass_all - ;; - -hpux10.20*|hpux11*) - lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library' - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=/usr/lib/libc.sl - ;; - -irix5* | irix6* | nonstopux*) - case $host_os in - irix5* | nonstopux*) - # this will be overridden with pass_all, but let us keep it just in case - lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1" - ;; - *) - case $LD in - *-32|*"-32 ") libmagic=32-bit;; - *-n32|*"-n32 ") libmagic=N32;; - *-64|*"-64 ") libmagic=64-bit;; - *) libmagic=never-match;; - esac - # this will be overridden with pass_all, but let us keep it just in case - lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[[1234]] dynamic lib MIPS - version 1" - ;; - esac - lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*` - lt_cv_deplibs_check_method=pass_all - ;; - -# This must be Linux ELF. -linux-gnu*) - case $host_cpu in - alpha* | hppa* | i*86 | mips | mipsel | powerpc* | sparc* | ia64*) - lt_cv_deplibs_check_method=pass_all ;; - *) - # glibc up to 2.1.1 does not perform some relocations on ARM - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' ;; - esac - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[[^/\.]]+\.so\.[[0-9]]+\.[[0-9]]+$' - else - lt_cv_deplibs_check_method='match_pattern /lib[[^/\.]]+\.so$' - fi - ;; - -newos6*) - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)' - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=/usr/lib/libnls.so - ;; - -openbsd*) - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB shared object' - else - lt_cv_deplibs_check_method='file_magic OpenBSD.* shared library' - fi - ;; - -osf3* | osf4* | osf5*) - # this will be overridden with pass_all, but let us keep it just in case - lt_cv_deplibs_check_method='file_magic COFF format alpha shared library' - lt_cv_file_magic_test_file=/shlib/libc.so - lt_cv_deplibs_check_method=pass_all - ;; - -sco3.2v5*) - lt_cv_deplibs_check_method=pass_all - ;; - -solaris*) - lt_cv_deplibs_check_method=pass_all - lt_cv_file_magic_test_file=/lib/libc.so - ;; - -sysv5uw[[78]]* | sysv4*uw2*) - lt_cv_deplibs_check_method=pass_all - ;; - -sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - case $host_vendor in - motorola) - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]' - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` - ;; - ncr) - lt_cv_deplibs_check_method=pass_all - ;; - sequent) - lt_cv_file_magic_cmd='/bin/file' - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' - ;; - sni) - lt_cv_file_magic_cmd='/bin/file' - lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib" - lt_cv_file_magic_test_file=/lib/libc.so - ;; - siemens) - lt_cv_deplibs_check_method=pass_all - ;; - esac - ;; -esac -]) -file_magic_cmd=$lt_cv_file_magic_cmd -deplibs_check_method=$lt_cv_deplibs_check_method -]) - - -# AC_PROG_NM - find the path to a BSD-compatible name lister -AC_DEFUN([AC_PROG_NM], -[AC_REQUIRE([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR])dnl -AC_MSG_CHECKING([for BSD-compatible nm]) -AC_CACHE_VAL(lt_cv_path_NM, -[if test -n "$NM"; then - # Let the user override the test. - lt_cv_path_NM="$NM" -else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do - test -z "$ac_dir" && ac_dir=. - tmp_nm=$ac_dir/${ac_tool_prefix}nm - if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then - # Check to see if the nm accepts a BSD-compat flag. - # Adding the `sed 1q' prevents false positives on HP-UX, which says: - # nm: unknown option "B" ignored - # Tru64's nm complains that /dev/null is an invalid object file - if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then - lt_cv_path_NM="$tmp_nm -B" - break - elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then - lt_cv_path_NM="$tmp_nm -p" - break - else - lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but - continue # so that we can try to find one that supports BSD flags - fi - fi - done - IFS="$ac_save_ifs" - test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm -fi]) -NM="$lt_cv_path_NM" -AC_MSG_RESULT([$NM]) -]) - -# AC_CHECK_LIBM - check for math library -AC_DEFUN([AC_CHECK_LIBM], -[AC_REQUIRE([CL_CANONICAL_HOST])dnl -LIBM= -case $host in -*-*-beos* | *-*-cygwin* | *-*-pw32*) - # These system don't have libm - ;; -*-ncr-sysv4.3*) - AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw") - AC_CHECK_LIB(m, main, LIBM="$LIBM -lm") - ;; -*) - AC_CHECK_LIB(m, main, LIBM="-lm") - ;; -esac -]) - -# AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for -# the libltdl convenience library and LTDLINCL to the include flags for -# the libltdl header and adds --enable-ltdl-convenience to the -# configure arguments. Note that LIBLTDL and LTDLINCL are not -# AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If DIR is not -# provided, it is assumed to be `libltdl'. LIBLTDL will be prefixed -# with '${top_builddir}/' and LTDLINCL will be prefixed with -# '${top_srcdir}/' (note the single quotes!). If your package is not -# flat and you're not using automake, define top_builddir and -# top_srcdir appropriately in the Makefiles. -AC_DEFUN([AC_LIBLTDL_CONVENIENCE], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl - case $enable_ltdl_convenience in - no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;; - "") enable_ltdl_convenience=yes - ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;; - esac - LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la - LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) - # For backwards non-gettext consistent compatibility... - INCLTDL="$LTDLINCL" -]) - -# AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for -# the libltdl installable library and LTDLINCL to the include flags for -# the libltdl header and adds --enable-ltdl-install to the configure -# arguments. Note that LIBLTDL and LTDLINCL are not AC_SUBSTed, nor is -# AC_CONFIG_SUBDIRS called. If DIR is not provided and an installed -# libltdl is not found, it is assumed to be `libltdl'. LIBLTDL will -# be prefixed with '${top_builddir}/' and LTDLINCL will be prefixed -# with '${top_srcdir}/' (note the single quotes!). If your package is -# not flat and you're not using automake, define top_builddir and -# top_srcdir appropriately in the Makefiles. -# In the future, this macro may have to be called after AC_PROG_LIBTOOL. -AC_DEFUN([AC_LIBLTDL_INSTALLABLE], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl - AC_CHECK_LIB(ltdl, main, - [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no], - [if test x"$enable_ltdl_install" = xno; then - AC_MSG_WARN([libltdl not installed, but installation disabled]) - else - enable_ltdl_install=yes - fi - ]) - if test x"$enable_ltdl_install" = x"yes"; then - ac_configure_args="$ac_configure_args --enable-ltdl-install" - LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la - LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) - else - ac_configure_args="$ac_configure_args --enable-ltdl-install=no" - LIBLTDL="-lltdl" - LTDLINCL= - fi - # For backwards non-gettext consistent compatibility... - INCLTDL="$LTDLINCL" -]) - -# old names -AC_DEFUN([AM_PROG_LIBTOOL], [AC_PROG_LIBTOOL]) -AC_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) -AC_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) -AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) -AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) -AC_DEFUN([AM_PROG_LD], [AC_PROG_LD]) -AC_DEFUN([AM_PROG_NM], [AC_PROG_NM]) - -# This is just to silence aclocal about the macro not being used -ifelse([AC_DISABLE_FAST_INSTALL]) - -############################################################ -# NOTE: This macro has been submitted for inclusion into # -# GNU Autoconf as AC_PROG_SED. When it is available in # -# a released version of Autoconf we should remove this # -# macro and use it instead. # -############################################################ -# LT_AC_PROG_SED -# -------------- -# Check for a fully-functional sed program, that truncates -# as few characters as possible. Prefer GNU sed if found. -AC_DEFUN([LT_AC_PROG_SED], -[AC_MSG_CHECKING([for a sed that does not truncate output]) -AC_CACHE_VAL(lt_cv_path_SED, -[# Loop through the user's path and test for sed and gsed. -# Then use that list of sed's as ones to test for truncation. -as_executable_p="test -f" -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in sed gsed; do - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then - _sed_list="$_sed_list $as_dir/$ac_prog$ac_exec_ext" - fi - done - done -done - - # Create a temporary directory, and hook for its removal unless debugging. -$debug || -{ - trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 - trap '{ (exit 1); exit 1; }' 1 2 13 15 -} - -# Create a (secure) tmp directory for tmp files. -: ${TMPDIR=/tmp} -{ - tmp=`(umask 077 && mktemp -d -q "$TMPDIR/sedXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" -} || -{ - tmp=$TMPDIR/sed$$-$RANDOM - (umask 077 && mkdir $tmp) -} || -{ - echo "$me: cannot create a temporary directory in $TMPDIR" >&2 - { (exit 1); exit 1; } -} - _max=0 - _count=0 - # Add /usr/xpg4/bin/sed as it is typically found on Solaris - # along with /bin/sed that truncates output. - for _sed in $_sed_list /usr/xpg4/bin/sed; do - test ! -f ${_sed} && break - cat /dev/null > "$tmp/sed.in" - _count=0 - echo ${ECHO_N-$ac_n} "0123456789${ECHO_C-$ac_c}" >"$tmp/sed.in" - # Check for GNU sed and select it if it is found. - if "${_sed}" --version 2>&1 < /dev/null | egrep '(GNU)' > /dev/null; then - lt_cv_path_SED=${_sed} - break - fi - while true; do - cat "$tmp/sed.in" "$tmp/sed.in" >"$tmp/sed.tmp" - mv "$tmp/sed.tmp" "$tmp/sed.in" - cp "$tmp/sed.in" "$tmp/sed.nl" - echo >>"$tmp/sed.nl" - ${_sed} -e 's/a$//' < "$tmp/sed.nl" >"$tmp/sed.out" || break - cmp -s "$tmp/sed.out" "$tmp/sed.nl" || break - # 40000 chars as input seems more than enough - test $_count -gt 10 && break - _count=`expr $_count + 1` - if test $_count -gt $_max; then - _max=$_count - lt_cv_path_SED=$_sed - fi - done - done - rm -rf "$tmp" -]) -if test "X$SED" != "X"; then - lt_cv_path_SED=$SED -else - SED=$lt_cv_path_SED -fi -AC_MSG_RESULT([$SED]) -]) DELETED ffcall/m4/ln.m4 Index: ffcall/m4/ln.m4 ================================================================== --- ffcall/m4/ln.m4 +++ /dev/null @@ -1,87 +0,0 @@ -dnl -*- Autoconf -*- -dnl Copyright (C) 1993-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels, Sam Steingold. - -AC_PREREQ(2.13) - -AC_DEFUN([CL_PROG_LN], -[AC_REQUIRE([CL_PROG_CP])dnl -AC_CACHE_CHECK(how to make hard links, cl_cv_prog_LN, [ -rm -f conftestdata conftestfile -echo data > conftestfile -if ln conftestfile conftestdata 2>/dev/null; then - cl_cv_prog_LN=ln -else - cl_cv_prog_LN="$cl_cv_prog_cp" -fi -rm -f conftestdata conftestfile -]) -LN="$cl_cv_prog_LN" -AC_SUBST(LN)dnl -]) - -AC_DEFUN([CL_PROG_LN_S], -[AC_REQUIRE([CL_PROG_LN])dnl -dnl Make a symlink if possible; otherwise try a hard link. On filesystems -dnl which support neither symlink nor hard link, use a plain copy. -AC_MSG_CHECKING(whether ln -s works) -AC_CACHE_VAL(cl_cv_prog_LN_S, [ -rm -f conftestdata -if ln -s X conftestdata 2>/dev/null; then - cl_cv_prog_LN_S="ln -s" -else - cl_cv_prog_LN_S="$cl_cv_prog_LN" -fi -rm -f conftestdata -])dnl -if test "$cl_cv_prog_LN_S" = "ln -s"; then - AC_MSG_RESULT(yes) -else - AC_MSG_RESULT(no) -fi -LN_S="$cl_cv_prog_LN_S" -AC_SUBST(LN_S)dnl -]) - -AC_DEFUN([CL_PROG_HLN], -[AC_REQUIRE([CL_PROG_LN_S])dnl -dnl according to the Linux ln(1): -dnl "making a hard link to a symbolic link is not portable": -dnl SVR4 (Solaris, Linux) create symbolic links -dnl (breaks when the target is relative) -dnl Cygwin (1.3.12) is even worse: it makes hard links to the symbolic link, -dnl instead of resolving the symbolic link. -dnl Good behavior means creating a hard link to the symbolic link's target. -dnl To avoid this, use the "hln" program. -AC_CACHE_CHECK(how to make hard links to symlinks, cl_cv_prog_hln, [ -cl_cv_prog_hln="ln" -if test "$cl_cv_prog_LN_S" = "ln -s"; then -echo "blabla" > conftest.x -ln -s conftest.x conftest.y -mkdir conftest.d -cd conftest.d -ln ../conftest.y conftest.z 2>&AC_FD_CC -data=`cat conftest.z 2>/dev/null` -if test "$data" = "blabla" ; then - # conftest.z contains the correct data -- good! - cl_cv_prog_hln="ln" -else - # ln cannot link to symbolic links - cl_cv_prog_hln="hln" -fi -cd .. -rm -fr conftest.* -else -# If there are no symbolic links, the problem cannot occur. -cl_cv_prog_hln="ln" -fi -]) -HLN="$cl_cv_prog_hln" -AC_SUBST(HLN)dnl -]) DELETED ffcall/m4/longlong.m4 Index: ffcall/m4/longlong.m4 ================================================================== --- ffcall/m4/longlong.m4 +++ /dev/null @@ -1,37 +0,0 @@ -dnl -*- Autoconf -*- -dnl Copyright (C) 1993-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels, Sam Steingold. - -AC_PREREQ(2.57) - -AC_DEFUN([CL_LONGLONG], -[AC_CACHE_CHECK(for long long type, cl_cv_c_longlong, [ -AC_TRY_RUN([int main() -{ -/* long longs don't work right with gcc-2.7.2 on m68k */ -/* long longs don't work right with gcc-2.7.2 on rs6000: avcall/tests.c gets - miscompiled. */ -#if defined(__m68k__) || (defined(_IBMR2) || defined(__powerpc)) -#if defined(__GNUC__) && (__GNUC__ == 2) && (__GNUC_MINOR__ <= 7) - exit(1); -#endif -#endif - { long x = 944938507; long y = 737962842; long z = 162359677; - exit(!(((long long) x)*((long long) y)>>32 == z)); - } -}], -cl_cv_c_longlong=yes, cl_cv_c_longlong=no, -dnl When cross-compiling, don't assume anything. -cl_cv_c_longlong="guessing no") -]) -case "$cl_cv_c_longlong" in - *yes) AC_DEFINE(HAVE_LONGLONG,,[compiler supports the `long long' type]) ;; - *no) ;; -esac -]) DELETED ffcall/m4/mach-vm.m4 Index: ffcall/m4/mach-vm.m4 ================================================================== --- ffcall/m4/mach-vm.m4 +++ /dev/null @@ -1,17 +0,0 @@ -dnl -*- Autoconf -*- -dnl Copyright (C) 1993-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels, Sam Steingold. - -AC_PREREQ(2.57) - -AC_DEFUN([CL_MACH_VM], -[CL_LINK_CHECK([vm_allocate], cl_cv_func_vm, - , [vm_allocate(); task_self();], -AC_DEFINE(HAVE_MACH_VM,,[have vm_allocate() and task_self() functions])dnl -)]) DELETED ffcall/m4/mmap.m4 Index: ffcall/m4/mmap.m4 ================================================================== --- ffcall/m4/mmap.m4 +++ /dev/null @@ -1,144 +0,0 @@ -dnl -*- Autoconf -*- -dnl Copyright (C) 1993-2004 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels, Sam Steingold. - -AC_PREREQ(2.57) - -AC_DEFUN([CL_MMAP], -[AC_REQUIRE([CL_OPENFLAGS])dnl -AC_BEFORE([$0], [CL_MUNMAP])AC_BEFORE([$0], [CL_MPROTECT]) -AC_CHECK_HEADER(sys/mman.h, , no_mmap=1)dnl -if test -z "$no_mmap"; then -AC_CHECK_FUNC(mmap, , no_mmap=1)dnl -if test -z "$no_mmap"; then -AC_DEFINE(HAVE_MMAP,,[have and the mmap() function]) -AC_CACHE_CHECK(for working mmap, cl_cv_func_mmap_works, [ -case "$host" in - i[34567]86-*-sysv4*) - # UNIX_SYSV_UHC_1 - avoid=0x08000000 ;; - mips-sgi-irix* | mips-dec-ultrix*) - # UNIX_IRIX, UNIX_DEC_ULTRIX - avoid=0x10000000 ;; - rs6000-ibm-aix*) - # UNIX_AIX - avoid=0x20000000 ;; - *) - avoid=0 ;; -esac -mmap_prog_1=' -#include -#ifdef HAVE_UNISTD_H -#include -#endif -#include -#ifdef OPEN_NEEDS_SYS_FILE_H -#include -#endif -#include -#include -int main () { -' -mmap_prog_2="#define bits_to_avoid $avoid"' -#define my_shift 24 -#define my_low 1 -#ifdef FOR_SUN4_29 -#define my_high 31 -#define my_size 32768 /* hope that 32768 is a multiple of the page size */ -/* i*32 KB for i=1..31 gives a total of 15.5 MB, which is close to what we need */ -#else -#define my_high 64 -#define my_size 8192 /* hope that 8192 is a multiple of the page size */ -/* i*8 KB for i=1..64 gives a total of 16.25 MB, which is close to what we need */ -#endif - {long i; -#define i_ok(i) ((i) & (bits_to_avoid >> my_shift) == 0) - for (i=my_low; i<=my_high; i++) - if (i_ok(i)) - { caddr_t addr = (caddr_t)(i << my_shift); -/* Check for 8 MB, not 16 MB. This is more likely to work on Solaris 2. */ -#if bits_to_avoid - long size = i*my_size; -#else - long size = ((i+1)/2)*my_size; -#endif - if (mmap(addr,size,PROT_READ|PROT_WRITE,flags|MAP_FIXED,fd,0) == (void*)-1) exit(1); - } -#define x(i) *(unsigned char *) ((i<=my_low; i--) if (i_ok(i)) { if (x(i) != y(i)) exit(1); } - exit(0); -}} -' -AC_TRY_RUN([$mmap_prog_1 - int flags = MAP_ANON | MAP_PRIVATE; - int fd = -1; -$mmap_prog_2 -], have_mmap_anon=1 -cl_cv_func_mmap_anon=yes, rm -f core, -: # When cross-compiling, don't assume anything. -) -AC_TRY_RUN([$mmap_prog_1 - int flags = MAP_ANONYMOUS | MAP_PRIVATE; - int fd = -1; -$mmap_prog_2 -], have_mmap_anon=1 -cl_cv_func_mmap_anonymous=yes, rm -f core, -: # When cross-compiling, don't assume anything. -) -AC_TRY_RUN([$mmap_prog_1 -#ifndef MAP_FILE -#define MAP_FILE 0 -#endif - int flags = MAP_FILE | MAP_PRIVATE; - int fd = open("/dev/zero",O_RDONLY,0666); - if (fd<0) exit(1); -$mmap_prog_2 -], have_mmap_devzero=1 -cl_cv_func_mmap_devzero=yes, rm -f core -retry_mmap=1, -: # When cross-compiling, don't assume anything. -) -if test -n "$retry_mmap"; then -AC_TRY_RUN([#define FOR_SUN4_29 -$mmap_prog_1 -#ifndef MAP_FILE -#define MAP_FILE 0 -#endif - int flags = MAP_FILE | MAP_PRIVATE; - int fd = open("/dev/zero",O_RDONLY,0666); - if (fd<0) exit(1); -$mmap_prog_2 -], have_mmap_devzero=1 -cl_cv_func_mmap_devzero_sun4_29=yes, rm -f core, -: # When cross-compiling, don't assume anything. -) -fi -if test -n "$have_mmap_anon" -o -n "$have_mmap_devzero"; then -cl_cv_func_mmap_works=yes -else -cl_cv_func_mmap_works=no -fi -]) -if test "$cl_cv_func_mmap_anon" = yes; then -AC_DEFINE(HAVE_MMAP_ANON,,[ defines MAP_ANON and mmaping with MAP_ANON works]) -fi -if test "$cl_cv_func_mmap_anonymous" = yes; then -AC_DEFINE(HAVE_MMAP_ANONYMOUS,,[ defines MAP_ANONYMOUS and mmaping with MAP_ANONYMOUS works]) -fi -if test "$cl_cv_func_mmap_devzero" = yes; then -AC_DEFINE(HAVE_MMAP_DEVZERO,,[mmaping of the special device /dev/zero works]) -fi -if test "$cl_cv_func_mmap_devzero_sun4_29" = yes; then -AC_DEFINE(HAVE_MMAP_DEVZERO_SUN4_29,,[mmaping of the special device /dev/zero works, but only on addresses < 2^29]) -fi -fi -fi -]) DELETED ffcall/m4/mprotect.m4 Index: ffcall/m4/mprotect.m4 ================================================================== --- ffcall/m4/mprotect.m4 +++ /dev/null @@ -1,100 +0,0 @@ -dnl -*- Autoconf -*- -dnl Copyright (C) 1993-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels, Sam Steingold. - -AC_PREREQ(2.57) - -AC_DEFUN([CL_MPROTECT], -[AC_REQUIRE([CL_GETPAGESIZE])dnl -AC_REQUIRE([CL_MMAP])dnl -AC_CHECK_FUNCS(mprotect)dnl -if test $ac_cv_func_mprotect = yes; then -AC_CACHE_CHECK(for working mprotect, cl_cv_func_mprotect_works, [ -mprotect_prog=' -#include -/* declare malloc() */ -#include -#ifdef HAVE_UNISTD_H -#include -#endif -/* declare getpagesize() and mprotect() */ -#include -#ifndef HAVE_GETPAGESIZE -#include -#define getpagesize() PAGESIZE -#else -]AC_LANG_EXTERN[ -#if defined(__STDC__) || defined(__cplusplus) -RETGETPAGESIZETYPE getpagesize (void); -#else -RETGETPAGESIZETYPE getpagesize(); -#endif -#endif -char foo; -int main () { - unsigned long pagesize = getpagesize(); -#define page_align(address) (char*)((unsigned long)(address) & -pagesize) -' -AC_TRY_RUN([$mprotect_prog - if ((pagesize-1) & pagesize) exit(1); - exit(0); }], , no_mprotect=1, -# When cross-compiling, don't assume anything. -no_mprotect=1) -mprotect_prog="$mprotect_prog"' - char* area = (char*) malloc(6*pagesize); - char* fault_address = area + pagesize*7/2; -' -if test -z "$no_mprotect"; then -AC_TRY_RUN([$mprotect_prog - if (mprotect(page_align(fault_address),pagesize,PROT_NONE) < 0) exit(0); - foo = *fault_address; /* this should cause a core dump */ - exit(0); }], - no_mprotect=1, rm -f core, -: # When cross-compiling, don't assume anything. -) -fi -if test -z "$no_mprotect"; then -AC_TRY_RUN([$mprotect_prog - if (mprotect(page_align(fault_address),pagesize,PROT_NONE) < 0) exit(0); - *fault_address = 'z'; /* this should cause a core dump */ - exit(0); }], - no_mprotect=1, rm -f core, -: # When cross-compiling, don't assume anything. -) -fi -if test -z "$no_mprotect"; then -AC_TRY_RUN([$mprotect_prog - if (mprotect(page_align(fault_address),pagesize,PROT_READ) < 0) exit(0); - *fault_address = 'z'; /* this should cause a core dump */ - exit(0); }], - no_mprotect=1, rm -f core, -: # When cross-compiling, don't assume anything. -) -fi -if test -z "$no_mprotect"; then -AC_TRY_RUN([$mprotect_prog - if (mprotect(page_align(fault_address),pagesize,PROT_READ) < 0) exit(1); - if (mprotect(page_align(fault_address),pagesize,PROT_READ|PROT_WRITE) < 0) exit(1); - *fault_address = 'z'; /* this should not cause a core dump */ - exit(0); }], , no_mprotect=1 -rm -f core, -: # When cross-compiling, don't assume anything. -) -fi -if test -z "$no_mprotect"; then - cl_cv_func_mprotect_works=yes -else - cl_cv_func_mprotect_works=no -fi -]) -if test $cl_cv_func_mprotect_works = yes; then - AC_DEFINE(HAVE_WORKING_MPROTECT,,[have a working mprotect() function]) -fi -fi -]) DELETED ffcall/m4/openflags.m4 Index: ffcall/m4/openflags.m4 ================================================================== --- ffcall/m4/openflags.m4 +++ /dev/null @@ -1,36 +0,0 @@ -dnl -*- Autoconf -*- -dnl Copyright (C) 1993-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels, Sam Steingold. - -AC_PREREQ(2.57) - -AC_DEFUN([CL_OPENFLAGS], -dnl BSD systems require #include for O_RDWR etc. being defined. -[AC_BEFORE([$0], [CL_MMAP]) -AC_CHECK_HEADERS(sys/file.h) -if test $ac_cv_header_sys_file_h = yes; then -openflags_decl=' -#include -#ifdef HAVE_UNISTD_H -#include -#include -#endif -#include -' -openflags_prog='int x = O_RDWR | O_RDONLY | O_WRONLY | O_CREAT | O_TRUNC;' -CL_COMPILE_CHECK([O_RDWR in fcntl.h], cl_cv_decl_O_RDWR_fcntl_h, -$openflags_decl, $openflags_prog, openflags_ok=1)dnl -if test -z "$openflags_ok"; then -dnl CL_COMPILE_CHECK([O_RDWR in sys/file.h], cl_cv_decl_O_RDWR_sys_file_h, -dnl $openflags_decl[#include ], $openflags_prog, -AC_DEFINE(OPEN_NEEDS_SYS_FILE_H,,[need for using open() flags like O_RDWR]) -dnl openflags_ok=1)dnl -fi -fi -]) DELETED ffcall/m4/proto.m4 Index: ffcall/m4/proto.m4 ================================================================== --- ffcall/m4/proto.m4 +++ /dev/null @@ -1,49 +0,0 @@ -dnl Copyright (C) 1993-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels. - -AC_PREREQ(2.13) - -dnl CL_PROTO(IDENTIFIER, ACTION-IF-NOT-FOUND, FINAL-PROTOTYPE) -AC_DEFUN([CL_PROTO], -[AC_MSG_CHECKING([for $1 declaration]) -AC_CACHE_VAL(cl_cv_proto_[$1], [$2 -cl_cv_proto_$1="$3"]) -cl_cv_proto_$1=`echo "[$]cl_cv_proto_$1" | tr -s ' ' | sed -e 's/( /(/'` -AC_MSG_RESULT([$]{ac_t:- - }[$]cl_cv_proto_$1) -]) - -dnl CL_PROTO_RET(INCLUDES, ANSI-DECL, TRAD-DECL, CACHE-ID, TYPE-IF-OK, TYPE-IF-FAILS) -AC_DEFUN([CL_PROTO_RET], -[AC_TRY_COMPILE([$1] -AC_LANG_EXTERN -[#if defined(__STDC__) || defined(__cplusplus) -$2 -#else -$3 -#endif -], [], $4="$5", $4="$6") -]) - -dnl CL_PROTO_TRY(INCLUDES, ANSI-DECL, TRAD-DECL, ACTION-IF-OK, ACTION-IF-FAILS) -AC_DEFUN([CL_PROTO_TRY], -[AC_TRY_COMPILE([$1] -AC_LANG_EXTERN -[#if defined(__STDC__) || defined(__cplusplus) -$2 -#else -$3 -#endif -], [], [$4], [$5]) -]) - -dnl CL_PROTO_CONST(INCLUDES, ANSI-DECL, TRAD-DECL, CACHE-ID) -AC_DEFUN([CL_PROTO_CONST], -[CL_PROTO_TRY([$1], [$2], [$3], $4="", $4="const")] -) DELETED ffcall/m4/ranlib.m4 Index: ffcall/m4/ranlib.m4 ================================================================== --- ffcall/m4/ranlib.m4 +++ /dev/null @@ -1,13 +0,0 @@ -dnl Copyright (C) 1993-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels. - -AC_PREREQ(2.13) - -AC_DEFUN([CL_PROG_RANLIB], -[AC_CHECK_PROG(RANLIB, ranlib, ranlib, true)]) DELETED ffcall/m4/shm.m4 Index: ffcall/m4/shm.m4 ================================================================== --- ffcall/m4/shm.m4 +++ /dev/null @@ -1,54 +0,0 @@ -dnl -*- Autoconf -*- -dnl Copyright (C) 1993-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels, Sam Steingold. - -AC_PREREQ(2.57) - -AC_DEFUN([CL_SHM_H], -[AC_BEFORE([$0], [CL_SHM_RMID])dnl -AC_CHECK_HEADERS(sys/shm.h) -if test $ac_cv_header_sys_shm_h = yes; then -AC_CHECK_HEADERS(sys/ipc.h) -fi -]) - -AC_DEFUN([CL_SHM], -[AC_BEFORE([$0], [CL_SHM_RMID])dnl -if test "$ac_cv_header_sys_shm_h" = yes -a "$ac_cv_header_sys_ipc_h" = yes; then -# This test is from Marcus Daniels -AC_CACHE_CHECK(for working shared memory, cl_cv_sys_shm_works, [ -AC_TRY_RUN([#include -#include -#include -/* try attaching a single segment to multiple addresses */ -#define segsize 0x10000 -#define attaches 128 -#define base_addr 0x01000000 -int main () -{ int shmid, i; char* addr; char* result; - if ((shmid = shmget(IPC_PRIVATE,segsize,0400)) < 0) exit(1); - for (i=0, addr = (char*)0x01000000; i and and shared memory works]) - AC_CHECK_HEADERS(sys/sysmacros.h) - ;; - *) ;; -esac -]) DELETED ffcall/m4/stdc-headers.m4 Index: ffcall/m4/stdc-headers.m4 ================================================================== --- ffcall/m4/stdc-headers.m4 +++ /dev/null @@ -1,24 +0,0 @@ -dnl Copyright (C) 1993-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible, Marcus Daniels. - -AC_PREREQ(2.13) - -AC_DEFUN([CL_STDC_HEADERS], -dnl This is AC_STDC_HEADERS from Autoconf 1.2. The AC_STDC_HEADERS from -dnl Autoconf 1.3 fails on 386BSD because it checks for correct ANSI ctype -dnl macros and 386BSD (as well as SGI's /bin/cc from Irix-4.0.5) doesn't -dnl have them. But we don't need them! -dnl The same holds for the mem* functions in and SunOS. -[CL_CPP_CHECK([ANSI C header files], cl_cv_header_stdc, -[#include -#include -#include -#include -#include ], AC_DEFINE(STDC_HEADERS)) -]) DELETED ffcall/trampoline/COPYING Index: ffcall/trampoline/COPYING ================================================================== --- ffcall/trampoline/COPYING +++ /dev/null @@ -1,340 +0,0 @@ - GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1989, 1991 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307, - USA. - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -License is intended to guarantee your freedom to share and change free -software--to make sure the software is free for all its users. This -General Public License applies to most of the Free Software -Foundation's software and to any other program whose authors commit to -using it. (Some other Free Software Foundation software is covered by -the GNU Library General Public License instead.) You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if you -distribute copies of the software, or if you modify it. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must give the recipients all the rights that -you have. You must make sure that they, too, receive or can get the -source code. And you must show them these terms so they know their -rights. - - We protect your rights with two steps: (1) copyright the software, and -(2) offer you this license which gives you legal permission to copy, -distribute and/or modify the software. - - Also, for each author's protection and ours, we want to make certain -that everyone understands that there is no warranty for this free -software. If the software is modified by someone else and passed on, we -want its recipients to know that what they have is not the original, so -that any problems introduced by others will not reflect on the original -authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that redistributors of a free -program will individually obtain patent licenses, in effect making the -program proprietary. To prevent this, we have made it clear that any -patent must be licensed for everyone's free use or not licensed at all. - - The precise terms and conditions for copying, distribution and -modification follow. - - GNU GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License applies to any program or other work which contains -a notice placed by the copyright holder saying it may be distributed -under the terms of this General Public License. The "Program", below, -refers to any such program or work, and a "work based on the Program" -means either the Program or any derivative work under copyright law: -that is to say, a work containing the Program or a portion of it, -either verbatim or with modifications and/or translated into another -language. (Hereinafter, translation is included without limitation in -the term "modification".) Each licensee is addressed as "you". - -Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running the Program is not restricted, and the output from the Program -is covered only if its contents constitute a work based on the -Program (independent of having been made by running the Program). -Whether that is true depends on what the Program does. - - 1. You may copy and distribute verbatim copies of the Program's -source code as you receive it, in any medium, provided that you -conspicuously and appropriately publish on each copy an appropriate -copyright notice and disclaimer of warranty; keep intact all the -notices that refer to this License and to the absence of any warranty; -and give any other recipients of the Program a copy of this License -along with the Program. - -You may charge a fee for the physical act of transferring a copy, and -you may at your option offer warranty protection in exchange for a fee. - - 2. You may modify your copy or copies of the Program or any portion -of it, thus forming a work based on the Program, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) You must cause the modified files to carry prominent notices - stating that you changed the files and the date of any change. - - b) You must cause any work that you distribute or publish, that in - whole or in part contains or is derived from the Program or any - part thereof, to be licensed as a whole at no charge to all third - parties under the terms of this License. - - c) If the modified program normally reads commands interactively - when run, you must cause it, when started running for such - interactive use in the most ordinary way, to print or display an - announcement including an appropriate copyright notice and a - notice that there is no warranty (or else, saying that you provide - a warranty) and that users may redistribute the program under - these conditions, and telling the user how to view a copy of this - License. (Exception: if the Program itself is interactive but - does not normally print such an announcement, your work based on - the Program is not required to print an announcement.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Program, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Program, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Program. - -In addition, mere aggregation of another work not based on the Program -with the Program (or with a work based on the Program) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may copy and distribute the Program (or a work based on it, -under Section 2) in object code or executable form under the terms of -Sections 1 and 2 above provided that you also do one of the following: - - a) Accompany it with the complete corresponding machine-readable - source code, which must be distributed under the terms of Sections - 1 and 2 above on a medium customarily used for software interchange; or, - - b) Accompany it with a written offer, valid for at least three - years, to give any third party, for a charge no more than your - cost of physically performing source distribution, a complete - machine-readable copy of the corresponding source code, to be - distributed under the terms of Sections 1 and 2 above on a medium - customarily used for software interchange; or, - - c) Accompany it with the information you received as to the offer - to distribute corresponding source code. (This alternative is - allowed only for noncommercial distribution and only if you - received the program in object code or executable form with such - an offer, in accord with Subsection b above.) - -The source code for a work means the preferred form of the work for -making modifications to it. For an executable work, complete source -code means all the source code for all modules it contains, plus any -associated interface definition files, plus the scripts used to -control compilation and installation of the executable. However, as a -special exception, the source code distributed need not include -anything that is normally distributed (in either source or binary -form) with the major components (compiler, kernel, and so on) of the -operating system on which the executable runs, unless that component -itself accompanies the executable. - -If distribution of executable or object code is made by offering -access to copy from a designated place, then offering equivalent -access to copy the source code from the same place counts as -distribution of the source code, even though third parties are not -compelled to copy the source along with the object code. - - 4. You may not copy, modify, sublicense, or distribute the Program -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense or distribute the Program is -void, and will automatically terminate your rights under this License. -However, parties who have received copies, or rights, from you under -this License will not have their licenses terminated so long as such -parties remain in full compliance. - - 5. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Program or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Program (or any work based on the -Program), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Program or works based on it. - - 6. Each time you redistribute the Program (or any work based on the -Program), the recipient automatically receives a license from the -original licensor to copy, distribute or modify the Program subject to -these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 7. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Program at all. For example, if a patent -license would not permit royalty-free redistribution of the Program by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system, which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 8. If the distribution and/or use of the Program is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Program under this License -may add an explicit geographical distribution limitation excluding -those countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 9. The Free Software Foundation may publish revised and/or new versions -of the General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - -Each version is given a distinguishing version number. If the Program -specifies a version number of this License which applies to it and "any -later version", you have the option of following the terms and conditions -either of that version or of any later version published by the Free -Software Foundation. If the Program does not specify a version number of -this License, you may choose any version ever published by the Free Software -Foundation. - - 10. If you wish to incorporate parts of the Program into other free -programs whose distribution conditions are different, write to the author -to ask for permission. For software which is copyrighted by the Free -Software Foundation, write to the Free Software Foundation; we sometimes -make exceptions for this. Our decision will be guided by the two goals -of preserving the free status of all derivatives of our free software and -of promoting the sharing and reuse of software generally. - - NO WARRANTY - - 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -REPAIR OR CORRECTION. - - 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - - END OF TERMS AND CONDITIONS - - Appendix: How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. - -Also add information on how to contact you by electronic and paper mail. - -If the program is interactive, make it output a short notice like this -when it starts in an interactive mode: - - Gnomovision version 69, Copyright (C) year name of author - Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, the commands you use may -be called something other than `show w' and `show c'; they could even be -mouse-clicks or menu items--whatever suits your program. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the program, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the program - `Gnomovision' (which makes passes at compilers) written by James Hacker. - - , 1 April 1989 - Ty Coon, President of Vice - -This General Public License does not permit incorporating your program into -proprietary programs. If your program is a subroutine library, you may -consider it more useful to permit linking proprietary applications with the -library. If this is what you want to do, use the GNU Library General -Public License instead of this License. DELETED ffcall/trampoline/Makefile.devel Index: ffcall/trampoline/Makefile.devel ================================================================== --- ffcall/trampoline/Makefile.devel +++ /dev/null @@ -1,143 +0,0 @@ -# -*-Makefile-*- - -HOST = i486-linux -CPU = i386 -GCC = gcc -GCCFLAGS = -O2 -fomit-frame-pointer -ASPREFIX = /usr1/gnu/lib -RM = rm -f -ROFF_MAN = groff -Tascii -mandoc - -all : proto-i386.s proto-m68k.s proto-mips.s proto-mipsn32.s proto-mips64.s proto-sparc.s proto-sparc64.s proto-alpha.s proto-hppa.s proto-arm.s proto-rs6000-aix.old.s proto-rs6000-aix.new.s proto-rs6000-sysv4.s proto-rs6000-macos.s proto-m88k.s proto-convex.s proto-ia64.s proto-x86_64.s \ - cache-sparc.S cache-alpha.s cache-hppa.s cache-rs6000-sysv4.s cache-rs6000-macos.s cache-convex.s \ - trampoline.man \ - config.h.msvc config.h.mingw32 - -proto-i386.s : proto.c - $(GCC) -V 2.7.2 -b i486-linuxaout $(GCCFLAGS) -D__i386__ -S proto.c -o $@ - -proto-m68k.s : proto.c - $(GCC) -V egcs-2.91.57 -b m68k-sun $(GCCFLAGS) -D__m68k__ -S proto.c -o $@ - -proto-mips.s : proto.c - $(GCC) -V 2.95.2 -b mips-sgi $(GCCFLAGS) -D__mips__ -S proto.c -o $@ -mabicalls - -proto-mipsn32.s : proto.c - $(GCC) -V 2.95.2 -b mips-sgi-irix6 $(GCCFLAGS) -D__mipsn32__ -S proto.c -o $@ -mabicalls - -proto-mips64.s : proto64.c - $(GCC) -V 2.95.2 -b mips-sgi -mips3 -mlong64 $(GCCFLAGS) -D__mips64__ -S proto64.c -o $@ -mabicalls - -proto-sparc.s : proto.c - $(GCC) -V 2.95.2 -b sparc-sun $(GCCFLAGS) -D__sparc__ -S proto.c -o $@ - -proto-sparc64.s : proto64.c - sparc64-linux-gcc -V 2.95.2 -b sparc64-linux $(GCCFLAGS) -D__sparc64__ -S proto64.c -o $@ - -proto-alpha.s : proto64.c - $(GCC) -V 2.7.2 -b alpha-dec-osf $(GCCFLAGS) -D__alpha__ -S proto64.c -o $@ - -proto-hppa.s : proto.c - $(GCC) -V 2.6.3 -b hppa1.0-hpux $(GCCFLAGS) -D__hppa__ -S proto.c -o $@ - -proto-arm.s : proto.c - $(GCC) -V 2.6.3 -b arm-acorn-riscix $(GCCFLAGS) -D__arm__ -S proto.c -o $@ - -proto-rs6000-aix.old.s : proto.c - $(GCC) -V 2.95.2 -b rs6000 -mno-power -mno-power2 -mno-powerpc -mold-mnemonics $(GCCFLAGS) -D__rs6000__ -S proto.c -o $@ - -proto-rs6000-aix.new.s : proto.c - $(GCC) -V 2.95.2 -b rs6000 -mno-power -mno-power2 -mno-powerpc -mnew-mnemonics $(GCCFLAGS) -D__rs6000__ -S proto.c -o $@ - -proto-rs6000-sysv4.s : proto.c - $(GCC) -V 2.95.2 -b ppc-linux -mno-power -mno-power2 -mno-powerpc $(GCCFLAGS) -D__rs6000__ -S proto.c -o $@ - -proto-rs6000-macos.s : proto.c - $(GCC) -V 3.3.2 -b powerpc-darwin $(GCCFLAGS) -D__rs6000__ -S proto.c -o $@ - -proto-m88k.s : proto.c - $(GCC) -V 2.95.2 -b m88k-dgux $(GCCFLAGS) -D__m88k__ -S proto.c -o $@ - -proto-convex.s : proto.c - $(GCC) -V 2.6.3 -b convex-c2 $(GCCFLAGS) -D__convex__ -S proto.c -o $@ - -proto-ia64.s : proto64.c - $(GCC) -V 2.9-ia64-000216 -b ia64-hp-linux $(GCCFLAGS) -D__ia64__ -S proto64.c -o $@ - -proto-x86_64.s : proto64.c - $(GCC) -V 3.2.2 -b x86_64-suse-linux $(GCCFLAGS) -D__x86_64__ -S proto64.c -o $@ - -cache-sparc.S : cache-sparc.c asmsparc.sh - $(GCC) -V 2.95.2 -b sparc-sun $(GCCFLAGS) -D__sparc__ -S $< -o cache-sparc.s - (echo '#include "asmsparc.h"' ; ./asmsparc.sh < cache-sparc.s) > cache-sparc.S - $(RM) cache-sparc.s - -cache-alpha.s : cache-alpha.c - $(GCC) -V 2.7.2 -b alpha-dec-osf $(GCCFLAGS) -D__alpha__ -S $< -o $@ - -cache-hppa.s : cache-hppa.c - $(GCC) -V 2.6.3 -b hppa1.0-hpux $(GCCFLAGS) -D__hppa__ -S $< -o $@ - -cache-rs6000-sysv4.s : cache-rs6000.c - $(GCC) -V 2.95.2 -b ppc-linux -mno-power -mno-power2 -mno-powerpc $(GCCFLAGS) -D__rs6000__ -S $< -o $@ - -cache-rs6000-macos.s : cache-rs6000.c - $(GCC) -V 3.3.2 -b powerpc-darwin $(GCCFLAGS) -D__rs6000__ -S $< -o $@ - -cache-convex.s : cache-convex.c - $(GCC) -V 2.6.3 -b convex-c2 $(GCCFLAGS) -D__convex__ -S $< -o $@ - -trampoline.man : trampoline.3 - $(ROFF_MAN) trampoline.3 > trampoline.man - -config.h.msvc : config.h.in - sed -e 's,^#undef __i386__$$,#define __i386__ 1,' -e 's,^#undef STDC_HEADERS$$,#define STDC_HEADERS 1,' -e 's,^#undef HAVE_GETPAGESIZE$$,#define HAVE_GETPAGESIZE 1 /* fake */,' -e 's,^#undef RETGETPAGESIZETYPE$$,#define RETGETPAGESIZETYPE unsigned long,' -e 's,^#undef CODE_EXECUTABLE$$,#define CODE_EXECUTABLE 1,' < config.h.in > config.h.msvc - -config.h.mingw32 : config.h.in - sed -e 's,^#undef __i386__$$,#define __i386__ 1,' -e 's,^#undef STDC_HEADERS$$,#define STDC_HEADERS 1,' -e 's,^#undef HAVE_GETPAGESIZE$$,#define HAVE_GETPAGESIZE 1 /* fake */,' -e 's,^#undef RETGETPAGESIZETYPE$$,#define RETGETPAGESIZETYPE unsigned long,' -e 's,^#undef CODE_EXECUTABLE$$,#define CODE_EXECUTABLE 1,' < config.h.in > config.h.mingw32 - -tramp-i386.o : tramp-i386.s - $(ASPREFIX)/i486-linux/bin/as tramp-i386.s -o $@ - -tramp-m68k.o : tramp-m68k.s - $(ASPREFIX)/m68k-sun/bin/as tramp-m68k.s -o $@ - -tramp-mips.o : tramp-mips.s - $(ASPREFIX)/mips-sgi/bin/as tramp-mips.s -o $@ - -tramp-mips64.o : tramp-mips64.s - $(ASPREFIX)/mips-sgi/bin/as -mips3 -membedded-pic tramp-mips64.s -o $@ - -tramp-sparc.o : tramp-sparc.s - $(ASPREFIX)/sparc-sun/bin/as tramp-sparc.s -o $@ - -tramp-sparc64.o : tramp-sparc64.s - $(ASPREFIX)/sparc64-linux/bin/as tramp-sparc64.s -o $@ - -tramp-alpha.o : tramp-alpha.s - $(ASPREFIX)/alpha-dec-osf/bin/as tramp-alpha.s -o $@ - -tramp-hppa.o : tramp-hppa.s - $(ASPREFIX)/hppa1.0-hpux/bin/as tramp-hppa.s -o $@ - -tramp-arm.o : tramp-arm.s - $(ASPREFIX)/arm-acorn-riscix/bin/as tramp-arm.s -o $@ - -tramp-rs6000-old.o : tramp-rs6000-old.s - $(ASPREFIX)/rs6000/bin/as tramp-rs6000-old.s -o $@ - -tramp-rs6000-sysv4.o : tramp-rs6000-sysv4.s - $(ASPREFIX)/ppc-linux/bin/as tramp-rs6000-sysv4.s -o $@ - -tramp-m88k.o : tramp-m88k.s - $(ASPREFIX)/m88k-coff/bin/as tramp-m88k.s -o $@ - -tramp-convex.o : tramp-convex.s - $(ASPREFIX)/convex-c2/bin/as tramp-convex.s -o $@ - -tramp-ia64.o : tramp-ia64.s - /nue/usr/ia64-hp-linux/bin/as tramp-ia64.s -o $@ - -tramp-x86_64.o : tramp-x86_64.s - $(ASPREFIX)/x86_64-suse-linux/bin/as tramp-x86_64.s -o $@ - DELETED ffcall/trampoline/Makefile.in Index: ffcall/trampoline/Makefile.in ================================================================== --- ffcall/trampoline/Makefile.in +++ /dev/null @@ -1,171 +0,0 @@ -# Makefile for trampoline - -#### Start of system configuration section. #### - -HOST = @host@ -CPU = @host_cpu@ -OS = @host_os@ - -# Directories used by "make": -srcdir = @srcdir@ - -# Directories used by "make install": -prefix = @prefix@ -local_prefix = /usr/local -exec_prefix = @exec_prefix@ -libdir = @libdir@ -includedir = @includedir@ -mandir = @mandir@ -datadir = @datadir@ -htmldir = $(datadir)/html - -# Programs used by "make": -CC = @CC@ -CFLAGS = @CFLAGS@ -CPP = @CPP@ -INCLUDES = -I. -I$(srcdir) -ASPFLAGS = `if test @AS_UNDERSCORE@ = true; then echo '-DASM_UNDERSCORE'; fi` -AR = ar -AR_FLAGS = rc -RANLIB = @RANLIB@ -RM = rm -f -LN_S = @LN_S@ -@SET_MAKE@ - -# Programs used by "make install": -INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_DATA = @INSTALL_DATA@ - -#### End of system configuration section. #### - -SHELL = /bin/sh - -OBJECTS = trampoline.o @CPU_OBJECTS@ - -all : $(OBJECTS) libtrampoline.a trampoline.h $(srcdir)/trampoline.3 $(srcdir)/trampoline.html - -trampoline.h : $(srcdir)/trampoline.h.in - -$(LN_S) $(srcdir)/trampoline.h.in trampoline.h - -trampoline.o : $(srcdir)/trampoline.c trampoline.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/trampoline.c - -tramp-hppa.o : $(srcdir)/tramp-hppa.s - $(CC) @GCC_X_NONE@ -c $(srcdir)/tramp-hppa.s - -tramp-s390.o : $(srcdir)/tramp-s390.s - $(CC) @GCC_X_NONE@ -c $(srcdir)/tramp-s390.s - -tramp-rs6000.o : tramp-rs6000.s - $(CC) @GCC_X_NONE@ -c tramp-rs6000.s - -tramp-rs6000.s : $(srcdir)/tramp-rs6000.old.S $(srcdir)/tramp-rs6000.new.S - case "$(OS)" in \ - aix3*) syntax=old;; \ - *) syntax=new;; \ - esac; \ - $(CPP) $(srcdir)/tramp-rs6000.$${syntax}.S > tramp-rs6000.s - -tramp-ia64.o : $(srcdir)/tramp-ia64.s - $(CC) @GCC_X_NONE@ -c $(srcdir)/tramp-ia64.s - -cache-sparc.o : cache-sparc.s - $(CC) @GCC_X_NONE@ -c cache-sparc.s - -cache-sparc.s : $(srcdir)/cache-sparc.S - $(CPP) $(ASPFLAGS) $(srcdir)/cache-sparc.S | grep -v '^ *#line' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,//.*$$,,' -e 's,\$$,#,g' > cache-sparc.s - -cache-sparc64.o : cache-sparc64.s - $(CC) @GCC_X_NONE@ -c cache-sparc64.s - -cache-sparc64.s : $(srcdir)/cache-sparc.S - $(CPP) $(ASPFLAGS) $(srcdir)/cache-sparc.S | grep -v '^ *#line' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,//.*$$,,' -e 's,\$$,#,g' > cache-sparc64.s - -cache-alpha.o : $(srcdir)/cache-alpha.s - $(CC) @GCC_X_NONE@ -c $(srcdir)/cache-alpha.s - -cache-hppa.o : $(srcdir)/cache-hppa.s - $(CC) @GCC_X_NONE@ -c $(srcdir)/cache-hppa.s - -cache-rs6000.o : $(srcdir)/cache-rs6000-sysv4.s $(srcdir)/cache-rs6000-macos.s - case "$(OS)" in \ - macos* | darwin*) syntax=macos;; \ - *) syntax=sysv4;; \ - esac; \ - $(CC) @GCC_X_NONE@ -c $(srcdir)/cache-rs6000-$${syntax}.s ; mv cache-rs6000-$${syntax}.o cache-rs6000.o - -cache-convex.o : $(srcdir)/cache-convex.s - $(CC) @GCC_X_NONE@ -c $(srcdir)/cache-convex.s - -libtrampoline.a : $(OBJECTS) - $(RM) libtrampoline.a - $(AR) $(AR_FLAGS) libtrampoline.a $(OBJECTS) - $(RANLIB) libtrampoline.a - -install : all force - if [ ! -d $(DESTDIR)$(prefix) ] ; then mkdir $(DESTDIR)$(prefix) ; fi - if [ ! -d $(DESTDIR)$(exec_prefix) ] ; then mkdir $(DESTDIR)$(exec_prefix) ; fi - if [ ! -d $(DESTDIR)$(libdir) ] ; then mkdir $(DESTDIR)$(libdir) ; fi - $(INSTALL_DATA) libtrampoline.a $(DESTDIR)$(libdir)/libtrampoline.a - if [ ! -d $(DESTDIR)$(includedir) ] ; then mkdir $(DESTDIR)$(includedir) ; fi - $(INSTALL_DATA) trampoline.h $(DESTDIR)$(includedir)/trampoline.h - if [ ! -d $(DESTDIR)$(mandir) ] ; then mkdir $(DESTDIR)$(mandir) ; fi - if [ ! -d $(DESTDIR)$(mandir)/man3 ] ; then mkdir $(DESTDIR)$(mandir)/man3 ; fi - $(INSTALL_DATA) $(srcdir)/trampoline.3 $(DESTDIR)$(mandir)/man3/trampoline.3 - if [ ! -d $(DESTDIR)$(datadir) ] ; then mkdir $(DESTDIR)$(datadir) ; fi - if [ ! -d $(DESTDIR)$(htmldir) ] ; then mkdir $(DESTDIR)$(htmldir) ; fi - $(INSTALL_DATA) $(srcdir)/trampoline.html $(DESTDIR)$(htmldir)/trampoline.html - -installdirs : force - if [ ! -d $(DESTDIR)$(prefix) ] ; then mkdir $(DESTDIR)$(prefix) ; fi - if [ ! -d $(DESTDIR)$(exec_prefix) ] ; then mkdir $(DESTDIR)$(exec_prefix) ; fi - if [ ! -d $(DESTDIR)$(libdir) ] ; then mkdir $(DESTDIR)$(libdir) ; fi - if [ ! -d $(DESTDIR)$(includedir) ] ; then mkdir $(DESTDIR)$(includedir) ; fi - if [ ! -d $(DESTDIR)$(mandir) ] ; then mkdir $(DESTDIR)$(mandir) ; fi - if [ ! -d $(DESTDIR)$(mandir)/man3 ] ; then mkdir $(DESTDIR)$(mandir)/man3 ; fi - if [ ! -d $(DESTDIR)$(datadir) ] ; then mkdir $(DESTDIR)$(datadir) ; fi - if [ ! -d $(DESTDIR)$(htmldir) ] ; then mkdir $(DESTDIR)$(htmldir) ; fi - -uninstall : force - $(RM) $(DESTDIR)$(libdir)/libtrampoline.a - $(RM) $(DESTDIR)$(includedir)/trampoline.h - $(RM) $(DESTDIR)$(mandir)/man3/trampoline.3 - $(RM) $(DESTDIR)$(htmldir)/trampoline.html - -test1.o : $(srcdir)/test1.c trampoline.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/test1.c - -test1 : test1.o $(OBJECTS) - $(CC) $(CFLAGS) @GCC_X_NONE@ test1.o $(OBJECTS) -o test1 - -test2.o : $(srcdir)/test2.c trampoline.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/test2.c - -test2 : test2.o $(OBJECTS) - $(CC) $(CFLAGS) @GCC_X_NONE@ test2.o $(OBJECTS) -o test2 - -check1 : all test1 - ./test1 - -check : all test1 test2 - ./test1 - ./test2 - touch tests.passed.$(HOST) - -extracheck : check - -mostlyclean : clean - -clean : force - $(RM) $(OBJECTS) tramp-rs6000.s cache-sparc.s cache-sparc64.s libtrampoline.a core - $(RM) test1.o test1 test2.o test2 - -distclean : clean - $(RM) config.status config.log config.cache Makefile config.h trampoline.h tests.passed.* - -maintainer-clean : distclean - -force : - - DELETED ffcall/trampoline/Makefile.mingw32 Index: ffcall/trampoline/Makefile.mingw32 ================================================================== --- ffcall/trampoline/Makefile.mingw32 +++ /dev/null @@ -1,94 +0,0 @@ -# -*-Makefile-*- for trampoline - -#### Start of system configuration section. #### - -HOST = i386-pc-win32-gcc -CPU = i386 - -# Directories used by "make": -srcdir = . - -# Directories used by "make install": -prefix = /usr/local -local_prefix = /usr/local -exec_prefix = $(prefix) -libdir = $(exec_prefix)/lib -includedir = $(prefix)/include -mandir = $(prefix)/man - -# Programs used by "make": -CC = gcc -mno-cygwin -CFLAGS = -O -CPP = gcc -E -INCLUDES = -I. -I$(srcdir) -ASPFLAGS = -DASM_UNDERSCORE -AR = ar -AR_FLAGS = rc -RM = rm -f -LN = cp - -# Programs used by "make install": -INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_DATA = @INSTALL_DATA@ - -#### End of system configuration section. #### - -SHELL = /bin/sh - -OBJECTS = trampoline.o - -all : $(OBJECTS) libtrampoline.a trampoline.h $(srcdir)/trampoline.3 $(srcdir)/trampoline.html - -trampoline.h : $(srcdir)/trampoline.h.in - -$(LN) $(srcdir)/trampoline.h.in trampoline.h - -config.h : $(srcdir)/config.h.mingw32 - -$(LN) $(srcdir)/config.h.mingw32 config.h - -trampoline.o : $(srcdir)/trampoline.c trampoline.h config.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/trampoline.c - -trampoline.s : $(srcdir)/trampoline.c trampoline.h config.h - $(CC) $(CFLAGS) $(INCLUDES) -S $(srcdir)/trampoline.c - -libtrampoline.a : $(OBJECTS) - $(RM) libtrampoline.a - $(AR) $(AR_FLAGS) libtrampoline.a $(OBJECTS) - -test1.o : $(srcdir)/test1.c trampoline.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/test1.c - -test1.exe : test1.o $(OBJECTS) - $(CC) $(CFLAGS) test1.o $(OBJECTS) -o test1.exe - -test2.o : $(srcdir)/test2.c trampoline.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/test2.c - -test2.exe : test2.o $(OBJECTS) - $(CC) $(CFLAGS) test2.o $(OBJECTS) -o test2.exe - -check1 : all test1.exe - test1.exe - -check : all test1.exe test2.exe - test1.exe - test2.exe - touch tests.passed.$(HOST) - -extracheck : check - -mostlyclean : clean - -clean : force - $(RM) $(OBJECTS) libtrampoline.a core - $(RM) test1.o test1.exe test2.o test2.exe - -distclean : clean - $(RM) config.status config.log config.cache Makefile config.h trampoline.h tests.passed.* - -maintainer-clean : distclean - -force : - - DELETED ffcall/trampoline/Makefile.msvc Index: ffcall/trampoline/Makefile.msvc ================================================================== --- ffcall/trampoline/Makefile.msvc +++ /dev/null @@ -1,127 +0,0 @@ -# -*- Makefile -*- for trampoline - -#### Start of system configuration section. #### - -# Flags that can be set on the nmake command line: -# MFLAGS={-ML|-MT|-MD} for defining the compilation model -# MFLAGS=-ML (the default) Single-threaded, statically linked - libc.lib -# MFLAGS=-MT Multi-threaded, statically linked - libcmt.lib -# MFLAGS=-MD Multi-threaded, dynamically linked - msvcrt.lib -# DEBUG=1 for compiling with debugging information -# Note that nmake command line flags are automatically passed to subdirectory -# Makefiles. Therefore we don't need to pass them explicitly to subdirectory -# Makefiles, but the subdirectory Makefiles need to have the same defaults. -# Building as a DLL not supported yet. -DLL=0 -!if !defined(DEBUG) -DEBUG=0 -!endif -!if !defined(MFLAGS) -!if !$(DLL) -MFLAGS= -!else -MFLAGS=-MD -!endif -!endif - -!if $(DEBUG) -OPTIMFLAGS = -Od -Z7 -!else -OPTIMFLAGS = -D_NDEBUG -O1 -!endif - -HOST = i386-pc-win32-msvc -CPU = i386 - -# Directories used by "make": -srcdir = . - -# Directories used by "make install": -prefix = /usr/local -local_prefix = /usr/local -exec_prefix = $(prefix) -libdir = $(exec_prefix)/lib -includedir = $(prefix)/include -mandir = $(prefix)/man - -# Programs used by "make": -CC = cl -CFLAGS = $(MFLAGS) $(OPTIMFLAGS) -CPP = cl -E -INCLUDES = -I. -I$(srcdir) -AR = lib -AR_FLAGS = /out: -RM = -del -LN = copy - -# Programs used by "make install": -INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_DATA = @INSTALL_DATA@ - -#### End of system configuration section. #### - -SHELL = /bin/sh - -OBJECTS = trampoline.obj - -all : $(OBJECTS) trampoline.lib trampoline.h $(srcdir)/trampoline.3 $(srcdir)/trampoline.html - -trampoline.h : $(srcdir)/trampoline.h.in - -$(LN) $(srcdir)\trampoline.h.in trampoline.h - -config.h : $(srcdir)/config.h.msvc - -$(LN) $(srcdir)\config.h.msvc config.h - -trampoline.obj : $(srcdir)/trampoline.c trampoline.h config.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/trampoline.c - -trampoline.s : $(srcdir)/trampoline.c trampoline.h config.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/trampoline.c /FAs /Fatrampoline.s - -!if !$(DLL) -trampoline.lib : $(OBJECTS) - $(RM) trampoline.lib - $(AR) $(AR_FLAGS)trampoline.lib $(OBJECTS) -!else -# trampoline.dll and trampoline.lib are created together. -trampoline.lib : $(OBJECTS) - $(CC) $(MFLAGS) -LD $(OBJECTS) -!endif - -test1.obj : $(srcdir)/test1.c trampoline.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/test1.c - -test1.exe : test1.obj $(OBJECTS) - $(RM) test1.ilk - $(CC) $(CFLAGS) test1.obj $(OBJECTS) /Fetest1.exe - -test2.obj : $(srcdir)/test2.c trampoline.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/test2.c - -test2.exe : test2.obj $(OBJECTS) - $(RM) test2.ilk - $(CC) $(CFLAGS) test2.obj $(OBJECTS) /Fetest2.exe - -check1 : all test1.exe - test1.exe - -check : all test1.exe test2.exe - test1.exe - test2.exe - copy nul tests.passed.$(HOST) - -mostlyclean : clean - -clean : force - $(RM) $(OBJECTS) trampoline.lib trampoline.exp trampoline.dll core - $(RM) test1.obj test1.exe test2.obj test2.exe - -distclean : clean - $(RM) config.status config.log config.cache Makefile config.h trampoline.h tests.passed.* - -maintainer-clean : distclean - -force : - - DELETED ffcall/trampoline/PLATFORMS Index: ffcall/trampoline/PLATFORMS ================================================================== --- ffcall/trampoline/PLATFORMS +++ /dev/null @@ -1,19 +0,0 @@ -Supported CPUs: (Put the GNU config.guess values here.) - i386 i486-unknown-linux, i386-unknown-sysv4.0, i386-pc-solaris2.6, - i486-unknown-sco3.2v4.2, i386-pc-cygwin32, i386-pc-win32 - m68k m68k-next-bsd, m68k-next-nextstep3, m68k-sun-sunos4.0, - m68k-unknown-linux - mips mips-sgi-irix4.0.5, mips-sgi-irix5.2, mips-sgi-irix5.3, - mips-sgi-irix6.2, mips-sgi-irix6.4 - sparc sparc-sun-sunos4.1.1, sparc-sun-solaris2.3, sparc-sun-solaris2.4 - alpha alpha-dec-osf3.0, alpha-dec-osf4.0 - hppa hppa1.0-hp-hpux8.00, hppa1.1-hp-hpux9.05, hppa1.1-hp-hpux10.01, - hppa2.0-hp-hpux10.20 - arm -- untested - rs6000 rs6000-ibm-aix3.2.5, powerpc-ibm-aix4.1.4.0, - powerpc-unknown-linux, powerpc-apple-darwin6.8 - m88k m88k-tektronix-sysv3 - convex c32-convex-bsd - ia64 ia64-unknown-linux - x86_64 x86_64-suse-linux - DELETED ffcall/trampoline/PORTING Index: ffcall/trampoline/PORTING ================================================================== --- ffcall/trampoline/PORTING +++ /dev/null @@ -1,95 +0,0 @@ -The list of CPUs and platforms TRAMPOLINE has been ported to can be found -at the top of file trampoline.c. - -To port TRAMPOLINE to a new platform, three issues may have to be resolved: -A. a new CPU - how to build the trampoline? -B. a new OS - how to make code in malloc'ed memory executable? -C. a new CPU or OS - how to flush the instruction cache? - - -A. a new CPU - how to build the trampoline? - - The trampoline is a short sequence of machine instructions which puts - the constant into , then jumps to

. The only - registers that are allowed to be modified are call-used-registers. No - stack manipulations are allowed since the trampoline has to pass its - arguments along to the function at
. - - 1. To find out which instructions are available for "move"/"store" and - "jump", compile proto.c for your CPU: - - make -f Makefile.devel proto-${CPU}.s - or - gcc -O2 -fomit-frame-pointer -S proto.c -o proto-${CPU}.s - - 2. Write down the instructions for the trampoline in a file tramp-${CPU}.s, - using constants for , ,
. Assemble it: - - gcc -c tramp-${CPU}.s - - Verify that the jump actually goes to
. (Beware: Some CPUs have - program-counter relative jumps.) - - gdb tramp-${CPU}.o - disassemble tramp - - 3. Take a hex dump of tramp-${CPU}.o - - hexdump -e '"%06.6_ax " 16/1 " %02X" "\n"' < tramp-${CPU}.o - or - od -tx1 -Ax < tramp-${CPU}.o - or - od -x +x < tramp-${CPU}.o - - Look out for the magic numbers you used for , and -
. - - 4. Write the code which builds up a trampoline in memory, in trampoline.c. - - 5. Try it: - - make - make check1 - - 6. Write the is_tramp() macro and the tramp_xxx() accessor macros - in trampoline.c. - - 7. Try it: - - make - make check - - -B. a new OS - how to make code in malloc'ed memory executable? - - `configure' will find out whether code stored in malloc'ed memory is - executable, or whether virtual memory protections have to be set in order - to allow this. (The test is pretty simple: it copies a small function - to malloc'ed memory and tries to executed it. The test could also fail - because the compiler produced non-position-independent code or because - of alignment issues.) - - To set virtual memory protections on a page of memory, your system should - provide the mprotect() and getpagesize() functions. If it does not, find - a substitute. - - -C. a new CPU or OS - how to flush the instruction cache? - - CPUs which have separate data and instruction caches need to flush - (part of) the instruction cache when alloc_trampoline() is called. - (There may have been an old trampoline at the same location, and the - instruction cache is not updated when the new trampoline is built. - The effect can be that when the new trampoline is called, the old one - will still be executed.) - - To flush the instruction cache, some CPUs have special instruction which - can be put into gcc "asm" statements. On some CPUs these instructions are - privileged, you therefore need to call some system or library function. - On other CPUs, the only way to flush the instruction cache is to execute - a long sequence of "nop" or "jump" instructions. This is hairy. - - -When you are done with porting to a new platform, or even if TRAMPOLINE -passes the "make check" out of the box without modifications, please report -your results to the author of TRAMPOLINE, for inclusion in the next release. DELETED ffcall/trampoline/README Index: ffcall/trampoline/README ================================================================== --- ffcall/trampoline/README +++ /dev/null @@ -1,70 +0,0 @@ -trampoline - closures as first-class C functions. - -This library implements closures as first-class C functions. A closure -consists of a regular C function and a piece of data which gets passed to -the C function when the closure is called. - -Typical uses of closures are nested functions in programming languages, -and call-back functions passed to other libraries. - - -Installation instructions: - - ./configure - make - make check - make install - - -Files in this package: - - Documentation: - - README this text - COPYING free software license - PLATFORMS list of supported platforms - trampoline.3 manual page in Unix man format - trampoline.html manual page in HTML format - - Source: - - trampoline.h.in include file - trampoline.c implementation of the library functions - tramp-hppa.s the trampoline for hppa, in assembly language - tramp-rs6000.S the trampoline for rs6000, in assembly language - protexec.c how to set memory protection to executable, now unused - cache.c how to flush the instruction cache, now unused - test1.c test program - test2.c test program - - Installation: - - configure configuration script - configure.in autoconf-2.12 source for the configuration script - ../autoconf/* auxiliary configuration scripts - Makefile.in Makefile master - config.h.in config.h master - - Porting: - - PORTING porting instructions - Makefile.devel developer's Makefile - proto.c sample source containing assignment and jumping - proto-*.s its translation to assembly language - tramp-*.s the trampoline, in assembly language - tramp-*.o the trampoline, in binary form - - -Copyright notice: - -Copyright 1995 Bruno Haible, - -This is free software distributed under the GNU General Public Licence -described in the file COPYING. Contact the author if you don't have this -or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, -on this software. - - -Bruno Haible - - DELETED ffcall/trampoline/asmsparc.h Index: ffcall/trampoline/asmsparc.h ================================================================== --- ffcall/trampoline/asmsparc.h +++ /dev/null @@ -1,29 +0,0 @@ -// Assembly language support for sparc CPU. -// Bruno Haible 29.5.1999 - -#ifdef ASM_UNDERSCORE -// SunOS4, Linux/a.out -#ifdef __STDC__ -#define C(entrypoint) _##entrypoint -#else -#define C(entrypoint) _/**/entrypoint -#endif -#else -// Solaris, Linux/ELF -#define C(entrypoint) entrypoint -#endif - -// When assembly language code is compiled into a shared library, ELF linkers -// need to know which symbols are functions. -#if defined(__NetBSD__) || defined(__OpenBSD__) -#define DECLARE_FUNCTION(name) .type C(name),@function -#elif defined(__svr4__) || defined(__ELF__) -// Solaris, Linux/ELF -// Some preprocessors keep the backslash in place, some don't. -// Some complain about the # being not in front of an ANSI C macro. -// Therefore we use a dollar, which will be sed-converted to # later. -#define DECLARE_FUNCTION(name) .type C(name),$function -#else -// SunOS4, Linux/a.out -#define DECLARE_FUNCTION(name) -#endif DELETED ffcall/trampoline/asmsparc.sh Index: ffcall/trampoline/asmsparc.sh ================================================================== --- ffcall/trampoline/asmsparc.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/sh -# Translate the assembler syntax of sparc assembler programs -# Usage: asmsparc < sunos4-asm-file > portable-asm-file -# The portable-asm-file has to be -# 1. preprocessed, -# 2. grep -v '^ *#line' | grep -v '^#' -# 3. sed -e 's,% ,%,g' -e 's,//.*$,,' -e 's,\$,#,g' - -tmpscript1=sed$$tmp1 -tmpscript2=sed$$tmp2 -tmpremove='rm -f $tmpscript1 $tmpscript2' -trap "$tmpremove" 1 2 15 - -cat > $tmpscript1 << \EOF -# ----------- Remove gcc self-identification -/gcc2_compiled/d -/gnu_compiled_c/d -EOF - -cat > $tmpscript2 << \EOF -# ----------- Turn # into $, to avoid trouble in preprocessing -s,#,\$,g -# ----------- Declare global symbols as functions (we have no variables) -s/\.global _\([A-Za-z0-9_]*\)$/.global _\1\ - DECLARE_FUNCTION(\1)/ -# ----------- Global symbols depends on ASM_UNDERSCORE -s/_\([A-Za-z0-9_:]*\)/C(\1)/ -EOF - -sed -f $tmpscript1 | \ -sed -f $tmpscript2 - -eval "$tmpremove" DELETED ffcall/trampoline/cache-alpha.c Index: ffcall/trampoline/cache-alpha.c ================================================================== --- ffcall/trampoline/cache-alpha.c +++ /dev/null @@ -1,16 +0,0 @@ -/* Instruction cache flushing for alpha */ - -/* - * Copyright 1997 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -void __TR_clear_cache (void) -{ - /* Taken from gforth-0.3.0. */ - asm volatile ("call_pal 0x86"); /* imb (instruction-memory barrier) */ -} DELETED ffcall/trampoline/cache-alpha.s Index: ffcall/trampoline/cache-alpha.s ================================================================== --- ffcall/trampoline/cache-alpha.s +++ /dev/null @@ -1,17 +0,0 @@ - .set noreorder - .set volatile - .set noat - .file 1 "cache-alpha.c" -gcc2_compiled.: -__gnu_compiled_c: -.text - .align 3 - .globl __TR_clear_cache - .ent __TR_clear_cache -__TR_clear_cache: -__TR_clear_cache..ng: - .frame $30,0,$26,0 - .prologue 0 - call_pal 0x86 - ret $31,($26),1 - .end __TR_clear_cache DELETED ffcall/trampoline/cache-convex.c Index: ffcall/trampoline/cache-convex.c ================================================================== --- ffcall/trampoline/cache-convex.c +++ /dev/null @@ -1,15 +0,0 @@ -/* Instruction cache flushing for convex */ - -/* - * Copyright 1995 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -void __TR_clear_cache (void) -{ - asm volatile ("pich"); -} DELETED ffcall/trampoline/cache-convex.s Index: ffcall/trampoline/cache-convex.s ================================================================== --- ffcall/trampoline/cache-convex.s +++ /dev/null @@ -1,16 +0,0 @@ -;NO_APP -.fpmode native -gcc2_compiled.: -___gnu_compiled_c: -.text -.text -.align 2 -.globl ___TR_clear_cache - ds.b "g263" - ds.b "+00\0" -___TR_clear_cache: -;APP - pich -;NO_APP - rtn - ds.h 0 DELETED ffcall/trampoline/cache-hppa.c Index: ffcall/trampoline/cache-hppa.c ================================================================== --- ffcall/trampoline/cache-hppa.c +++ /dev/null @@ -1,44 +0,0 @@ -/* Instruction cache flushing for hppa */ - -/* - * Copyright 1995-1997 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -/* - * This assumes that the range [first_addr..last_addr] lies in at most two - * cache lines. - */ -void __TR_clear_cache (char* first_addr, char* last_addr) -{ - register int tmp1; - register int tmp2; - /* Flush the relevant data cache lines. (Yes, this is needed. I tried it.) */ - asm volatile ("fdc 0(0,%0)" - "\n\t" "fdc 0(0,%1)" - "\n\t" "sync" - : - : "r" (first_addr), "r" (last_addr) - ); - /* Flush the relevant instruction cache lines. */ - asm volatile ("mfsp %%sr0,%1" - "\n\t" "ldsid (0,%4),%0" - "\n\t" "mtsp %0,%%sr0" - "\n\t" "fic 0(%%sr0,%2)" - "\n\t" "fic 0(%%sr0,%3)" - "\n\t" "sync" - "\n\t" "mtsp %1,%%sr0" - "\n\t" "nop" - "\n\t" "nop" - "\n\t" "nop" - "\n\t" "nop" - "\n\t" "nop" - "\n\t" "nop" - : "=r" (tmp1), "=r" (tmp2) - : "r" (first_addr), "r" (last_addr), "r" (first_addr) - ); -} DELETED ffcall/trampoline/cache-hppa.s Index: ffcall/trampoline/cache-hppa.s ================================================================== --- ffcall/trampoline/cache-hppa.s +++ /dev/null @@ -1,31 +0,0 @@ - .code - .IMPORT $global$,DATA - .IMPORT $$dyncall,MILLICODE -; gcc_compiled.: - .code - - .align 4 - .EXPORT __TR_clear_cache,ENTRY,PRIV_LEV=3,ARGW0=GR,ARGW1=GR - .label __TR_clear_cache - .PROC - .CALLINFO FRAME=0,NO_CALLS - .ENTRY - fdc 0(0,%r26) - fdc 0(0,%r25) - sync - mfsp %sr0,%r19 - ldsid (0,%r26),%r20 - mtsp %r20,%sr0 - fic 0(%sr0,%r26) - fic 0(%sr0,%r25) - sync - mtsp %r19,%sr0 - nop - nop - nop - nop - nop - nop - bv,n 0(%r2) - .EXIT - .PROCEND DELETED ffcall/trampoline/cache-rs6000-macos.s Index: ffcall/trampoline/cache-rs6000-macos.s ================================================================== --- ffcall/trampoline/cache-rs6000-macos.s +++ /dev/null @@ -1,23 +0,0 @@ -.text - .align 2 - .globl ___TR_clear_cache -___TR_clear_cache: - icbi 0,r3; dcbf 0,r3 - addi r0,r3,4 - icbi 0,r0; dcbf 0,r0 - addi r9,r3,8 - icbi 0,r9; dcbf 0,r9 - addi r0,r3,12 - icbi 0,r0; dcbf 0,r0 - addi r9,r3,16 - icbi 0,r9; dcbf 0,r9 - addi r0,r3,20 - icbi 0,r0; dcbf 0,r0 - addi r9,r3,24 - icbi 0,r9; dcbf 0,r9 - addi r0,r3,28 - icbi 0,r0; dcbf 0,r0 - addi r3,r3,32 - icbi 0,r3; dcbf 0,r3 - sync; isync - blr DELETED ffcall/trampoline/cache-rs6000-sysv4.s Index: ffcall/trampoline/cache-rs6000-sysv4.s ================================================================== --- ffcall/trampoline/cache-rs6000-sysv4.s +++ /dev/null @@ -1,35 +0,0 @@ - .file "cache-rs6000.c" -gcc2_compiled.: - .section ".text" - .align 2 - .globl __TR_clear_cache - .type __TR_clear_cache,@function -__TR_clear_cache: - .extern __mulh - .extern __mull - .extern __divss - .extern __divus - .extern __quoss - .extern __quous - icbi 0,3; dcbf 0,3 - addi 0,3,4 - icbi 0,0; dcbf 0,0 - addi 9,3,8 - icbi 0,9; dcbf 0,9 - addi 0,3,12 - icbi 0,0; dcbf 0,0 - addi 9,3,16 - icbi 0,9; dcbf 0,9 - addi 0,3,20 - icbi 0,0; dcbf 0,0 - addi 9,3,24 - icbi 0,9; dcbf 0,9 - addi 0,3,28 - icbi 0,0; dcbf 0,0 - addi 3,3,32 - icbi 0,3; dcbf 0,3 - sync; isync - blr -.Lfe1: - .size __TR_clear_cache,.Lfe1-__TR_clear_cache - .ident "GCC: (GNU) 2.95.2 19991024 (release)" DELETED ffcall/trampoline/cache-rs6000.c Index: ffcall/trampoline/cache-rs6000.c ================================================================== --- ffcall/trampoline/cache-rs6000.c +++ /dev/null @@ -1,25 +0,0 @@ -/* Instruction cache flushing for rs6000, not on AIX */ - -/* - * Copyright 1997-1999 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -void __TR_clear_cache (char* first_addr) -{ - /* Taken from egcs-1.1.2/gcc/config/rs6000/tramp.asm. */ - asm volatile ("icbi 0,%0; dcbf 0,%0" : : "r" (first_addr)); - asm volatile ("icbi 0,%0; dcbf 0,%0" : : "r" (first_addr+4)); - asm volatile ("icbi 0,%0; dcbf 0,%0" : : "r" (first_addr+8)); - asm volatile ("icbi 0,%0; dcbf 0,%0" : : "r" (first_addr+12)); - asm volatile ("icbi 0,%0; dcbf 0,%0" : : "r" (first_addr+16)); - asm volatile ("icbi 0,%0; dcbf 0,%0" : : "r" (first_addr+20)); - asm volatile ("icbi 0,%0; dcbf 0,%0" : : "r" (first_addr+24)); - asm volatile ("icbi 0,%0; dcbf 0,%0" : : "r" (first_addr+28)); - asm volatile ("icbi 0,%0; dcbf 0,%0" : : "r" (first_addr+32)); - asm volatile ("sync; isync"); -} DELETED ffcall/trampoline/cache-sparc.c Index: ffcall/trampoline/cache-sparc.c ================================================================== --- ffcall/trampoline/cache-sparc.c +++ /dev/null @@ -1,23 +0,0 @@ -/* Instruction cache flushing for sparc */ - -/* - * Copyright 1996-1999 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -/* - * This assumes that the range [first_addr..last_addr] lies in at most four - * cache lines. - */ -void __TR_clear_cache_4 (char* first_addr, char* last_addr) -{ - asm volatile ("iflush %0+0;" /* the +0 is needed by gas, says gforth-0.3.0 */ - "iflush %0+8;" - "iflush %0+16;" - "iflush %0+24" - : : "r" (first_addr)); -} DELETED ffcall/trampoline/cache.c Index: ffcall/trampoline/cache.c ================================================================== --- ffcall/trampoline/cache.c +++ /dev/null @@ -1,162 +0,0 @@ -/* This file is derived from gcc-2.6.3/libgcc2.c, section L_clear_cache */ - -/* Copyright (C) 1989, 1992, 1993, 1994 Free Software Foundation, Inc. - -This file is part of GNU CC. - -GNU CC is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GNU CC is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GNU CC; see the file COPYING. If not, write to -the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ - - -/* Clear part of an instruction cache. */ - -/* Our emphasis here is _not_ to clear as few cache lines as possible - * or with as few machine instructions as possible, but to do it _right_. - */ - - - -/* This code is apparently untested!! */ - -#ifdef __m68k__ -#ifdef NeXT -#define CLEAR_INSN_CACHE(BEG, END) \ - asm volatile ("trap #2") -#endif -#endif - -/* This is from Andreas Stolcke . */ -#if defined(__mips__) || defined(__mips64__) -#ifdef ultrix -#include -#else -#include -#endif -#define CLEAR_INSN_CACHE(BEG, END) \ - cacheflush (BEG, END - BEG, BCACHE) -#endif - -#ifdef __convex__ -#define CLEAR_INSN_CACHE(BEG, END) \ - asm ("pich") -#endif - -void -__TR_clear_cache (beg, end) - char *beg, *end; -{ -#ifdef CLEAR_INSN_CACHE - CLEAR_INSN_CACHE (beg, end); -#else -#ifdef INSN_CACHE_SIZE /* This is actually dead code!! */ -#define INSN_CACHE_PLANE_SIZE (INSN_CACHE_SIZE / INSN_CACHE_DEPTH) - static char array[INSN_CACHE_SIZE + INSN_CACHE_PLANE_SIZE + INSN_CACHE_LINE_WIDTH]; - static int initialized = 0; - int offset; - void *start_addr; - void *end_addr; - typedef (*function_ptr) (); - -#if (INSN_CACHE_SIZE / INSN_CACHE_LINE_WIDTH) < 16 - /* It's cheaper to clear the whole cache. - Put in a series of jump instructions so that calling the beginning - of the cache will clear the whole thing. */ - - if (! initialized) - { - int ptr = (((int) array + INSN_CACHE_LINE_WIDTH - 1) - & -INSN_CACHE_LINE_WIDTH); - int end_ptr = ptr + INSN_CACHE_SIZE; - - while (ptr < end_ptr) - { - *(INSTRUCTION_TYPE *)ptr - = JUMP_AHEAD_INSTRUCTION + INSN_CACHE_LINE_WIDTH; - ptr += INSN_CACHE_LINE_WIDTH; - } - *(INSTRUCTION_TYPE *)(ptr - INSN_CACHE_LINE_WIDTH) = RETURN_INSTRUCTION; - - initialized = 1; - } - - /* Call the beginning of the sequence. */ - (((function_ptr) (((int) array + INSN_CACHE_LINE_WIDTH - 1) - & -INSN_CACHE_LINE_WIDTH)) - ()); - -#else /* Cache is large. */ - - if (! initialized) - { - int ptr = (((int) array + INSN_CACHE_LINE_WIDTH - 1) - & -INSN_CACHE_LINE_WIDTH); - - while (ptr < (int) array + sizeof array) - { - *(INSTRUCTION_TYPE *)ptr = RETURN_INSTRUCTION; - ptr += INSN_CACHE_LINE_WIDTH; - } - - initialized = 1; - } - - /* Find the location in array that occupies the same cache line as BEG. */ - - offset = ((int) beg & -INSN_CACHE_LINE_WIDTH) & (INSN_CACHE_PLANE_SIZE - 1); - start_addr = (((int) (array + INSN_CACHE_PLANE_SIZE - 1) - & -INSN_CACHE_PLANE_SIZE) - + offset); - - /* Compute the cache alignment of the place to stop clearing. */ -#if 0 /* This is not needed for gcc's purposes. */ - /* If the block to clear is bigger than a cache plane, - we clear the entire cache, and OFFSET is already correct. */ - if (end < beg + INSN_CACHE_PLANE_SIZE) -#endif - offset = (((int) (end + INSN_CACHE_LINE_WIDTH - 1) - & -INSN_CACHE_LINE_WIDTH) - & (INSN_CACHE_PLANE_SIZE - 1)); - -#if INSN_CACHE_DEPTH > 1 - end_addr = (start_addr & -INSN_CACHE_PLANE_SIZE) + offset; - if (end_addr <= start_addr) - end_addr += INSN_CACHE_PLANE_SIZE; - - for (plane = 0; plane < INSN_CACHE_DEPTH; plane++) - { - int addr = start_addr + plane * INSN_CACHE_PLANE_SIZE; - int stop = end_addr + plane * INSN_CACHE_PLANE_SIZE; - - while (addr != stop) - { - /* Call the return instruction at ADDR. */ - ((function_ptr) addr) (); - - addr += INSN_CACHE_LINE_WIDTH; - } - } -#else /* just one plane */ - do - { - /* Call the return instruction at START_ADDR. */ - ((function_ptr) start_addr) (); - - start_addr += INSN_CACHE_LINE_WIDTH; - } - while ((start_addr % INSN_CACHE_SIZE) != offset); -#endif /* just one plane */ -#endif /* Cache is large */ -#endif /* Cache exists */ -#endif /* CLEAR_INSN_CACHE */ -} DELETED ffcall/trampoline/config.h.in Index: ffcall/trampoline/config.h.in ================================================================== --- ffcall/trampoline/config.h.in +++ /dev/null @@ -1,129 +0,0 @@ -/* These definitions are adjusted by `configure' automatically. */ -/* Bruno Haible 16.7.1997 */ - - -/* CPU */ -#ifndef __i386__ -#undef __i386__ -#endif -#ifndef __m68k__ -#undef __m68k__ -#endif -#ifndef __mips__ -#undef __mips__ -#endif -#ifndef __mipsn32__ -#undef __mipsn32__ -#endif -#ifndef __mips64__ -#undef __mips64__ -#endif -#ifndef __sparc__ -#undef __sparc__ -#endif -#ifndef __sparc64__ -#undef __sparc64__ -#endif -#ifndef __alpha__ -#undef __alpha__ -#endif -#ifndef __hppa__ -#undef __hppa__ -#endif -#ifndef __arm__ -#undef __arm__ -#endif -#ifndef __rs6000__ -#undef __rs6000__ -#endif -#ifndef __m88k__ -#undef __m88k__ -#endif -#ifndef __convex__ -#undef __convex__ -#endif -#ifndef __ia64__ -#undef __ia64__ -#endif -#ifndef __x86_64__ -#undef __x86_64__ -#endif - - -/* compiler characteristics */ - -/* CL_VOID */ -/* Define this as `char' if your compiler doesn't understand the void type. */ -#undef void - - -/* header files */ - -/* CL_STDC_HEADERS */ -/* Define if you have the ANSI C header files - , , , , . */ -#undef STDC_HEADERS - -/* Define if you have . */ -#undef HAVE_UNISTD_H - -/* CL_OPENFLAGS */ -/* Define if you need for using open() flags like O_RDWR. */ -#undef OPEN_NEEDS_SYS_FILE_H - - -/* typedefs */ - - -/* functions and declarations */ - -/* CL_GETPAGESIZE */ -/* Define if you have getpagesize(). */ -#undef HAVE_GETPAGESIZE -/* Define as the return type of getpagesize(). */ -#undef RETGETPAGESIZETYPE -/* Define if you have . */ -#undef HAVE_SYS_PARAM_H - -/* CL_MACH_VM */ -/* Define if you have the vm_allocate() and task_self() functions. */ -#undef HAVE_MACH_VM - -/* CL_MMAP */ -/* Define if you have and the mmap() function. */ -#undef HAVE_MMAP -/* Define if defines MAP_ANON and mmaping with MAP_ANON works. */ -#undef HAVE_MMAP_ANON -/* Define if defines MAP_ANONYMOUS and mmaping with MAP_ANONYMOUS - works. */ -#undef HAVE_MMAP_ANONYMOUS -/* Define if mmaping of the special device /dev/zero works. */ -#undef HAVE_MMAP_DEVZERO -/* Define if mmaping of the special device /dev/zero works, - but only on addresses < 2^29. */ -#undef HAVE_MMAP_DEVZERO_SUN4_29 - -/* CL_MPROTECT */ -/* Define if you have the mprotect() function. */ -#undef HAVE_MPROTECT -/* Define if you have a working mprotect() function. */ -#undef HAVE_WORKING_MPROTECT - -/* CL_SHM */ -/* Define if you have and and shared memory works. */ -#undef HAVE_SHM -/* Define if you also have . */ -#undef HAVE_SYS_SYSMACROS_H - -/* CL_CODEEXEC */ -/* Define if code in malloc'ed memory is executable. */ -#undef CODE_EXECUTABLE - -/* AC_CHECK_HEADERS(sys/cachectl.h) */ -/* Define if you have */ -#undef HAVE_SYS_CACHECTL_H - -/* AC_CHECK_HEADERS(sys/m88kbcs.h) */ -/* Define if you have . */ -#undef HAVE_SYS_M88KBCS_H - DELETED ffcall/trampoline/config.h.mingw32 Index: ffcall/trampoline/config.h.mingw32 ================================================================== --- ffcall/trampoline/config.h.mingw32 +++ /dev/null @@ -1,129 +0,0 @@ -/* These definitions are adjusted by `configure' automatically. */ -/* Bruno Haible 16.7.1997 */ - - -/* CPU */ -#ifndef __i386__ -#define __i386__ 1 -#endif -#ifndef __m68k__ -#undef __m68k__ -#endif -#ifndef __mips__ -#undef __mips__ -#endif -#ifndef __mipsn32__ -#undef __mipsn32__ -#endif -#ifndef __mips64__ -#undef __mips64__ -#endif -#ifndef __sparc__ -#undef __sparc__ -#endif -#ifndef __sparc64__ -#undef __sparc64__ -#endif -#ifndef __alpha__ -#undef __alpha__ -#endif -#ifndef __hppa__ -#undef __hppa__ -#endif -#ifndef __arm__ -#undef __arm__ -#endif -#ifndef __rs6000__ -#undef __rs6000__ -#endif -#ifndef __m88k__ -#undef __m88k__ -#endif -#ifndef __convex__ -#undef __convex__ -#endif -#ifndef __ia64__ -#undef __ia64__ -#endif -#ifndef __x86_64__ -#undef __x86_64__ -#endif - - -/* compiler characteristics */ - -/* CL_VOID */ -/* Define this as `char' if your compiler doesn't understand the void type. */ -#undef void - - -/* header files */ - -/* CL_STDC_HEADERS */ -/* Define if you have the ANSI C header files - , , , , . */ -#define STDC_HEADERS 1 - -/* Define if you have . */ -#undef HAVE_UNISTD_H - -/* CL_OPENFLAGS */ -/* Define if you need for using open() flags like O_RDWR. */ -#undef OPEN_NEEDS_SYS_FILE_H - - -/* typedefs */ - - -/* functions and declarations */ - -/* CL_GETPAGESIZE */ -/* Define if you have getpagesize(). */ -#define HAVE_GETPAGESIZE 1 /* fake */ -/* Define as the return type of getpagesize(). */ -#define RETGETPAGESIZETYPE unsigned long -/* Define if you have . */ -#undef HAVE_SYS_PARAM_H - -/* CL_MACH_VM */ -/* Define if you have the vm_allocate() and task_self() functions. */ -#undef HAVE_MACH_VM - -/* CL_MMAP */ -/* Define if you have and the mmap() function. */ -#undef HAVE_MMAP -/* Define if defines MAP_ANON and mmaping with MAP_ANON works. */ -#undef HAVE_MMAP_ANON -/* Define if defines MAP_ANONYMOUS and mmaping with MAP_ANONYMOUS - works. */ -#undef HAVE_MMAP_ANONYMOUS -/* Define if mmaping of the special device /dev/zero works. */ -#undef HAVE_MMAP_DEVZERO -/* Define if mmaping of the special device /dev/zero works, - but only on addresses < 2^29. */ -#undef HAVE_MMAP_DEVZERO_SUN4_29 - -/* CL_MPROTECT */ -/* Define if you have the mprotect() function. */ -#undef HAVE_MPROTECT -/* Define if you have a working mprotect() function. */ -#undef HAVE_WORKING_MPROTECT - -/* CL_SHM */ -/* Define if you have and and shared memory works. */ -#undef HAVE_SHM -/* Define if you also have . */ -#undef HAVE_SYS_SYSMACROS_H - -/* CL_CODEEXEC */ -/* Define if code in malloc'ed memory is executable. */ -#define CODE_EXECUTABLE 1 - -/* AC_CHECK_HEADERS(sys/cachectl.h) */ -/* Define if you have */ -#undef HAVE_SYS_CACHECTL_H - -/* AC_CHECK_HEADERS(sys/m88kbcs.h) */ -/* Define if you have . */ -#undef HAVE_SYS_M88KBCS_H - DELETED ffcall/trampoline/config.h.msvc Index: ffcall/trampoline/config.h.msvc ================================================================== --- ffcall/trampoline/config.h.msvc +++ /dev/null @@ -1,129 +0,0 @@ -/* These definitions are adjusted by `configure' automatically. */ -/* Bruno Haible 16.7.1997 */ - - -/* CPU */ -#ifndef __i386__ -#define __i386__ 1 -#endif -#ifndef __m68k__ -#undef __m68k__ -#endif -#ifndef __mips__ -#undef __mips__ -#endif -#ifndef __mipsn32__ -#undef __mipsn32__ -#endif -#ifndef __mips64__ -#undef __mips64__ -#endif -#ifndef __sparc__ -#undef __sparc__ -#endif -#ifndef __sparc64__ -#undef __sparc64__ -#endif -#ifndef __alpha__ -#undef __alpha__ -#endif -#ifndef __hppa__ -#undef __hppa__ -#endif -#ifndef __arm__ -#undef __arm__ -#endif -#ifndef __rs6000__ -#undef __rs6000__ -#endif -#ifndef __m88k__ -#undef __m88k__ -#endif -#ifndef __convex__ -#undef __convex__ -#endif -#ifndef __ia64__ -#undef __ia64__ -#endif -#ifndef __x86_64__ -#undef __x86_64__ -#endif - - -/* compiler characteristics */ - -/* CL_VOID */ -/* Define this as `char' if your compiler doesn't understand the void type. */ -#undef void - - -/* header files */ - -/* CL_STDC_HEADERS */ -/* Define if you have the ANSI C header files - , , , , . */ -#define STDC_HEADERS 1 - -/* Define if you have . */ -#undef HAVE_UNISTD_H - -/* CL_OPENFLAGS */ -/* Define if you need for using open() flags like O_RDWR. */ -#undef OPEN_NEEDS_SYS_FILE_H - - -/* typedefs */ - - -/* functions and declarations */ - -/* CL_GETPAGESIZE */ -/* Define if you have getpagesize(). */ -#define HAVE_GETPAGESIZE 1 /* fake */ -/* Define as the return type of getpagesize(). */ -#define RETGETPAGESIZETYPE unsigned long -/* Define if you have . */ -#undef HAVE_SYS_PARAM_H - -/* CL_MACH_VM */ -/* Define if you have the vm_allocate() and task_self() functions. */ -#undef HAVE_MACH_VM - -/* CL_MMAP */ -/* Define if you have and the mmap() function. */ -#undef HAVE_MMAP -/* Define if defines MAP_ANON and mmaping with MAP_ANON works. */ -#undef HAVE_MMAP_ANON -/* Define if defines MAP_ANONYMOUS and mmaping with MAP_ANONYMOUS - works. */ -#undef HAVE_MMAP_ANONYMOUS -/* Define if mmaping of the special device /dev/zero works. */ -#undef HAVE_MMAP_DEVZERO -/* Define if mmaping of the special device /dev/zero works, - but only on addresses < 2^29. */ -#undef HAVE_MMAP_DEVZERO_SUN4_29 - -/* CL_MPROTECT */ -/* Define if you have the mprotect() function. */ -#undef HAVE_MPROTECT -/* Define if you have a working mprotect() function. */ -#undef HAVE_WORKING_MPROTECT - -/* CL_SHM */ -/* Define if you have and and shared memory works. */ -#undef HAVE_SHM -/* Define if you also have . */ -#undef HAVE_SYS_SYSMACROS_H - -/* CL_CODEEXEC */ -/* Define if code in malloc'ed memory is executable. */ -#define CODE_EXECUTABLE 1 - -/* AC_CHECK_HEADERS(sys/cachectl.h) */ -/* Define if you have */ -#undef HAVE_SYS_CACHECTL_H - -/* AC_CHECK_HEADERS(sys/m88kbcs.h) */ -/* Define if you have . */ -#undef HAVE_SYS_M88KBCS_H - DELETED ffcall/trampoline/configure Index: ffcall/trampoline/configure ================================================================== --- ffcall/trampoline/configure +++ /dev/null @@ -1,7100 +0,0 @@ -#! /bin/sh -# Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.59. -# -# Copyright (C) 2003 Free Software Foundation, Inc. -# This configure script is free software; the Free Software Foundation -# gives unlimited permission to copy, distribute and modify it. -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## - -# Be Bourne compatible -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' -elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then - set -o posix -fi -DUALCASE=1; export DUALCASE # for MKS sh - -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - - -# Work around bugs in pre-3.0 UWIN ksh. -$as_unset ENV MAIL MAILPATH -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -for as_var in \ - LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ - LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ - LC_TELEPHONE LC_TIME -do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var - else - $as_unset $as_var - fi -done - -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - - -# Name of the executable. -as_me=`$as_basename "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)$' \| \ - . : '\(.\)' 2>/dev/null || -echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } - /^X\/\(\/\/\)$/{ s//\1/; q; } - /^X\/\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - - -# PATH needs CR, and LINENO needs CR and PATH. -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" || { - # Find who we are. Look in the path if we contain no path at all - # relative or not. - case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done - - ;; - esac - # We did not find ourselves, most probably we were run as `sh COMMAND' - # in which case we are not to be found in the path. - if test "x$as_myself" = x; then - as_myself=$0 - fi - if test ! -f "$as_myself"; then - { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2 - { (exit 1); exit 1; }; } - fi - case $CONFIG_SHELL in - '') - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for as_base in sh bash ksh sh5; do - case $as_dir in - /*) - if ("$as_dir/$as_base" -c ' - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then - $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } - $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } - CONFIG_SHELL=$as_dir/$as_base - export CONFIG_SHELL - exec "$CONFIG_SHELL" "$0" ${1+"$@"} - fi;; - esac - done -done -;; - esac - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line before each line; the second 'sed' does the real - # work. The second script uses 'N' to pair each line-number line - # with the numbered line, and appends trailing '-' during - # substitution so that $LINENO is not a special case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) - sed '=' <$as_myself | - sed ' - N - s,$,-, - : loop - s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, - t loop - s,-$,, - s,^['$as_cr_digits']*\n,, - ' >$as_me.lineno && - chmod +x $as_me.lineno || - { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensible to this). - . ./$as_me.lineno - # Exit status is that of the last command. - exit -} - - -case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in - *c*,-n*) ECHO_N= ECHO_C=' -' ECHO_T=' ' ;; - *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; - *) ECHO_N= ECHO_C='\c' ECHO_T= ;; -esac - -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -rm -f conf$$ conf$$.exe conf$$.file -echo >conf$$.file -if ln -s conf$$.file conf$$ 2>/dev/null; then - # We could just check for DJGPP; but this test a) works b) is more generic - # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). - if test -f conf$$.exe; then - # Don't use ln at all; we don't have any links - as_ln_s='cp -p' - else - as_ln_s='ln -s' - fi -elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.file - -if mkdir -p . 2>/dev/null; then - as_mkdir_p=: -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -as_executable_p="test -f" - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -# IFS -# We need space, tab and new line, in precisely that order. -as_nl=' -' -IFS=" $as_nl" - -# CDPATH. -$as_unset CDPATH - - -# Name of the host. -# hostname on some systems (SVR3.2, Linux) returns a bogus exit status, -# so uname gets run too. -ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` - -exec 6>&1 - -# -# Initializations. -# -ac_default_prefix=/usr/local -ac_config_libobj_dir=. -cross_compiling=no -subdirs= -MFLAGS= -MAKEFLAGS= -SHELL=${CONFIG_SHELL-/bin/sh} - -# Maximum number of lines to put in a shell here document. -# This variable seems obsolete. It should probably be removed, and -# only ac_max_sed_lines should be used. -: ${ac_max_here_lines=38} - -# Identity of this package. -PACKAGE_NAME= -PACKAGE_TARNAME= -PACKAGE_VERSION= -PACKAGE_STRING= -PACKAGE_BUGREPORT= - -ac_unique_file="trampoline.h.in" -# Factoring default headers for most tests. -ac_includes_default="\ -#include -#if HAVE_SYS_TYPES_H -# include -#endif -#if HAVE_SYS_STAT_H -# include -#endif -#if STDC_HEADERS -# include -# include -#else -# if HAVE_STDLIB_H -# include -# endif -#endif -#if HAVE_STRING_H -# if !STDC_HEADERS && HAVE_MEMORY_H -# include -# endif -# include -#endif -#if HAVE_STRINGS_H -# include -#endif -#if HAVE_INTTYPES_H -# include -#else -# if HAVE_STDINT_H -# include -# endif -#endif -#if HAVE_UNISTD_H -# include -#endif" - -ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP EGREP CC_GCC GCC_X_NONE AS_UNDERSCORE RANLIB SET_MAKE INSTALL INSTALL_PROGRAM INSTALL_DATA CP LN LN_S build build_cpu build_vendor build_os host host_cpu host_vendor host_os CPU_OBJECTS LIBOBJS LTLIBOBJS' -ac_subst_files='' - -# Initialize some variables set by options. -ac_init_help= -ac_init_version=false -# The variables have the same names as the options, with -# dashes changed to underlines. -cache_file=/dev/null -exec_prefix=NONE -no_create= -no_recursion= -prefix=NONE -program_prefix=NONE -program_suffix=NONE -program_transform_name=s,x,x, -silent= -site= -srcdir= -verbose= -x_includes=NONE -x_libraries=NONE - -# Installation directory options. -# These are left unexpanded so users can "make install exec_prefix=/foo" -# and all the variables that are supposed to be based on exec_prefix -# by default will actually change. -# Use braces instead of parens because sh, perl, etc. also accept them. -bindir='${exec_prefix}/bin' -sbindir='${exec_prefix}/sbin' -libexecdir='${exec_prefix}/libexec' -datadir='${prefix}/share' -sysconfdir='${prefix}/etc' -sharedstatedir='${prefix}/com' -localstatedir='${prefix}/var' -libdir='${exec_prefix}/lib' -includedir='${prefix}/include' -oldincludedir='/usr/include' -infodir='${prefix}/info' -mandir='${prefix}/man' - -ac_prev= -for ac_option -do - # If the previous option needs an argument, assign it. - if test -n "$ac_prev"; then - eval "$ac_prev=\$ac_option" - ac_prev= - continue - fi - - ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'` - - # Accept the important Cygnus configure options, so we can diagnose typos. - - case $ac_option in - - -bindir | --bindir | --bindi | --bind | --bin | --bi) - ac_prev=bindir ;; - -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) - bindir=$ac_optarg ;; - - -build | --build | --buil | --bui | --bu) - ac_prev=build_alias ;; - -build=* | --build=* | --buil=* | --bui=* | --bu=*) - build_alias=$ac_optarg ;; - - -cache-file | --cache-file | --cache-fil | --cache-fi \ - | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) - ac_prev=cache_file ;; - -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ - | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) - cache_file=$ac_optarg ;; - - --config-cache | -C) - cache_file=config.cache ;; - - -datadir | --datadir | --datadi | --datad | --data | --dat | --da) - ac_prev=datadir ;; - -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \ - | --da=*) - datadir=$ac_optarg ;; - - -disable-* | --disable-*) - ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid feature name: $ac_feature" >&2 - { (exit 1); exit 1; }; } - ac_feature=`echo $ac_feature | sed 's/-/_/g'` - eval "enable_$ac_feature=no" ;; - - -enable-* | --enable-*) - ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid feature name: $ac_feature" >&2 - { (exit 1); exit 1; }; } - ac_feature=`echo $ac_feature | sed 's/-/_/g'` - case $ac_option in - *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; - *) ac_optarg=yes ;; - esac - eval "enable_$ac_feature='$ac_optarg'" ;; - - -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ - | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ - | --exec | --exe | --ex) - ac_prev=exec_prefix ;; - -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ - | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ - | --exec=* | --exe=* | --ex=*) - exec_prefix=$ac_optarg ;; - - -gas | --gas | --ga | --g) - # Obsolete; use --with-gas. - with_gas=yes ;; - - -help | --help | --hel | --he | -h) - ac_init_help=long ;; - -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) - ac_init_help=recursive ;; - -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) - ac_init_help=short ;; - - -host | --host | --hos | --ho) - ac_prev=host_alias ;; - -host=* | --host=* | --hos=* | --ho=*) - host_alias=$ac_optarg ;; - - -includedir | --includedir | --includedi | --included | --include \ - | --includ | --inclu | --incl | --inc) - ac_prev=includedir ;; - -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ - | --includ=* | --inclu=* | --incl=* | --inc=*) - includedir=$ac_optarg ;; - - -infodir | --infodir | --infodi | --infod | --info | --inf) - ac_prev=infodir ;; - -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) - infodir=$ac_optarg ;; - - -libdir | --libdir | --libdi | --libd) - ac_prev=libdir ;; - -libdir=* | --libdir=* | --libdi=* | --libd=*) - libdir=$ac_optarg ;; - - -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ - | --libexe | --libex | --libe) - ac_prev=libexecdir ;; - -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ - | --libexe=* | --libex=* | --libe=*) - libexecdir=$ac_optarg ;; - - -localstatedir | --localstatedir | --localstatedi | --localstated \ - | --localstate | --localstat | --localsta | --localst \ - | --locals | --local | --loca | --loc | --lo) - ac_prev=localstatedir ;; - -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ - | --localstate=* | --localstat=* | --localsta=* | --localst=* \ - | --locals=* | --local=* | --loca=* | --loc=* | --lo=*) - localstatedir=$ac_optarg ;; - - -mandir | --mandir | --mandi | --mand | --man | --ma | --m) - ac_prev=mandir ;; - -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) - mandir=$ac_optarg ;; - - -nfp | --nfp | --nf) - # Obsolete; use --without-fp. - with_fp=no ;; - - -no-create | --no-create | --no-creat | --no-crea | --no-cre \ - | --no-cr | --no-c | -n) - no_create=yes ;; - - -no-recursion | --no-recursion | --no-recursio | --no-recursi \ - | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) - no_recursion=yes ;; - - -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ - | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ - | --oldin | --oldi | --old | --ol | --o) - ac_prev=oldincludedir ;; - -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ - | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ - | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) - oldincludedir=$ac_optarg ;; - - -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) - ac_prev=prefix ;; - -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) - prefix=$ac_optarg ;; - - -program-prefix | --program-prefix | --program-prefi | --program-pref \ - | --program-pre | --program-pr | --program-p) - ac_prev=program_prefix ;; - -program-prefix=* | --program-prefix=* | --program-prefi=* \ - | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) - program_prefix=$ac_optarg ;; - - -program-suffix | --program-suffix | --program-suffi | --program-suff \ - | --program-suf | --program-su | --program-s) - ac_prev=program_suffix ;; - -program-suffix=* | --program-suffix=* | --program-suffi=* \ - | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) - program_suffix=$ac_optarg ;; - - -program-transform-name | --program-transform-name \ - | --program-transform-nam | --program-transform-na \ - | --program-transform-n | --program-transform- \ - | --program-transform | --program-transfor \ - | --program-transfo | --program-transf \ - | --program-trans | --program-tran \ - | --progr-tra | --program-tr | --program-t) - ac_prev=program_transform_name ;; - -program-transform-name=* | --program-transform-name=* \ - | --program-transform-nam=* | --program-transform-na=* \ - | --program-transform-n=* | --program-transform-=* \ - | --program-transform=* | --program-transfor=* \ - | --program-transfo=* | --program-transf=* \ - | --program-trans=* | --program-tran=* \ - | --progr-tra=* | --program-tr=* | --program-t=*) - program_transform_name=$ac_optarg ;; - - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - silent=yes ;; - - -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) - ac_prev=sbindir ;; - -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ - | --sbi=* | --sb=*) - sbindir=$ac_optarg ;; - - -sharedstatedir | --sharedstatedir | --sharedstatedi \ - | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ - | --sharedst | --shareds | --shared | --share | --shar \ - | --sha | --sh) - ac_prev=sharedstatedir ;; - -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ - | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ - | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ - | --sha=* | --sh=*) - sharedstatedir=$ac_optarg ;; - - -site | --site | --sit) - ac_prev=site ;; - -site=* | --site=* | --sit=*) - site=$ac_optarg ;; - - -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) - ac_prev=srcdir ;; - -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) - srcdir=$ac_optarg ;; - - -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ - | --syscon | --sysco | --sysc | --sys | --sy) - ac_prev=sysconfdir ;; - -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ - | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) - sysconfdir=$ac_optarg ;; - - -target | --target | --targe | --targ | --tar | --ta | --t) - ac_prev=target_alias ;; - -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) - target_alias=$ac_optarg ;; - - -v | -verbose | --verbose | --verbos | --verbo | --verb) - verbose=yes ;; - - -version | --version | --versio | --versi | --vers | -V) - ac_init_version=: ;; - - -with-* | --with-*) - ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid package name: $ac_package" >&2 - { (exit 1); exit 1; }; } - ac_package=`echo $ac_package| sed 's/-/_/g'` - case $ac_option in - *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; - *) ac_optarg=yes ;; - esac - eval "with_$ac_package='$ac_optarg'" ;; - - -without-* | --without-*) - ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid package name: $ac_package" >&2 - { (exit 1); exit 1; }; } - ac_package=`echo $ac_package | sed 's/-/_/g'` - eval "with_$ac_package=no" ;; - - --x) - # Obsolete; use --with-x. - with_x=yes ;; - - -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ - | --x-incl | --x-inc | --x-in | --x-i) - ac_prev=x_includes ;; - -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ - | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) - x_includes=$ac_optarg ;; - - -x-libraries | --x-libraries | --x-librarie | --x-librari \ - | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) - ac_prev=x_libraries ;; - -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ - | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) - x_libraries=$ac_optarg ;; - - -*) { echo "$as_me: error: unrecognized option: $ac_option -Try \`$0 --help' for more information." >&2 - { (exit 1); exit 1; }; } - ;; - - *=*) - ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` - # Reject names that are not valid shell variable names. - expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid variable name: $ac_envvar" >&2 - { (exit 1); exit 1; }; } - ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` - eval "$ac_envvar='$ac_optarg'" - export $ac_envvar ;; - - *) - # FIXME: should be removed in autoconf 3.0. - echo "$as_me: WARNING: you should use --build, --host, --target" >&2 - expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && - echo "$as_me: WARNING: invalid host type: $ac_option" >&2 - : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option} - ;; - - esac -done - -if test -n "$ac_prev"; then - ac_option=--`echo $ac_prev | sed 's/_/-/g'` - { echo "$as_me: error: missing argument to $ac_option" >&2 - { (exit 1); exit 1; }; } -fi - -# Be sure to have absolute paths. -for ac_var in exec_prefix prefix -do - eval ac_val=$`echo $ac_var` - case $ac_val in - [\\/$]* | ?:[\\/]* | NONE | '' ) ;; - *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 - { (exit 1); exit 1; }; };; - esac -done - -# Be sure to have absolute paths. -for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \ - localstatedir libdir includedir oldincludedir infodir mandir -do - eval ac_val=$`echo $ac_var` - case $ac_val in - [\\/$]* | ?:[\\/]* ) ;; - *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 - { (exit 1); exit 1; }; };; - esac -done - -# There might be people who depend on the old broken behavior: `$host' -# used to hold the argument of --host etc. -# FIXME: To remove some day. -build=$build_alias -host=$host_alias -target=$target_alias - -# FIXME: To remove some day. -if test "x$host_alias" != x; then - if test "x$build_alias" = x; then - cross_compiling=maybe - echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host. - If a cross compiler is detected then cross compile mode will be used." >&2 - elif test "x$build_alias" != "x$host_alias"; then - cross_compiling=yes - fi -fi - -ac_tool_prefix= -test -n "$host_alias" && ac_tool_prefix=$host_alias- - -test "$silent" = yes && exec 6>/dev/null - - -# Find the source files, if location was not specified. -if test -z "$srcdir"; then - ac_srcdir_defaulted=yes - # Try the directory containing this script, then its parent. - ac_confdir=`(dirname "$0") 2>/dev/null || -$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$0" : 'X\(//\)[^/]' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$0" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - srcdir=$ac_confdir - if test ! -r $srcdir/$ac_unique_file; then - srcdir=.. - fi -else - ac_srcdir_defaulted=no -fi -if test ! -r $srcdir/$ac_unique_file; then - if test "$ac_srcdir_defaulted" = yes; then - { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2 - { (exit 1); exit 1; }; } - else - { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 - { (exit 1); exit 1; }; } - fi -fi -(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null || - { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2 - { (exit 1); exit 1; }; } -srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'` -ac_env_build_alias_set=${build_alias+set} -ac_env_build_alias_value=$build_alias -ac_cv_env_build_alias_set=${build_alias+set} -ac_cv_env_build_alias_value=$build_alias -ac_env_host_alias_set=${host_alias+set} -ac_env_host_alias_value=$host_alias -ac_cv_env_host_alias_set=${host_alias+set} -ac_cv_env_host_alias_value=$host_alias -ac_env_target_alias_set=${target_alias+set} -ac_env_target_alias_value=$target_alias -ac_cv_env_target_alias_set=${target_alias+set} -ac_cv_env_target_alias_value=$target_alias -ac_env_CC_set=${CC+set} -ac_env_CC_value=$CC -ac_cv_env_CC_set=${CC+set} -ac_cv_env_CC_value=$CC -ac_env_CFLAGS_set=${CFLAGS+set} -ac_env_CFLAGS_value=$CFLAGS -ac_cv_env_CFLAGS_set=${CFLAGS+set} -ac_cv_env_CFLAGS_value=$CFLAGS -ac_env_LDFLAGS_set=${LDFLAGS+set} -ac_env_LDFLAGS_value=$LDFLAGS -ac_cv_env_LDFLAGS_set=${LDFLAGS+set} -ac_cv_env_LDFLAGS_value=$LDFLAGS -ac_env_CPPFLAGS_set=${CPPFLAGS+set} -ac_env_CPPFLAGS_value=$CPPFLAGS -ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set} -ac_cv_env_CPPFLAGS_value=$CPPFLAGS -ac_env_CPP_set=${CPP+set} -ac_env_CPP_value=$CPP -ac_cv_env_CPP_set=${CPP+set} -ac_cv_env_CPP_value=$CPP - -# -# Report the --help message. -# -if test "$ac_init_help" = "long"; then - # Omit some internal or obsolete options to make the list less imposing. - # This message is too long to be a string in the A/UX 3.1 sh. - cat <<_ACEOF -\`configure' configures this package to adapt to many kinds of systems. - -Usage: $0 [OPTION]... [VAR=VALUE]... - -To assign environment variables (e.g., CC, CFLAGS...), specify them as -VAR=VALUE. See below for descriptions of some of the useful variables. - -Defaults for the options are specified in brackets. - -Configuration: - -h, --help display this help and exit - --help=short display options specific to this package - --help=recursive display the short help of all the included packages - -V, --version display version information and exit - -q, --quiet, --silent do not print \`checking...' messages - --cache-file=FILE cache test results in FILE [disabled] - -C, --config-cache alias for \`--cache-file=config.cache' - -n, --no-create do not create output files - --srcdir=DIR find the sources in DIR [configure dir or \`..'] - -_ACEOF - - cat <<_ACEOF -Installation directories: - --prefix=PREFIX install architecture-independent files in PREFIX - [$ac_default_prefix] - --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX - [PREFIX] - -By default, \`make install' will install all the files in -\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify -an installation prefix other than \`$ac_default_prefix' using \`--prefix', -for instance \`--prefix=\$HOME'. - -For better control, use the options below. - -Fine tuning of the installation directories: - --bindir=DIR user executables [EPREFIX/bin] - --sbindir=DIR system admin executables [EPREFIX/sbin] - --libexecdir=DIR program executables [EPREFIX/libexec] - --datadir=DIR read-only architecture-independent data [PREFIX/share] - --sysconfdir=DIR read-only single-machine data [PREFIX/etc] - --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] - --localstatedir=DIR modifiable single-machine data [PREFIX/var] - --libdir=DIR object code libraries [EPREFIX/lib] - --includedir=DIR C header files [PREFIX/include] - --oldincludedir=DIR C header files for non-gcc [/usr/include] - --infodir=DIR info documentation [PREFIX/info] - --mandir=DIR man documentation [PREFIX/man] -_ACEOF - - cat <<\_ACEOF - -System types: - --build=BUILD configure for building on BUILD [guessed] - --host=HOST cross-compile to build programs to run on HOST [BUILD] -_ACEOF -fi - -if test -n "$ac_init_help"; then - - cat <<\_ACEOF - -Some influential environment variables: - CC C compiler command - CFLAGS C compiler flags - LDFLAGS linker flags, e.g. -L if you have libraries in a - nonstandard directory - CPPFLAGS C/C++ preprocessor flags, e.g. -I if you have - headers in a nonstandard directory - CPP C preprocessor - -Use these variables to override the choices made by `configure' or to help -it to find libraries and programs with nonstandard names/locations. - -_ACEOF -fi - -if test "$ac_init_help" = "recursive"; then - # If there are subdirs, report their specific --help. - ac_popdir=`pwd` - for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue - test -d $ac_dir || continue - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac - - cd $ac_dir - # Check for guested configure; otherwise get Cygnus style configure. - if test -f $ac_srcdir/configure.gnu; then - echo - $SHELL $ac_srcdir/configure.gnu --help=recursive - elif test -f $ac_srcdir/configure; then - echo - $SHELL $ac_srcdir/configure --help=recursive - elif test -f $ac_srcdir/configure.ac || - test -f $ac_srcdir/configure.in; then - echo - $ac_configure --help - else - echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 - fi - cd $ac_popdir - done -fi - -test -n "$ac_init_help" && exit 0 -if $ac_init_version; then - cat <<\_ACEOF - -Copyright (C) 2003 Free Software Foundation, Inc. -This configure script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it. -_ACEOF - exit 0 -fi -exec 5>config.log -cat >&5 <<_ACEOF -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. - -It was created by $as_me, which was -generated by GNU Autoconf 2.59. Invocation command line was - - $ $0 $@ - -_ACEOF -{ -cat <<_ASUNAME -## --------- ## -## Platform. ## -## --------- ## - -hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` -uname -m = `(uname -m) 2>/dev/null || echo unknown` -uname -r = `(uname -r) 2>/dev/null || echo unknown` -uname -s = `(uname -s) 2>/dev/null || echo unknown` -uname -v = `(uname -v) 2>/dev/null || echo unknown` - -/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` -/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` - -/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` -/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` -/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` -hostinfo = `(hostinfo) 2>/dev/null || echo unknown` -/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` -/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` -/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` - -_ASUNAME - -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - echo "PATH: $as_dir" -done - -} >&5 - -cat >&5 <<_ACEOF - - -## ----------- ## -## Core tests. ## -## ----------- ## - -_ACEOF - - -# Keep a trace of the command line. -# Strip out --no-create and --no-recursion so they do not pile up. -# Strip out --silent because we don't want to record it for future runs. -# Also quote any args containing shell meta-characters. -# Make two passes to allow for proper duplicate-argument suppression. -ac_configure_args= -ac_configure_args0= -ac_configure_args1= -ac_sep= -ac_must_keep_next=false -for ac_pass in 1 2 -do - for ac_arg - do - case $ac_arg in - -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - continue ;; - *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) - ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - case $ac_pass in - 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;; - 2) - ac_configure_args1="$ac_configure_args1 '$ac_arg'" - if test $ac_must_keep_next = true; then - ac_must_keep_next=false # Got value, back to normal. - else - case $ac_arg in - *=* | --config-cache | -C | -disable-* | --disable-* \ - | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ - | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ - | -with-* | --with-* | -without-* | --without-* | --x) - case "$ac_configure_args0 " in - "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; - esac - ;; - -* ) ac_must_keep_next=true ;; - esac - fi - ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'" - # Get rid of the leading space. - ac_sep=" " - ;; - esac - done -done -$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; } -$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; } - -# When interrupted or exit'd, cleanup temporary files, and complete -# config.log. We remove comments because anyway the quotes in there -# would cause problems or look ugly. -# WARNING: Be sure not to use single quotes in there, as some shells, -# such as our DU 5.0 friend, will then `close' the trap. -trap 'exit_status=$? - # Save into config.log some information that might help in debugging. - { - echo - - cat <<\_ASBOX -## ---------------- ## -## Cache variables. ## -## ---------------- ## -_ASBOX - echo - # The following way of writing the cache mishandles newlines in values, -{ - (set) 2>&1 | - case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in - *ac_space=\ *) - sed -n \ - "s/'"'"'/'"'"'\\\\'"'"''"'"'/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p" - ;; - *) - sed -n \ - "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" - ;; - esac; -} - echo - - cat <<\_ASBOX -## ----------------- ## -## Output variables. ## -## ----------------- ## -_ASBOX - echo - for ac_var in $ac_subst_vars - do - eval ac_val=$`echo $ac_var` - echo "$ac_var='"'"'$ac_val'"'"'" - done | sort - echo - - if test -n "$ac_subst_files"; then - cat <<\_ASBOX -## ------------- ## -## Output files. ## -## ------------- ## -_ASBOX - echo - for ac_var in $ac_subst_files - do - eval ac_val=$`echo $ac_var` - echo "$ac_var='"'"'$ac_val'"'"'" - done | sort - echo - fi - - if test -s confdefs.h; then - cat <<\_ASBOX -## ----------- ## -## confdefs.h. ## -## ----------- ## -_ASBOX - echo - sed "/^$/d" confdefs.h | sort - echo - fi - test "$ac_signal" != 0 && - echo "$as_me: caught signal $ac_signal" - echo "$as_me: exit $exit_status" - } >&5 - rm -f core *.core && - rm -rf conftest* confdefs* conf$$* $ac_clean_files && - exit $exit_status - ' 0 -for ac_signal in 1 2 13 15; do - trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal -done -ac_signal=0 - -# confdefs.h avoids OS command line length limits that DEFS can exceed. -rm -rf conftest* confdefs.h -# AIX cpp loses on an empty file, so make sure it contains at least a newline. -echo >confdefs.h - -# Predefined preprocessor variables. - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_NAME "$PACKAGE_NAME" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_TARNAME "$PACKAGE_TARNAME" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_VERSION "$PACKAGE_VERSION" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_STRING "$PACKAGE_STRING" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" -_ACEOF - - -# Let the site file select an alternate cache file if it wants to. -# Prefer explicitly selected file to automatically selected ones. -if test -z "$CONFIG_SITE"; then - if test "x$prefix" != xNONE; then - CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" - else - CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" - fi -fi -for ac_site_file in $CONFIG_SITE; do - if test -r "$ac_site_file"; then - { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5 -echo "$as_me: loading site script $ac_site_file" >&6;} - sed 's/^/| /' "$ac_site_file" >&5 - . "$ac_site_file" - fi -done - -if test -r "$cache_file"; then - # Some versions of bash will fail to source /dev/null (special - # files actually), so we avoid doing that. - if test -f "$cache_file"; then - { echo "$as_me:$LINENO: loading cache $cache_file" >&5 -echo "$as_me: loading cache $cache_file" >&6;} - case $cache_file in - [\\/]* | ?:[\\/]* ) . $cache_file;; - *) . ./$cache_file;; - esac - fi -else - { echo "$as_me:$LINENO: creating cache $cache_file" >&5 -echo "$as_me: creating cache $cache_file" >&6;} - >$cache_file -fi - -# Check that the precious variables saved in the cache have kept the same -# value. -ac_cache_corrupted=false -for ac_var in `(set) 2>&1 | - sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do - eval ac_old_set=\$ac_cv_env_${ac_var}_set - eval ac_new_set=\$ac_env_${ac_var}_set - eval ac_old_val="\$ac_cv_env_${ac_var}_value" - eval ac_new_val="\$ac_env_${ac_var}_value" - case $ac_old_set,$ac_new_set in - set,) - { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 -echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,set) - { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5 -echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,);; - *) - if test "x$ac_old_val" != "x$ac_new_val"; then - { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 -echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} - { echo "$as_me:$LINENO: former value: $ac_old_val" >&5 -echo "$as_me: former value: $ac_old_val" >&2;} - { echo "$as_me:$LINENO: current value: $ac_new_val" >&5 -echo "$as_me: current value: $ac_new_val" >&2;} - ac_cache_corrupted=: - fi;; - esac - # Pass precious variables to config.status. - if test "$ac_new_set" = set; then - case $ac_new_val in - *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) - ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; - *) ac_arg=$ac_var=$ac_new_val ;; - esac - case " $ac_configure_args " in - *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. - *) ac_configure_args="$ac_configure_args '$ac_arg'" ;; - esac - fi -done -if $ac_cache_corrupted; then - { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5 -echo "$as_me: error: changes in the environment can compromise the build" >&2;} - { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 -echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;} - { (exit 1); exit 1; }; } -fi - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - - - - - - - - - - - - - - - - - - - ac_config_headers="$ac_config_headers config.h" - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. -set dummy ${ac_tool_prefix}gcc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}gcc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$ac_cv_prog_CC"; then - ac_ct_CC=$CC - # Extract the first word of "gcc", so it can be a program name with args. -set dummy gcc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="gcc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - CC=$ac_ct_CC -else - CC="$ac_cv_prog_CC" -fi - -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. -set dummy ${ac_tool_prefix}cc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$ac_cv_prog_CC"; then - ac_ct_CC=$CC - # Extract the first word of "cc", so it can be a program name with args. -set dummy cc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - CC=$ac_ct_CC -else - CC="$ac_cv_prog_CC" -fi - -fi -if test -z "$CC"; then - # Extract the first word of "cc", so it can be a program name with args. -set dummy cc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else - ac_prog_rejected=no -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then - ac_prog_rejected=yes - continue - fi - ac_cv_prog_CC="cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -if test $ac_prog_rejected = yes; then - # We found a bogon in the path, so make sure we never use it. - set dummy $ac_cv_prog_CC - shift - if test $# != 0; then - # We chose a different compiler from the bogus one. - # However, it has the same basename, so the bogon will be chosen - # first if we set CC to just the basename; use the full file name. - shift - ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" - fi -fi -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - for ac_prog in cl - do - # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="$ac_tool_prefix$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - test -n "$CC" && break - done -fi -if test -z "$CC"; then - ac_ct_CC=$CC - for ac_prog in cl -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - test -n "$ac_ct_CC" && break -done - - CC=$ac_ct_CC -fi - -fi - - -test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH -See \`config.log' for more details." >&5 -echo "$as_me: error: no acceptable C compiler found in \$PATH -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } - -# Provide some information about the compiler. -echo "$as_me:$LINENO:" \ - "checking for C compiler version" >&5 -ac_compiler=`set X $ac_compile; echo $2` -{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version &5\"") >&5 - (eval $ac_compiler --version &5) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v &5\"") >&5 - (eval $ac_compiler -v &5) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V &5\"") >&5 - (eval $ac_compiler -V &5) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files a.out a.exe b.out" -# Try to create an executable without -o first, disregard a.out. -# It will help us diagnose broken compilers, and finding out an intuition -# of exeext. -echo "$as_me:$LINENO: checking for C compiler default output file name" >&5 -echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6 -ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` -if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5 - (eval $ac_link_default) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - # Find the output, starting from the most likely. This scheme is -# not robust to junk in `.', hence go to wildcards (a.*) only as a last -# resort. - -# Be careful to initialize this variable, since it used to be cached. -# Otherwise an old cache value of `no' led to `EXEEXT = no' in a Makefile. -ac_cv_exeext= -# b.out is created by i960 compilers. -for ac_file in a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out -do - test -f "$ac_file" || continue - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) - ;; - conftest.$ac_ext ) - # This is the source file. - ;; - [ab].out ) - # We found the default executable, but exeext='' is most - # certainly right. - break;; - *.* ) - ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - # FIXME: I believe we export ac_cv_exeext for Libtool, - # but it would be cool to find out if it's true. Does anybody - # maintain Libtool? --akim. - export ac_cv_exeext - break;; - * ) - break;; - esac -done -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -{ { echo "$as_me:$LINENO: error: C compiler cannot create executables -See \`config.log' for more details." >&5 -echo "$as_me: error: C compiler cannot create executables -See \`config.log' for more details." >&2;} - { (exit 77); exit 77; }; } -fi - -ac_exeext=$ac_cv_exeext -echo "$as_me:$LINENO: result: $ac_file" >&5 -echo "${ECHO_T}$ac_file" >&6 - -# Check the compiler produces executables we can run. If not, either -# the compiler is broken, or we cross compile. -echo "$as_me:$LINENO: checking whether the C compiler works" >&5 -echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6 -# FIXME: These cross compiler hacks should be removed for Autoconf 3.0 -# If not cross compiling, check that we can run a simple program. -if test "$cross_compiling" != yes; then - if { ac_try='./$ac_file' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cross_compiling=no - else - if test "$cross_compiling" = maybe; then - cross_compiling=yes - else - { { echo "$as_me:$LINENO: error: cannot run C compiled programs. -If you meant to cross compile, use \`--host'. -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot run C compiled programs. -If you meant to cross compile, use \`--host'. -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } - fi - fi -fi -echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 - -rm -f a.out a.exe conftest$ac_cv_exeext b.out -ac_clean_files=$ac_clean_files_save -# Check the compiler produces executables we can run. If not, either -# the compiler is broken, or we cross compile. -echo "$as_me:$LINENO: checking whether we are cross compiling" >&5 -echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6 -echo "$as_me:$LINENO: result: $cross_compiling" >&5 -echo "${ECHO_T}$cross_compiling" >&6 - -echo "$as_me:$LINENO: checking for suffix of executables" >&5 -echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6 -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - # If both `conftest.exe' and `conftest' are `present' (well, observable) -# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will -# work properly (i.e., refer to `conftest.exe'), while it won't with -# `rm'. -for ac_file in conftest.exe conftest conftest.*; do - test -f "$ac_file" || continue - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) ;; - *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - export ac_cv_exeext - break;; - * ) break;; - esac -done -else - { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } -fi - -rm -f conftest$ac_cv_exeext -echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5 -echo "${ECHO_T}$ac_cv_exeext" >&6 - -rm -f conftest.$ac_ext -EXEEXT=$ac_cv_exeext -ac_exeext=$EXEEXT -echo "$as_me:$LINENO: checking for suffix of object files" >&5 -echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6 -if test "${ac_cv_objext+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.o conftest.obj -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg ) ;; - *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` - break;; - esac -done -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot compute suffix of object files: cannot compile -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } -fi - -rm -f conftest.$ac_cv_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 -echo "${ECHO_T}$ac_cv_objext" >&6 -OBJEXT=$ac_cv_objext -ac_objext=$OBJEXT -echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 -echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6 -if test "${ac_cv_c_compiler_gnu+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ -#ifndef __GNUC__ - choke me -#endif - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_compiler_gnu=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_compiler_gnu=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -ac_cv_c_compiler_gnu=$ac_compiler_gnu - -fi -echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5 -echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6 -GCC=`test $ac_compiler_gnu = yes && echo yes` -ac_test_CFLAGS=${CFLAGS+set} -ac_save_CFLAGS=$CFLAGS -CFLAGS="-g" -echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 -echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6 -if test "${ac_cv_prog_cc_g+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_prog_cc_g=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_prog_cc_g=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 -echo "${ECHO_T}$ac_cv_prog_cc_g" >&6 -if test "$ac_test_CFLAGS" = set; then - CFLAGS=$ac_save_CFLAGS -elif test $ac_cv_prog_cc_g = yes; then - if test "$GCC" = yes; then - CFLAGS="-g -O2" - else - CFLAGS="-g" - fi -else - if test "$GCC" = yes; then - CFLAGS="-O2" - else - CFLAGS= - fi -fi -echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5 -echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6 -if test "${ac_cv_prog_cc_stdc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_cv_prog_cc_stdc=no -ac_save_CC=$CC -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include -#include -#include -/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ -struct buf { int x; }; -FILE * (*rcsopen) (struct buf *, struct stat *, int); -static char *e (p, i) - char **p; - int i; -{ - return p[i]; -} -static char *f (char * (*g) (char **, int), char **p, ...) -{ - char *s; - va_list v; - va_start (v,p); - s = g (p, va_arg (v,int)); - va_end (v); - return s; -} - -/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has - function prototypes and stuff, but not '\xHH' hex character constants. - These don't provoke an error unfortunately, instead are silently treated - as 'x'. The following induces an error, until -std1 is added to get - proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an - array size at least. It's necessary to write '\x00'==0 to get something - that's true only with -std1. */ -int osf4_cc_array ['\x00' == 0 ? 1 : -1]; - -int test (int i, double x); -struct s1 {int (*f) (int a);}; -struct s2 {int (*f) (double a);}; -int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); -int argc; -char **argv; -int -main () -{ -return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; - ; - return 0; -} -_ACEOF -# Don't try gcc -ansi; that turns off useful extensions and -# breaks some systems' header files. -# AIX -qlanglvl=ansi -# Ultrix and OSF/1 -std1 -# HP-UX 10.20 and later -Ae -# HP-UX older versions -Aa -D_HPUX_SOURCE -# SVR4 -Xc -D__EXTENSIONS__ -for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" -do - CC="$ac_save_CC $ac_arg" - rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_prog_cc_stdc=$ac_arg -break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext -done -rm -f conftest.$ac_ext conftest.$ac_objext -CC=$ac_save_CC - -fi - -case "x$ac_cv_prog_cc_stdc" in - x|xno) - echo "$as_me:$LINENO: result: none needed" >&5 -echo "${ECHO_T}none needed" >&6 ;; - *) - echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5 -echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6 - CC="$CC $ac_cv_prog_cc_stdc" ;; -esac - -# Some people use a C++ compiler to compile C. Since we use `exit', -# in C++ we need to declare it. In case someone uses the same compiler -# for both compiling C and C++ we need to have the C++ compiler decide -# the declaration of exit, since it's the most demanding environment. -cat >conftest.$ac_ext <<_ACEOF -#ifndef __cplusplus - choke me -#endif -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - for ac_declaration in \ - '' \ - 'extern "C" void std::exit (int) throw (); using std::exit;' \ - 'extern "C" void std::exit (int); using std::exit;' \ - 'extern "C" void exit (int) throw ();' \ - 'extern "C" void exit (int);' \ - 'void exit (int);' -do - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_declaration -#include -int -main () -{ -exit (42); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -continue -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_declaration -int -main () -{ -exit (42); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -done -rm -f conftest* -if test -n "$ac_declaration"; then - echo '#ifdef __cplusplus' >>confdefs.h - echo $ac_declaration >>confdefs.h - echo '#endif' >>confdefs.h -fi - -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5 -echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6 -# On Suns, sometimes $CPP names a directory. -if test -n "$CPP" && test -d "$CPP"; then - CPP= -fi -if test -z "$CPP"; then - if test "${ac_cv_prog_CPP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - # Double quotes because CPP needs to be expanded - for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" - do - ac_preproc_ok=false -for ac_c_preproc_warn_flag in '' yes -do - # Use a header file that comes with gcc, so configuring glibc - # with a fresh cross-compiler works. - # Prefer to if __STDC__ is defined, since - # exists even on freestanding compilers. - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#ifdef __STDC__ -# include -#else -# include -#endif - Syntax error -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Broken: fails on valid input. -continue -fi -rm -f conftest.err conftest.$ac_ext - - # OK, works on sane cases. Now check whether non-existent headers - # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - # Broken: success on invalid input. -continue -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Passes both tests. -ac_preproc_ok=: -break -fi -rm -f conftest.err conftest.$ac_ext - -done -# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.err conftest.$ac_ext -if $ac_preproc_ok; then - break -fi - - done - ac_cv_prog_CPP=$CPP - -fi - CPP=$ac_cv_prog_CPP -else - ac_cv_prog_CPP=$CPP -fi -echo "$as_me:$LINENO: result: $CPP" >&5 -echo "${ECHO_T}$CPP" >&6 -ac_preproc_ok=false -for ac_c_preproc_warn_flag in '' yes -do - # Use a header file that comes with gcc, so configuring glibc - # with a fresh cross-compiler works. - # Prefer to if __STDC__ is defined, since - # exists even on freestanding compilers. - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#ifdef __STDC__ -# include -#else -# include -#endif - Syntax error -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Broken: fails on valid input. -continue -fi -rm -f conftest.err conftest.$ac_ext - - # OK, works on sane cases. Now check whether non-existent headers - # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - # Broken: success on invalid input. -continue -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Passes both tests. -ac_preproc_ok=: -break -fi -rm -f conftest.err conftest.$ac_ext - -done -# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.err conftest.$ac_ext -if $ac_preproc_ok; then - : -else - { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details." >&5 -echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } -fi - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - - -echo "$as_me:$LINENO: checking for egrep" >&5 -echo $ECHO_N "checking for egrep... $ECHO_C" >&6 -if test "${ac_cv_prog_egrep+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if echo a | (grep -E '(a|b)') >/dev/null 2>&1 - then ac_cv_prog_egrep='grep -E' - else ac_cv_prog_egrep='egrep' - fi -fi -echo "$as_me:$LINENO: result: $ac_cv_prog_egrep" >&5 -echo "${ECHO_T}$ac_cv_prog_egrep" >&6 - EGREP=$ac_cv_prog_egrep - - -if test $ac_cv_c_compiler_gnu = yes; then - echo "$as_me:$LINENO: checking whether $CC needs -traditional" >&5 -echo $ECHO_N "checking whether $CC needs -traditional... $ECHO_C" >&6 -if test "${ac_cv_prog_gcc_traditional+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_pattern="Autoconf.*'x'" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -Autoconf TIOCGETP -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "$ac_pattern" >/dev/null 2>&1; then - ac_cv_prog_gcc_traditional=yes -else - ac_cv_prog_gcc_traditional=no -fi -rm -f conftest* - - - if test $ac_cv_prog_gcc_traditional = no; then - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -Autoconf TCGETA -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "$ac_pattern" >/dev/null 2>&1; then - ac_cv_prog_gcc_traditional=yes -fi -rm -f conftest* - - fi -fi -echo "$as_me:$LINENO: result: $ac_cv_prog_gcc_traditional" >&5 -echo "${ECHO_T}$ac_cv_prog_gcc_traditional" >&6 - if test $ac_cv_prog_gcc_traditional = yes; then - CC="$CC -traditional" - fi -fi - - -echo "$as_me:$LINENO: checking whether using GNU C" >&5 -echo $ECHO_N "checking whether using GNU C... $ECHO_C" >&6 -if test "${cl_cv_prog_cc_gcc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#ifdef __GNUC__ - yes -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1; then - cl_cv_prog_cc_gcc=yes -else - cl_cv_prog_cc_gcc=no -fi -rm -f conftest* - - -fi -echo "$as_me:$LINENO: result: $cl_cv_prog_cc_gcc" >&5 -echo "${ECHO_T}$cl_cv_prog_cc_gcc" >&6 -if test $cl_cv_prog_cc_gcc = yes; then - CC_GCC=true - GCC_X_NONE='-x none' -else - CC_GCC=false - GCC_X_NONE='' -fi - - - -echo "$as_me:$LINENO: checking for underscore in external names" >&5 -echo $ECHO_N "checking for underscore in external names... $ECHO_C" >&6 -if test "${cl_cv_prog_as_underscore+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat > conftest.c <&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } >/dev/null 2>&1 -if grep _foo conftest.s >/dev/null ; then - cl_cv_prog_as_underscore=yes -else - cl_cv_prog_as_underscore=no -fi -rm -f conftest* - -fi -echo "$as_me:$LINENO: result: $cl_cv_prog_as_underscore" >&5 -echo "${ECHO_T}$cl_cv_prog_as_underscore" >&6 -if test $cl_cv_prog_as_underscore = yes; then - AS_UNDERSCORE=true - -cat >>confdefs.h <<\_ACEOF -#define ASM_UNDERSCORE -_ACEOF - -else - AS_UNDERSCORE=false -fi - -# Extract the first word of "ranlib", so it can be a program name with args. -set dummy ranlib; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_RANLIB+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$RANLIB"; then - ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_RANLIB="ranlib" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - - test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB="true" -fi -fi -RANLIB=$ac_cv_prog_RANLIB -if test -n "$RANLIB"; then - echo "$as_me:$LINENO: result: $RANLIB" >&5 -echo "${ECHO_T}$RANLIB" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5 -echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6 -set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,:./+-,___p_,'` -if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.make <<\_ACEOF -all: - @echo 'ac_maketemp="$(MAKE)"' -_ACEOF -# GNU make sometimes prints "make[1]: Entering...", which would confuse us. -eval `${MAKE-make} -f conftest.make 2>/dev/null | grep temp=` -if test -n "$ac_maketemp"; then - eval ac_cv_prog_make_${ac_make}_set=yes -else - eval ac_cv_prog_make_${ac_make}_set=no -fi -rm -f conftest.make -fi -if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 - SET_MAKE= -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 - SET_MAKE="MAKE=${MAKE-make}" -fi - -# Find a good install program. We prefer a C program (faster), -# so one script is as good as another. But avoid the broken or -# incompatible versions: -# SysV /etc/install, /usr/sbin/install -# SunOS /usr/etc/install -# IRIX /sbin/install -# AIX /bin/install -# AFS /usr/afsws/bin/install, which mis-handles nonexistent args -# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" -# ./install, which can be erroneously created by make from ./install.sh. -echo "$as_me:$LINENO: checking for a BSD compatible install" >&5 -echo $ECHO_N "checking for a BSD compatible install... $ECHO_C" >&6 -if test -z "$INSTALL"; then -if test "${cl_cv_path_install+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" - for ac_dir in $PATH; do - # Account for people who put trailing slashes in PATH elements. - case "$ac_dir/" in - /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;; - *) - # OSF1 and SCO ODT 3.0 have their own names for install. - # Don't use installbsd from OSF since it installs stuff as root - # by default. - for ac_prog in ginstall scoinst install; do - if test -f $ac_dir/$ac_prog; then - if test $ac_prog = install && - grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then - # AIX install. It has an incompatible calling convention. - : - else - cl_cv_path_install="$ac_dir/$ac_prog -c" - break 2 - fi - fi - done - ;; - esac - done - IFS="$ac_save_ifs" - # As a last resort, use the absolute pathname of cp. - if test -z "$cl_cv_path_install"; then - cl_cv_path_install="cp" - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" - for ac_dir in $PATH; do - if test -f $ac_dir/cp; then - cl_cv_path_install="$ac_dir/cp" - break - fi - done - IFS="$ac_save_ifs" - fi - -fi - INSTALL="$cl_cv_path_install" -fi -echo "$as_me:$LINENO: result: $INSTALL" >&5 -echo "${ECHO_T}$INSTALL" >&6 -# Use test -z because SunOS4 sh mishandles braces in ${var-val}. -# It thinks the first close brace ends the variable substitution. -test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='$(INSTALL)' -if test -z "$INSTALL_DATA"; then - case "$INSTALL" in - cp | */cp ) INSTALL_DATA='$(INSTALL)' ;; - * ) INSTALL_DATA='$(INSTALL) -m 644' ;; - esac -fi - -echo "$as_me:$LINENO: checking how to copy files" >&5 -echo $ECHO_N "checking how to copy files... $ECHO_C" >&6 -if test "${cl_cv_prog_cp+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -echo "blabla" > conftest.x -err=`/bin/sh -c "cp -p conftest.x conftest.y 2>&1"` -if test -z "$err"; then - cl_cv_prog_cp='cp -p' -else - cl_cv_prog_cp='cp' -fi -rm -f conftest* - -fi -echo "$as_me:$LINENO: result: $cl_cv_prog_cp" >&5 -echo "${ECHO_T}$cl_cv_prog_cp" >&6 -CP="$cl_cv_prog_cp" - -echo "$as_me:$LINENO: checking how to make hard links" >&5 -echo $ECHO_N "checking how to make hard links... $ECHO_C" >&6 -if test "${cl_cv_prog_LN+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -rm -f conftestdata conftestfile -echo data > conftestfile -if ln conftestfile conftestdata 2>/dev/null; then - cl_cv_prog_LN=ln -else - cl_cv_prog_LN="$cl_cv_prog_cp" -fi -rm -f conftestdata conftestfile - -fi -echo "$as_me:$LINENO: result: $cl_cv_prog_LN" >&5 -echo "${ECHO_T}$cl_cv_prog_LN" >&6 -LN="$cl_cv_prog_LN" - -echo "$as_me:$LINENO: checking whether ln -s works" >&5 -echo $ECHO_N "checking whether ln -s works... $ECHO_C" >&6 -if test "${cl_cv_prog_LN_S+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -rm -f conftestdata -if ln -s X conftestdata 2>/dev/null; then - cl_cv_prog_LN_S="ln -s" -else - cl_cv_prog_LN_S="$cl_cv_prog_LN" -fi -rm -f conftestdata - -fi -if test "$cl_cv_prog_LN_S" = "ln -s"; then - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi -LN_S="$cl_cv_prog_LN_S" - -echo "$as_me:$LINENO: checking for working void" >&5 -echo $ECHO_N "checking for working void... $ECHO_C" >&6 -if test "${cl_cv_c_void+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ -void f(); -typedef void x; x g(); -typedef void* y; y a; - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cl_cv_c_void=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -cl_cv_c_void=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - -fi - -echo "$as_me:$LINENO: result: $cl_cv_c_void" >&5 -echo "${ECHO_T}$cl_cv_c_void" >&6 -if test $cl_cv_c_void = yes; then - have_void=1 -else - -cat >>confdefs.h <<\_ACEOF -#define void char -_ACEOF - -fi -if test -n "$have_void"; then -echo "$as_me:$LINENO: checking for working \"return void\"" >&5 -echo $ECHO_N "checking for working \"return void\"... $ECHO_C" >&6 -if test "${cl_cv_c_return_void+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -void f() {} typedef void x; x g() { return f(); } -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cl_cv_c_return_void=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -cl_cv_c_return_void=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - -fi - -echo "$as_me:$LINENO: result: $cl_cv_c_return_void" >&5 -echo "${ECHO_T}$cl_cv_c_return_void" >&6 -if test $cl_cv_c_return_void = yes; then - cl_cv_c_return_void_form=return -else - cl_cv_c_return_void_form="" -fi - -fi - -cat >>confdefs.h <<_ACEOF -#define return_void $cl_cv_c_return_void_form -_ACEOF - - -echo "$as_me:$LINENO: checking for ANSI C header files" >&5 -echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 -if test "${cl_cv_header_stdc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include -#include -#include -#include -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - cl_cv_header_stdc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - cl_cv_header_stdc=no -fi -rm -f conftest.err conftest.$ac_ext - -fi - -echo "$as_me:$LINENO: result: $cl_cv_header_stdc" >&5 -echo "${ECHO_T}$cl_cv_header_stdc" >&6 -if test $cl_cv_header_stdc = yes; then - cat >>confdefs.h <<\_ACEOF -#define STDC_HEADERS 1 -_ACEOF - -fi - - -echo "$as_me:$LINENO: checking for ANSI C header files" >&5 -echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 -if test "${ac_cv_header_stdc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include -#include -#include - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_header_stdc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_header_stdc=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - -if test $ac_cv_header_stdc = yes; then - # SunOS 4.x string.h does not declare mem*, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "memchr" >/dev/null 2>&1; then - : -else - ac_cv_header_stdc=no -fi -rm -f conftest* - -fi - -if test $ac_cv_header_stdc = yes; then - # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "free" >/dev/null 2>&1; then - : -else - ac_cv_header_stdc=no -fi -rm -f conftest* - -fi - -if test $ac_cv_header_stdc = yes; then - # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. - if test "$cross_compiling" = yes; then - : -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#if ((' ' & 0x0FF) == 0x020) -# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') -# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) -#else -# define ISLOWER(c) \ - (('a' <= (c) && (c) <= 'i') \ - || ('j' <= (c) && (c) <= 'r') \ - || ('s' <= (c) && (c) <= 'z')) -# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) -#endif - -#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) -int -main () -{ - int i; - for (i = 0; i < 256; i++) - if (XOR (islower (i), ISLOWER (i)) - || toupper (i) != TOUPPER (i)) - exit(2); - exit (0); -} -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -ac_cv_header_stdc=no -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -fi -fi -echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 -echo "${ECHO_T}$ac_cv_header_stdc" >&6 -if test $ac_cv_header_stdc = yes; then - -cat >>confdefs.h <<\_ACEOF -#define STDC_HEADERS 1 -_ACEOF - -fi - -# On IRIX 5.3, sys/types and inttypes.h are conflicting. - - - - - - - - - -for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ - inttypes.h stdint.h unistd.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default - -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - eval "$as_ac_Header=yes" -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -eval "$as_ac_Header=no" -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - - -for ac_header in unistd_h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_header_compiler=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 - -# Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------------ ## -## Report this to the AC_PACKAGE_NAME lists. ## -## ------------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - -echo "$as_me:$LINENO: checking for getpagesize" >&5 -echo $ECHO_N "checking for getpagesize... $ECHO_C" >&6 -if test "${cl_cv_func_getpagesize+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -#ifdef HAVE_UNISTD_H -#include -#include -#endif - -int -main () -{ -getpagesize(); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cl_cv_func_getpagesize=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -cl_cv_func_getpagesize=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - -fi - -echo "$as_me:$LINENO: result: $cl_cv_func_getpagesize" >&5 -echo "${ECHO_T}$cl_cv_func_getpagesize" >&6 -if test $cl_cv_func_getpagesize = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_GETPAGESIZE -_ACEOF - -have_getpagesize=1 -fi -if test -n "$have_getpagesize"; then -echo "$as_me:$LINENO: checking for getpagesize declaration" >&5 -echo $ECHO_N "checking for getpagesize declaration... $ECHO_C" >&6 -if test "${cl_cv_proto_getpagesize+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -#include -#ifdef HAVE_UNISTD_H -#include -#endif - -extern -#ifdef __cplusplus -"C" -#endif - -#if defined(__STDC__) || defined(__cplusplus) -int getpagesize(); -#else -int getpagesize(); -#endif - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cl_cv_proto_getpagesize_ret="int" -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -cl_cv_proto_getpagesize_ret="size_t" -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - - -cl_cv_proto_getpagesize="extern $cl_cv_proto_getpagesize_ret getpagesize (void);" -fi - -cl_cv_proto_getpagesize=`echo "$cl_cv_proto_getpagesize" | tr -s ' ' | sed -e 's/( /(/'` -echo "$as_me:$LINENO: result: ${ac_t:- - }$cl_cv_proto_getpagesize" >&5 -echo "${ECHO_T}${ac_t:- - }$cl_cv_proto_getpagesize" >&6 - - -cat >>confdefs.h <<_ACEOF -#define RETGETPAGESIZETYPE $cl_cv_proto_getpagesize_ret -_ACEOF - -else - -for ac_header in sys/param.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_header_compiler=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 - -# Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------------ ## -## Report this to the AC_PACKAGE_NAME lists. ## -## ------------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - -fi - -echo "$as_me:$LINENO: checking for vm_allocate" >&5 -echo $ECHO_N "checking for vm_allocate... $ECHO_C" >&6 -if test "${cl_cv_func_vm+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ -vm_allocate(); task_self(); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cl_cv_func_vm=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -cl_cv_func_vm=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - -fi - -echo "$as_me:$LINENO: result: $cl_cv_func_vm" >&5 -echo "${ECHO_T}$cl_cv_func_vm" >&6 -if test $cl_cv_func_vm = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_MACH_VM -_ACEOF - -fi - - - -for ac_header in sys/file.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_header_compiler=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 - -# Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------------ ## -## Report this to the AC_PACKAGE_NAME lists. ## -## ------------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - -if test $ac_cv_header_sys_file_h = yes; then -openflags_decl=' -#include -#ifdef HAVE_UNISTD_H -#include -#include -#endif -#include -' -openflags_prog='int x = O_RDWR | O_RDONLY | O_WRONLY | O_CREAT | O_TRUNC;' -echo "$as_me:$LINENO: checking for O_RDWR in fcntl.h" >&5 -echo $ECHO_N "checking for O_RDWR in fcntl.h... $ECHO_C" >&6 -if test "${cl_cv_decl_O_RDWR_fcntl_h+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$openflags_decl -int -main () -{ -$openflags_prog - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cl_cv_decl_O_RDWR_fcntl_h=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -cl_cv_decl_O_RDWR_fcntl_h=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - -fi - -echo "$as_me:$LINENO: result: $cl_cv_decl_O_RDWR_fcntl_h" >&5 -echo "${ECHO_T}$cl_cv_decl_O_RDWR_fcntl_h" >&6 -if test $cl_cv_decl_O_RDWR_fcntl_h = yes; then - openflags_ok=1 -fi -if test -z "$openflags_ok"; then - -cat >>confdefs.h <<\_ACEOF -#define OPEN_NEEDS_SYS_FILE_H -_ACEOF - -fi -fi - - -if test "${ac_cv_header_sys_mman_h+set}" = set; then - echo "$as_me:$LINENO: checking for sys/mman.h" >&5 -echo $ECHO_N "checking for sys/mman.h... $ECHO_C" >&6 -if test "${ac_cv_header_sys_mman_h+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -echo "$as_me:$LINENO: result: $ac_cv_header_sys_mman_h" >&5 -echo "${ECHO_T}$ac_cv_header_sys_mman_h" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking sys/mman.h usability" >&5 -echo $ECHO_N "checking sys/mman.h usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_header_compiler=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 - -# Is the header present? -echo "$as_me:$LINENO: checking sys/mman.h presence" >&5 -echo $ECHO_N "checking sys/mman.h presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: sys/mman.h: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: sys/mman.h: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: sys/mman.h: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: sys/mman.h: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: sys/mman.h: present but cannot be compiled" >&5 -echo "$as_me: WARNING: sys/mman.h: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: sys/mman.h: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: sys/mman.h: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: sys/mman.h: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: sys/mman.h: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: sys/mman.h: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: sys/mman.h: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: sys/mman.h: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: sys/mman.h: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: sys/mman.h: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: sys/mman.h: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------------ ## -## Report this to the AC_PACKAGE_NAME lists. ## -## ------------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for sys/mman.h" >&5 -echo $ECHO_N "checking for sys/mman.h... $ECHO_C" >&6 -if test "${ac_cv_header_sys_mman_h+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_cv_header_sys_mman_h=$ac_header_preproc -fi -echo "$as_me:$LINENO: result: $ac_cv_header_sys_mman_h" >&5 -echo "${ECHO_T}$ac_cv_header_sys_mman_h" >&6 - -fi -if test $ac_cv_header_sys_mman_h = yes; then - : -else - no_mmap=1 -fi - -if test -z "$no_mmap"; then -echo "$as_me:$LINENO: checking for mmap" >&5 -echo $ECHO_N "checking for mmap... $ECHO_C" >&6 -if test "${ac_cv_func_mmap+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* Define mmap to an innocuous variant, in case declares mmap. - For example, HP-UX 11i declares gettimeofday. */ -#define mmap innocuous_mmap - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char mmap (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef mmap - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -{ -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char mmap (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_mmap) || defined (__stub___mmap) -choke me -#else -char (*f) () = mmap; -#endif -#ifdef __cplusplus -} -#endif - -int -main () -{ -return f != mmap; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_mmap=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_func_mmap=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_func_mmap" >&5 -echo "${ECHO_T}$ac_cv_func_mmap" >&6 -if test $ac_cv_func_mmap = yes; then - : -else - no_mmap=1 -fi -if test -z "$no_mmap"; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_MMAP -_ACEOF - -echo "$as_me:$LINENO: checking for working mmap" >&5 -echo $ECHO_N "checking for working mmap... $ECHO_C" >&6 -if test "${cl_cv_func_mmap_works+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -case "$host" in - i3456786-*-sysv4*) - # UNIX_SYSV_UHC_1 - avoid=0x08000000 ;; - mips-sgi-irix* | mips-dec-ultrix*) - # UNIX_IRIX, UNIX_DEC_ULTRIX - avoid=0x10000000 ;; - rs6000-ibm-aix*) - # UNIX_AIX - avoid=0x20000000 ;; - *) - avoid=0 ;; -esac -mmap_prog_1=' -#include -#ifdef HAVE_UNISTD_H -#include -#endif -#include -#ifdef OPEN_NEEDS_SYS_FILE_H -#include -#endif -#include -#include -int main () { -' -mmap_prog_2="#define bits_to_avoid $avoid"' -#define my_shift 24 -#define my_low 1 -#ifdef FOR_SUN4_29 -#define my_high 31 -#define my_size 32768 /* hope that 32768 is a multiple of the page size */ -/* i*32 KB for i=1..31 gives a total of 15.5 MB, which is close to what we need */ -#else -#define my_high 64 -#define my_size 8192 /* hope that 8192 is a multiple of the page size */ -/* i*8 KB for i=1..64 gives a total of 16.25 MB, which is close to what we need */ -#endif - {long i; -#define i_ok(i) ((i) & (bits_to_avoid >> my_shift) == 0) - for (i=my_low; i<=my_high; i++) - if (i_ok(i)) - { caddr_t addr = (caddr_t)(i << my_shift); -/* Check for 8 MB, not 16 MB. This is more likely to work on Solaris 2. */ -#if bits_to_avoid - long size = i*my_size; -#else - long size = ((i+1)/2)*my_size; -#endif - if (mmap(addr,size,PROT_READ|PROT_WRITE,flags|MAP_FIXED,fd,0) == (void*)-1) exit(1); - } -#define x(i) *(unsigned char *) ((i<=my_low; i--) if (i_ok(i)) { if (x(i) != y(i)) exit(1); } - exit(0); -}} -' -if test "$cross_compiling" = yes; then - : # When cross-compiling, don't assume anything. - -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$mmap_prog_1 - int flags = MAP_ANON | MAP_PRIVATE; - int fd = -1; -$mmap_prog_2 - -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - have_mmap_anon=1 -cl_cv_func_mmap_anon=yes -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -rm -f core -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -if test "$cross_compiling" = yes; then - : # When cross-compiling, don't assume anything. - -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$mmap_prog_1 - int flags = MAP_ANONYMOUS | MAP_PRIVATE; - int fd = -1; -$mmap_prog_2 - -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - have_mmap_anon=1 -cl_cv_func_mmap_anonymous=yes -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -rm -f core -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -if test "$cross_compiling" = yes; then - : # When cross-compiling, don't assume anything. - -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$mmap_prog_1 -#ifndef MAP_FILE -#define MAP_FILE 0 -#endif - int flags = MAP_FILE | MAP_PRIVATE; - int fd = open("/dev/zero",O_RDONLY,0666); - if (fd<0) exit(1); -$mmap_prog_2 - -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - have_mmap_devzero=1 -cl_cv_func_mmap_devzero=yes -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -rm -f core -retry_mmap=1 -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -if test -n "$retry_mmap"; then -if test "$cross_compiling" = yes; then - : # When cross-compiling, don't assume anything. - -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#define FOR_SUN4_29 -$mmap_prog_1 -#ifndef MAP_FILE -#define MAP_FILE 0 -#endif - int flags = MAP_FILE | MAP_PRIVATE; - int fd = open("/dev/zero",O_RDONLY,0666); - if (fd<0) exit(1); -$mmap_prog_2 - -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - have_mmap_devzero=1 -cl_cv_func_mmap_devzero_sun4_29=yes -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -rm -f core -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -fi -if test -n "$have_mmap_anon" -o -n "$have_mmap_devzero"; then -cl_cv_func_mmap_works=yes -else -cl_cv_func_mmap_works=no -fi - -fi -echo "$as_me:$LINENO: result: $cl_cv_func_mmap_works" >&5 -echo "${ECHO_T}$cl_cv_func_mmap_works" >&6 -if test "$cl_cv_func_mmap_anon" = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_MMAP_ANON -_ACEOF - -fi -if test "$cl_cv_func_mmap_anonymous" = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_MMAP_ANONYMOUS -_ACEOF - -fi -if test "$cl_cv_func_mmap_devzero" = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_MMAP_DEVZERO -_ACEOF - -fi -if test "$cl_cv_func_mmap_devzero_sun4_29" = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_MMAP_DEVZERO_SUN4_29 -_ACEOF - -fi -fi -fi - - -for ac_func in mprotect -do -as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` -echo "$as_me:$LINENO: checking for $ac_func" >&5 -echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 -if eval "test \"\${$as_ac_var+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* Define $ac_func to an innocuous variant, in case declares $ac_func. - For example, HP-UX 11i declares gettimeofday. */ -#define $ac_func innocuous_$ac_func - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $ac_func (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef $ac_func - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -{ -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char $ac_func (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_$ac_func) || defined (__stub___$ac_func) -choke me -#else -char (*f) () = $ac_func; -#endif -#ifdef __cplusplus -} -#endif - -int -main () -{ -return f != $ac_func; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - eval "$as_ac_var=yes" -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -eval "$as_ac_var=no" -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 -if test `eval echo '${'$as_ac_var'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 -_ACEOF - -fi -done -if test $ac_cv_func_mprotect = yes; then -echo "$as_me:$LINENO: checking for working mprotect" >&5 -echo $ECHO_N "checking for working mprotect... $ECHO_C" >&6 -if test "${cl_cv_func_mprotect_works+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -mprotect_prog=' -#include -/* declare malloc() */ -#include -#ifdef HAVE_UNISTD_H -#include -#endif -/* declare getpagesize() and mprotect() */ -#include -#ifndef HAVE_GETPAGESIZE -#include -#define getpagesize() PAGESIZE -#else -extern -#ifdef __cplusplus -"C" -#endif - -#if defined(__STDC__) || defined(__cplusplus) -RETGETPAGESIZETYPE getpagesize (void); -#else -RETGETPAGESIZETYPE getpagesize(); -#endif -#endif -char foo; -int main () { - unsigned long pagesize = getpagesize(); -#define page_align(address) (char*)((unsigned long)(address) & -pagesize) -' -if test "$cross_compiling" = yes; then - # When cross-compiling, don't assume anything. -no_mprotect=1 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$mprotect_prog - if ((pagesize-1) & pagesize) exit(1); - exit(0); } -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -no_mprotect=1 -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -mprotect_prog="$mprotect_prog"' - char* area = (char*) malloc(6*pagesize); - char* fault_address = area + pagesize*7/2; -' -if test -z "$no_mprotect"; then -if test "$cross_compiling" = yes; then - : # When cross-compiling, don't assume anything. - -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$mprotect_prog - if (mprotect(page_align(fault_address),pagesize,PROT_NONE) < 0) exit(0); - foo = *fault_address; /* this should cause a core dump */ - exit(0); } -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - no_mprotect=1 -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -rm -f core -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -fi -if test -z "$no_mprotect"; then -if test "$cross_compiling" = yes; then - : # When cross-compiling, don't assume anything. - -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$mprotect_prog - if (mprotect(page_align(fault_address),pagesize,PROT_NONE) < 0) exit(0); - *fault_address = 'z'; /* this should cause a core dump */ - exit(0); } -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - no_mprotect=1 -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -rm -f core -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -fi -if test -z "$no_mprotect"; then -if test "$cross_compiling" = yes; then - : # When cross-compiling, don't assume anything. - -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$mprotect_prog - if (mprotect(page_align(fault_address),pagesize,PROT_READ) < 0) exit(0); - *fault_address = 'z'; /* this should cause a core dump */ - exit(0); } -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - no_mprotect=1 -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -rm -f core -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -fi -if test -z "$no_mprotect"; then -if test "$cross_compiling" = yes; then - : # When cross-compiling, don't assume anything. - -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$mprotect_prog - if (mprotect(page_align(fault_address),pagesize,PROT_READ) < 0) exit(1); - if (mprotect(page_align(fault_address),pagesize,PROT_READ|PROT_WRITE) < 0) exit(1); - *fault_address = 'z'; /* this should not cause a core dump */ - exit(0); } -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -no_mprotect=1 -rm -f core -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -fi -if test -z "$no_mprotect"; then - cl_cv_func_mprotect_works=yes -else - cl_cv_func_mprotect_works=no -fi - -fi -echo "$as_me:$LINENO: result: $cl_cv_func_mprotect_works" >&5 -echo "${ECHO_T}$cl_cv_func_mprotect_works" >&6 -if test $cl_cv_func_mprotect_works = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_WORKING_MPROTECT -_ACEOF - -fi -fi - - -for ac_header in sys/shm.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_header_compiler=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 - -# Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------------ ## -## Report this to the AC_PACKAGE_NAME lists. ## -## ------------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - -if test $ac_cv_header_sys_shm_h = yes; then - -for ac_header in sys/ipc.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_header_compiler=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 - -# Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------------ ## -## Report this to the AC_PACKAGE_NAME lists. ## -## ------------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - -fi - -if test "$ac_cv_header_sys_shm_h" = yes -a "$ac_cv_header_sys_ipc_h" = yes; then -# This test is from Marcus Daniels -echo "$as_me:$LINENO: checking for working shared memory" >&5 -echo $ECHO_N "checking for working shared memory... $ECHO_C" >&6 -if test "${cl_cv_sys_shm_works+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -if test "$cross_compiling" = yes; then - cl_cv_sys_shm_works="guessing no" -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include -#include -/* try attaching a single segment to multiple addresses */ -#define segsize 0x10000 -#define attaches 128 -#define base_addr 0x01000000 -int main () -{ int shmid, i; char* addr; char* result; - if ((shmid = shmget(IPC_PRIVATE,segsize,0400)) < 0) exit(1); - for (i=0, addr = (char*)0x01000000; i&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cl_cv_sys_shm_works=yes -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -cl_cv_sys_shm_works=no -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi - -fi -echo "$as_me:$LINENO: result: $cl_cv_sys_shm_works" >&5 -echo "${ECHO_T}$cl_cv_sys_shm_works" >&6 -fi -case "$cl_cv_sys_shm_works" in - *yes) have_shm=1 - -cat >>confdefs.h <<\_ACEOF -#define HAVE_SHM -_ACEOF - - -for ac_header in sys/sysmacros.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_header_compiler=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 - -# Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------------ ## -## Report this to the AC_PACKAGE_NAME lists. ## -## ------------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - ;; - *) ;; -esac - - ac_aux_dir=${srcdir}/../autoconf -ac_config_guess="$SHELL $ac_aux_dir/config.guess" -ac_config_sub="$SHELL $ac_aux_dir/config.sub" -# Make sure we can run config.sub. -$ac_config_sub sun4 >/dev/null 2>&1 || - { { echo "$as_me:$LINENO: error: cannot run $ac_config_sub" >&5 -echo "$as_me: error: cannot run $ac_config_sub" >&2;} - { (exit 1); exit 1; }; } - -echo "$as_me:$LINENO: checking build system type" >&5 -echo $ECHO_N "checking build system type... $ECHO_C" >&6 -if test "${ac_cv_build+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_cv_build_alias=$build_alias -test -z "$ac_cv_build_alias" && - ac_cv_build_alias=`$ac_config_guess` -test -z "$ac_cv_build_alias" && - { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5 -echo "$as_me: error: cannot guess build type; you must specify one" >&2;} - { (exit 1); exit 1; }; } -ac_cv_build=`$ac_config_sub $ac_cv_build_alias` || - { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_build_alias failed" >&5 -echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed" >&2;} - { (exit 1); exit 1; }; } - -fi -echo "$as_me:$LINENO: result: $ac_cv_build" >&5 -echo "${ECHO_T}$ac_cv_build" >&6 -build=$ac_cv_build -build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` - - -echo "$as_me:$LINENO: checking host system type" >&5 -echo $ECHO_N "checking host system type... $ECHO_C" >&6 -if test "${ac_cv_host+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_cv_host_alias=$host_alias -test -z "$ac_cv_host_alias" && - ac_cv_host_alias=$ac_cv_build_alias -ac_cv_host=`$ac_config_sub $ac_cv_host_alias` || - { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_host_alias failed" >&5 -echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;} - { (exit 1); exit 1; }; } - -fi -echo "$as_me:$LINENO: result: $ac_cv_host" >&5 -echo "${ECHO_T}$ac_cv_host" >&6 -host=$ac_cv_host -host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` - - - - -case "$host_cpu" in - i[4567]86 ) - host_cpu=i386 - ;; - alphaev[4-8] | alphaev56 | alphapca5[67] | alphaev6[78] ) - host_cpu=alpha - ;; - hppa1.0 | hppa1.1 | hppa2.0* | hppa64 ) - host_cpu=hppa - ;; - powerpc ) - host_cpu=rs6000 - ;; - c1 | c2 | c32 | c34 | c38 | c4 ) - host_cpu=convex - ;; - arm* ) - host_cpu=arm - ;; - mips ) - echo "$as_me:$LINENO: checking for 64-bit MIPS" >&5 -echo $ECHO_N "checking for 64-bit MIPS... $ECHO_C" >&6 -if test "${cl_cv_host_mips64+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#if defined(_MIPS_SZLONG) -#if (_MIPS_SZLONG == 64) -/* We should also check for (_MIPS_SZPTR == 64), but gcc keeps this at 32. */ - yes -#endif -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1; then - cl_cv_host_mips64=yes -else - cl_cv_host_mips64=no -fi -rm -f conftest* - - -fi -echo "$as_me:$LINENO: result: $cl_cv_host_mips64" >&5 -echo "${ECHO_T}$cl_cv_host_mips64" >&6 -if test $cl_cv_host_mips64 = yes; then - host_cpu=mips64 -else - echo "$as_me:$LINENO: checking for MIPS with n32 ABI" >&5 -echo $ECHO_N "checking for MIPS with n32 ABI... $ECHO_C" >&6 -if test "${cl_cv_host_mipsn32+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#if __mips >= 3 - yes -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1; then - cl_cv_host_mipsn32=yes -else - cl_cv_host_mipsn32=no -fi -rm -f conftest* - - -fi -echo "$as_me:$LINENO: result: $cl_cv_host_mipsn32" >&5 -echo "${ECHO_T}$cl_cv_host_mipsn32" >&6 -if test $cl_cv_host_mipsn32 = yes; then - host_cpu=mipsn32 -fi -fi - ;; - sparc | sparc64 ) - echo "$as_me:$LINENO: checking for 64-bit SPARC" >&5 -echo $ECHO_N "checking for 64-bit SPARC... $ECHO_C" >&6 -if test "${cl_cv_host_sparc64+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#if defined(__sparcv9) || defined(__arch64__) - yes -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1; then - cl_cv_host_sparc64=yes -else - cl_cv_host_sparc64=no -fi -rm -f conftest* - - -fi -echo "$as_me:$LINENO: result: $cl_cv_host_sparc64" >&5 -echo "${ECHO_T}$cl_cv_host_sparc64" >&6 -if test $cl_cv_host_sparc64 = yes; then - host_cpu=sparc64 -else - host_cpu=sparc -fi - ;; -esac -cat >> confdefs.h <&5 -echo $ECHO_N "checking whether code in malloc'ed memory is executable... $ECHO_C" >&6 -if test "${cl_cv_codeexec+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -case "$host_os" in - hpux*) cl_cv_codeexec="guessing yes" ;; - *) -case "$host_cpu" in - # On host=rs6000-*-aix3.2.5 malloc'ed memory is indeed not executable. - rs6000) cl_cv_codeexec="guessing no" ;; - *) -if test "$cross_compiling" = yes; then - cl_cv_codeexec="guessing yes" -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -#include -/* declare malloc() */ -#include -int fun () { return 31415926; } -int main () -{ long size = (char*)&main - (char*)&fun; - char* funcopy = (char*) malloc(size); - int i; - for (i = 0; i < size; i++) { funcopy[i] = ((char*)&fun)[i]; } - exit(!((*(int(*)())funcopy)() == 31415926)); -} -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cl_cv_codeexec=yes -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -rm -f core -cl_cv_codeexec=no -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi - ;; -esac - ;; -esac - -fi -echo "$as_me:$LINENO: result: $cl_cv_codeexec" >&5 -echo "${ECHO_T}$cl_cv_codeexec" >&6 -case "$cl_cv_codeexec" in - *yes) cat >>confdefs.h <<\_ACEOF -#define CODE_EXECUTABLE 1 -_ACEOF - ;; - *no) ;; -esac - -CPU_OBJECTS='' -if test ${host_cpu} = hppa -o ${host_cpu} = ia64; then - CPU_OBJECTS="$CPU_OBJECTS "'tramp-$(CPU).o' -fi -if test ${host_cpu} = rs6000; then - case "${host_os}" in - aix*) CPU_OBJECTS="$CPU_OBJECTS "'tramp-$(CPU).o' ;; - *) ;; - esac -fi -if test ${host_cpu} = sparc -o ${host_cpu} = sparc64 -o ${host_cpu} = alpha -o ${host_cpu} = hppa -o ${host_cpu} = convex; then - CPU_OBJECTS="$CPU_OBJECTS "'cache-$(CPU).o' -fi -if test ${host_cpu} = rs6000; then - case "${host_os}" in - aix*) ;; - *) CPU_OBJECTS="$CPU_OBJECTS "'cache-$(CPU).o' ;; - esac -fi - -if test ${host_cpu} = mips -o ${host_cpu} = mipsn32 -o ${host_cpu} = mips64; then - -for ac_header in sys/cachectl.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_header_compiler=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 - -# Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------------ ## -## Report this to the AC_PACKAGE_NAME lists. ## -## ------------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - -fi -if test ${host_cpu} = m88k; then - -for ac_header in sys/m88kbcs.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_header_compiler=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 - -# Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------------ ## -## Report this to the AC_PACKAGE_NAME lists. ## -## ------------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - -fi - ac_config_files="$ac_config_files Makefile" -cat >confcache <<\_ACEOF -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs, see configure's option --config-cache. -# It is not useful on other systems. If it contains results you don't -# want to keep, you may remove or edit it. -# -# config.status only pays attention to the cache file if you give it -# the --recheck option to rerun configure. -# -# `ac_cv_env_foo' variables (set or unset) will be overridden when -# loading this file, other *unset* `ac_cv_foo' will be assigned the -# following values. - -_ACEOF - -# The following way of writing the cache mishandles newlines in values, -# but we know of no workaround that is simple, portable, and efficient. -# So, don't put newlines in cache variables' values. -# Ultrix sh set writes to stderr and can't be redirected directly, -# and sets the high bit in the cache file unless we assign to the vars. -{ - (set) 2>&1 | - case `(ac_space=' '; set | grep ac_space) 2>&1` in - *ac_space=\ *) - # `set' does not quote correctly, so add quotes (double-quote - # substitution turns \\\\ into \\, and sed turns \\ into \). - sed -n \ - "s/'/'\\\\''/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" - ;; - *) - # `set' quotes correctly as required by POSIX, so do not add quotes. - sed -n \ - "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" - ;; - esac; -} | - sed ' - t clear - : clear - s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ - t end - /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ - : end' >>confcache -if diff $cache_file confcache >/dev/null 2>&1; then :; else - if test -w $cache_file; then - test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file" - cat confcache >$cache_file - else - echo "not updating unwritable cache $cache_file" - fi -fi -rm -f confcache - -test "x$prefix" = xNONE && prefix=$ac_default_prefix -# Let make expand exec_prefix. -test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' - -# VPATH may cause trouble with some makes, so we remove $(srcdir), -# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and -# trailing colons and then remove the whole line if VPATH becomes empty -# (actually we leave an empty line to preserve line numbers). -if test "x$srcdir" = x.; then - ac_vpsub='/^[ ]*VPATH[ ]*=/{ -s/:*\$(srcdir):*/:/; -s/:*\${srcdir}:*/:/; -s/:*@srcdir@:*/:/; -s/^\([^=]*=[ ]*\):*/\1/; -s/:*$//; -s/^[^=]*=[ ]*$//; -}' -fi - -DEFS=-DHAVE_CONFIG_H - -ac_libobjs= -ac_ltlibobjs= -for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue - # 1. Remove the extension, and $U if already installed. - ac_i=`echo "$ac_i" | - sed 's/\$U\././;s/\.o$//;s/\.obj$//'` - # 2. Add them. - ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext" - ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo' -done -LIBOBJS=$ac_libobjs - -LTLIBOBJS=$ac_ltlibobjs - - - -: ${CONFIG_STATUS=./config.status} -ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files $CONFIG_STATUS" -{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5 -echo "$as_me: creating $CONFIG_STATUS" >&6;} -cat >$CONFIG_STATUS <<_ACEOF -#! $SHELL -# Generated by $as_me. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false -SHELL=\${CONFIG_SHELL-$SHELL} -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## - -# Be Bourne compatible -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' -elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then - set -o posix -fi -DUALCASE=1; export DUALCASE # for MKS sh - -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - - -# Work around bugs in pre-3.0 UWIN ksh. -$as_unset ENV MAIL MAILPATH -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -for as_var in \ - LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ - LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ - LC_TELEPHONE LC_TIME -do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var - else - $as_unset $as_var - fi -done - -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - - -# Name of the executable. -as_me=`$as_basename "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)$' \| \ - . : '\(.\)' 2>/dev/null || -echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } - /^X\/\(\/\/\)$/{ s//\1/; q; } - /^X\/\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - - -# PATH needs CR, and LINENO needs CR and PATH. -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" || { - # Find who we are. Look in the path if we contain no path at all - # relative or not. - case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done - - ;; - esac - # We did not find ourselves, most probably we were run as `sh COMMAND' - # in which case we are not to be found in the path. - if test "x$as_myself" = x; then - as_myself=$0 - fi - if test ! -f "$as_myself"; then - { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5 -echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;} - { (exit 1); exit 1; }; } - fi - case $CONFIG_SHELL in - '') - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for as_base in sh bash ksh sh5; do - case $as_dir in - /*) - if ("$as_dir/$as_base" -c ' - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then - $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } - $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } - CONFIG_SHELL=$as_dir/$as_base - export CONFIG_SHELL - exec "$CONFIG_SHELL" "$0" ${1+"$@"} - fi;; - esac - done -done -;; - esac - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line before each line; the second 'sed' does the real - # work. The second script uses 'N' to pair each line-number line - # with the numbered line, and appends trailing '-' during - # substitution so that $LINENO is not a special case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) - sed '=' <$as_myself | - sed ' - N - s,$,-, - : loop - s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, - t loop - s,-$,, - s,^['$as_cr_digits']*\n,, - ' >$as_me.lineno && - chmod +x $as_me.lineno || - { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5 -echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;} - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensible to this). - . ./$as_me.lineno - # Exit status is that of the last command. - exit -} - - -case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in - *c*,-n*) ECHO_N= ECHO_C=' -' ECHO_T=' ' ;; - *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; - *) ECHO_N= ECHO_C='\c' ECHO_T= ;; -esac - -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -rm -f conf$$ conf$$.exe conf$$.file -echo >conf$$.file -if ln -s conf$$.file conf$$ 2>/dev/null; then - # We could just check for DJGPP; but this test a) works b) is more generic - # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). - if test -f conf$$.exe; then - # Don't use ln at all; we don't have any links - as_ln_s='cp -p' - else - as_ln_s='ln -s' - fi -elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.file - -if mkdir -p . 2>/dev/null; then - as_mkdir_p=: -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -as_executable_p="test -f" - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -# IFS -# We need space, tab and new line, in precisely that order. -as_nl=' -' -IFS=" $as_nl" - -# CDPATH. -$as_unset CDPATH - -exec 6>&1 - -# Open the log real soon, to keep \$[0] and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. Logging --version etc. is OK. -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX -} >&5 -cat >&5 <<_CSEOF - -This file was extended by $as_me, which was -generated by GNU Autoconf 2.59. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -_CSEOF -echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5 -echo >&5 -_ACEOF - -# Files that config.status was made for. -if test -n "$ac_config_files"; then - echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS -fi - -if test -n "$ac_config_headers"; then - echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS -fi - -if test -n "$ac_config_links"; then - echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS -fi - -if test -n "$ac_config_commands"; then - echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS -fi - -cat >>$CONFIG_STATUS <<\_ACEOF - -ac_cs_usage="\ -\`$as_me' instantiates files from templates according to the -current configuration. - -Usage: $0 [OPTIONS] [FILE]... - - -h, --help print this help, then exit - -V, --version print version number, then exit - -q, --quiet do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - --header=FILE[:TEMPLATE] - instantiate the configuration header FILE - -Configuration files: -$config_files - -Configuration headers: -$config_headers - -Report bugs to ." -_ACEOF - -cat >>$CONFIG_STATUS <<_ACEOF -ac_cs_version="\\ -config.status -configured by $0, generated by GNU Autoconf 2.59, - with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" - -Copyright (C) 2003 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." -srcdir=$srcdir -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF -# If no file are specified by the user, then we need to provide default -# value. By we need to know if files were specified by the user. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=*) - ac_option=`expr "x$1" : 'x\([^=]*\)='` - ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'` - ac_shift=: - ;; - -*) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - *) # This is not an option, so the user has probably given explicit - # arguments. - ac_option=$1 - ac_need_defaults=false;; - esac - - case $ac_option in - # Handling of the options. -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --vers* | -V ) - echo "$ac_cs_version"; exit 0 ;; - --he | --h) - # Conflict between --help and --header - { { echo "$as_me:$LINENO: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&2;} - { (exit 1); exit 1; }; };; - --help | --hel | -h ) - echo "$ac_cs_usage"; exit 0 ;; - --debug | --d* | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - CONFIG_FILES="$CONFIG_FILES $ac_optarg" - ac_need_defaults=false;; - --header | --heade | --head | --hea ) - $ac_shift - CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" - ac_need_defaults=false;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&2;} - { (exit 1); exit 1; }; } ;; - - *) ac_config_targets="$ac_config_targets $1" ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF -if \$ac_cs_recheck; then - echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 - exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion -fi - -_ACEOF - - - - - -cat >>$CONFIG_STATUS <<\_ACEOF -for ac_config_target in $ac_config_targets -do - case "$ac_config_target" in - # Handling of arguments. - "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; - "config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; - *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 -echo "$as_me: error: invalid argument: $ac_config_target" >&2;} - { (exit 1); exit 1; }; };; - esac -done - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files - test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason to put it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Create a temporary directory, and hook for its removal unless debugging. -$debug || -{ - trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 - trap '{ (exit 1); exit 1; }' 1 2 13 15 -} - -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" -} || -{ - tmp=./confstat$$-$RANDOM - (umask 077 && mkdir $tmp) -} || -{ - echo "$me: cannot create a temporary directory in ." >&2 - { (exit 1); exit 1; } -} - -_ACEOF - -cat >>$CONFIG_STATUS <<_ACEOF - -# -# CONFIG_FILES section. -# - -# No need to generate the scripts if there are no CONFIG_FILES. -# This happens for instance when ./config.status config.h -if test -n "\$CONFIG_FILES"; then - # Protect against being on the right side of a sed subst in config.status. - sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g; - s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF -s,@SHELL@,$SHELL,;t t -s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t -s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t -s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t -s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t -s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t -s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t -s,@exec_prefix@,$exec_prefix,;t t -s,@prefix@,$prefix,;t t -s,@program_transform_name@,$program_transform_name,;t t -s,@bindir@,$bindir,;t t -s,@sbindir@,$sbindir,;t t -s,@libexecdir@,$libexecdir,;t t -s,@datadir@,$datadir,;t t -s,@sysconfdir@,$sysconfdir,;t t -s,@sharedstatedir@,$sharedstatedir,;t t -s,@localstatedir@,$localstatedir,;t t -s,@libdir@,$libdir,;t t -s,@includedir@,$includedir,;t t -s,@oldincludedir@,$oldincludedir,;t t -s,@infodir@,$infodir,;t t -s,@mandir@,$mandir,;t t -s,@build_alias@,$build_alias,;t t -s,@host_alias@,$host_alias,;t t -s,@target_alias@,$target_alias,;t t -s,@DEFS@,$DEFS,;t t -s,@ECHO_C@,$ECHO_C,;t t -s,@ECHO_N@,$ECHO_N,;t t -s,@ECHO_T@,$ECHO_T,;t t -s,@LIBS@,$LIBS,;t t -s,@CC@,$CC,;t t -s,@CFLAGS@,$CFLAGS,;t t -s,@LDFLAGS@,$LDFLAGS,;t t -s,@CPPFLAGS@,$CPPFLAGS,;t t -s,@ac_ct_CC@,$ac_ct_CC,;t t -s,@EXEEXT@,$EXEEXT,;t t -s,@OBJEXT@,$OBJEXT,;t t -s,@CPP@,$CPP,;t t -s,@EGREP@,$EGREP,;t t -s,@CC_GCC@,$CC_GCC,;t t -s,@GCC_X_NONE@,$GCC_X_NONE,;t t -s,@AS_UNDERSCORE@,$AS_UNDERSCORE,;t t -s,@RANLIB@,$RANLIB,;t t -s,@SET_MAKE@,$SET_MAKE,;t t -s,@INSTALL@,$INSTALL,;t t -s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t -s,@INSTALL_DATA@,$INSTALL_DATA,;t t -s,@CP@,$CP,;t t -s,@LN@,$LN,;t t -s,@LN_S@,$LN_S,;t t -s,@build@,$build,;t t -s,@build_cpu@,$build_cpu,;t t -s,@build_vendor@,$build_vendor,;t t -s,@build_os@,$build_os,;t t -s,@host@,$host,;t t -s,@host_cpu@,$host_cpu,;t t -s,@host_vendor@,$host_vendor,;t t -s,@host_os@,$host_os,;t t -s,@CPU_OBJECTS@,$CPU_OBJECTS,;t t -s,@LIBOBJS@,$LIBOBJS,;t t -s,@LTLIBOBJS@,$LTLIBOBJS,;t t -CEOF - -_ACEOF - - cat >>$CONFIG_STATUS <<\_ACEOF - # Split the substitutions into bite-sized pieces for seds with - # small command number limits, like on Digital OSF/1 and HP-UX. - ac_max_sed_lines=48 - ac_sed_frag=1 # Number of current file. - ac_beg=1 # First line for current file. - ac_end=$ac_max_sed_lines # Line after last line for current file. - ac_more_lines=: - ac_sed_cmds= - while $ac_more_lines; do - if test $ac_beg -gt 1; then - sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - else - sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - fi - if test ! -s $tmp/subs.frag; then - ac_more_lines=false - else - # The purpose of the label and of the branching condition is to - # speed up the sed processing (if there are no `@' at all, there - # is no need to browse any of the substitutions). - # These are the two extra sed commands mentioned above. - (echo ':t - /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed - if test -z "$ac_sed_cmds"; then - ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed" - else - ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed" - fi - ac_sed_frag=`expr $ac_sed_frag + 1` - ac_beg=$ac_end - ac_end=`expr $ac_end + $ac_max_sed_lines` - fi - done - if test -z "$ac_sed_cmds"; then - ac_sed_cmds=cat - fi -fi # test -n "$CONFIG_FILES" - -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF -for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; - esac - - # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories. - ac_dir=`(dirname "$ac_file") 2>/dev/null || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac - - - - if test x"$ac_file" != x-; then - { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - rm -f "$ac_file" - fi - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - configure_input= - else - configure_input="$ac_file. " - fi - configure_input=$configure_input"Generated from `echo $ac_file_in | - sed 's,.*/,,'` by configure." - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF - sed "$ac_vpsub -$extrasub -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s,@configure_input@,$configure_input,;t t -s,@srcdir@,$ac_srcdir,;t t -s,@abs_srcdir@,$ac_abs_srcdir,;t t -s,@top_srcdir@,$ac_top_srcdir,;t t -s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t -s,@builddir@,$ac_builddir,;t t -s,@abs_builddir@,$ac_abs_builddir,;t t -s,@top_builddir@,$ac_top_builddir,;t t -s,@abs_top_builddir@,$ac_abs_top_builddir,;t t -" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out - rm -f $tmp/stdin - if test x"$ac_file" != x-; then - mv $tmp/out $ac_file - else - cat $tmp/out - rm -f $tmp/out - fi - -done -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF - -# -# CONFIG_HEADER section. -# - -# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where -# NAME is the cpp macro being defined and VALUE is the value it is being given. -# -# ac_d sets the value in "#define NAME VALUE" lines. -ac_dA='s,^\([ ]*\)#\([ ]*define[ ][ ]*\)' -ac_dB='[ ].*$,\1#\2' -ac_dC=' ' -ac_dD=',;t' -# ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE". -ac_uA='s,^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' -ac_uB='$,\1#\2define\3' -ac_uC=' ' -ac_uD=',;t' - -for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; - esac - - test x"$ac_file" != x- && { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - # Do quote $f, to prevent DOS paths from being IFS'd. - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } - # Remove the trailing spaces. - sed 's/[ ]*$//' $ac_file_inputs >$tmp/in - -_ACEOF - -# Transform confdefs.h into two sed scripts, `conftest.defines' and -# `conftest.undefs', that substitutes the proper values into -# config.h.in to produce config.h. The first handles `#define' -# templates, and the second `#undef' templates. -# And first: Protect against being on the right side of a sed subst in -# config.status. Protect against being in an unquoted here document -# in config.status. -rm -f conftest.defines conftest.undefs -# Using a here document instead of a string reduces the quoting nightmare. -# Putting comments in sed scripts is not portable. -# -# `end' is used to avoid that the second main sed command (meant for -# 0-ary CPP macros) applies to n-ary macro definitions. -# See the Autoconf documentation for `clear'. -cat >confdef2sed.sed <<\_ACEOF -s/[\\&,]/\\&/g -s,[\\$`],\\&,g -t clear -: clear -s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*\)\(([^)]*)\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1\2${ac_dC}\3${ac_dD},gp -t end -s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD},gp -: end -_ACEOF -# If some macros were called several times there might be several times -# the same #defines, which is useless. Nevertheless, we may not want to -# sort them, since we want the *last* AC-DEFINE to be honored. -uniq confdefs.h | sed -n -f confdef2sed.sed >conftest.defines -sed 's/ac_d/ac_u/g' conftest.defines >conftest.undefs -rm -f confdef2sed.sed - -# This sed command replaces #undef with comments. This is necessary, for -# example, in the case of _POSIX_SOURCE, which is predefined and required -# on some systems where configure will not decide to define it. -cat >>conftest.undefs <<\_ACEOF -s,^[ ]*#[ ]*undef[ ][ ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */, -_ACEOF - -# Break up conftest.defines because some shells have a limit on the size -# of here documents, and old seds have small limits too (100 cmds). -echo ' # Handle all the #define templates only if necessary.' >>$CONFIG_STATUS -echo ' if grep "^[ ]*#[ ]*define" $tmp/in >/dev/null; then' >>$CONFIG_STATUS -echo ' # If there are no defines, we may have an empty if/fi' >>$CONFIG_STATUS -echo ' :' >>$CONFIG_STATUS -rm -f conftest.tail -while grep . conftest.defines >/dev/null -do - # Write a limited-size here document to $tmp/defines.sed. - echo ' cat >$tmp/defines.sed <>$CONFIG_STATUS - # Speed up: don't consider the non `#define' lines. - echo '/^[ ]*#[ ]*define/!b' >>$CONFIG_STATUS - # Work around the forget-to-reset-the-flag bug. - echo 't clr' >>$CONFIG_STATUS - echo ': clr' >>$CONFIG_STATUS - sed ${ac_max_here_lines}q conftest.defines >>$CONFIG_STATUS - echo 'CEOF - sed -f $tmp/defines.sed $tmp/in >$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in -' >>$CONFIG_STATUS - sed 1,${ac_max_here_lines}d conftest.defines >conftest.tail - rm -f conftest.defines - mv conftest.tail conftest.defines -done -rm -f conftest.defines -echo ' fi # grep' >>$CONFIG_STATUS -echo >>$CONFIG_STATUS - -# Break up conftest.undefs because some shells have a limit on the size -# of here documents, and old seds have small limits too (100 cmds). -echo ' # Handle all the #undef templates' >>$CONFIG_STATUS -rm -f conftest.tail -while grep . conftest.undefs >/dev/null -do - # Write a limited-size here document to $tmp/undefs.sed. - echo ' cat >$tmp/undefs.sed <>$CONFIG_STATUS - # Speed up: don't consider the non `#undef' - echo '/^[ ]*#[ ]*undef/!b' >>$CONFIG_STATUS - # Work around the forget-to-reset-the-flag bug. - echo 't clr' >>$CONFIG_STATUS - echo ': clr' >>$CONFIG_STATUS - sed ${ac_max_here_lines}q conftest.undefs >>$CONFIG_STATUS - echo 'CEOF - sed -f $tmp/undefs.sed $tmp/in >$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in -' >>$CONFIG_STATUS - sed 1,${ac_max_here_lines}d conftest.undefs >conftest.tail - rm -f conftest.undefs - mv conftest.tail conftest.undefs -done -rm -f conftest.undefs - -cat >>$CONFIG_STATUS <<\_ACEOF - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - echo "/* Generated by configure. */" >$tmp/config.h - else - echo "/* $ac_file. Generated by configure. */" >$tmp/config.h - fi - cat $tmp/in >>$tmp/config.h - rm -f $tmp/in - if test x"$ac_file" != x-; then - if diff $ac_file $tmp/config.h >/dev/null 2>&1; then - { echo "$as_me:$LINENO: $ac_file is unchanged" >&5 -echo "$as_me: $ac_file is unchanged" >&6;} - else - ac_dir=`(dirname "$ac_file") 2>/dev/null || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - rm -f $ac_file - mv $tmp/config.h $ac_file - fi - else - cat $tmp/config.h - rm -f $tmp/config.h - fi -done -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF - -{ (exit 0); exit 0; } -_ACEOF -chmod +x $CONFIG_STATUS -ac_clean_files=$ac_clean_files_save - - -# configure is writing to config.log, and then calls config.status. -# config.status does its own redirection, appending to config.log. -# Unfortunately, on DOS this fails, as config.log is still kept open -# by configure, so config.status won't be able to write to it; its -# output is simply discarded. So we exec the FD to /dev/null, -# effectively closing config.log, so it can be properly (re)opened and -# appended to by config.status. When coming back to configure, we -# need to make the FD available again. -if test "$no_create" != yes; then - ac_cs_success=: - ac_config_status_args= - test "$silent" = yes && - ac_config_status_args="$ac_config_status_args --quiet" - exec 5>/dev/null - $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false - exec 5>>config.log - # Use ||, not &&, to avoid exiting from the if with $? = 1, which - # would make configure fail if this is the last instruction. - $ac_cs_success || { (exit 1); exit 1; } -fi - DELETED ffcall/trampoline/configure.in Index: ffcall/trampoline/configure.in ================================================================== --- ffcall/trampoline/configure.in +++ /dev/null @@ -1,56 +0,0 @@ -dnl AUTOCONF configuration for TRAMPOLINE -dnl Bruno Haible 2001-01-27 -dnl -AC_INIT(trampoline.h.in) -AC_CONFIG_HEADER(config.h) -AC_PROG_CC -AC_PROG_CPP -AC_PROG_GCC_TRADITIONAL -CL_CC_GCC -CL_AS_UNDERSCORE -CL_PROG_RANLIB -AC_PROG_MAKE_SET -CL_PROG_INSTALL -CL_PROG_CP -CL_PROG_LN -CL_PROG_LN_S -CL_VOID -CL_STDC_HEADERS -AC_CHECK_HEADERS(unistd_h) -CL_GETPAGESIZE -CL_MACH_VM -CL_OPENFLAGS -CL_MMAP -CL_MPROTECT -CL_SHM_H -CL_SHM -CL_CANONICAL_HOST(../autoconf) -CL_CANONICAL_HOST_CPU_FOR_FFCALL -CL_CODEEXEC -CPU_OBJECTS='' -if test ${host_cpu} = hppa -o ${host_cpu} = ia64; then - CPU_OBJECTS="$CPU_OBJECTS "'tramp-$(CPU).o' -fi -if test ${host_cpu} = rs6000; then - case "${host_os}" in - aix*) CPU_OBJECTS="$CPU_OBJECTS "'tramp-$(CPU).o' ;; - *) ;; - esac -fi -if test ${host_cpu} = sparc -o ${host_cpu} = sparc64 -o ${host_cpu} = alpha -o ${host_cpu} = hppa -o ${host_cpu} = convex; then - CPU_OBJECTS="$CPU_OBJECTS "'cache-$(CPU).o' -fi -if test ${host_cpu} = rs6000; then - case "${host_os}" in - aix*) ;; - *) CPU_OBJECTS="$CPU_OBJECTS "'cache-$(CPU).o' ;; - esac -fi -AC_SUBST(CPU_OBJECTS) -if test ${host_cpu} = mips -o ${host_cpu} = mipsn32 -o ${host_cpu} = mips64; then -AC_CHECK_HEADERS(sys/cachectl.h) -fi -if test ${host_cpu} = m88k; then -AC_CHECK_HEADERS(sys/m88kbcs.h) -fi -AC_OUTPUT(Makefile) DELETED ffcall/trampoline/protexec.c Index: ffcall/trampoline/protexec.c ================================================================== --- ffcall/trampoline/protexec.c +++ /dev/null @@ -1,152 +0,0 @@ -/* This file is derived from gcc-2.6.3/libgcc2.c, section L_trampoline */ - -/* Copyright (C) 1989, 1992, 1993, 1994 Free Software Foundation, Inc. - -This file is part of GNU CC. - -GNU CC is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GNU CC is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GNU CC; see the file COPYING. If not, write to -the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ - - -/* Jump to a trampoline, loading the static chain address. */ - -#if defined (__alpha__) - -void -__enable_execute_stack (addr) - void *addr; -{ - long size = getpagesize (); - long mask = ~(size-1); - char *page = (char *) (((long) addr) & mask); - char *end = (char *) ((((long) (addr + TRAMPOLINE_SIZE)) & mask) + size); - - /* 7 is PROT_READ | PROT_WRITE | PROT_EXEC */ - if (mprotect (page, end - page, 7) < 0) - perror ("mprotect of trampoline code"); -} - -#endif - -#if defined (NeXT) && defined (__MACH__) - -/* Make stack executable so we can call trampolines on stack. - This is called from INITIALIZE_TRAMPOLINE in next.h. */ -#ifdef NeXTStep21 - #include -#else - #include -#endif - -void -__enable_execute_stack (addr) - char *addr; -{ - kern_return_t r; - char *eaddr = addr + TRAMPOLINE_SIZE; - vm_address_t a = (vm_address_t) addr; - - /* turn on execute access on stack */ - r = vm_protect (task_self (), a, TRAMPOLINE_SIZE, FALSE, VM_PROT_ALL); - if (r != KERN_SUCCESS) - { - mach_error("vm_protect VM_PROT_ALL", r); - exit(1); - } -} - -#endif /* defined (NeXT) && defined (__MACH__) */ - -#ifdef __convex__ - -/* Make stack executable so we can call trampolines on stack. - This is called from INITIALIZE_TRAMPOLINE in convex.h. */ - -#include -#include -#include - -void -__enable_execute_stack () -{ - int fp; - static unsigned lowest = USRSTACK; - unsigned current = (unsigned) &fp & -NBPG; - - if (lowest > current) - { - unsigned len = lowest - current; - mremap (current, &len, PROT_READ | PROT_WRITE | PROT_EXEC, MAP_PRIVATE); - lowest = current; - } -} -#endif /* __convex__ */ - -#ifdef __DOLPHIN__ - -/* Modified from the convex -code above. */ - -#include -#include -#include - -void -__enable_execute_stack () -{ - int save_errno; - static unsigned long lowest = USRSTACK; - unsigned long current = (unsigned long) &save_errno & -NBPC; - - /* Ignore errno being set. memctl sets errno to EINVAL whenever the - address is seen as 'negative'. That is the case with the stack. */ - - save_errno=errno; - if (lowest > current) - { - unsigned len=lowest-current; - memctl(current,len,MCT_TEXT); - lowest = current; - } - else - memctl(current,NBPC,MCT_TEXT); - errno=save_errno; -} - -#endif /* __DOLPHIN__ */ - -#ifdef __pyr__ - -#undef NULL /* Avoid errors if stdio.h and our stddef.h mismatch. */ -#include -#include -#include -#include -#include - -/* Modified from the convex -code above. - mremap promises to clear the i-cache. */ - -void -__enable_execute_stack () -{ - int fp; - if (mprotect (((unsigned int)&fp/PAGSIZ)*PAGSIZ, PAGSIZ, - PROT_READ|PROT_WRITE|PROT_EXEC)) - { - perror ("mprotect in __enable_execute_stack"); - fflush (stderr); - abort (); - } -} -#endif /* __pyr__ */ DELETED ffcall/trampoline/proto-alpha.s Index: ffcall/trampoline/proto-alpha.s ================================================================== --- ffcall/trampoline/proto-alpha.s +++ /dev/null @@ -1,53 +0,0 @@ - .set noreorder - .set volatile - .set noat - .file 1 "proto.c" -gcc2_compiled.: -__gnu_compiled_c: -.rdata - .align 3 -$C32: - .quad 0xbabebec0 -.text - .align 3 - .globl tramp - .ent tramp -tramp: - ldgp $29,0($27) -tramp..ng: - lda $30,-16($30) - .frame $30,16,$26,0 - stq $26,0($30) - .mask 0x4000000,-16 - .prologue 1 - lda $1,$C32 - lda $2,22136 - ldah $2,4660($2) - ldq $27,0($1) - lda $1,18193 - ldah $1,29525($1) - stq $1,0($2) - jsr $26,($27),0 - ldgp $29,0($26) - ldq $26,0($30) - addq $30,16,$30 - ret $31,($26),1 - .end tramp -.rdata - .align 3 -$C33: - .quad 0xbabebec0 -.text - .align 3 - .globl jump - .ent jump -jump: - ldgp $29,0($27) -jump..ng: - .frame $30,0,$26,0 - .prologue 1 - lda $1,$C33 - ldq $1,0($1) - jmp $31,($1),0 - .align 4 - .end jump DELETED ffcall/trampoline/proto-arm.s Index: ffcall/trampoline/proto-arm.s ================================================================== --- ffcall/trampoline/proto-arm.s +++ /dev/null @@ -1,43 +0,0 @@ -@ Generated by gcc 2.6.3 for ARM/RISCiX -rfp .req r9 -sl .req r10 -fp .req r11 -ip .req r12 -sp .req r13 -lr .req r14 -pc .req r15 -gcc2_compiled.: -___gnu_compiled_c: -.text - .align 0 - .global _tramp -_tramp: - @ args = 0, pretend = 0, frame = 0 - @ frame_needed = 0, current_function_anonymous_args = 0 - mov r2, #301989888 - stmfd sp!, {lr} - add r2, r2, #3424256 - add r2, r2, #5696 - mov r3, #1879048193 - add r3, r3, #55836672 - add r3, r3, #82944 - add r3, r3, #784 - mvn r0, #316 - sub r0, r0, #1140850691 - str r3, [r2, #56] - sub r0, r0, #20971520 - sub r0, r0, #81920 - mov lr, pc - mov pc, r0 - ldmfd sp!, {pc}^ - .align 0 - .global _jump -_jump: - @ args = 0, pretend = 0, frame = 0 - @ frame_needed = 0, current_function_anonymous_args = 0 - mvn r3, #316 - sub r3, r3, #1140850691 - sub r3, r3, #20971520 - sub r3, r3, #81920 - mov pc, r3 @ indirect jump - movs pc, lr DELETED ffcall/trampoline/proto-convex.s Index: ffcall/trampoline/proto-convex.s ================================================================== --- ffcall/trampoline/proto-convex.s +++ /dev/null @@ -1,26 +0,0 @@ -;NO_APP -.fpmode native -gcc2_compiled.: -___gnu_compiled_c: -.text -.text -.align 2 -.globl _tramp - ds.b "g263" - ds.b "+00\0" -_tramp: - ld.w #1934968593,s1 - st.w s1,305419896 - mov sp,ap - calls -1161904448 - ld.w 12(fp),ap - rtn - ds.h 0 -.text -.align 2 -.globl _jump - ds.b "g263" - ds.b "+00\0" -_jump: - jmp -1161904448 - ds.h 0 DELETED ffcall/trampoline/proto-hppa.s Index: ffcall/trampoline/proto-hppa.s ================================================================== --- ffcall/trampoline/proto-hppa.s +++ /dev/null @@ -1,40 +0,0 @@ - .code - .IMPORT $global$,DATA - .IMPORT $$dyncall,MILLICODE -; gcc_compiled.: - .code - - .align 4 - .EXPORT tramp,ENTRY,PRIV_LEV=3,RTNVAL=GR - .label tramp - .PROC - .CALLINFO FRAME=64,CALLS,SAVE_RP - .ENTRY - stw %r2,-20(0,%r30) - ldo 64(%r30),%r30 - ldil L'305419896,%r19 - ldil L'1934968593,%r20 - ldo R'1934968593(%r20),%r20 - ldil L'-1161904448,%r28 - stw %r20,R'305419896(%r19) - ldo R'-1161904448(%r28),%r28 - copy %r28,%r22 - .CALL ARGW0=GR - bl $$dyncall,%r31 - copy %r31,%r2 - ldw -84(0,%r30),%r2 - bv 0(%r2) - ldo -64(%r30),%r30 - .EXIT - .PROCEND - .align 4 - .EXPORT jump,ENTRY,PRIV_LEV=3,RTNVAL=GR - .label jump - .PROC - .CALLINFO FRAME=0,NO_CALLS - .ENTRY - ldil L'-1161904448,%r19 - ldo R'-1161904448(%r19),%r19 - bv,n 0(%r19) - .EXIT - .PROCEND DELETED ffcall/trampoline/proto-i386.s Index: ffcall/trampoline/proto-i386.s ================================================================== --- ffcall/trampoline/proto-i386.s +++ /dev/null @@ -1,16 +0,0 @@ - .file "proto.c" -gcc2_compiled.: -___gnu_compiled_c: -.text - .align 2 -.globl _tramp -_tramp: - movl $1934968593,305419896 - call -1161904448 - ret - .align 2 -.globl _jump -_jump: - movl $-1161904448,%eax - jmp *%eax - .align 2,0x90 DELETED ffcall/trampoline/proto-ia64.s Index: ffcall/trampoline/proto-ia64.s ================================================================== --- ffcall/trampoline/proto-ia64.s +++ /dev/null @@ -1,38 +0,0 @@ - .file "proto64.c" - .version "01.01" -.text - .align 16 - .global tramp# - .proc tramp# -tramp: - alloc r33 = ar.pfs, 0, 2, 0, 0 - movl r14 = 0x1234567813578765 - mov r32 = b0 - adds r12 = -16, r12 - movl r15 = 0x7355471143622155 - ;; - st8 [r14] = r15 - movl r16 = 0xbabebec0dea0ffab - movl r15 = 0xbabebec0dea0ffb3 - ;; - ld8 r8 = [r16] - ld8 r1 = [r15] - ;; - mov b6 = r8 - br.call.sptk.many b0 = b6 ;; - adds r12 = 16, r12 - ;; - mov ar.pfs = r33 - mov b0 = r32 - br.ret.sptk.many b0 - .endp tramp# - .align 16 - .global jump# - .proc jump# -jump: - movl r14 = 0xbabebec0dea0ffab - ;; - mov b6 = r14 - br b6 - .endp jump# - .ident "GCC: (GNU) 2.9-ia64-000216 snap-000324" DELETED ffcall/trampoline/proto-m68k.s Index: ffcall/trampoline/proto-m68k.s ================================================================== --- ffcall/trampoline/proto-m68k.s +++ /dev/null @@ -1,16 +0,0 @@ -#NO_APP -gcc2_compiled.: -___gnu_compiled_c: -.text - .even -.globl _tramp -_tramp: - movel #1934968593,305419896 - jbsr -1161904448 - rts - nop - .even -.globl _jump -_jump: - jmp -1161904448 - nop DELETED ffcall/trampoline/proto-m88k.s Index: ffcall/trampoline/proto-m88k.s ================================================================== --- ffcall/trampoline/proto-m88k.s +++ /dev/null @@ -1,45 +0,0 @@ - version "03.00" - file "proto.c" -data -gcc2_compiled.: -text - align 8 - global tramp - type tramp,#function -tramp: - or.u #r13,#r0,0x1234 - or #r13,#r13,0x5678 - subu #r31,#r31,48 - or.u #r2,#r0,0xbabe - or #r2,#r2,0xbec0 - st #r1,#r31,36 -.Ltb0: - or.u #r12,#r0,0x7355 - or #r12,#r12,0x4711 - jsr.n #r2 - st #r12,#r0,#r13 -.Lte0: - ld #r1,#r31,36 - jmp.n #r1 - addu #r31,#r31,48 - -section .tdesc,"a" - word 66,1,.Ltb0,.Lte0,0x100003f,0x30,0xfffffff4,0xfffffff4 -text -.Lfe1: - size tramp,.Lfe1-tramp - align 8 - global jump - type jump,#function -jump: -.Ltb1: - or.u #r9,#r0,0xbabe - or #r9,#r9,0xbec0 - jmp #r9 -.Lte1: - -section .tdesc,"a" - word 66,1,.Ltb1,.Lte1,0x100001f,0x0,0x1,0x0 -text -.Lfe2: - size jump,.Lfe2-jump DELETED ffcall/trampoline/proto-mips.s Index: ffcall/trampoline/proto-mips.s ================================================================== --- ffcall/trampoline/proto-mips.s +++ /dev/null @@ -1,53 +0,0 @@ - .file 1 "proto.c" - .set nobopt - .abicalls -gcc2_compiled.: -__gnu_compiled_c: - .text - .align 2 - .globl tramp - .align 2 - .globl jump - - .text - .text - .ent tramp -tramp: - .frame $sp,32,$31 # vars= 0, regs= 2/0, args= 16, extra= 8 - .mask 0x90000000,-4 - .fmask 0x00000000,0 - .set noreorder - .cpload $25 - .set reorder - subu $sp,$sp,32 - .cprestore 16 - li $2,1934950400 # 0x73550000 - ori $2,$2,0x4711 - sw $31,28($sp) - sw $28,24($sp) - sw $2,305419896 - li $25,-1161904448 - jal $31,$25 - lw $31,28($sp) - #nop - .set noreorder - .set nomacro - j $31 - addu $sp,$sp,32 - .set macro - .set reorder - - .end tramp - .text - .ent jump -jump: - .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, extra= 0 - .mask 0x00000000,0 - .fmask 0x00000000,0 - .set noreorder - .cpload $25 - .set reorder - li $2,-1161953280 # 0xbabe0000 - ori $2,$2,0xbec0 - j $2 - .end jump DELETED ffcall/trampoline/proto-mips.s.gcc263 Index: ffcall/trampoline/proto-mips.s.gcc263 ================================================================== --- ffcall/trampoline/proto-mips.s.gcc263 +++ /dev/null @@ -1,53 +0,0 @@ - .file 1 "proto.c" - .set nobopt - .abicalls - - # GNU C 2.6.3 [AL 1.1, MM 40] Silicon Graphics Mips compiled by GNU C - - # Cc1 defaults: - - # Cc1 arguments (-G value = 8, Cpu = 3000, ISA = 1): - # -quiet -dumpbase -mabicalls -O2 -fomit-frame-pointer -o - -gcc2_compiled.: -__gnu_compiled_c: - .text - .align 2 - .globl tramp - .align 2 - .globl jump - - .text - .ent tramp -tramp: - .frame $sp,32,$31 # vars= 0, regs= 2/0, args= 16, extra= 8 - .mask 0x90000000,-4 - .fmask 0x00000000,0 - .set noreorder - .cpload $25 - .set reorder - subu $sp,$sp,32 - .cprestore 16 - li $2,0x73550000 # 1934950400 - ori $2,$2,0x4711 - sw $31,28($sp) - sw $28,24($sp) - sw $2,305419896 - li $25,-1161904448 - jal $31,$25 - lw $31,28($sp) - addu $sp,$sp,32 - j $31 - .end tramp - .ent jump -jump: - .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, extra= 0 - .mask 0x00000000,0 - .fmask 0x00000000,0 - .set noreorder - .cpload $25 - .set reorder - li $2,-1161953280 # 0xbabe0000 - ori $2,$2,0xbec0 - j $2 - .end jump DELETED ffcall/trampoline/proto-mips64.s Index: ffcall/trampoline/proto-mips64.s ================================================================== --- ffcall/trampoline/proto-mips64.s +++ /dev/null @@ -1,53 +0,0 @@ - .file 1 "proto64.c" - .set nobopt - .abicalls -gcc2_compiled.: -__gnu_compiled_c: - .text - .align 2 - .globl tramp - .align 2 - .globl jump - - .text - .text - .ent tramp -tramp: - .frame $sp,56,$31 # vars= 0, regs= 2/0, args= 32, extra= 8 - .mask 0x90000000,-8 - .fmask 0x00000000,0 - .set noreorder - .cpload $25 - .set reorder - dsubu $sp,$sp,56 - .cprestore 32 - dli $2,0x1234567813578765 - dli $3,0x7355471143622155 - sd $31,48($sp) - sd $28,40($sp) - sd $3,0($2) - dli $2,0xbabebec0dea0ffab - move $25,$2 - jal $31,$25 - ld $31,48($sp) - #nop - .set noreorder - .set nomacro - j $31 - daddu $sp,$sp,56 - .set macro - .set reorder - - .end tramp - .text - .ent jump -jump: - .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, extra= 0 - .mask 0x00000000,0 - .fmask 0x00000000,0 - .set noreorder - .cpload $25 - .set reorder - dli $2,0xbabebec0dea0ffab - j $2 - .end jump DELETED ffcall/trampoline/proto-mips64.s.gcc263 Index: ffcall/trampoline/proto-mips64.s.gcc263 ================================================================== --- ffcall/trampoline/proto-mips64.s.gcc263 +++ /dev/null @@ -1,70 +0,0 @@ - .file 1 "proto64.c" - .set nobopt - .abicalls - - # GNU C 2.6.3 [AL 1.1, MM 40] Silicon Graphics Mips compiled by GNU C - - # Cc1 defaults: - - # Cc1 arguments (-G value = 8, Cpu = 4000, ISA = 3): - # -mfp64 -mgp64 -quiet -dumpbase -mips3 -mlong64 -mabicalls -O2 - # -fomit-frame-pointer -o - -gcc2_compiled.: -__gnu_compiled_c: - .sdata - .align 3 -$LC0: - .dword 0x1234567813578765 - .align 3 -$LC1: - .dword 0x7355471143622155 - .align 3 -$LC2: - .dword 0xbabebec0dea0ffab - .text - .align 2 - .globl tramp - .sdata - .align 3 -$LC3: - .dword 0xbabebec0dea0ffab - .text - .align 2 - .globl jump - - .text - .ent tramp -tramp: - .frame $sp,56,$31 # vars= 0, regs= 2/0, args= 32, extra= 8 - .mask 0x90000000,-8 - .fmask 0x00000000,0 - .set noreorder - .cpload $25 - .set reorder - dsubu $sp,$sp,56 - .cprestore 32 - ld $2,$LC0 - ld $3,$LC1 - ld $4,$LC2 - sd $31,48($sp) - sd $28,40($sp) - sd $3,0($2) - move $25,$4 - jal $31,$25 - ld $31,48($sp) - daddu $sp,$sp,56 - j $31 - .end tramp - .ent jump -jump: - .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, extra= 0 - .mask 0x00000000,0 - .fmask 0x00000000,0 - .set noreorder - .cpload $25 - .set reorder - ld $2,$LC3 - #nop - j $2 - .end jump DELETED ffcall/trampoline/proto-mips64.s.gcc272 Index: ffcall/trampoline/proto-mips64.s.gcc272 ================================================================== --- ffcall/trampoline/proto-mips64.s.gcc272 +++ /dev/null @@ -1,53 +0,0 @@ - .file 1 "proto.c" - .set nobopt - .option pic2 - - # GNU C 2.7.2 [AL 1.1, MM 40] SGI running IRIX 5.x compiled by GNU C - - # Cc1 defaults: - # -mabicalls - - # Cc1 arguments (-G value = 0, Cpu = 4000, ISA = 3): - # -mfp64 -mgp64 -quiet -dumpbase -mabicalls -mips3 -mlong64 -O2 - # -fomit-frame-pointer -o - -gcc2_compiled.: -__gnu_compiled_c: - .text - .align 2 - .globl tramp - .ent tramp -tramp: - .frame $sp,56,$31 # vars= 0, regs= 2/0, args= 32, extra= 8 - .mask 0x90000000,-8 - .fmask 0x00000000,0 - .set noreorder - .cpload $25 - .set reorder - dsubu $sp,$sp,56 - .cprestore 32 - dli $2,0x1234567813578765 - dli $3,0x7355471143622155 - sd $31,48($sp) - sd $28,40($sp) - sd $3,0($2) - dli $2,0xbabebec0dea0ffab - move $25,$2 - jal $31,$25 - ld $31,48($sp) - daddu $sp,$sp,56 - j $31 - .end tramp - .align 2 - .globl jump - .ent jump -jump: - .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, extra= 0 - .mask 0x00000000,0 - .fmask 0x00000000,0 - .set noreorder - .cpload $25 - .set reorder - dli $2,0xbabebec0dea0ffab - j $2 - .end jump DELETED ffcall/trampoline/proto-mipsn32.s Index: ffcall/trampoline/proto-mipsn32.s ================================================================== --- ffcall/trampoline/proto-mipsn32.s +++ /dev/null @@ -1,63 +0,0 @@ - #.file 1 "proto.c" - .set nobopt - .option pic2 - .section .text - .text - .align 2 - .globl tramp - .ent tramp -tramp: -.LFB1: - .frame $sp,32,$31 # vars= 0, regs= 2/0, args= 0, extra= 16 - .mask 0x90000000,-8 - .fmask 0x00000000,0 - subu $sp,$sp,32 -.LCFI0: - sd $31,24($sp) -.LCFI1: - sd $28,16($sp) -.LCFI2: - .set noat - lui $1,%hi(%neg(%gp_rel(tramp))) - addiu $1,$1,%lo(%neg(%gp_rel(tramp))) - daddu $gp,$1,$25 - .set at - li $2,1934950400 # 0x73550000 - ori $2,$2,0x4711 - sw $2,305419896 - li $25,-1161904448 - jal $31,$25 - ld $31,24($sp) - ld $28,16($sp) - #nop - .set noreorder - .set nomacro - j $31 - addu $sp,$sp,32 - .set macro - .set reorder - -.LFE1: - .end tramp - .align 2 - .globl jump - .ent jump -jump: -.LFB2: - .frame $sp,32,$31 # vars= 0, regs= 1/0, args= 0, extra= 16 - .mask 0x10000000,-16 - .fmask 0x00000000,0 - subu $sp,$sp,32 -.LCFI3: - sd $28,16($sp) -.LCFI4: - .set noat - lui $1,%hi(%neg(%gp_rel(jump))) - addiu $1,$1,%lo(%neg(%gp_rel(jump))) - daddu $gp,$1,$25 - .set at - li $2,-1161953280 # 0xbabe0000 - ori $2,$2,0xbec0 - j $2 -.LFE2: - .end jump DELETED ffcall/trampoline/proto-rs6000-aix.new.s Index: ffcall/trampoline/proto-rs6000-aix.new.s ================================================================== --- ffcall/trampoline/proto-rs6000-aix.new.s +++ /dev/null @@ -1,67 +0,0 @@ - .file "proto.c" -.toc -.csect .text[PR] -gcc2_compiled.: -__gnu_compiled_c: - .align 2 - .globl tramp - .globl .tramp -.csect tramp[DS] -tramp: - .long .tramp, TOC[tc0], 0 -.csect .text[PR] -.tramp: - .extern __mulh - .extern __mull - .extern __divss - .extern __divus - .extern __quoss - .extern __quous - mflr 0 - stw 0,8(1) - stwu 1,-56(1) - lis 11,0x1234 - lis 0,0x7355 - ori 11,11,22136 - ori 0,0,18193 - lis 9,0xbabe - stw 0,0(11) - ori 9,9,48832 - stw 2,20(1) - lwz 0,0(9) - lwz 2,4(9) - mtlr 0 - lwz 11,8(9) - blrl - lwz 2,20(1) - la 1,56(1) - lwz 0,8(1) - mtlr 0 - blr -LT..tramp: - .long 0 - .byte 0,0,32,65,128,0,0,0 - .long LT..tramp-.tramp - .short 5 - .byte "tramp" - .align 2 - .globl jump - .globl .jump -.csect jump[DS] -jump: - .long .jump, TOC[tc0], 0 -.csect .text[PR] -.jump: - lis 0,0xbabe - ori 0,0,48832 - mtctr 0 - bctr -LT..jump: - .long 0 - .byte 0,0,32,64,0,0,0,0 - .long LT..jump-.jump - .short 4 - .byte "jump" -_section_.text: -.csect .data[RW],3 - .long _section_.text DELETED ffcall/trampoline/proto-rs6000-aix.old.s Index: ffcall/trampoline/proto-rs6000-aix.old.s ================================================================== --- ffcall/trampoline/proto-rs6000-aix.old.s +++ /dev/null @@ -1,67 +0,0 @@ - .file "proto.c" -.toc -.csect .text[PR] -gcc2_compiled.: -__gnu_compiled_c: - .align 2 - .globl tramp - .globl .tramp -.csect tramp[DS] -tramp: - .long .tramp, TOC[tc0], 0 -.csect .text[PR] -.tramp: - .extern __mulh - .extern __mull - .extern __divss - .extern __divus - .extern __quoss - .extern __quous - mflr 0 - st 0,8(1) - stu 1,-56(1) - liu 11,0x1234 - liu 0,0x7355 - oril 11,11,22136 - oril 0,0,18193 - liu 9,0xbabe - st 0,0(11) - oril 9,9,48832 - st 2,20(1) - l 0,0(9) - l 2,4(9) - mtlr 0 - l 11,8(9) - brl - l 2,20(1) - cal 1,56(1) - l 0,8(1) - mtlr 0 - br -LT..tramp: - .long 0 - .byte 0,0,32,65,128,0,0,0 - .long LT..tramp-.tramp - .short 5 - .byte "tramp" - .align 2 - .globl jump - .globl .jump -.csect jump[DS] -jump: - .long .jump, TOC[tc0], 0 -.csect .text[PR] -.jump: - liu 0,0xbabe - oril 0,0,48832 - mtctr 0 - bctr -LT..jump: - .long 0 - .byte 0,0,32,64,0,0,0,0 - .long LT..jump-.jump - .short 4 - .byte "jump" -_section_.text: -.csect .data[RW],3 - .long _section_.text DELETED ffcall/trampoline/proto-rs6000-macos.s Index: ffcall/trampoline/proto-rs6000-macos.s ================================================================== --- ffcall/trampoline/proto-rs6000-macos.s +++ /dev/null @@ -1,29 +0,0 @@ -.text - .align 2 - .globl _tramp -_tramp: - mflr r0 - lis r11,0x1234 - stw r0,8(r1) - lis r9,0x7355 - lis r0,0xbabe - ori r11,r11,22136 - ori r0,r0,48832 - ori r9,r9,18193 - mtlr r0 - stw r31,-4(r1) - stwu r1,-80(r1) - stw r9,0(r11) - blrl - addi r1,r1,80 - lwz r0,8(r1) - lwz r31,-4(r1) - mtlr r0 - blr - .align 2 - .globl _jump -_jump: - lis r0,0xbabe - ori r0,r0,48832 - mtctr r0 - bctr DELETED ffcall/trampoline/proto-rs6000-sysv4.s Index: ffcall/trampoline/proto-rs6000-sysv4.s ================================================================== --- ffcall/trampoline/proto-rs6000-sysv4.s +++ /dev/null @@ -1,42 +0,0 @@ - .file "proto.c" -gcc2_compiled.: - .section ".text" - .align 2 - .globl tramp - .type tramp,@function -tramp: - .extern __mulh - .extern __mull - .extern __divss - .extern __divus - .extern __quoss - .extern __quous - stwu 1,-16(1) - mflr 0 - stw 0,20(1) - lis 3,0xbabe - ori 3,3,48832 - mtlr 3 - lis 9,0x1234 - lis 0,0x7355 - ori 9,9,22136 - ori 0,0,18193 - stw 0,0(9) - blrl - lwz 0,20(1) - mtlr 0 - la 1,16(1) - blr -.Lfe1: - .size tramp,.Lfe1-tramp - .align 2 - .globl jump - .type jump,@function -jump: - lis 0,0xbabe - ori 0,0,48832 - mtctr 0 - bctr -.Lfe2: - .size jump,.Lfe2-jump - .ident "GCC: (GNU) 2.95.2 19991024 (release)" DELETED ffcall/trampoline/proto-s390.s Index: ffcall/trampoline/proto-s390.s ================================================================== --- ffcall/trampoline/proto-s390.s +++ /dev/null @@ -1,61 +0,0 @@ - .file "proto.c" - .version "01.01" -gcc2_compiled.: -.text - .align 4 -.globl tramp - .type tramp,@function -tramp: -# leaf function 0 -# automatics 0 -# outgoing args 0 -# need frame pointer 0 -# call alloca 0 -# has varargs 0 -# incoming args (stack) 0 -# function length 16 -# register live 0110000000000010000000000000000000 - stm %r13,%r15,52(%r15) - bras %r13,.LTN0_0 -.LT0_0: -.LC0: - .long 305419896 -.LC1: - .long 1934968593 -.LC2: - .long -1161904448 -.LTN0_0: - lr %r1,%r15 - ahi %r15,-96 - st %r1,0(%r15) - l %r1,.LC0-.LT0_0(%r13) - l %r2,.LC2-.LT0_0(%r13) - mvc 0(4,%r1),.LC1-.LT0_0(%r13) - basr %r14,%r2 - l %r4,152(%r15) - lm %r13,%r15,148(%r15) - br %r4 -.Lfe1: - .size tramp,.Lfe1-tramp - .align 4 -.globl jump - .type jump,@function -jump: -# leaf function -# has varargs 0 -# incoming args (stack) 0 -# function length 6 -# register live 0100000000000000000000000000000000 - stm %r13,%r13,52(%r15) - bras %r13,.LTN1_0 -.LT1_0: -.LC3: - .long -1161904448 -.LTN1_0: - l %r1,.LC3-.LT1_0(%r13) - br %r1 - lm %r13,%r13,52(%r15) - br %r14 -.Lfe2: - .size jump,.Lfe2-jump - .ident "GCC: (GNU) 2.95.4 20011006 (Debian prerelease)" DELETED ffcall/trampoline/proto-sparc.s Index: ffcall/trampoline/proto-sparc.s ================================================================== --- ffcall/trampoline/proto-sparc.s +++ /dev/null @@ -1,30 +0,0 @@ -gcc2_compiled.: -___gnu_compiled_c: -.text - .align 4 - .global _tramp - .proc 04 -_tramp: - !#PROLOGUE# 0 - save %sp, -104, %sp - !#PROLOGUE# 1 - sethi %hi(305419264), %o2 - sethi %hi(1934967808), %o1 - or %o2, 632, %o2 - or %o1, 785, %o1 - sethi %hi(-1161905152), %o0 - or %o0, 704, %o0 - call %o0, 0 - st %o1, [%o2] - ret - restore %g0, %o0, %o0 - .align 4 - .global _jump - .proc 04 -_jump: - !#PROLOGUE# 0 - !#PROLOGUE# 1 - sethi %hi(-1161905152), %g2 - or %g2, 704, %g2 - jmp %g2 - nop DELETED ffcall/trampoline/proto-sparc.s.gcc263 Index: ffcall/trampoline/proto-sparc.s.gcc263 ================================================================== --- ffcall/trampoline/proto-sparc.s.gcc263 +++ /dev/null @@ -1,31 +0,0 @@ -gcc2_compiled.: -___gnu_compiled_c: -.text - .align 4 - .global _tramp - .proc 04 -_tramp: - !#PROLOGUE# 0 - save %sp,-104,%sp - !#PROLOGUE# 1 - sethi %hi(305419896),%o0 - sethi %hi(1934968593),%o1 - or %o1,%lo(1934968593),%o1 - st %o1,[%o0+%lo(305419896)] - sethi %hi(-1161904448),%o0 - call %o0+%lo(-1161904448),0 - nop - mov %o0,%i0 - ret - restore - .align 4 - .global _jump - .proc 04 -_jump: - !#PROLOGUE# 0 - !#PROLOGUE# 1 - sethi %hi(-1161904448),%g2 - jmp %g2+%lo(-1161904448) - nop - retl - nop DELETED ffcall/trampoline/proto-sparc64.s Index: ffcall/trampoline/proto-sparc64.s ================================================================== --- ffcall/trampoline/proto-sparc64.s +++ /dev/null @@ -1,50 +0,0 @@ - .file "proto64.c" - .version "01.01" -.section ".text" - .align 4 - .global tramp - .type tramp,#function - .proc 04 -tramp: - !#PROLOGUE# 0 - save %sp, -192, %sp - !#PROLOGUE# 1 - sethi %hi(1934967808), %o0 - sethi %hi(1130504192), %o1 - or %o0, 785, %o0 - or %o1, 341, %o1 - sllx %o0, 32, %o0 - sethi %hi(305419264), %o4 - add %o0, %o1, %o0 - or %o4, 632, %o4 - sethi %hi(324502528), %o3 - sethi %hi(0xbabebc00), %o2 - sllx %o4, 32, %o4 - or %o3, 869, %o3 - or %o2, 704, %o2 - sethi %hi(0xdea0fc00), %o1 - sllx %o2, 32, %o2 - or %o1, 939, %o1 - call %o2+%o1, 0 - stx %o0, [%o4+%o3] - ret - restore %g0, %o0, %o0 -.LLfe1: - .size tramp,.LLfe1-tramp - .align 4 - .global jump - .type jump,#function - .proc 04 -jump: - !#PROLOGUE# 0 - !#PROLOGUE# 1 - sethi %hi(0xbabebc00), %g2 - sethi %hi(0xdea0fc00), %g3 - or %g2, 704, %g2 - or %g3, 939, %g3 - sllx %g2, 32, %g2 - jmp %g2+%g3 - nop -.LLfe2: - .size jump,.LLfe2-jump - .ident "GCC: (GNU) 2.95.2 19991024 (release)" DELETED ffcall/trampoline/proto-x86_64.s Index: ffcall/trampoline/proto-x86_64.s ================================================================== --- ffcall/trampoline/proto-x86_64.s +++ /dev/null @@ -1,67 +0,0 @@ - .file "proto64.c" - .text - .p2align 4,,15 -.globl tramp - .type tramp,@function -tramp: -.LFB1: - movabsq $8310626826852639061, %rax - subq $8, %rsp -.LCFI0: - movabsq $-4990341601501839445, %rdx - movabsq %rax, 1311768465192224613 - xorl %eax, %eax - call *%rdx - addq $8, %rsp - ret -.LFE1: -.Lfe1: - .size tramp,.Lfe1-tramp - .p2align 4,,15 -.globl jump - .type jump,@function -jump: -.LFB2: - movabsq $-4990341601501839445, %rax - jmp *%rax -.LFE2: -.Lfe2: - .size jump,.Lfe2-jump - .section .eh_frame,"aw",@progbits -.Lframe1: - .long .LECIE1-.LSCIE1 -.LSCIE1: - .long 0x0 - .byte 0x1 - .string "" - .uleb128 0x1 - .sleb128 -8 - .byte 0x10 - .byte 0xc - .uleb128 0x7 - .uleb128 0x8 - .byte 0x90 - .uleb128 0x1 - .align 8 -.LECIE1: -.LSFDE1: - .long .LEFDE1-.LASFDE1 -.LASFDE1: - .long .LASFDE1-.Lframe1 - .quad .LFB1 - .quad .LFE1-.LFB1 - .byte 0x4 - .long .LCFI0-.LFB1 - .byte 0xe - .uleb128 0x10 - .align 8 -.LEFDE1: -.LSFDE3: - .long .LEFDE3-.LASFDE3 -.LASFDE3: - .long .LASFDE3-.Lframe1 - .quad .LFB2 - .quad .LFE2-.LFB2 - .align 8 -.LEFDE3: - .ident "GCC: (GNU) 3.2.2 (SuSE Linux)" DELETED ffcall/trampoline/proto.c Index: ffcall/trampoline/proto.c ================================================================== --- ffcall/trampoline/proto.c +++ /dev/null @@ -1,23 +0,0 @@ -/* Sample prototype for a trampoline. */ - -/* - * Copyright 1995 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#define function (int (*) ()) 0xbabebec0 -#define variable *(void**) 0x12345678 -#define data (void*) 0x73554711 - -int tramp () -{ variable = data; - return (*function)(); -} - -int jump () -{ goto *function; } - DELETED ffcall/trampoline/proto64.c Index: ffcall/trampoline/proto64.c ================================================================== --- ffcall/trampoline/proto64.c +++ /dev/null @@ -1,23 +0,0 @@ -/* Sample prototype for a trampoline. */ - -/* - * Copyright 1995-1996 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#define function (int (*) ()) 0xbabebec0dea0ffabL -#define variable *(void**) 0x1234567813578765L -#define data (void*) 0x7355471143622155L - -int tramp () -{ variable = data; - return (*function)(); -} - -int jump () -{ goto *function; } - DELETED ffcall/trampoline/test1.c Index: ffcall/trampoline/test1.c ================================================================== --- ffcall/trampoline/test1.c +++ /dev/null @@ -1,48 +0,0 @@ -/* Trampoline test */ - -/* - * Copyright 1995-1999, 2002 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#include -#include - -#include "trampoline.h" - -#define MAGIC1 0x9db9af42 -#define MAGIC2 0x614a13c9 - -static int magic = MAGIC1; - -#ifdef __cplusplus -typedef int (*function)(...); -#else -typedef int (*function)(); -#endif - -void* function_data; - -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -int f (int x) -#else -int f (x) - int x; -#endif -{ return *(int*)function_data + x; } - -int main () -{ - function cf = alloc_trampoline((function)&f, &function_data, &magic); - /* calling cf shall set function_data = &magic and then call f(x), - * thus returning magic + x. - */ - if (((*cf)(MAGIC2) == MAGIC1+MAGIC2) && (function_data == &magic)) - { free_trampoline(cf); printf("Works, test1 passed.\n"); exit(0); } - else - { printf("Doesn't work!\n"); exit(1); } -} DELETED ffcall/trampoline/test2.c Index: ffcall/trampoline/test2.c ================================================================== --- ffcall/trampoline/test2.c +++ /dev/null @@ -1,50 +0,0 @@ -/* Trampoline accessor test */ - -/* - * Copyright 1995-1999, 2002 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#include -#include - -#include "trampoline.h" - -#ifdef __cplusplus -typedef int (*function)(...); -#else -typedef int (*function)(); -#endif - -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -int f (int x) -#else -int f (x) - int x; -#endif -{ return x; } - -void* variable; - -static int data; - -int main () -{ - function cf = alloc_trampoline((function)&f, &variable, &data); - if (is_trampoline((void*)&main)) - { printf("is_trampoline(&main) returns true!\n"); exit(1); } - if (!is_trampoline((void*)cf)) - { printf("is_trampoline() returns false!\n"); exit(1); } - if (trampoline_address((void*)cf) != (function)&f) - { printf("trampoline_address() doesn't work!\n"); exit(1); } - if (trampoline_variable((void*)cf) != &variable) - { printf("trampoline_variable() doesn't work!\n"); exit(1); } - if (trampoline_data((void*)cf) != &data) - { printf("trampoline_data() doesn't work!\n"); exit(1); } - printf("test2 passed.\n"); - exit(0); -} DELETED ffcall/trampoline/tests.passed/alpha-dec-osf4.0-cc-O Index: ffcall/trampoline/tests.passed/alpha-dec-osf4.0-cc-O ================================================================== --- ffcall/trampoline/tests.passed/alpha-dec-osf4.0-cc-O +++ /dev/null DELETED ffcall/trampoline/tests.passed/alpha-dec-osf4.0-gcc Index: ffcall/trampoline/tests.passed/alpha-dec-osf4.0-gcc ================================================================== --- ffcall/trampoline/tests.passed/alpha-dec-osf4.0-gcc +++ /dev/null DELETED ffcall/trampoline/tests.passed/alpha-dec-osf4.0a-gcc Index: ffcall/trampoline/tests.passed/alpha-dec-osf4.0a-gcc ================================================================== --- ffcall/trampoline/tests.passed/alpha-dec-osf4.0a-gcc +++ /dev/null DELETED ffcall/trampoline/tests.passed/alpha-dec-osf4.0d-gcc Index: ffcall/trampoline/tests.passed/alpha-dec-osf4.0d-gcc ================================================================== --- ffcall/trampoline/tests.passed/alpha-dec-osf4.0d-gcc +++ /dev/null DELETED ffcall/trampoline/tests.passed/hppa1.0-hp-hpux8.00-c89 Index: ffcall/trampoline/tests.passed/hppa1.0-hp-hpux8.00-c89 ================================================================== --- ffcall/trampoline/tests.passed/hppa1.0-hp-hpux8.00-c89 +++ /dev/null DELETED ffcall/trampoline/tests.passed/hppa1.0-hp-hpux8.00-cc Index: ffcall/trampoline/tests.passed/hppa1.0-hp-hpux8.00-cc ================================================================== --- ffcall/trampoline/tests.passed/hppa1.0-hp-hpux8.00-cc +++ /dev/null DELETED ffcall/trampoline/tests.passed/hppa1.1-hp-hpux10.01-cc-O Index: ffcall/trampoline/tests.passed/hppa1.1-hp-hpux10.01-cc-O ================================================================== --- ffcall/trampoline/tests.passed/hppa1.1-hp-hpux10.01-cc-O +++ /dev/null DELETED ffcall/trampoline/tests.passed/hppa1.1-hp-hpux9.05-cc-O Index: ffcall/trampoline/tests.passed/hppa1.1-hp-hpux9.05-cc-O ================================================================== --- ffcall/trampoline/tests.passed/hppa1.1-hp-hpux9.05-cc-O +++ /dev/null DELETED ffcall/trampoline/tests.passed/hppa2.0-hp-hpux10.20-cc-O+DA1.1 Index: ffcall/trampoline/tests.passed/hppa2.0-hp-hpux10.20-cc-O+DA1.1 ================================================================== --- ffcall/trampoline/tests.passed/hppa2.0-hp-hpux10.20-cc-O+DA1.1 +++ /dev/null DELETED ffcall/trampoline/tests.passed/hppa2.0-hp-hpux10.20-gcc Index: ffcall/trampoline/tests.passed/hppa2.0-hp-hpux10.20-gcc ================================================================== --- ffcall/trampoline/tests.passed/hppa2.0-hp-hpux10.20-gcc +++ /dev/null DELETED ffcall/trampoline/tests.passed/i386-pc-cygwin32-gcc Index: ffcall/trampoline/tests.passed/i386-pc-cygwin32-gcc ================================================================== --- ffcall/trampoline/tests.passed/i386-pc-cygwin32-gcc +++ /dev/null DELETED ffcall/trampoline/tests.passed/i386-pc-win32-msvc4 Index: ffcall/trampoline/tests.passed/i386-pc-win32-msvc4 ================================================================== --- ffcall/trampoline/tests.passed/i386-pc-win32-msvc4 +++ /dev/null DELETED ffcall/trampoline/tests.passed/i386-pc-win32-msvc5 Index: ffcall/trampoline/tests.passed/i386-pc-win32-msvc5 ================================================================== --- ffcall/trampoline/tests.passed/i386-pc-win32-msvc5 +++ /dev/null DELETED ffcall/trampoline/tests.passed/i386-unknown-sysv4.0-gcc Index: ffcall/trampoline/tests.passed/i386-unknown-sysv4.0-gcc ================================================================== --- ffcall/trampoline/tests.passed/i386-unknown-sysv4.0-gcc +++ /dev/null DELETED ffcall/trampoline/tests.passed/i386-unknown-sysv4.0-usr_bin_cc Index: ffcall/trampoline/tests.passed/i386-unknown-sysv4.0-usr_bin_cc ================================================================== --- ffcall/trampoline/tests.passed/i386-unknown-sysv4.0-usr_bin_cc +++ /dev/null DELETED ffcall/trampoline/tests.passed/i386-unknown-sysv4.0-usr_ucb_cc Index: ffcall/trampoline/tests.passed/i386-unknown-sysv4.0-usr_ucb_cc ================================================================== --- ffcall/trampoline/tests.passed/i386-unknown-sysv4.0-usr_ucb_cc +++ /dev/null DELETED ffcall/trampoline/tests.passed/i486-unknown-linux-gcc Index: ffcall/trampoline/tests.passed/i486-unknown-linux-gcc ================================================================== --- ffcall/trampoline/tests.passed/i486-unknown-linux-gcc +++ /dev/null DELETED ffcall/trampoline/tests.passed/i486-unknown-linux-gcc-traditional Index: ffcall/trampoline/tests.passed/i486-unknown-linux-gcc-traditional ================================================================== --- ffcall/trampoline/tests.passed/i486-unknown-linux-gcc-traditional +++ /dev/null DELETED ffcall/trampoline/tests.passed/i486-unknown-sco3.2v4.2-cc Index: ffcall/trampoline/tests.passed/i486-unknown-sco3.2v4.2-cc ================================================================== --- ffcall/trampoline/tests.passed/i486-unknown-sco3.2v4.2-cc +++ /dev/null DELETED ffcall/trampoline/tests.passed/i486-unknown-sco3.2v4.2-cc-Of Index: ffcall/trampoline/tests.passed/i486-unknown-sco3.2v4.2-cc-Of ================================================================== --- ffcall/trampoline/tests.passed/i486-unknown-sco3.2v4.2-cc-Of +++ /dev/null DELETED ffcall/trampoline/tests.passed/i486-unknown-sco3.2v4.2-cc-Of-Om Index: ffcall/trampoline/tests.passed/i486-unknown-sco3.2v4.2-cc-Of-Om ================================================================== --- ffcall/trampoline/tests.passed/i486-unknown-sco3.2v4.2-cc-Of-Om +++ /dev/null DELETED ffcall/trampoline/tests.passed/i486-unknown-sco3.2v4.2-gcc Index: ffcall/trampoline/tests.passed/i486-unknown-sco3.2v4.2-gcc ================================================================== --- ffcall/trampoline/tests.passed/i486-unknown-sco3.2v4.2-gcc +++ /dev/null DELETED ffcall/trampoline/tests.passed/i486-unknown-sco3.2v4.2-rcc Index: ffcall/trampoline/tests.passed/i486-unknown-sco3.2v4.2-rcc ================================================================== --- ffcall/trampoline/tests.passed/i486-unknown-sco3.2v4.2-rcc +++ /dev/null DELETED ffcall/trampoline/tests.passed/i586-pc-beos-gcc Index: ffcall/trampoline/tests.passed/i586-pc-beos-gcc ================================================================== --- ffcall/trampoline/tests.passed/i586-pc-beos-gcc +++ /dev/null DELETED ffcall/trampoline/tests.passed/m68k-sun-sunos4.0-cc-O Index: ffcall/trampoline/tests.passed/m68k-sun-sunos4.0-cc-O ================================================================== --- ffcall/trampoline/tests.passed/m68k-sun-sunos4.0-cc-O +++ /dev/null DELETED ffcall/trampoline/tests.passed/m68k-unknown-linuxlibc6-gcc Index: ffcall/trampoline/tests.passed/m68k-unknown-linuxlibc6-gcc ================================================================== --- ffcall/trampoline/tests.passed/m68k-unknown-linuxlibc6-gcc +++ /dev/null DELETED ffcall/trampoline/tests.passed/mips-sgi-irix4.0.5H-cc-D__STDC__ Index: ffcall/trampoline/tests.passed/mips-sgi-irix4.0.5H-cc-D__STDC__ ================================================================== --- ffcall/trampoline/tests.passed/mips-sgi-irix4.0.5H-cc-D__STDC__ +++ /dev/null DELETED ffcall/trampoline/tests.passed/mips-sgi-irix4.0.5H-cc-ansi Index: ffcall/trampoline/tests.passed/mips-sgi-irix4.0.5H-cc-ansi ================================================================== --- ffcall/trampoline/tests.passed/mips-sgi-irix4.0.5H-cc-ansi +++ /dev/null DELETED ffcall/trampoline/tests.passed/mips-sgi-irix4.0.5H-cc-cckr Index: ffcall/trampoline/tests.passed/mips-sgi-irix4.0.5H-cc-cckr ================================================================== --- ffcall/trampoline/tests.passed/mips-sgi-irix4.0.5H-cc-cckr +++ /dev/null DELETED ffcall/trampoline/tests.passed/mips-sgi-irix4.0.5H-gcc-fpcc-struct-return Index: ffcall/trampoline/tests.passed/mips-sgi-irix4.0.5H-gcc-fpcc-struct-return ================================================================== --- ffcall/trampoline/tests.passed/mips-sgi-irix4.0.5H-gcc-fpcc-struct-return +++ /dev/null DELETED ffcall/trampoline/tests.passed/mips-sgi-irix4.0.5H-gcc-freg-struct-return Index: ffcall/trampoline/tests.passed/mips-sgi-irix4.0.5H-gcc-freg-struct-return ================================================================== --- ffcall/trampoline/tests.passed/mips-sgi-irix4.0.5H-gcc-freg-struct-return +++ /dev/null DELETED ffcall/trampoline/tests.passed/mips-sgi-irix5.2-cc Index: ffcall/trampoline/tests.passed/mips-sgi-irix5.2-cc ================================================================== --- ffcall/trampoline/tests.passed/mips-sgi-irix5.2-cc +++ /dev/null DELETED ffcall/trampoline/tests.passed/mips-sgi-irix5.2-cc-D__STDC__ Index: ffcall/trampoline/tests.passed/mips-sgi-irix5.2-cc-D__STDC__ ================================================================== --- ffcall/trampoline/tests.passed/mips-sgi-irix5.2-cc-D__STDC__ +++ /dev/null DELETED ffcall/trampoline/tests.passed/mips-sgi-irix5.2-cc-ansi Index: ffcall/trampoline/tests.passed/mips-sgi-irix5.2-cc-ansi ================================================================== --- ffcall/trampoline/tests.passed/mips-sgi-irix5.2-cc-ansi +++ /dev/null DELETED ffcall/trampoline/tests.passed/mips-sgi-irix5.2-cc-cckr Index: ffcall/trampoline/tests.passed/mips-sgi-irix5.2-cc-cckr ================================================================== --- ffcall/trampoline/tests.passed/mips-sgi-irix5.2-cc-cckr +++ /dev/null DELETED ffcall/trampoline/tests.passed/mips-sgi-irix5.2-gcc Index: ffcall/trampoline/tests.passed/mips-sgi-irix5.2-gcc ================================================================== --- ffcall/trampoline/tests.passed/mips-sgi-irix5.2-gcc +++ /dev/null DELETED ffcall/trampoline/tests.passed/mips-sgi-irix5.3-cc Index: ffcall/trampoline/tests.passed/mips-sgi-irix5.3-cc ================================================================== --- ffcall/trampoline/tests.passed/mips-sgi-irix5.3-cc +++ /dev/null DELETED ffcall/trampoline/tests.passed/mips-sgi-irix5.3-cc-D__STDC__ Index: ffcall/trampoline/tests.passed/mips-sgi-irix5.3-cc-D__STDC__ ================================================================== --- ffcall/trampoline/tests.passed/mips-sgi-irix5.3-cc-D__STDC__ +++ /dev/null DELETED ffcall/trampoline/tests.passed/mips-sgi-irix5.3-cc-O Index: ffcall/trampoline/tests.passed/mips-sgi-irix5.3-cc-O ================================================================== --- ffcall/trampoline/tests.passed/mips-sgi-irix5.3-cc-O +++ /dev/null DELETED ffcall/trampoline/tests.passed/mips-sgi-irix5.3-cc-ansi Index: ffcall/trampoline/tests.passed/mips-sgi-irix5.3-cc-ansi ================================================================== --- ffcall/trampoline/tests.passed/mips-sgi-irix5.3-cc-ansi +++ /dev/null DELETED ffcall/trampoline/tests.passed/mips-sgi-irix5.3-cc-cckr Index: ffcall/trampoline/tests.passed/mips-sgi-irix5.3-cc-cckr ================================================================== --- ffcall/trampoline/tests.passed/mips-sgi-irix5.3-cc-cckr +++ /dev/null DELETED ffcall/trampoline/tests.passed/mips-sgi-irix5.3-gcc Index: ffcall/trampoline/tests.passed/mips-sgi-irix5.3-gcc ================================================================== --- ffcall/trampoline/tests.passed/mips-sgi-irix5.3-gcc +++ /dev/null DELETED ffcall/trampoline/tests.passed/mips-sgi-irix6.2-cc-32 Index: ffcall/trampoline/tests.passed/mips-sgi-irix6.2-cc-32 ================================================================== --- ffcall/trampoline/tests.passed/mips-sgi-irix6.2-cc-32 +++ /dev/null DELETED ffcall/trampoline/tests.passed/mips-sgi-irix6.2-cc-64 Index: ffcall/trampoline/tests.passed/mips-sgi-irix6.2-cc-64 ================================================================== --- ffcall/trampoline/tests.passed/mips-sgi-irix6.2-cc-64 +++ /dev/null DELETED ffcall/trampoline/tests.passed/mips-sgi-irix6.4-cc-64 Index: ffcall/trampoline/tests.passed/mips-sgi-irix6.4-cc-64 ================================================================== --- ffcall/trampoline/tests.passed/mips-sgi-irix6.4-cc-64 +++ /dev/null DELETED ffcall/trampoline/tests.passed/mips-sgi-irix6.4-cc-n32 Index: ffcall/trampoline/tests.passed/mips-sgi-irix6.4-cc-n32 ================================================================== --- ffcall/trampoline/tests.passed/mips-sgi-irix6.4-cc-n32 +++ /dev/null DELETED ffcall/trampoline/tests.passed/mips-sgi-irix6.4-cc-o32 Index: ffcall/trampoline/tests.passed/mips-sgi-irix6.4-cc-o32 ================================================================== --- ffcall/trampoline/tests.passed/mips-sgi-irix6.4-cc-o32 +++ /dev/null DELETED ffcall/trampoline/tests.passed/mips-sgi-irix6.5-cc-32 Index: ffcall/trampoline/tests.passed/mips-sgi-irix6.5-cc-32 ================================================================== --- ffcall/trampoline/tests.passed/mips-sgi-irix6.5-cc-32 +++ /dev/null DELETED ffcall/trampoline/tests.passed/mips-sgi-irix6.5-gcc Index: ffcall/trampoline/tests.passed/mips-sgi-irix6.5-gcc ================================================================== --- ffcall/trampoline/tests.passed/mips-sgi-irix6.5-gcc +++ /dev/null DELETED ffcall/trampoline/tests.passed/powerpc-ibm-aix4.1.4.0-cc Index: ffcall/trampoline/tests.passed/powerpc-ibm-aix4.1.4.0-cc ================================================================== --- ffcall/trampoline/tests.passed/powerpc-ibm-aix4.1.4.0-cc +++ /dev/null DELETED ffcall/trampoline/tests.passed/powerpc-ibm-aix4.1.4.0-gcc Index: ffcall/trampoline/tests.passed/powerpc-ibm-aix4.1.4.0-gcc ================================================================== --- ffcall/trampoline/tests.passed/powerpc-ibm-aix4.1.4.0-gcc +++ /dev/null DELETED ffcall/trampoline/tests.passed/powerpc-ibm-aix4.1.4.0-xlc Index: ffcall/trampoline/tests.passed/powerpc-ibm-aix4.1.4.0-xlc ================================================================== --- ffcall/trampoline/tests.passed/powerpc-ibm-aix4.1.4.0-xlc +++ /dev/null DELETED ffcall/trampoline/tests.passed/powerpc-ibm-aix4.1.4.0-xlc-O Index: ffcall/trampoline/tests.passed/powerpc-ibm-aix4.1.4.0-xlc-O ================================================================== --- ffcall/trampoline/tests.passed/powerpc-ibm-aix4.1.4.0-xlc-O +++ /dev/null DELETED ffcall/trampoline/tests.passed/powerpc-ibm-aix4.1.5.0-cc Index: ffcall/trampoline/tests.passed/powerpc-ibm-aix4.1.5.0-cc ================================================================== --- ffcall/trampoline/tests.passed/powerpc-ibm-aix4.1.5.0-cc +++ /dev/null DELETED ffcall/trampoline/tests.passed/powerpc-ibm-aix4.1.5.0-cc-O Index: ffcall/trampoline/tests.passed/powerpc-ibm-aix4.1.5.0-cc-O ================================================================== --- ffcall/trampoline/tests.passed/powerpc-ibm-aix4.1.5.0-cc-O +++ /dev/null DELETED ffcall/trampoline/tests.passed/powerpc-ibm-aix4.1.5.0-xlc Index: ffcall/trampoline/tests.passed/powerpc-ibm-aix4.1.5.0-xlc ================================================================== --- ffcall/trampoline/tests.passed/powerpc-ibm-aix4.1.5.0-xlc +++ /dev/null DELETED ffcall/trampoline/tests.passed/powerpc-ibm-aix4.1.5.0-xlc-O Index: ffcall/trampoline/tests.passed/powerpc-ibm-aix4.1.5.0-xlc-O ================================================================== --- ffcall/trampoline/tests.passed/powerpc-ibm-aix4.1.5.0-xlc-O +++ /dev/null DELETED ffcall/trampoline/tests.passed/powerpc-ibm-aix4.3.2.0-cc Index: ffcall/trampoline/tests.passed/powerpc-ibm-aix4.3.2.0-cc ================================================================== --- ffcall/trampoline/tests.passed/powerpc-ibm-aix4.3.2.0-cc +++ /dev/null DELETED ffcall/trampoline/tests.passed/powerpc-ibm-aix4.3.2.0-cc-O Index: ffcall/trampoline/tests.passed/powerpc-ibm-aix4.3.2.0-cc-O ================================================================== --- ffcall/trampoline/tests.passed/powerpc-ibm-aix4.3.2.0-cc-O +++ /dev/null DELETED ffcall/trampoline/tests.passed/powerpc-ibm-aix4.3.2.0-xlc Index: ffcall/trampoline/tests.passed/powerpc-ibm-aix4.3.2.0-xlc ================================================================== --- ffcall/trampoline/tests.passed/powerpc-ibm-aix4.3.2.0-xlc +++ /dev/null DELETED ffcall/trampoline/tests.passed/powerpc-ibm-aix4.3.2.0-xlc-O Index: ffcall/trampoline/tests.passed/powerpc-ibm-aix4.3.2.0-xlc-O ================================================================== --- ffcall/trampoline/tests.passed/powerpc-ibm-aix4.3.2.0-xlc-O +++ /dev/null DELETED ffcall/trampoline/tests.passed/rs6000-ibm-aix3.2.5-c89 Index: ffcall/trampoline/tests.passed/rs6000-ibm-aix3.2.5-c89 ================================================================== --- ffcall/trampoline/tests.passed/rs6000-ibm-aix3.2.5-c89 +++ /dev/null DELETED ffcall/trampoline/tests.passed/rs6000-ibm-aix3.2.5-cc Index: ffcall/trampoline/tests.passed/rs6000-ibm-aix3.2.5-cc ================================================================== --- ffcall/trampoline/tests.passed/rs6000-ibm-aix3.2.5-cc +++ /dev/null DELETED ffcall/trampoline/tests.passed/rs6000-ibm-aix3.2.5-gcc Index: ffcall/trampoline/tests.passed/rs6000-ibm-aix3.2.5-gcc ================================================================== --- ffcall/trampoline/tests.passed/rs6000-ibm-aix3.2.5-gcc +++ /dev/null DELETED ffcall/trampoline/tests.passed/rs6000-ibm-aix3.2.5-xlc Index: ffcall/trampoline/tests.passed/rs6000-ibm-aix3.2.5-xlc ================================================================== --- ffcall/trampoline/tests.passed/rs6000-ibm-aix3.2.5-xlc +++ /dev/null DELETED ffcall/trampoline/tests.passed/rs6000-ibm-aix4.2.0.0-cc Index: ffcall/trampoline/tests.passed/rs6000-ibm-aix4.2.0.0-cc ================================================================== --- ffcall/trampoline/tests.passed/rs6000-ibm-aix4.2.0.0-cc +++ /dev/null DELETED ffcall/trampoline/tests.passed/rs6000-ibm-aix4.2.0.0-cc-O Index: ffcall/trampoline/tests.passed/rs6000-ibm-aix4.2.0.0-cc-O ================================================================== --- ffcall/trampoline/tests.passed/rs6000-ibm-aix4.2.0.0-cc-O +++ /dev/null DELETED ffcall/trampoline/tests.passed/rs6000-ibm-aix4.2.0.0-gcc Index: ffcall/trampoline/tests.passed/rs6000-ibm-aix4.2.0.0-gcc ================================================================== --- ffcall/trampoline/tests.passed/rs6000-ibm-aix4.2.0.0-gcc +++ /dev/null DELETED ffcall/trampoline/tests.passed/rs6000-ibm-aix4.2.0.0-xlc Index: ffcall/trampoline/tests.passed/rs6000-ibm-aix4.2.0.0-xlc ================================================================== --- ffcall/trampoline/tests.passed/rs6000-ibm-aix4.2.0.0-xlc +++ /dev/null DELETED ffcall/trampoline/tests.passed/rs6000-ibm-aix4.2.0.0-xlc-O Index: ffcall/trampoline/tests.passed/rs6000-ibm-aix4.2.0.0-xlc-O ================================================================== --- ffcall/trampoline/tests.passed/rs6000-ibm-aix4.2.0.0-xlc-O +++ /dev/null DELETED ffcall/trampoline/tests.passed/sparc-sun-solaris2.4-cc Index: ffcall/trampoline/tests.passed/sparc-sun-solaris2.4-cc ================================================================== --- ffcall/trampoline/tests.passed/sparc-sun-solaris2.4-cc +++ /dev/null DELETED ffcall/trampoline/tests.passed/sparc-sun-solaris2.4-cc-O Index: ffcall/trampoline/tests.passed/sparc-sun-solaris2.4-cc-O ================================================================== --- ffcall/trampoline/tests.passed/sparc-sun-solaris2.4-cc-O +++ /dev/null DELETED ffcall/trampoline/tests.passed/sparc-sun-solaris2.4-gcc Index: ffcall/trampoline/tests.passed/sparc-sun-solaris2.4-gcc ================================================================== --- ffcall/trampoline/tests.passed/sparc-sun-solaris2.4-gcc +++ /dev/null DELETED ffcall/trampoline/tests.passed/sparc-sun-solaris2.4-gcc-fpcc-struct-return Index: ffcall/trampoline/tests.passed/sparc-sun-solaris2.4-gcc-fpcc-struct-return ================================================================== --- ffcall/trampoline/tests.passed/sparc-sun-solaris2.4-gcc-fpcc-struct-return +++ /dev/null DELETED ffcall/trampoline/tests.passed/sparc-sun-solaris2.4-gcc-freg-struct-return Index: ffcall/trampoline/tests.passed/sparc-sun-solaris2.4-gcc-freg-struct-return ================================================================== --- ffcall/trampoline/tests.passed/sparc-sun-solaris2.4-gcc-freg-struct-return +++ /dev/null DELETED ffcall/trampoline/tests.passed/sparc-sun-sunos4.1.3_U1-cc-O Index: ffcall/trampoline/tests.passed/sparc-sun-sunos4.1.3_U1-cc-O ================================================================== --- ffcall/trampoline/tests.passed/sparc-sun-sunos4.1.3_U1-cc-O +++ /dev/null DELETED ffcall/trampoline/tests.passed/sparc-sun-sunos4.1.3_U1-gcc Index: ffcall/trampoline/tests.passed/sparc-sun-sunos4.1.3_U1-gcc ================================================================== --- ffcall/trampoline/tests.passed/sparc-sun-sunos4.1.3_U1-gcc +++ /dev/null DELETED ffcall/trampoline/tests.passed/sparc-unknown-linuxlibc6-gcc Index: ffcall/trampoline/tests.passed/sparc-unknown-linuxlibc6-gcc ================================================================== --- ffcall/trampoline/tests.passed/sparc-unknown-linuxlibc6-gcc +++ /dev/null DELETED ffcall/trampoline/tramp-alpha-osf3.o Index: ffcall/trampoline/tramp-alpha-osf3.o ================================================================== --- ffcall/trampoline/tramp-alpha-osf3.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/trampoline/tramp-alpha.o Index: ffcall/trampoline/tramp-alpha.o ================================================================== --- ffcall/trampoline/tramp-alpha.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/trampoline/tramp-alpha.s Index: ffcall/trampoline/tramp-alpha.s ================================================================== --- ffcall/trampoline/tramp-alpha.s +++ /dev/null @@ -1,45 +0,0 @@ -/* Trampoline for alpha CPU */ - -/* - * Copyright 1995 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -/* Available registers: $1, $2, $3, $4, $5, $6, $7, $8. */ - - .set noreorder - .set noat -.text - .align 3 - - .globl tramp - .ent tramp -tramp: - br $1,tramp1 /* $1 := address of tramp1 */ -tramp1: /* Load everything relative to $1. If we were to use "lda" instructions - * we would have to do the usual ldgp $29,0($27) - */ - ldq $2,20($1) /* data */ - ldq $3,28($1) /* variable */ - ldq $27,36($1) /* function */ - stq $2,0($3) - /* The called function expects to see its own address in $27. */ - jmp $31,($27),0 /* jump to function */ - - .align 3 -data: - .quad 0x73554711 - - .align 3 -variable: - .quad 0x12345678 - - .align 3 -function: - .quad 0xbabebec0 - - .end tramp DELETED ffcall/trampoline/tramp-arm.o Index: ffcall/trampoline/tramp-arm.o ================================================================== --- ffcall/trampoline/tramp-arm.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/trampoline/tramp-arm.s Index: ffcall/trampoline/tramp-arm.s ================================================================== --- ffcall/trampoline/tramp-arm.s +++ /dev/null @@ -1,47 +0,0 @@ -@ Trampoline for arm CPU - -@ Copyright 1995 Bruno Haible, -@ -@ This is free software distributed under the GNU General Public Licence -@ described in the file COPYING. Contact the author if you don't have this -@ or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, -@ on this software. - -@ Available registers: ip. - -rfp .req r9 -sl .req r10 -fp .req r11 -ip .req r12 -sp .req r13 -lr .req r14 -pc .req r15 -.text - .align 0 - .global _tramp -_tramp: - @ Immediate constants are a problem. I take the indirect load approach - @ because I don't want 4 instructions for each constant. - stmfd sp!,{r0} - ldr r0,[pc,#_data-.-8] - ldr ip,[r0,#0] - ldr r0,[pc,#_variable-.-8] - str ip,[r0,#0] - ldmfd sp!,{r0}^ - ldr ip,[pc,#_function-.-8] - ldr pc,[ip,#0] - - .global _data - .align 0 -_data: - .word 0x73554711 - - .global _variable - .align 0 -_variable: - .word 0x12345678 - - .global _function - .align 0 -_function: - .word 0xbabebec0 DELETED ffcall/trampoline/tramp-convex.s Index: ffcall/trampoline/tramp-convex.s ================================================================== --- ffcall/trampoline/tramp-convex.s +++ /dev/null @@ -1,19 +0,0 @@ -/* Trampoline for convex CPU */ - -/* - * Copyright 1995 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -/* Available registers: s1, s2, s3, s4, s5, s6, s7, s0. */ - -.globl _tramp -_tramp: - ld.w #0x73554711,s1 - st.w s1,0x12345678 - jmp 0xbabebec0 - ds.h 0 DELETED ffcall/trampoline/tramp-hppa-old.o Index: ffcall/trampoline/tramp-hppa-old.o ================================================================== --- ffcall/trampoline/tramp-hppa-old.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/trampoline/tramp-hppa-old.s Index: ffcall/trampoline/tramp-hppa-old.s ================================================================== --- ffcall/trampoline/tramp-hppa-old.s +++ /dev/null @@ -1,47 +0,0 @@ -; Trampoline for hppa CPU - -; Copyright 1995 Bruno Haible, -; -; This is free software distributed under the GNU General Public Licence -; described in the file COPYING. Contact the author if you don't have this -; or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, -; on this software. - -; Available registers: %r19, %r20, %r21, %r22. - - .SPACE $PRIVATE$ - .SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31 - .SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82 - .SPACE $TEXT$ - .SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44 - .SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY - - .SPACE $TEXT$ - .SUBSPA $CODE$ - - .align 4 - .EXPORT tramp -tramp - .PROC - .CALLINFO - .ENTRY -; Move into - ldil L'0x73554711,%r20 - ldil L'0x12345678,%r19 - ldo R'0x73554711(%r20),%r20 - stw %r20,R'0x12345678(%r19) -; Get - ldil L'0xbabebec0,%r21 - ldo R'0xbabebec0(%r21),%r21 -; Jump to %r21, just like the gcc-2.6.3 trampoline does it: - bb,>=,n %r21,30,tramp2 ; check bit 1 of %r21 - depi 0,31,2,%r21 ; if set, clear bits 1..0 - ldw 4(0,%r21),%r19 ; ... dereference the function struct - ldw 0(0,%r21),%r21 ; ... to get the actual code address -tramp2 - ldsid (0,%r21),%r1 - mtsp %r1,%sr0 ; set segment register - be,n 0(%sr0,%r21) ; now do an inter-module jump - nop - .EXIT - .PROCEND DELETED ffcall/trampoline/tramp-hppa.s Index: ffcall/trampoline/tramp-hppa.s ================================================================== --- ffcall/trampoline/tramp-hppa.s +++ /dev/null @@ -1,43 +0,0 @@ -; Trampoline for hppa CPU - -; -; Copyright 1997 Bruno Haible, -; -; This is free software distributed under the GNU General Public Licence -; described in the file COPYING. Contact the author if you don't have this -; or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, -; on this software. -; - - .code - .IMPORT $global$,DATA - .IMPORT $$dyncall,MILLICODE - .code - - .align 4 - .EXPORT tramp,ENTRY,PRIV_LEV=3,ARGW0=GR,ARGW1=GR - .label tramp - .PROC - .CALLINFO FRAME=0,NO_CALLS - .ENTRY -; The closure pointer is already in register %r19. -; Move into register %r20. - ldw 0(0,%r19),%r20 -; Move into register %r22 - ldw 4(0,%r19),%r22 -; Move
into register %r21. - ldw 8(0,%r19),%r21 -; Store into . - stw %r22,0(0,%r20) -; Jump to %r21. - bb,>=,n %r21,30,tramp_2 - depi 0,31,2,%r21 - ldw 4(0,%r21),%r19 - ldw 0(0,%r21),%r21 - .label tramp_2 - ldsid (0,%r21),%r1 - mtsp %r1,%sr0 - be,n 0(%sr0,%r21) - nop - .EXIT - .PROCEND DELETED ffcall/trampoline/tramp-i386.o Index: ffcall/trampoline/tramp-i386.o ================================================================== --- ffcall/trampoline/tramp-i386.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/trampoline/tramp-i386.s Index: ffcall/trampoline/tramp-i386.s ================================================================== --- ffcall/trampoline/tramp-i386.s +++ /dev/null @@ -1,17 +0,0 @@ -/* Trampoline for i386 CPU */ - -/* - * Copyright 1995 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -/* Available registers: %eax, %edx, %ecx. */ - -.globl _tramp -_tramp: - movl $0x73554711,0x12345678 - jmp 0xbabebec0 DELETED ffcall/trampoline/tramp-ia64.s Index: ffcall/trampoline/tramp-ia64.s ================================================================== --- ffcall/trampoline/tramp-ia64.s +++ /dev/null @@ -1,34 +0,0 @@ -/* Trampoline for ia64 CPU */ - -/* - * Copyright 2001 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - - .text - .align 16 - .global tramp# - .proc tramp# -tramp: - /* The closure pointer is already in register r1. */ - ld8 r14 = [r1] /* Move
into register r14. */ - adds r15 = 8, r1 - adds r16 = 16, r1 - ;; - /* Jump to r14. */ - ld8 r18 = [r14] - ld8 r15 = [r15] /* Move into register r15. */ - adds r17 = 8, r14 - ;; - ld8 r16 = [r16] /* Move into register r16. */ - ld8 r1 = [r17] - mov b6 = r18 - ;; - st8 [r15] = r16 /* Store into . */ - br b6 - ;; - .endp tramp# DELETED ffcall/trampoline/tramp-m68k.o Index: ffcall/trampoline/tramp-m68k.o ================================================================== --- ffcall/trampoline/tramp-m68k.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/trampoline/tramp-m68k.s Index: ffcall/trampoline/tramp-m68k.s ================================================================== --- ffcall/trampoline/tramp-m68k.s +++ /dev/null @@ -1,16 +0,0 @@ -| Trampoline for m68k CPU - -| Copyright 1995 Bruno Haible, -| -| This is free software distributed under the GNU General Public Licence -| described in the file COPYING. Contact the author if you don't have this -| or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, -| on this software. - -| Available registers: d0, d1, a0, a1. - -.globl _tramp -_tramp: - movel #0x73554711,0x12345678 - jmp 0xbabebec0 - nop DELETED ffcall/trampoline/tramp-m88k.o Index: ffcall/trampoline/tramp-m88k.o ================================================================== --- ffcall/trampoline/tramp-m88k.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/trampoline/tramp-m88k.s Index: ffcall/trampoline/tramp-m88k.s ================================================================== --- ffcall/trampoline/tramp-m88k.s +++ /dev/null @@ -1,26 +0,0 @@ -; Trampoline for m88k CPU - -; Copyright 1995 Bruno Haible, -; -; This is free software distributed under the GNU General Public Licence -; described in the file COPYING. Contact the author if you don't have this -; or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, -; on this software. - -; Available registers: r13, r10, maybe r11. - -text - align 8 - global tramp -; type tramp,#function -tramp: - or.u r13,r0,0x1234 - or r13,r13,0x5678 - or.u r10,r0,0x7355 - or r10,r10,0x4711 - st r10,r0,r13 - or.u r13,r0,0xbabe - or r13,r13,0xbec0 - jmp r13 -.Lfe1: -; size tramp,.Lfe1-tramp DELETED ffcall/trampoline/tramp-mips.o Index: ffcall/trampoline/tramp-mips.o ================================================================== --- ffcall/trampoline/tramp-mips.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/trampoline/tramp-mips.s Index: ffcall/trampoline/tramp-mips.s ================================================================== --- ffcall/trampoline/tramp-mips.s +++ /dev/null @@ -1,29 +0,0 @@ -/* Trampoline for mips CPU */ - -/* - * Copyright 1995 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -/* Available registers: $2, $3. */ - - .set nobopt - .set noreorder - .text - .globl tramp - .ent tramp -tramp: - li $2,0x73550000 - ori $2,$2,0x4711 - sw $2,0x12345678 - li $25,0xbabe0000 - ori $25,$25,0xbec0 - /* The called function expects to see its own address in $25. */ - j $25 - /* Some Mips hardware running Irix-4.0.5 needs this nop. */ - nop - .end tramp DELETED ffcall/trampoline/tramp-mips64.o Index: ffcall/trampoline/tramp-mips64.o ================================================================== --- ffcall/trampoline/tramp-mips64.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/trampoline/tramp-mips64.old.o Index: ffcall/trampoline/tramp-mips64.old.o ================================================================== --- ffcall/trampoline/tramp-mips64.old.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/trampoline/tramp-mips64.old.o.irix6.2 Index: ffcall/trampoline/tramp-mips64.old.o.irix6.2 ================================================================== --- ffcall/trampoline/tramp-mips64.old.o.irix6.2 +++ /dev/null cannot compute difference between binary files DELETED ffcall/trampoline/tramp-mips64.old.s Index: ffcall/trampoline/tramp-mips64.old.s ================================================================== --- ffcall/trampoline/tramp-mips64.old.s +++ /dev/null @@ -1,50 +0,0 @@ -/* Trampoline for mips CPU in 64-bit mode */ - -/* - * Copyright 1996 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -/* Available registers: $2, $3. */ - - .set nobopt - .set noreorder - .text - .globl main - .ent main -main: - .end main - .globl tramp - .ent tramp -tramp: -# dli $2,0x1234567813578765 - lui $2,0x1234 - ori $2,$2,0x5678 - dsll $2,$2,16 - ori $2,$2,0x1357 - dsll $2,$2,16 - ori $2,$2,0x8765 -# dli $3,0x7355471143622155 - lui $3,0x7355 - ori $3,$3,0x4711 - dsll $3,$3,16 - ori $3,$3,0x4362 - dsll $3,$3,16 - ori $3,$3,0x2155 - sd $3,0($2) -# dli $25,0xbabebec0dea0ffab - lui $25,0xbabe - ori $25,$25,0xbec0 - dsll $25,$25,16 - ori $25,$25,0xdea0 - dsll $25,$25,16 - ori $25,$25,0xffab - /* The called function expects to see its own address in $25. */ - j $25 - /* Some Mips hardware running Irix-4.0.5 needs this nop. */ - nop - .end tramp DELETED ffcall/trampoline/tramp-mips64.s Index: ffcall/trampoline/tramp-mips64.s ================================================================== --- ffcall/trampoline/tramp-mips64.s +++ /dev/null @@ -1,39 +0,0 @@ -/* Trampoline for mips CPU in 64-bit mode */ - -/* - * Copyright 1996 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -/* Available registers: $2, $3. */ - - .set nobopt - .set noreorder - .text - .globl main - .ent main -main: - .end main - .globl tramp - .ent tramp -tramp: - /* We can assume that our own address (=tramp) is in $25. */ - ld $2,$LC0-tramp($25) - ld $3,$LC1-tramp($25) - sd $3,0($2) - ld $25,$LC2-tramp($25) - /* The called function expects to see its own address in $25. */ - j $25 - /* Some Mips hardware running Irix-4.0.5 needs this nop. */ - nop -$LC0: - .dword 0x1234567813578765 -$LC1: - .dword 0x7355471143622155 -$LC2: - .dword 0xbabebec0dea0ffab - .end tramp DELETED ffcall/trampoline/tramp-mipsn32.o Index: ffcall/trampoline/tramp-mipsn32.o ================================================================== --- ffcall/trampoline/tramp-mipsn32.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/trampoline/tramp-mipsn32.s Index: ffcall/trampoline/tramp-mipsn32.s ================================================================== --- ffcall/trampoline/tramp-mipsn32.s +++ /dev/null @@ -1,42 +0,0 @@ -/* Trampoline for mips CPU */ - -/* - * Copyright 1996-1998 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -/* Available registers: $2, $3. */ - - .set nobopt - .set noreorder - .text - .globl main - .ent main -main: - .end main - .globl tramp - .ent tramp -tramp: - /* We can assume that our own address (=tramp) is in $25. */ - lw $2,24($25) - lw $3,28($25) - sw $3,0($2) - lw $25,32($25) - /* The called function expects to see its own address in $25. */ - j $25 - /* Some Mips hardware running Irix-4.0.5 needs this nop. */ - nop - /* We'll actually store the data words immediately after the code. */ - /* The assembler just doesn't like ".word" inside section .text. */ - .data -$LC0: - .word 0x12345678 -$LC1: - .word 0x73554711 -$LC2: - .word 0xbabebec0 - .end tramp DELETED ffcall/trampoline/tramp-rs6000-old-aix.o Index: ffcall/trampoline/tramp-rs6000-old-aix.o ================================================================== --- ffcall/trampoline/tramp-rs6000-old-aix.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/trampoline/tramp-rs6000-old.o Index: ffcall/trampoline/tramp-rs6000-old.o ================================================================== --- ffcall/trampoline/tramp-rs6000-old.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/trampoline/tramp-rs6000-old.s Index: ffcall/trampoline/tramp-rs6000-old.s ================================================================== --- ffcall/trampoline/tramp-rs6000-old.s +++ /dev/null @@ -1,38 +0,0 @@ -/* Trampoline for rs6000 CPU */ - -/* - * Copyright 1995 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -/* Available registers: r0, r11, r10, r8, r7, r6, r5, r4, maybe r9. */ -/* However, r0 is special in that it cannot be used as a base register. */ - - .globl .tramp -.csect .text[PR] -.tramp: -/* Move into */ - liu 11,0x1234 - oril 11,11,0x5678 - liu 10,0x7355 - oril 10,10,0x4711 - st 10,0(11) -/* Get */ - liu 10,0xbabe - oril 10,10,0xbec0 -/* - * gcc-2.6.3 source says: - * A function pointer is a pointer to a data area whose first word contains - * the actual address of the function, whose second word contains a pointer - * to its TOC, and whose third word contains a value to place in the static - * chain register (r11). - */ - l 11,8(10) /* pass static chain in r11 */ - l 2,4(10) /* pass TOC in r2 */ - l 0,0(10) /* actual code address */ - mtctr 0 - bctr DELETED ffcall/trampoline/tramp-rs6000-sysv4.o Index: ffcall/trampoline/tramp-rs6000-sysv4.o ================================================================== --- ffcall/trampoline/tramp-rs6000-sysv4.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/trampoline/tramp-rs6000-sysv4.s Index: ffcall/trampoline/tramp-rs6000-sysv4.s ================================================================== --- ffcall/trampoline/tramp-rs6000-sysv4.s +++ /dev/null @@ -1,29 +0,0 @@ -/* Trampoline for rs6000 CPU with SysV.4 ABI */ - -/* - * Copyright 1995-1999 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -/* Available registers: r0, r12, r11, r10, r9, r8, r7, r6, r5, r4, r3. */ -/* However, r0 is special in that it cannot be used as a base register. */ -/* And r3...r10 should not be clobbered because they contain the first 8 - * integer arguments to the function being called. */ - - .globl tramp -tramp: -/* Move into */ - lis 11,0x1234 - ori 11,11,0x5678 - lis 12,0x7355 - ori 12,12,0x4711 - stw 12,0(11) -/* Get */ - lis 0,0xbabe - ori 0,0,0xbec0 - mtctr 0 - bctr DELETED ffcall/trampoline/tramp-rs6000.new.S Index: ffcall/trampoline/tramp-rs6000.new.S ================================================================== --- ffcall/trampoline/tramp-rs6000.new.S +++ /dev/null @@ -1,45 +0,0 @@ -/* Trampoline for rs6000 CPU with AIX calling convention */ - -/* - * Copyright 1995-1999 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -/* Available registers: r0, r12, r11, r10, r9, r8, r7, r6, r5, r4, r3. */ -/* However, r0 is special in that it cannot be used as a base register. */ -/* And r3...r10 should not be clobbered because they contain the first 8 - * integer arguments to the function being called. */ - - .globl tramp - .globl .tramp -.csect tramp[DS] -tramp: - .long .tramp, 0, 0 -.csect .text[PR] -.tramp: -/* Move into */ - lwz 11,0(2) /* get */ - lwz 12,4(2) /* get */ - stw 12,0(11) -/* Get */ - lwz 12,8(2) -/* - * gcc-2.6.3 source says: - * A function pointer is a pointer to a data area whose first word contains - * the actual address of the function, whose second word contains a pointer - * to its TOC, and whose third word contains a value to place in the static - * chain register (r11). - */ - lwz 11,8(12) /* pass static chain in r11 */ - lwz 2,4(12) /* pass TOC in r2 */ - lwz 0,0(12) /* actual code address */ - mtctr 0 - bctr - -_section_.text: -.csect .data[RW] - .long _section_.text DELETED ffcall/trampoline/tramp-rs6000.old.S Index: ffcall/trampoline/tramp-rs6000.old.S ================================================================== --- ffcall/trampoline/tramp-rs6000.old.S +++ /dev/null @@ -1,45 +0,0 @@ -/* Trampoline for rs6000 CPU with AIX calling convention */ - -/* - * Copyright 1995-1999 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -/* Available registers: r0, r12, r11, r10, r9, r8, r7, r6, r5, r4, r3. */ -/* However, r0 is special in that it cannot be used as a base register. */ -/* And r3...r10 should not be clobbered because they contain the first 8 - * integer arguments to the function being called. */ - - .globl tramp - .globl .tramp -.csect tramp[DS] -tramp: - .long .tramp, 0, 0 -.csect .text[PR] -.tramp: -/* Move into */ - l 11,0(2) /* get */ - l 12,4(2) /* get */ - st 12,0(11) -/* Get */ - l 12,8(2) -/* - * gcc-2.6.3 source says: - * A function pointer is a pointer to a data area whose first word contains - * the actual address of the function, whose second word contains a pointer - * to its TOC, and whose third word contains a value to place in the static - * chain register (r11). - */ - l 11,8(12) /* pass static chain in r11 */ - l 2,4(12) /* pass TOC in r2 */ - l 0,0(12) /* actual code address */ - mtctr 0 - bctr - -_section_.text: -.csect .data[RW] - .long _section_.text DELETED ffcall/trampoline/tramp-s390.s Index: ffcall/trampoline/tramp-s390.s ================================================================== --- ffcall/trampoline/tramp-s390.s +++ /dev/null @@ -1,31 +0,0 @@ -/* Trampoline for s390 CPU */ - -/* - * Copyright 1995 Bruno Haible, - * Copyright 2001 Gerhard Tonn, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -/* Available registers: r0, r1. */ - -.globl _tramp -_tramp: - lr %r0,%r13 - bras %r13,.LTN0_0 -.LT0_0: -.LC0: - .long 0x73554711 -.LC1: - .long 0x12345678 -.LC2: - .long 0xbabebec0 -.LTN0_0: - l %r1,.LC0-.LT0_0(%r13) - mvc 0(4,%r1),.LC1-.LT0_0(%r13) - l %r1,.LC2-.LT0_0(%r13) - lr %r13,%r0 - br %r1 DELETED ffcall/trampoline/tramp-sparc.o Index: ffcall/trampoline/tramp-sparc.o ================================================================== --- ffcall/trampoline/tramp-sparc.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/trampoline/tramp-sparc.s Index: ffcall/trampoline/tramp-sparc.s ================================================================== --- ffcall/trampoline/tramp-sparc.s +++ /dev/null @@ -1,21 +0,0 @@ -! Trampoline for sparc CPU - -! Copyright 1995 Bruno Haible, -! -! This is free software distributed under the GNU General Public Licence -! described in the file COPYING. Contact the author if you don't have this -! or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, -! on this software. - -! Available registers: %g1, %g2, %g3. - - .global _tramp - .proc 04 -_tramp: - sethi %hi(0x12345678),%g1 - sethi %hi(0x73554711),%g2 - or %g2,%lo(0x73554711),%g2 - st %g2,[%g1+%lo(0x12345678)] - sethi %hi(0xbabebec0),%g1 - jmp %g1+%lo(0xbabebec0) - nop DELETED ffcall/trampoline/tramp-sparc64.o Index: ffcall/trampoline/tramp-sparc64.o ================================================================== --- ffcall/trampoline/tramp-sparc64.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/trampoline/tramp-sparc64.old.o Index: ffcall/trampoline/tramp-sparc64.old.o ================================================================== --- ffcall/trampoline/tramp-sparc64.old.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/trampoline/tramp-sparc64.old.s Index: ffcall/trampoline/tramp-sparc64.old.s ================================================================== --- ffcall/trampoline/tramp-sparc64.old.s +++ /dev/null @@ -1,32 +0,0 @@ -! Trampoline for sparc64 CPU - -! Copyright 1999 Bruno Haible, -! -! This is free software distributed under the GNU General Public Licence -! described in the file COPYING. Contact the author if you don't have this -! or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, -! on this software. - -! Available registers: %g1, %g2, %g3. - - .global _tramp - .proc 04 -_tramp: - call _getpc,0 ! Put the address of _tramp into %o7 - mov %o7,%g1 ! But save the previous %o7 in %g1 -_getpc: - ldx [%o7+(_variable-_tramp)],%g2 - ldx [%o7+(_data-_tramp)],%g3 - stx %g3,[%g2] - ldx [%o7+(_function-_tramp)],%g2 - jmp %g2 - mov %g1,%o7 -_variable: - .long 0x12345678 - .long 0x13578765 -_data: - .long 0x73554711 - .long 0x43622155 -_function: - .long 0xbabebec0 - .long 0xdea0ffab DELETED ffcall/trampoline/tramp-sparc64.s Index: ffcall/trampoline/tramp-sparc64.s ================================================================== --- ffcall/trampoline/tramp-sparc64.s +++ /dev/null @@ -1,29 +0,0 @@ -! Trampoline for sparc64 CPU - -! Copyright 1999 Bruno Haible, -! -! This is free software distributed under the GNU General Public Licence -! described in the file COPYING. Contact the author if you don't have this -! or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, -! on this software. - -! Available registers: %g1, %g2, %g3. - - .global _tramp - .proc 04 -_tramp: - rd %pc,%g1 ! Put the address of _tramp into %g1 - ldx [%g1+(_variable-_tramp)],%g2 - ldx [%g1+(_data-_tramp)],%g3 - ldx [%g1+(_function-_tramp)],%g1 - jmp %g1 - stx %g3,[%g2] -_variable: - .long 0x12345678 - .long 0x13578765 -_data: - .long 0x73554711 - .long 0x43622155 -_function: - .long 0xbabebec0 - .long 0xdea0ffab DELETED ffcall/trampoline/tramp-x86_64.o Index: ffcall/trampoline/tramp-x86_64.o ================================================================== --- ffcall/trampoline/tramp-x86_64.o +++ /dev/null cannot compute difference between binary files DELETED ffcall/trampoline/tramp-x86_64.s Index: ffcall/trampoline/tramp-x86_64.s ================================================================== --- ffcall/trampoline/tramp-x86_64.s +++ /dev/null @@ -1,22 +0,0 @@ -/* Trampoline for x86_64 CPU */ - -/* - * Copyright 2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -/* Available registers: %rax, %rdx, %rcx, %rsi, %rdi. */ - -.globl tramp - .type tramp,@function -tramp: - movabsq $0x7355471143622155, %rax - movabsq %rax, 0x1234567813578765 - movabsq $0xBABEBEC0DEA0FFAB, %rax - jmp *%rax -.Lfe1: - .size tramp,.Lfe1-tramp DELETED ffcall/trampoline/trampoline.3 Index: ffcall/trampoline/trampoline.3 ================================================================== --- ffcall/trampoline/trampoline.3 +++ /dev/null @@ -1,104 +0,0 @@ -.TH TRAMPOLINE 3 "25 October 1997" -.SH NAME -trampoline \- closures as first-class C functions -.SH SYNOPSIS -.B #include -.LP -.B function = alloc_trampoline(address, variable, data); -.LP -.B free_trampoline(function); -.LP -.nf -.B is_trampoline(function) -.B trampoline_address(function) -.B trampoline_variable(function) -.B trampoline_data(function) -.fi -.SH DESCRIPTION -.LP -These functions implement -.I closures -as first-class C functions. -A closure consists of a regular C function and a piece of data -which gets passed to the C function when the closure is called. - -Closures as -.I first-class C functions -means that they fit into a function -pointer and can be called exactly like any other C function. -.IB function " = alloc_trampoline(" address ", " variable ", " data ")" -allocates a closure. When -.I function -gets called, it stores -.I data -in the variable -.I variable -and calls the C function at -.IR address . -The function at -.I address -is responsible for fetching -.I data -out of -.I variable -immediately, before execution of any other function call. - -This is much like -.BR gcc "'s" -local functions, except that the GNU C local functions have dynamic extent -(i.e. are deallocated when the creating function returns), while -.I trampoline -provides functions with indefinite extent: -.I function -is only deallocated when -.BI free_trampoline( function ) -is called. - -.BI "is_trampoline(" function ")" -checks whether the C function -.I function -was produced by a call to -.IR alloc_trampoline . -If this returns true, the arguments given to -.I alloc_trampoline -can be retrieved: -.RS 4 -.LP -.BI "trampoline_address(" function ")" -returns -.IR address , -.LP -.BI "trampoline_variable(" function ")" -returns -.IR variable , -.LP -.BI "trampoline_data(" function ")" -returns -.IR data . -.RE - -.SH SEE ALSO -.BR gcc (1), -.BR varargs (3), -.BR callback (3) - -.SH BUGS -Passing the data through a global variable is not reentrant. Don't call -trampoline functions from within signal handlers. This is fixed in the -.BR callback (3) -package. - -.SH PORTING -The way -.B gcc -builds local functions is described in the gcc source, file -.RI gcc-2.6.3/config/ cpu / cpu .h. - -.SH AUTHOR - -Bruno Haible - -.SH ACKNOWLEDGEMENTS - -Many ideas were cribbed from the gcc source. - DELETED ffcall/trampoline/trampoline.c Index: ffcall/trampoline/trampoline.c ================================================================== --- ffcall/trampoline/trampoline.c +++ /dev/null @@ -1,1372 +0,0 @@ -/* Trampoline construction */ - -/* - * Copyright 1995-1999, 2001-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - - -#include "config.h" -#include "trampoline.h" - -#if defined(__hppa__) -#if 0 -#define __hppaold__ /* Old trampoline, real machine code. */ -#else -#define __hppanew__ /* New trampoline, just a closure. */ -#endif -#endif -#if defined(__rs6000__) -#if !defined(_AIX) -#define __rs6000sysv4__ /* SysV.4 ABI, real machine code. */ -#else -#define __rs6000aix__ /* AIX ABI, just a closure. */ -#endif -#endif -#if defined(__hppanew__) -/* - * A function pointer is a biased pointer to a data area whose first word - * contains the actual address of the function. - */ -extern void tramp (); /* trampoline prototype */ -/* We don't need to take any special measures to make the code executable - * since the actual instructions are in the text segment. - */ -#ifndef CODE_EXECUTABLE -#define CODE_EXECUTABLE -#endif -#endif -#if defined(__rs6000aix__) || defined(__ia64__) -/* - * A function pointer is a pointer to a data area whose first word contains - * the actual address of the function. - */ -extern void (*tramp) (); /* trampoline prototype */ -/* We don't need to take any special measures to make the code executable - * since the actual instructions are in the text segment. - */ -#ifndef CODE_EXECUTABLE -#define CODE_EXECUTABLE -#endif -#endif -#if defined(__m68k__) -#if defined(AMIGA) /* Amiga running AmigaOS, not Linux */ -#ifndef CODE_EXECUTABLE /* configure guesses wrong?? */ -#define CODE_EXECUTABLE -#endif -#endif -#endif - -/* As of Windows XP SP 2, malloc'd memory is not executable */ -#ifdef _WIN32 -#undef CODE_EXECUTABLE -#endif - -#ifndef CODE_EXECUTABLE -/* How do we make the trampoline's code executable? */ -#if defined(HAVE_MACH_VM) || defined(__convex__) || defined(HAVE_WORKING_MPROTECT) || defined(HAVE_SYS_M88KBCS_H) -/* mprotect() [or equivalent] the malloc'ed area. */ -#define EXECUTABLE_VIA_MPROTECT -#else -#ifdef HAVE_MMAP -/* Use an mmap'ed page. */ -#define EXECUTABLE_VIA_MMAP -#ifdef HAVE_MMAP_ANONYMOUS -/* Use mmap with the MAP_ANONYMOUS or MAP_ANON flag. */ -#define EXECUTABLE_VIA_MMAP_ANONYMOUS -#else -/* Use mmap on /dev/zero. */ -#define EXECUTABLE_VIA_MMAP_DEVZERO -#endif -#else -#ifdef HAVE_SHM -/* Use an shmat'ed page. */ -#define EXECUTABLE_VIA_SHM -#else -#ifdef _WIN32 -/* Use VirtualAlloc */ -#else -?? -#endif -#endif -#endif -#endif -#endif - -#include /* declares fprintf() */ - -#include -#include /* declares abort(), malloc(), free() */ -#ifdef HAVE_UNISTD_H -#include -#endif - -/* Declare getpagesize(). */ -#ifdef HAVE_GETPAGESIZE -#ifdef __cplusplus -extern "C" RETGETPAGESIZETYPE getpagesize (void); -#elif defined(__STDC__) -extern RETGETPAGESIZETYPE getpagesize (void); -#else -extern RETGETPAGESIZETYPE getpagesize (); -#endif -#else -#ifdef HAVE_SYS_PARAM_H -#include -#else -/* Not Unix, e.g. mingw32 */ -#define PAGESIZE 4096 -#endif -#define getpagesize() PAGESIZE -#endif - -/* Declare mprotect() or equivalent. */ -#ifdef EXECUTABLE_VIA_MPROTECT -#ifdef HAVE_MACH_VM -#include -#include -#ifdef NeXT -#include -#endif -#ifdef __osf__ -#include -#endif -#include -#else -#ifdef HAVE_SYS_M88KBCS_H -#include -#define getpagesize() 4096 /* ?? */ -#else -#include -#include -#endif -#endif -#endif - -/* Declare mmap(). */ -#ifdef EXECUTABLE_VIA_MMAP -#include -#include -#if !defined(PROT_EXEC) && defined(PROT_EXECUTE) /* Irix 4.0.5 needs this */ -#define PROT_EXEC PROT_EXECUTE -#endif -#endif - -/* Declare open(). */ -#ifdef EXECUTABLE_VIA_MMAP_DEVZERO -#include -#include -#include -#ifdef OPEN_NEEDS_SYS_FILE_H -#include -#endif -#endif - -/* Declare shmget(), shmat(), shmctl(). */ -#ifdef EXECUTABLE_VIA_SHM -#include -#include -#include -#ifdef HAVE_SYS_SYSMACROS_H -#include -#endif -#endif - -/* Support for instruction cache flush. */ -#ifdef __i386__ -#if defined(_WIN32) /* WindowsNT or Windows95 */ -#define WIN32_LEAN_AND_MEAN -#define WIN32_EXTRA_LEAN -#include -#endif -#endif -#ifdef __m68k__ -#if defined(AMIGA) /* Amiga running AmigaOS, not Linux */ -#include -#include -#include -#endif -#ifdef hpux -#include -#endif -#endif -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) -#ifdef ultrix -#include -#else -#ifdef linux -#include -#else -#ifdef HAVE_SYS_CACHECTL_H -#include -#endif -#endif -#endif -#endif -#ifdef __m88k__ -#include -#endif -/* Inline assembly function for instruction cache flush. */ -#if defined(__sparc__) || defined(__sparc64__) || defined(__alpha__) || defined(__hppaold__) || defined(__rs6000sysv4__) || defined(__convex__) -#ifdef __GNUC__ -extern inline -#if defined(__sparc__) || defined(__sparc64__) -#include "cache-sparc.c" -#endif -#ifdef __alpha__ -#include "cache-alpha.c" -#endif -#ifdef __hppa__ -#include "cache-hppa.c" -#endif -#ifdef __rs6000__ -#include "cache-rs6000.c" -#endif -#ifdef __convex__ -#include "cache-convex.c" -#endif -#else -#if defined(__sparc__) || defined(__sparc64__) -extern void __TR_clear_cache_4(); -#else -extern void __TR_clear_cache(); -#endif -#endif -#endif - -/* Length and alignment of trampoline */ -#ifdef __i386__ -#define TRAMP_LENGTH 15 -#define TRAMP_ALIGN 16 /* 4 for a i386, 16 for a i486 */ -#endif -#ifdef __m68k__ -#define TRAMP_LENGTH 18 -#define TRAMP_ALIGN 16 -#endif -#if defined(__mips__) && !defined(__mipsn32__) -#define TRAMP_LENGTH 32 -#define TRAMP_ALIGN 4 -#endif -#ifdef __mipsn32__ -#define TRAMP_LENGTH 36 -#define TRAMP_ALIGN 4 -#endif -#ifdef __mips64old__ -#define TRAMP_LENGTH 84 -#define TRAMP_ALIGN 4 -#endif -#ifdef __mips64__ -#define TRAMP_LENGTH 48 -#define TRAMP_ALIGN 8 -#endif -#if defined(__sparc__) && !defined(__sparc64__) -#define TRAMP_LENGTH 28 -#define TRAMP_ALIGN 16 -#endif -#ifdef __sparc64__ -#define TRAMP_LENGTH 48 -#define TRAMP_ALIGN 16 -#endif -#ifdef __alpha__ -#define TRAMP_LENGTH 48 -#define TRAMP_ALIGN 8 -#endif -#ifdef __hppaold__ -#define TRAMP_LENGTH 56 -#define TRAMP_ALIGN 16 -#endif -#ifdef __hppanew__ -#define TRAMP_LENGTH 20 -#define TRAMP_ALIGN 16 -#define TRAMP_BIAS 2 -#endif -#ifdef __arm__ -#define TRAMP_LENGTH 44 -#define TRAMP_ALIGN 4 -#endif -#ifdef __rs6000sysv4__ -#define TRAMP_LENGTH 36 -#define TRAMP_ALIGN 4 -#endif -#ifdef __rs6000aix__ -#define TRAMP_LENGTH 24 -#define TRAMP_ALIGN 4 -#endif -#ifdef __m88k__ -#define TRAMP_LENGTH 32 -#define TRAMP_ALIGN 8 -#endif -#ifdef __convex__ -#define TRAMP_LENGTH 20 -#define TRAMP_ALIGN 4 -#endif -#ifdef __ia64__ -#define TRAMP_LENGTH 40 -#define TRAMP_ALIGN 16 -#endif -#ifdef __x86_64__ -#define TRAMP_LENGTH 32 -#define TRAMP_ALIGN 16 -#endif -#ifdef __s390__ -#define TRAMP_LENGTH 36 -#define TRAMP_ALIGN 2 -#endif - -#ifndef TRAMP_BIAS -#define TRAMP_BIAS 0 -#endif - -#if !defined(CODE_EXECUTABLE) && !defined(EXECUTABLE_VIA_MPROTECT) -/* AIX doesn't support mprotect() in malloc'ed memory. Must get pages of - * memory with execute permission via mmap(). Then keep a free list of - * free trampolines. - */ -static char* freelist = NULL; -#endif - -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -__TR_function alloc_trampoline (__TR_function address, void* variable, void* data) -#else -__TR_function alloc_trampoline (address, variable, data) - __TR_function address; - void* variable; - void* data; -#endif -{ - char* function; - -#if !defined(CODE_EXECUTABLE) - static long pagesize = 0; -#if defined(EXECUTABLE_VIA_MMAP_DEVZERO) - static int zero_fd; -#endif - /* First, get the page size once and for all. */ - if (!pagesize) - { -#if defined(HAVE_MACH_VM) - pagesize = vm_page_size; -#else - pagesize = getpagesize(); -#endif -#if defined(EXECUTABLE_VIA_MMAP_DEVZERO) - zero_fd = open("/dev/zero",O_RDONLY,0644); - if (zero_fd < 0) - { fprintf(stderr,"trampoline: Cannot open /dev/zero!\n"); abort(); } -#endif - } -#endif - - /* 1. Allocate room */ - -#if !defined(CODE_EXECUTABLE) && !defined(EXECUTABLE_VIA_MPROTECT) - if (freelist == NULL) - { /* Get a new page. */ - char* page; -#ifdef EXECUTABLE_VIA_MMAP_ANONYMOUS - page = mmap(0, pagesize, PROT_READ | PROT_WRITE | PROT_EXEC, MAP_ANONYMOUS | MAP_VARIABLE, -1, 0); -#endif -#ifdef EXECUTABLE_VIA_MMAP_DEVZERO - page = mmap(0, pagesize, PROT_READ | PROT_WRITE | PROT_EXEC, MAP_PRIVATE, zero_fd, 0); -#endif -#ifdef EXECUTABLE_VIA_SHM - int shmid = shmget(IPC_PRIVATE, pagesize, 0700|IPC_CREAT); - if (shmid<0) - { page = (char*)(-1); } - else - { page = shmat(shmid, 0, 0); shmctl(shmid, IPC_RMID, 0); } -#endif -#ifdef _WIN32 - page = VirtualAlloc(NULL, pagesize, MEM_COMMIT, PAGE_EXECUTE_READWRITE); - if (page == 0) - { page = (char*)(-1); } -#endif - if (page == (char*)(-1)) - { fprintf(stderr,"trampoline: Out of virtual memory!\n"); abort(); } - /* Fill it with free trampolines. */ - { char** last = &freelist; - char* page_end = page + pagesize; - while (page+TRAMP_LENGTH <= page_end) - { *last = page; last = (char**)page; page += TRAMP_LENGTH; } - *last = NULL; - } } - function = freelist; freelist = *(char**)freelist; -#else - { char* room = (char*) malloc(sizeof(void*) + TRAMP_LENGTH + TRAMP_ALIGN-1); - if (!room) - { fprintf(stderr,"trampoline: Out of virtual memory!\n"); abort(); } - function = (char*)(((long)room + sizeof(void*) + TRAMP_ALIGN-1) & -TRAMP_ALIGN); - ((char**)function)[-1] = room; /* backpointer for free_trampoline() */ - } -#endif - - /* 2. Fill out the trampoline */ -#ifdef __i386__ - /* function: - * movl $, C7 05 - * jmp
E9
- - * here: - */ - *(short *) (function + 0) = 0x05C7; - *(long *) (function + 2) = (long) variable; - *(long *) (function + 6) = (long) data; - *(char *) (function +10) = 0xE9; - *(long *) (function +11) = (long) address - (long) (function + 15); -#define is_tramp(function) \ - *(unsigned short *) (function + 0) == 0x05C7 && \ - *(unsigned char *) (function +10) == 0xE9 -#define tramp_address(function) \ - *(long *) (function +11) + (long) (function + 15) -#define tramp_variable(function) \ - *(long *) (function + 2) -#define tramp_data(function) \ - *(long *) (function + 6) -#endif -#ifdef __m68k__ - /* function: - * movel #, 23 FC - * jmp
4E F9
- * nop 4E 71 - */ - *(short *) (function + 0) = 0x23FC; - *(long *) (function + 2) = (long) data; - *(long *) (function + 6) = (long) variable; - *(short *) (function +10) = 0x4EF9; - *(long *) (function +12) = (long) address; - *(short *) (function +16) = 0x4E71; -#define is_tramp(function) \ - *(unsigned short *) (function + 0) == 0x23FC && \ - *(unsigned short *) (function +10) == 0x4EF9 && \ - *(unsigned short *) (function +16) == 0x4E71 -#define tramp_address(function) \ - *(long *) (function +12) -#define tramp_variable(function) \ - *(long *) (function + 6) -#define tramp_data(function) \ - *(long *) (function + 2) -#endif -#if defined(__mips__) && !defined(__mipsn32__) - /* function: - * li $2,&0xffff0000 3C 02 hi16() - * ori $2,$2,&0xffff 34 42 lo16() - * sw $2, 3C 01 hi16() - * AC 22 lo16() - * li $25,
&0xffff0000 3C 19 hi16(
) - * ori $25,$25,
&0xffff 37 39 lo16(
) - * j $25 03 20 00 08 - * nop 00 00 00 00 - */ - /* What about big endian / little endian ?? */ - *(short *) (function + 0) = 0x3C02; - *(short *) (function + 2) = (unsigned long) data >> 16; - *(short *) (function + 4) = 0x3442; - *(short *) (function + 6) = (unsigned long) data & 0xffff; - *(short *) (function + 8) = 0x3C01; - *(short *) (function +10) = (unsigned long) variable >> 16; - *(short *) (function +12) = 0xAC22; - *(short *) (function +14) = (unsigned long) variable & 0xffff; - *(short *) (function +16) = 0x3C19; - *(short *) (function +18) = (unsigned long) address >> 16; - *(short *) (function +20) = 0x3739; - *(short *) (function +22) = (unsigned long) address & 0xffff; - *(long *) (function +24) = 0x03200008; - *(long *) (function +28) = 0x00000000; -#define is_tramp(function) \ - *(unsigned short *) (function + 0) == 0x3C02 && \ - *(unsigned short *) (function + 4) == 0x3442 && \ - *(unsigned short *) (function + 8) == 0x3C01 && \ - *(unsigned short *) (function +12) == 0xAC22 && \ - *(unsigned short *) (function +16) == 0x3C19 && \ - *(unsigned short *) (function +20) == 0x3739 && \ - *(unsigned long *) (function +24) == 0x03200008 && \ - *(unsigned long *) (function +28) == 0x00000000 -#define hilo(hiword,loword) \ - (((unsigned long) (hiword) << 16) | (unsigned long) (loword)) -#define tramp_address(function) \ - hilo(*(unsigned short *) (function +18), *(unsigned short *) (function +22)) -#define tramp_variable(function) \ - hilo(*(unsigned short *) (function +10), *(unsigned short *) (function +14)) -#define tramp_data(function) \ - hilo(*(unsigned short *) (function + 2), *(unsigned short *) (function + 6)) -#endif -#ifdef __mipsn32__ - /* function: - * lw $2,24($25) 8F 22 00 18 - * lw $3,28($25) 8F 23 00 1C - * sw $3,0($2) AC 43 00 00 - * lw $25,32($25) 8F 39 00 20 - * j $25 03 20 00 08 - * nop 00 00 00 00 - * .word - * .word - * .word
- */ - /* What about big endian / little endian ?? */ - *(unsigned int *) (function + 0) = 0x8F220018; - *(unsigned int *) (function + 4) = 0x8F23001C; - *(unsigned int *) (function + 8) = 0xAC430000; - *(unsigned int *) (function +12) = 0x8F390020; - *(unsigned int *) (function +16) = 0x03200008; - *(unsigned int *) (function +20) = 0x00000000; - *(unsigned int *) (function +24) = (unsigned int) variable; - *(unsigned int *) (function +28) = (unsigned int) data; - *(unsigned int *) (function +32) = (unsigned int) address; -#define is_tramp(function) \ - *(int *) (function + 0) == 0x8F220018 && \ - *(int *) (function + 4) == 0x8F23001C && \ - *(int *) (function + 8) == 0xAC430000 && \ - *(int *) (function +12) == 0x8F390020 && \ - *(int *) (function +16) == 0x03200008 && \ - *(int *) (function +20) == 0x00000000 -#define tramp_address(function) \ - *(unsigned int *) (function +32) -#define tramp_variable(function) \ - *(unsigned int *) (function +24) -#define tramp_data(function) \ - *(unsigned int *) (function +28) -#endif -#ifdef __mips64old__ - /* function: - * dli $2, 3C 02 hi16(hi32()) - * 34 42 lo16(hi32()) - * 00 02 14 38 - * 34 42 hi16(lo32()) - * 00 02 14 38 - * 34 42 lo16(lo32()) - * dli $3, 3C 03 hi16(hi32()) - * 34 63 lo16(hi32()) - * 00 03 1C 38 - * 34 63 hi16(lo32()) - * 00 03 1C 38 - * 34 63 lo16(lo32()) - * sd $3,0($2) FC 43 00 00 - * dli $25,
3C 19 hi16(hi32(
)) - * 37 39 lo16(hi32(
)) - * 00 19 CC 38 - * 37 39 hi16(lo32(
)) - * 00 19 CC 38 - * 37 39 lo16(lo32(
)) - * j $25 03 20 00 08 - * nop 00 00 00 00 - */ - /* What about big endian / little endian ?? */ - *(short *) (function + 0) = 0x3C02; - *(short *) (function + 2) = (unsigned long) variable >> 48; - *(short *) (function + 4) = 0x3442; - *(short *) (function + 6) = ((unsigned long) variable >> 32) & 0xffff; - *(int *) (function + 8) = 0x00021438; - *(short *) (function +12) = 0x3442; - *(short *) (function +14) = ((unsigned long) variable >> 16) & 0xffff; - *(int *) (function +16) = 0x00021438; - *(short *) (function +20) = 0x3442; - *(short *) (function +22) = (unsigned long) variable & 0xffff; - *(short *) (function +24) = 0x3C03; - *(short *) (function +26) = (unsigned long) data >> 48; - *(short *) (function +28) = 0x3463; - *(short *) (function +30) = ((unsigned long) data >> 32) & 0xffff; - *(int *) (function +32) = 0x00031C38; - *(short *) (function +36) = 0x3463; - *(short *) (function +38) = ((unsigned long) data >> 16) & 0xffff; - *(int *) (function +40) = 0x00031C38; - *(short *) (function +44) = 0x3463; - *(short *) (function +46) = (unsigned long) data & 0xffff; - *(int *) (function +48) = 0xFC430000; - *(short *) (function +52) = 0x3C19; - *(short *) (function +54) = (unsigned long) address >> 48; - *(short *) (function +56) = 0x3739; - *(short *) (function +58) = ((unsigned long) address >> 32) & 0xffff; - *(int *) (function +60) = 0x0019CC38; - *(short *) (function +64) = 0x3739; - *(short *) (function +66) = ((unsigned long) address >> 16) & 0xffff; - *(int *) (function +68) = 0x0019CC38; - *(short *) (function +72) = 0x3739; - *(short *) (function +74) = (unsigned long) address & 0xffff; - *(int *) (function +76) = 0x03200008; - *(int *) (function +80) = 0x00000000; -#define is_tramp(function) \ - *(unsigned short *) (function + 0) == 0x3C02 && \ - *(unsigned short *) (function + 4) == 0x3442 && \ - *(unsigned int *) (function + 8) == 0x00021438 && \ - *(unsigned short *) (function +12) == 0x3442 && \ - *(unsigned int *) (function +16) == 0x00021438 && \ - *(unsigned short *) (function +20) == 0x3442 && \ - *(unsigned short *) (function +24) == 0x3C03 && \ - *(unsigned short *) (function +28) == 0x3463 && \ - *(unsigned int *) (function +32) == 0x00031C38 && \ - *(unsigned short *) (function +36) == 0x3463 && \ - *(unsigned int *) (function +40) == 0x00031C38 && \ - *(unsigned short *) (function +44) == 0x3463 && \ - *(unsigned int *) (function +48) == 0xFC430000 && \ - *(unsigned short *) (function +52) == 0x3C19 && \ - *(unsigned short *) (function +56) == 0x3739 && \ - *(unsigned int *) (function +60) == 0x0019CC38 && \ - *(unsigned short *) (function +64) == 0x3739 && \ - *(unsigned int *) (function +68) == 0x0019CC38 && \ - *(unsigned short *) (function +72) == 0x3739 && \ - *(unsigned int *) (function +76) == 0x03200008 && \ - *(unsigned int *) (function +80) == 0x00000000 -#define hilo(word3,word2,word1,word0) \ - (((unsigned long) (word3) << 48) | ((unsigned long) (word2) << 32) | \ - ((unsigned long) (word1) << 16) | (unsigned long) (word0)) -#define tramp_address(function) \ - hilo(*(unsigned short *) (function +54), \ - *(unsigned short *) (function +58), \ - *(unsigned short *) (function +66), \ - *(unsigned short *) (function +74)) -#define tramp_variable(function) \ - hilo(*(unsigned short *) (function + 2), \ - *(unsigned short *) (function + 6), \ - *(unsigned short *) (function +14), \ - *(unsigned short *) (function +22)) -#define tramp_data(function) \ - hilo(*(unsigned short *) (function +26), \ - *(unsigned short *) (function +30), \ - *(unsigned short *) (function +38), \ - *(unsigned short *) (function +46)) -#endif -#ifdef __mips64__ - /* function: - * ld $2,24($25) DF 22 00 18 - * ld $3,32($25) DF 23 00 20 - * sd $3,0($2) FC 43 00 00 - * ld $25,40($25) DF 39 00 28 - * j $25 03 20 00 08 - * nop 00 00 00 00 - * .dword - * .dword - * .dword
- */ - /* What about big endian / little endian ?? */ - *(long *) (function + 0) = 0xDF220018DF230020L; - *(long *) (function + 8) = 0xFC430000DF390028L; - *(long *) (function +16) = 0x0320000800000000L; - *(unsigned long *) (function +24) = (unsigned long) variable; - *(unsigned long *) (function +32) = (unsigned long) data; - *(unsigned long *) (function +40) = (unsigned long) address; -#define is_tramp(function) \ - *(long *) (function + 0) == 0xDF220018DF230020L && \ - *(long *) (function + 8) == 0xFC430000DF390028L && \ - *(long *) (function +16) == 0x0320000800000000L -#define tramp_address(function) \ - *(unsigned long *) (function +40) -#define tramp_variable(function) \ - *(unsigned long *) (function +24) -#define tramp_data(function) \ - *(unsigned long *) (function +32) -#endif -#if defined(__sparc__) && !defined(__sparc64__) - /* function: - * sethi %hi(),%g1 03000000 | ( >> 10) - * sethi %hi(),%g2 05000000 | ( >> 10) - * or %g2,%lo(),%g2 8410A000 | ( & 0x3ff) - * st %g2,[%g1+%lo()] C4206000 | ( & 0x3ff) - * sethi %hi(
),%g1 03000000 | (
>> 10) - * jmp %g1+%lo(
) 81C06000 | (
& 0x3ff) - * nop 01000000 - */ -#define hi(word) ((unsigned long) (word) >> 10) -#define lo(word) ((unsigned long) (word) & 0x3ff) - *(long *) (function + 0) = 0x03000000 | hi(variable); - *(long *) (function + 4) = 0x05000000 | hi(data); - *(long *) (function + 8) = 0x8410A000 | lo(data); - *(long *) (function +12) = 0xC4206000 | lo(variable); - *(long *) (function +16) = 0x03000000 | hi(address); - *(long *) (function +20) = 0x81C06000 | lo(address); - *(long *) (function +24) = 0x01000000; -#define is_tramp(function) \ - (*(long *) (function + 0) & 0xffc00000) == 0x03000000 && \ - (*(long *) (function + 4) & 0xffc00000) == 0x05000000 && \ - (*(long *) (function + 8) & 0xfffffc00) == 0x8410A000 && \ - (*(long *) (function +12) & 0xfffffc00) == 0xC4206000 && \ - (*(long *) (function +16) & 0xffc00000) == 0x03000000 && \ - (*(long *) (function +20) & 0xfffffc00) == 0x81C06000 && \ - *(long *) (function +24) == 0x01000000 -#define hilo(hiword,loword) (((hiword) << 10) | ((loword) & 0x3ff)) -#define tramp_address(function) \ - hilo(*(long *) (function +16), *(long *) (function +20)) -#define tramp_variable(function) \ - hilo(*(long *) (function + 0), *(long *) (function +12)) -#define tramp_data(function) \ - hilo(*(long *) (function + 4), *(long *) (function + 8)) -#endif -#ifdef __sparc64__ - /* function: - * rd %pc,%g1 83414000 - * ldx [%g1+24],%g2 C4586018 - * ldx [%g1+32],%g3 C6586020 - * ldx [%g1+40],%g1 C2586028 - * jmp %g1 81C04000 - * stx %g3,[%g2] C6708000 - * .long high32() >> 32 - * .long low32() & 0xffffffff - * .long high32() >> 32 - * .long low32() & 0xffffffff - * .long high32(
)
>> 32 - * .long low32(
)
& 0xffffffff - */ - *(int *) (function + 0) = 0x83414000; - *(int *) (function + 4) = 0xC4586018; - *(int *) (function + 8) = 0xC6586020; - *(int *) (function +12) = 0xC2586028; - *(int *) (function +16) = 0x81C04000; - *(int *) (function +20) = 0xC6708000; - *(long *) (function +24) = (long) variable; - *(long *) (function +32) = (long) data; - *(long *) (function +40) = (long) address; -#define is_tramp(function) \ - *(int *) (function + 0) == 0x83414000 && \ - *(int *) (function + 4) == 0xC4586018 && \ - *(int *) (function + 8) == 0xC6586020 && \ - *(int *) (function +12) == 0xC2586028 && \ - *(int *) (function +16) == 0x81C04000 && \ - *(int *) (function +20) == 0xC6708000 -#define tramp_address(function) \ - *(long *) (function +40) -#define tramp_variable(function) \ - *(long *) (function +24) -#define tramp_data(function) \ - *(long *) (function +32) -#endif -#ifdef __alpha__ - /* function: - * br $1,function..ng 00 00 20 C0 - * function..ng: - * ldq $2,20($1) 14 00 41 A4 - * ldq $3,28($1) 1C 00 61 A4 - * ldq $27,36($1) 24 00 61 A7 - * stq $2,0($3) 00 00 43 B4 - * jmp $31,($27),0 00 00 FB 6B - * .quad - * .quad - * .quad
- */ - { static int code [6] = - { 0xC0200000, 0xA4410014, 0xA461001C, 0xA7610024, 0xB4430000, 0x6BFB0000 }; - int i; - for (i=0; i<6; i++) { ((int *) function)[i] = code[i]; } - ((long *) function)[3] = (long) data; - ((long *) function)[4] = (long) variable; - ((long *) function)[5] = (long) address; - } -#define is_tramp(function) \ - ((int *) function)[0] == 0xC0200000 && \ - ((int *) function)[1] == 0xA4410014 && \ - ((int *) function)[2] == 0xA461001C && \ - ((int *) function)[3] == 0xA7610024 && \ - ((int *) function)[4] == 0xB4430000 && \ - ((int *) function)[5] == 0x6BFB0000 -#define tramp_address(function) \ - ((long *) function)[5] -#define tramp_variable(function) \ - ((long *) function)[4] -#define tramp_data(function) \ - ((long *) function)[3] -#endif -#ifdef __hppaold__ - /* function: - * ldil L',%r20 22800000 | hi() - * ldil L',%r19 22600000 | hi() - * ldo R'(%r20),%r20 36940000 | lo() - * stw %r20,R'(%r19) 6A740000 | lo() - * ldil L'
,%r21 22A00000 | hi(
) - * ldo R'
(%r21),%r21 36B50000 | lo(
) - * bb,>=,n %r21,30,function2 C7D5C012 - * depi 0,31,2,%r21 D6A01C1E - * ldw 4(0,%r21),%r19 4AB30008 - * ldw 0(0,%r21),%r21 4AB50000 - * function2: - * ldsid (0,%r21),%r1 02A010A1 - * mtsp %r1,%sr0 00011820 - * be,n 0(%sr0,%r21) E2A00002 - * nop 08000240 - */ - /* When decoding a 21-bit argument in an instruction, the hppa performs - * the following bit manipulation: - * assemble21: x[20]...x[0] - * --> x[0] x[11]...x[1] x[15]..x[14] x[20]...x[16] x[13]..x[12] - * When encoding a 21-bit argument into an instruction, we need the - * to perform the reverse permutation: - * permute21: y[20]...y[0] - * --> y[6]...y[2] y[8]..y[7] y[1]..y[0] y[19]...y[9] y[20] - */ -#define assemble21(x) \ - ((((x) & 0x1) << 20) | (((x) & 0xFFE) << 8) | \ - (((x) & 0xC000) >> 7) | (((x) & 0x1F0000) >> 14) | (((x) & 0x3000) >> 12)) -#define permute21(y) \ - ((((y) & 0x7C) << 14) | (((y) & 0x180) << 7) | (((y) & 0x3) << 12) | \ - (((y) & 0xFFE00) >> 8) | (((y) & 0x100000) >> 20)) -#define hi(word) permute21((unsigned long) (word) >> 11) -#define lo(word) (((unsigned long) (word) & 0x7FF) << 1) - *(long *) (function + 0) = 0x22800000 | hi(data); - *(long *) (function + 4) = 0x22600000 | hi(variable); - *(long *) (function + 8) = 0x36940000 | lo(data); - *(long *) (function +12) = 0x6A740000 | lo(variable); - *(long *) (function +16) = 0x22A00000 | hi(address); - *(long *) (function +20) = 0x36B50000 | lo(address); - *(long *) (function +24) = 0xC7D5C012; - *(long *) (function +28) = 0xD6A01C1E; - *(long *) (function +32) = 0x4AB30008; - *(long *) (function +36) = 0x4AB50000; - *(long *) (function +40) = 0x02A010A1; - *(long *) (function +44) = 0x00011820; - *(long *) (function +48) = 0xE2A00002; - *(long *) (function +52) = 0x08000240; -#define is_tramp(function) \ - ((long) function & 3) == 0 && \ - (*(long *) (function + 0) & 0xffe00000) == 0x22800000 && \ - (*(long *) (function + 4) & 0xffe00000) == 0x22600000 && \ - (*(long *) (function + 8) & 0xfffff000) == 0x36940000 && \ - (*(long *) (function +12) & 0xfffff000) == 0x6A740000 && \ - (*(long *) (function +16) & 0xffe00000) == 0x22A00000 && \ - (*(long *) (function +20) & 0xfffff000) == 0x36B50000 && \ - *(long *) (function +24) == 0xC7D5C012 && \ - *(long *) (function +28) == 0xD6A01C1E && \ - *(long *) (function +32) == 0x4AB30008 && \ - *(long *) (function +36) == 0x4AB50000 && \ - *(long *) (function +40) == 0x02A010A1 && \ - *(long *) (function +44) == 0x00011820 && \ - *(long *) (function +48) == 0xE2A00002 && \ - *(long *) (function +52) == 0x08000240 -#define hilo(hiword,loword) \ - ((assemble21((unsigned long) (hiword)) << 11) | \ - (((unsigned long) (loword) & 0xFFE) >> 1) \ - ) -#define tramp_address(function) \ - hilo(*(long *) (function +16), *(long *) (function +20)) -#define tramp_variable(function) \ - hilo(*(long *) (function + 4), *(long *) (function +12)) -#define tramp_data(function) \ - hilo(*(long *) (function + 0), *(long *) (function + 8)) -#endif -#ifdef __hppanew__ - /* function: - * .long tramp - * .long closure - * closure: - * .long - * .long - * .long
- */ - { /* work around a bug in gcc 3.* */ - void* tramp_address = &tramp; - *(long *) (function + 0) = ((long *) ((char*)tramp_address-2))[0]; - *(long *) (function + 4) = (long) (function + 8); - *(long *) (function + 8) = (long) variable; - *(long *) (function +12) = (long) data; - *(long *) (function +16) = (long) address; - } -#define is_tramp(function) \ - ((long *) function)[0] == ((long *) ((char*)tramp_address-2))[0] -#define tramp_address(function) \ - ((long *) function)[4] -#define tramp_variable(function) \ - ((long *) function)[2] -#define tramp_data(function) \ - ((long *) function)[3] -#endif -#ifdef __arm__ - /* function: - * stmfd sp!,{r0} E92D0001 - * ldr r0,[pc,#_data-.-8] E59F0014 - * ldr ip,[r0,#0] E590C000 - * ldr r0,[pc,#_variable-.-8] E59F0010 - * str ip,[r0,#0] E580C000 - * ldmfd sp!,{r0}^ E8FD0001 - * ldr ip,[pc,#_function-.-8] E59FC008 - * ldr pc,[ip,#0] E59CF000 - * _data: - * .word - * _variable: - * .word - * _function: - * .word
- */ - { static long code [8] = - { 0xE92D0001, 0xE59F0014, 0xE590C000, 0xE59F0010, - 0xE580C000, 0xE8FD0001, 0xE59FC008, 0xE59CF000 - }; - int i; - for (i=0; i<8; i++) { ((long *) function)[i] = code[i]; } - ((long *) function)[8] = (long) data; - ((long *) function)[9] = (long) variable; - ((long *) function)[10] = (long) address; - } -#define is_tramp(function) \ - ((long *) function)[0] == 0xE92D0001 && \ - ((long *) function)[1] == 0xE59F0014 && \ - ((long *) function)[2] == 0xE590C000 && \ - ((long *) function)[3] == 0xE59F0010 && \ - ((long *) function)[4] == 0xE580C000 && \ - ((long *) function)[5] == 0xE8FD0001 && \ - ((long *) function)[6] == 0xE59FC008 && \ - ((long *) function)[7] == 0xE59CF000 -#define tramp_address(function) \ - ((long *) function)[10] -#define tramp_variable(function) \ - ((long *) function)[9] -#define tramp_data(function) \ - ((long *) function)[8] -#endif -#ifdef __rs6000sysv4__ - /* function: - * {liu|lis} 11,hi16() 3D 60 hi16() - * {oril|ori} 11,11,lo16() 61 6B lo16() - * {liu|lis} 12,hi16() 3D 80 hi16() - * {oril|ori} 12,12,lo16() 61 8C lo16() - * {st|stw} 12,0(11) 91 8B 00 00 - * {liu|lis} 0,hi16(
) 3C 00 hi16(
) - * {oril|ori} 0,0,lo16(
) 60 00 lo16(
) - * mtctr 0 7C 09 03 A6 - * bctr 4E 80 04 20 - */ - *(short *) (function + 0) = 0x3D60; - *(short *) (function + 2) = (unsigned long) variable >> 16; - *(short *) (function + 4) = 0x616B; - *(short *) (function + 6) = (unsigned long) variable & 0xffff; - *(short *) (function + 8) = 0x3D80; - *(short *) (function +10) = (unsigned long) data >> 16; - *(short *) (function +12) = 0x618C; - *(short *) (function +14) = (unsigned long) data & 0xffff; - *(long *) (function +16) = 0x918B0000; - *(short *) (function +20) = 0x3C00; - *(short *) (function +22) = (unsigned long) address >> 16; - *(short *) (function +24) = 0x6000; - *(short *) (function +26) = (unsigned long) address & 0xffff; - *(long *) (function +28) = 0x7C0903A6; - *(long *) (function +32) = 0x4E800420; -#define is_tramp(function) \ - *(unsigned short *) (function + 0) == 0x3D60 && \ - *(unsigned short *) (function + 4) == 0x616B && \ - *(unsigned short *) (function + 8) == 0x3D80 && \ - *(unsigned short *) (function +12) == 0x618C && \ - *(unsigned long *) (function +16) == 0x918B0000 && \ - *(unsigned short *) (function +20) == 0x3C00 && \ - *(unsigned short *) (function +24) == 0x6000 && \ - *(unsigned long *) (function +28) == 0x7C0903A6 && \ - *(unsigned long *) (function +32) == 0x4E800420 -#define hilo(hiword,loword) \ - (((unsigned long) (hiword) << 16) | (unsigned long) (loword)) -#define tramp_address(function) \ - hilo(*(unsigned short *) (function +22), *(unsigned short *) (function +26)) -#define tramp_variable(function) \ - hilo(*(unsigned short *) (function + 2), *(unsigned short *) (function + 6)) -#define tramp_data(function) \ - hilo(*(unsigned short *) (function +10), *(unsigned short *) (function +14)) -#endif -#ifdef __rs6000aix__ - /* function: - * .long .tramp - * .long .mytoc - * .long 0 - * .mytoc: - * .long - * .long - * .long
- */ - *(long *) (function + 0) = ((long *) &tramp)[0]; - *(long *) (function + 4) = (long) (function + 12); - *(long *) (function + 8) = 0; - *(long *) (function +12) = (long) variable; - *(long *) (function +16) = (long) data; - *(long *) (function +20) = (long) address; -#define is_tramp(function) \ - ((long *) function)[0] == ((long *) &tramp)[0] -#define tramp_address(function) \ - ((long *) function)[5] -#define tramp_variable(function) \ - ((long *) function)[3] -#define tramp_data(function) \ - ((long *) function)[4] -#endif -#ifdef __m88k__ - /* function: - * or.u #r13,#r0,hi16() 5D A0 hi16() - * or #r13,#r13,lo16() 59 AD lo16() - * or.u #r10,#r0,hi16() 5D 40 hi16() - * or #r10,#r10,lo16() 59 4A lo16() - * st #r10,#r0,#r13 F5 40 24 0D - * or.u #r13,#r0,hi16(
) 5D A0 hi16(
) - * or #r13,#r13,lo16(
) 59 AD lo16(
) - * jmp #r13 F4 00 C0 0D - */ - *(short *) (function + 0) = 0x5DA0; - *(short *) (function + 2) = (unsigned long) variable >> 16; - *(short *) (function + 4) = 0x59AD; - *(short *) (function + 6) = (unsigned long) variable & 0xffff; - *(short *) (function + 8) = 0x5D40; - *(short *) (function +10) = (unsigned long) data >> 16; - *(short *) (function +12) = 0x594A; - *(short *) (function +14) = (unsigned long) data & 0xffff; - *(long *) (function +16) = 0xF540240D; - *(short *) (function +20) = 0x5DA0; - *(short *) (function +22) = (unsigned long) address >> 16; - *(short *) (function +24) = 0x59AD; - *(short *) (function +26) = (unsigned long) address & 0xffff; - *(long *) (function +28) = 0xF400C00D; -#define is_tramp(function) \ - *(unsigned short *) (function + 0) == 0x5DA0 && \ - *(unsigned short *) (function + 4) == 0x59AD && \ - *(unsigned short *) (function + 8) == 0x5D40 && \ - *(unsigned short *) (function +12) == 0x594A && \ - *(unsigned long *) (function +16) == 0xF540240D && \ - *(unsigned short *) (function +20) == 0x5DA0 && \ - *(unsigned short *) (function +24) == 0x59AD && \ - *(unsigned long *) (function +28) == 0xF400C00D -#define hilo(hiword,loword) \ - (((unsigned long) (hiword) << 16) | (unsigned long) (loword)) -#define tramp_address(function) \ - hilo(*(unsigned short *) (function +22), *(unsigned short *) (function +26)) -#define tramp_variable(function) \ - hilo(*(unsigned short *) (function + 2), *(unsigned short *) (function + 6)) -#define tramp_data(function) \ - hilo(*(unsigned short *) (function +10), *(unsigned short *) (function +14)) -#endif -#ifdef __convex__ - /* function: - * ld.w #,s1 11C9 - * st.w s1, 3641 - * jmp
0140
- * ds.h 0 0000 - */ - *(short *) (function + 0) = 0x11C9; - *(long *) (function + 2) = (unsigned long) data; - *(short *) (function + 6) = 0x3641; - *(long *) (function + 8) = (unsigned long) variable; - *(short *) (function +12) = 0x0140; - *(long *) (function +14) = (unsigned long) address; - *(short *) (function +18) = 0x0000; -#define is_tramp(function) \ - *(unsigned short *) (function + 0) == 0x11C9 && \ - *(unsigned short *) (function + 6) == 0x3641 && \ - *(unsigned short *) (function +12) == 0x0140 && \ - *(unsigned short *) (function +18) == 0x0000 -#define tramp_address(function) \ - *(long *) (function +14) -#define tramp_variable(function) \ - *(long *) (function + 8) -#define tramp_data(function) \ - *(long *) (function + 2) -#endif -#ifdef __ia64__ - /* function: - * data8 tramp - * data8 closure - * closure: - * data8
- * data8 - * data8 - */ - *(long *) (function + 0) = (long) &tramp; - *(long *) (function + 8) = (long) (function + 16); - *(long *) (function +16) = (long) address; - *(long *) (function +24) = (long) variable; - *(long *) (function +32) = (long) data; -#define is_tramp(function) \ - ((long *) function)[0] == (long) &tramp -#define tramp_address(function) \ - ((long *) function)[2] -#define tramp_variable(function) \ - ((long *) function)[3] -#define tramp_data(function) \ - ((long *) function)[4] -#endif -#ifdef __x86_64__ - /* function: - * movabsq $,%rax 48 B8 - * movabsq %rax, 48 A3 - * movabsq $
,%rax 48 B8
- * jmp *%rax FF E0 - */ - *(short *) (function + 0) = 0xB848; - *(short *) (function + 2) = (unsigned long) data & 0xffff; - *(int *) (function + 4) = ((unsigned long) data >> 16) & 0xffffffff; - *(short *) (function + 8) = ((unsigned long) data >> 48) & 0xffff; - *(short *) (function +10) = 0xA348; - *(int *) (function +12) = (unsigned long) variable & 0xffffffff; - *(int *) (function +16) = ((unsigned long) variable >> 32) & 0xffffffff; - *(short *) (function +20) = 0xB848; - *(short *) (function +22) = (unsigned long) address & 0xffff; - *(int *) (function +24) = ((unsigned long) address >> 16) & 0xffffffff; - *(short *) (function +28) = ((unsigned long) address >> 48) & 0xffff; - *(short *) (function +30) = 0xE0FF; -#define is_tramp(function) \ - *(unsigned short *) (function + 0) == 0xB848 && \ - *(unsigned short *) (function +10) == 0xA348 && \ - *(unsigned short *) (function +20) == 0xB848 && \ - *(unsigned short *) (function +30) == 0xE0FF -#define hilo(hiword,loword) \ - (((unsigned long) (hiword) << 32) | (unsigned long) (loword)) -#define himidlo(hishort,midword,loshort) \ - (((unsigned long) (hishort) << 48) | (unsigned long) (midword) << 16 \ - | (unsigned long) (loshort)) -#define tramp_address(function) \ - himidlo(*(unsigned short *) (function +28), \ - *(unsigned int *) (function +24), \ - *(unsigned short *) (function +22)) -#define tramp_variable(function) \ - hilo(*(unsigned int *) (function +16), *(unsigned int *) (function +12)) -#define tramp_data(function) \ - himidlo(*(unsigned short *) (function + 8), \ - *(unsigned int *) (function + 4), \ - *(unsigned short *) (function + 2)) -#endif -#ifdef __s390__ - /* function: - - lr %r0,%r13 - bras %r13,.LTN0_0 -.LT0_0: -.LC0: - .long 0x73554711 -.LC1: - .long 0x12345678 -.LC2: - .long 0xbabebec0 -.LTN0_0: - l %r1,.LC0-.LT0_0(%r13) - mvc 0(4,%r1),.LC1-.LT0_0(%r13) - l %r1,.LC2-.LT1_0(%r13) - lr %r13,%r0 - br %r1 - */ - /* What about big endian / little endian ?? */ - *(unsigned short *) (function + 0) = 0x180D; - *(unsigned int *) (function + 2) = 0xA7D50008; - *(unsigned int *) (function + 6) = (unsigned int) variable; - *(unsigned int *) (function +10) = (unsigned int) data; - *(unsigned int *) (function +14) = (unsigned int) address; - *(unsigned int *) (function +18) = 0x5810D000; - *(unsigned int *) (function +22) = 0xD2031000; - *(unsigned short *) (function +26) = 0xD004; - *(unsigned int *) (function +28) = 0x5810D008; - *(unsigned short *) (function +32) = 0x18D0; - *(unsigned short *) (function +34) = 0x07f1; -#define is_tramp(function) \ - *(short *) (function + 0) == 0x180D && \ - *(int *) (function + 2) == 0xA7D50008 && \ - *(int *) (function +18) == 0x5810D000 && \ - *(int *) (function +22) == 0xD2031000 && \ - *(short *) (function +26) == 0xD004 && \ - *(int *) (function +28) == 0x5810D008 && \ - *(short *) (function +32) == 0x18D0 && \ - *(short *) (function +34) == 0x07f1 -#define tramp_address(function) \ - *(unsigned int *) (function +14) -#define tramp_variable(function) \ - *(unsigned int *) (function +6) -#define tramp_data(function) \ - *(unsigned int *) (function +10) -#endif - - /* 3. Set memory protection to "executable" */ - -#if !defined(CODE_EXECUTABLE) && defined(EXECUTABLE_VIA_MPROTECT) - /* Call mprotect on the pages that contain the range. */ - { unsigned long start_addr = (unsigned long) function; - unsigned long end_addr = (unsigned long) (function + TRAMP_LENGTH); - start_addr = start_addr & -pagesize; - end_addr = (end_addr + pagesize-1) & -pagesize; - {unsigned long len = end_addr - start_addr; -#if defined(HAVE_MACH_VM) - if (vm_protect(task_self(),start_addr,len,0,VM_PROT_READ|VM_PROT_WRITE|VM_PROT_EXECUTE) != KERN_SUCCESS) -#else -#if defined(__convex__) - /* Convex OS calls it `mremap()'. */ - mremap(start_addr, &len, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE); - if (0) -#else -#if defined(HAVE_SYS_M88KBCS_H) - if (memctl(start_addr, len, MCT_TEXT) == -1) -#else - if (mprotect((void*)start_addr, len, PROT_READ|PROT_WRITE|PROT_EXEC) < 0) -#endif -#endif -#endif - { fprintf(stderr,"trampoline: cannot make memory executable\n"); abort(); } - }} -#endif - - /* 4. Flush instruction cache */ - /* We need this because some CPUs have separate data cache and instruction - * cache. The freshly built trampoline is visible to the data cache, but not - * maybe not to the instruction cache. This is hairy. - */ -#if !(defined(__hppanew__) || defined(__rs6000aix__) || defined(__ia64__)) - /* Only needed if we really set up machine instructions. */ -#ifdef __i386__ -#if defined(_WIN32) - while (!FlushInstructionCache(GetCurrentProcess(),function,TRAMP_LENGTH)) - continue; -#endif -#endif -#ifdef __m68k__ -#if defined(NeXT) && defined(__GNUC__) - __asm__ __volatile__ ("trap #2"); -#endif -#if defined(AMIGA) - CacheClearE(function,TRAMP_LENGTH,CACRF_ClearI|CACRF_ClearD); -#endif -#if defined(apollo) - cache_$clear(); -#endif -#if defined(hpux) - cachectl(CC_IPURGE,function,TRAMP_LENGTH); -#endif -#if defined(__NetBSD__) && defined(__GNUC__) - { register unsigned long _beg __asm__ ("%a1") = (unsigned long) function; - register unsigned long _len __asm__ ("%d1") = TRAMP_LENGTH; - __asm__ __volatile__ ( - "move%.l %#0x80000004,%/d0\n\t" /* CC_EXTPURGE | C_IPURGE */ - "trap #12" /* kernel call `cachectl' */ - : - : "a" (_beg), "d" (_len) - : "%a0", "%a1", "%d0", "%d1" /* call-used registers */ - ); - } -#endif -#if defined(__linux__) && defined(__GNUC__) - { register unsigned long _beg __asm__ ("%d1") = (unsigned long) function; - register unsigned long _len __asm__ ("%d4") = TRAMP_LENGTH + 32; - __asm__ __volatile__ ( - "move%.l %#123,%/d0\n\t" - "move%.l %#1,%/d2\n\t" - "move%.l %#3,%/d3\n\t" - "trap %#0" - : - : "d" (_beg), "d" (_len) - : "%d0", "%d2", "%d3" - ); - } -#endif -#if defined(AUX) && defined(__GNUC__) - /* sysm68k(105, addr, scope, cache, len) */ - __asm__ __volatile__ ( - "move%.l %1,%/sp@-\n\t" - "move%.l %#3,%/sp@-\n\t" - "move%.l %#1,%/sp@-\n\t" - "move%.l %0,%/sp@-\n\t" - "move%.l %#105,%/sp@-\n\t" - "move%.l %#0,%/sp@-\n\t" - "move%.l %#38,%/sp@-\n\t" - "trap %#0\n\t" - "add%.l %#24,%/sp" - : - : "r" (function), "g" ((int)TRAMP_LENGTH) - : "%d0" - ); -#endif -#endif -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) - cacheflush(function,TRAMP_LENGTH,ICACHE); - /* gforth-0.3.0 uses BCACHE instead of ICACHE. Why?? */ -#endif -#if defined(__sparc__) || defined(__sparc64__) - /* This assumes that the trampoline fits in at most four cache lines. */ - __TR_clear_cache_4(function,function+TRAMP_LENGTH-1); -#endif -#ifdef __alpha__ - __TR_clear_cache(); -#endif -#ifdef __hppa__ - /* This assumes that the trampoline fits in at most two cache lines. */ - __TR_clear_cache(function,function+TRAMP_LENGTH-1); -#endif -#ifdef __arm__ - /* This CPU does not have a separate instruction cache. (I think.) */ -#endif -#ifdef __rs6000__ - __TR_clear_cache(function); -#endif -#ifdef __m88k__ - sysmot(S88CACHEFLUSHPAGE, (unsigned long)function & -pagesize); -#endif -#ifdef __convex__ - __TR_clear_cache(); -#endif -#endif - - /* 5. Return. */ - return (__TR_function) (function + TRAMP_BIAS); -} - -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -void free_trampoline (__TR_function function) -#else -void free_trampoline (function) - __TR_function function; -#endif -{ -#if TRAMP_BIAS - function = (__TR_function)((char*)function - TRAMP_BIAS); -#endif -#if !defined(CODE_EXECUTABLE) && !defined(EXECUTABLE_VIA_MPROTECT) - *(char**)function = freelist; freelist = (char*)function; - /* It is probably not worth calling munmap() for entirely freed pages. */ -#else - free(((char**)function)[-1]); -#endif -} - -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -int is_trampoline (void* function) -#else -int is_trampoline (function) - void* function; -#endif -{ -#ifdef is_tramp -#ifdef __hppanew__ - void* tramp_address = &tramp; - if (!(((long)function & 3) == (TRAMP_BIAS & 3))) return 0; -#endif - return ((is_tramp(((char*)function - TRAMP_BIAS))) ? 1 : 0); -#else - abort(); -#endif -} - -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -__TR_function trampoline_address (void* function) -#else -__TR_function trampoline_address (function) - void* function; -#endif -{ -#ifdef tramp_address - return (__TR_function)(tramp_address(((char*)function - TRAMP_BIAS))); -#else - abort(); -#endif -} - -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -void* trampoline_variable (void* function) -#else -void* trampoline_variable (function) - void* function; -#endif -{ -#ifdef tramp_variable - return (void*)(tramp_variable(((char*)function - TRAMP_BIAS))); -#else - abort(); -#endif -} - -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -void* trampoline_data (void* function) -#else -void* trampoline_data (function) - void* function; -#endif -{ -#ifdef tramp_data - return (void*)(tramp_data(((char*)function - TRAMP_BIAS))); -#else - abort(); -#endif -} DELETED ffcall/trampoline/trampoline.h.in Index: ffcall/trampoline/trampoline.h.in ================================================================== --- ffcall/trampoline/trampoline.h.in +++ /dev/null @@ -1,34 +0,0 @@ -#ifndef _TRAMPOLINE_H -#define _TRAMPOLINE_H - -/* - * Copyright 1995-1999 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifdef __cplusplus -typedef int (*__TR_function) (...); -#else -typedef int (*__TR_function) (); -#endif -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -extern __TR_function alloc_trampoline (__TR_function, void*, void*); -extern void free_trampoline (__TR_function); -extern int is_trampoline (void*); -extern __TR_function trampoline_address (void*); -extern void* trampoline_variable (void*); -extern void* trampoline_data (void*); -#else -extern __TR_function alloc_trampoline (); -extern void free_trampoline (); -extern int is_trampoline (); -extern __TR_function trampoline_address (); -extern void* trampoline_variable (); -extern void* trampoline_data (); -#endif - -#endif /* _TRAMPOLINE_H */ DELETED ffcall/trampoline/trampoline.html Index: ffcall/trampoline/trampoline.html ================================================================== --- ffcall/trampoline/trampoline.html +++ /dev/null @@ -1,121 +0,0 @@ - - TRAMPOLINE manual page - - -

TRAMPOLINE manual page

- - -

- -


- - -

Name

-
- -trampoline - closures as first-class C functions - - -

Synopsis

-
- -
-#include <trampoline.h>
-function = alloc_trampoline(address, variable, data);
-free_trampoline(function);
-is_trampoline(function)
-trampoline_address(function)
-trampoline_variable(function)
-trampoline_data(function)
-
- - -

Description

-
- -These functions implement closures as first-class -C functions. A closure consists of a regular C function and a -piece of data which gets passed to the C function when the -closure is called. -

-Closures as first-class C functions means that they fit -into a function pointer and can be called exactly like any -other C function. -function = alloc_trampoline(address, variable, data) -allocates a closure. -When function gets called, it stores -data in the variable variable - and calls the C function at address. -The function at address is responsible for -fetching data out of variable - immediately, before execution of any other function call. -

-This is much like gcc's local functions, except that the -GNU C local functions have dynamic extent (i.e. are -deallocated when the creating function returns), while trampoline - provides functions with indefinite extent: function -is only deallocated when free_trampoline(function) is -called. -

-is_trampoline(function) -checks whether the C function function -was produced by a call to alloc_trampoline. -If this returns true, the arguments given to alloc_trampoline -can be retrieved: -

    -
  • trampoline_address(function) returns address, -
  • trampoline_variable(function) returns variable, -
  • trampoline_data(function) returns data. -
- - -

See also

-
-gcc(1), varargs(3), callback(3) - - -

Bugs

-
- -Passing the data through a global variable is not reentrant. Don't -call trampoline functions from within signal -handlers. This is fixed in the callback(3) package. - - -

Porting

-
- -The way gcc builds local functions is described in the gcc -source, file gcc-2.6.3/config/cpu/cpu.h. - - -

Author

-
- -Bruno Haible <bruno@clisp.org> - - -

Acknowledgements

-
- -Many ideas were cribbed from the gcc source. -

- -


- -
TRAMPOLINE manual page
-Bruno Haible <bruno@clisp.org> -
-

-Last modified: 25 October 1997. - - DELETED ffcall/trampoline/trampoline.man Index: ffcall/trampoline/trampoline.man ================================================================== --- ffcall/trampoline/trampoline.man +++ /dev/null @@ -1,132 +0,0 @@ - - - -TRAMPOLINE(3) TRAMPOLINE(3) - - -NNAAMMEE - trampoline - closures as first-class C functions - -SSYYNNOOPPSSIISS - ##iinncclluuddee <> - - ffuunnccttiioonn == aalllloocc__ttrraammppoolliinnee((aaddddrreessss,, vvaarriiaabbllee,, ddaattaa));; - - ffrreeee__ttrraammppoolliinnee((ffuunnccttiioonn));; - - iiss__ttrraammppoolliinnee((ffuunnccttiioonn)) - ttrraammppoolliinnee__aaddddrreessss((ffuunnccttiioonn)) - ttrraammppoolliinnee__vvaarriiaabbllee((ffuunnccttiioonn)) - ttrraammppoolliinnee__ddaattaa((ffuunnccttiioonn)) - -DDEESSCCRRIIPPTTIIOONN - These functions implement _c_l_o_s_u_r_e_s as first-class C func- - tions. A closure consists of a regular C function and a - piece of data which gets passed to the C function when the - closure is called. - - Closures as _f_i_r_s_t_-_c_l_a_s_s _C _f_u_n_c_t_i_o_n_s means that they fit - into a function pointer and can be called exactly like any - other C function. _f_u_n_c_t_i_o_n == aalllloocc__ttrraammppoolliinnee((_a_d_d_r_e_s_s,, - _v_a_r_i_a_b_l_e,, _d_a_t_a)) allocates a closure. When _f_u_n_c_t_i_o_n gets - called, it stores _d_a_t_a in the variable _v_a_r_i_a_b_l_e and calls - the C function at _a_d_d_r_e_s_s. The function at _a_d_d_r_e_s_s is - responsible for fetching _d_a_t_a out of _v_a_r_i_a_b_l_e immediately, - before execution of any other function call. - - This is much like ggcccc's local functions, except that the - GNU C local functions have dynamic extent (i.e. are deal- - located when the creating function returns), while _t_r_a_m_p_o_- - _l_i_n_e provides functions with indefinite extent: _f_u_n_c_t_i_o_n - is only deallocated when ffrreeee__ttrraammppoolliinnee((_f_u_n_c_t_i_o_n)) is - called. - - iiss__ttrraammppoolliinnee((_f_u_n_c_t_i_o_n)) checks whether the C function - _f_u_n_c_t_i_o_n was produced by a call to _a_l_l_o_c___t_r_a_m_p_o_l_i_n_e. If - this returns true, the arguments given to _a_l_l_o_c___t_r_a_m_p_o_l_i_n_e - can be retrieved: - - ttrraammppoolliinnee__aaddddrreessss((_f_u_n_c_t_i_o_n)) returns _a_d_d_r_e_s_s, - - ttrraammppoolliinnee__vvaarriiaabbllee((_f_u_n_c_t_i_o_n)) returns _v_a_r_i_a_b_l_e, - - ttrraammppoolliinnee__ddaattaa((_f_u_n_c_t_i_o_n)) returns _d_a_t_a. - - -SSEEEE AALLSSOO - ggcccc(1), vvaarraarrggss(3), ccaallllbbaacckk(3) - - - - - - - 25 October 1997 1 - - - - - -TRAMPOLINE(3) TRAMPOLINE(3) - - -BBUUGGSS - Passing the data through a global variable is not reen- - trant. Don't call trampoline functions from within signal - handlers. This is fixed in the ccaallllbbaacckk(3) package. - - -PPOORRTTIINNGG - The way ggcccc builds local functions is described in the gcc - source, file gcc-2.6.3/config/_c_p_u/_c_p_u.h. - - -AAUUTTHHOORR - Bruno Haible - - -AACCKKNNOOWWLLEEDDGGEEMMEENNTTSS - Many ideas were cribbed from the gcc source. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 25 October 1997 2 - - DELETED ffcall/vacall/COPYING Index: ffcall/vacall/COPYING ================================================================== --- ffcall/vacall/COPYING +++ /dev/null @@ -1,340 +0,0 @@ - GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1989, 1991 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307, - USA. - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -License is intended to guarantee your freedom to share and change free -software--to make sure the software is free for all its users. This -General Public License applies to most of the Free Software -Foundation's software and to any other program whose authors commit to -using it. (Some other Free Software Foundation software is covered by -the GNU Library General Public License instead.) You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if you -distribute copies of the software, or if you modify it. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must give the recipients all the rights that -you have. You must make sure that they, too, receive or can get the -source code. And you must show them these terms so they know their -rights. - - We protect your rights with two steps: (1) copyright the software, and -(2) offer you this license which gives you legal permission to copy, -distribute and/or modify the software. - - Also, for each author's protection and ours, we want to make certain -that everyone understands that there is no warranty for this free -software. If the software is modified by someone else and passed on, we -want its recipients to know that what they have is not the original, so -that any problems introduced by others will not reflect on the original -authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that redistributors of a free -program will individually obtain patent licenses, in effect making the -program proprietary. To prevent this, we have made it clear that any -patent must be licensed for everyone's free use or not licensed at all. - - The precise terms and conditions for copying, distribution and -modification follow. - - GNU GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License applies to any program or other work which contains -a notice placed by the copyright holder saying it may be distributed -under the terms of this General Public License. The "Program", below, -refers to any such program or work, and a "work based on the Program" -means either the Program or any derivative work under copyright law: -that is to say, a work containing the Program or a portion of it, -either verbatim or with modifications and/or translated into another -language. (Hereinafter, translation is included without limitation in -the term "modification".) Each licensee is addressed as "you". - -Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running the Program is not restricted, and the output from the Program -is covered only if its contents constitute a work based on the -Program (independent of having been made by running the Program). -Whether that is true depends on what the Program does. - - 1. You may copy and distribute verbatim copies of the Program's -source code as you receive it, in any medium, provided that you -conspicuously and appropriately publish on each copy an appropriate -copyright notice and disclaimer of warranty; keep intact all the -notices that refer to this License and to the absence of any warranty; -and give any other recipients of the Program a copy of this License -along with the Program. - -You may charge a fee for the physical act of transferring a copy, and -you may at your option offer warranty protection in exchange for a fee. - - 2. You may modify your copy or copies of the Program or any portion -of it, thus forming a work based on the Program, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) You must cause the modified files to carry prominent notices - stating that you changed the files and the date of any change. - - b) You must cause any work that you distribute or publish, that in - whole or in part contains or is derived from the Program or any - part thereof, to be licensed as a whole at no charge to all third - parties under the terms of this License. - - c) If the modified program normally reads commands interactively - when run, you must cause it, when started running for such - interactive use in the most ordinary way, to print or display an - announcement including an appropriate copyright notice and a - notice that there is no warranty (or else, saying that you provide - a warranty) and that users may redistribute the program under - these conditions, and telling the user how to view a copy of this - License. (Exception: if the Program itself is interactive but - does not normally print such an announcement, your work based on - the Program is not required to print an announcement.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Program, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Program, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Program. - -In addition, mere aggregation of another work not based on the Program -with the Program (or with a work based on the Program) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may copy and distribute the Program (or a work based on it, -under Section 2) in object code or executable form under the terms of -Sections 1 and 2 above provided that you also do one of the following: - - a) Accompany it with the complete corresponding machine-readable - source code, which must be distributed under the terms of Sections - 1 and 2 above on a medium customarily used for software interchange; or, - - b) Accompany it with a written offer, valid for at least three - years, to give any third party, for a charge no more than your - cost of physically performing source distribution, a complete - machine-readable copy of the corresponding source code, to be - distributed under the terms of Sections 1 and 2 above on a medium - customarily used for software interchange; or, - - c) Accompany it with the information you received as to the offer - to distribute corresponding source code. (This alternative is - allowed only for noncommercial distribution and only if you - received the program in object code or executable form with such - an offer, in accord with Subsection b above.) - -The source code for a work means the preferred form of the work for -making modifications to it. For an executable work, complete source -code means all the source code for all modules it contains, plus any -associated interface definition files, plus the scripts used to -control compilation and installation of the executable. However, as a -special exception, the source code distributed need not include -anything that is normally distributed (in either source or binary -form) with the major components (compiler, kernel, and so on) of the -operating system on which the executable runs, unless that component -itself accompanies the executable. - -If distribution of executable or object code is made by offering -access to copy from a designated place, then offering equivalent -access to copy the source code from the same place counts as -distribution of the source code, even though third parties are not -compelled to copy the source along with the object code. - - 4. You may not copy, modify, sublicense, or distribute the Program -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense or distribute the Program is -void, and will automatically terminate your rights under this License. -However, parties who have received copies, or rights, from you under -this License will not have their licenses terminated so long as such -parties remain in full compliance. - - 5. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Program or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Program (or any work based on the -Program), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Program or works based on it. - - 6. Each time you redistribute the Program (or any work based on the -Program), the recipient automatically receives a license from the -original licensor to copy, distribute or modify the Program subject to -these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 7. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Program at all. For example, if a patent -license would not permit royalty-free redistribution of the Program by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system, which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 8. If the distribution and/or use of the Program is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Program under this License -may add an explicit geographical distribution limitation excluding -those countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 9. The Free Software Foundation may publish revised and/or new versions -of the General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - -Each version is given a distinguishing version number. If the Program -specifies a version number of this License which applies to it and "any -later version", you have the option of following the terms and conditions -either of that version or of any later version published by the Free -Software Foundation. If the Program does not specify a version number of -this License, you may choose any version ever published by the Free Software -Foundation. - - 10. If you wish to incorporate parts of the Program into other free -programs whose distribution conditions are different, write to the author -to ask for permission. For software which is copyrighted by the Free -Software Foundation, write to the Free Software Foundation; we sometimes -make exceptions for this. Our decision will be guided by the two goals -of preserving the free status of all derivatives of our free software and -of promoting the sharing and reuse of software generally. - - NO WARRANTY - - 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -REPAIR OR CORRECTION. - - 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - - END OF TERMS AND CONDITIONS - - Appendix: How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. - -Also add information on how to contact you by electronic and paper mail. - -If the program is interactive, make it output a short notice like this -when it starts in an interactive mode: - - Gnomovision version 69, Copyright (C) year name of author - Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, the commands you use may -be called something other than `show w' and `show c'; they could even be -mouse-clicks or menu items--whatever suits your program. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the program, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the program - `Gnomovision' (which makes passes at compilers) written by James Hacker. - - , 1 April 1989 - Ty Coon, President of Vice - -This General Public License does not permit incorporating your program into -proprietary programs. If your program is a subroutine library, you may -consider it more useful to permit linking proprietary applications with the -library. If this is what you want to do, use the GNU Library General -Public License instead of this License. DELETED ffcall/vacall/Makefile.devel Index: ffcall/vacall/Makefile.devel ================================================================== --- ffcall/vacall/Makefile.devel +++ /dev/null @@ -1,173 +0,0 @@ -# -*-Makefile-*- - -HOST = i486-linux -CPU = i386 -GCC = gcc -GCCFLAGS = -O2 -fomit-frame-pointer -DHAVE_LONGLONG -LN = ln -s -RM = rm -f -SED = sed -ROFF_MAN = groff -Tascii -mandoc - -all : vacall-i386-macro.S vacall-i386-msvc.c vacall-i386-mingw32.c vacall-m68k.mit.S vacall-m68k.mot.s vacall-mips.S vacall-mipsn32.S vacall-mips64.S vacall-sparc.S vacall-sparc64.S vacall-alpha.s vacall-hppa.s vacall-arm.S vacall-rs6000-aix.old.s vacall-rs6000-aix.new.s vacall-rs6000-sysv4.s vacall-rs6000-macos.s vacall-m88k.s vacall-convex.s vacall-ia64.s vacall-x86_64.s vacall.man \ - vacall.h.msvc config.h.msvc vacall.h.mingw32 config.h.mingw32 - -vacall-i386-macro.S : vacall-i386.c vacall.h.in asmi386.sh - $(GCC) -V 2.7.2 -b i486-linuxaout $(GCCFLAGS) -D__i386__ -S vacall-i386.c -o vacall-i386.s - (echo '#include "asmi386.h"' ; sed -e '/\.align.*,0x90$$/d' < vacall-i386.s | ./asmi386.sh) > vacall-i386-macro.S - $(RM) vacall-i386.s - -vacall-i386-msvc.c : vacall-i386-macro.S - (echo '#ifdef _MSC_VER' ; echo '#include "vacall.h"' ; echo '#endif' ; cat vacall-i386-macro.S) > vacall-i386-msvc.c - -vacall-i386-mingw32.c : vacall-i386-macro.S - (echo '#ifdef __MINGW32__' ; echo '#include "vacall.h"' ; echo '#endif' ; cat vacall-i386-macro.S) > vacall-i386-mingw32.c - -vacall-m68k.mit.S : vacall-m68k.c vacall.h.in asmm68k.sh - $(GCC) -V 2.95.2 -b m68k-sun $(GCCFLAGS) -D__m68k__ -S vacall-m68k.c -o vacall-m68k.mit.s - (echo '#include "asmm68k.h"' ; ./asmm68k.sh < vacall-m68k.mit.s) > vacall-m68k.mit.S - $(RM) vacall-m68k.mit.s - -vacall-m68k.mot.s : vacall-m68k.c vacall.h.in - $(GCC) -V 2.95.2 -b m68k-linux $(GCCFLAGS) -D__m68k__ -S vacall-m68k.c -o vacall-m68k.mot.s - -vacall-mips.S : vacall-mips.c vacall.h.in asmmips.sh - $(GCC) -V 2.95.2 -b mips-sgi $(GCCFLAGS) -D__mips__ -fno-omit-frame-pointer -S vacall-mips.c -o vacall-mips.s - (echo '#include "asmmips.h"' ; ./asmmips.sh < vacall-mips.s) > vacall-mips.S - $(RM) vacall-mips.s - -vacall-mipsn32.S : vacall-mipsn32.c vacall.h.in asmmips.sh - $(GCC) -V 2.95.2 -b mips-sgi-irix6 $(GCCFLAGS) -D__mipsn32__ -S vacall-mipsn32.c -o vacall-mipsn32.s - (echo '#include "asmmips.h"' ; $(SED) -e 's/\$$sp,\$$sp,192/$$sp,$$sp,256/' -e 's/\$$sp,192,/$$sp,256,/' < vacall-mipsn32.s | ./asmmips.sh) > vacall-mipsn32.S - $(RM) vacall-mipsn32.s - -vacall-mips64.S : vacall-mips64.c vacall.h.in asmmips.sh - $(GCC) -V 2.95.2 -b mips-sgi -mips3 -mlong64 $(GCCFLAGS) -U__mips__ -D__mips64__ -S vacall-mips64.c -o vacall-mips64.s - (echo '#include "asmmips.h"' ; ./asmmips.sh < vacall-mips64.s) > vacall-mips64.S - $(RM) vacall-mips64.s - -vacall-sparc.S : vacall-sparc.c vacall.h.in asmsparc.sh - $(GCC) -V 2.95.2 -b sparc-sun $(GCCFLAGS) -D__sparc__ -S vacall-sparc.c -o vacall-sparc.s - (echo '#include "asmsparc.h"' ; ./asmsparc.sh < vacall-sparc.s) > vacall-sparc.S - $(RM) vacall-sparc.s - -vacall-sparc64.S : vacall-sparc64.c vacall.h.in asmsparc.sh - sparc64-linux-gcc -V 2.95.2 -b sparc64-linux $(GCCFLAGS) -D__sparc64__ -S vacall-sparc64.c -o vacall-sparc64.s - (echo '#include "asmsparc.h"' ; ./asmsparc64.sh < vacall-sparc64.s) > vacall-sparc64.S - $(RM) vacall-sparc64.s - -vacall-alpha.s : vacall-alpha.c vacall.h.in - $(GCC) -V 2.7.2 -b alpha-dec-osf $(GCCFLAGS) -D__alpha__ -S vacall-alpha.c -o vacall-alpha-temp.s - cat < vacall-alpha-temp.s > vacall-alpha.s - $(RM) vacall-alpha-temp.s - -vacall-hppa.s : vacall-hppa.c vacall.h.in - $(GCC) -V 2.6.3 -b hppa1.0-hpux $(GCCFLAGS) -D__hppa__ -S vacall-hppa.c -o vacall-hppa.s - -vacall-arm.S : vacall-arm.c vacall.h.in asmarm.sh - $(GCC) -V 2.6.3 -b arm-acorn-riscix $(GCCFLAGS) -D__arm__ -S vacall-arm.c -o vacall-arm.s - (echo '#include "asmarm.h"' ; ./asmarm.sh < vacall-arm.s) > vacall-arm.S - $(RM) vacall-arm.s - -vacall-rs6000-aix.old.s : vacall-rs6000.c vacall.h.in - $(GCC) -V 2.95.2 -b rs6000 -mno-power -mno-power2 -mno-powerpc -mold-mnemonics $(GCCFLAGS) -D__rs6000__ -S vacall-rs6000.c -o vacall-rs6000-aix.old.s - -vacall-rs6000-aix.new.s : vacall-rs6000.c vacall.h.in - $(GCC) -V 2.95.2 -b rs6000 -mno-power -mno-power2 -mno-powerpc -mnew-mnemonics $(GCCFLAGS) -D__rs6000__ -S vacall-rs6000.c -o vacall-rs6000-aix.new.s - -vacall-rs6000-sysv4.s : vacall-rs6000.c vacall.h.in - $(GCC) -V 2.95.2 -b ppc-linux -mno-power -mno-power2 -mno-powerpc $(GCCFLAGS) -D__rs6000__ -S vacall-rs6000.c -o vacall-rs6000-sysv4.s - -vacall-rs6000-macos.s : vacall-rs6000.c vacall.h.in - $(GCC) -V 3.3.2 -b powerpc-darwin $(GCCFLAGS) -D__rs6000__ -S vacall-rs6000.c -o vacall-rs6000-macos.s - -vacall-m88k.s : vacall-m88k.c vacall.h.in - $(GCC) -V 2.95.2 -b m88k-dgux $(GCCFLAGS) -D__m88k__ -S vacall-m88k.c -o vacall-m88k.s - -vacall-convex.s : vacall-convex.c vacall.h.in - $(GCC) -V 2.6.3 -b convex-c2 $(GCCFLAGS) -D__convex__ -S vacall-convex.c -o vacall-convex.s - -vacall-ia64.s : vacall-ia64.c vacall.h.in - $(GCC) -V 2.9-ia64-000216 -b ia64-hp-linux $(GCCFLAGS) -D__ia64__ -S vacall-ia64.c -o vacall-ia64.s - -vacall-x86_64.s : vacall-x86_64.c vacall.h.in - $(GCC) -V 3.2.2 -b x86_64-suse-linux $(GCCFLAGS) -D__x86_64__ -S vacall-x86_64.c -o vacall-x86_64.s - -vacall.man : vacall.3 - $(ROFF_MAN) vacall.3 > vacall.man - -vacall.h.msvc : vacall.h.in - sed -e 's,^#undef __i386__$$,#define __i386__ 1,' -e 's,^#undef __SMALL_STRUCT_RETURN__$$,#define __SMALL_STRUCT_RETURN__ 1,' < vacall.h.in > vacall.h.msvc - -vacall.h.mingw32 : vacall.h.in - sed -e 's,^#undef __i386__$$,#define __i386__ 1,' -e 's,^#undef __SMALL_STRUCT_RETURN__$$,#define __SMALL_STRUCT_RETURN__ 1,' < vacall.h.in > vacall.h.mingw32 - -config.h.msvc : config.h.in - cp config.h.in config.h.msvc - -config.h.mingw32 : config.h.in - cp config.h.in config.h.mingw32 - -tests : tests-i386.s tests-m68k.s tests-mips.s tests-sparc.s tests-alpha.s tests-hppa.s tests-arm.s tests-rs6000.s tests-m88k.s tests-convex.s tests-ia64.s tests-x86_64.s - true - -tests-i386.s : tests.c vacall.h.in - $(LN) vacall.h.in vacall.h - $(GCC) -V 2.7.2 -b i486-linuxaout $(GCCFLAGS) -I/usr/include -D__i386__ -S tests.c -o tests-i386.s - $(RM) vacall.h - -tests-m68k.s : tests.c vacall.h.in - $(LN) vacall.h.in vacall.h - $(GCC) -V 2.95.2 -b m68k-sun $(GCCFLAGS) -I/usr/include -D__m68k__ -S tests.c -o tests-m68k.s - $(RM) vacall.h - -tests-mips.s : tests.c vacall.h.in - $(LN) vacall.h.in vacall.h - $(GCC) -V 2.95.2 -b mips-sgi $(GCCFLAGS) -I/usr/include -D__mips__ -S tests.c -o tests-mips.s - $(RM) vacall.h - -tests-sparc.s : tests.c vacall.h.in - $(LN) vacall.h.in vacall.h - $(GCC) -V 2.95.2 -b sparc-sun $(GCCFLAGS) -I/usr/include -D__sparc__ -S tests.c -o tests-sparc.s - $(RM) vacall.h - -tests-alpha.s : tests.c vacall.h.in - $(LN) vacall.h.in vacall.h - $(GCC) -V 2.7.2 -b alpha-dec-osf $(GCCFLAGS) -I/usr/include -D__alpha__ -S tests.c -o tests-alpha.s - $(RM) vacall.h - -tests-hppa.s : tests.c vacall.h.in - $(LN) vacall.h.in vacall.h - $(GCC) -V 2.6.3 -b hppa1.0-hpux $(GCCFLAGS) -I/usr/include -D__hppa__ -S tests.c -o tests-hppa.s - $(RM) vacall.h - -tests-arm.s : tests.c vacall.h.in - $(LN) vacall.h.in vacall.h - $(GCC) -V 2.6.3 -b arm-acorn-riscix $(GCCFLAGS) -I/usr/include -D__arm__ -S tests.c -o tests-arm.s - $(RM) vacall.h - -tests-rs6000.s : tests.c vacall.h.in - $(LN) vacall.h.in vacall.h - $(GCC) -V 2.95.2 -b rs6000 $(GCCFLAGS) -I/usr/include -D__rs6000__ -S tests.c -o tests-rs6000.s - $(RM) vacall.h - -tests-m88k.s : tests.c vacall.h.in - $(LN) vacall.h.in vacall.h - $(GCC) -V 2.95.2 -b m88k-dgux $(GCCFLAGS) -I/usr/include -D__m88k__ -S tests.c -o tests-m88k.s - $(RM) vacall.h - -tests-convex.s : tests.c vacall.h.in - $(LN) vacall.h.in vacall.h - $(GCC) -V 2.6.3 -b convex-c2 $(GCCFLAGS) -I/usr/include -D__convex__ -S tests.c -o tests-convex.s - $(RM) vacall.h - -tests-ia64.s : tests.c vacall.h.in - $(LN) vacall.h.in vacall.h - $(GCC) -V 2.9-ia64-000216 -b ia64-hp-linux $(GCCFLAGS) -I/usr/include -D__ia64__ -S tests.c -o tests-ia64.s - $(RM) vacall.h - -tests-x86_64.s : tests.c vacall.h.in - $(LN) vacall.h.in vacall.h - $(GCC) -V 3.2.2 -b x86_64-suse-linux $(GCCFLAGS) -I/usr/include -D__x86_64__ -S tests.c -o tests-x86_64.s - $(RM) vacall.h - DELETED ffcall/vacall/Makefile.in Index: ffcall/vacall/Makefile.in ================================================================== --- ffcall/vacall/Makefile.in +++ /dev/null @@ -1,216 +0,0 @@ -# Makefile for vacall - -#### Start of system configuration section. #### - -HOST = @host@ -CPU = @host_cpu@ -OS = @host_os@ - -# Directories used by "make": -srcdir = @srcdir@ - -# Directories used by "make install": -prefix = @prefix@ -local_prefix = /usr/local -exec_prefix = @exec_prefix@ -libdir = @libdir@ -includedir = @includedir@ -mandir = @mandir@ -datadir = @datadir@ -htmldir = $(datadir)/html - -# Programs used by "make": -CC = @CC@ -CFLAGS = @CFLAGS@ -CPP = @CPP@ -INCLUDES = -I. -I$(srcdir) -ASPFLAGS = `if test @AS_UNDERSCORE@ = true; then echo '-DASM_UNDERSCORE'; fi` -AR = ar -AR_FLAGS = rc -RANLIB = @RANLIB@ -MV = mv -LN = @LN@ -RM = rm -f -@SET_MAKE@ - -# Programs used by "make install": -INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_DATA = @INSTALL_DATA@ - -#### End of system configuration section. #### - -SHELL = /bin/sh - -OBJECTS = vacall.o misc.o structcpy.o - -all : $(OBJECTS) libvacall.a vacall.h $(srcdir)/vacall.3 $(srcdir)/vacall.html - -vacall.o : vacall-$(CPU).o - $(RM) vacall.o - $(LN) vacall-$(CPU).o vacall.o - -vacall-i386.o : vacall-i386.s - $(CC) @GCC_X_NONE@ -c vacall-i386.s - -vacall-i386.s : $(srcdir)/vacall-i386-macro.S - $(CPP) $(ASPFLAGS) $(srcdir)/vacall-i386-macro.S | grep -v '^ *#line' | grep -v '^#ident' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,% ,%,g' -e 's,\. ,.,g' > vacall-i386.s - -vacall-sparc.o : vacall-sparc.s - $(CC) @GCC_X_NONE@ -c vacall-sparc.s - -vacall-sparc.s : $(srcdir)/vacall-sparc.S - $(CPP) $(ASPFLAGS) $(srcdir)/vacall-sparc.S | grep -v '^ *#line' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,//.*$$,,' -e 's,\$$,#,g' > vacall-sparc.s - -vacall-sparc64.o : vacall-sparc64.s - $(CC) @GCC_X_NONE@ -c vacall-sparc64.s - -vacall-sparc64.s : $(srcdir)/vacall-sparc64.S - $(CPP) $(ASPFLAGS) $(srcdir)/vacall-sparc64.S | grep -v '^ *#line' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,//.*$$,,' -e 's,\$$,#,g' > vacall-sparc64.s - -vacall-m68k.o : vacall-m68k.s - $(CC) @GCC_X_NONE@ -c vacall-m68k.s - -vacall-m68k.s : $(srcdir)/vacall-m68k.mit.S $(srcdir)/vacall-m68k.mot.s - $(CPP) $(ASPFLAGS) $(srcdir)/vacall-m68k.mit.S | grep -v '^ *#line' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,//.*$$,,' | if test @AS_UNDERSCORE@ = true; then sed -e 's/\$$//g'; else sed -e 's/\$$/%/g'; fi > vacall-m68k.s - -vacall-mips.o : vacall-mips.s - $(CC) @GCC_X_NONE@ -c vacall-mips.s - -vacall-mips.s : $(srcdir)/vacall-mips.S - $(CPP) $(ASPFLAGS) $(srcdir)/vacall-mips.S | grep -v '^ *#line' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,//.*$$,,' > vacall-mips.s - -vacall-mipsn32.o : vacall-mipsn32.s - $(CC) @GCC_X_NONE@ -c vacall-mipsn32.s - -vacall-mipsn32.s : $(srcdir)/vacall-mipsn32.S - $(CPP) $(ASPFLAGS) $(srcdir)/vacall-mipsn32.S | grep -v '^ *#line' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,//.*$$,,' > vacall-mipsn32.s - -vacall-mips64.o : vacall-mips64.s - $(CC) @GCC_X_NONE@ -c vacall-mips64.s - -vacall-mips64.s : $(srcdir)/vacall-mips64.S - $(CPP) $(ASPFLAGS) $(srcdir)/vacall-mips64.S | grep -v '^ *#line' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,//.*$$,,' > vacall-mips64.s - -vacall-alpha.o : $(srcdir)/vacall-alpha.s - $(CC) @GCC_X_NONE@ -c $(srcdir)/vacall-alpha.s - -vacall-hppa.o : $(srcdir)/vacall-hppa.s - $(CC) @GCC_X_NONE@ -c $(srcdir)/vacall-hppa.s - -vacall-s390.o : $(srcdir)/vacall-s390.s - $(CC) @GCC_X_NONE@ -c $(srcdir)/vacall-s390.s - -vacall-arm.o : vacall-arm.s - $(CC) @GCC_X_NONE@ -c vacall-arm.s - -vacall-arm.s : $(srcdir)/vacall-arm.S - $(CPP) $(ASPFLAGS) $(srcdir)/vacall-arm.S | grep -v '^ *#line' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,//,@,g' -e 's,\$$,#,g' > vacall-arm.s - -vacall-rs6000.o : $(srcdir)/vacall-rs6000-aix.old.s $(srcdir)/vacall-rs6000-aix.new.s $(srcdir)/vacall-rs6000-sysv4.s $(srcdir)/vacall-rs6000-linux.s $(srcdir)/vacall-rs6000-macos.s - case "$(OS)" in \ - aix3*) syntax=aix.old;; \ - aix*) syntax=aix.new;; \ - linux* | netbsd*) syntax=linux;; \ - macos* | darwin*) syntax=macos;; \ - *) syntax=sysv4;; \ - esac; \ - $(CC) @GCC_X_NONE@ -c $(srcdir)/vacall-rs6000-$${syntax}.s ; \ - mv vacall-rs6000-$${syntax}.o vacall-rs6000.o - -vacall-m88k.o : $(srcdir)/vacall-m88k.s - $(CC) @GCC_X_NONE@ -c $(srcdir)/vacall-m88k.s - -vacall-convex.o : $(srcdir)/vacall-convex.s - $(CC) @GCC_X_NONE@ -c $(srcdir)/vacall-convex.s - -vacall-ia64.o : $(srcdir)/vacall-ia64.s - $(CC) @GCC_X_NONE@ -c $(srcdir)/vacall-ia64.s - -vacall-x86_64.o : $(srcdir)/vacall-x86_64.s - $(CC) @GCC_X_NONE@ -c $(srcdir)/vacall-x86_64.s - -misc.o : $(srcdir)/misc.c vacall.h config.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/misc.c - -structcpy.o : $(srcdir)/structcpy.c - $(CC) $(CFLAGS) -c $(srcdir)/structcpy.c - -libvacall.a : $(OBJECTS) - $(RM) libvacall.a - $(AR) $(AR_FLAGS) libvacall.a $(OBJECTS) - $(RANLIB) libvacall.a - -install : all force - if [ ! -d $(DESTDIR)$(prefix) ] ; then mkdir $(DESTDIR)$(prefix) ; fi - if [ ! -d $(DESTDIR)$(exec_prefix) ] ; then mkdir $(DESTDIR)$(exec_prefix) ; fi - if [ ! -d $(DESTDIR)$(libdir) ] ; then mkdir $(DESTDIR)$(libdir) ; fi - $(INSTALL_DATA) libvacall.a $(DESTDIR)$(libdir)/libvacall.a - if [ ! -d $(DESTDIR)$(includedir) ] ; then mkdir $(DESTDIR)$(includedir) ; fi - $(INSTALL_DATA) vacall.h $(DESTDIR)$(includedir)/vacall.h - if [ ! -d $(DESTDIR)$(mandir) ] ; then mkdir $(DESTDIR)$(mandir) ; fi - if [ ! -d $(DESTDIR)$(mandir)/man3 ] ; then mkdir $(DESTDIR)$(mandir)/man3 ; fi - $(INSTALL_DATA) $(srcdir)/vacall.3 $(DESTDIR)$(mandir)/man3/vacall.3 - if [ ! -d $(DESTDIR)$(datadir) ] ; then mkdir $(DESTDIR)$(datadir) ; fi - if [ ! -d $(DESTDIR)$(htmldir) ] ; then mkdir $(DESTDIR)$(htmldir) ; fi - $(INSTALL_DATA) $(srcdir)/vacall.html $(DESTDIR)$(htmldir)/vacall.html - -installdirs : force - if [ ! -d $(DESTDIR)$(prefix) ] ; then mkdir $(DESTDIR)$(prefix) ; fi - if [ ! -d $(DESTDIR)$(exec_prefix) ] ; then mkdir $(DESTDIR)$(exec_prefix) ; fi - if [ ! -d $(DESTDIR)$(libdir) ] ; then mkdir $(DESTDIR)$(libdir) ; fi - if [ ! -d $(DESTDIR)$(includedir) ] ; then mkdir $(DESTDIR)$(includedir) ; fi - if [ ! -d $(DESTDIR)$(mandir) ] ; then mkdir $(DESTDIR)$(mandir) ; fi - if [ ! -d $(DESTDIR)$(mandir)/man3 ] ; then mkdir $(DESTDIR)$(mandir)/man3 ; fi - if [ ! -d $(DESTDIR)$(datadir) ] ; then mkdir $(DESTDIR)$(datadir) ; fi - if [ ! -d $(DESTDIR)$(htmldir) ] ; then mkdir $(DESTDIR)$(htmldir) ; fi - -uninstall : force - $(RM) $(DESTDIR)$(libdir)/libvacall.a - $(RM) $(DESTDIR)$(includedir)/vacall.h - $(RM) $(DESTDIR)$(mandir)/man3/vacall.3 - $(RM) $(DESTDIR)$(htmldir)/vacall.html - -minitests.o : $(srcdir)/minitests.c $(srcdir)/tests.c vacall.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/minitests.c - -minitests.s : $(srcdir)/minitests.c $(srcdir)/tests.c vacall.h - $(CC) $(CFLAGS) $(INCLUDES) -S $(srcdir)/minitests.c - -minitests : minitests.o libvacall.a - $(CC) $(CFLAGS) @GCC_X_NONE@ minitests.o libvacall.a -o minitests - -check : all minitests - ./minitests > minitests.out - LC_ALL=C uniq -u < minitests.out > minitests.output.$(HOST) - test '!' -s minitests.output.$(HOST) - -tests.o : $(srcdir)/tests.c vacall.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/tests.c - -tests.s : $(srcdir)/tests.c vacall.h - $(CC) $(CFLAGS) $(INCLUDES) -S $(srcdir)/tests.c - -tests : tests.o libvacall.a - $(CC) $(CFLAGS) @GCC_X_NONE@ tests.o libvacall.a -o tests - -extracheck : all tests - ./tests > tests.out - LC_ALL=C uniq -u < tests.out > tests.output.$(HOST) - test '!' -s tests.output.$(HOST) - -mostlyclean : clean - -clean : force - $(RM) *.o *.a core - $(RM) vacall-i386.s vacall-sparc.s vacall-sparc64.s vacall-m68k.s vacall-mips.s vacall-mipsn32.s vacall-mips64.s vacall-arm.s - $(RM) minitests.o minitests.s minitests minitests.out - $(RM) tests.o tests.s tests tests.out - -distclean : clean - $(RM) config.status config.log config.cache Makefile vacall.h config.h minitests.output.* tests.output.* - -maintainer-clean : distclean - -force : - DELETED ffcall/vacall/Makefile.mingw32 Index: ffcall/vacall/Makefile.mingw32 ================================================================== --- ffcall/vacall/Makefile.mingw32 +++ /dev/null @@ -1,112 +0,0 @@ -# -*-Makefile-*- for vacall - -#### Start of system configuration section. #### - -HOST = i386-pc-win32-gcc -CPU = i386 - -# Directories used by "make": -srcdir = . - -# Directories used by "make install": -prefix = /usr/local -local_prefix = /usr/local -exec_prefix = $(prefix) -libdir = $(exec_prefix)/lib -includedir = $(prefix)/include -mandir = $(prefix)/man - -# Programs used by "make": -CC = gcc -mno-cygwin -CFLAGS = -O -CPP = gcc -E -INCLUDES = -I. -I$(srcdir) -ASPFLAGS = -DASM_UNDERSCORE -AR = ar -AR_FLAGS = rc -MV = mv -LN = cp -RM = rm -f - -# Programs used by "make install": -INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_DATA = @INSTALL_DATA@ - -#### End of system configuration section. #### - -SHELL = /bin/sh - -OBJECTS = vacall.o misc.o structcpy.o - -all : $(OBJECTS) libvacall.a vacall.h $(srcdir)/vacall.3 $(srcdir)/vacall.html - -vacall.h : vacall.h.mingw32 - $(RM) vacall.h - $(LN) vacall.h.mingw32 vacall.h - -config.h : config.h.mingw32 - $(RM) config.h - $(LN) config.h.mingw32 config.h - -vacall.o : vacall-$(CPU).o - $(RM) vacall.o - $(LN) vacall-$(CPU).o vacall.o - -vacall-i386.o : vacall-i386.asm - $(CC) -c -x assembler vacall-i386.asm - -vacall-i386.asm : $(srcdir)/vacall-i386-macro.S - $(CPP) $(ASPFLAGS) $(srcdir)/vacall-i386-macro.S | grep -v '^ *#line' | grep -v '^#ident' | grep -v '^#' | sed -e 's,% ,%,g' -e 's,\. ,.,g' > vacall-i386.asm - -misc.o : $(srcdir)/misc.c vacall.h config.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/misc.c - -structcpy.o : $(srcdir)/structcpy.c - $(CC) $(CFLAGS) -c $(srcdir)/structcpy.c - -libvacall.a : $(OBJECTS) - $(RM) libvacall.a - $(AR) $(AR_FLAGS) libvacall.a $(OBJECTS) - -minitests.o : $(srcdir)/minitests.c vacall.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/minitests.c - -minitests.s : $(srcdir)/minitests.c vacall.h - $(CC) $(CFLAGS) $(INCLUDES) -S $(srcdir)/minitests.c - -minitests.exe : minitests.o $(OBJECTS) - $(CC) $(CFLAGS) minitests.o $(OBJECTS) -o minitests.exe - -check : all minitests.exe - minitests.exe > minitests.out - LC_ALL=C uniq -u < minitests.out > minitests.output.$(HOST) - -tests.o : $(srcdir)/tests.c vacall.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/tests.c - -tests.s : $(srcdir)/tests.c vacall.h - $(CC) $(CFLAGS) $(INCLUDES) -S $(srcdir)/tests.c - -tests.exe : tests.o $(OBJECTS) - $(CC) $(CFLAGS) tests.o $(OBJECTS) -o tests.exe - -extracheck : all tests.exe - tests.exe > tests.out - LC_ALL=C uniq -u < tests.out > tests.output.$(HOST) - -mostlyclean : clean - -clean : force - $(RM) *.o *.a core - $(RM) vacall-i386.asm - $(RM) minitests.o minitests.s minitests.exe minitests.out - $(RM) tests.o tests.s tests.exe tests.out - -distclean : clean - $(RM) config.status config.log config.cache Makefile vacall.h config.h tests.output.* - -maintainer-clean : distclean - -force : - DELETED ffcall/vacall/Makefile.msvc Index: ffcall/vacall/Makefile.msvc ================================================================== --- ffcall/vacall/Makefile.msvc +++ /dev/null @@ -1,133 +0,0 @@ -# -*- Makefile -*- for vacall - -#### Start of system configuration section. #### - -# Flags that can be set on the nmake command line: -# MFLAGS={-ML|-MT|-MD} for defining the compilation model -# MFLAGS=-ML (the default) Single-threaded, statically linked - libc.lib -# MFLAGS=-MT Multi-threaded, statically linked - libcmt.lib -# MFLAGS=-MD Multi-threaded, dynamically linked - msvcrt.lib -# DEBUG=1 for compiling with debugging information -# Note that nmake command line flags are automatically passed to subdirectory -# Makefiles. Therefore we don't need to pass them explicitly to subdirectory -# Makefiles, but the subdirectory Makefiles need to have the same defaults. -# Building as a DLL not supported yet. -DLL=0 -!if !defined(DEBUG) -DEBUG=0 -!endif -!if !defined(MFLAGS) -!if !$(DLL) -MFLAGS= -!else -MFLAGS=-MD -!endif -!endif - -!if $(DEBUG) -OPTIMFLAGS = -Od -Z7 -!else -OPTIMFLAGS = -D_NDEBUG -O1 -!endif - -HOST = i386-pc-win32-msvc -CPU = i386 - -# Directories used by "make": -srcdir = . - -# Directories used by "make install": -prefix = /usr/local -local_prefix = /usr/local -exec_prefix = $(prefix) -libdir = $(exec_prefix)/lib -includedir = $(prefix)/include -mandir = $(prefix)/man - -# Programs used by "make": -CC = cl -CFLAGS = $(MFLAGS) $(OPTIMFLAGS) -CPP = cl -E -INCLUDES = -I. -I$(srcdir) -AR = lib -AR_FLAGS = /out: -MV = ren -LN = copy -RM = -del - -# Programs used by "make install": -INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_DATA = @INSTALL_DATA@ - -#### End of system configuration section. #### - -SHELL = /bin/sh - -OBJECTS = vacall.obj misc.obj structcpy.obj - -all : $(OBJECTS) vacall.lib vacall.h $(srcdir)/vacall.3 $(srcdir)/vacall.html - -vacall.h : vacall.h.msvc - $(RM) vacall.h - $(LN) vacall.h.msvc vacall.h - -config.h : config.h.msvc - $(RM) config.h - $(LN) config.h.msvc config.h - -vacall.obj : vacall-$(CPU).obj - $(RM) vacall.obj - $(LN) vacall-$(CPU).obj vacall.obj - -vacall-i386.obj : $(srcdir)/vacall-i386-msvc.c vacall.h - $(RM) vacall-i386.obj - $(CC) -c $(srcdir)/vacall-i386-msvc.c /Fovacall-i386.obj - -misc.obj : $(srcdir)/misc.c vacall.h config.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/misc.c - -structcpy.obj : $(srcdir)/structcpy.c - $(CC) $(CFLAGS) -c $(srcdir)/structcpy.c - -!if !$(DLL) -vacall.lib : $(OBJECTS) - $(RM) vacall.lib - $(AR) $(AR_FLAGS)vacall.lib $(OBJECTS) -!else -# vacall.dll and vacall.lib are created together. -vacall.lib : $(OBJECTS) - $(CC) $(MFLAGS) -LD $(OBJECTS) -!endif - -tests.obj : $(srcdir)/tests.c vacall.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/tests.c - -tests.s : $(srcdir)/tests.c vacall.h - $(CC) $(CFLAGS) $(INCLUDES) -c $(srcdir)/tests.c /FAs /Fatests.s - -tests.exe : tests.obj vacall.lib - $(CC) $(CFLAGS) tests.obj vacall.lib /Fetests.exe - -uniq-u.exe : $(srcdir)/uniq-u.c - $(CC) $(CFLAGS) $(srcdir)/uniq-u.c -Feuniq-u.exe - $(RM) uniq-u.obj - -check : all tests.exe uniq-u.exe - tests.exe > tests.out - uniq-u < tests.out > tests.output.$(HOST) - -mostlyclean : clean - -clean : force - $(RM) *.obj *.lib *.exp *.dll core - $(RM) vacall-i386.s - $(RM) tests.obj tests.s tests.exe uniq-u.exe tests.out - -distclean : clean - $(RM) config.status config.log config.cache Makefile vacall.h config.h tests.output.* - -maintainer-clean : distclean - -force : - DELETED ffcall/vacall/PLATFORMS Index: ffcall/vacall/PLATFORMS ================================================================== --- ffcall/vacall/PLATFORMS +++ /dev/null @@ -1,26 +0,0 @@ -Supported CPUs: (Put the GNU config.guess values here.) - i386 i486-unknown-linux (gcc), - i386-unknown-sysv4.0 (gcc, /usr/bin/cc, /usr/ucb/cc), - i386-pc-solaris2.6 (gcc), - i486-unknown-sco3.2v4.2 (gcc, cc -Of), i386-pc-cygwin32 (gcc), - i386-pc-win32 (msvc4, msvc5) - m68k m68k-next-nextstep3 (cc), m68k-sun-sunos4.0 (cc), - m68k-unknown-linux (gcc) - mips mips-sgi-irix4.0.5 (gcc, cc -ansi, cc -D__STDC__, cc -cckr) - mips-sgi-irix5.2 (gcc, cc -ansi, cc -D__STDC__, cc -cckr), - mips-sgi-irix5.2 (gcc, cc -ansi, cc -D__STDC__, cc -cckr), - mips-sgi-irix6.2 (cc -32), - mips-sgi-irix6.4 (cc -32, cc -n32, cc -64) - sparc sparc-sun-sunos4.1.1 (gcc, cc), sparc-sun-solaris2.3 (gcc), - sparc-sun-solaris2.4 (gcc, cc) - alpha alpha-dec-osf3.0 (gcc, cc), alpha-dec-osf4.0 (gcc, cc) - hppa hppa1.0-hp-hpux8.00 (gcc, cc), hppa1.1-hp-hpux9.05 (cc), - hppa1.1-hp-hpux10.01 (cc), hppa2.0-hp-hpux10.20 (cc +DA1.1) - arm -- untested - rs6000 rs6000-ibm-aix3.2.5 (gcc, c89, xlc), powerpc-ibm-aix4.1.4.0 (cc), - powerpc-unknown-linux (gcc), powerpc-apple-darwin6.8 (gcc) - m88k -- untested - convex -- untested - ia64 ia64-unknown-linux (gcc) - x86_64 x86_64-suse-linux (gcc) - DELETED ffcall/vacall/README Index: ffcall/vacall/README ================================================================== --- ffcall/vacall/README +++ /dev/null @@ -1,64 +0,0 @@ -vacall - C functions called with variable arguments - -This library allows C functions to be called with variable arguments and -to return variable return values. This is much like the varargs(3) facility, -but also allows the return value to be specified at run time. - -A typical use is the implementation of call-back functions in embedded -interpreters. - - -Installation instructions: - - ./configure - make - make check - make install - - -Files in this package: - - Documentation: - - README this text - COPYING free software license - PLATFORMS list of supported platforms - vacall.3 manual page in Unix man format - vacall.man manual page - vacall.html manual page in HTML format - - Source: - - vacall.h.in master for main include file vacall.h - vacall-*.c source for the interface function - vacall-*.[sS] its translation to assembly language - misc.c auxiliary functions - tests.c test program - - Installation: - - configure configuration script - configure.in autoconf-2.12 source for the configuration script - ../autoconf/* auxiliary configuration scripts - Makefile.in Makefile master - config.h.in config.h master - - Porting: - - Makefile.devel developer's Makefile - underscore.h used to build the *.S files - - -Copyright notice: - -Copyright 1995 Bruno Haible, - -This is free software distributed under the GNU General Public Licence -described in the file COPYING. Contact the author if you don't have this -or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, -on this software. - - -Bruno Haible - - DELETED ffcall/vacall/asmarm.h Index: ffcall/vacall/asmarm.h ================================================================== --- ffcall/vacall/asmarm.h +++ /dev/null @@ -1,20 +0,0 @@ -// Assembly language support for arm CPU. -// Bruno Haible 29.5.1999 - -#ifdef ASM_UNDERSCORE -#ifdef __STDC__ -#define C(entrypoint) _##entrypoint -#else -#define C(entrypoint) _/**/entrypoint -#endif -#else -#define C(entrypoint) entrypoint -#endif - -// When assembly language code is compiled into a shared library, ELF linkers -// need to know which symbols are functions. -#if defined(__NetBSD__) -#define DECLARE_FUNCTION(name) .type C(name),%function -#else -#define DECLARE_FUNCTION(name) -#endif DELETED ffcall/vacall/asmarm.sh Index: ffcall/vacall/asmarm.sh ================================================================== --- ffcall/vacall/asmarm.sh +++ /dev/null @@ -1,35 +0,0 @@ -#!/bin/sh -# Translate the assembler syntax of arm assembler programs -# Usage: asmarm < riscix-asm-file > portable-asm-file -# The portable-asm-file has to be -# 1. preprocessed, -# 2. grep -v '^ *#line' | grep -v '^#' -# 3. sed -e 's,% ,%,g' -e 's,//,@,g' -e 's,\$,#,g' - -tmpscript1=sed$$tmp1 -tmpscript2=sed$$tmp2 -tmpremove='rm -f $tmpscript1 $tmpscript2' -trap "$tmpremove" 1 2 15 - -cat > $tmpscript1 << \EOF -# ----------- Remove gcc self-identification -/gcc2_compiled/d -/gnu_compiled_c/d -EOF - -cat > $tmpscript2 << \EOF -# ----------- Hide comments, to avoid trouble in preprocessing -s,@,//,g -# ----------- Turn # into $, to avoid trouble in preprocessing -s,#,\$,g -# ----------- Declare global symbols as functions (we have no variables) -s/\.global _\([A-Za-z0-9_]*\)$/.global _\1\ - DECLARE_FUNCTION(\1)/ -# ----------- Global symbols depends on ASM_UNDERSCORE -s/_\([A-Za-z0-9_:]*\)/C(\1)/ -EOF - -sed -f $tmpscript1 | \ -sed -f $tmpscript2 - -eval "$tmpremove" DELETED ffcall/vacall/asmi386.h Index: ffcall/vacall/asmi386.h ================================================================== --- ffcall/vacall/asmi386.h +++ /dev/null @@ -1,263 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -#ifdef _MSC_VER -#define C(entrypoint) entrypoint -#define L(label) L##label -#else -#ifdef ASM_UNDERSCORE -#define C(entrypoint) _##entrypoint -#define L(label) L##label -#else -#define C(entrypoint) entrypoint -#define L(label) .L##label -#endif -#endif - - - - - -#ifdef _MSC_VER -#define INTEL_SYNTAX -#else - - - -#ifdef ASM_UNDERSCORE -#define BSD_SYNTAX -#else -#define ELF_SYNTAX -#endif -#endif - -#if defined (BSD_SYNTAX) || defined (ELF_SYNTAX) -#define R(r) %r -#define NUM(n) $##n -#define ADDR(a) $##a -#define X1 -#define X2 -#define X4 -#define X8 -#define MEM(base)(R(base)) -#define MEM_DISP(base,displacement)displacement(R(base)) -#define MEM_INDEX(base,index)(R(base),R(index)) -#define MEM_SHINDEX(base,index,size)(R(base),R(index),size) -#define MEM_DISP_SHINDEX0(displacement,index,size)displacement(,R(index),size) -#define MEM_DISP_SHINDEX(base,displacement,index,size)displacement(R(base),R(index),size) -#define INDIR(value)*value -#define INSNCONC(mnemonic,size_suffix)mnemonic##size_suffix -#define INSN1(mnemonic,size_suffix,dst)INSNCONC(mnemonic,size_suffix) dst -#define INSN2(mnemonic,size_suffix,src,dst)INSNCONC(mnemonic,size_suffix) src,dst -#define INSN2MOVX(mnemonic,size_suffix,src,dst)INSNCONC(mnemonic,size_suffix##l) src,dst -#if defined(BSD_SYNTAX) || defined(COHERENT) -#define INSN2SHCL(mnemonic,size_suffix,src,dst)INSNCONC(mnemonic,size_suffix) R(cl),src,dst -#define REPZ repe ; -#else -#define INSN2SHCL(mnemonic,size_suffix,src,dst)INSNCONC(mnemonic,size_suffix) src,dst -#define REPZ repz ; -#endif -#define REP rep ; -#if defined(BSD_SYNTAX) && !(defined(__CYGWIN32__) || defined(__MINGW32__)) -#define ALIGN(log) .align log,0x90 -#endif -#if defined(ELF_SYNTAX) || defined(__CYGWIN32__) || defined(__MINGW32__) -#define ALIGN(log) .align 1< all-asm-file -# Warning! All comments are stripped. - -tmpscript01=sed$$tmp01 -tmpscript02=sed$$tmp02 -tmpscript03=sed$$tmp03 -tmpscript04=sed$$tmp04 -tmpscript05=sed$$tmp05 -tmpscript06=sed$$tmp06 -tmpscript07=sed$$tmp07 -tmpscript08=sed$$tmp08 -tmpscript09=sed$$tmp09 -tmpscript10=sed$$tmp10 -tmpscript11=sed$$tmp11 -tmpremove='rm -f $tmpscript01 $tmpscript02 $tmpscript03 $tmpscript04 $tmpscript05 $tmpscript06 $tmpscript07 $tmpscript08 $tmpscript09 $tmpscript10 $tmpscript11' -trap "$tmpremove" 1 2 15 - -cat > $tmpscript01 << \EOF -# ----------- Strip comments -s,# .*,, -s,[ ][ ]*$,, -EOF - -cat > $tmpscript02 << \EOF -# ----------- Remove #APP/#NO_APP lines, add a blank line at the end -/^#APP$/d -/^#NO_APP$/d -/gcc2_compiled/d -/gnu_compiled_c/d -EOF - -cat > $tmpscript03 << \EOF -# ----------- Global symbols depends on ASM_UNDERSCORE -s/_\([A-Za-z0-9_:]*\)/C(\1)/ -EOF - -cat > $tmpscript04 << \EOF -# ----------- Introduce macro syntax for operands -s/\([-+0-9A-Z_]\+\)[(]%\(e..\)[)]/MEM_DISP(\2,\1)/g -s/[(]%\(e..\)[)]/MEM(\1)/g -s/\([-+0-9A-Z_]\+\)[(],%\(e..\),\([0-9]*\)[)]/MEM_DISP_SHINDEX0(\1,\2,\3)/g -s/\([-+0-9A-Z_]\+\)[(]%\(e..\),%\(e..\),\([0-9]*\)[)]/MEM_DISP_SHINDEX(\2,\1,\3,\4)/g -s/[(]%\(e..\),%\(e..\),\([0-9]*\)[)]/MEM_SHINDEX(\1,\2,\3)/g -s/[(]%\(e..\),%\(e..\)[)]/MEM_INDEX(\1,\2)/g -EOF - -cat > $tmpscript05 << \EOF -# ----------- Introduce macro syntax for instructions -s/\(push\|pop\|mul\|div\|not\|neg\|inc\|dec\|fld\|fstp\)\(.\)\( \+\)\(.*\)$/INSN1(\1,\2 ,\4)/ -s/\(call\|jmp\|jc\|jnc\|je\|jne\|jz\|jnz\|ja\|jae\|jb\|jbe\|jl\|jge\|js\|jns\)\( \+\)\(.*\)$/INSN1(\1,_ ,\3)/ -s/\(movs\|movz\)\(.\)l\( \+\)\(.*\)$/INSN2MOVX(\1,\2 ,\4)/ -s/\(mov\|add\|sub\|adc\|sbb\|xor\|test\|cmp\|rcl\|rcr\|and\|or\|sar\|shr\|shl\|lea\)\(.\)\( \+\)\(.*\)$/INSN2(\1,\2 ,\4)/ -s/\(shld\|shrd\)\(.\)\( \+\)shcl\( \+\)\(.*\)$/INSN2SHCL(\1,\2 ,\5)/ -s/rep ;/REP/ -s/repz ;/REPZ/ -EOF - -cat > $tmpscript06 << \EOF -# ----------- Add size prefixes to memory references' \ -s/\([(]f[^(,]*,s.*\),MEM/\1,X4 MEM/g -s/\([(]f[^(,]*,l.*\),MEM/\1,X8 MEM/g -s/\([(][^(,]*,b.*\),MEM/\1,X1 MEM/g -s/\([(][^(,]*,w.*\),MEM/\1,X2 MEM/g -s/\([(][^(,]*,l.*\),MEM/\1,X4 MEM/g -EOF - -cat > $tmpscript07 << \EOF -# ----------- Introduce macro syntax for register names -s/%\(e..\)/R(\1)/g -s/%\(..\)/R(\1)/g -s/\$\([-0-9]*\)/NUM(\1)/g -EOF - -cat > $tmpscript08 << \EOF -# ----------- Treat table jumps (hairy) -# (Needed because the MSVC inline assembler does not have pseudo-ops. -# Note that we transform a table of absolute addresses with 4 bytes -# per entry into a table of absolute addresses with 8 bytes per entry.) -s/^ \.long \(.*\)$/#ifdef _MSC_VER\ - nop\ - nop\ - push \1\ -#else\ - .long \1\ -#endif/ -s/^ \(INSN1[(]jmp,_[^,]*,\)\*MEM_DISP_SHINDEX0[(]\([^,)]*\),\([^,)]*\),4[)][)]$/#ifdef _MSC_VER\ - INSN2(lea,l ,MEM_DISP_SHINDEX0(\2+8,\3,8),R(\3))\ - INSN2(mov,l ,X4 MEM_DISP(\3,-4),R(\3))\ - INSN1(jmp,_ ,INDIR(R(\3)))\ -#else\ - \1INDIR(MEM_DISP_SHINDEX0(\2,\3,4)))\ -#endif/ -EOF - -cat > $tmpscript09 << \EOF -# ----------- Treat indirect calls -s/\(INSN1[(]\(call\|jmp\),_[^,]*,\)\*\(R[(][^)]*[)]\)[)]$/\1INDIR(\3))/ -EOF - -cat > $tmpscript10 << \EOF -# ----------- Introduce macro syntax for assembler pseudo-ops -/\.file\([ ]\+\)/d -s/\.text/TEXT()/ -s/^\([^#]*\)\.align \(.*\)/\1ALIGN(\2)/ -s/\.globl\( \+\)\(.*\)$/GLOBL(\2)/ -s/^C(\([A-Za-z0-9_]*\):)/FUNBEGIN(\1)/ -# The next 5 lines add FUNEND() after each ret followed by an empty line -/[ ]ret *$/{ -n -/^$/s/^$/FUNEND()\ -/ -} -EOF - -cat > $tmpscript11 << \EOF -# ----------- Declare global symbols as functions (we have no variables) -s/GLOBL(C(\([A-Za-z0-9_]*\)))$/GLOBL(C(\1))\ - DECLARE_FUNCTION(\1)/ -EOF - -sed -f $tmpscript01 | \ -sed -f $tmpscript02 | \ -(cat - ; echo) | \ -(if [ $# = 1 -a "x$1" = "x-no-C" ] ; then cat - ; else sed -f $tmpscript03 ; fi) | \ -sed -f $tmpscript04 | \ -sed -f $tmpscript05 | \ -sed -f $tmpscript06 | \ -sed -f $tmpscript07 | \ -sed -f $tmpscript08 | \ -sed -f $tmpscript09 | \ -sed -f $tmpscript10 | \ -(if [ $# = 1 -a "x$1" = "x-no-C" ] ; then cat - ; else sed -f $tmpscript11 ; fi) - -eval "$tmpremove" - DELETED ffcall/vacall/asmm68k.h Index: ffcall/vacall/asmm68k.h ================================================================== --- ffcall/vacall/asmm68k.h +++ /dev/null @@ -1,22 +0,0 @@ -// Assembly language support for m68k CPU. -// Bruno Haible 29.5.1999 - -#ifdef ASM_UNDERSCORE -// SunOS, NetBSD, OpenBSD, Linux/a.out -#ifdef __STDC__ -#define C(entrypoint) _##entrypoint -#else -#define C(entrypoint) _/**/entrypoint -#endif -#else -// SVR4, A/UX, AMIX, Atari, Linux/ELF -#define C(entrypoint) entrypoint -#endif - -// When assembly language code is compiled into a shared library, ELF linkers -// need to know which symbols are functions. -#if defined(__NetBSD__) || defined(__OpenBSD__) || defined(__ELF__) || defined(__svr4__) -#define DECLARE_FUNCTION(name) .type C(name),@function -#else -#define DECLARE_FUNCTION(name) -#endif DELETED ffcall/vacall/asmm68k.sh Index: ffcall/vacall/asmm68k.sh ================================================================== --- ffcall/vacall/asmm68k.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/bin/sh -# Translate the assembler syntax of m68k assembler programs -# Usage: asmm68k < sunos-asm-file > portable-asm-file -# The portable-asm-file has to be -# 1. preprocessed, -# 2. grep -v '^ *#line' | grep -v '^#' -# 3. sed -e 's,% ,%,g' -e 's,//.*$,,' - -tmpscript1=sed$$tmp1 -tmpscript2=sed$$tmp2 -tmpremove='rm -f $tmpscript1 $tmpscript2' -trap "$tmpremove" 1 2 15 - -cat > $tmpscript1 << \EOF -# ----------- Remove #APP/#NO_APP lines -/^#APP$/d -/^#NO_APP$/d -# ----------- Remove gcc self-identification -/gcc2_compiled/d -/gnu_compiled_c/d -EOF - -cat > $tmpscript2 << \EOF -# ----------- Prefix register names with $, to be turned into % later -s/,/, /g -s/\([^A-Za-z0-9_]\)\([ad][0-7]\|sp\|fp[0-7]\)\([^A-Za-z0-9_]\)/\1$\2\3/g -s/\([^A-Za-z0-9_]\)\([ad][0-7]\|sp\|fp[0-7]\)$/\1$\2/g -s/, /,/g -# ----------- Declare global symbols as functions (we have no variables) -s/\.globl _\([A-Za-z0-9_]*\)$/.globl _\1\ - DECLARE_FUNCTION(\1)/ -# ----------- Global symbols depends on ASM_UNDERSCORE -s/_\([A-Za-z0-9_:]*\)/C(\1)/ -EOF - -sed -f $tmpscript1 | \ -sed -f $tmpscript2 - -eval "$tmpremove" DELETED ffcall/vacall/asmmips.h Index: ffcall/vacall/asmmips.h ================================================================== --- ffcall/vacall/asmmips.h +++ /dev/null @@ -1,10 +0,0 @@ -// Assembly language support for mips CPU. -// Bruno Haible 29.5.1999 - -// When assembly language code is compiled into a shared library, ELF linkers -// need to know which symbols are functions. -#if defined(__GNU__) || defined(__NetBSD__) -#define DECLARE_FUNCTION(name) .type name,@function -#else -#define DECLARE_FUNCTION(name) -#endif DELETED ffcall/vacall/asmmips.sh Index: ffcall/vacall/asmmips.sh ================================================================== --- ffcall/vacall/asmmips.sh +++ /dev/null @@ -1,31 +0,0 @@ -#!/bin/sh -# Translate the assembler syntax of mips assembler programs -# Usage: asmmips < irix-asm-file > portable-asm-file -# The portable-asm-file has to be -# 1. preprocessed, -# 2. grep -v '^ *#line' | grep -v '^#' -# 3. sed -e 's,% ,%,g' -e 's,//.*$,,' - -tmpscript1=sed$$tmp1 -tmpscript2=sed$$tmp2 -tmpremove='rm -f $tmpscript1 $tmpscript2' -trap "$tmpremove" 1 2 15 - -cat > $tmpscript1 << \EOF -# ----------- Remove gcc self-identification -/gcc2_compiled/d -/gnu_compiled_c/d -EOF - -cat > $tmpscript2 << \EOF -# ----------- Remove comments, they would cause trouble in preprocessing -s,#.*$,, -# ----------- Declare global symbols as functions (we have no variables) -s/\.globl \([A-Za-z0-9_]*\)$/.globl \1\ - DECLARE_FUNCTION(\1)/ -EOF - -sed -f $tmpscript1 | \ -sed -f $tmpscript2 - -eval "$tmpremove" DELETED ffcall/vacall/asmsparc.h Index: ffcall/vacall/asmsparc.h ================================================================== --- ffcall/vacall/asmsparc.h +++ /dev/null @@ -1,29 +0,0 @@ -// Assembly language support for sparc CPU. -// Bruno Haible 29.5.1999 - -#ifdef ASM_UNDERSCORE -// SunOS4, Linux/a.out -#ifdef __STDC__ -#define C(entrypoint) _##entrypoint -#else -#define C(entrypoint) _/**/entrypoint -#endif -#else -// Solaris, Linux/ELF -#define C(entrypoint) entrypoint -#endif - -// When assembly language code is compiled into a shared library, ELF linkers -// need to know which symbols are functions. -#if defined(__NetBSD__) || defined(__OpenBSD__) -#define DECLARE_FUNCTION(name) .type C(name),@function -#elif defined(__svr4__) || defined(__ELF__) -// Solaris, Linux/ELF -// Some preprocessors keep the backslash in place, some don't. -// Some complain about the # being not in front of an ANSI C macro. -// Therefore we use a dollar, which will be sed-converted to # later. -#define DECLARE_FUNCTION(name) .type C(name),$function -#else -// SunOS4, Linux/a.out -#define DECLARE_FUNCTION(name) -#endif DELETED ffcall/vacall/asmsparc.sh Index: ffcall/vacall/asmsparc.sh ================================================================== --- ffcall/vacall/asmsparc.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/sh -# Translate the assembler syntax of sparc assembler programs -# Usage: asmsparc < sunos4-asm-file > portable-asm-file -# The portable-asm-file has to be -# 1. preprocessed, -# 2. grep -v '^ *#line' | grep -v '^#' -# 3. sed -e 's,% ,%,g' -e 's,//.*$,,' -e 's,\$,#,g' - -tmpscript1=sed$$tmp1 -tmpscript2=sed$$tmp2 -tmpremove='rm -f $tmpscript1 $tmpscript2' -trap "$tmpremove" 1 2 15 - -cat > $tmpscript1 << \EOF -# ----------- Remove gcc self-identification -/gcc2_compiled/d -/gnu_compiled_c/d -EOF - -cat > $tmpscript2 << \EOF -# ----------- Turn # into $, to avoid trouble in preprocessing -s,#,\$,g -# ----------- Declare global symbols as functions (we have no variables) -s/\.global _\([A-Za-z0-9_]*\)$/.global _\1\ - DECLARE_FUNCTION(\1)/ -# ----------- Global symbols depends on ASM_UNDERSCORE -s/_\([A-Za-z0-9_:]*\)/C(\1)/ -EOF - -sed -f $tmpscript1 | \ -sed -f $tmpscript2 - -eval "$tmpremove" DELETED ffcall/vacall/asmsparc64.sh Index: ffcall/vacall/asmsparc64.sh ================================================================== --- ffcall/vacall/asmsparc64.sh +++ /dev/null @@ -1,31 +0,0 @@ -#!/bin/sh -# Translate the assembler syntax of sparc64 assembler programs -# Usage: asmsparc < sparclinux-asm-file > portable-asm-file -# The portable-asm-file has to be -# 1. preprocessed, -# 2. grep -v '^ *#line' | grep -v '^#' -# 3. sed -e 's,% ,%,g' -e 's,//.*$,,' -e 's,\$,#,g' - -tmpscript1=sed$$tmp1 -tmpscript2=sed$$tmp2 -tmpremove='rm -f $tmpscript1 $tmpscript2' -trap "$tmpremove" 1 2 15 - -cat > $tmpscript1 << \EOF -# ----------- Remove gcc self-identification -/gcc2_compiled/d -/gnu_compiled_c/d -EOF - -cat > $tmpscript2 << \EOF -# ----------- Turn # into $, to avoid trouble in preprocessing -s,#,\$,g -# ----------- Declare global symbols as functions (we have no variables) -s/\.global \([A-Za-z0-9_]*\)$/.global \1\ - DECLARE_FUNCTION(\1)/ -EOF - -sed -f $tmpscript1 | \ -sed -f $tmpscript2 - -eval "$tmpremove" DELETED ffcall/vacall/config.h.in Index: ffcall/vacall/config.h.in ================================================================== --- ffcall/vacall/config.h.in +++ /dev/null @@ -1,11 +0,0 @@ -/* Bruno Haible 11.2.1995 */ - -/* - * Copyright 1995-2001 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - DELETED ffcall/vacall/config.h.mingw32 Index: ffcall/vacall/config.h.mingw32 ================================================================== --- ffcall/vacall/config.h.mingw32 +++ /dev/null @@ -1,11 +0,0 @@ -/* Bruno Haible 11.2.1995 */ - -/* - * Copyright 1995-2001 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - DELETED ffcall/vacall/config.h.msvc Index: ffcall/vacall/config.h.msvc ================================================================== --- ffcall/vacall/config.h.msvc +++ /dev/null @@ -1,11 +0,0 @@ -/* Bruno Haible 11.2.1995 */ - -/* - * Copyright 1995-2001 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - DELETED ffcall/vacall/configure Index: ffcall/vacall/configure ================================================================== --- ffcall/vacall/configure +++ /dev/null @@ -1,4644 +0,0 @@ -#! /bin/sh -# Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.59. -# -# Copyright (C) 2003 Free Software Foundation, Inc. -# This configure script is free software; the Free Software Foundation -# gives unlimited permission to copy, distribute and modify it. -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## - -# Be Bourne compatible -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' -elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then - set -o posix -fi -DUALCASE=1; export DUALCASE # for MKS sh - -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - - -# Work around bugs in pre-3.0 UWIN ksh. -$as_unset ENV MAIL MAILPATH -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -for as_var in \ - LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ - LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ - LC_TELEPHONE LC_TIME -do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var - else - $as_unset $as_var - fi -done - -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - - -# Name of the executable. -as_me=`$as_basename "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)$' \| \ - . : '\(.\)' 2>/dev/null || -echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } - /^X\/\(\/\/\)$/{ s//\1/; q; } - /^X\/\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - - -# PATH needs CR, and LINENO needs CR and PATH. -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" || { - # Find who we are. Look in the path if we contain no path at all - # relative or not. - case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done - - ;; - esac - # We did not find ourselves, most probably we were run as `sh COMMAND' - # in which case we are not to be found in the path. - if test "x$as_myself" = x; then - as_myself=$0 - fi - if test ! -f "$as_myself"; then - { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2 - { (exit 1); exit 1; }; } - fi - case $CONFIG_SHELL in - '') - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for as_base in sh bash ksh sh5; do - case $as_dir in - /*) - if ("$as_dir/$as_base" -c ' - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then - $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } - $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } - CONFIG_SHELL=$as_dir/$as_base - export CONFIG_SHELL - exec "$CONFIG_SHELL" "$0" ${1+"$@"} - fi;; - esac - done -done -;; - esac - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line before each line; the second 'sed' does the real - # work. The second script uses 'N' to pair each line-number line - # with the numbered line, and appends trailing '-' during - # substitution so that $LINENO is not a special case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) - sed '=' <$as_myself | - sed ' - N - s,$,-, - : loop - s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, - t loop - s,-$,, - s,^['$as_cr_digits']*\n,, - ' >$as_me.lineno && - chmod +x $as_me.lineno || - { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensible to this). - . ./$as_me.lineno - # Exit status is that of the last command. - exit -} - - -case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in - *c*,-n*) ECHO_N= ECHO_C=' -' ECHO_T=' ' ;; - *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; - *) ECHO_N= ECHO_C='\c' ECHO_T= ;; -esac - -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -rm -f conf$$ conf$$.exe conf$$.file -echo >conf$$.file -if ln -s conf$$.file conf$$ 2>/dev/null; then - # We could just check for DJGPP; but this test a) works b) is more generic - # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). - if test -f conf$$.exe; then - # Don't use ln at all; we don't have any links - as_ln_s='cp -p' - else - as_ln_s='ln -s' - fi -elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.file - -if mkdir -p . 2>/dev/null; then - as_mkdir_p=: -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -as_executable_p="test -f" - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -# IFS -# We need space, tab and new line, in precisely that order. -as_nl=' -' -IFS=" $as_nl" - -# CDPATH. -$as_unset CDPATH - - -# Name of the host. -# hostname on some systems (SVR3.2, Linux) returns a bogus exit status, -# so uname gets run too. -ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` - -exec 6>&1 - -# -# Initializations. -# -ac_default_prefix=/usr/local -ac_config_libobj_dir=. -cross_compiling=no -subdirs= -MFLAGS= -MAKEFLAGS= -SHELL=${CONFIG_SHELL-/bin/sh} - -# Maximum number of lines to put in a shell here document. -# This variable seems obsolete. It should probably be removed, and -# only ac_max_sed_lines should be used. -: ${ac_max_here_lines=38} - -# Identity of this package. -PACKAGE_NAME= -PACKAGE_TARNAME= -PACKAGE_VERSION= -PACKAGE_STRING= -PACKAGE_BUGREPORT= - -ac_unique_file="vacall.h.in" -# Factoring default headers for most tests. -ac_includes_default="\ -#include -#if HAVE_SYS_TYPES_H -# include -#endif -#if HAVE_SYS_STAT_H -# include -#endif -#if STDC_HEADERS -# include -# include -#else -# if HAVE_STDLIB_H -# include -# endif -#endif -#if HAVE_STRING_H -# if !STDC_HEADERS && HAVE_MEMORY_H -# include -# endif -# include -#endif -#if HAVE_STRINGS_H -# include -#endif -#if HAVE_INTTYPES_H -# include -#else -# if HAVE_STDINT_H -# include -# endif -#endif -#if HAVE_UNISTD_H -# include -#endif" - -ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP EGREP CC_GCC GCC_X_NONE AS_UNDERSCORE RANLIB SET_MAKE INSTALL INSTALL_PROGRAM INSTALL_DATA CP LN build build_cpu build_vendor build_os host host_cpu host_vendor host_os LIBOBJS LTLIBOBJS' -ac_subst_files='' - -# Initialize some variables set by options. -ac_init_help= -ac_init_version=false -# The variables have the same names as the options, with -# dashes changed to underlines. -cache_file=/dev/null -exec_prefix=NONE -no_create= -no_recursion= -prefix=NONE -program_prefix=NONE -program_suffix=NONE -program_transform_name=s,x,x, -silent= -site= -srcdir= -verbose= -x_includes=NONE -x_libraries=NONE - -# Installation directory options. -# These are left unexpanded so users can "make install exec_prefix=/foo" -# and all the variables that are supposed to be based on exec_prefix -# by default will actually change. -# Use braces instead of parens because sh, perl, etc. also accept them. -bindir='${exec_prefix}/bin' -sbindir='${exec_prefix}/sbin' -libexecdir='${exec_prefix}/libexec' -datadir='${prefix}/share' -sysconfdir='${prefix}/etc' -sharedstatedir='${prefix}/com' -localstatedir='${prefix}/var' -libdir='${exec_prefix}/lib' -includedir='${prefix}/include' -oldincludedir='/usr/include' -infodir='${prefix}/info' -mandir='${prefix}/man' - -ac_prev= -for ac_option -do - # If the previous option needs an argument, assign it. - if test -n "$ac_prev"; then - eval "$ac_prev=\$ac_option" - ac_prev= - continue - fi - - ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'` - - # Accept the important Cygnus configure options, so we can diagnose typos. - - case $ac_option in - - -bindir | --bindir | --bindi | --bind | --bin | --bi) - ac_prev=bindir ;; - -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) - bindir=$ac_optarg ;; - - -build | --build | --buil | --bui | --bu) - ac_prev=build_alias ;; - -build=* | --build=* | --buil=* | --bui=* | --bu=*) - build_alias=$ac_optarg ;; - - -cache-file | --cache-file | --cache-fil | --cache-fi \ - | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) - ac_prev=cache_file ;; - -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ - | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) - cache_file=$ac_optarg ;; - - --config-cache | -C) - cache_file=config.cache ;; - - -datadir | --datadir | --datadi | --datad | --data | --dat | --da) - ac_prev=datadir ;; - -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \ - | --da=*) - datadir=$ac_optarg ;; - - -disable-* | --disable-*) - ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid feature name: $ac_feature" >&2 - { (exit 1); exit 1; }; } - ac_feature=`echo $ac_feature | sed 's/-/_/g'` - eval "enable_$ac_feature=no" ;; - - -enable-* | --enable-*) - ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid feature name: $ac_feature" >&2 - { (exit 1); exit 1; }; } - ac_feature=`echo $ac_feature | sed 's/-/_/g'` - case $ac_option in - *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; - *) ac_optarg=yes ;; - esac - eval "enable_$ac_feature='$ac_optarg'" ;; - - -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ - | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ - | --exec | --exe | --ex) - ac_prev=exec_prefix ;; - -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ - | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ - | --exec=* | --exe=* | --ex=*) - exec_prefix=$ac_optarg ;; - - -gas | --gas | --ga | --g) - # Obsolete; use --with-gas. - with_gas=yes ;; - - -help | --help | --hel | --he | -h) - ac_init_help=long ;; - -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) - ac_init_help=recursive ;; - -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) - ac_init_help=short ;; - - -host | --host | --hos | --ho) - ac_prev=host_alias ;; - -host=* | --host=* | --hos=* | --ho=*) - host_alias=$ac_optarg ;; - - -includedir | --includedir | --includedi | --included | --include \ - | --includ | --inclu | --incl | --inc) - ac_prev=includedir ;; - -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ - | --includ=* | --inclu=* | --incl=* | --inc=*) - includedir=$ac_optarg ;; - - -infodir | --infodir | --infodi | --infod | --info | --inf) - ac_prev=infodir ;; - -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) - infodir=$ac_optarg ;; - - -libdir | --libdir | --libdi | --libd) - ac_prev=libdir ;; - -libdir=* | --libdir=* | --libdi=* | --libd=*) - libdir=$ac_optarg ;; - - -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ - | --libexe | --libex | --libe) - ac_prev=libexecdir ;; - -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ - | --libexe=* | --libex=* | --libe=*) - libexecdir=$ac_optarg ;; - - -localstatedir | --localstatedir | --localstatedi | --localstated \ - | --localstate | --localstat | --localsta | --localst \ - | --locals | --local | --loca | --loc | --lo) - ac_prev=localstatedir ;; - -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ - | --localstate=* | --localstat=* | --localsta=* | --localst=* \ - | --locals=* | --local=* | --loca=* | --loc=* | --lo=*) - localstatedir=$ac_optarg ;; - - -mandir | --mandir | --mandi | --mand | --man | --ma | --m) - ac_prev=mandir ;; - -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) - mandir=$ac_optarg ;; - - -nfp | --nfp | --nf) - # Obsolete; use --without-fp. - with_fp=no ;; - - -no-create | --no-create | --no-creat | --no-crea | --no-cre \ - | --no-cr | --no-c | -n) - no_create=yes ;; - - -no-recursion | --no-recursion | --no-recursio | --no-recursi \ - | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) - no_recursion=yes ;; - - -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ - | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ - | --oldin | --oldi | --old | --ol | --o) - ac_prev=oldincludedir ;; - -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ - | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ - | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) - oldincludedir=$ac_optarg ;; - - -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) - ac_prev=prefix ;; - -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) - prefix=$ac_optarg ;; - - -program-prefix | --program-prefix | --program-prefi | --program-pref \ - | --program-pre | --program-pr | --program-p) - ac_prev=program_prefix ;; - -program-prefix=* | --program-prefix=* | --program-prefi=* \ - | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) - program_prefix=$ac_optarg ;; - - -program-suffix | --program-suffix | --program-suffi | --program-suff \ - | --program-suf | --program-su | --program-s) - ac_prev=program_suffix ;; - -program-suffix=* | --program-suffix=* | --program-suffi=* \ - | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) - program_suffix=$ac_optarg ;; - - -program-transform-name | --program-transform-name \ - | --program-transform-nam | --program-transform-na \ - | --program-transform-n | --program-transform- \ - | --program-transform | --program-transfor \ - | --program-transfo | --program-transf \ - | --program-trans | --program-tran \ - | --progr-tra | --program-tr | --program-t) - ac_prev=program_transform_name ;; - -program-transform-name=* | --program-transform-name=* \ - | --program-transform-nam=* | --program-transform-na=* \ - | --program-transform-n=* | --program-transform-=* \ - | --program-transform=* | --program-transfor=* \ - | --program-transfo=* | --program-transf=* \ - | --program-trans=* | --program-tran=* \ - | --progr-tra=* | --program-tr=* | --program-t=*) - program_transform_name=$ac_optarg ;; - - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - silent=yes ;; - - -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) - ac_prev=sbindir ;; - -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ - | --sbi=* | --sb=*) - sbindir=$ac_optarg ;; - - -sharedstatedir | --sharedstatedir | --sharedstatedi \ - | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ - | --sharedst | --shareds | --shared | --share | --shar \ - | --sha | --sh) - ac_prev=sharedstatedir ;; - -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ - | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ - | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ - | --sha=* | --sh=*) - sharedstatedir=$ac_optarg ;; - - -site | --site | --sit) - ac_prev=site ;; - -site=* | --site=* | --sit=*) - site=$ac_optarg ;; - - -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) - ac_prev=srcdir ;; - -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) - srcdir=$ac_optarg ;; - - -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ - | --syscon | --sysco | --sysc | --sys | --sy) - ac_prev=sysconfdir ;; - -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ - | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) - sysconfdir=$ac_optarg ;; - - -target | --target | --targe | --targ | --tar | --ta | --t) - ac_prev=target_alias ;; - -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) - target_alias=$ac_optarg ;; - - -v | -verbose | --verbose | --verbos | --verbo | --verb) - verbose=yes ;; - - -version | --version | --versio | --versi | --vers | -V) - ac_init_version=: ;; - - -with-* | --with-*) - ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid package name: $ac_package" >&2 - { (exit 1); exit 1; }; } - ac_package=`echo $ac_package| sed 's/-/_/g'` - case $ac_option in - *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; - *) ac_optarg=yes ;; - esac - eval "with_$ac_package='$ac_optarg'" ;; - - -without-* | --without-*) - ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid package name: $ac_package" >&2 - { (exit 1); exit 1; }; } - ac_package=`echo $ac_package | sed 's/-/_/g'` - eval "with_$ac_package=no" ;; - - --x) - # Obsolete; use --with-x. - with_x=yes ;; - - -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ - | --x-incl | --x-inc | --x-in | --x-i) - ac_prev=x_includes ;; - -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ - | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) - x_includes=$ac_optarg ;; - - -x-libraries | --x-libraries | --x-librarie | --x-librari \ - | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) - ac_prev=x_libraries ;; - -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ - | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) - x_libraries=$ac_optarg ;; - - -*) { echo "$as_me: error: unrecognized option: $ac_option -Try \`$0 --help' for more information." >&2 - { (exit 1); exit 1; }; } - ;; - - *=*) - ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` - # Reject names that are not valid shell variable names. - expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid variable name: $ac_envvar" >&2 - { (exit 1); exit 1; }; } - ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` - eval "$ac_envvar='$ac_optarg'" - export $ac_envvar ;; - - *) - # FIXME: should be removed in autoconf 3.0. - echo "$as_me: WARNING: you should use --build, --host, --target" >&2 - expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && - echo "$as_me: WARNING: invalid host type: $ac_option" >&2 - : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option} - ;; - - esac -done - -if test -n "$ac_prev"; then - ac_option=--`echo $ac_prev | sed 's/_/-/g'` - { echo "$as_me: error: missing argument to $ac_option" >&2 - { (exit 1); exit 1; }; } -fi - -# Be sure to have absolute paths. -for ac_var in exec_prefix prefix -do - eval ac_val=$`echo $ac_var` - case $ac_val in - [\\/$]* | ?:[\\/]* | NONE | '' ) ;; - *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 - { (exit 1); exit 1; }; };; - esac -done - -# Be sure to have absolute paths. -for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \ - localstatedir libdir includedir oldincludedir infodir mandir -do - eval ac_val=$`echo $ac_var` - case $ac_val in - [\\/$]* | ?:[\\/]* ) ;; - *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 - { (exit 1); exit 1; }; };; - esac -done - -# There might be people who depend on the old broken behavior: `$host' -# used to hold the argument of --host etc. -# FIXME: To remove some day. -build=$build_alias -host=$host_alias -target=$target_alias - -# FIXME: To remove some day. -if test "x$host_alias" != x; then - if test "x$build_alias" = x; then - cross_compiling=maybe - echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host. - If a cross compiler is detected then cross compile mode will be used." >&2 - elif test "x$build_alias" != "x$host_alias"; then - cross_compiling=yes - fi -fi - -ac_tool_prefix= -test -n "$host_alias" && ac_tool_prefix=$host_alias- - -test "$silent" = yes && exec 6>/dev/null - - -# Find the source files, if location was not specified. -if test -z "$srcdir"; then - ac_srcdir_defaulted=yes - # Try the directory containing this script, then its parent. - ac_confdir=`(dirname "$0") 2>/dev/null || -$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$0" : 'X\(//\)[^/]' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$0" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - srcdir=$ac_confdir - if test ! -r $srcdir/$ac_unique_file; then - srcdir=.. - fi -else - ac_srcdir_defaulted=no -fi -if test ! -r $srcdir/$ac_unique_file; then - if test "$ac_srcdir_defaulted" = yes; then - { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2 - { (exit 1); exit 1; }; } - else - { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 - { (exit 1); exit 1; }; } - fi -fi -(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null || - { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2 - { (exit 1); exit 1; }; } -srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'` -ac_env_build_alias_set=${build_alias+set} -ac_env_build_alias_value=$build_alias -ac_cv_env_build_alias_set=${build_alias+set} -ac_cv_env_build_alias_value=$build_alias -ac_env_host_alias_set=${host_alias+set} -ac_env_host_alias_value=$host_alias -ac_cv_env_host_alias_set=${host_alias+set} -ac_cv_env_host_alias_value=$host_alias -ac_env_target_alias_set=${target_alias+set} -ac_env_target_alias_value=$target_alias -ac_cv_env_target_alias_set=${target_alias+set} -ac_cv_env_target_alias_value=$target_alias -ac_env_CC_set=${CC+set} -ac_env_CC_value=$CC -ac_cv_env_CC_set=${CC+set} -ac_cv_env_CC_value=$CC -ac_env_CFLAGS_set=${CFLAGS+set} -ac_env_CFLAGS_value=$CFLAGS -ac_cv_env_CFLAGS_set=${CFLAGS+set} -ac_cv_env_CFLAGS_value=$CFLAGS -ac_env_LDFLAGS_set=${LDFLAGS+set} -ac_env_LDFLAGS_value=$LDFLAGS -ac_cv_env_LDFLAGS_set=${LDFLAGS+set} -ac_cv_env_LDFLAGS_value=$LDFLAGS -ac_env_CPPFLAGS_set=${CPPFLAGS+set} -ac_env_CPPFLAGS_value=$CPPFLAGS -ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set} -ac_cv_env_CPPFLAGS_value=$CPPFLAGS -ac_env_CPP_set=${CPP+set} -ac_env_CPP_value=$CPP -ac_cv_env_CPP_set=${CPP+set} -ac_cv_env_CPP_value=$CPP - -# -# Report the --help message. -# -if test "$ac_init_help" = "long"; then - # Omit some internal or obsolete options to make the list less imposing. - # This message is too long to be a string in the A/UX 3.1 sh. - cat <<_ACEOF -\`configure' configures this package to adapt to many kinds of systems. - -Usage: $0 [OPTION]... [VAR=VALUE]... - -To assign environment variables (e.g., CC, CFLAGS...), specify them as -VAR=VALUE. See below for descriptions of some of the useful variables. - -Defaults for the options are specified in brackets. - -Configuration: - -h, --help display this help and exit - --help=short display options specific to this package - --help=recursive display the short help of all the included packages - -V, --version display version information and exit - -q, --quiet, --silent do not print \`checking...' messages - --cache-file=FILE cache test results in FILE [disabled] - -C, --config-cache alias for \`--cache-file=config.cache' - -n, --no-create do not create output files - --srcdir=DIR find the sources in DIR [configure dir or \`..'] - -_ACEOF - - cat <<_ACEOF -Installation directories: - --prefix=PREFIX install architecture-independent files in PREFIX - [$ac_default_prefix] - --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX - [PREFIX] - -By default, \`make install' will install all the files in -\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify -an installation prefix other than \`$ac_default_prefix' using \`--prefix', -for instance \`--prefix=\$HOME'. - -For better control, use the options below. - -Fine tuning of the installation directories: - --bindir=DIR user executables [EPREFIX/bin] - --sbindir=DIR system admin executables [EPREFIX/sbin] - --libexecdir=DIR program executables [EPREFIX/libexec] - --datadir=DIR read-only architecture-independent data [PREFIX/share] - --sysconfdir=DIR read-only single-machine data [PREFIX/etc] - --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] - --localstatedir=DIR modifiable single-machine data [PREFIX/var] - --libdir=DIR object code libraries [EPREFIX/lib] - --includedir=DIR C header files [PREFIX/include] - --oldincludedir=DIR C header files for non-gcc [/usr/include] - --infodir=DIR info documentation [PREFIX/info] - --mandir=DIR man documentation [PREFIX/man] -_ACEOF - - cat <<\_ACEOF - -System types: - --build=BUILD configure for building on BUILD [guessed] - --host=HOST cross-compile to build programs to run on HOST [BUILD] -_ACEOF -fi - -if test -n "$ac_init_help"; then - - cat <<\_ACEOF - -Some influential environment variables: - CC C compiler command - CFLAGS C compiler flags - LDFLAGS linker flags, e.g. -L if you have libraries in a - nonstandard directory - CPPFLAGS C/C++ preprocessor flags, e.g. -I if you have - headers in a nonstandard directory - CPP C preprocessor - -Use these variables to override the choices made by `configure' or to help -it to find libraries and programs with nonstandard names/locations. - -_ACEOF -fi - -if test "$ac_init_help" = "recursive"; then - # If there are subdirs, report their specific --help. - ac_popdir=`pwd` - for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue - test -d $ac_dir || continue - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac - - cd $ac_dir - # Check for guested configure; otherwise get Cygnus style configure. - if test -f $ac_srcdir/configure.gnu; then - echo - $SHELL $ac_srcdir/configure.gnu --help=recursive - elif test -f $ac_srcdir/configure; then - echo - $SHELL $ac_srcdir/configure --help=recursive - elif test -f $ac_srcdir/configure.ac || - test -f $ac_srcdir/configure.in; then - echo - $ac_configure --help - else - echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 - fi - cd $ac_popdir - done -fi - -test -n "$ac_init_help" && exit 0 -if $ac_init_version; then - cat <<\_ACEOF - -Copyright (C) 2003 Free Software Foundation, Inc. -This configure script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it. -_ACEOF - exit 0 -fi -exec 5>config.log -cat >&5 <<_ACEOF -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. - -It was created by $as_me, which was -generated by GNU Autoconf 2.59. Invocation command line was - - $ $0 $@ - -_ACEOF -{ -cat <<_ASUNAME -## --------- ## -## Platform. ## -## --------- ## - -hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` -uname -m = `(uname -m) 2>/dev/null || echo unknown` -uname -r = `(uname -r) 2>/dev/null || echo unknown` -uname -s = `(uname -s) 2>/dev/null || echo unknown` -uname -v = `(uname -v) 2>/dev/null || echo unknown` - -/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` -/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` - -/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` -/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` -/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` -hostinfo = `(hostinfo) 2>/dev/null || echo unknown` -/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` -/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` -/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` - -_ASUNAME - -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - echo "PATH: $as_dir" -done - -} >&5 - -cat >&5 <<_ACEOF - - -## ----------- ## -## Core tests. ## -## ----------- ## - -_ACEOF - - -# Keep a trace of the command line. -# Strip out --no-create and --no-recursion so they do not pile up. -# Strip out --silent because we don't want to record it for future runs. -# Also quote any args containing shell meta-characters. -# Make two passes to allow for proper duplicate-argument suppression. -ac_configure_args= -ac_configure_args0= -ac_configure_args1= -ac_sep= -ac_must_keep_next=false -for ac_pass in 1 2 -do - for ac_arg - do - case $ac_arg in - -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - continue ;; - *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) - ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - case $ac_pass in - 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;; - 2) - ac_configure_args1="$ac_configure_args1 '$ac_arg'" - if test $ac_must_keep_next = true; then - ac_must_keep_next=false # Got value, back to normal. - else - case $ac_arg in - *=* | --config-cache | -C | -disable-* | --disable-* \ - | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ - | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ - | -with-* | --with-* | -without-* | --without-* | --x) - case "$ac_configure_args0 " in - "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; - esac - ;; - -* ) ac_must_keep_next=true ;; - esac - fi - ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'" - # Get rid of the leading space. - ac_sep=" " - ;; - esac - done -done -$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; } -$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; } - -# When interrupted or exit'd, cleanup temporary files, and complete -# config.log. We remove comments because anyway the quotes in there -# would cause problems or look ugly. -# WARNING: Be sure not to use single quotes in there, as some shells, -# such as our DU 5.0 friend, will then `close' the trap. -trap 'exit_status=$? - # Save into config.log some information that might help in debugging. - { - echo - - cat <<\_ASBOX -## ---------------- ## -## Cache variables. ## -## ---------------- ## -_ASBOX - echo - # The following way of writing the cache mishandles newlines in values, -{ - (set) 2>&1 | - case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in - *ac_space=\ *) - sed -n \ - "s/'"'"'/'"'"'\\\\'"'"''"'"'/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p" - ;; - *) - sed -n \ - "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" - ;; - esac; -} - echo - - cat <<\_ASBOX -## ----------------- ## -## Output variables. ## -## ----------------- ## -_ASBOX - echo - for ac_var in $ac_subst_vars - do - eval ac_val=$`echo $ac_var` - echo "$ac_var='"'"'$ac_val'"'"'" - done | sort - echo - - if test -n "$ac_subst_files"; then - cat <<\_ASBOX -## ------------- ## -## Output files. ## -## ------------- ## -_ASBOX - echo - for ac_var in $ac_subst_files - do - eval ac_val=$`echo $ac_var` - echo "$ac_var='"'"'$ac_val'"'"'" - done | sort - echo - fi - - if test -s confdefs.h; then - cat <<\_ASBOX -## ----------- ## -## confdefs.h. ## -## ----------- ## -_ASBOX - echo - sed "/^$/d" confdefs.h | sort - echo - fi - test "$ac_signal" != 0 && - echo "$as_me: caught signal $ac_signal" - echo "$as_me: exit $exit_status" - } >&5 - rm -f core *.core && - rm -rf conftest* confdefs* conf$$* $ac_clean_files && - exit $exit_status - ' 0 -for ac_signal in 1 2 13 15; do - trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal -done -ac_signal=0 - -# confdefs.h avoids OS command line length limits that DEFS can exceed. -rm -rf conftest* confdefs.h -# AIX cpp loses on an empty file, so make sure it contains at least a newline. -echo >confdefs.h - -# Predefined preprocessor variables. - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_NAME "$PACKAGE_NAME" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_TARNAME "$PACKAGE_TARNAME" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_VERSION "$PACKAGE_VERSION" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_STRING "$PACKAGE_STRING" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" -_ACEOF - - -# Let the site file select an alternate cache file if it wants to. -# Prefer explicitly selected file to automatically selected ones. -if test -z "$CONFIG_SITE"; then - if test "x$prefix" != xNONE; then - CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" - else - CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" - fi -fi -for ac_site_file in $CONFIG_SITE; do - if test -r "$ac_site_file"; then - { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5 -echo "$as_me: loading site script $ac_site_file" >&6;} - sed 's/^/| /' "$ac_site_file" >&5 - . "$ac_site_file" - fi -done - -if test -r "$cache_file"; then - # Some versions of bash will fail to source /dev/null (special - # files actually), so we avoid doing that. - if test -f "$cache_file"; then - { echo "$as_me:$LINENO: loading cache $cache_file" >&5 -echo "$as_me: loading cache $cache_file" >&6;} - case $cache_file in - [\\/]* | ?:[\\/]* ) . $cache_file;; - *) . ./$cache_file;; - esac - fi -else - { echo "$as_me:$LINENO: creating cache $cache_file" >&5 -echo "$as_me: creating cache $cache_file" >&6;} - >$cache_file -fi - -# Check that the precious variables saved in the cache have kept the same -# value. -ac_cache_corrupted=false -for ac_var in `(set) 2>&1 | - sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do - eval ac_old_set=\$ac_cv_env_${ac_var}_set - eval ac_new_set=\$ac_env_${ac_var}_set - eval ac_old_val="\$ac_cv_env_${ac_var}_value" - eval ac_new_val="\$ac_env_${ac_var}_value" - case $ac_old_set,$ac_new_set in - set,) - { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 -echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,set) - { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5 -echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,);; - *) - if test "x$ac_old_val" != "x$ac_new_val"; then - { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 -echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} - { echo "$as_me:$LINENO: former value: $ac_old_val" >&5 -echo "$as_me: former value: $ac_old_val" >&2;} - { echo "$as_me:$LINENO: current value: $ac_new_val" >&5 -echo "$as_me: current value: $ac_new_val" >&2;} - ac_cache_corrupted=: - fi;; - esac - # Pass precious variables to config.status. - if test "$ac_new_set" = set; then - case $ac_new_val in - *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) - ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; - *) ac_arg=$ac_var=$ac_new_val ;; - esac - case " $ac_configure_args " in - *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. - *) ac_configure_args="$ac_configure_args '$ac_arg'" ;; - esac - fi -done -if $ac_cache_corrupted; then - { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5 -echo "$as_me: error: changes in the environment can compromise the build" >&2;} - { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 -echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;} - { (exit 1); exit 1; }; } -fi - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - - - - - - - - - - - - - - - - - - - ac_config_headers="$ac_config_headers vacall.h config.h" - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. -set dummy ${ac_tool_prefix}gcc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}gcc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$ac_cv_prog_CC"; then - ac_ct_CC=$CC - # Extract the first word of "gcc", so it can be a program name with args. -set dummy gcc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="gcc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - CC=$ac_ct_CC -else - CC="$ac_cv_prog_CC" -fi - -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. -set dummy ${ac_tool_prefix}cc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$ac_cv_prog_CC"; then - ac_ct_CC=$CC - # Extract the first word of "cc", so it can be a program name with args. -set dummy cc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - CC=$ac_ct_CC -else - CC="$ac_cv_prog_CC" -fi - -fi -if test -z "$CC"; then - # Extract the first word of "cc", so it can be a program name with args. -set dummy cc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else - ac_prog_rejected=no -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then - ac_prog_rejected=yes - continue - fi - ac_cv_prog_CC="cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -if test $ac_prog_rejected = yes; then - # We found a bogon in the path, so make sure we never use it. - set dummy $ac_cv_prog_CC - shift - if test $# != 0; then - # We chose a different compiler from the bogus one. - # However, it has the same basename, so the bogon will be chosen - # first if we set CC to just the basename; use the full file name. - shift - ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" - fi -fi -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - for ac_prog in cl - do - # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="$ac_tool_prefix$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - test -n "$CC" && break - done -fi -if test -z "$CC"; then - ac_ct_CC=$CC - for ac_prog in cl -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - test -n "$ac_ct_CC" && break -done - - CC=$ac_ct_CC -fi - -fi - - -test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH -See \`config.log' for more details." >&5 -echo "$as_me: error: no acceptable C compiler found in \$PATH -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } - -# Provide some information about the compiler. -echo "$as_me:$LINENO:" \ - "checking for C compiler version" >&5 -ac_compiler=`set X $ac_compile; echo $2` -{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version &5\"") >&5 - (eval $ac_compiler --version &5) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v &5\"") >&5 - (eval $ac_compiler -v &5) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V &5\"") >&5 - (eval $ac_compiler -V &5) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files a.out a.exe b.out" -# Try to create an executable without -o first, disregard a.out. -# It will help us diagnose broken compilers, and finding out an intuition -# of exeext. -echo "$as_me:$LINENO: checking for C compiler default output file name" >&5 -echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6 -ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` -if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5 - (eval $ac_link_default) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - # Find the output, starting from the most likely. This scheme is -# not robust to junk in `.', hence go to wildcards (a.*) only as a last -# resort. - -# Be careful to initialize this variable, since it used to be cached. -# Otherwise an old cache value of `no' led to `EXEEXT = no' in a Makefile. -ac_cv_exeext= -# b.out is created by i960 compilers. -for ac_file in a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out -do - test -f "$ac_file" || continue - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) - ;; - conftest.$ac_ext ) - # This is the source file. - ;; - [ab].out ) - # We found the default executable, but exeext='' is most - # certainly right. - break;; - *.* ) - ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - # FIXME: I believe we export ac_cv_exeext for Libtool, - # but it would be cool to find out if it's true. Does anybody - # maintain Libtool? --akim. - export ac_cv_exeext - break;; - * ) - break;; - esac -done -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -{ { echo "$as_me:$LINENO: error: C compiler cannot create executables -See \`config.log' for more details." >&5 -echo "$as_me: error: C compiler cannot create executables -See \`config.log' for more details." >&2;} - { (exit 77); exit 77; }; } -fi - -ac_exeext=$ac_cv_exeext -echo "$as_me:$LINENO: result: $ac_file" >&5 -echo "${ECHO_T}$ac_file" >&6 - -# Check the compiler produces executables we can run. If not, either -# the compiler is broken, or we cross compile. -echo "$as_me:$LINENO: checking whether the C compiler works" >&5 -echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6 -# FIXME: These cross compiler hacks should be removed for Autoconf 3.0 -# If not cross compiling, check that we can run a simple program. -if test "$cross_compiling" != yes; then - if { ac_try='./$ac_file' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cross_compiling=no - else - if test "$cross_compiling" = maybe; then - cross_compiling=yes - else - { { echo "$as_me:$LINENO: error: cannot run C compiled programs. -If you meant to cross compile, use \`--host'. -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot run C compiled programs. -If you meant to cross compile, use \`--host'. -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } - fi - fi -fi -echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 - -rm -f a.out a.exe conftest$ac_cv_exeext b.out -ac_clean_files=$ac_clean_files_save -# Check the compiler produces executables we can run. If not, either -# the compiler is broken, or we cross compile. -echo "$as_me:$LINENO: checking whether we are cross compiling" >&5 -echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6 -echo "$as_me:$LINENO: result: $cross_compiling" >&5 -echo "${ECHO_T}$cross_compiling" >&6 - -echo "$as_me:$LINENO: checking for suffix of executables" >&5 -echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6 -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - # If both `conftest.exe' and `conftest' are `present' (well, observable) -# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will -# work properly (i.e., refer to `conftest.exe'), while it won't with -# `rm'. -for ac_file in conftest.exe conftest conftest.*; do - test -f "$ac_file" || continue - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) ;; - *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - export ac_cv_exeext - break;; - * ) break;; - esac -done -else - { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } -fi - -rm -f conftest$ac_cv_exeext -echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5 -echo "${ECHO_T}$ac_cv_exeext" >&6 - -rm -f conftest.$ac_ext -EXEEXT=$ac_cv_exeext -ac_exeext=$EXEEXT -echo "$as_me:$LINENO: checking for suffix of object files" >&5 -echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6 -if test "${ac_cv_objext+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.o conftest.obj -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg ) ;; - *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` - break;; - esac -done -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot compute suffix of object files: cannot compile -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } -fi - -rm -f conftest.$ac_cv_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 -echo "${ECHO_T}$ac_cv_objext" >&6 -OBJEXT=$ac_cv_objext -ac_objext=$OBJEXT -echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 -echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6 -if test "${ac_cv_c_compiler_gnu+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ -#ifndef __GNUC__ - choke me -#endif - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_compiler_gnu=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_compiler_gnu=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -ac_cv_c_compiler_gnu=$ac_compiler_gnu - -fi -echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5 -echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6 -GCC=`test $ac_compiler_gnu = yes && echo yes` -ac_test_CFLAGS=${CFLAGS+set} -ac_save_CFLAGS=$CFLAGS -CFLAGS="-g" -echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 -echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6 -if test "${ac_cv_prog_cc_g+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_prog_cc_g=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_prog_cc_g=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 -echo "${ECHO_T}$ac_cv_prog_cc_g" >&6 -if test "$ac_test_CFLAGS" = set; then - CFLAGS=$ac_save_CFLAGS -elif test $ac_cv_prog_cc_g = yes; then - if test "$GCC" = yes; then - CFLAGS="-g -O2" - else - CFLAGS="-g" - fi -else - if test "$GCC" = yes; then - CFLAGS="-O2" - else - CFLAGS= - fi -fi -echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5 -echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6 -if test "${ac_cv_prog_cc_stdc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_cv_prog_cc_stdc=no -ac_save_CC=$CC -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include -#include -#include -/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ -struct buf { int x; }; -FILE * (*rcsopen) (struct buf *, struct stat *, int); -static char *e (p, i) - char **p; - int i; -{ - return p[i]; -} -static char *f (char * (*g) (char **, int), char **p, ...) -{ - char *s; - va_list v; - va_start (v,p); - s = g (p, va_arg (v,int)); - va_end (v); - return s; -} - -/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has - function prototypes and stuff, but not '\xHH' hex character constants. - These don't provoke an error unfortunately, instead are silently treated - as 'x'. The following induces an error, until -std1 is added to get - proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an - array size at least. It's necessary to write '\x00'==0 to get something - that's true only with -std1. */ -int osf4_cc_array ['\x00' == 0 ? 1 : -1]; - -int test (int i, double x); -struct s1 {int (*f) (int a);}; -struct s2 {int (*f) (double a);}; -int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); -int argc; -char **argv; -int -main () -{ -return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; - ; - return 0; -} -_ACEOF -# Don't try gcc -ansi; that turns off useful extensions and -# breaks some systems' header files. -# AIX -qlanglvl=ansi -# Ultrix and OSF/1 -std1 -# HP-UX 10.20 and later -Ae -# HP-UX older versions -Aa -D_HPUX_SOURCE -# SVR4 -Xc -D__EXTENSIONS__ -for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" -do - CC="$ac_save_CC $ac_arg" - rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_prog_cc_stdc=$ac_arg -break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext -done -rm -f conftest.$ac_ext conftest.$ac_objext -CC=$ac_save_CC - -fi - -case "x$ac_cv_prog_cc_stdc" in - x|xno) - echo "$as_me:$LINENO: result: none needed" >&5 -echo "${ECHO_T}none needed" >&6 ;; - *) - echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5 -echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6 - CC="$CC $ac_cv_prog_cc_stdc" ;; -esac - -# Some people use a C++ compiler to compile C. Since we use `exit', -# in C++ we need to declare it. In case someone uses the same compiler -# for both compiling C and C++ we need to have the C++ compiler decide -# the declaration of exit, since it's the most demanding environment. -cat >conftest.$ac_ext <<_ACEOF -#ifndef __cplusplus - choke me -#endif -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - for ac_declaration in \ - '' \ - 'extern "C" void std::exit (int) throw (); using std::exit;' \ - 'extern "C" void std::exit (int); using std::exit;' \ - 'extern "C" void exit (int) throw ();' \ - 'extern "C" void exit (int);' \ - 'void exit (int);' -do - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_declaration -#include -int -main () -{ -exit (42); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -continue -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_declaration -int -main () -{ -exit (42); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -done -rm -f conftest* -if test -n "$ac_declaration"; then - echo '#ifdef __cplusplus' >>confdefs.h - echo $ac_declaration >>confdefs.h - echo '#endif' >>confdefs.h -fi - -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5 -echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6 -# On Suns, sometimes $CPP names a directory. -if test -n "$CPP" && test -d "$CPP"; then - CPP= -fi -if test -z "$CPP"; then - if test "${ac_cv_prog_CPP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - # Double quotes because CPP needs to be expanded - for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" - do - ac_preproc_ok=false -for ac_c_preproc_warn_flag in '' yes -do - # Use a header file that comes with gcc, so configuring glibc - # with a fresh cross-compiler works. - # Prefer to if __STDC__ is defined, since - # exists even on freestanding compilers. - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#ifdef __STDC__ -# include -#else -# include -#endif - Syntax error -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Broken: fails on valid input. -continue -fi -rm -f conftest.err conftest.$ac_ext - - # OK, works on sane cases. Now check whether non-existent headers - # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - # Broken: success on invalid input. -continue -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Passes both tests. -ac_preproc_ok=: -break -fi -rm -f conftest.err conftest.$ac_ext - -done -# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.err conftest.$ac_ext -if $ac_preproc_ok; then - break -fi - - done - ac_cv_prog_CPP=$CPP - -fi - CPP=$ac_cv_prog_CPP -else - ac_cv_prog_CPP=$CPP -fi -echo "$as_me:$LINENO: result: $CPP" >&5 -echo "${ECHO_T}$CPP" >&6 -ac_preproc_ok=false -for ac_c_preproc_warn_flag in '' yes -do - # Use a header file that comes with gcc, so configuring glibc - # with a fresh cross-compiler works. - # Prefer to if __STDC__ is defined, since - # exists even on freestanding compilers. - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#ifdef __STDC__ -# include -#else -# include -#endif - Syntax error -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Broken: fails on valid input. -continue -fi -rm -f conftest.err conftest.$ac_ext - - # OK, works on sane cases. Now check whether non-existent headers - # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - # Broken: success on invalid input. -continue -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Passes both tests. -ac_preproc_ok=: -break -fi -rm -f conftest.err conftest.$ac_ext - -done -# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.err conftest.$ac_ext -if $ac_preproc_ok; then - : -else - { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details." >&5 -echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } -fi - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - - -echo "$as_me:$LINENO: checking for egrep" >&5 -echo $ECHO_N "checking for egrep... $ECHO_C" >&6 -if test "${ac_cv_prog_egrep+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if echo a | (grep -E '(a|b)') >/dev/null 2>&1 - then ac_cv_prog_egrep='grep -E' - else ac_cv_prog_egrep='egrep' - fi -fi -echo "$as_me:$LINENO: result: $ac_cv_prog_egrep" >&5 -echo "${ECHO_T}$ac_cv_prog_egrep" >&6 - EGREP=$ac_cv_prog_egrep - - -if test $ac_cv_c_compiler_gnu = yes; then - echo "$as_me:$LINENO: checking whether $CC needs -traditional" >&5 -echo $ECHO_N "checking whether $CC needs -traditional... $ECHO_C" >&6 -if test "${ac_cv_prog_gcc_traditional+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_pattern="Autoconf.*'x'" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -Autoconf TIOCGETP -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "$ac_pattern" >/dev/null 2>&1; then - ac_cv_prog_gcc_traditional=yes -else - ac_cv_prog_gcc_traditional=no -fi -rm -f conftest* - - - if test $ac_cv_prog_gcc_traditional = no; then - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -Autoconf TCGETA -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "$ac_pattern" >/dev/null 2>&1; then - ac_cv_prog_gcc_traditional=yes -fi -rm -f conftest* - - fi -fi -echo "$as_me:$LINENO: result: $ac_cv_prog_gcc_traditional" >&5 -echo "${ECHO_T}$ac_cv_prog_gcc_traditional" >&6 - if test $ac_cv_prog_gcc_traditional = yes; then - CC="$CC -traditional" - fi -fi - - -echo "$as_me:$LINENO: checking whether using GNU C" >&5 -echo $ECHO_N "checking whether using GNU C... $ECHO_C" >&6 -if test "${cl_cv_prog_cc_gcc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#ifdef __GNUC__ - yes -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1; then - cl_cv_prog_cc_gcc=yes -else - cl_cv_prog_cc_gcc=no -fi -rm -f conftest* - - -fi -echo "$as_me:$LINENO: result: $cl_cv_prog_cc_gcc" >&5 -echo "${ECHO_T}$cl_cv_prog_cc_gcc" >&6 -if test $cl_cv_prog_cc_gcc = yes; then - CC_GCC=true - GCC_X_NONE='-x none' -else - CC_GCC=false - GCC_X_NONE='' -fi - - - -echo "$as_me:$LINENO: checking for underscore in external names" >&5 -echo $ECHO_N "checking for underscore in external names... $ECHO_C" >&6 -if test "${cl_cv_prog_as_underscore+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat > conftest.c <&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } >/dev/null 2>&1 -if grep _foo conftest.s >/dev/null ; then - cl_cv_prog_as_underscore=yes -else - cl_cv_prog_as_underscore=no -fi -rm -f conftest* - -fi -echo "$as_me:$LINENO: result: $cl_cv_prog_as_underscore" >&5 -echo "${ECHO_T}$cl_cv_prog_as_underscore" >&6 -if test $cl_cv_prog_as_underscore = yes; then - AS_UNDERSCORE=true - -cat >>confdefs.h <<\_ACEOF -#define ASM_UNDERSCORE -_ACEOF - -else - AS_UNDERSCORE=false -fi - -# Extract the first word of "ranlib", so it can be a program name with args. -set dummy ranlib; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_RANLIB+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$RANLIB"; then - ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_RANLIB="ranlib" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - - test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB="true" -fi -fi -RANLIB=$ac_cv_prog_RANLIB -if test -n "$RANLIB"; then - echo "$as_me:$LINENO: result: $RANLIB" >&5 -echo "${ECHO_T}$RANLIB" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5 -echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6 -set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,:./+-,___p_,'` -if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.make <<\_ACEOF -all: - @echo 'ac_maketemp="$(MAKE)"' -_ACEOF -# GNU make sometimes prints "make[1]: Entering...", which would confuse us. -eval `${MAKE-make} -f conftest.make 2>/dev/null | grep temp=` -if test -n "$ac_maketemp"; then - eval ac_cv_prog_make_${ac_make}_set=yes -else - eval ac_cv_prog_make_${ac_make}_set=no -fi -rm -f conftest.make -fi -if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 - SET_MAKE= -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 - SET_MAKE="MAKE=${MAKE-make}" -fi - -# Find a good install program. We prefer a C program (faster), -# so one script is as good as another. But avoid the broken or -# incompatible versions: -# SysV /etc/install, /usr/sbin/install -# SunOS /usr/etc/install -# IRIX /sbin/install -# AIX /bin/install -# AFS /usr/afsws/bin/install, which mis-handles nonexistent args -# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" -# ./install, which can be erroneously created by make from ./install.sh. -echo "$as_me:$LINENO: checking for a BSD compatible install" >&5 -echo $ECHO_N "checking for a BSD compatible install... $ECHO_C" >&6 -if test -z "$INSTALL"; then -if test "${cl_cv_path_install+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" - for ac_dir in $PATH; do - # Account for people who put trailing slashes in PATH elements. - case "$ac_dir/" in - /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;; - *) - # OSF1 and SCO ODT 3.0 have their own names for install. - # Don't use installbsd from OSF since it installs stuff as root - # by default. - for ac_prog in ginstall scoinst install; do - if test -f $ac_dir/$ac_prog; then - if test $ac_prog = install && - grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then - # AIX install. It has an incompatible calling convention. - : - else - cl_cv_path_install="$ac_dir/$ac_prog -c" - break 2 - fi - fi - done - ;; - esac - done - IFS="$ac_save_ifs" - # As a last resort, use the absolute pathname of cp. - if test -z "$cl_cv_path_install"; then - cl_cv_path_install="cp" - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" - for ac_dir in $PATH; do - if test -f $ac_dir/cp; then - cl_cv_path_install="$ac_dir/cp" - break - fi - done - IFS="$ac_save_ifs" - fi - -fi - INSTALL="$cl_cv_path_install" -fi -echo "$as_me:$LINENO: result: $INSTALL" >&5 -echo "${ECHO_T}$INSTALL" >&6 -# Use test -z because SunOS4 sh mishandles braces in ${var-val}. -# It thinks the first close brace ends the variable substitution. -test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='$(INSTALL)' -if test -z "$INSTALL_DATA"; then - case "$INSTALL" in - cp | */cp ) INSTALL_DATA='$(INSTALL)' ;; - * ) INSTALL_DATA='$(INSTALL) -m 644' ;; - esac -fi - -echo "$as_me:$LINENO: checking how to copy files" >&5 -echo $ECHO_N "checking how to copy files... $ECHO_C" >&6 -if test "${cl_cv_prog_cp+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -echo "blabla" > conftest.x -err=`/bin/sh -c "cp -p conftest.x conftest.y 2>&1"` -if test -z "$err"; then - cl_cv_prog_cp='cp -p' -else - cl_cv_prog_cp='cp' -fi -rm -f conftest* - -fi -echo "$as_me:$LINENO: result: $cl_cv_prog_cp" >&5 -echo "${ECHO_T}$cl_cv_prog_cp" >&6 -CP="$cl_cv_prog_cp" - -echo "$as_me:$LINENO: checking how to make hard links" >&5 -echo $ECHO_N "checking how to make hard links... $ECHO_C" >&6 -if test "${cl_cv_prog_LN+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -rm -f conftestdata conftestfile -echo data > conftestfile -if ln conftestfile conftestdata 2>/dev/null; then - cl_cv_prog_LN=ln -else - cl_cv_prog_LN="$cl_cv_prog_cp" -fi -rm -f conftestdata conftestfile - -fi -echo "$as_me:$LINENO: result: $cl_cv_prog_LN" >&5 -echo "${ECHO_T}$cl_cv_prog_LN" >&6 -LN="$cl_cv_prog_LN" - - ac_aux_dir=${srcdir}/../autoconf -ac_config_guess="$SHELL $ac_aux_dir/config.guess" -ac_config_sub="$SHELL $ac_aux_dir/config.sub" -# Make sure we can run config.sub. -$ac_config_sub sun4 >/dev/null 2>&1 || - { { echo "$as_me:$LINENO: error: cannot run $ac_config_sub" >&5 -echo "$as_me: error: cannot run $ac_config_sub" >&2;} - { (exit 1); exit 1; }; } - -echo "$as_me:$LINENO: checking build system type" >&5 -echo $ECHO_N "checking build system type... $ECHO_C" >&6 -if test "${ac_cv_build+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_cv_build_alias=$build_alias -test -z "$ac_cv_build_alias" && - ac_cv_build_alias=`$ac_config_guess` -test -z "$ac_cv_build_alias" && - { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5 -echo "$as_me: error: cannot guess build type; you must specify one" >&2;} - { (exit 1); exit 1; }; } -ac_cv_build=`$ac_config_sub $ac_cv_build_alias` || - { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_build_alias failed" >&5 -echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed" >&2;} - { (exit 1); exit 1; }; } - -fi -echo "$as_me:$LINENO: result: $ac_cv_build" >&5 -echo "${ECHO_T}$ac_cv_build" >&6 -build=$ac_cv_build -build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` - - -echo "$as_me:$LINENO: checking host system type" >&5 -echo $ECHO_N "checking host system type... $ECHO_C" >&6 -if test "${ac_cv_host+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_cv_host_alias=$host_alias -test -z "$ac_cv_host_alias" && - ac_cv_host_alias=$ac_cv_build_alias -ac_cv_host=`$ac_config_sub $ac_cv_host_alias` || - { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_host_alias failed" >&5 -echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;} - { (exit 1); exit 1; }; } - -fi -echo "$as_me:$LINENO: result: $ac_cv_host" >&5 -echo "${ECHO_T}$ac_cv_host" >&6 -host=$ac_cv_host -host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` - - - - -case "$host_cpu" in - i[4567]86 ) - host_cpu=i386 - ;; - alphaev[4-8] | alphaev56 | alphapca5[67] | alphaev6[78] ) - host_cpu=alpha - ;; - hppa1.0 | hppa1.1 | hppa2.0* | hppa64 ) - host_cpu=hppa - ;; - powerpc ) - host_cpu=rs6000 - ;; - c1 | c2 | c32 | c34 | c38 | c4 ) - host_cpu=convex - ;; - arm* ) - host_cpu=arm - ;; - mips ) - echo "$as_me:$LINENO: checking for 64-bit MIPS" >&5 -echo $ECHO_N "checking for 64-bit MIPS... $ECHO_C" >&6 -if test "${cl_cv_host_mips64+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#if defined(_MIPS_SZLONG) -#if (_MIPS_SZLONG == 64) -/* We should also check for (_MIPS_SZPTR == 64), but gcc keeps this at 32. */ - yes -#endif -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1; then - cl_cv_host_mips64=yes -else - cl_cv_host_mips64=no -fi -rm -f conftest* - - -fi -echo "$as_me:$LINENO: result: $cl_cv_host_mips64" >&5 -echo "${ECHO_T}$cl_cv_host_mips64" >&6 -if test $cl_cv_host_mips64 = yes; then - host_cpu=mips64 -else - echo "$as_me:$LINENO: checking for MIPS with n32 ABI" >&5 -echo $ECHO_N "checking for MIPS with n32 ABI... $ECHO_C" >&6 -if test "${cl_cv_host_mipsn32+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#if __mips >= 3 - yes -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1; then - cl_cv_host_mipsn32=yes -else - cl_cv_host_mipsn32=no -fi -rm -f conftest* - - -fi -echo "$as_me:$LINENO: result: $cl_cv_host_mipsn32" >&5 -echo "${ECHO_T}$cl_cv_host_mipsn32" >&6 -if test $cl_cv_host_mipsn32 = yes; then - host_cpu=mipsn32 -fi -fi - ;; - sparc | sparc64 ) - echo "$as_me:$LINENO: checking for 64-bit SPARC" >&5 -echo $ECHO_N "checking for 64-bit SPARC... $ECHO_C" >&6 -if test "${cl_cv_host_sparc64+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#if defined(__sparcv9) || defined(__arch64__) - yes -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1; then - cl_cv_host_sparc64=yes -else - cl_cv_host_sparc64=no -fi -rm -f conftest* - - -fi -echo "$as_me:$LINENO: result: $cl_cv_host_sparc64" >&5 -echo "${ECHO_T}$cl_cv_host_sparc64" >&6 -if test $cl_cv_host_sparc64 = yes; then - host_cpu=sparc64 -else - host_cpu=sparc -fi - ;; -esac -cat >> confdefs.h <&5 -echo $ECHO_N "checking for pcc non-reentrant struct return convention... $ECHO_C" >&6 -if test "${cl_cv_c_struct_return_static+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -save_CFLAGS="$CFLAGS" -test $CC_GCC = true && CFLAGS="$CFLAGS -O0" -if test "$cross_compiling" = yes; then - cl_cv_c_struct_return_static="guessing no" -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -typedef struct { int a; int b; int c; int d; int e; } foo; -foo foofun () { static foo foopi = {3141,5926,5358,9793,2385}; return foopi; } -foo* (*fun) () = (foo* (*) ()) foofun; -int main() -{ foo foo1; - foo* fooptr1; - foo foo2; - foo* fooptr2; - foo1 = foofun(); fooptr1 = (*fun)(&foo1); - foo2 = foofun(); fooptr2 = (*fun)(&foo2); - exit(!(fooptr1 == fooptr2 && fooptr1->c == 5358)); -} -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cl_cv_c_struct_return_static=yes -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -rm -f core -cl_cv_c_struct_return_static=no -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -CFLAGS="$save_CFLAGS" - -fi -echo "$as_me:$LINENO: result: $cl_cv_c_struct_return_static" >&5 -echo "${ECHO_T}$cl_cv_c_struct_return_static" >&6 -case "$cl_cv_c_struct_return_static" in - *yes) cat >>confdefs.h <<\_ACEOF -#define __PCC_STRUCT_RETURN__ 1 -_ACEOF - ;; - *no) ;; -esac - -echo "$as_me:$LINENO: checking whether small structs are returned in registers" >&5 -echo $ECHO_N "checking whether small structs are returned in registers... $ECHO_C" >&6 -if test "${cl_cv_c_struct_return_small+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -if test "$cross_compiling" = yes; then - cl_cv_c_struct_return_small="guessing no" -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -typedef struct { int x; } foo; int y; -foo foofun () { foo f; f.x = y; return f; } -int (*fun) () = (int (*) ()) foofun; -int main() -{ y = 37; if ((*fun)() != 37) exit(1); - y = 55; if ((*fun)() != 55) exit(1); - exit(0); -} -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cl_cv_c_struct_return_small=yes -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -rm -f core -cl_cv_c_struct_return_small=no -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi - -fi -echo "$as_me:$LINENO: result: $cl_cv_c_struct_return_small" >&5 -echo "${ECHO_T}$cl_cv_c_struct_return_small" >&6 -case "$cl_cv_c_struct_return_small" in - *yes) cat >>confdefs.h <<\_ACEOF -#define __SMALL_STRUCT_RETURN__ 1 -_ACEOF - ;; - *no) ;; -esac - -echo "$as_me:$LINENO: checking whether floats are returned in integer registers" >&5 -echo $ECHO_N "checking whether floats are returned in integer registers... $ECHO_C" >&6 -if test "${cl_cv_c_float_return_ireg+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -if test "$cross_compiling" = yes; then - cl_cv_c_float_return_ireg="guessing no" -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -float x = (float)1.2; -float y = (float)1.3; -float fun () { return x*y; } -int main() -{ int val = (* (int (*) ()) fun) (); - exit (!(val == 0x3FC7AE15 || val == 0x15AEC73F)); -} -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cl_cv_c_float_return_ireg=yes -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -rm -f core -cl_cv_c_float_return_ireg=no -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi - -fi -echo "$as_me:$LINENO: result: $cl_cv_c_float_return_ireg" >&5 -echo "${ECHO_T}$cl_cv_c_float_return_ireg" >&6 -case "$cl_cv_c_float_return_ireg" in - *yes) cat >>confdefs.h <<\_ACEOF -#define __IREG_FLOAT_RETURN__ 1 -_ACEOF - ;; - *no) ;; -esac - -echo "$as_me:$LINENO: checking for long long type" >&5 -echo $ECHO_N "checking for long long type... $ECHO_C" >&6 -if test "${cl_cv_c_longlong+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - -if test "$cross_compiling" = yes; then - cl_cv_c_longlong="guessing no" -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -int main() -{ -/* long longs don't work right with gcc-2.7.2 on m68k */ -/* long longs don't work right with gcc-2.7.2 on rs6000: avcall/tests.c gets - miscompiled. */ -#if defined(__m68k__) || (defined(_IBMR2) || defined(__powerpc)) -#if defined(__GNUC__) && (__GNUC__ == 2) && (__GNUC_MINOR__ <= 7) - exit(1); -#endif -#endif - { long x = 944938507; long y = 737962842; long z = 162359677; - exit(!(((long long) x)*((long long) y)>>32 == z)); - } -} -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cl_cv_c_longlong=yes -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -cl_cv_c_longlong=no -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi - -fi -echo "$as_me:$LINENO: result: $cl_cv_c_longlong" >&5 -echo "${ECHO_T}$cl_cv_c_longlong" >&6 -case "$cl_cv_c_longlong" in - *yes) -cat >>confdefs.h <<\_ACEOF -#define HAVE_LONGLONG -_ACEOF - ;; - *no) ;; -esac - -echo "$as_me:$LINENO: checking for ANSI C header files" >&5 -echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 -if test "${ac_cv_header_stdc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include -#include -#include - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_header_stdc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_header_stdc=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - -if test $ac_cv_header_stdc = yes; then - # SunOS 4.x string.h does not declare mem*, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "memchr" >/dev/null 2>&1; then - : -else - ac_cv_header_stdc=no -fi -rm -f conftest* - -fi - -if test $ac_cv_header_stdc = yes; then - # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "free" >/dev/null 2>&1; then - : -else - ac_cv_header_stdc=no -fi -rm -f conftest* - -fi - -if test $ac_cv_header_stdc = yes; then - # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. - if test "$cross_compiling" = yes; then - : -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#if ((' ' & 0x0FF) == 0x020) -# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') -# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) -#else -# define ISLOWER(c) \ - (('a' <= (c) && (c) <= 'i') \ - || ('j' <= (c) && (c) <= 'r') \ - || ('s' <= (c) && (c) <= 'z')) -# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) -#endif - -#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) -int -main () -{ - int i; - for (i = 0; i < 256; i++) - if (XOR (islower (i), ISLOWER (i)) - || toupper (i) != TOUPPER (i)) - exit(2); - exit (0); -} -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -ac_cv_header_stdc=no -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -fi -fi -echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 -echo "${ECHO_T}$ac_cv_header_stdc" >&6 -if test $ac_cv_header_stdc = yes; then - -cat >>confdefs.h <<\_ACEOF -#define STDC_HEADERS 1 -_ACEOF - -fi - -# On IRIX 5.3, sys/types and inttypes.h are conflicting. - - - - - - - - - -for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ - inttypes.h stdint.h unistd.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default - -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - eval "$as_ac_Header=yes" -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -eval "$as_ac_Header=no" -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - - -echo "$as_me:$LINENO: checking whether char is unsigned" >&5 -echo $ECHO_N "checking whether char is unsigned... $ECHO_C" >&6 -if test "${ac_cv_c_char_unsigned+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -static int test_array [1 - 2 * !(((char) -1) < 0)]; -test_array [0] = 0 - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_c_char_unsigned=no -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_c_char_unsigned=yes -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_c_char_unsigned" >&5 -echo "${ECHO_T}$ac_cv_c_char_unsigned" >&6 -if test $ac_cv_c_char_unsigned = yes && test "$GCC" != yes; then - cat >>confdefs.h <<\_ACEOF -#define __CHAR_UNSIGNED__ 1 -_ACEOF - -fi - - ac_config_files="$ac_config_files Makefile" -cat >confcache <<\_ACEOF -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs, see configure's option --config-cache. -# It is not useful on other systems. If it contains results you don't -# want to keep, you may remove or edit it. -# -# config.status only pays attention to the cache file if you give it -# the --recheck option to rerun configure. -# -# `ac_cv_env_foo' variables (set or unset) will be overridden when -# loading this file, other *unset* `ac_cv_foo' will be assigned the -# following values. - -_ACEOF - -# The following way of writing the cache mishandles newlines in values, -# but we know of no workaround that is simple, portable, and efficient. -# So, don't put newlines in cache variables' values. -# Ultrix sh set writes to stderr and can't be redirected directly, -# and sets the high bit in the cache file unless we assign to the vars. -{ - (set) 2>&1 | - case `(ac_space=' '; set | grep ac_space) 2>&1` in - *ac_space=\ *) - # `set' does not quote correctly, so add quotes (double-quote - # substitution turns \\\\ into \\, and sed turns \\ into \). - sed -n \ - "s/'/'\\\\''/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" - ;; - *) - # `set' quotes correctly as required by POSIX, so do not add quotes. - sed -n \ - "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" - ;; - esac; -} | - sed ' - t clear - : clear - s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ - t end - /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ - : end' >>confcache -if diff $cache_file confcache >/dev/null 2>&1; then :; else - if test -w $cache_file; then - test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file" - cat confcache >$cache_file - else - echo "not updating unwritable cache $cache_file" - fi -fi -rm -f confcache - -test "x$prefix" = xNONE && prefix=$ac_default_prefix -# Let make expand exec_prefix. -test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' - -# VPATH may cause trouble with some makes, so we remove $(srcdir), -# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and -# trailing colons and then remove the whole line if VPATH becomes empty -# (actually we leave an empty line to preserve line numbers). -if test "x$srcdir" = x.; then - ac_vpsub='/^[ ]*VPATH[ ]*=/{ -s/:*\$(srcdir):*/:/; -s/:*\${srcdir}:*/:/; -s/:*@srcdir@:*/:/; -s/^\([^=]*=[ ]*\):*/\1/; -s/:*$//; -s/^[^=]*=[ ]*$//; -}' -fi - -DEFS=-DHAVE_CONFIG_H - -ac_libobjs= -ac_ltlibobjs= -for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue - # 1. Remove the extension, and $U if already installed. - ac_i=`echo "$ac_i" | - sed 's/\$U\././;s/\.o$//;s/\.obj$//'` - # 2. Add them. - ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext" - ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo' -done -LIBOBJS=$ac_libobjs - -LTLIBOBJS=$ac_ltlibobjs - - - -: ${CONFIG_STATUS=./config.status} -ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files $CONFIG_STATUS" -{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5 -echo "$as_me: creating $CONFIG_STATUS" >&6;} -cat >$CONFIG_STATUS <<_ACEOF -#! $SHELL -# Generated by $as_me. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false -SHELL=\${CONFIG_SHELL-$SHELL} -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## - -# Be Bourne compatible -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' -elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then - set -o posix -fi -DUALCASE=1; export DUALCASE # for MKS sh - -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - - -# Work around bugs in pre-3.0 UWIN ksh. -$as_unset ENV MAIL MAILPATH -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -for as_var in \ - LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ - LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ - LC_TELEPHONE LC_TIME -do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var - else - $as_unset $as_var - fi -done - -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - - -# Name of the executable. -as_me=`$as_basename "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)$' \| \ - . : '\(.\)' 2>/dev/null || -echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } - /^X\/\(\/\/\)$/{ s//\1/; q; } - /^X\/\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - - -# PATH needs CR, and LINENO needs CR and PATH. -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" || { - # Find who we are. Look in the path if we contain no path at all - # relative or not. - case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done - - ;; - esac - # We did not find ourselves, most probably we were run as `sh COMMAND' - # in which case we are not to be found in the path. - if test "x$as_myself" = x; then - as_myself=$0 - fi - if test ! -f "$as_myself"; then - { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5 -echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;} - { (exit 1); exit 1; }; } - fi - case $CONFIG_SHELL in - '') - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for as_base in sh bash ksh sh5; do - case $as_dir in - /*) - if ("$as_dir/$as_base" -c ' - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then - $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } - $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } - CONFIG_SHELL=$as_dir/$as_base - export CONFIG_SHELL - exec "$CONFIG_SHELL" "$0" ${1+"$@"} - fi;; - esac - done -done -;; - esac - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line before each line; the second 'sed' does the real - # work. The second script uses 'N' to pair each line-number line - # with the numbered line, and appends trailing '-' during - # substitution so that $LINENO is not a special case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) - sed '=' <$as_myself | - sed ' - N - s,$,-, - : loop - s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, - t loop - s,-$,, - s,^['$as_cr_digits']*\n,, - ' >$as_me.lineno && - chmod +x $as_me.lineno || - { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5 -echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;} - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensible to this). - . ./$as_me.lineno - # Exit status is that of the last command. - exit -} - - -case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in - *c*,-n*) ECHO_N= ECHO_C=' -' ECHO_T=' ' ;; - *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; - *) ECHO_N= ECHO_C='\c' ECHO_T= ;; -esac - -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -rm -f conf$$ conf$$.exe conf$$.file -echo >conf$$.file -if ln -s conf$$.file conf$$ 2>/dev/null; then - # We could just check for DJGPP; but this test a) works b) is more generic - # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). - if test -f conf$$.exe; then - # Don't use ln at all; we don't have any links - as_ln_s='cp -p' - else - as_ln_s='ln -s' - fi -elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.file - -if mkdir -p . 2>/dev/null; then - as_mkdir_p=: -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -as_executable_p="test -f" - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -# IFS -# We need space, tab and new line, in precisely that order. -as_nl=' -' -IFS=" $as_nl" - -# CDPATH. -$as_unset CDPATH - -exec 6>&1 - -# Open the log real soon, to keep \$[0] and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. Logging --version etc. is OK. -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX -} >&5 -cat >&5 <<_CSEOF - -This file was extended by $as_me, which was -generated by GNU Autoconf 2.59. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -_CSEOF -echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5 -echo >&5 -_ACEOF - -# Files that config.status was made for. -if test -n "$ac_config_files"; then - echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS -fi - -if test -n "$ac_config_headers"; then - echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS -fi - -if test -n "$ac_config_links"; then - echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS -fi - -if test -n "$ac_config_commands"; then - echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS -fi - -cat >>$CONFIG_STATUS <<\_ACEOF - -ac_cs_usage="\ -\`$as_me' instantiates files from templates according to the -current configuration. - -Usage: $0 [OPTIONS] [FILE]... - - -h, --help print this help, then exit - -V, --version print version number, then exit - -q, --quiet do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - --header=FILE[:TEMPLATE] - instantiate the configuration header FILE - -Configuration files: -$config_files - -Configuration headers: -$config_headers - -Report bugs to ." -_ACEOF - -cat >>$CONFIG_STATUS <<_ACEOF -ac_cs_version="\\ -config.status -configured by $0, generated by GNU Autoconf 2.59, - with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" - -Copyright (C) 2003 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." -srcdir=$srcdir -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF -# If no file are specified by the user, then we need to provide default -# value. By we need to know if files were specified by the user. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=*) - ac_option=`expr "x$1" : 'x\([^=]*\)='` - ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'` - ac_shift=: - ;; - -*) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - *) # This is not an option, so the user has probably given explicit - # arguments. - ac_option=$1 - ac_need_defaults=false;; - esac - - case $ac_option in - # Handling of the options. -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --vers* | -V ) - echo "$ac_cs_version"; exit 0 ;; - --he | --h) - # Conflict between --help and --header - { { echo "$as_me:$LINENO: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&2;} - { (exit 1); exit 1; }; };; - --help | --hel | -h ) - echo "$ac_cs_usage"; exit 0 ;; - --debug | --d* | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - CONFIG_FILES="$CONFIG_FILES $ac_optarg" - ac_need_defaults=false;; - --header | --heade | --head | --hea ) - $ac_shift - CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" - ac_need_defaults=false;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&2;} - { (exit 1); exit 1; }; } ;; - - *) ac_config_targets="$ac_config_targets $1" ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF -if \$ac_cs_recheck; then - echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 - exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion -fi - -_ACEOF - - - - - -cat >>$CONFIG_STATUS <<\_ACEOF -for ac_config_target in $ac_config_targets -do - case "$ac_config_target" in - # Handling of arguments. - "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; - "vacall.h" ) CONFIG_HEADERS="$CONFIG_HEADERS vacall.h" ;; - "config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; - *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 -echo "$as_me: error: invalid argument: $ac_config_target" >&2;} - { (exit 1); exit 1; }; };; - esac -done - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files - test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason to put it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Create a temporary directory, and hook for its removal unless debugging. -$debug || -{ - trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 - trap '{ (exit 1); exit 1; }' 1 2 13 15 -} - -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" -} || -{ - tmp=./confstat$$-$RANDOM - (umask 077 && mkdir $tmp) -} || -{ - echo "$me: cannot create a temporary directory in ." >&2 - { (exit 1); exit 1; } -} - -_ACEOF - -cat >>$CONFIG_STATUS <<_ACEOF - -# -# CONFIG_FILES section. -# - -# No need to generate the scripts if there are no CONFIG_FILES. -# This happens for instance when ./config.status config.h -if test -n "\$CONFIG_FILES"; then - # Protect against being on the right side of a sed subst in config.status. - sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g; - s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF -s,@SHELL@,$SHELL,;t t -s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t -s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t -s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t -s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t -s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t -s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t -s,@exec_prefix@,$exec_prefix,;t t -s,@prefix@,$prefix,;t t -s,@program_transform_name@,$program_transform_name,;t t -s,@bindir@,$bindir,;t t -s,@sbindir@,$sbindir,;t t -s,@libexecdir@,$libexecdir,;t t -s,@datadir@,$datadir,;t t -s,@sysconfdir@,$sysconfdir,;t t -s,@sharedstatedir@,$sharedstatedir,;t t -s,@localstatedir@,$localstatedir,;t t -s,@libdir@,$libdir,;t t -s,@includedir@,$includedir,;t t -s,@oldincludedir@,$oldincludedir,;t t -s,@infodir@,$infodir,;t t -s,@mandir@,$mandir,;t t -s,@build_alias@,$build_alias,;t t -s,@host_alias@,$host_alias,;t t -s,@target_alias@,$target_alias,;t t -s,@DEFS@,$DEFS,;t t -s,@ECHO_C@,$ECHO_C,;t t -s,@ECHO_N@,$ECHO_N,;t t -s,@ECHO_T@,$ECHO_T,;t t -s,@LIBS@,$LIBS,;t t -s,@CC@,$CC,;t t -s,@CFLAGS@,$CFLAGS,;t t -s,@LDFLAGS@,$LDFLAGS,;t t -s,@CPPFLAGS@,$CPPFLAGS,;t t -s,@ac_ct_CC@,$ac_ct_CC,;t t -s,@EXEEXT@,$EXEEXT,;t t -s,@OBJEXT@,$OBJEXT,;t t -s,@CPP@,$CPP,;t t -s,@EGREP@,$EGREP,;t t -s,@CC_GCC@,$CC_GCC,;t t -s,@GCC_X_NONE@,$GCC_X_NONE,;t t -s,@AS_UNDERSCORE@,$AS_UNDERSCORE,;t t -s,@RANLIB@,$RANLIB,;t t -s,@SET_MAKE@,$SET_MAKE,;t t -s,@INSTALL@,$INSTALL,;t t -s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t -s,@INSTALL_DATA@,$INSTALL_DATA,;t t -s,@CP@,$CP,;t t -s,@LN@,$LN,;t t -s,@build@,$build,;t t -s,@build_cpu@,$build_cpu,;t t -s,@build_vendor@,$build_vendor,;t t -s,@build_os@,$build_os,;t t -s,@host@,$host,;t t -s,@host_cpu@,$host_cpu,;t t -s,@host_vendor@,$host_vendor,;t t -s,@host_os@,$host_os,;t t -s,@LIBOBJS@,$LIBOBJS,;t t -s,@LTLIBOBJS@,$LTLIBOBJS,;t t -CEOF - -_ACEOF - - cat >>$CONFIG_STATUS <<\_ACEOF - # Split the substitutions into bite-sized pieces for seds with - # small command number limits, like on Digital OSF/1 and HP-UX. - ac_max_sed_lines=48 - ac_sed_frag=1 # Number of current file. - ac_beg=1 # First line for current file. - ac_end=$ac_max_sed_lines # Line after last line for current file. - ac_more_lines=: - ac_sed_cmds= - while $ac_more_lines; do - if test $ac_beg -gt 1; then - sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - else - sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - fi - if test ! -s $tmp/subs.frag; then - ac_more_lines=false - else - # The purpose of the label and of the branching condition is to - # speed up the sed processing (if there are no `@' at all, there - # is no need to browse any of the substitutions). - # These are the two extra sed commands mentioned above. - (echo ':t - /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed - if test -z "$ac_sed_cmds"; then - ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed" - else - ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed" - fi - ac_sed_frag=`expr $ac_sed_frag + 1` - ac_beg=$ac_end - ac_end=`expr $ac_end + $ac_max_sed_lines` - fi - done - if test -z "$ac_sed_cmds"; then - ac_sed_cmds=cat - fi -fi # test -n "$CONFIG_FILES" - -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF -for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; - esac - - # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories. - ac_dir=`(dirname "$ac_file") 2>/dev/null || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac - - - - if test x"$ac_file" != x-; then - { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - rm -f "$ac_file" - fi - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - configure_input= - else - configure_input="$ac_file. " - fi - configure_input=$configure_input"Generated from `echo $ac_file_in | - sed 's,.*/,,'` by configure." - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF - sed "$ac_vpsub -$extrasub -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s,@configure_input@,$configure_input,;t t -s,@srcdir@,$ac_srcdir,;t t -s,@abs_srcdir@,$ac_abs_srcdir,;t t -s,@top_srcdir@,$ac_top_srcdir,;t t -s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t -s,@builddir@,$ac_builddir,;t t -s,@abs_builddir@,$ac_abs_builddir,;t t -s,@top_builddir@,$ac_top_builddir,;t t -s,@abs_top_builddir@,$ac_abs_top_builddir,;t t -" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out - rm -f $tmp/stdin - if test x"$ac_file" != x-; then - mv $tmp/out $ac_file - else - cat $tmp/out - rm -f $tmp/out - fi - -done -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF - -# -# CONFIG_HEADER section. -# - -# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where -# NAME is the cpp macro being defined and VALUE is the value it is being given. -# -# ac_d sets the value in "#define NAME VALUE" lines. -ac_dA='s,^\([ ]*\)#\([ ]*define[ ][ ]*\)' -ac_dB='[ ].*$,\1#\2' -ac_dC=' ' -ac_dD=',;t' -# ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE". -ac_uA='s,^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' -ac_uB='$,\1#\2define\3' -ac_uC=' ' -ac_uD=',;t' - -for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; - esac - - test x"$ac_file" != x- && { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - # Do quote $f, to prevent DOS paths from being IFS'd. - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } - # Remove the trailing spaces. - sed 's/[ ]*$//' $ac_file_inputs >$tmp/in - -_ACEOF - -# Transform confdefs.h into two sed scripts, `conftest.defines' and -# `conftest.undefs', that substitutes the proper values into -# config.h.in to produce config.h. The first handles `#define' -# templates, and the second `#undef' templates. -# And first: Protect against being on the right side of a sed subst in -# config.status. Protect against being in an unquoted here document -# in config.status. -rm -f conftest.defines conftest.undefs -# Using a here document instead of a string reduces the quoting nightmare. -# Putting comments in sed scripts is not portable. -# -# `end' is used to avoid that the second main sed command (meant for -# 0-ary CPP macros) applies to n-ary macro definitions. -# See the Autoconf documentation for `clear'. -cat >confdef2sed.sed <<\_ACEOF -s/[\\&,]/\\&/g -s,[\\$`],\\&,g -t clear -: clear -s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*\)\(([^)]*)\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1\2${ac_dC}\3${ac_dD},gp -t end -s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD},gp -: end -_ACEOF -# If some macros were called several times there might be several times -# the same #defines, which is useless. Nevertheless, we may not want to -# sort them, since we want the *last* AC-DEFINE to be honored. -uniq confdefs.h | sed -n -f confdef2sed.sed >conftest.defines -sed 's/ac_d/ac_u/g' conftest.defines >conftest.undefs -rm -f confdef2sed.sed - -# This sed command replaces #undef with comments. This is necessary, for -# example, in the case of _POSIX_SOURCE, which is predefined and required -# on some systems where configure will not decide to define it. -cat >>conftest.undefs <<\_ACEOF -s,^[ ]*#[ ]*undef[ ][ ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */, -_ACEOF - -# Break up conftest.defines because some shells have a limit on the size -# of here documents, and old seds have small limits too (100 cmds). -echo ' # Handle all the #define templates only if necessary.' >>$CONFIG_STATUS -echo ' if grep "^[ ]*#[ ]*define" $tmp/in >/dev/null; then' >>$CONFIG_STATUS -echo ' # If there are no defines, we may have an empty if/fi' >>$CONFIG_STATUS -echo ' :' >>$CONFIG_STATUS -rm -f conftest.tail -while grep . conftest.defines >/dev/null -do - # Write a limited-size here document to $tmp/defines.sed. - echo ' cat >$tmp/defines.sed <>$CONFIG_STATUS - # Speed up: don't consider the non `#define' lines. - echo '/^[ ]*#[ ]*define/!b' >>$CONFIG_STATUS - # Work around the forget-to-reset-the-flag bug. - echo 't clr' >>$CONFIG_STATUS - echo ': clr' >>$CONFIG_STATUS - sed ${ac_max_here_lines}q conftest.defines >>$CONFIG_STATUS - echo 'CEOF - sed -f $tmp/defines.sed $tmp/in >$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in -' >>$CONFIG_STATUS - sed 1,${ac_max_here_lines}d conftest.defines >conftest.tail - rm -f conftest.defines - mv conftest.tail conftest.defines -done -rm -f conftest.defines -echo ' fi # grep' >>$CONFIG_STATUS -echo >>$CONFIG_STATUS - -# Break up conftest.undefs because some shells have a limit on the size -# of here documents, and old seds have small limits too (100 cmds). -echo ' # Handle all the #undef templates' >>$CONFIG_STATUS -rm -f conftest.tail -while grep . conftest.undefs >/dev/null -do - # Write a limited-size here document to $tmp/undefs.sed. - echo ' cat >$tmp/undefs.sed <>$CONFIG_STATUS - # Speed up: don't consider the non `#undef' - echo '/^[ ]*#[ ]*undef/!b' >>$CONFIG_STATUS - # Work around the forget-to-reset-the-flag bug. - echo 't clr' >>$CONFIG_STATUS - echo ': clr' >>$CONFIG_STATUS - sed ${ac_max_here_lines}q conftest.undefs >>$CONFIG_STATUS - echo 'CEOF - sed -f $tmp/undefs.sed $tmp/in >$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in -' >>$CONFIG_STATUS - sed 1,${ac_max_here_lines}d conftest.undefs >conftest.tail - rm -f conftest.undefs - mv conftest.tail conftest.undefs -done -rm -f conftest.undefs - -cat >>$CONFIG_STATUS <<\_ACEOF - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - echo "/* Generated by configure. */" >$tmp/config.h - else - echo "/* $ac_file. Generated by configure. */" >$tmp/config.h - fi - cat $tmp/in >>$tmp/config.h - rm -f $tmp/in - if test x"$ac_file" != x-; then - if diff $ac_file $tmp/config.h >/dev/null 2>&1; then - { echo "$as_me:$LINENO: $ac_file is unchanged" >&5 -echo "$as_me: $ac_file is unchanged" >&6;} - else - ac_dir=`(dirname "$ac_file") 2>/dev/null || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - rm -f $ac_file - mv $tmp/config.h $ac_file - fi - else - cat $tmp/config.h - rm -f $tmp/config.h - fi -done -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF - -{ (exit 0); exit 0; } -_ACEOF -chmod +x $CONFIG_STATUS -ac_clean_files=$ac_clean_files_save - - -# configure is writing to config.log, and then calls config.status. -# config.status does its own redirection, appending to config.log. -# Unfortunately, on DOS this fails, as config.log is still kept open -# by configure, so config.status won't be able to write to it; its -# output is simply discarded. So we exec the FD to /dev/null, -# effectively closing config.log, so it can be properly (re)opened and -# appended to by config.status. When coming back to configure, we -# need to make the FD available again. -if test "$no_create" != yes; then - ac_cs_success=: - ac_config_status_args= - test "$silent" = yes && - ac_config_status_args="$ac_config_status_args --quiet" - exec 5>/dev/null - $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false - exec 5>>config.log - # Use ||, not &&, to avoid exiting from the if with $? = 1, which - # would make configure fail if this is the last instruction. - $ac_cs_success || { (exit 1); exit 1; } -fi - DELETED ffcall/vacall/configure.in Index: ffcall/vacall/configure.in ================================================================== --- ffcall/vacall/configure.in +++ /dev/null @@ -1,23 +0,0 @@ -dnl AUTOCONF configuration for VACALL -dnl Bruno Haible 2000-04-02 -dnl -AC_INIT(vacall.h.in) -AC_CONFIG_HEADER(vacall.h config.h) -AC_PROG_CC -AC_PROG_CPP -AC_PROG_GCC_TRADITIONAL -CL_CC_GCC -CL_AS_UNDERSCORE -CL_PROG_RANLIB -AC_PROG_MAKE_SET -CL_PROG_INSTALL -CL_PROG_CP -CL_PROG_LN -CL_CANONICAL_HOST(../autoconf) -CL_CANONICAL_HOST_CPU_FOR_FFCALL -CL_PCC_STRUCT_RETURN -CL_SMALL_STRUCT_RETURN -CL_IREG_FLOAT_RETURN -CL_LONGLONG -AC_C_CHAR_UNSIGNED -AC_OUTPUT(Makefile) DELETED ffcall/vacall/minitests.c Index: ffcall/vacall/minitests.c ================================================================== --- ffcall/vacall/minitests.c +++ /dev/null @@ -1,2 +0,0 @@ -#define SKIP_EXTRA_STRUCTS -#include "tests.c" DELETED ffcall/vacall/misc.c Index: ffcall/vacall/misc.c ================================================================== --- ffcall/vacall/misc.c +++ /dev/null @@ -1,78 +0,0 @@ -/* - * Copyright 1995-1999 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#include -#include - -#ifndef REENTRANT -#include "vacall.h" -#else /* REENTRANT */ -#include "vacall_r.h" -#endif -#include "config.h" - -#ifndef REENTRANT - -/* This is the function pointer vacall(). A function pointer indirection is - needed because gcc-3.4 generates invalid code when the address of a symbol - is casted to a function pointer with different return type. - (http://gcc.gnu.org/ml/gcc-patches/2003-12/msg01767.html) */ -#ifdef __cplusplus -extern "C" void __vacall (); /* the return type is variable, not void! */ -#else -extern void __vacall (); /* the return type is variable, not void! */ -#endif -void (*vacall) () = __vacall; - -/* This is the function called by vacall(). */ -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -void (* vacall_function) (va_alist); -#else -void (* vacall_function) (); -#endif - -#endif - -/* Room for returning structs according to the pcc non-reentrant struct return convention. */ -__va_struct_buffer_t __va_struct_buffer; - -int /* no return type, since this never returns */ -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -__va_error1 (enum __VAtype start_type, enum __VAtype return_type) -#else -__va_error1 (start_type, return_type) - enum __VAtype start_type; - enum __VAtype return_type; -#endif -{ - /* If you see this, fix your code. */ - fprintf (stderr, "vacall: va_start type %d and va_return type %d disagree.\n", - (int)start_type, (int)return_type); - abort(); -#if defined(__cplusplus) - return 0; -#endif -} - -int /* no return type, since this never returns */ -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -__va_error2 (unsigned int size) -#else -__va_error2 (size) - unsigned int size; -#endif -{ - /* If you see this, increase __VA_ALIST_WORDS: */ - fprintf (stderr, "vacall: struct of size %u too large for pcc struct return.\n", - size); - abort(); -#if defined(__cplusplus) - return 0; -#endif -} DELETED ffcall/vacall/reg-struct-return Index: ffcall/vacall/reg-struct-return ================================================================== --- ffcall/vacall/reg-struct-return +++ /dev/null @@ -1,16 +0,0 @@ -Return values in registers, with "gcc -freg-struct-return": -"---" means return in memory. - - I_III C_CdC D_fDd J_JiJ T_TcT X_BcdB -i386 eax al --- eax,edx --- --- -m68k d0 d0 --- d0,d1 --- --- -mips $2 $2 --- --- --- --- -sparc %o0 %o0 --- --- --- --- -alpha $0 $0 $0 $0,$1 --- --- -hppa %r28 %r28 --- --- --- --- -arm r0 r0 --- r0,r1 --- --- -rs6000 3 3 --- 3,4 --- --- -m88k r2 --- --- --- --- --- -convex s0 s0 s0 s0.l --- --- -ia64 r8 r8 f8 r8,r9 r8 --- -x86_64 eax eax xmm0 rax,rdx rax DELETED ffcall/vacall/structcpy.c Index: ffcall/vacall/structcpy.c ================================================================== --- ffcall/vacall/structcpy.c +++ /dev/null @@ -1,33 +0,0 @@ -/* copy structs */ - -/* - * Copyright 1995-1999 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -void __structcpy (void* dest, void* src, unsigned long size, unsigned long alignment) -#else -void __structcpy(dest,src,size,alignment) - void* dest; - void* src; - unsigned long size; - unsigned long alignment; -#endif -{ - if (alignment % sizeof(long)) - { char* d = (char*)dest; - char* s = (char*)src; - do { *d++ = *s++; } while (--size > 0); - } - else - /* If the alignment is a multiple of sizeof(long), the size is as well. */ - { long* d = (long*)dest; - long* s = (long*)src; - do { *d++ = *s++; } while ((size -= sizeof(long)) > 0); - } -} DELETED ffcall/vacall/tests.c Index: ffcall/vacall/tests.c ================================================================== --- ffcall/vacall/tests.c +++ /dev/null @@ -1,1139 +0,0 @@ -/* Some random tests for vacall. */ - -/* - * Copyright 1993 Bill Triggs, - * Copyright 1995-1999, 2002 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#include -#include -#include -#include "vacall.h" -FILE* out; - -/* NB since K&R C always passes chars and shorts as ints and floats as doubles, - * unprototyped ANSI-C functions must do the same, eg: - * - foo(x) float x; { ... } passes x as a double & converts it to a float internally. - * - foo(float x) { ... } passes x as a float. - */ -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -#define _ , -#define _P(ARGS,TYPES) (TYPES) -#define FTYPE(RETTYPE,ARGTYPES) (RETTYPE (*) ARGTYPES) -#else -#define _ ; -#define _P(ARGS,TYPES) ARGS TYPES; -#define FTYPE(RETTYPE,ARGTYPES) (RETTYPE (*) ()) -#endif - -#if defined(__hppa__) && defined(__GNUC__) -#if (__GNUC__ == 2 && __GNUC_MINOR__ < 6) -/* gcc-2.5.2 bugs prevent the T test from working. */ -#define SKIP_T -#endif -#endif -#if defined(__m68k__) && defined(sun) && !defined(__GNUC__) -/* A SunOS 4.0.3 cc bug is triggered by the va_arg_struct macro. */ -#define SKIP_STRUCTS -#endif -#if defined(__m68k__) && defined(__GNUC__) -/* "gcc-2.6.3 -freg-struct-return" returns T = struct { char c[3]; } (which - * has size 4 !) in memory, in contrast to struct { char a,b,c; } and - * struct { char c[4]; } and struct { char a,b,c,d; } which have the same - * size and the same alignment but are returned in registers. I don't know why. - */ -#define SKIP_T -#endif -#if defined(__i386__) && defined(__GNUC__) -#if (__GNUC__ == 2) && (__GNUC_MINOR__ == 7) -/* Problem with gcc-2.7.x on Linux/ELF: The X test fails. - * The calling convention for C functions returning structures of size > 8 bytes - * apparently has changed between gcc-2.6.3 and gcc-2.7 (all i386 platforms), - * and vacall supports only the old one. Since gcc-2.8 will switch back to - * gcc-2.6.3's calling convention, I won't change ffcall/vacall for this. - * Just hide the problem by not running the test. The impact isn't big for - * CLISP: Callbacks returning structures > 8 bytes won't work. - */ -#define SKIP_X -#endif -#endif -#if defined(__sparc__) && defined(sun) && defined(__SUNPRO_C) /* SUNWspro cc */ -/* SunPRO cc miscompiles the simulator function for X_BcdB: d.i[1] is - * temporarily stored in %l2 and put onto the stack from %l2, but in between - * the copy of X has used %l2 as a counter without saving and restoring its - * value. - */ -#define SKIP_X -#endif -#if defined(__mipsn32__) && !defined(__GNUC__) -/* The X test crashes for an unknown reason. */ -#define SKIP_X -#endif - -#define uchar unsigned char -#define ushort unsigned short -#define uint unsigned int -#define ulong unsigned long - -typedef struct { char x; } Char; -typedef struct { short x; } Short; -typedef struct { int x; } Int; -typedef struct { long x; } Long; -typedef struct { float x; } Float; -typedef struct { double x; } Double; -typedef struct { char c; float f; } A; -typedef struct { double d; int i[3]; } B; -typedef struct { long l1; long l2; } J; -typedef struct { char c[3]; } T; -typedef struct { char c[33],c1; } X; - -char c1='a', c2=127, c3=(char)128, c4=(char)255, c5=-1; -short s1=32767, s2=(short)32768, s3=3, s4=4, s5=5, s6=6, s7=7, s8=8, s9=9; -int i1=1, i2=2, i3=3, i4=4, i5=5, i6=6, i7=7, i8=8, i9=9, - i10=11, i11=12, i12=13, i13=14, i14=15, i15=16, i16=17; -long l1=1, l2=2, l3=3, l4=4, l5=5, l6=6, l7=7, l8=8, l9=9; -#ifdef HAVE_LONGLONG -long long ll1 = 3875056143130689530LL; -#endif -float f1=0.1, f2=0.2, f3=0.3, f4=0.4, f5=0.5, f6=0.6, f7=0.7, f8=0.8, f9=0.9, - f10=1.1, f11=1.2, f12=1.3, f13=1.4, f14=1.5, f15=1.6, f16=1.7; -double d1=0.1, d2=0.2, d3=0.3, d4=0.4, d5=0.5, d6=0.6, d7=0.7, d8=0.8, d9=0.9, - d10=1.1, d11=1.2, d12=1.3, d13=1.4, d14=1.5, d15=1.6, d16=1.7; - -uchar uc1='a', uc2=127, uc3=128, uc4=255, uc5=-1; -ushort us1=1, us2=2, us3=3, us4=4, us5=5, us6=6, us7=7, us8=8, us9=9; -uint ui1=1, ui2=2, ui3=3, ui4=4, ui5=5, ui6=6, ui7=7, ui8=8, ui9=9; -ulong ul1=1, ul2=2, ul3=3, ul4=4, ul5=5, ul6=6, ul7=7, ul8=8, ul9=9; - -char *str1="hello",str2[]="goodbye",*str3="still here?"; -Char C1={'A'}, C2={'B'}, C3={'C'}, C4={'\377'}, C5={-1}; -Short S1={1}, S2={2}, S3={3}, S4={4}, S5={5}, S6={6}, S7={7}, S8={8}, S9={9}; -Int I1={1}, I2={2}, I3={3}, I4={4}, I5={5}, I6={6}, I7={7}, I8={8}, I9={9}; -Float F1={0.1}, F2={0.2}, F3={0.3}, F4={0.4}, F5={0.5}, F6={0.6}, F7={0.7}, F8={0.8}, F9={0.9}; -Double D1={0.1}, D2={0.2}, D3={0.3}, D4={0.4}, D5={0.5}, D6={0.6}, D7={0.7}, D8={0.8}, D9={0.9}; - -A A1={'a',0.1},A2={'b',0.2},A3={'\377',0.3}; -B B1={0.1,{1,2,3}},B2={0.2,{5,4,3}}; -J J1={47,11},J2={73,55}; -T T1={'t','h','e'},T2={'f','o','x'}; -X X1={"abcdefghijklmnopqrstuvwxyzABCDEF",'G'}, X2={"123",'9'}, X3={"return-return-return",'R'}; - -/* void tests */ -void v_v() -{ - fprintf(out,"void f(void):\n"); - fflush(out); -} - -/* int tests */ -int i_v() -{ - int r=99; - fprintf(out,"int f(void):"); - fflush(out); - return r; -} -int i_i _P((a), int a) -{ - int r=a+1; - fprintf(out,"int f(int):(%d)",a); - fflush(out); - return r; -} -int i_i2 _P((a,b), int a _ int b) -{ - int r=a+b; - fprintf(out,"int f(2*int):(%d,%d)",a,b); - fflush(out); - return r; -} -int i_i4 _P((a,b,c,d), int a _ int b _ int c _ int d) -{ - int r=a+b+c+d; - fprintf(out,"int f(4*int):(%d,%d,%d,%d)",a,b,c,d); - fflush(out); - return r; -} -int i_i8 _P((a,b,c,d,e,f,g,h), - int a _ int b _ int c _ int d _ int e _ int f _ int g _ int h) -{ - int r=a+b+c+d+e+f+g+h; - fprintf(out,"int f(8*int):(%d,%d,%d,%d,%d,%d,%d,%d)",a,b,c,d,e,f,g,h); - fflush(out); - return r; -} -int i_i16 _P((a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p), - int a _ int b _ int c _ int d _ int e _ int f _ int g _ int h - _ int i _ int j _ int k _ int l _ int m _ int n _ int o _ int p) -{ - int r=a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p; - fprintf(out,"int f(16*int):(%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d)", - a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p); - fflush(out); - return r; -} - -/* float tests */ -float f_f _P((a), float a) -{ - float r=a+1.0; - fprintf(out,"float f(float):(%g)",a); - fflush(out); - return r; -} -float f_f2 _P((a,b), float a _ float b) -{ - float r=a+b; - fprintf(out,"float f(2*float):(%g,%g)",a,b); - fflush(out); - return r; -} -float f_f4 _P((a,b,c,d), float a _ float b _ float c _ float d) -{ - float r=a+b+c+d; - fprintf(out,"float f(4*float):(%g,%g,%g,%g)",a,b,c,d); - fflush(out); - return r; -} -float f_f8 _P((a,b,c,d,e,f,g,h), float a _ float b _ float c _ float d _ float e _ float f - _ float g _ float h) -{ - float r=a+b+c+d+e+f+g+h; - fprintf(out,"float f(8*float):(%g,%g,%g,%g,%g,%g,%g,%g)",a,b,c,d,e,f,g,h); - fflush(out); - return r; -} -float f_f16 _P((a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p), - float a _ float b _ float c _ float d _ float e _ float f _ float g _ float h - _ float i _ float j _ float k _ float l _ float m _ float n _ float o _ float p) -{ - float r=a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p; - fprintf(out,"float f(16*float):(%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g)",a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p); - fflush(out); - return r; -} - -/* double tests */ -double d_d _P((a), double a) -{ - double r=a+1.0; - fprintf(out,"double f(double):(%g)",a); - fflush(out); - return r; -} -double d_d2 _P((a,b), double a _ double b) -{ - double r=a+b; - fprintf(out,"double f(2*double):(%g,%g)",a,b); - fflush(out); - return r; -} -double d_d4 _P((a,b,c,d), double a _ double b _ double c _ double d) -{ - double r=a+b+c+d; - fprintf(out,"double f(4*double):(%g,%g,%g,%g)",a,b,c,d); - fflush(out); - return r; -} -double d_d8 _P((a,b,c,d,e,f,g,h), - double a _ double b _ double c _ double d _ double e _ double f - _ double g _ double h) -{ - double r=a+b+c+d+e+f+g+h; - fprintf(out,"double f(8*double):(%g,%g,%g,%g,%g,%g,%g,%g)",a,b,c,d,e,f,g,h); - fflush(out); - return r; -} -double d_d16 _P((a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p), - double a _ double b _ double c _ double d _ double e _ double f - _ double g _ double h _ double i _ double j _ double k _ double l - _ double m _ double n _ double o _ double p) -{ - double r=a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p; - fprintf(out,"double f(16*double):(%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g)",a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p); - fflush(out); - return r; -} - -/* pointer tests */ -void* vp_vpdpcpsp _P((a,b,c,d), void* a _ double* b _ char* c _ Int* d) -{ - void* ret = (char*)b + 1; - fprintf(out,"void* f(void*,double*,char*,Int*):(0x%lx,0x%lx,0x%lx,0x%lx)",(long)a,(long)b,(long)c,(long)d); - fflush(out); - return ret; -} - -/* mixed number tests */ -uchar uc_ucsil _P((a,b,c,d), uchar a _ ushort b _ uint c _ ulong d) -{ - uchar r = -1; - fprintf(out,"uchar f(uchar,ushort,uint,ulong):(%u,%u,%u,%lu)",a,b,c,d); - fflush(out); - return r; -} -double d_iidd _P((a,b,c,d), int a _ int b _ double c _ double d) -{ - double r = a+b+c+d; - fprintf(out,"double f(int,int,double,double):(%d,%d,%g,%g)",a,b,c,d); - fflush(out); - return r; -} -double d_idid _P((a,b,c,d), int a _ double b _ int c _ double d) -{ - double r = a+b+c+d; - fprintf(out,"double f(int,double,int,double):(%d,%g,%d,%g)",a,b,c,d); - fflush(out); - return r; -} -ushort us_cdcd _P((a,b,c,d), char a _ double b _ char c _ double d) -{ - ushort r = (ushort)(a + b + c + d); - fprintf(out,"ushort f(char,double,char,double):('%c',%g,'%c',%g)",a,b,c,d); - fflush(out); - return r; -} - -#ifdef HAVE_LONGLONG -long long ll_flli _P((a,b,c), float a _ long long b _ int c) -{ - long long r = (long long)(int)a + b + (long long)c; - fprintf(out,"long long f(float,long long,int):(%g,0x%lx%08lx,0x%lx)",a,(long)(b>>32),(long)(b&0xffffffff),(long)c); - fflush(out); - return r; -} -#endif - -/* structure tests */ -Int I_III _P((a,b,c), Int a _ Int b _ Int c) -{ - Int r; - r.x = a.x + b.x + c.x; - fprintf(out,"Int f(Int,Int,Int):({%d},{%d},{%d})",a.x,b.x,c.x); - fflush(out); - return r; -} -Char C_CdC _P((a,b,c), Char a _ double b _ Char c) -{ - Char r; - r.x = (a.x + c.x)/2; - fprintf(out,"Char f(Char,double,Char):({'%c'},%g,{'%c'})",a.x,b,c.x); - fflush(out); - return r; -} -Float F_Ffd _P((a,b,c), Float a _ float b _ double c) -{ - Float r; - r.x = a.x + b + c; - fprintf(out,"Float f(Float,float,double):({%g},%g,%g)",a.x,b,c); - fflush(out); - return r; -} -Double D_fDd _P((a,b,c), float a _ Double b _ double c) -{ - Double r; - r.x = a + b.x + c; - fprintf(out,"Double f(float,Double,double):(%g,{%g},%g)",a,b.x,c); - fflush(out); - return r; -} -J J_JiJ _P((a,b,c), J a _ int b _ J c) -{ - J r; - r.l1 = a.l1+c.l1; r.l2 = a.l2+b+c.l2; - fprintf(out,"J f(J,int,J):({%ld,%ld},%d,{%ld,%ld})",a.l1,a.l2,b,c.l1,c.l2); - fflush(out); - return r; -} -T T_TcT _P((a,b,c), T a _ char b _ T c) -{ - T r; - r.c[0]='b'; r.c[1]=c.c[1]; r.c[2]=c.c[2]; - fprintf(out,"T f(T,char,T):({\"%c%c%c\"},'%c',{\"%c%c%c\"})",a.c[0],a.c[1],a.c[2],b,c.c[0],c.c[1],c.c[2]); - fflush(out); - return r; -} -X X_BcdB _P((a,b,c,d), B a _ char b _ double c _ B d) -{ - static X xr={"return val",'R'}; - X r; - r = xr; - r.c1 = b; - fprintf(out,"X f(B,char,double,B):({%g,{%d,%d,%d}},'%c',%g,{%g,{%d,%d,%d}})", - a.d,a.i[0],a.i[1],a.i[2],b,c,d.d,d.i[0],d.i[1],d.i[2]); - fflush(out); - return r; -} - - -void* current_function; - -/* This function simulates the behaviour of current_function. */ -void simulator _P((alist), va_alist alist) -{ - /* void tests */ - if (current_function == (void*)&v_v) - { - va_start_void(alist); - fprintf(out,"void f(void):\n"); - fflush(out); - va_return_void(alist); - } - - /* int tests */ - else if (current_function == (void*)&i_v) - { - va_start_int(alist); - {int r=99; - fprintf(out,"int f(void):"); - fflush(out); - va_return_int(alist, r); - }} - else if (current_function == (void*)&i_i) - { - va_start_int(alist); - {int a = va_arg_int(alist); - int r=a+1; - fprintf(out,"int f(int):(%d)",a); - fflush(out); - va_return_int(alist, r); - }} - else if (current_function == (void*)&i_i2) - { - va_start_int(alist); - {int a = va_arg_int(alist); - int b = va_arg_int(alist); - int r=a+b; - fprintf(out,"int f(2*int):(%d,%d)",a,b); - fflush(out); - va_return_int(alist, r); - }} - else if (current_function == (void*)&i_i4) - { - va_start_int(alist); - {int a = va_arg_int(alist); - int b = va_arg_int(alist); - int c = va_arg_int(alist); - int d = va_arg_int(alist); - int r=a+b+c+d; - fprintf(out,"int f(4*int):(%d,%d,%d,%d)",a,b,c,d); - fflush(out); - va_return_int(alist, r); - }} - else if (current_function == (void*)&i_i8) - { - va_start_int(alist); - {int a = va_arg_int(alist); - int b = va_arg_int(alist); - int c = va_arg_int(alist); - int d = va_arg_int(alist); - int e = va_arg_int(alist); - int f = va_arg_int(alist); - int g = va_arg_int(alist); - int h = va_arg_int(alist); - int r=a+b+c+d+e+f+g+h; - fprintf(out,"int f(8*int):(%d,%d,%d,%d,%d,%d,%d,%d)",a,b,c,d,e,f,g,h); - fflush(out); - va_return_int(alist, r); - }} - else if (current_function == (void*)&i_i16) - { - va_start_int(alist); - {int a = va_arg_int(alist); - int b = va_arg_int(alist); - int c = va_arg_int(alist); - int d = va_arg_int(alist); - int e = va_arg_int(alist); - int f = va_arg_int(alist); - int g = va_arg_int(alist); - int h = va_arg_int(alist); - int i = va_arg_int(alist); - int j = va_arg_int(alist); - int k = va_arg_int(alist); - int l = va_arg_int(alist); - int m = va_arg_int(alist); - int n = va_arg_int(alist); - int o = va_arg_int(alist); - int p = va_arg_int(alist); - int r=a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p; - fprintf(out,"int f(16*int):(%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d)", - a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p); - fflush(out); - va_return_int(alist, r); - }} - - /* float tests */ - else if (current_function == (void*)&f_f) - { - va_start_float(alist); - {float a = va_arg_float(alist); - float r=a+1.0; - fprintf(out,"float f(float):(%g)",a); - fflush(out); - va_return_float(alist, r); - }} - else if (current_function == (void*)&f_f2) - { - va_start_float(alist); - {float a = va_arg_float(alist); - float b = va_arg_float(alist); - float r=a+b; - fprintf(out,"float f(2*float):(%g,%g)",a,b); - fflush(out); - va_return_float(alist, r); - }} - else if (current_function == (void*)&f_f4) - { - va_start_float(alist); - {float a = va_arg_float(alist); - float b = va_arg_float(alist); - float c = va_arg_float(alist); - float d = va_arg_float(alist); - float r=a+b+c+d; - fprintf(out,"float f(4*float):(%g,%g,%g,%g)",a,b,c,d); - fflush(out); - va_return_float(alist, r); - }} - else if (current_function == (void*)&f_f8) - { - va_start_float(alist); - {float a = va_arg_float(alist); - float b = va_arg_float(alist); - float c = va_arg_float(alist); - float d = va_arg_float(alist); - float e = va_arg_float(alist); - float f = va_arg_float(alist); - float g = va_arg_float(alist); - float h = va_arg_float(alist); - float r=a+b+c+d+e+f+g+h; - fprintf(out,"float f(8*float):(%g,%g,%g,%g,%g,%g,%g,%g)",a,b,c,d,e,f,g,h); - fflush(out); - va_return_float(alist, r); - }} - else if (current_function == (void*)&f_f16) - { - va_start_float(alist); - {float a = va_arg_float(alist); - float b = va_arg_float(alist); - float c = va_arg_float(alist); - float d = va_arg_float(alist); - float e = va_arg_float(alist); - float f = va_arg_float(alist); - float g = va_arg_float(alist); - float h = va_arg_float(alist); - float i = va_arg_float(alist); - float j = va_arg_float(alist); - float k = va_arg_float(alist); - float l = va_arg_float(alist); - float m = va_arg_float(alist); - float n = va_arg_float(alist); - float o = va_arg_float(alist); - float p = va_arg_float(alist); - float r=a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p; - fprintf(out,"float f(16*float):(%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g)",a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p); - fflush(out); - va_return_float(alist, r); - }} - - /* double tests */ - else if (current_function == (void*)&d_d) - { - va_start_double(alist); - {double a = va_arg_double(alist); - double r=a+1.0; - fprintf(out,"double f(double):(%g)",a); - fflush(out); - va_return_double(alist, r); - }} - else if (current_function == (void*)&d_d2) - { - va_start_double(alist); - {double a = va_arg_double(alist); - double b = va_arg_double(alist); - double r=a+b; - fprintf(out,"double f(2*double):(%g,%g)",a,b); - fflush(out); - va_return_double(alist, r); - }} - else if (current_function == (void*)&d_d4) - { - va_start_double(alist); - {double a = va_arg_double(alist); - double b = va_arg_double(alist); - double c = va_arg_double(alist); - double d = va_arg_double(alist); - double r=a+b+c+d; - fprintf(out,"double f(4*double):(%g,%g,%g,%g)",a,b,c,d); - fflush(out); - va_return_double(alist, r); - }} - else if (current_function == (void*)&d_d8) - { - va_start_double(alist); - {double a = va_arg_double(alist); - double b = va_arg_double(alist); - double c = va_arg_double(alist); - double d = va_arg_double(alist); - double e = va_arg_double(alist); - double f = va_arg_double(alist); - double g = va_arg_double(alist); - double h = va_arg_double(alist); - double r=a+b+c+d+e+f+g+h; - fprintf(out,"double f(8*double):(%g,%g,%g,%g,%g,%g,%g,%g)",a,b,c,d,e,f,g,h); - fflush(out); - va_return_double(alist, r); - }} - else if (current_function == (void*)&d_d16) - { - va_start_double(alist); - {double a = va_arg_double(alist); - double b = va_arg_double(alist); - double c = va_arg_double(alist); - double d = va_arg_double(alist); - double e = va_arg_double(alist); - double f = va_arg_double(alist); - double g = va_arg_double(alist); - double h = va_arg_double(alist); - double i = va_arg_double(alist); - double j = va_arg_double(alist); - double k = va_arg_double(alist); - double l = va_arg_double(alist); - double m = va_arg_double(alist); - double n = va_arg_double(alist); - double o = va_arg_double(alist); - double p = va_arg_double(alist); - double r=a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p; - fprintf(out,"double f(16*double):(%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g,%g)",a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p); - fflush(out); - va_return_double(alist, r); - }} - - /* pointer tests */ - else if (current_function == (void*)&vp_vpdpcpsp) - { - va_start_ptr(alist, void*); - {void* a = va_arg_ptr(alist, void*); - double* b = va_arg_ptr(alist, double*); - char* c = va_arg_ptr(alist, char*); - Int* d = va_arg_ptr(alist, Int*); - void* ret = (char*)b + 1; - fprintf(out,"void* f(void*,double*,char*,Int*):(0x%lx,0x%lx,0x%lx,0x%lx)",(long)a,(long)b,(long)c,(long)d); - fflush(out); - va_return_ptr(alist, void*, ret); - }} - - /* mixed number tests */ - else if (current_function == (void*)&uc_ucsil) - { - va_start_uchar(alist); - {uchar a = va_arg_uchar(alist); - ushort b = va_arg_ushort(alist); - uint c = va_arg_uint(alist); - ulong d = va_arg_ulong(alist); - uchar r=-1; - fprintf(out,"uchar f(uchar,ushort,uint,ulong):(%u,%u,%u,%lu)",a,b,c,d); - fflush(out); - va_return_uchar(alist, r); - }} - else if (current_function == (void*)&d_iidd) - { - va_start_double(alist); - {int a = va_arg_int(alist); - int b = va_arg_int(alist); - double c = va_arg_double(alist); - double d = va_arg_double(alist); - double r=a+b+c+d; - fprintf(out,"double f(int,int,double,double):(%d,%d,%g,%g)",a,b,c,d); - fflush(out); - va_return_double(alist, r); - }} - else if (current_function == (void*)&d_idid) - { - va_start_double(alist); - {int a = va_arg_int(alist); - double b = va_arg_double(alist); - int c = va_arg_int(alist); - double d = va_arg_double(alist); - double r=a+b+c+d; - fprintf(out,"double f(int,double,int,double):(%d,%g,%d,%g)",a,b,c,d); - fflush(out); - va_return_double(alist, r); - }} - else if (current_function == (void*)&us_cdcd) - { - va_start_ushort(alist); - {char a = va_arg_char(alist); - double b = va_arg_double(alist); - char c = va_arg_char(alist); - double d = va_arg_double(alist); - ushort r = (ushort)(a + b + c + d); - fprintf(out,"ushort f(char,double,char,double):('%c',%g,'%c',%g)",a,b,c,d); - fflush(out); - va_return_ushort(alist, r); - }} -#ifdef HAVE_LONGLONG - else if (current_function == (void*)&ll_flli) - { - va_start_longlong(alist); - {float a = va_arg_float(alist); - long long b = va_arg_longlong(alist); - int c = va_arg_int(alist); - long long r = (long long)(int)a + b + (long long)c; - fprintf(out,"long long f(float,long long,int):(%g,0x%lx%08lx,0x%lx)",a,(long)(b>>32),(long)(b&0xffffffff),(long)c); - fflush(out); - va_return_longlong(alist, r); - }} -#endif - -#ifndef SKIP_STRUCTS - /* structure tests */ - else if (current_function == (void*)&I_III) - { - Int a; - Int b; - Int c; - Int r; - va_start_struct(alist, Int, 1); - a = va_arg_struct(alist, Int); - b = va_arg_struct(alist, Int); - c = va_arg_struct(alist, Int); - r.x = a.x + b.x + c.x; - fprintf(out,"Int f(Int,Int,Int):({%d},{%d},{%d})",a.x,b.x,c.x); - fflush(out); - va_return_struct(alist, Int, r); - } -#ifndef SKIP_EXTRA_STRUCTS - else if (current_function == (void*)&C_CdC) - { - Char a; - double b; - Char c; - Char r; - va_start_struct(alist, Char, 1); - a = va_arg_struct(alist, Char); - b = va_arg_double(alist); - c = va_arg_struct(alist, Char); - r.x = (a.x + c.x)/2; - fprintf(out,"Char f(Char,double,Char):({'%c'},%g,{'%c'})",a.x,b,c.x); - fflush(out); - va_return_struct(alist, Char, r); - } - else if (current_function == (void*)&F_Ffd) - { - Float a; - float b; - double c; - Float r; - va_start_struct(alist, Float, va_word_splittable_1(float)); - a = va_arg_struct(alist, Float); - b = va_arg_float(alist); - c = va_arg_double(alist); - r.x = a.x + b + c; - fprintf(out,"Float f(Float,float,double):({%g},%g,%g)",a.x,b,c); - fflush(out); - va_return_struct(alist, Float, r); - } - else if (current_function == (void*)&D_fDd) - { - float a; - Double b; - double c; - Double r; - va_start_struct(alist, Double, va_word_splittable_1(double)); - a = va_arg_float(alist); - b = va_arg_struct(alist, Double); - c = va_arg_double(alist); - r.x = a + b.x + c; - fprintf(out,"Double f(float,Double,double):(%g,{%g},%g)",a,b.x,c); - fflush(out); - va_return_struct(alist, Double, r); - } -#endif - else if (current_function == (void*)&J_JiJ) - { - J a; - int b; - J c; - J r; - va_start_struct(alist, J, va_word_splittable_2(long,long)); - a = va_arg_struct(alist, J); - b = va_arg_int(alist); - c = va_arg_struct(alist, J); - r.l1 = a.l1+c.l1; r.l2 = a.l2+b+c.l2; - fprintf(out,"J f(J,int,J):({%ld,%ld},%d,{%ld,%ld})",a.l1,a.l2,b,c.l1,c.l2); - fflush(out); - va_return_struct(alist, J, r); - } -#ifndef SKIP_EXTRA_STRUCTS - else if (current_function == (void*)&T_TcT) - { - T a; - char b; - T c; - T r; - va_start_struct(alist, T, 1); - a = va_arg_struct(alist, T); - b = va_arg_char(alist); - c = va_arg_struct(alist, T); - r.c[0]='b'; r.c[1]=c.c[1]; r.c[2]=c.c[2]; - fprintf(out,"T f(T,char,T):({\"%c%c%c\"},'%c',{\"%c%c%c\"})",a.c[0],a.c[1],a.c[2],b,c.c[0],c.c[1],c.c[2]); - fflush(out); - va_return_struct(alist, T, r); - } - else if (current_function == (void*)&X_BcdB) - { - B a; - char b; - double c; - B d; - static X xr={"return val",'R'}; - X r; - va_start_struct(alist, X, 0); - a = va_arg_struct(alist, B); - b = va_arg_char(alist); - c = va_arg_double(alist); - d = va_arg_struct(alist, B); - r = xr; - r.c1 = b; - fprintf(out,"X f(B,char,double,B):({%g,{%d,%d,%d}},'%c',%g,{%g,{%d,%d,%d}})", - a.d,a.i[0],a.i[1],a.i[2],b,c,d.d,d.i[0],d.i[1],d.i[2]); - fflush(out); - va_return_struct(alist, X, r); - } -#endif -#endif - - else - { - fprintf(out,"simulate: unknown function\n"); - fflush(out); - } -} - -/* - * The way we run these tests - first call the function directly, then - * through vacall() - there is the danger that arguments or results seem - * to be passed correctly, but what we are seeing are in fact the vestiges - * (traces) or the previous call. This may seriously fake the test. - * Avoid this by clearing the registers between the first and the second call. - */ -long clear_traces_i _P((a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p), - long a _ long b _ long c _ long d _ long e _ long f _ long g _ long h _ - long i _ long j _ long k _ long l _ long m _ long n _ long o _ long p) -{ return 0; } -float clear_traces_f _P((a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p), - float a _ float b _ float c _ float d _ float e _ float f _ float g _ - float h _ float i _ float j _ float k _ float l _ float m _ float n _ - float o _ float p) -{ return 0.0; } -double clear_traces_d _P((a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p), - double a _ double b _ double c _ double d _ double e _ double f _ double g _ - double h _ double i _ double j _ double k _ double l _ double m _ double n _ - double o _ double p) -{ return 0.0; } -J clear_traces_J () -{ J j; j.l1 = j.l2 = 0; return j; } -void clear_traces() -{ clear_traces_i(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); - clear_traces_f(0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0); - clear_traces_d(0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0); - clear_traces_J(); -} - -int main () -{ - out = stdout; - - vacall_function = &simulator; - - /* void tests */ - v_v(); - clear_traces(); - current_function = (void*) &v_v; (FTYPE(void,(void)) vacall) (); - - /* int tests */ - { int ir; - - ir = i_v(); - fprintf(out,"->%d\n",ir); - fflush(out); - ir = 0; clear_traces(); - current_function = (void*) &i_v; ir = (FTYPE(int,(void)) vacall) (); - fprintf(out,"->%d\n",ir); - fflush(out); - - ir = i_i(i1); - fprintf(out,"->%d\n",ir); - fflush(out); - ir = 0; clear_traces(); - current_function = (void*) &i_i; ir = (FTYPE(int,(int)) vacall) (i1); - fprintf(out,"->%d\n",ir); - fflush(out); - - ir = i_i2(i1,i2); - fprintf(out,"->%d\n",ir); - fflush(out); - ir = 0; clear_traces(); - current_function = (void*) &i_i2; ir = (FTYPE(int,(int,int)) vacall) (i1,i2); - fprintf(out,"->%d\n",ir); - fflush(out); - - ir = i_i4(i1,i2,i3,i4); - fprintf(out,"->%d\n",ir); - fflush(out); - ir = 0; clear_traces(); - current_function = (void*) &i_i4; ir = (FTYPE(int,(int,int,int,int)) vacall) (i1,i2,i3,i4); - fprintf(out,"->%d\n",ir); - fflush(out); - - ir = i_i8(i1,i2,i3,i4,i5,i6,i7,i8); - fprintf(out,"->%d\n",ir); - fflush(out); - ir = 0; clear_traces(); - current_function = (void*) &i_i8; ir = (FTYPE(int,(int,int,int,int,int,int,int,int)) vacall) (i1,i2,i3,i4,i5,i6,i7,i8); - fprintf(out,"->%d\n",ir); - fflush(out); - - ir = i_i16(i1,i2,i3,i4,i5,i6,i7,i8,i9,i10,i11,i12,i13,i14,i15,i16); - fprintf(out,"->%d\n",ir); - fflush(out); - ir = 0; clear_traces(); - current_function = (void*) &i_i16; ir = (FTYPE(int,(int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int)) vacall) (i1,i2,i3,i4,i5,i6,i7,i8,i9,i10,i11,i12,i13,i14,i15,i16); - fprintf(out,"->%d\n",ir); - fflush(out); - } - - /* float tests */ - { float fr; - - fr = f_f(f1); - fprintf(out,"->%g\n",fr); - fflush(out); - fr = 0.0; clear_traces(); - current_function = (void*) &f_f; fr = (FTYPE(float,(float)) vacall) (f1); - fprintf(out,"->%g\n",fr); - fflush(out); - - fr = f_f2(f1,f2); - fprintf(out,"->%g\n",fr); - fflush(out); - fr = 0.0; clear_traces(); - current_function = (void*) &f_f2; fr = (FTYPE(float,(float,float)) vacall) (f1,f2); - fprintf(out,"->%g\n",fr); - fflush(out); - - fr = f_f4(f1,f2,f3,f4); - fprintf(out,"->%g\n",fr); - fflush(out); - fr = 0.0; clear_traces(); - current_function = (void*) &f_f4; fr = (FTYPE(float,(float,float,float,float)) vacall) (f1,f2,f3,f4); - fprintf(out,"->%g\n",fr); - fflush(out); - - fr = f_f8(f1,f2,f3,f4,f5,f6,f7,f8); - fprintf(out,"->%g\n",fr); - fflush(out); - fr = 0.0; clear_traces(); - current_function = (void*) &f_f8; fr = (FTYPE(float,(float,float,float,float,float,float,float,float)) vacall) (f1,f2,f3,f4,f5,f6,f7,f8); - fprintf(out,"->%g\n",fr); - fflush(out); - - fr = f_f16(f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12,f13,f14,f15,f16); - fprintf(out,"->%g\n",fr); - fflush(out); - fr = 0.0; clear_traces(); - current_function = (void*) &f_f16; fr = (FTYPE(float,(float,float,float,float,float,float,float,float,float,float,float,float,float,float,float,float)) vacall) (f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12,f13,f14,f15,f16); - fprintf(out,"->%g\n",fr); - fflush(out); - } - - /* double tests */ - { double dr; - - dr = d_d(d1); - fprintf(out,"->%g\n",dr); - fflush(out); - dr = 0.0; clear_traces(); - current_function = (void*) &d_d; dr = (FTYPE(double,(double)) vacall) (d1); - fprintf(out,"->%g\n",dr); - fflush(out); - - dr = d_d2(d1,d2); - fprintf(out,"->%g\n",dr); - fflush(out); - dr = 0.0; clear_traces(); - current_function = (void*) &d_d2; dr = (FTYPE(double,(double,double)) vacall) (d1,d2); - fprintf(out,"->%g\n",dr); - fflush(out); - - dr = d_d4(d1,d2,d3,d4); - fprintf(out,"->%g\n",dr); - fflush(out); - dr = 0.0; clear_traces(); - current_function = (void*) &d_d4; dr = (FTYPE(double,(double,double,double,double)) vacall) (d1,d2,d3,d4); - fprintf(out,"->%g\n",dr); - fflush(out); - - dr = d_d8(d1,d2,d3,d4,d5,d6,d7,d8); - fprintf(out,"->%g\n",dr); - fflush(out); - dr = 0.0; clear_traces(); - current_function = (void*) &d_d8; dr = (FTYPE(double,(double,double,double,double,double,double,double,double)) vacall) (d1,d2,d3,d4,d5,d6,d7,d8); - fprintf(out,"->%g\n",dr); - fflush(out); - - dr = d_d16(d1,d2,d3,d4,d5,d6,d7,d8,d9,d10,d11,d12,d13,d14,d15,d16); - fprintf(out,"->%g\n",dr); - fflush(out); - dr = 0.0; clear_traces(); - current_function = (void*) &d_d16; dr = (FTYPE(double,(double,double,double,double,double,double,double,double,double,double,double,double,double,double,double,double)) vacall) (d1,d2,d3,d4,d5,d6,d7,d8,d9,d10,d11,d12,d13,d14,d15,d16); - fprintf(out,"->%g\n",dr); - fflush(out); - } - - /* pointer tests */ - { void* vpr; - - vpr = vp_vpdpcpsp(&uc1,&d2,str3,&I4); - fprintf(out,"->0x%lx\n",(long)vpr); - fflush(out); - vpr = 0; clear_traces(); - current_function = (void*) &vp_vpdpcpsp; vpr = (FTYPE(void*,(void*,double*,char*,Int*)) vacall) (&uc1,&d2,str3,&I4); - fprintf(out,"->0x%lx\n",(long)vpr); - fflush(out); - } - - /* mixed number tests */ - { uchar ucr; - ushort usr; - double dr; -#ifdef HAVE_LONGLONG - long long llr; -#endif - - ucr = uc_ucsil(uc1,us2,ui3,ul4); - fprintf(out,"->%u\n",ucr); - fflush(out); - ucr = 0; clear_traces(); - current_function = (void*) &uc_ucsil; ucr = (FTYPE(uchar,(uchar,ushort,uint,ulong)) vacall) (uc1,us2,ui3,ul4); - fprintf(out,"->%u\n",ucr); - fflush(out); - - dr = d_iidd(i1,i2,d3,d4); - fprintf(out,"->%g\n",dr); - fflush(out); - dr = 0.0; clear_traces(); - current_function = (void*) &d_iidd; dr = (FTYPE(double,(int,int,double,double)) vacall) (i1,i2,d3,d4); - fprintf(out,"->%g\n",dr); - fflush(out); - - dr = d_idid(i1,d2,i3,d4); - fprintf(out,"->%g\n",dr); - fflush(out); - dr = 0.0; clear_traces(); - current_function = (void*) &d_idid; dr = (FTYPE(double,(int,double,int,double)) vacall) (i1,d2,i3,d4); - fprintf(out,"->%g\n",dr); - fflush(out); - - usr = us_cdcd(c1,d2,c3,d4); - fprintf(out,"->%u\n",usr); - fflush(out); - usr = 0; clear_traces(); - current_function = (void*) &us_cdcd; usr = (FTYPE(ushort,(char,double,char,double)) vacall) (c1,d2,c3,d4); - fprintf(out,"->%u\n",usr); - fflush(out); - -#ifdef HAVE_LONGLONG - llr = ll_flli(f13,ll1,i13); - fprintf(out,"->0x%lx%08lx\n",(long)(llr>>32),(long)(llr&0xffffffff)); - fflush(out); - llr = 0; clear_traces(); - current_function = (void*) &ll_flli; llr = (FTYPE(long long,(float,long long,int)) vacall) (f13,ll1,i13); - fprintf(out,"->0x%lx%08lx\n",(long)(llr>>32),(long)(llr&0xffffffff)); - fflush(out); -#endif - } - -#ifndef SKIP_STRUCTS - /* structure tests */ - { Int Ir; - Char Cr; - Float Fr; - Double Dr; - J Jr; - T Tr; - X Xr; - - Ir = I_III(I1,I2,I3); - fprintf(out,"->{%d}\n",Ir.x); - fflush(out); - Ir.x = 0; clear_traces(); - current_function = (void*) &I_III; Ir = (FTYPE(Int,(Int,Int,Int)) vacall) (I1,I2,I3); - fprintf(out,"->{%d}\n",Ir.x); - fflush(out); - -#ifndef SKIP_EXTRA_STRUCTS - Cr = C_CdC(C1,d2,C3); - fprintf(out,"->{'%c'}\n",Cr.x); - fflush(out); - Cr.x = '\0'; clear_traces(); - current_function = (void*) &C_CdC; Cr = (FTYPE(Char,(Char,double,Char)) vacall) (C1,d2,C3); - fprintf(out,"->{'%c'}\n",Cr.x); - fflush(out); - - Fr = F_Ffd(F1,f2,d3); - fprintf(out,"->{%g}\n",Fr.x); - fflush(out); - Fr.x = 0.0; clear_traces(); - current_function = (void*) &F_Ffd; Fr = (FTYPE(Float,(Float,float,double)) vacall) (F1,f2,d3); - fprintf(out,"->{%g}\n",Fr.x); - fflush(out); - - Dr = D_fDd(f1,D2,d3); - fprintf(out,"->{%g}\n",Dr.x); - fflush(out); - Dr.x = 0.0; clear_traces(); - current_function = (void*) &D_fDd; Dr = (FTYPE(Double,(float,Double,double)) vacall) (f1,D2,d3); - fprintf(out,"->{%g}\n",Dr.x); - fflush(out); -#endif - - Jr = J_JiJ(J1,i2,J2); - fprintf(out,"->{%ld,%ld}\n",Jr.l1,Jr.l2); - fflush(out); - Jr.l1 = Jr.l2 = 0; clear_traces(); - current_function = (void*) &J_JiJ; Jr = (FTYPE(J,(J,int,J)) vacall) (J1,i2,J2); - fprintf(out,"->{%ld,%ld}\n",Jr.l1,Jr.l2); - fflush(out); - -#ifndef SKIP_EXTRA_STRUCTS -#ifndef SKIP_T - Tr = T_TcT(T1,' ',T2); - fprintf(out,"->{\"%c%c%c\"}\n",Tr.c[0],Tr.c[1],Tr.c[2]); - fflush(out); - Tr.c[0] = Tr.c[1] = Tr.c[2] = 0; clear_traces(); - current_function = (void*) &T_TcT; Tr = (FTYPE(T,(T,char,T)) vacall) (T1,' ',T2); - fprintf(out,"->{\"%c%c%c\"}\n",Tr.c[0],Tr.c[1],Tr.c[2]); - fflush(out); -#endif - -#ifndef SKIP_X - Xr = X_BcdB(B1,c2,d3,B2); - fprintf(out,"->{\"%s\",'%c'}\n",Xr.c,Xr.c1); - fflush(out); - Xr.c[0]=Xr.c1='\0'; clear_traces(); - current_function = (void*) &X_BcdB; Xr = (FTYPE(X,(B,char,double,B)) vacall) (B1,c2,d3,B2); - fprintf(out,"->{\"%s\",'%c'}\n",Xr.c,Xr.c1); - fflush(out); -#endif -#endif - } -#endif - - exit(0); -} DELETED ffcall/vacall/tests.output/alpha-dec-osf4.0-cc-O Index: ffcall/vacall/tests.output/alpha-dec-osf4.0-cc-O ================================================================== --- ffcall/vacall/tests.output/alpha-dec-osf4.0-cc-O +++ /dev/null DELETED ffcall/vacall/tests.output/alpha-dec-osf4.0-gcc Index: ffcall/vacall/tests.output/alpha-dec-osf4.0-gcc ================================================================== --- ffcall/vacall/tests.output/alpha-dec-osf4.0-gcc +++ /dev/null DELETED ffcall/vacall/tests.output/alpha-dec-osf4.0a-gcc Index: ffcall/vacall/tests.output/alpha-dec-osf4.0a-gcc ================================================================== --- ffcall/vacall/tests.output/alpha-dec-osf4.0a-gcc +++ /dev/null DELETED ffcall/vacall/tests.output/hppa1.0-hp-hpux8.00-c89 Index: ffcall/vacall/tests.output/hppa1.0-hp-hpux8.00-c89 ================================================================== --- ffcall/vacall/tests.output/hppa1.0-hp-hpux8.00-c89 +++ /dev/null @@ -1,2 +0,0 @@ -Double f(float,Double,double):(0.1,{0.2},0.3)->{0.6} -Double f(float,Double,double):(-1.0842e-19,{0.2},0.3)->{0.5} DELETED ffcall/vacall/tests.output/hppa1.0-hp-hpux8.00-cc Index: ffcall/vacall/tests.output/hppa1.0-hp-hpux8.00-cc ================================================================== --- ffcall/vacall/tests.output/hppa1.0-hp-hpux8.00-cc +++ /dev/null DELETED ffcall/vacall/tests.output/hppa1.0-hp-hpux8.00-cc-Aa Index: ffcall/vacall/tests.output/hppa1.0-hp-hpux8.00-cc-Aa ================================================================== --- ffcall/vacall/tests.output/hppa1.0-hp-hpux8.00-cc-Aa +++ /dev/null @@ -1,2 +0,0 @@ -Double f(float,Double,double):(0.1,{0.2},0.3)->{0.6} -Double f(float,Double,double):(-1.0842e-19,{0.2},0.3)->{0.5} DELETED ffcall/vacall/tests.output/hppa1.0-hp-hpux8.00-gcc263 Index: ffcall/vacall/tests.output/hppa1.0-hp-hpux8.00-gcc263 ================================================================== --- ffcall/vacall/tests.output/hppa1.0-hp-hpux8.00-gcc263 +++ /dev/null @@ -1,2 +0,0 @@ -Char f(Char,double,Char):({'A'},0.2,{'C'})->{'B'} -Char f(Char,double,Char):({'A'},0.2,{'€'})->{'á'} DELETED ffcall/vacall/tests.output/hppa1.1-hp-hpux10.01-cc-O Index: ffcall/vacall/tests.output/hppa1.1-hp-hpux10.01-cc-O ================================================================== --- ffcall/vacall/tests.output/hppa1.1-hp-hpux10.01-cc-O +++ /dev/null DELETED ffcall/vacall/tests.output/hppa1.1-hp-hpux9.05-cc-O Index: ffcall/vacall/tests.output/hppa1.1-hp-hpux9.05-cc-O ================================================================== --- ffcall/vacall/tests.output/hppa1.1-hp-hpux9.05-cc-O +++ /dev/null DELETED ffcall/vacall/tests.output/hppa2.0-hp-hpux10.20-cc-O+DA1.1 Index: ffcall/vacall/tests.output/hppa2.0-hp-hpux10.20-cc-O+DA1.1 ================================================================== --- ffcall/vacall/tests.output/hppa2.0-hp-hpux10.20-cc-O+DA1.1 +++ /dev/null DELETED ffcall/vacall/tests.output/hppa2.0-hp-hpux10.20-gcc Index: ffcall/vacall/tests.output/hppa2.0-hp-hpux10.20-gcc ================================================================== --- ffcall/vacall/tests.output/hppa2.0-hp-hpux10.20-gcc +++ /dev/null @@ -1,6 +0,0 @@ -Char f(Char,double,Char):({'A'},0.2,{'C'})->{'B'} -Char f(Char,double,Char):({'A'},0.2,{''})->{'''} -Float f(Float,float,double):({0.1},0.2,0.3)->{0.6} -Float f(Float,float,double):({0.1},0.2,0.3)->{0} -Double f(float,Double,double):(0.1,{0.2},0.3)->{0.6} -Double f(float,Double,double):(0.1,{0.2},0.3)->{0} DELETED ffcall/vacall/tests.output/i386-pc-cygwin32-gcc Index: ffcall/vacall/tests.output/i386-pc-cygwin32-gcc ================================================================== --- ffcall/vacall/tests.output/i386-pc-cygwin32-gcc +++ /dev/null DELETED ffcall/vacall/tests.output/i386-pc-solaris2.6-gcc Index: ffcall/vacall/tests.output/i386-pc-solaris2.6-gcc ================================================================== --- ffcall/vacall/tests.output/i386-pc-solaris2.6-gcc +++ /dev/null DELETED ffcall/vacall/tests.output/i386-pc-win32-msvc4 Index: ffcall/vacall/tests.output/i386-pc-win32-msvc4 ================================================================== --- ffcall/vacall/tests.output/i386-pc-win32-msvc4 +++ /dev/null DELETED ffcall/vacall/tests.output/i386-pc-win32-msvc5 Index: ffcall/vacall/tests.output/i386-pc-win32-msvc5 ================================================================== --- ffcall/vacall/tests.output/i386-pc-win32-msvc5 +++ /dev/null DELETED ffcall/vacall/tests.output/i386-unknown-sysv4.0-gcc Index: ffcall/vacall/tests.output/i386-unknown-sysv4.0-gcc ================================================================== --- ffcall/vacall/tests.output/i386-unknown-sysv4.0-gcc +++ /dev/null DELETED ffcall/vacall/tests.output/i386-unknown-sysv4.0-usr_bin_cc Index: ffcall/vacall/tests.output/i386-unknown-sysv4.0-usr_bin_cc ================================================================== --- ffcall/vacall/tests.output/i386-unknown-sysv4.0-usr_bin_cc +++ /dev/null DELETED ffcall/vacall/tests.output/i386-unknown-sysv4.0-usr_ucb_cc Index: ffcall/vacall/tests.output/i386-unknown-sysv4.0-usr_ucb_cc ================================================================== --- ffcall/vacall/tests.output/i386-unknown-sysv4.0-usr_ucb_cc +++ /dev/null DELETED ffcall/vacall/tests.output/i486-unknown-linux-gcc Index: ffcall/vacall/tests.output/i486-unknown-linux-gcc ================================================================== --- ffcall/vacall/tests.output/i486-unknown-linux-gcc +++ /dev/null DELETED ffcall/vacall/tests.output/i486-unknown-linux-gcc-traditional Index: ffcall/vacall/tests.output/i486-unknown-linux-gcc-traditional ================================================================== --- ffcall/vacall/tests.output/i486-unknown-linux-gcc-traditional +++ /dev/null DELETED ffcall/vacall/tests.output/i486-unknown-sco3.2v4.2-cc-Of Index: ffcall/vacall/tests.output/i486-unknown-sco3.2v4.2-cc-Of ================================================================== --- ffcall/vacall/tests.output/i486-unknown-sco3.2v4.2-cc-Of +++ /dev/null DELETED ffcall/vacall/tests.output/i486-unknown-sco3.2v4.2-cc-Of-Om Index: ffcall/vacall/tests.output/i486-unknown-sco3.2v4.2-cc-Of-Om ================================================================== --- ffcall/vacall/tests.output/i486-unknown-sco3.2v4.2-cc-Of-Om +++ /dev/null DELETED ffcall/vacall/tests.output/i486-unknown-sco3.2v4.2-gcc Index: ffcall/vacall/tests.output/i486-unknown-sco3.2v4.2-gcc ================================================================== --- ffcall/vacall/tests.output/i486-unknown-sco3.2v4.2-gcc +++ /dev/null DELETED ffcall/vacall/tests.output/i586-pc-beos-gcc Index: ffcall/vacall/tests.output/i586-pc-beos-gcc ================================================================== --- ffcall/vacall/tests.output/i586-pc-beos-gcc +++ /dev/null DELETED ffcall/vacall/tests.output/ia64-unknown-linux-gcc Index: ffcall/vacall/tests.output/ia64-unknown-linux-gcc ================================================================== --- ffcall/vacall/tests.output/ia64-unknown-linux-gcc +++ /dev/null @@ -1,4 +0,0 @@ -Float f(Float,float,double):({0.1},0.2,0.3)->{0.6} -Float f(Float,float,double):({nan},0.1,0.2)->{0.2} -Double f(float,Double,double):(0.1,{0.2},0.3)->{0.6} -Double f(float,Double,double):(0.1,{2.68156e+154},0.2)->{0.2} DELETED ffcall/vacall/tests.output/m68k-sun-sunos4.0-cc-O Index: ffcall/vacall/tests.output/m68k-sun-sunos4.0-cc-O ================================================================== --- ffcall/vacall/tests.output/m68k-sun-sunos4.0-cc-O +++ /dev/null DELETED ffcall/vacall/tests.output/m68k-unknown-linuxlibc6-gcc Index: ffcall/vacall/tests.output/m68k-unknown-linuxlibc6-gcc ================================================================== --- ffcall/vacall/tests.output/m68k-unknown-linuxlibc6-gcc +++ /dev/null DELETED ffcall/vacall/tests.output/mips-dec-ultrix4.4-gcc Index: ffcall/vacall/tests.output/mips-dec-ultrix4.4-gcc ================================================================== --- ffcall/vacall/tests.output/mips-dec-ultrix4.4-gcc +++ /dev/null @@ -1,10 +0,0 @@ -uchar f(uchar,ushort,uint,ulong):(97,2,3,4)->255 -uchar f(uchar,ushort,uint,ulong):(0,0,3,4)->255 -ushort f(char,double,char,double):('a',0.2,'€',0.4)->65506 -ushort f(char,double,char,double):(' -Char f(Char,double,Char):({'A'},0.2,{'C'})->{'B'} -Char f(Char,double,Char):({' -T f(T,char,T):({"the"},' ',{"fox"})->{"box"} -T f(T,char,T):({" -X f(B,char,double,B):({0.1,{1,2,3}},'',0.3,{0.2,{5,4,3}})->{"return val",''} -X f(B,char,double,B):({0.1,{1,2,3}},' DELETED ffcall/vacall/tests.output/mips-sgi-irix4.0.5H-cc-D__STDC__ Index: ffcall/vacall/tests.output/mips-sgi-irix4.0.5H-cc-D__STDC__ ================================================================== --- ffcall/vacall/tests.output/mips-sgi-irix4.0.5H-cc-D__STDC__ +++ /dev/null DELETED ffcall/vacall/tests.output/mips-sgi-irix4.0.5H-cc-ansi Index: ffcall/vacall/tests.output/mips-sgi-irix4.0.5H-cc-ansi ================================================================== --- ffcall/vacall/tests.output/mips-sgi-irix4.0.5H-cc-ansi +++ /dev/null DELETED ffcall/vacall/tests.output/mips-sgi-irix4.0.5H-cc-cckr Index: ffcall/vacall/tests.output/mips-sgi-irix4.0.5H-cc-cckr ================================================================== --- ffcall/vacall/tests.output/mips-sgi-irix4.0.5H-cc-cckr +++ /dev/null DELETED ffcall/vacall/tests.output/mips-sgi-irix4.0.5H-gcc-fpcc-struct-return Index: ffcall/vacall/tests.output/mips-sgi-irix4.0.5H-gcc-fpcc-struct-return ================================================================== --- ffcall/vacall/tests.output/mips-sgi-irix4.0.5H-gcc-fpcc-struct-return +++ /dev/null DELETED ffcall/vacall/tests.output/mips-sgi-irix4.0.5H-gcc-freg-struct-return Index: ffcall/vacall/tests.output/mips-sgi-irix4.0.5H-gcc-freg-struct-return ================================================================== --- ffcall/vacall/tests.output/mips-sgi-irix4.0.5H-gcc-freg-struct-return +++ /dev/null DELETED ffcall/vacall/tests.output/mips-sgi-irix5.2-cc Index: ffcall/vacall/tests.output/mips-sgi-irix5.2-cc ================================================================== --- ffcall/vacall/tests.output/mips-sgi-irix5.2-cc +++ /dev/null DELETED ffcall/vacall/tests.output/mips-sgi-irix5.2-cc-D__STDC__ Index: ffcall/vacall/tests.output/mips-sgi-irix5.2-cc-D__STDC__ ================================================================== --- ffcall/vacall/tests.output/mips-sgi-irix5.2-cc-D__STDC__ +++ /dev/null DELETED ffcall/vacall/tests.output/mips-sgi-irix5.2-cc-ansi Index: ffcall/vacall/tests.output/mips-sgi-irix5.2-cc-ansi ================================================================== --- ffcall/vacall/tests.output/mips-sgi-irix5.2-cc-ansi +++ /dev/null DELETED ffcall/vacall/tests.output/mips-sgi-irix5.2-cc-cckr Index: ffcall/vacall/tests.output/mips-sgi-irix5.2-cc-cckr ================================================================== --- ffcall/vacall/tests.output/mips-sgi-irix5.2-cc-cckr +++ /dev/null DELETED ffcall/vacall/tests.output/mips-sgi-irix5.2-gcc Index: ffcall/vacall/tests.output/mips-sgi-irix5.2-gcc ================================================================== --- ffcall/vacall/tests.output/mips-sgi-irix5.2-gcc +++ /dev/null DELETED ffcall/vacall/tests.output/mips-sgi-irix5.3-cc Index: ffcall/vacall/tests.output/mips-sgi-irix5.3-cc ================================================================== --- ffcall/vacall/tests.output/mips-sgi-irix5.3-cc +++ /dev/null DELETED ffcall/vacall/tests.output/mips-sgi-irix5.3-cc-D__STDC__ Index: ffcall/vacall/tests.output/mips-sgi-irix5.3-cc-D__STDC__ ================================================================== --- ffcall/vacall/tests.output/mips-sgi-irix5.3-cc-D__STDC__ +++ /dev/null DELETED ffcall/vacall/tests.output/mips-sgi-irix5.3-cc-O Index: ffcall/vacall/tests.output/mips-sgi-irix5.3-cc-O ================================================================== --- ffcall/vacall/tests.output/mips-sgi-irix5.3-cc-O +++ /dev/null DELETED ffcall/vacall/tests.output/mips-sgi-irix5.3-cc-ansi Index: ffcall/vacall/tests.output/mips-sgi-irix5.3-cc-ansi ================================================================== --- ffcall/vacall/tests.output/mips-sgi-irix5.3-cc-ansi +++ /dev/null DELETED ffcall/vacall/tests.output/mips-sgi-irix5.3-cc-cckr Index: ffcall/vacall/tests.output/mips-sgi-irix5.3-cc-cckr ================================================================== --- ffcall/vacall/tests.output/mips-sgi-irix5.3-cc-cckr +++ /dev/null DELETED ffcall/vacall/tests.output/mips-sgi-irix5.3-gcc Index: ffcall/vacall/tests.output/mips-sgi-irix5.3-gcc ================================================================== --- ffcall/vacall/tests.output/mips-sgi-irix5.3-gcc +++ /dev/null DELETED ffcall/vacall/tests.output/mips-sgi-irix6.2-cc-32 Index: ffcall/vacall/tests.output/mips-sgi-irix6.2-cc-32 ================================================================== --- ffcall/vacall/tests.output/mips-sgi-irix6.2-cc-32 +++ /dev/null DELETED ffcall/vacall/tests.output/mips-sgi-irix6.2-cc-64 Index: ffcall/vacall/tests.output/mips-sgi-irix6.2-cc-64 ================================================================== --- ffcall/vacall/tests.output/mips-sgi-irix6.2-cc-64 +++ /dev/null @@ -1,4 +0,0 @@ -Double f(float,Double,double):(0.1,{0.2},0.3)->{0.6} -Double f(float,Double,double):(0.1,{0},0.3)->{0.4} -X f(B,char,double,B):({0.1,{1,2,3}},'',0.3,{0.2,{5,4,3}})->{"return val",''} -X f(B,char,double,B):({1.32687e-315,{1,2,3}},'',0.3,{0,{5,4,3}})->{"return val",''} DELETED ffcall/vacall/tests.output/mips-sgi-irix6.2-cc-64.README Index: ffcall/vacall/tests.output/mips-sgi-irix6.2-cc-64.README ================================================================== --- ffcall/vacall/tests.output/mips-sgi-irix6.2-cc-64.README +++ /dev/null @@ -1,8 +0,0 @@ -On mips-sgi-irix6.2 with "cc -64", vacall does not handle correctly -"double" slots within structure arguments. vacall expects these -"double" values in the integer registers but they are actually passed -in the floating-point registers. -Furthermore, when returning structure values of type { float; double; } -or { double; float; }, both slots are returned in the $f0 and $f2 registers. -vacall returns them both as "double" values instead of returning one as a -"float". DELETED ffcall/vacall/tests.output/mips-sgi-irix6.2-cc-o32-O Index: ffcall/vacall/tests.output/mips-sgi-irix6.2-cc-o32-O ================================================================== --- ffcall/vacall/tests.output/mips-sgi-irix6.2-cc-o32-O +++ /dev/null DELETED ffcall/vacall/tests.output/mips-sgi-irix6.4-cc-64 Index: ffcall/vacall/tests.output/mips-sgi-irix6.4-cc-64 ================================================================== --- ffcall/vacall/tests.output/mips-sgi-irix6.4-cc-64 +++ /dev/null @@ -1,10 +0,0 @@ -int f(16*int):(1,2,3,4,5,6,7,8,9,11,12,13,14,15,16,17)->143 -int f(16*int):(1,2,3,4,5,6,7,8,1,264134704,264131608,1738280894,-20600,263628520,0,-21352)->-1764833485 -float f(16*float):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.1,1.2,1.3,1.4,1.5,1.6,1.7)->14.3 -float f(16*float):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,-3.34068e-25,0,0,0,0,0,0,0)->3.6 -double f(16*double):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.1,1.2,1.3,1.4,1.5,1.6,1.7)->14.3 -double f(16*double):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,-8.04183e-199,0,1.30498e-315,4.01786e-308,5.43231e-312,1.3025e-315,0,5.43231e-312)->3.6 -Double f(float,Double,double):(0.1,{0.2},0.3)->{0.6} -Double f(float,Double,double):(0.1,{1.32692e-315},0.3)->{0.4} -X f(B,char,double,B):({0.1,{1,2,3}},'',0.3,{0.2,{5,4,3}})->{"return val",''} -X f(B,char,double,B):({6.36599e-314,{1,2,3}},'',0.3,{0,{5,4,-1764833485}})->{"return val",''} DELETED ffcall/vacall/tests.output/mips-sgi-irix6.4-cc-64-O Index: ffcall/vacall/tests.output/mips-sgi-irix6.4-cc-64-O ================================================================== --- ffcall/vacall/tests.output/mips-sgi-irix6.4-cc-64-O +++ /dev/null @@ -1,4 +0,0 @@ -Double f(float,Double,double):(0.1,{0.2},0.3)->{0.6} -Double f(float,Double,double):(0.1,{0},0.3)->{0.4} -X f(B,char,double,B):({0.1,{1,2,3}},'',0.3,{0.2,{5,4,3}})->{"return val",''} -X f(B,char,double,B):({0,{1,2,3}},'',0.3,{1.32634e-315,{5,4,3}})->{"return val",''} DELETED ffcall/vacall/tests.output/mips-sgi-irix6.4-cc-n32-O Index: ffcall/vacall/tests.output/mips-sgi-irix6.4-cc-n32-O ================================================================== --- ffcall/vacall/tests.output/mips-sgi-irix6.4-cc-n32-O +++ /dev/null @@ -1,4 +0,0 @@ -Double f(float,Double,double):(0.1,{0.2},0.3)->{0.6} -Double f(float,Double,double):(0.1,{0},0.3)->{0.4} -X f(B,char,double,B):({0.1,{1,2,3}},'',0.3,{0.2,{5,4,3}})->{"return val",''} -X f(B,char,double,B):({0,{1,2,3}},'',0.3,{1.32632e-315,{5,4,3}}) DELETED ffcall/vacall/tests.output/mips-sgi-irix6.4-cc-o32-O Index: ffcall/vacall/tests.output/mips-sgi-irix6.4-cc-o32-O ================================================================== --- ffcall/vacall/tests.output/mips-sgi-irix6.4-cc-o32-O +++ /dev/null DELETED ffcall/vacall/tests.output/mips-sgi-irix6.5-cc-32 Index: ffcall/vacall/tests.output/mips-sgi-irix6.5-cc-32 ================================================================== --- ffcall/vacall/tests.output/mips-sgi-irix6.5-cc-32 +++ /dev/null DELETED ffcall/vacall/tests.output/mips-sgi-irix6.5-gcc Index: ffcall/vacall/tests.output/mips-sgi-irix6.5-gcc ================================================================== --- ffcall/vacall/tests.output/mips-sgi-irix6.5-gcc +++ /dev/null @@ -1,5 +0,0 @@ -Float f(Float,float,double):({0.1},0.2,0.3)->{0.6} -Float f(Float,float,double):({0},0.2,0.3)->{5.64237e-38} -Double f(float,Double,double):(0.1,{0.2},0.3)->{0.6} -Double f(float,Double,double):(0.1,{0},0.3)->{0.1} -T f(T,char,T):({"the"},' ',{"fox"})->{"box"} DELETED ffcall/vacall/tests.output/powerpc-ibm-aix4.1.4.0-cc Index: ffcall/vacall/tests.output/powerpc-ibm-aix4.1.4.0-cc ================================================================== --- ffcall/vacall/tests.output/powerpc-ibm-aix4.1.4.0-cc +++ /dev/null DELETED ffcall/vacall/tests.output/powerpc-ibm-aix4.1.4.0-gcc Index: ffcall/vacall/tests.output/powerpc-ibm-aix4.1.4.0-gcc ================================================================== --- ffcall/vacall/tests.output/powerpc-ibm-aix4.1.4.0-gcc +++ /dev/null DELETED ffcall/vacall/tests.output/powerpc-ibm-aix4.1.4.0-xlc Index: ffcall/vacall/tests.output/powerpc-ibm-aix4.1.4.0-xlc ================================================================== --- ffcall/vacall/tests.output/powerpc-ibm-aix4.1.4.0-xlc +++ /dev/null DELETED ffcall/vacall/tests.output/powerpc-ibm-aix4.1.4.0-xlc-O Index: ffcall/vacall/tests.output/powerpc-ibm-aix4.1.4.0-xlc-O ================================================================== --- ffcall/vacall/tests.output/powerpc-ibm-aix4.1.4.0-xlc-O +++ /dev/null @@ -1,48 +0,0 @@ -int f(void):->99 -int f(void):->-559038737 -int f(int):(1)->2 -int f(int):(1)->-559038737 -int f(2*int):(1,2)->3 -int f(2*int):(1,2)->-559038737 -int f(4*int):(1,2,3,4)->10 -int f(4*int):(1,2,3,4)->-559038737 -int f(8*int):(1,2,3,4,5,6,7,8)->36 -int f(8*int):(1,2,3,4,5,6,7,8)->-559038737 -int f(16*int):(1,2,3,4,5,6,7,8,9,11,12,13,14,15,16,17)->143 -int f(16*int):(1,2,3,4,5,6,7,8,9,11,12,13,14,15,16,17)->14 -float f(float):(0.1)->1.1 -float f(float):(0.1)->1.96182e-44 -float f(2*float):(0.1,0.2)->0.3 -float f(2*float):(0.2,0.2)->1.96182e-44 -float f(4*float):(0.1,0.2,0.3,0.4)->1 -float f(4*float):(0.4,0.4,0.4,0.4)->1.96182e-44 -float f(8*float):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8)->3.6 -float f(8*float):(0.8,0.8,0.8,0.8,0.8,0.8,0.8,0.8)->1.96182e-44 -float f(16*float):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.1,1.2,1.3,1.4,1.5,1.6,1.7)->14.3 -float f(16*float):(0.8,0.8,0.8,0.8,0.8,0.8,0.8,0.8,0.9,1.1,1.2,1.3,1.4,1.5,1.6,1.7)->1.96182e-44 -double f(double):(0.1)->1.1 -double f(double):(0.1)->1.49665e-154 -double f(2*double):(0.1,0.2)->0.3 -double f(2*double):(0.1,0.2)->1.49665e-154 -double f(4*double):(0.1,0.2,0.3,0.4)->1 -double f(4*double):(0.1,0.2,0.3,0.4)->1.49665e-154 -double f(8*double):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8)->3.6 -double f(8*double):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8)->1.49665e-154 -double f(16*double):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.1,1.2,1.3,1.4,1.5,1.6,1.7)->14.3 -double f(16*double):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.1,1.2,1.3,1.4,1.5,1.6,1.7)->1.49665e-154 -void* f(void*,double*,char*,Int*):(0x20000e30,0x20000db8,0x100056f0,0x20000e38)->0x20000db9 -void* f(void*,double*,char*,Int*):(0x20000e30,0x20000db8,0x100056f0,0x20000e38)->0x20000db0 -uchar f(uchar,ushort,uint,ulong):(97,2,3,4)->255 -uchar f(uchar,ushort,uint,ulong):(97,2,3,4)->32 -double f(int,int,double,double):(1,2,0.3,0.4)->3.7 -double f(int,int,double,double):(1,2,0.3,0.4)->1.49665e-154 -double f(int,double,int,double):(1,0.2,3,0.4)->4.6 -double f(int,double,int,double):(1,0.2,3,0.4)->1.49665e-154 -ushort f(char,double,char,double):('a',0.2,'€',0.4)->225 -ushort f(char,double,char,double):('a',0.2,'€',0.4)->8192 -long long f(float,long long,int):(1.4,0x35c6f707fffffffa,0xe)->0x35c6f70800000009 -long long f(float,long long,int):(1.4,0x35c6f707fffffffa,0xe)->0x20000db035c6f708 -Float f(Float,float,double):({0.1},0.2,0.3)->{0.6} -Float f(Float,float,double):({0.1},1.65,0.3)->{2.05} -Double f(float,Double,double):(0.1,{0.2},0.3)->{0.6} -Double f(float,Double,double):(1.65,{0.2},0.3)->{2.15} DELETED ffcall/vacall/tests.output/powerpc-ibm-aix4.1.5.0-cc Index: ffcall/vacall/tests.output/powerpc-ibm-aix4.1.5.0-cc ================================================================== --- ffcall/vacall/tests.output/powerpc-ibm-aix4.1.5.0-cc +++ /dev/null DELETED ffcall/vacall/tests.output/powerpc-ibm-aix4.1.5.0-cc-O Index: ffcall/vacall/tests.output/powerpc-ibm-aix4.1.5.0-cc-O ================================================================== --- ffcall/vacall/tests.output/powerpc-ibm-aix4.1.5.0-cc-O +++ /dev/null DELETED ffcall/vacall/tests.output/powerpc-ibm-aix4.1.5.0-xlc Index: ffcall/vacall/tests.output/powerpc-ibm-aix4.1.5.0-xlc ================================================================== --- ffcall/vacall/tests.output/powerpc-ibm-aix4.1.5.0-xlc +++ /dev/null DELETED ffcall/vacall/tests.output/powerpc-ibm-aix4.1.5.0-xlc-O Index: ffcall/vacall/tests.output/powerpc-ibm-aix4.1.5.0-xlc-O ================================================================== --- ffcall/vacall/tests.output/powerpc-ibm-aix4.1.5.0-xlc-O +++ /dev/null DELETED ffcall/vacall/tests.output/powerpc-ibm-aix4.3.2.0-cc Index: ffcall/vacall/tests.output/powerpc-ibm-aix4.3.2.0-cc ================================================================== --- ffcall/vacall/tests.output/powerpc-ibm-aix4.3.2.0-cc +++ /dev/null DELETED ffcall/vacall/tests.output/powerpc-ibm-aix4.3.2.0-cc-O Index: ffcall/vacall/tests.output/powerpc-ibm-aix4.3.2.0-cc-O ================================================================== --- ffcall/vacall/tests.output/powerpc-ibm-aix4.3.2.0-cc-O +++ /dev/null DELETED ffcall/vacall/tests.output/powerpc-ibm-aix4.3.2.0-xlc Index: ffcall/vacall/tests.output/powerpc-ibm-aix4.3.2.0-xlc ================================================================== --- ffcall/vacall/tests.output/powerpc-ibm-aix4.3.2.0-xlc +++ /dev/null DELETED ffcall/vacall/tests.output/powerpc-ibm-aix4.3.2.0-xlc-O Index: ffcall/vacall/tests.output/powerpc-ibm-aix4.3.2.0-xlc-O ================================================================== --- ffcall/vacall/tests.output/powerpc-ibm-aix4.3.2.0-xlc-O +++ /dev/null DELETED ffcall/vacall/tests.output/powerpc-unknown-linuxlibc6-gcc Index: ffcall/vacall/tests.output/powerpc-unknown-linuxlibc6-gcc ================================================================== --- ffcall/vacall/tests.output/powerpc-unknown-linuxlibc6-gcc +++ /dev/null DELETED ffcall/vacall/tests.output/rs6000-ibm-aix3.2.5-c89 Index: ffcall/vacall/tests.output/rs6000-ibm-aix3.2.5-c89 ================================================================== --- ffcall/vacall/tests.output/rs6000-ibm-aix3.2.5-c89 +++ /dev/null DELETED ffcall/vacall/tests.output/rs6000-ibm-aix3.2.5-cc Index: ffcall/vacall/tests.output/rs6000-ibm-aix3.2.5-cc ================================================================== --- ffcall/vacall/tests.output/rs6000-ibm-aix3.2.5-cc +++ /dev/null @@ -1,65 +0,0 @@ -"tests.c", line 87.0: 1506-167 (W) String literal is longer than target array T1. Literal is truncated on the right. -"tests.c", line 87.0: 1506-167 (W) String literal is longer than target array T2. Literal is truncated on the right. -"tests.c", line 327.34: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 336.39: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 344.39: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 353.39: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 363.39: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 375.39: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 391.39: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 418.39: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 427.39: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 437.39: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 449.39: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 465.39: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 491.39: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 500.39: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 510.39: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 522.39: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 538.39: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 564.39: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 578.39: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 590.39: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 602.39: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 614.39: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 628.39: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 643.39: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 658.39: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 673.39: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 688.39: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 703.39: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 735.21: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 739.22: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 748.24: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 756.24: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 764.24: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 772.24: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 780.24: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 788.24: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 800.24: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 808.24: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 816.24: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 824.24: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 832.24: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 844.24: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 852.24: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 860.24: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 868.24: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 876.24: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 888.24: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 902.24: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 910.24: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 918.24: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 926.24: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 943.24: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 951.24: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 951.35: 1506-040 (S) Aggregates must be of compatible types for assignment. -"tests.c", line 959.24: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 959.35: 1506-040 (S) Aggregates must be of compatible types for assignment. -"tests.c", line 967.24: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 967.35: 1506-040 (S) Aggregates must be of compatible types for assignment. -"tests.c", line 976.24: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 976.35: 1506-040 (S) Aggregates must be of compatible types for assignment. -"tests.c", line 985.24: 1506-106 (W) Address operator in front of address specifier ignored. -"tests.c", line 985.36: 1506-040 (S) Aggregates must be of compatible types for assignment. -make: *** [tests.o] Error 1 DELETED ffcall/vacall/tests.output/rs6000-ibm-aix3.2.5-gcc Index: ffcall/vacall/tests.output/rs6000-ibm-aix3.2.5-gcc ================================================================== --- ffcall/vacall/tests.output/rs6000-ibm-aix3.2.5-gcc +++ /dev/null @@ -1,12 +0,0 @@ -float f(16*float):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.1,1.2,1.3,1.4,1.5,1.6,1.7)->14.3 -float f(16*float):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.1,1.2,1.3,1.4,0,1.6,1.7)->12.8 -double f(16*double):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.1,1.2,1.3,1.4,1.5,1.6,1.7)->14.3 -double f(16*double):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.1,1.2,1.3,1.4,0,1.6,1.7)->12.8 -Float f(Float,float,double):({0.1},0.2,0.3)->{0.6} -Float f(Float,float,double):({0},0.1,0.2)->{0.3} -Double f(float,Double,double):(0.1,{0.2},0.3)->{0.6} -Double f(float,Double,double):(0.1,{0},0.2)->{0.3} -T f(T,char,T):({"the"},' ',{"fox"})->{"box"} -T f(T,char,T):({"heX"},' ',{"oxo"})->{"bxo"} -X f(B,char,double,B):({0.1,{1,2,3}},'',0.3,{0.2,{5,4,3}})->{"return val",''} -X f(B,char,double,B):({-2.35344e-185,{2,3,0}},' ',0.3,{1.061e-313,{3,0,0}})->{"return val",' '} DELETED ffcall/vacall/tests.output/rs6000-ibm-aix3.2.5-xlc Index: ffcall/vacall/tests.output/rs6000-ibm-aix3.2.5-xlc ================================================================== --- ffcall/vacall/tests.output/rs6000-ibm-aix3.2.5-xlc +++ /dev/null @@ -1,50 +0,0 @@ -int f(void):->99 -int f(void):->0 -int f(int):(1)->2 -int f(int):(1)->0 -int f(2*int):(1,2)->3 -int f(2*int):(1,2)->0 -int f(4*int):(1,2,3,4)->10 -int f(4*int):(1,2,3,4)->0 -int f(8*int):(1,2,3,4,5,6,7,8)->36 -int f(8*int):(1,2,3,4,5,6,7,8)->0 -int f(16*int):(1,2,3,4,5,6,7,8,9,11,12,13,14,15,16,17)->143 -int f(16*int):(1,2,3,4,5,6,7,8,9,11,12,13,14,15,16,17)->0 -float f(float):(0.1)->1.1 -float f(float):(0)->0 -float f(2*float):(0.1,0.2)->0.3 -float f(2*float):(0,0)->0 -float f(4*float):(0.1,0.2,0.3,0.4)->1 -float f(4*float):(0,0,0,0)->0 -float f(8*float):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8)->3.6 -float f(8*float):(0,0,0,0,0,0,-0,3.56512e+07)->0 -float f(16*float):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.1,1.2,1.3,1.4,1.5,1.6,1.7)->14.3 -float f(16*float):(0,0,0,0,0,0,-0,3.56512e+07,576.02,1.50499e-36,INF,3.56513e+07,INF,1.50499e-36,INF,3.56512e+07)->0 -double f(double):(0.1)->1.1 -double f(double):(1.54901e-314)->3.95253e-323 -double f(2*double):(0.1,0.2)->0.3 -double f(2*double):(1.54901e-314,2.42829e-308)->-8.93837e-25 -double f(4*double):(0.1,0.2,0.3,0.4)->1 -double f(4*double):(1.54901e-314,2.42829e-308,5.29846e-307,5.29846e-307)->-5.13915e-87 -double f(8*double):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8)->3.6 -double f(8*double):(1.54901e-314,2.42829e-308,5.29846e-307,5.29846e-307,2.49419e-310,1.41494e-289,-1.0342e-208,3.56512e+07)->1.35496e+261 -double f(16*double):(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.1,1.2,1.3,1.4,1.5,1.6,1.7)->14.3 -double f(16*double):(1.54901e-314,2.42829e-308,5.29846e-307,5.29846e-307,2.49419e-310,1.41494e-289,-1.0342e-208,3.56512e+07,576.02,1.50499e-36,2.4558e+289,3.56513e+07,1.25578e+58,1.50499e-36,2.43633e+289,3.56512e+07)->3.94688e+290 -void* f(void*,double*,char*,Int*):(0x20052358,0x200522e0,0x10009b6e,0x20052360)->0x200522e1 -void* f(void*,double*,char*,Int*):(0x20052358,0x200522e0,0x10009b6e,0x20052360)->0x0 -uchar f(uchar,ushort,uint,ulong):(97,2,3,4)->255 -uchar f(uchar,ushort,uint,ulong):(97,2,3,4)->0 -double f(int,int,double,double):(1,2,0.3,0.4)->3.7 -double f(int,int,double,double):(1,2,1.54901e-314,2.42829e-308)->7.90505e-323 -double f(int,double,int,double):(1,0.2,3,0.4)->4.6 -double f(int,double,int,double):(1,1.54901e-314,3,2.42829e-308)->7.90505e-323 -ushort f(char,double,char,double):('a',0.2,'€',0.4)->225 -ushort f(char,double,char,double):('a',1.54901e-314,'€',2.42829e-308)->0 -Char f(Char,double,Char):({'A'},0.2,{'C'})->{'B'} -Char f(Char,double,Char):({'A'},1.54901e-314,{'C'})->{'B'} -Float f(Float,float,double):({0.1},0.2,0.3)->{0.6} -Float f(Float,float,double):({0.1},0,2.42829e-308)->{0.1} -Double f(float,Double,double):(0.1,{0.2},0.3)->{0.6} -Double f(float,Double,double):(0,{0.2},2.42829e-308)->{0.2} -X f(B,char,double,B):({0.1,{1,2,3}},'',0.3,{0.2,{5,4,3}})->{"return val",''} -X f(B,char,double,B):({0.1,{1,2,3}},'',1.54901e-314,{0.2,{5,4,3}})->{"return val",''} DELETED ffcall/vacall/tests.output/rs6000-ibm-aix4.2.0.0-cc Index: ffcall/vacall/tests.output/rs6000-ibm-aix4.2.0.0-cc ================================================================== --- ffcall/vacall/tests.output/rs6000-ibm-aix4.2.0.0-cc +++ /dev/null DELETED ffcall/vacall/tests.output/rs6000-ibm-aix4.2.0.0-cc-O Index: ffcall/vacall/tests.output/rs6000-ibm-aix4.2.0.0-cc-O ================================================================== --- ffcall/vacall/tests.output/rs6000-ibm-aix4.2.0.0-cc-O +++ /dev/null DELETED ffcall/vacall/tests.output/rs6000-ibm-aix4.2.0.0-gcc Index: ffcall/vacall/tests.output/rs6000-ibm-aix4.2.0.0-gcc ================================================================== --- ffcall/vacall/tests.output/rs6000-ibm-aix4.2.0.0-gcc +++ /dev/null @@ -1,8 +0,0 @@ -Float f(Float,float,double):({0.1},0.2,0.3)->{0.6} -Float f(Float,float,double):({0},0.1,0.2)->{0.3} -Double f(float,Double,double):(0.1,{0.2},0.3)->{0.6} -Double f(float,Double,double):(0.1,{0},0.2)->{0.3} -T f(T,char,T):({"the"},' ',{"fox"})->{"box"} -T f(T,char,T):({"he”"},' ',{"oxo"})->{"bxo"} -X f(B,char,double,B):({0.1,{1,2,3}},'',0.3,{0.2,{5,4,3}})->{"return val",''} -X f(B,char,double,B):({-2.35344e-185,{2,3,0}},' ',0.3,{1.061e-313,{3,0,0}})->{"return val",' '} DELETED ffcall/vacall/tests.output/rs6000-ibm-aix4.2.0.0-xlc Index: ffcall/vacall/tests.output/rs6000-ibm-aix4.2.0.0-xlc ================================================================== --- ffcall/vacall/tests.output/rs6000-ibm-aix4.2.0.0-xlc +++ /dev/null DELETED ffcall/vacall/tests.output/rs6000-ibm-aix4.2.0.0-xlc-O Index: ffcall/vacall/tests.output/rs6000-ibm-aix4.2.0.0-xlc-O ================================================================== --- ffcall/vacall/tests.output/rs6000-ibm-aix4.2.0.0-xlc-O +++ /dev/null DELETED ffcall/vacall/tests.output/sparc-sun-solaris2.4-cc Index: ffcall/vacall/tests.output/sparc-sun-solaris2.4-cc ================================================================== --- ffcall/vacall/tests.output/sparc-sun-solaris2.4-cc +++ /dev/null DELETED ffcall/vacall/tests.output/sparc-sun-solaris2.4-cc-O Index: ffcall/vacall/tests.output/sparc-sun-solaris2.4-cc-O ================================================================== --- ffcall/vacall/tests.output/sparc-sun-solaris2.4-cc-O +++ /dev/null DELETED ffcall/vacall/tests.output/sparc-sun-solaris2.4-gcc Index: ffcall/vacall/tests.output/sparc-sun-solaris2.4-gcc ================================================================== --- ffcall/vacall/tests.output/sparc-sun-solaris2.4-gcc +++ /dev/null DELETED ffcall/vacall/tests.output/sparc-sun-solaris2.4-gcc-fpcc-struct-return Index: ffcall/vacall/tests.output/sparc-sun-solaris2.4-gcc-fpcc-struct-return ================================================================== --- ffcall/vacall/tests.output/sparc-sun-solaris2.4-gcc-fpcc-struct-return +++ /dev/null DELETED ffcall/vacall/tests.output/sparc-sun-sunos4.1.1-cc Index: ffcall/vacall/tests.output/sparc-sun-sunos4.1.1-cc ================================================================== --- ffcall/vacall/tests.output/sparc-sun-sunos4.1.1-cc +++ /dev/null DELETED ffcall/vacall/tests.output/sparc-sun-sunos4.1.1-gcc Index: ffcall/vacall/tests.output/sparc-sun-sunos4.1.1-gcc ================================================================== --- ffcall/vacall/tests.output/sparc-sun-sunos4.1.1-gcc +++ /dev/null DELETED ffcall/vacall/tests.output/sparc-sun-sunos4.1.3_U1-cc-O Index: ffcall/vacall/tests.output/sparc-sun-sunos4.1.3_U1-cc-O ================================================================== --- ffcall/vacall/tests.output/sparc-sun-sunos4.1.3_U1-cc-O +++ /dev/null DELETED ffcall/vacall/tests.output/sparc-sun-sunos4.1.3_U1-gcc Index: ffcall/vacall/tests.output/sparc-sun-sunos4.1.3_U1-gcc ================================================================== --- ffcall/vacall/tests.output/sparc-sun-sunos4.1.3_U1-gcc +++ /dev/null DELETED ffcall/vacall/tests.output/sparc-unknown-linuxlibc6-gcc Index: ffcall/vacall/tests.output/sparc-unknown-linuxlibc6-gcc ================================================================== --- ffcall/vacall/tests.output/sparc-unknown-linuxlibc6-gcc +++ /dev/null DELETED ffcall/vacall/uniq-u.c Index: ffcall/vacall/uniq-u.c ================================================================== --- ffcall/vacall/uniq-u.c +++ /dev/null @@ -1,278 +0,0 @@ -/* uniq -- remove duplicate lines from a sorted file - Copyright (C) 86, 91, 1995-1998, 1999 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -/* Written by Richard Stallman and David MacKenzie. */ -/* 2000-03-22 Trimmed down to the case of "uniq -u" by Bruno Haible. */ - -#include -#include -#include -#include - -/* The name this program was run with. */ -static char *program_name; - -static void -xalloc_fail (void) -{ - fprintf (stderr, "%s: virtual memory exhausted\n", program_name); - exit (1); -} - -/* Allocate N bytes of memory dynamically, with error checking. */ - -void * -xmalloc (size_t n) -{ - void *p; - - p = malloc (n); - if (p == 0) - xalloc_fail (); - return p; -} - -/* Change the size of an allocated block of memory P to N bytes, - with error checking. - If P is NULL, run xmalloc. */ - -void * -xrealloc (void *p, size_t n) -{ - p = realloc (p, n); - if (p == 0) - xalloc_fail (); - return p; -} - -/* A `struct linebuffer' holds a line of text. */ - -struct linebuffer -{ - size_t size; /* Allocated. */ - size_t length; /* Used. */ - char *buffer; -}; - -/* Initialize linebuffer LINEBUFFER for use. */ - -static void -initbuffer (struct linebuffer *linebuffer) -{ - linebuffer->length = 0; - linebuffer->size = 200; - linebuffer->buffer = (char *) xmalloc (linebuffer->size); -} - -/* Read an arbitrarily long line of text from STREAM into LINEBUFFER. - Keep the newline; append a newline if it's the last line of a file - that ends in a non-newline character. Do not null terminate. - Return LINEBUFFER, except at end of file return 0. */ - -static struct linebuffer * -readline (struct linebuffer *linebuffer, FILE *stream) -{ - int c; - char *buffer = linebuffer->buffer; - char *p = linebuffer->buffer; - char *end = buffer + linebuffer->size - 1; /* Sentinel. */ - - if (feof (stream) || ferror (stream)) - return 0; - - do - { - c = getc (stream); - if (c == EOF) - { - if (p == buffer) - return 0; - if (p[-1] == '\n') - break; - c = '\n'; - } - if (p == end) - { - linebuffer->size *= 2; - buffer = (char *) xrealloc (buffer, linebuffer->size); - p = p - linebuffer->buffer + buffer; - linebuffer->buffer = buffer; - end = buffer + linebuffer->size - 1; - } - *p++ = c; - } - while (c != '\n'); - - linebuffer->length = p - buffer; - return linebuffer; -} - -/* Free linebuffer LINEBUFFER's data. */ - -static void -freebuffer (struct linebuffer *linebuffer) -{ - free (linebuffer->buffer); -} - -/* Undefine, to avoid warning about redefinition on some systems. */ -#undef min -#define min(x, y) ((x) < (y) ? (x) : (y)) - -/* Return zero if two strings OLD and NEW match, nonzero if not. - OLD and NEW point not to the beginnings of the lines - but rather to the beginnings of the fields to compare. - OLDLEN and NEWLEN are their lengths. */ - -static int -different (const char *old, const char *new, size_t oldlen, size_t newlen) -{ - int order; - - order = memcmp (old, new, min (oldlen, newlen)); - - if (order == 0) - return oldlen - newlen; - return order; -} - -/* Output the line in linebuffer LINE to stream STREAM - provided that the switches say it should be output. - If requested, print the number of times it occurred, as well; - LINECOUNT + 1 is the number of times that the line occurred. */ - -static void -writeline (const struct linebuffer *line, FILE *stream, int linecount) -{ - if (linecount == 0) - fwrite (line->buffer, 1, line->length, stream); -} - -/* Process input file INFILE with output to OUTFILE. - If either is "-", use the standard I/O stream for it instead. */ - -static void -check_file (const char *infile, const char *outfile) -{ - FILE *istream; - FILE *ostream; - struct linebuffer lb1, lb2; - struct linebuffer *thisline, *prevline, *exch; - char *prevfield, *thisfield; - size_t prevlen, thislen; - int match_count = 0; - - if (!strcmp (infile, "-")) - istream = stdin; - else - istream = fopen (infile, "r"); - if (istream == NULL) - { - fprintf (stderr, "%s: error opening %s\n", program_name, infile); - exit (1); - } - - if (!strcmp (outfile, "-")) - ostream = stdout; - else - ostream = fopen (outfile, "w"); - if (ostream == NULL) - { - fprintf (stderr, "%s: error opening %s\n", program_name, outfile); - exit (1); - } - - thisline = &lb1; - prevline = &lb2; - - initbuffer (thisline); - initbuffer (prevline); - - if (readline (prevline, istream) == 0) - goto closefiles; - prevfield = prevline->buffer; - prevlen = prevline->length; - - while (!feof (istream)) - { - int match; - if (readline (thisline, istream) == 0) - break; - thisfield = thisline->buffer; - thislen = thisline->length; - match = !different (thisfield, prevfield, thislen, prevlen); - - if (match) - ++match_count; - - if (!match) - { - writeline (prevline, ostream, match_count); - exch = prevline; - prevline = thisline; - thisline = exch; - prevfield = thisfield; - prevlen = thislen; - if (!match) - match_count = 0; - } - } - - writeline (prevline, ostream, match_count); - - closefiles: - if (ferror (istream) || fclose (istream) == EOF) - { - fprintf (stderr, "%s: error reading %s\n", program_name, infile); - exit (1); - } - - if (ferror (ostream) || fclose (ostream) == EOF) - { - fprintf (stderr, "%s: error writing %s\n", program_name, outfile); - exit (1); - } - - freebuffer (&lb1); - freebuffer (&lb2); -} - -int -main (int argc, char **argv) -{ - const char *infile = "-"; - const char *outfile = "-"; - int optind = 1; - - program_name = argv[0]; - - if (optind < argc) - infile = argv[optind++]; - - if (optind < argc) - outfile = argv[optind++]; - - if (optind < argc) - { - fprintf (stderr, "%s: too many arguments\n", program_name); - exit (1); - } - - check_file (infile, outfile); - - exit (0); -} DELETED ffcall/vacall/vacall-alpha.c Index: ffcall/vacall/vacall-alpha.c ================================================================== --- ffcall/vacall/vacall-alpha.c +++ /dev/null @@ -1,149 +0,0 @@ -/* vacall function for alpha CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifndef REENTRANT -#include "vacall.h.in" -#else /* REENTRANT */ -#include "vacall_r.h.in" -#endif - -#ifdef REENTRANT -#define __vacall __vacall_r -register struct { void (*vacall_function) (void*,va_alist); void* arg; } - * env __asm__("$1"); -#endif -register long arg1 __asm__("$16"); -register long arg2 __asm__("$17"); -register long arg3 __asm__("$18"); -register long arg4 __asm__("$19"); -register long arg5 __asm__("$20"); -register long arg6 __asm__("$21"); -register double farg1 __asm__("$f16"); -register double farg2 __asm__("$f17"); -register double farg3 __asm__("$f18"); -register double farg4 __asm__("$f19"); -register double farg5 __asm__("$f20"); -register double farg6 __asm__("$f21"); -register __vaword iret __asm__("$0"); -register __vaword iret2 __asm__("$1"); -register float fret __asm__("$f0"); -register double dret __asm__("$f0"); - -void /* the return type is variable, not void! */ -__vacall (__vaword word1, __vaword word2, __vaword word3, __vaword word4, - __vaword word5, __vaword word6, - __vaword firstword) -{ - __va_alist list; - struct { double farg1, farg2, farg3, farg4, farg5, farg6; - long arg1, arg2, arg3, arg4, arg5, arg6; - } - args; - /* MAGIC ALERT! This is the last struct on the stack, so that - * &args + 1 == &firstword. Look at the assembly code to convince yourself. - */ - /* Move the arguments passed in registers to their stack locations. */ - /* args.arg1 = */ (&firstword)[-6] = word1; - /* args.arg2 = */ (&firstword)[-5] = word2; - /* args.arg3 = */ (&firstword)[-4] = word3; - /* args.arg4 = */ (&firstword)[-3] = word4; - /* args.arg5 = */ (&firstword)[-2] = word5; - /* args.arg6 = */ (&firstword)[-1] = word6; - args.farg1 = farg1; - args.farg2 = farg2; - args.farg3 = farg3; - args.farg4 = farg4; - args.farg5 = farg5; - args.farg6 = farg6; - /* Prepare the va_alist. */ - list.flags = 0; - list.aptr = (long)(&firstword - 6); - list.raddr = (void*)0; - list.rtype = __VAvoid; - list.memargptr = (long)&firstword; - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*vacall_function) (&list); -#else /* REENTRANT */ - (*env->vacall_function) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulonglong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAfloat) { - fret = list.tmp._float; - } else - if (list.rtype == __VAdouble) { - dret = list.tmp._double; - } else - if (list.rtype == __VAvoidp) { - iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - iret = (long) list.raddr; - } else { - /* normal struct return convention */ - if (list.flags & __VA_REGISTER_STRUCT_RETURN) { - if (list.rsize == sizeof(char)) { - iret = *(unsigned char *) list.raddr; - } else - if (list.rsize == sizeof(short)) { - iret = *(unsigned short *) list.raddr; - } else - if (list.rsize == sizeof(int)) { - iret = *(unsigned int *) list.raddr; - } else - if (list.rsize == sizeof(long)) { - iret = *(unsigned long *) list.raddr; - } else - if (list.rsize == 2*sizeof(__vaword)) { - iret = ((__vaword *) list.raddr)[0]; - iret2 = ((__vaword *) list.raddr)[1]; - } - } - } - } -} DELETED ffcall/vacall/vacall-alpha.s Index: ffcall/vacall/vacall-alpha.s ================================================================== --- ffcall/vacall/vacall-alpha.s +++ /dev/null @@ -1,178 +0,0 @@ - .set noreorder - .set volatile - .set noat - .file 1 "vacall-alpha.c" -gcc2_compiled.: -__gnu_compiled_c: -.text - .align 3 - .globl __vacall - .ent __vacall -__vacall: - ldgp $29,0($27) -__vacall..ng: - lda $30,-176($30) - .frame $30,176,$26,0 - stq $26,0($30) - .mask 0x4000000,-176 - .prologue 1 - stq $16,128($30) - stq $17,136($30) - stq $18,144($30) - stq $19,152($30) - stq $20,160($30) - stq $21,168($30) - stt $f16,80($30) - stt $f17,88($30) - stt $f18,96($30) - stt $f19,104($30) - stt $f20,112($30) - stt $f21,120($30) - lda $2,vacall_function - stl $31,16($30) - addq $30,128,$3 - stq $3,24($30) - ldq $27,0($2) - stq $31,32($30) - addq $30,16,$16 - stl $31,40($30) - addq $30,176,$4 - stq $4,72($30) - jsr $26,($27),0 - ldgp $29,0($26) - ldl $2,40($30) - zapnot $2,15,$3 - beq $3,$35 - subq $3,1,$2 - beq $2,$77 - subq $3,2,$2 - bne $2,$38 -$77: - ldl $2,56($30) - insbl $2,7,$2 - sra $2,56,$0 - br $31,$35 - .align 4 -$38: - subq $3,3,$2 - bne $2,$40 - ldl $2,56($30) - extbl $2,0,$2 - zapnot $2,1,$0 - br $31,$35 - .align 4 -$40: - subq $3,4,$2 - bne $2,$42 - ldl $2,56($30) - inswl $2,6,$2 - sra $2,48,$0 - br $31,$35 - .align 4 -$42: - subq $3,5,$2 - bne $2,$44 - ldl $2,56($30) - extwl $2,0,$2 - zapnot $2,3,$0 - br $31,$35 - .align 4 -$44: - subq $3,6,$2 - bne $2,$46 - ldl $0,56($30) - br $31,$35 - .align 4 -$46: - subq $3,7,$2 - bne $2,$48 - ldl $2,56($30) - zapnot $2,15,$0 - br $31,$35 - .align 4 -$48: - subq $3,8,$2 - beq $2,$78 - subq $3,9,$2 - beq $2,$78 - subq $3,10,$2 - beq $2,$78 - ldl $2,40($30) - zapnot $2,15,$3 - subq $3,11,$2 - beq $2,$78 - subq $3,12,$2 - bne $2,$58 - lds $f0,56($30) - br $31,$35 - .align 4 -$58: - subq $3,13,$2 - bne $2,$60 - ldt $f0,56($30) - br $31,$35 - .align 4 -$60: - subq $3,14,$2 - bne $2,$62 -$78: - ldq $0,56($30) - br $31,$35 - .align 4 -$62: - subq $3,15,$2 - bne $2,$35 - ldl $2,16($30) - blbc $2,$65 - ldq $0,32($30) - br $31,$35 - .align 4 -$65: - srl $2,10,$2 - blbc $2,$35 - ldq $3,48($30) - subq $3,1,$2 - bne $2,$68 - ldq $3,32($30) - ldq_u $2,0($3) - extbl $2,$3,$2 - zapnot $2,1,$0 - br $31,$35 - .align 4 -$68: - subq $3,2,$2 - bne $2,$70 - ldq $2,32($30) - bic $2,6,$3 - ldq $3,0($3) - bic $2,1,$2 - extwl $3,$2,$3 - zapnot $3,3,$0 - br $31,$35 - .align 4 -$70: - subq $3,4,$2 - bne $2,$72 - ldq $2,32($30) - ldl $2,0($2) - zapnot $2,15,$0 - br $31,$35 - .align 4 -$72: - subq $3,8,$2 - bne $2,$74 - ldq $2,32($30) - ldq $0,0($2) - br $31,$35 - .align 4 -$74: - subq $3,16,$2 - bne $2,$35 - ldq $2,32($30) - ldq $0,0($2) - ldq $1,8($2) -$35: - ldq $26,0($30) - addq $30,176,$30 - ret $31,($26),1 - .end __vacall DELETED ffcall/vacall/vacall-arm.c Index: ffcall/vacall/vacall-arm.c ================================================================== --- ffcall/vacall/vacall-arm.c +++ /dev/null @@ -1,124 +0,0 @@ -/* vacall function for arm CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifndef REENTRANT -#include "vacall.h.in" -#else /* REENTRANT */ -#include "vacall_r.h.in" -#endif - -#ifdef REENTRANT -#define __vacall __vacall_r -register struct { void (*vacall_function) (void*,va_alist); void* arg; } - * env __asm__("r12"); -#endif -register __vaword iret __asm__("r0"); -register __vaword iret2 __asm__("r1"); -register float fret __asm__("f0"); -register double dret __asm__("f0"); - -void /* the return type is variable, not void! */ -__vacall (__vaword word1, __vaword word2, __vaword word3, __vaword word4, - __vaword firstword) -{ - struct { long retaddr, arg1, arg2, arg3, arg4; } args; - __va_alist list; - /* MAGIC ALERT! - * This is the last struct on the stack, so that - * &args + 1 == &return_address == &firstword - 1. - * Look at the assembly code to convince yourself. - */ - /* Move the arguments passed in registers to their stack locations. */ - args.retaddr = (&firstword)[-1]; /* save the return address */ - (&firstword)[-4] = word1; - (&firstword)[-3] = word2; - (&firstword)[-2] = word3; - (&firstword)[-1] = word4; - /* Prepare the va_alist. */ - list.flags = 0; - list.aptr = (long)(&firstword - 4); - list.raddr = (void*)0; - list.rtype = __VAvoid; - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*vacall_function) (&list); -#else /* REENTRANT */ - (*env->vacall_function) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong || list.rtype == __VAulonglong) { - iret = ((__vaword *) &list.tmp._longlong)[0]; - iret2 = ((__vaword *) &list.tmp._longlong)[1]; - } else - if (list.rtype == __VAfloat) { - fret = list.tmp._float; - } else - if (list.rtype == __VAdouble) { - dret = list.tmp._double; - } else - if (list.rtype == __VAvoidp) { - iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - /* NB: On arm, all structure sizes are divisible by 4. */ - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - iret = (long) list.raddr; - } else { - /* normal struct return convention */ - if (list.flags & __VA_REGISTER_STRUCT_RETURN) { - if (list.rsize == sizeof(char)) { /* can't occur */ - iret = *(unsigned char *) list.raddr; - } else - if (list.rsize == sizeof(short)) { /* can't occur */ - iret = *(unsigned short *) list.raddr; - } else - if (list.rsize == sizeof(int)) { - iret = *(unsigned int *) list.raddr; - } else - if (list.rsize == 2*sizeof(__vaword)) { - iret = ((__vaword *) list.raddr)[0]; - iret2 = ((__vaword *) list.raddr)[1]; - } - } - } - } - (&firstword)[-1] = args.retaddr; /* restore the return address */ -} DELETED ffcall/vacall/vacall-convex.c Index: ffcall/vacall/vacall-convex.c ================================================================== --- ffcall/vacall/vacall-convex.c +++ /dev/null @@ -1,110 +0,0 @@ -/* vacall function for convex CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifndef REENTRANT -#include "vacall.h.in" -#else /* REENTRANT */ -#include "vacall_r.h.in" -#endif - -#ifdef REENTRANT -#define __vacall __vacall_r -register struct { void (*vacall_function) (void*,va_alist); void* arg; } - * env __asm__("s0"); -#endif -register int iret __asm__("s0"); -register long long llret __asm__("s0"); -register float fret __asm__("s0"); -register double dret __asm__("s0"); - -void /* the return type is variable, not void! */ -__vacall (__vaword firstword) -{ - __va_alist list; - /* Prepare the va_alist. */ - list.flags = 0; - list.aptr = (long)&firstword; - list.raddr = (void*)0; - list.rtype = __VAvoid; - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*vacall_function) (&list); -#else /* REENTRANT */ - (*env->vacall_function) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong) { - iret = list.tmp._longlong; - } else - if (list.rtype == __VAulonglong) { - iret = list.tmp._ulonglong; - } else - if (list.rtype == __VAfloat) { - fret = list.tmp._float; - } else - if (list.rtype == __VAdouble) { - dret = list.tmp._double; - } else - if (list.rtype == __VAvoidp) { - iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - iret = (long) list.raddr; - } else { - /* normal struct return convention */ - if (list.flags & __VA_REGISTER_STRUCT_RETURN) { - if (list.rsize == sizeof(char)) { - iret = *(unsigned char *) list.raddr; - } else - if (list.rsize == sizeof(short)) { - iret = *(unsigned short *) list.raddr; - } else - if (list.rsize == sizeof(int)) { - iret = *(unsigned int *) list.raddr; - } else - if (list.rsize == 2*sizeof(__vaword)) { - llret = *(long long *) list.raddr; - } - } - } - } -} DELETED ffcall/vacall/vacall-convex.s Index: ffcall/vacall/vacall-convex.s ================================================================== --- ffcall/vacall/vacall-convex.s +++ /dev/null @@ -1,131 +0,0 @@ -;NO_APP -.fpmode native -gcc2_compiled.: -___gnu_compiled_c: -.text -.text -.align 2 -.globl ___vacall - ds.b "g263" - ds.b "+01\0" -___vacall: - sub.w #32,sp - ld.w #0,s1 - st.w s1,-28(fp) - st.w ap,-24(fp) - st.w s1,-20(fp) - st.w s1,-16(fp) - add.w #-4,sp - pshea -28(fp) - ld.w _vacall_function,a1 - mov sp,ap - calls (a1) - ld.w 12(fp),ap - add.w #8,sp - ld.w -16(fp),s1 - eq.w #0,s1 - jbrs.t L2 - eq.w #1,s1 - jbrs.t L42 - eq.w #2,s1 - jbrs.f L5 -L42: - ld.b -8(fp),s1 - cvtb.w s1,s0 - rtn -L5: - eq.w #3,s1 - jbrs.f L7 - ld.b -8(fp),s1 - jbr L43 -L7: - eq.w #4,s1 - jbrs.f L9 - ld.h -8(fp),s1 - cvth.w s1,s0 - rtn -L9: - eq.w #5,s1 - jbrs.f L11 - ld.h -8(fp),s1 - jbr L44 -L11: - eq.w #6,s1 - jbrs.t L45 - eq.w #7,s1 - jbrs.t L45 - eq.w #8,s1 - jbrs.t L45 - eq.w #9,s1 - jbrs.t L45 - eq.w #10,s1 - jbrs.t L46 - ld.w -16(fp),s1 - eq.w #11,s1 - jbrs.f L23 -L46: - ld.w -4(fp),s0 - rtn -L23: - eq.w #12,s1 - jbrs.f L25 - ld.s -8(fp),s0 - rtn -L25: - eq.w #13,s1 - jbrs.f L27 - ld.d -8(fp),s0 - rtn -L27: - eq.w #14,s1 - jbrs.f L29 -L45: - ld.w -8(fp),s0 - rtn -L29: - eq.w #15,s1 - jbrs.f L2 - ld.w -28(fp),s2 - mov.w s2,s1 - and #1,s1 - eq.w #0,s1 - jbrs.t L32 - ld.w -20(fp),s0 - rtn -L32: - mov.w s2,s1 - and #1024,s1 - eq.w #0,s1 - jbrs.t L2 - ld.w -12(fp),s1 - eq.w #1,s1 - jbrs.f L35 - ld.w -20(fp),a1 - ld.b (a1),s1 -L43: - mov.w s1,s0 - and #0xff,s0 - rtn -L35: - eq.w #2,s1 - jbrs.f L37 - ld.w -20(fp),a1 - ld.h (a1),s1 -L44: - mov.w s1,s0 - and #0xffff,s0 - rtn -L37: - eq.w #4,s1 - jbrs.f L39 - ld.w -20(fp),a1 - ld.w (a1),s0 - rtn -L39: - eq.w #8,s1 - jbrs.f L2 - ld.w -20(fp),a1 - ld.l (a1),s0 -L2: - rtn - ds.h 0 DELETED ffcall/vacall/vacall-hppa.c Index: ffcall/vacall/vacall-hppa.c ================================================================== --- ffcall/vacall/vacall-hppa.c +++ /dev/null @@ -1,225 +0,0 @@ -/* vacall function for hppa CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -/*--------------------------------------------------------------------------- - HPPA Argument Passing Conventions: - - The calling conventions for anonymous functions and for explicitly named - functions are different. Only the convention for explicitly named functions - matters here. - - All arguments, except the first 4 words, are passed on the stack - - growing down! - with word alignment. Doubles take two words and force - double alignment. Structures args are passed as true structures embedded - in the argument stack. They force double alignment and - if they don't - fit entirely in the 4 register words - are passed in memory. - The first 2 words are passed like this: - %r26 = first integer arg, %r25 = second integer arg, or - %fr4L = first float arg, %fr5L = second float arg, or - %fr5 = double arg. - Similarly for the next 2 words, passed in %r24 and %r23, or - %fr6L and %fr7L, or - %fr7. - - To return a structure, the called function copies the return value to - the address supplied in register "%r28". ----------------------------------------------------------------------------*/ - -#ifndef REENTRANT -#include "vacall.h.in" -#else /* REENTRANT */ -#include "vacall_r.h.in" -#endif - -#ifdef REENTRANT -#define __vacall __vacall_r -register struct { void (*vacall_function) (void*,va_alist); void* arg; } - * env __asm__("%r29"); -#endif -register void* sret __asm__("%r28"); -register long arg1 __asm__("%r26"); -register long arg2 __asm__("%r25"); -register long arg3 __asm__("%r24"); -register long arg4 __asm__("%r23"); -register float farg1 __asm__("%fr4"); /* fr4L */ -register float farg2 __asm__("%fr5"); /* fr5L */ -register float farg3 __asm__("%fr6"); /* fr6L */ -register float farg4 __asm__("%fr7"); /* fr7L */ -register double darg1 __asm__("%fr5"); -register double darg2 __asm__("%fr7"); -register int iret __asm__("%r28"); -register float fret __asm__("%fr4"); /* fr4L */ -register double dret __asm__("%fr4"); -register __vaword iret1 __asm__("%r28"); -register __vaword iret2 __asm__("%r29"); - -void /* the return type is variable, not void! */ -__vacall (__vaword word1, __vaword word2, __vaword word3, __vaword word4, - __vaword firstword) -{ - /* gcc-2.6.3 source says: When a parameter is passed in a register, - * stack space is still allocated for it. - */ - /* Note about stack offsets (see vacall-hppa.s): - * &firstword = %r30 - 244, &word4 = %r30 - 240, ..., &word1 = %r30 - 228, - */ - __va_alist list; - /* Move the arguments passed in registers to their stack locations. */ - &word1; /* (&firstword)[4] = word1; */ - &word2; /* (&firstword)[3] = word2; */ - &word3; /* (&firstword)[2] = word3; */ - &word4; /* (&firstword)[1] = word4; */ - list.darg[1] = darg1; - list.darg[0] = darg2; - list.farg[3] = farg1; - list.farg[2] = farg2; - list.farg[1] = farg3; - list.farg[0] = farg4; - /* Prepare the va_alist. */ - list.flags = 0; - list.aptr = (long)(&firstword + 5); - list.raddr = (void*)0; - list.rtype = __VAvoid; - list.structraddr = sret; - list.memargptr = (long)(&firstword + 1); - list.farg_offset = (long)&list.farg[4] - list.aptr; - list.darg_offset = (long)&list.darg[2] - list.aptr; - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*vacall_function) (&list); -#else /* REENTRANT */ - (*env->vacall_function) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong || list.rtype == __VAulonglong) { - iret1 = ((__vaword *) &list.tmp._longlong)[0]; - iret2 = ((__vaword *) &list.tmp._longlong)[1]; - } else - if (list.rtype == __VAfloat) { - fret = list.tmp._float; - iret1 = list.tmp._words[0]; /* HP cc generates a RTNVAL=GR call */ - } else - if (list.rtype == __VAdouble) { - dret = list.tmp._double; - iret1 = list.tmp._words[0]; /* HP cc generates a RTNVAL=GR call */ - iret2 = list.tmp._words[1]; /* i.e. result is expected in r28,r29 */ - } else - if (list.rtype == __VAvoidp) { - iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - iret = (long) list.raddr; - } else { - /* normal struct return convention */ - if (list.flags & __VA_SMALL_STRUCT_RETURN) { - if (list.flags & __VA_OLDGCC_STRUCT_RETURN) { - /* gcc <= 2.6.3 returns structs of size 1,2,4 in registers. */ - if (list.rsize == sizeof(char)) { - iret = *(unsigned char *) list.raddr; - } else - if (list.rsize == sizeof(short)) { - iret = *(unsigned short *) list.raddr; - } else - if (list.rsize == sizeof(int)) { - iret = *(unsigned int *) list.raddr; - } - } else { - /* cc, c89 and gcc >= 2.7 return structs of size <= 8 in registers. */ - if (list.rsize > 0 && list.rsize <= 8) { - if (list.rsize == 1) { - iret = ((unsigned char *) list.raddr)[0]; - } else - if (list.rsize == 2) { - iret = (((unsigned char *) list.raddr)[0] << 8) - | ((unsigned char *) list.raddr)[1]; - } else - if (list.rsize == 3) { - iret = (((unsigned char *) list.raddr)[0] << 16) - | (((unsigned char *) list.raddr)[1] << 8) - | ((unsigned char *) list.raddr)[2]; - } else - if (list.rsize == 4) { - iret = (((unsigned char *) list.raddr)[0] << 24) - | (((unsigned char *) list.raddr)[1] << 16) - | (((unsigned char *) list.raddr)[2] << 8) - | ((unsigned char *) list.raddr)[3]; - } else - if (list.rsize == 5) { - iret1 = (((unsigned char *) list.raddr)[0] << 24) - | (((unsigned char *) list.raddr)[1] << 16) - | (((unsigned char *) list.raddr)[2] << 8) - | ((unsigned char *) list.raddr)[3]; - iret2 = ((unsigned char *) list.raddr)[4]; - } else - if (list.rsize == 6) { - iret1 = (((unsigned char *) list.raddr)[0] << 24) - | (((unsigned char *) list.raddr)[1] << 16) - | (((unsigned char *) list.raddr)[2] << 8) - | ((unsigned char *) list.raddr)[3]; - iret2 = (((unsigned char *) list.raddr)[4] << 8) - | ((unsigned char *) list.raddr)[5]; - } else - if (list.rsize == 7) { - iret1 = (((unsigned char *) list.raddr)[0] << 24) - | (((unsigned char *) list.raddr)[1] << 16) - | (((unsigned char *) list.raddr)[2] << 8) - | ((unsigned char *) list.raddr)[3]; - iret2 = (((unsigned char *) list.raddr)[4] << 16) - | (((unsigned char *) list.raddr)[5] << 8) - | ((unsigned char *) list.raddr)[6]; - } else - if (list.rsize == 8) { - iret1 = (((unsigned char *) list.raddr)[0] << 24) - | (((unsigned char *) list.raddr)[1] << 16) - | (((unsigned char *) list.raddr)[2] << 8) - | ((unsigned char *) list.raddr)[3]; - iret2 = (((unsigned char *) list.raddr)[4] << 24) - | (((unsigned char *) list.raddr)[5] << 16) - | (((unsigned char *) list.raddr)[6] << 8) - | ((unsigned char *) list.raddr)[7]; - } - } - } - } - } - } -} DELETED ffcall/vacall/vacall-hppa.s Index: ffcall/vacall/vacall-hppa.s ================================================================== --- ffcall/vacall/vacall-hppa.s +++ /dev/null @@ -1,230 +0,0 @@ - .code - .IMPORT $global$,DATA - .IMPORT $$dyncall,MILLICODE -; gcc_compiled.: - .IMPORT vacall_function,DATA - .code - - .align 4 - .EXPORT __vacall,ENTRY,PRIV_LEV=3,ARGW0=GR,ARGW1=GR,ARGW2=GR,ARGW3=GR - .label __vacall - .PROC - .CALLINFO FRAME=192,CALLS,SAVE_RP - .ENTRY - stw %r2,-20(0,%r30) - ldo 192(%r30),%r30 - stw %r26,-228(0,%r30) - stw %r25,-232(0,%r30) - stw %r24,-236(0,%r30) - ldo -120(%r30),%r19 - fstds %fr5,8(0,%r19) - fstds %fr7,0(0,%r19) - fstws %fr4L,-4(0,%r19) - fstws %fr5L,-8(0,%r19) - fstws %fr6L,-12(0,%r19) - fstws %fr7L,-16(0,%r19) - stw %r23,-240(0,%r30) - stw 0,-184(0,%r30) - ldo -224(%r30),%r19 - stw %r19,-180(0,%r30) - stw 0,-176(0,%r30) - stw 0,-172(0,%r30) - stw %r28,-152(0,%r30) - ldo -240(%r30),%r19 - stw %r19,-148(0,%r30) - ldi 104,%r19 - stw %r19,-144(0,%r30) - ldi 120,%r19 - stw %r19,-140(0,%r30) - addil L'vacall_function-$global$,%r27 - ldw R'vacall_function-$global$(%r1),%r19 - ldo -184(%r30),%r26 - copy %r19,%r22 - .CALL ARGW0=GR - bl $$dyncall,%r31 - copy %r31,%r2 - ldw -172(0,%r30),%r19 - comib,= 0,%r19,L$0065 - ldw -212(0,%r30),%r2 - comiclr,= 1,%r19,0 - comib,<>,n 2,%r19,L$0006 - .label L$0057 - ldb -160(0,%r30),%r19 - bl L$0065,0 - extrs %r19,31,8,%r28 - .label L$0006 - comib,<>,n 3,%r19,L$0008 - ldb -160(0,%r30),%r28 - bl L$0065,0 - ldw -212(0,%r30),%r2 - .label L$0008 - comib,<>,n 4,%r19,L$0010 - ldh -160(0,%r30),%r19 - bl L$0003,0 - extrs %r19,31,16,%r28 - .label L$0010 - comib,<>,n 5,%r19,L$0012 - ldh -160(0,%r30),%r28 - bl L$0065,0 - ldw -212(0,%r30),%r2 - .label L$0012 - comib,=,n 6,%r19,L$0060 - comib,=,n 7,%r19,L$0060 - comib,=,n 8,%r19,L$0060 - comib,= 9,%r19,L$0060 - ldo -10(%r19),%r19 - comib,>>= 1,%r19,L$0059 - ldw -172(0,%r30),%r19 - comib,<>,n 12,%r19,L$0024 - ldo -152(%r30),%r19 - fldws -8(0,%r19),%fr4L - .label L$0060 - bl L$0003,0 - ldw -160(0,%r30),%r28 - .label L$0024 - comib,<>,n 13,%r19,L$0026 - ldo -152(%r30),%r19 - fldds -8(0,%r19),%fr4 - .label L$0059 - ldw -160(0,%r30),%r28 - bl L$0003,0 - ldw -156(0,%r30),%r29 - .label L$0026 - comiclr,<> 14,%r19,0 - bl,n L$0060,0 - comib,<> 15,%r19,L$0065 - ldw -212(0,%r30),%r2 - ldw -184(0,%r30),%r19 - bb,>=,n %r19,31,L$0031 - ldw -176(0,%r30),%r28 - bl,n L$0003,0 - .label L$0031 - bb,>= %r19,30,L$0065 - ldw -212(0,%r30),%r2 - bb,>= %r19,28,L$0034 - ldw -168(0,%r30),%r19 - comib,=,n 1,%r19,L$0061 - comib,<>,n 2,%r19,L$0037 - ldw -176(0,%r30),%r19 - bl L$0065,0 - ldh 0(0,%r19),%r28 - .label L$0037 - comib,<> 4,%r19,L$0065 - ldw -212(0,%r30),%r2 - ldw -176(0,%r30),%r19 - bl L$0065,0 - ldw 0(0,%r19),%r28 - .label L$0034 - comib,= 0,%r19,L$0065 - ldw -212(0,%r30),%r2 - comib,<<,n 8,%r19,L$0065 - comib,<>,n 1,%r19,L$0042 - .label L$0061 - ldw -176(0,%r30),%r19 - bl L$0003,0 - ldb 0(0,%r19),%r28 - .label L$0042 - comib,<>,n 2,%r19,L$0044 - ldw -176(0,%r30),%r19 - ldb 0(0,%r19),%r20 - ldb 1(0,%r19),%r19 - zdep %r20,23,24,%r20 - bl L$0003,0 - or %r20,%r19,%r28 - .label L$0044 - comib,<> 3,%r19,L$0046 - ldw -176(0,%r30),%r21 - ldb 0(0,%r21),%r19 - ldb 1(0,%r21),%r20 - ldb 2(0,%r21),%r21 - zdep %r19,15,16,%r19 - zdep %r20,23,24,%r20 - or %r19,%r20,%r19 - bl L$0003,0 - or %r19,%r21,%r28 - .label L$0046 - comib,= 4,%r19,L$0062 - ldw -176(0,%r30),%r22 - comib,<>,n 5,%r19,L$0050 - ldb 4(0,%r22),%r29 - .label L$0062 - ldb 0(0,%r22),%r19 - ldb 1(0,%r22),%r20 - ldb 2(0,%r22),%r21 - zdep %r19,7,8,%r19 - zdep %r20,15,16,%r20 - or %r19,%r20,%r19 - zdep %r21,23,24,%r21 - ldb 3(0,%r22),%r20 - or %r19,%r21,%r19 - bl L$0003,0 - or %r19,%r20,%r28 - .label L$0050 - comib,<> 6,%r19,L$0052 - ldw -176(0,%r30),%r22 - ldb 0(0,%r22),%r19 - ldb 1(0,%r22),%r20 - ldb 2(0,%r22),%r21 - zdep %r19,7,8,%r19 - zdep %r20,15,16,%r20 - or %r19,%r20,%r19 - zdep %r21,23,24,%r21 - ldb 3(0,%r22),%r20 - or %r19,%r21,%r19 - or %r19,%r20,%r28 - ldb 4(0,%r22),%r19 - ldb 5(0,%r22),%r20 - bl L$0063,0 - zdep %r19,23,24,%r19 - .label L$0052 - comib,<>,n 7,%r19,L$0054 - ldb 0(0,%r22),%r19 - ldb 1(0,%r22),%r20 - ldb 2(0,%r22),%r21 - zdep %r19,7,8,%r19 - zdep %r20,15,16,%r20 - or %r19,%r20,%r19 - zdep %r21,23,24,%r21 - or %r19,%r21,%r19 - ldb 3(0,%r22),%r20 - ldb 6(0,%r22),%r21 - or %r19,%r20,%r28 - ldb 4(0,%r22),%r19 - ldb 5(0,%r22),%r20 - zdep %r19,15,16,%r19 - zdep %r20,23,24,%r20 - or %r19,%r20,%r19 - bl L$0003,0 - or %r19,%r21,%r29 - .label L$0054 - comib,<> 8,%r19,L$0065 - ldw -212(0,%r30),%r2 - ldw -176(0,%r30),%r22 - ldb 0(0,%r22),%r19 - ldb 1(0,%r22),%r20 - ldb 2(0,%r22),%r21 - zdep %r19,7,8,%r19 - zdep %r20,15,16,%r20 - or %r19,%r20,%r19 - zdep %r21,23,24,%r21 - or %r19,%r21,%r19 - ldb 3(0,%r22),%r20 - ldb 6(0,%r22),%r21 - or %r19,%r20,%r28 - zdep %r21,23,24,%r21 - ldb 4(0,%r22),%r19 - ldb 5(0,%r22),%r20 - zdep %r19,7,8,%r19 - zdep %r20,15,16,%r20 - or %r19,%r20,%r19 - ldb 7(0,%r22),%r20 - or %r19,%r21,%r19 - .label L$0063 - or %r19,%r20,%r29 - .label L$0003 - ldw -212(0,%r30),%r2 - .label L$0065 - bv 0(%r2) - ldo -192(%r30),%r30 - .EXIT - .PROCEND DELETED ffcall/vacall/vacall-i386-macro.S Index: ffcall/vacall/vacall-i386-macro.S ================================================================== --- ffcall/vacall/vacall-i386-macro.S +++ /dev/null @@ -1,127 +0,0 @@ -#include "asmi386.h" -TEXT() - ALIGN(2) -GLOBL(C(__vacall)) - DECLARE_FUNCTION(__vacall) -FUNBEGIN(__vacall) - INSN2(sub,l ,NUM(36),R(esp)) - INSN2(mov,l ,NUM(0),X4 MEM(esp)) - INSN2(lea,l ,X4 MEM_DISP(esp,40),R(ecx)) - INSN2(mov,l ,R(ecx),X4 MEM_DISP(esp,4)) - INSN2(mov,l ,NUM(0),X4 MEM_DISP(esp,8)) - INSN2(mov,l ,NUM(0),X4 MEM_DISP(esp,12)) - INSN2(mov,l ,R(ebx),X4 MEM_DISP(esp,32)) - INSN2(mov,l ,R(esp),R(edx)) - INSN1(push,l ,R(edx)) - INSN2(mov,l ,C(vacall_function),R(edx)) - INSN1(call,_ ,INDIR(R(edx))) - INSN2(add,l ,NUM(4),R(esp)) - INSN2(cmp,l ,NUM(0),X4 MEM_DISP(esp,12)) - INSN1(je,_ ,L3) - INSN2(cmp,l ,NUM(1),X4 MEM_DISP(esp,12)) - INSN1(je,_ ,L45) - INSN2(cmp,l ,NUM(2),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L6) -L45: - INSN2MOVX(movs,b ,X1 MEM_DISP(esp,24),R(eax)) - INSN1(jmp,_ ,L3) -L6: - INSN2(cmp,l ,NUM(3),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L8) - INSN2MOVX(movz,b ,X1 MEM_DISP(esp,24),R(eax)) - INSN1(jmp,_ ,L3) -L8: - INSN2(cmp,l ,NUM(4),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L10) - INSN2MOVX(movs,w ,X2 MEM_DISP(esp,24),R(eax)) - INSN1(jmp,_ ,L3) -L10: - INSN2(cmp,l ,NUM(5),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L12) - INSN2MOVX(movz,w ,X2 MEM_DISP(esp,24),R(eax)) - INSN1(jmp,_ ,L3) -L12: - INSN2(cmp,l ,NUM(6),X4 MEM_DISP(esp,12)) - INSN1(je,_ ,L46) - INSN2(cmp,l ,NUM(7),X4 MEM_DISP(esp,12)) - INSN1(je,_ ,L46) - INSN2(cmp,l ,NUM(8),X4 MEM_DISP(esp,12)) - INSN1(je,_ ,L46) - INSN2(cmp,l ,NUM(9),X4 MEM_DISP(esp,12)) - INSN1(je,_ ,L46) - INSN2(mov,l ,X4 MEM_DISP(esp,12),R(edx)) - INSN2(add,l ,NUM(-10),R(edx)) - INSN2(cmp,l ,NUM(1),R(edx)) - INSN1(ja,_ ,L22) - INSN2(mov,l ,X4 MEM_DISP(esp,24),R(eax)) - INSN2(mov,l ,X4 MEM_DISP(esp,28),R(edx)) - INSN1(jmp,_ ,L3) -L22: - INSN2(cmp,l ,NUM(12),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L24) - INSN1(fld,s ,X4 MEM_DISP(esp,24)) - INSN1(jmp,_ ,L3) -L24: - INSN2(cmp,l ,NUM(13),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L26) - INSN1(fld,l ,X8 MEM_DISP(esp,24)) - INSN1(jmp,_ ,L3) -L26: - INSN2(cmp,l ,NUM(14),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L28) -L46: - INSN2(mov,l ,X4 MEM_DISP(esp,24),R(eax)) - INSN1(jmp,_ ,L3) -L28: - INSN2(cmp,l ,NUM(15),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L3) - INSN2(test,b ,NUM(1),X1 MEM(esp)) - INSN1(jne,_ ,L47) - INSN2(test,b ,NUM(4),X1 MEM_DISP(esp,1)) - INSN1(je,_ ,L33) - INSN2(cmp,l ,NUM(1),X4 MEM_DISP(esp,16)) - INSN1(jne,_ ,L34) - INSN2(mov,l ,X4 MEM_DISP(esp,8),R(edx)) - INSN2MOVX(movz,b ,X1 MEM(edx),R(eax)) - INSN1(jmp,_ ,L3) -L34: - INSN2(cmp,l ,NUM(2),X4 MEM_DISP(esp,16)) - INSN1(jne,_ ,L37) - INSN2(mov,l ,X4 MEM_DISP(esp,8),R(edx)) - INSN2MOVX(movz,w ,X2 MEM(edx),R(eax)) - INSN1(jmp,_ ,L3) -L37: - INSN2(cmp,l ,NUM(4),X4 MEM_DISP(esp,16)) - INSN1(jne,_ ,L39) - INSN2(mov,l ,X4 MEM_DISP(esp,8),R(edx)) - INSN2(mov,l ,X4 MEM(edx),R(eax)) - INSN1(jmp,_ ,L3) -L39: - INSN2(cmp,l ,NUM(8),X4 MEM_DISP(esp,16)) - INSN1(jne,_ ,L33) - INSN2(mov,l ,X4 MEM_DISP(esp,8),R(edx)) - INSN2(mov,l ,X4 MEM(edx),R(eax)) - INSN2(mov,l ,X4 MEM_DISP(esp,8),R(edx)) - INSN2(mov,l ,X4 MEM_DISP(edx,4),R(edx)) - INSN1(jmp,_ ,L3) -L33: - INSN2(test,b ,NUM(24),X1 MEM(esp)) - INSN1(jne,_ ,L42) - INSN2(add,l ,NUM(36),R(esp)) - ret NUM(4) -L42: - INSN2(test,b ,NUM(16),X1 MEM(esp)) - INSN1(je,_ ,L3) -L47: - INSN2(mov,l ,X4 MEM_DISP(esp,8),R(eax)) -L3: - INSN2(test,b ,NUM(2),X1 MEM_DISP(esp,1)) - INSN1(je,_ ,L44) - INSN2(mov,l ,X4 MEM_DISP(esp,36),R(ecx)) - INSN2(mov,l ,X4 MEM_DISP(esp,4),R(esp)) - INSN1(jmp,_ ,INDIR(R(ecx))) -L44: - INSN2(add,l ,NUM(36),R(esp)) - ret -FUNEND() - DELETED ffcall/vacall/vacall-i386-msvc.c Index: ffcall/vacall/vacall-i386-msvc.c ================================================================== --- ffcall/vacall/vacall-i386-msvc.c +++ /dev/null @@ -1,130 +0,0 @@ -#ifdef _MSC_VER -#include "vacall.h" -#endif -#include "asmi386.h" -TEXT() - ALIGN(2) -GLOBL(C(__vacall)) - DECLARE_FUNCTION(__vacall) -FUNBEGIN(__vacall) - INSN2(sub,l ,NUM(36),R(esp)) - INSN2(mov,l ,NUM(0),X4 MEM(esp)) - INSN2(lea,l ,X4 MEM_DISP(esp,40),R(ecx)) - INSN2(mov,l ,R(ecx),X4 MEM_DISP(esp,4)) - INSN2(mov,l ,NUM(0),X4 MEM_DISP(esp,8)) - INSN2(mov,l ,NUM(0),X4 MEM_DISP(esp,12)) - INSN2(mov,l ,R(ebx),X4 MEM_DISP(esp,32)) - INSN2(mov,l ,R(esp),R(edx)) - INSN1(push,l ,R(edx)) - INSN2(mov,l ,C(vacall_function),R(edx)) - INSN1(call,_ ,INDIR(R(edx))) - INSN2(add,l ,NUM(4),R(esp)) - INSN2(cmp,l ,NUM(0),X4 MEM_DISP(esp,12)) - INSN1(je,_ ,L3) - INSN2(cmp,l ,NUM(1),X4 MEM_DISP(esp,12)) - INSN1(je,_ ,L45) - INSN2(cmp,l ,NUM(2),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L6) -L45: - INSN2MOVX(movs,b ,X1 MEM_DISP(esp,24),R(eax)) - INSN1(jmp,_ ,L3) -L6: - INSN2(cmp,l ,NUM(3),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L8) - INSN2MOVX(movz,b ,X1 MEM_DISP(esp,24),R(eax)) - INSN1(jmp,_ ,L3) -L8: - INSN2(cmp,l ,NUM(4),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L10) - INSN2MOVX(movs,w ,X2 MEM_DISP(esp,24),R(eax)) - INSN1(jmp,_ ,L3) -L10: - INSN2(cmp,l ,NUM(5),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L12) - INSN2MOVX(movz,w ,X2 MEM_DISP(esp,24),R(eax)) - INSN1(jmp,_ ,L3) -L12: - INSN2(cmp,l ,NUM(6),X4 MEM_DISP(esp,12)) - INSN1(je,_ ,L46) - INSN2(cmp,l ,NUM(7),X4 MEM_DISP(esp,12)) - INSN1(je,_ ,L46) - INSN2(cmp,l ,NUM(8),X4 MEM_DISP(esp,12)) - INSN1(je,_ ,L46) - INSN2(cmp,l ,NUM(9),X4 MEM_DISP(esp,12)) - INSN1(je,_ ,L46) - INSN2(mov,l ,X4 MEM_DISP(esp,12),R(edx)) - INSN2(add,l ,NUM(-10),R(edx)) - INSN2(cmp,l ,NUM(1),R(edx)) - INSN1(ja,_ ,L22) - INSN2(mov,l ,X4 MEM_DISP(esp,24),R(eax)) - INSN2(mov,l ,X4 MEM_DISP(esp,28),R(edx)) - INSN1(jmp,_ ,L3) -L22: - INSN2(cmp,l ,NUM(12),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L24) - INSN1(fld,s ,X4 MEM_DISP(esp,24)) - INSN1(jmp,_ ,L3) -L24: - INSN2(cmp,l ,NUM(13),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L26) - INSN1(fld,l ,X8 MEM_DISP(esp,24)) - INSN1(jmp,_ ,L3) -L26: - INSN2(cmp,l ,NUM(14),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L28) -L46: - INSN2(mov,l ,X4 MEM_DISP(esp,24),R(eax)) - INSN1(jmp,_ ,L3) -L28: - INSN2(cmp,l ,NUM(15),X4 MEM_DISP(esp,12)) - INSN1(jne,_ ,L3) - INSN2(test,b ,NUM(1),X1 MEM(esp)) - INSN1(jne,_ ,L47) - INSN2(test,b ,NUM(4),X1 MEM_DISP(esp,1)) - INSN1(je,_ ,L33) - INSN2(cmp,l ,NUM(1),X4 MEM_DISP(esp,16)) - INSN1(jne,_ ,L34) - INSN2(mov,l ,X4 MEM_DISP(esp,8),R(edx)) - INSN2MOVX(movz,b ,X1 MEM(edx),R(eax)) - INSN1(jmp,_ ,L3) -L34: - INSN2(cmp,l ,NUM(2),X4 MEM_DISP(esp,16)) - INSN1(jne,_ ,L37) - INSN2(mov,l ,X4 MEM_DISP(esp,8),R(edx)) - INSN2MOVX(movz,w ,X2 MEM(edx),R(eax)) - INSN1(jmp,_ ,L3) -L37: - INSN2(cmp,l ,NUM(4),X4 MEM_DISP(esp,16)) - INSN1(jne,_ ,L39) - INSN2(mov,l ,X4 MEM_DISP(esp,8),R(edx)) - INSN2(mov,l ,X4 MEM(edx),R(eax)) - INSN1(jmp,_ ,L3) -L39: - INSN2(cmp,l ,NUM(8),X4 MEM_DISP(esp,16)) - INSN1(jne,_ ,L33) - INSN2(mov,l ,X4 MEM_DISP(esp,8),R(edx)) - INSN2(mov,l ,X4 MEM(edx),R(eax)) - INSN2(mov,l ,X4 MEM_DISP(esp,8),R(edx)) - INSN2(mov,l ,X4 MEM_DISP(edx,4),R(edx)) - INSN1(jmp,_ ,L3) -L33: - INSN2(test,b ,NUM(24),X1 MEM(esp)) - INSN1(jne,_ ,L42) - INSN2(add,l ,NUM(36),R(esp)) - ret NUM(4) -L42: - INSN2(test,b ,NUM(16),X1 MEM(esp)) - INSN1(je,_ ,L3) -L47: - INSN2(mov,l ,X4 MEM_DISP(esp,8),R(eax)) -L3: - INSN2(test,b ,NUM(2),X1 MEM_DISP(esp,1)) - INSN1(je,_ ,L44) - INSN2(mov,l ,X4 MEM_DISP(esp,36),R(ecx)) - INSN2(mov,l ,X4 MEM_DISP(esp,4),R(esp)) - INSN1(jmp,_ ,INDIR(R(ecx))) -L44: - INSN2(add,l ,NUM(36),R(esp)) - ret -FUNEND() - DELETED ffcall/vacall/vacall-i386.c Index: ffcall/vacall/vacall-i386.c ================================================================== --- ffcall/vacall/vacall-i386.c +++ /dev/null @@ -1,166 +0,0 @@ -/* vacall function for i386 CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifndef REENTRANT -#include "vacall.h.in" -#else /* REENTRANT */ -#include "vacall_r.h.in" -#endif - -#ifdef REENTRANT -typedef struct { void (*vacall_function) (void*,va_alist); void* arg; } env_t; -#endif -register void* sp __asm__("%esp"); -register void* sret __asm__("%ebx"); -register int iret __asm__("%eax"); -/* - * Tell gcc to not use the call-saved registers %esi, %edi, %ebp. - * This ensures that the return sequence does not need to restore registers - * from the stack. - */ -register void* dummy1 __asm__("%esi"); -register void* dummy2 __asm__("%edi"); -register void* dummy3 __asm__("%ebp"); - -void /* the return type is variable, not void! */ -#ifdef REENTRANT -__vacall_r (env_t * env, __vaword firstword) -#else -__vacall (__vaword firstword) -#endif -{ - __va_alist list; - /* Prepare the va_alist. */ - list.flags = 0; - list.aptr = (long)&firstword; - list.raddr = (void*)0; - list.rtype = __VAvoid; - list.structraddr = sret; - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*vacall_function) (&list); -#else /* REENTRANT */ - (*env->vacall_function) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong || list.rtype == __VAulonglong) { - /* This code is EXTREMELY fragile!! */ - /* It depends on the register allocation chosen by gcc. */ - iret = ((__vaword *) &list.tmp._longlong)[0]; - asm volatile ("movl %0,%%edx" : : "g"(((__vaword *) &list.tmp._longlong)[1])); - } else - if (list.rtype == __VAfloat) { - asm volatile ("flds %0": : "m"(list.tmp._float)); - } else - if (list.rtype == __VAdouble) { - asm volatile ("fldl %0": : "m"(list.tmp._double)); - } else - if (list.rtype == __VAvoidp) { - iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - iret = (long) list.raddr; - } else { - /* normal struct return convention */ - if (list.flags & __VA_REGISTER_STRUCT_RETURN) { - if (list.rsize == sizeof(char)) { - iret = *(unsigned char *) list.raddr; - goto done; - } else - if (list.rsize == sizeof(short)) { - iret = *(unsigned short *) list.raddr; - goto done; - } else - if (list.rsize == sizeof(int)) { - iret = *(unsigned int *) list.raddr; - goto done; - } else - if (list.rsize == 2*sizeof(__vaword)) { - /* This code is EXTREMELY fragile!! */ - /* It depends on the register allocation chosen by gcc. */ - iret = ((__vaword *) list.raddr)[0]; - asm volatile ("movl %0,%%edx" : : "g"(((__vaword *) list.raddr)[1])); - goto done; - } - } - if (!(list.flags & (__VA_NEXTGCC_STRUCT_RETURN | __VA_MSVC_STRUCT_RETURN))) { - /* We have to pop the struct return address off the stack. */ - /* Callers compiled with -fomit-frame-pointer expect this. */ - /* Return via a "ret $4" instruction. */ - /* NOTE: This is EXTREMELY fragile. It depends on the fact that - * no registers have to be restored from the stack. Look at the - * assembly code! - */ - sp = __builtin_frame_address(0); -#ifndef REENTRANT - asm volatile ("ret $4"); -#else - /* Also pop env off the stack. */ - asm volatile ("ret $8"); -#endif - /*NOTREACHED*/ - } - if (list.flags & __VA_MSVC_STRUCT_RETURN) { - /* on MSVC, must put the structure address into %eax */ - iret = (long) list.raddr; - } - done: ; - } - } - if (list.flags & __VA_STDCALL_CLEANUP) { - /* Return, and at the same time pop the arguments off the stack. */ - /* Normally done through a "ret $n" instruction. */ - /* Be careful not to clobber %eax and %edx. Only %ecx can be used. */ - /* Use *__builtin_frame_address(0), since __builtin_return_address(0) - * is buggy in gcc-2.7.2. */ - asm volatile ("movl %0,%%ecx" : : "g" (*(void**)__builtin_frame_address(0))); - sp = (void*)list.aptr; - asm volatile ("jmp *%ecx"); - /*NOTREACHED*/ - } -#ifdef REENTRANT - /* Pop env off the stack. */ - /* Callers compiled with -fomit-frame-pointer expect this. */ - sp = __builtin_frame_address(0); - asm volatile ("ret $4"); -#endif -} DELETED ffcall/vacall/vacall-ia64.c Index: ffcall/vacall/vacall-ia64.c ================================================================== --- ffcall/vacall/vacall-ia64.c +++ /dev/null @@ -1,203 +0,0 @@ -/* vacall function for ia64 CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifndef REENTRANT -#include "vacall.h.in" -#else /* REENTRANT */ -#include "vacall_r.h.in" -#endif - -#ifdef REENTRANT -#define __vacall __vacall_r -register struct { void (*vacall_function) (void*,va_alist); void* arg; } - * env __asm__("r15"); -#endif -register double farg1 __asm__("f8"); -register double farg2 __asm__("f9"); -register double farg3 __asm__("f10"); -register double farg4 __asm__("f11"); -register double farg5 __asm__("f12"); -register double farg6 __asm__("f13"); -register double farg7 __asm__("f14"); -register double farg8 __asm__("f15"); -register __vaword* sret __asm__("r8"); -register __vaword iret __asm__("r8"); -register __vaword iret2 __asm__("r9"); -register __vaword iret3 __asm__("r10"); -register __vaword iret4 __asm__("r11"); -register float fret __asm__("f8"); -register double dret __asm__("f8"); - -void /* the return type is variable, not void! */ -__vacall (__vaword word1, __vaword word2, __vaword word3, __vaword word4, - __vaword word5, __vaword word6, __vaword word7, __vaword word8, - __vaword firstword) -{ - /* The default scratch area right below firstword is only 2 words, but - we need 8 words. */ - __vaword room[6]; /* FRAGILE! */ - __va_alist list; - /* Move the arguments passed in registers to their stack locations. */ - (&firstword)[-8] = word1; - (&firstword)[-7] = word2; - (&firstword)[-6] = word3; - (&firstword)[-5] = word4; - (&firstword)[-4] = word5; - (&firstword)[-3] = word6; - (&firstword)[-2] = word7; - (&firstword)[-1] = word8; - list.farg[0] = farg1; - list.farg[1] = farg2; - list.farg[2] = farg3; - list.farg[3] = farg4; - list.farg[4] = farg5; - list.farg[5] = farg6; - list.farg[6] = farg7; - list.farg[7] = farg8; - /* Prepare the va_alist. */ - list.flags = 0; - list.aptr = (long)(&firstword - 8); - list.saptr = &firstword - 8; - list.memfargptr = &list.farg[0]; - list.raddr = (void*)0; - list.rtype = __VAvoid; - list.structraddr = sret; - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*vacall_function) (&list); -#else /* REENTRANT */ - (*env->vacall_function) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulonglong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAfloat) { - fret = list.tmp._float; - } else - if (list.rtype == __VAdouble) { - dret = list.tmp._double; - } else - if (list.rtype == __VAvoidp) { - iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - iret = (long) list.raddr; - } else { - /* normal struct return convention */ - if (list.flags & __VA_REGISTER_STRUCT_RETURN) { - /* Return structs of size <= 32 in registers. */ - if (list.rsize > 0 && list.rsize <= 32) { - iret = (__vaword)((unsigned char *) list.raddr)[0]; - if (list.rsize >= 2) - iret |= (__vaword)((unsigned char *) list.raddr)[1] << 8; - if (list.rsize >= 3) - iret |= (__vaword)((unsigned char *) list.raddr)[2] << 16; - if (list.rsize >= 4) - iret |= (__vaword)((unsigned char *) list.raddr)[3] << 24; - if (list.rsize >= 5) - iret |= (__vaword)((unsigned char *) list.raddr)[4] << 32; - if (list.rsize >= 6) - iret |= (__vaword)((unsigned char *) list.raddr)[5] << 40; - if (list.rsize >= 7) - iret |= (__vaword)((unsigned char *) list.raddr)[6] << 48; - if (list.rsize >= 8) - iret |= (__vaword)((unsigned char *) list.raddr)[7] << 56; - if (list.rsize >= 9) { - iret2 = (__vaword)((unsigned char *) list.raddr)[8]; - if (list.rsize >= 10) - iret2 |= (__vaword)((unsigned char *) list.raddr)[9] << 8; - if (list.rsize >= 11) - iret2 |= (__vaword)((unsigned char *) list.raddr)[10] << 16; - if (list.rsize >= 12) - iret2 |= (__vaword)((unsigned char *) list.raddr)[11] << 24; - if (list.rsize >= 13) - iret2 |= (__vaword)((unsigned char *) list.raddr)[12] << 32; - if (list.rsize >= 14) - iret2 |= (__vaword)((unsigned char *) list.raddr)[13] << 40; - if (list.rsize >= 15) - iret2 |= (__vaword)((unsigned char *) list.raddr)[14] << 48; - if (list.rsize >= 16) - iret2 |= (__vaword)((unsigned char *) list.raddr)[15] << 56; - if (list.rsize >= 17) { - iret3 = (__vaword)((unsigned char *) list.raddr)[16]; - if (list.rsize >= 18) - iret3 |= (__vaword)((unsigned char *) list.raddr)[17] << 8; - if (list.rsize >= 19) - iret3 |= (__vaword)((unsigned char *) list.raddr)[18] << 16; - if (list.rsize >= 20) - iret3 |= (__vaword)((unsigned char *) list.raddr)[19] << 24; - if (list.rsize >= 21) - iret3 |= (__vaword)((unsigned char *) list.raddr)[20] << 32; - if (list.rsize >= 22) - iret3 |= (__vaword)((unsigned char *) list.raddr)[21] << 40; - if (list.rsize >= 23) - iret3 |= (__vaword)((unsigned char *) list.raddr)[22] << 48; - if (list.rsize >= 24) - iret3 |= (__vaword)((unsigned char *) list.raddr)[23] << 56; - if (list.rsize >= 25) { - iret4 = (__vaword)((unsigned char *) list.raddr)[24]; - if (list.rsize >= 26) - iret4 |= (__vaword)((unsigned char *) list.raddr)[25] << 8; - if (list.rsize >= 27) - iret4 |= (__vaword)((unsigned char *) list.raddr)[26] << 16; - if (list.rsize >= 28) - iret4 |= (__vaword)((unsigned char *) list.raddr)[27] << 24; - if (list.rsize >= 29) - iret4 |= (__vaword)((unsigned char *) list.raddr)[28] << 32; - if (list.rsize >= 30) - iret4 |= (__vaword)((unsigned char *) list.raddr)[29] << 40; - if (list.rsize >= 31) - iret4 |= (__vaword)((unsigned char *) list.raddr)[30] << 48; - if (list.rsize >= 32) - iret4 |= (__vaword)((unsigned char *) list.raddr)[31] << 56; - } - } - } - } - } - } - } -} DELETED ffcall/vacall/vacall-ia64.s Index: ffcall/vacall/vacall-ia64.s ================================================================== --- ffcall/vacall/vacall-ia64.s +++ /dev/null @@ -1,554 +0,0 @@ - .file "vacall-ia64.c" - .version "01.01" -.text - .align 16 - .global __vacall# - .proc __vacall# -__vacall: - alloc r44 = ar.pfs, 8, 5, 1, 0 - adds r12 = -208, r12 - mov r43 = b0 - ;; - adds r15 = 208, r12 - adds r14 = 224, r12 - adds r16 = 208, r12 - ;; - adds r22 = -112, r15 - adds r20 = -64, r14 - adds r23 = 208, r12 - adds r15 = -56, r14 - ;; - stfd [r22] = f8 - st8 [r20] = r32 - adds r14 = -104, r16 - st8 [r15] = r33 - adds r17 = 224, r12 - ;; - stfd [r14] = f9 - adds r16 = -96, r16 - adds r15 = -48, r17 - ;; - stfd [r16] = f10 - adds r14 = -88, r23 - st8 [r15] = r34 - ;; - stfd [r14] = f11 - adds r17 = -40, r17 - adds r16 = 224, r12 - adds r14 = 224, r12 - ;; - st8 [r17] = r35 - adds r42 = -176, r23 - adds r15 = -32, r14 - adds r17 = 224, r12 - adds r14 = -80, r23 - ;; - st8 [r15] = r36 - stfd [r14] = f12 - adds r15 = -24, r16 - adds r14 = -72, r23 - ;; - st8 [r15] = r37 - addl r16 = @ltoff(vacall_function#), gp - stfd [r14] = f13 - adds r15 = -16, r17 - adds r14 = -64, r23 - ;; - st8 [r15] = r38 - addl r23 = 0, r0 - stfd [r14] = f14 - ;; - st8 [r42] = r23 - adds r14 = 208, r12 - ld8 r21 = [r16] - ;; - adds r41 = -192, r14 - adds r40 = -168, r14 - adds r16 = -8, r17 - adds r18 = -56, r14 - adds r19 = -184, r14 - adds r17 = 208, r12 - adds r14 = -128, r14 - ;; - st8 [r16] = r39 - adds r15 = -120, r17 - st8 [r14] = r20 - st4 [r40] = r23 - adds r17 = -136, r17 - ;; - st8 [r15] = r22 - stfd [r18] = f15 - st8 [r19] = r20 - st8 [r17] = r8 - st4 [r41] = r23 - ld8 r14 = [r21] - mov r45 = r41 - ;; - ld8 r15 = [r14], 8 - ;; - ld8 r1 = [r14] - mov b6 = r15 - ;; - br.call.sptk.many b0 = b6 ;; - ld4 r40 = [r40] - ;; - cmp4.ne p6, p7 = 0, r40 - (p7) br.cond.dpnt .L4 - ;; - cmp4.ne p6, p7 = 1, r40 - (p6) br.cond.dptk .L5 - adds r15 = 208, r12 - ;; - adds r14 = -152, r15 - br .L69 -.L5: - cmp4.ne p6, p7 = 2, r40 - (p6) br.cond.dptk .L7 - adds r16 = 208, r12 - ;; - adds r14 = -152, r16 - ;; -.L69: - ld1 r15 = [r14] - ;; - sxt1 r8 = r15 - br .L4 -.L7: - cmp4.ne p6, p7 = 3, r40 - (p6) br.cond.dptk .L9 - adds r17 = 208, r12 - ;; - adds r14 = -152, r17 - ;; - ld1 r8 = [r14] - br .L4 -.L9: - cmp4.ne p6, p7 = 4, r40 - (p6) br.cond.dptk .L11 - adds r23 = 208, r12 - ;; - adds r14 = -152, r23 - ;; - ld2 r15 = [r14] - ;; - sxt2 r8 = r15 - br .L4 -.L11: - cmp4.ne p6, p7 = 5, r40 - (p6) br.cond.dptk .L13 - adds r15 = 208, r12 - ;; - adds r14 = -152, r15 - ;; - ld2 r8 = [r14] - br .L4 -.L13: - cmp4.ne p6, p7 = 6, r40 - (p6) br.cond.dptk .L15 - adds r16 = 208, r12 - ;; - adds r14 = -152, r16 - ;; - ld4 r15 = [r14] - ;; - sxt4 r8 = r15 - br .L4 -.L15: - cmp4.ne p6, p7 = 7, r40 - (p6) br.cond.dptk .L17 - adds r17 = 208, r12 - ;; - adds r14 = -152, r17 - ;; - ld4 r8 = [r14] - br .L4 -.L17: - cmp4.ne p6, p7 = 8, r40 - (p6) br.cond.dptk .L19 - adds r23 = 208, r12 - ;; - adds r14 = -152, r23 - ;; - ld8 r8 = [r14] - br .L4 -.L19: - cmp4.ne p6, p7 = 9, r40 - (p6) br.cond.dptk .L21 - adds r15 = 208, r12 - ;; - adds r14 = -152, r15 - ;; - ld8 r8 = [r14] - br .L4 -.L21: - cmp4.ne p6, p7 = 10, r40 - (p7) br.cond.dpnt .L70 - ;; - cmp4.ne p6, p7 = 11, r40 - (p6) br.cond.dptk .L25 - adds r17 = 208, r12 - ;; - adds r14 = -152, r17 - ;; - ld8 r8 = [r14] - br .L4 -.L25: - cmp4.ne p6, p7 = 12, r40 - (p6) br.cond.dptk .L27 - adds r23 = 208, r12 - ;; - adds r14 = -152, r23 - ;; - ldfs f8 = [r14] - br .L4 -.L27: - cmp4.ne p6, p7 = 13, r40 - (p6) br.cond.dptk .L29 - adds r15 = 208, r12 - ;; - adds r14 = -152, r15 - ;; - ldfd f8 = [r14] - br .L4 -.L29: - cmp4.ne p6, p7 = 14, r40 - (p6) br.cond.dptk .L31 -.L70: - adds r16 = 208, r12 - ;; - adds r14 = -152, r16 - ;; - ld8 r8 = [r14] - br .L4 -.L31: - cmp4.ne p6, p7 = 15, r40 - (p6) br.cond.dptk .L4 - ld4 r15 = [r41] - ;; - and r14 = 1, r15 - ;; - cmp4.eq p6, p7 = 0, r14 - (p6) br.cond.dptk .L34 - ld8 r8 = [r42] - br .L4 -.L34: - addl r14 = 1024, r0 - ;; - and r14 = r14, r15 - ;; - cmp4.eq p6, p7 = 0, r14 - (p6) br.cond.dptk .L4 - adds r17 = 208, r12 - ;; - adds r14 = -160, r17 - ;; - ld8 r17 = [r14] - ;; - adds r15 = -1, r17 - ;; - cmp.ltu p6, p7 = 31, r15 - (p6) br.cond.dptk .L4 - ld8 r16 = [r42] - ;; - cmp.geu p6, p7 = 1, r17 - ld1 r8 = [r16] - (p6) br.cond.dptk .L38 - adds r15 = 1, r16 - ;; - ld1 r14 = [r15] - ;; - shl r14 = r14, 8 - ;; - or r8 = r14, r8 -.L38: - cmp.geu p6, p7 = 2, r17 - (p6) br.cond.dptk .L39 - adds r15 = 2, r16 - ;; - ld1 r14 = [r15] - ;; - shl r14 = r14, 16 - ;; - or r8 = r14, r8 -.L39: - cmp.geu p6, p7 = 3, r17 - (p6) br.cond.dptk .L40 - adds r15 = 3, r16 - ;; - ld1 r14 = [r15] - ;; - shl r14 = r14, 24 - ;; - or r8 = r14, r8 -.L40: - cmp.geu p6, p7 = 4, r17 - (p6) br.cond.dptk .L41 - adds r15 = 4, r16 - ;; - ld1 r14 = [r15] - ;; - shl r14 = r14, 32 - ;; - or r8 = r14, r8 -.L41: - cmp.geu p6, p7 = 5, r17 - (p6) br.cond.dptk .L42 - adds r15 = 5, r16 - ;; - ld1 r14 = [r15] - ;; - shl r14 = r14, 40 - ;; - or r8 = r14, r8 -.L42: - cmp.geu p6, p7 = 6, r17 - (p6) br.cond.dptk .L43 - adds r15 = 6, r16 - ;; - ld1 r14 = [r15] - ;; - shl r14 = r14, 48 - ;; - or r8 = r14, r8 -.L43: - cmp.geu p6, p7 = 7, r17 - (p6) br.cond.dptk .L44 - adds r15 = 7, r16 - ;; - ld1 r14 = [r15] - ;; - shl r14 = r14, 56 - ;; - or r8 = r14, r8 -.L44: - cmp.geu p6, p7 = 8, r17 - (p6) br.cond.dptk .L4 - adds r14 = 8, r16 - ;; - cmp.geu p6, p7 = 9, r17 - ld1 r9 = [r14] - (p6) br.cond.dptk .L46 - adds r15 = 9, r16 - ;; - ld1 r14 = [r15] - ;; - shl r14 = r14, 8 - ;; - or r9 = r14, r9 -.L46: - cmp.geu p6, p7 = 10, r17 - (p6) br.cond.dptk .L47 - adds r15 = 10, r16 - ;; - ld1 r14 = [r15] - ;; - shl r14 = r14, 16 - ;; - or r9 = r14, r9 -.L47: - cmp.geu p6, p7 = 11, r17 - (p6) br.cond.dptk .L48 - adds r15 = 11, r16 - ;; - ld1 r14 = [r15] - ;; - shl r14 = r14, 24 - ;; - or r9 = r14, r9 -.L48: - cmp.geu p6, p7 = 12, r17 - (p6) br.cond.dptk .L49 - adds r15 = 12, r16 - ;; - ld1 r14 = [r15] - ;; - shl r14 = r14, 32 - ;; - or r9 = r14, r9 -.L49: - cmp.geu p6, p7 = 13, r17 - (p6) br.cond.dptk .L50 - adds r15 = 13, r16 - ;; - ld1 r14 = [r15] - ;; - shl r14 = r14, 40 - ;; - or r9 = r14, r9 -.L50: - cmp.geu p6, p7 = 14, r17 - (p6) br.cond.dptk .L51 - adds r15 = 14, r16 - ;; - ld1 r14 = [r15] - ;; - shl r14 = r14, 48 - ;; - or r9 = r14, r9 -.L51: - cmp.geu p6, p7 = 15, r17 - (p6) br.cond.dptk .L52 - adds r15 = 15, r16 - ;; - ld1 r14 = [r15] - ;; - shl r14 = r14, 56 - ;; - or r9 = r14, r9 -.L52: - cmp.geu p6, p7 = 16, r17 - (p6) br.cond.dptk .L4 - adds r14 = 16, r16 - ;; - cmp.geu p6, p7 = 17, r17 - ld1 r10 = [r14] - (p6) br.cond.dptk .L54 - adds r15 = 17, r16 - ;; - ld1 r14 = [r15] - ;; - shl r14 = r14, 8 - ;; - or r10 = r14, r10 -.L54: - cmp.geu p6, p7 = 18, r17 - (p6) br.cond.dptk .L55 - adds r15 = 18, r16 - ;; - ld1 r14 = [r15] - ;; - shl r14 = r14, 16 - ;; - or r10 = r14, r10 -.L55: - cmp.geu p6, p7 = 19, r17 - (p6) br.cond.dptk .L56 - adds r15 = 19, r16 - ;; - ld1 r14 = [r15] - ;; - shl r14 = r14, 24 - ;; - or r10 = r14, r10 -.L56: - cmp.geu p6, p7 = 20, r17 - (p6) br.cond.dptk .L57 - adds r15 = 20, r16 - ;; - ld1 r14 = [r15] - ;; - shl r14 = r14, 32 - ;; - or r10 = r14, r10 -.L57: - cmp.geu p6, p7 = 21, r17 - (p6) br.cond.dptk .L58 - adds r15 = 21, r16 - ;; - ld1 r14 = [r15] - ;; - shl r14 = r14, 40 - ;; - or r10 = r14, r10 -.L58: - cmp.geu p6, p7 = 22, r17 - (p6) br.cond.dptk .L59 - adds r15 = 22, r16 - ;; - ld1 r14 = [r15] - ;; - shl r14 = r14, 48 - ;; - or r10 = r14, r10 -.L59: - cmp.geu p6, p7 = 23, r17 - (p6) br.cond.dptk .L60 - adds r15 = 23, r16 - ;; - ld1 r14 = [r15] - ;; - shl r14 = r14, 56 - ;; - or r10 = r14, r10 -.L60: - cmp.geu p6, p7 = 24, r17 - (p6) br.cond.dptk .L4 - adds r14 = 24, r16 - ;; - cmp.geu p6, p7 = 25, r17 - ld1 r11 = [r14] - (p6) br.cond.dptk .L62 - adds r15 = 25, r16 - ;; - ld1 r14 = [r15] - ;; - shl r14 = r14, 8 - ;; - or r11 = r14, r11 -.L62: - cmp.geu p6, p7 = 26, r17 - (p6) br.cond.dptk .L63 - adds r15 = 26, r16 - ;; - ld1 r14 = [r15] - ;; - shl r14 = r14, 16 - ;; - or r11 = r14, r11 -.L63: - cmp.geu p6, p7 = 27, r17 - (p6) br.cond.dptk .L64 - adds r15 = 27, r16 - ;; - ld1 r14 = [r15] - ;; - shl r14 = r14, 24 - ;; - or r11 = r14, r11 -.L64: - cmp.geu p6, p7 = 28, r17 - (p6) br.cond.dptk .L65 - adds r15 = 28, r16 - ;; - ld1 r14 = [r15] - ;; - shl r14 = r14, 32 - ;; - or r11 = r14, r11 -.L65: - cmp.geu p6, p7 = 29, r17 - (p6) br.cond.dptk .L66 - adds r15 = 29, r16 - ;; - ld1 r14 = [r15] - ;; - shl r14 = r14, 40 - ;; - or r11 = r14, r11 -.L66: - cmp.geu p6, p7 = 30, r17 - (p6) br.cond.dptk .L67 - adds r15 = 30, r16 - ;; - ld1 r14 = [r15] - ;; - shl r14 = r14, 48 - ;; - or r11 = r14, r11 -.L67: - cmp.geu p6, p7 = 31, r17 - (p6) br.cond.dptk .L4 - adds r15 = 31, r16 - ;; - ld1 r14 = [r15] - ;; - shl r14 = r14, 56 - ;; - or r11 = r14, r11 -.L4: - adds r12 = 208, r12 - mov ar.pfs = r44 - mov b0 = r43 - br.ret.sptk.many b0 - .endp __vacall# - .ident "GCC: (GNU) 2.9-ia64-000216 snap-000324" DELETED ffcall/vacall/vacall-m68k.c Index: ffcall/vacall/vacall-m68k.c ================================================================== --- ffcall/vacall/vacall-m68k.c +++ /dev/null @@ -1,132 +0,0 @@ -/* vacall function for m68k CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifndef REENTRANT -#include "vacall.h.in" -#else /* REENTRANT */ -#include "vacall_r.h.in" -#endif - -#ifdef REENTRANT -#define __vacall __vacall_r -register struct { void (*vacall_function) (void*,va_alist); void* arg; } - * env __asm__("a0"); -#endif -register void* sret __asm__("a1"); -register int iret __asm__("d0"); -register int iret2 __asm__("d1"); -register int pret __asm__("a0"); /* some compilers return pointers in a0 */ -register float fret __asm__("d0"); /* d0 */ -register double dret __asm__("d0"); /* d0,d1 */ -register float fp_fret __asm__("fp0"); -register double fp_dret __asm__("fp0"); - -void /* the return type is variable, not void! */ -__vacall (__vaword firstword) -{ - __va_alist list; - /* Prepare the va_alist. */ - list.flags = 0; - list.aptr = (long)&firstword; - list.raddr = (void*)0; - list.rtype = __VAvoid; - list.structraddr = sret; - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*vacall_function) (&list); -#else /* REENTRANT */ - (*env->vacall_function) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong || list.rtype == __VAulonglong) { - iret = ((__vaword *) &list.tmp._longlong)[0]; - iret2 = ((__vaword *) &list.tmp._longlong)[1]; - } else - if (list.rtype == __VAfloat) { - if (list.flags & __VA_FREG_FLOAT_RETURN) { - fp_fret = list.tmp._float; - } else { - if (list.flags & __VA_SUNCC_FLOAT_RETURN) { - dret = (double)list.tmp._float; - } else { - fret = list.tmp._float; - } - } - } else - if (list.rtype == __VAdouble) { - if (list.flags & __VA_FREG_FLOAT_RETURN) { - fp_dret = list.tmp._double; - } else { - dret = list.tmp._double; - } - } else - if (list.rtype == __VAvoidp) { - pret = iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - /* NB: On m68k, all structure sizes are divisible by 2. */ - if (list.flags & __VA_REGISTER_STRUCT_RETURN) { - if (list.rsize == sizeof(char)) { /* can't occur */ - iret = *(unsigned char *) list.raddr; - goto done; - } else - if (list.rsize == sizeof(short)) { - iret = *(unsigned short *) list.raddr; - goto done; - } else - if (list.rsize == sizeof(int)) { - iret = *(unsigned int *) list.raddr; - goto done; - } else - if (list.rsize == 2*sizeof(__vaword)) { - iret = ((__vaword *) list.raddr)[0]; - iret2 = ((__vaword *) list.raddr)[1]; - goto done; - } - } - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - pret = iret = (long) list.raddr; - } else { - /* normal struct return convention */ - } - done: ; - } -} DELETED ffcall/vacall/vacall-m68k.mit.S Index: ffcall/vacall/vacall-m68k.mit.S ================================================================== --- ffcall/vacall/vacall-m68k.mit.S +++ /dev/null @@ -1,179 +0,0 @@ -#include "asmm68k.h" -.text - .even -.globl C(__vacall) - DECLARE_FUNCTION(__vacall) -C(__vacall:) - link $a6,#-32 - moveml #0x3020,$sp@- - clrl $a6@(-32) - lea $a6@(8),$a2 - movel $a2,$a6@(-28) - clrl $a6@(-24) - clrl $a6@(-20) - movel $a1,$a6@(-4) - pea $a6@(-32) - movel C(vacall_function),$a2 - jbsr $a2@ - addql #4,$sp - movel $a6@(-20),$d2 - jeq L4 - moveq #1,$d3 - cmpl $d2,$d3 - jeq L49 - moveq #2,$d3 - cmpl $d2,$d3 - jne L7 -L49: - moveb $a6@(-12),$d0 - extbl $d0 - jra L4 - .even -L7: - moveq #3,$d3 - cmpl $d2,$d3 - jne L9 - clrl $d0 - moveb $a6@(-12),$d0 - jra L4 - .even -L9: - moveq #4,$d3 - cmpl $d2,$d3 - jne L11 - movew $a6@(-12),$d0 - extl $d0 - jra L4 - .even -L11: - moveq #5,$d3 - cmpl $d2,$d3 - jne L13 - clrl $d0 - movew $a6@(-12),$d0 - jra L4 - .even -L13: - moveq #6,$d3 - cmpl $d2,$d3 - jeq L50 - moveq #7,$d3 - cmpl $d2,$d3 - jeq L50 - moveq #8,$d3 - cmpl $d2,$d3 - jeq L50 - moveq #9,$d3 - cmpl $d2,$d3 - jne L21 -L50: - movel $a6@(-12),$d0 - jra L4 - .even -L21: - moveq #-10,$d3 - addl $d3,$d2 - moveq #1,$d3 - cmpl $d2,$d3 - jcs L23 - movel $a6@(-12),$d0 - movel $a6@(-8),$d1 - jra L4 - .even -L23: - movel $a6@(-20),$d2 - moveq #12,$d3 - cmpl $d2,$d3 - jne L25 - movel $a6@(-32),$d2 - btst #6,$d2 - jeq L26 - fmoves $a6@(-12),$fp0 - jra L4 - .even -L26: - btst #5,$d2 - jeq L28 - fmoves $a6@(-12),$fp1 - fmoved $fp1,$sp@- - movel $sp@+,$d0 - movel $sp@+,$d1 - jra L4 - .even -L28: - movel $a6@(-12),$d0 - jra L4 - .even -L25: - moveq #13,$d3 - cmpl $d2,$d3 - jne L31 - btst #6,$a6@(-29) - jeq L32 - fmoved $a6@(-12),$fp0 - jra L4 - .even -L32: - movel $a6@(-12),$d0 - movel $a6@(-8),$d1 - jra L4 - .even -L31: - moveq #14,$d3 - cmpl $d2,$d3 - jne L35 - movel $a6@(-12),$d0 - jra L51 - .even -L35: - moveq #15,$d3 - cmpl $d2,$d3 - jne L4 - movel $a6@(-32),$d2 - btst #10,$d2 - jeq L38 - movel $a6@(-16),$a2 - moveq #1,$d3 - cmpl $a2,$d3 - jne L39 - movel $a6@(-24),$a2 - clrl $d0 - moveb $a2@,$d0 - jra L4 - .even -L39: - moveq #2,$d3 - cmpl $a2,$d3 - jne L42 - movel $a6@(-24),$a2 - clrl $d0 - movew $a2@,$d0 - jra L4 - .even -L42: - moveq #4,$d3 - cmpl $a2,$d3 - jne L44 - movel $a6@(-24),$a2 - movel $a2@,$d0 - jra L4 - .even -L44: - moveq #8,$d3 - cmpl $a2,$d3 - jne L38 - movel $a6@(-24),$a2 - movel $a2@,$d0 - movel $a2@(4),$d1 - jra L4 - .even -L38: - btst #0,$d2 - jeq L4 - movel $a6@(-24),$d0 -L51: - movel $d0,$a0 -L4: - moveml $a6@(-44),#0x40c - unlk $a6 - rts DELETED ffcall/vacall/vacall-m68k.mot.s Index: ffcall/vacall/vacall-m68k.mot.s ================================================================== --- ffcall/vacall/vacall-m68k.mot.s +++ /dev/null @@ -1,184 +0,0 @@ - .file "vacall-m68k.c" - .version "01.01" -gcc2_compiled.: -.text - .align 2 -.globl __vacall - .type __vacall,@function -__vacall: - link.w %a6,#-32 - movm.l #0x3020,-(%sp) - clr.l -32(%a6) - lea (8,%a6),%a2 - move.l %a2,-28(%a6) - clr.l -24(%a6) - clr.l -20(%a6) - move.l %a1,-4(%a6) - pea -32(%a6) - move.l vacall_function,%a2 - jbsr (%a2) - addq.l #4,%sp - move.l -20(%a6),%d2 - jbeq .L4 - moveq.l #1,%d3 - cmp.l %d2,%d3 - jbeq .L49 - moveq.l #2,%d3 - cmp.l %d2,%d3 - jbne .L7 -.L49: - move.b -12(%a6),%d0 - extb.l %d0 - jbra .L4 - .align 2 -.L7: - moveq.l #3,%d3 - cmp.l %d2,%d3 - jbne .L9 - clr.l %d0 - move.b -12(%a6),%d0 - jbra .L4 - .align 2 -.L9: - moveq.l #4,%d3 - cmp.l %d2,%d3 - jbne .L11 - move.w -12(%a6),%d0 - ext.l %d0 - jbra .L4 - .align 2 -.L11: - moveq.l #5,%d3 - cmp.l %d2,%d3 - jbne .L13 - clr.l %d0 - move.w -12(%a6),%d0 - jbra .L4 - .align 2 -.L13: - moveq.l #6,%d3 - cmp.l %d2,%d3 - jbeq .L50 - moveq.l #7,%d3 - cmp.l %d2,%d3 - jbeq .L50 - moveq.l #8,%d3 - cmp.l %d2,%d3 - jbeq .L50 - moveq.l #9,%d3 - cmp.l %d2,%d3 - jbne .L21 -.L50: - move.l -12(%a6),%d0 - jbra .L4 - .align 2 -.L21: - moveq.l #-10,%d3 - add.l %d3,%d2 - moveq.l #1,%d3 - cmp.l %d2,%d3 - jbcs .L23 - move.l -12(%a6),%d0 - move.l -8(%a6),%d1 - jbra .L4 - .align 2 -.L23: - move.l -20(%a6),%d2 - moveq.l #12,%d3 - cmp.l %d2,%d3 - jbne .L25 - move.l -32(%a6),%d2 - btst #6,%d2 - jbeq .L26 - fmove.s -12(%a6),%fp0 - jbra .L4 - .align 2 -.L26: - btst #5,%d2 - jbeq .L28 - fmove.s -12(%a6),%fp1 - fmove.d %fp1,-(%sp) - move.l (%sp)+,%d0 - move.l (%sp)+,%d1 - jbra .L4 - .align 2 -.L28: - move.l -12(%a6),%d0 - jbra .L4 - .align 2 -.L25: - moveq.l #13,%d3 - cmp.l %d2,%d3 - jbne .L31 - btst #6,-29(%a6) - jbeq .L32 - fmove.d -12(%a6),%fp0 - jbra .L4 - .align 2 -.L32: - move.l -12(%a6),%d0 - move.l -8(%a6),%d1 - jbra .L4 - .align 2 -.L31: - moveq.l #14,%d3 - cmp.l %d2,%d3 - jbne .L35 - move.l -12(%a6),%d0 - jbra .L51 - .align 2 -.L35: - moveq.l #15,%d3 - cmp.l %d2,%d3 - jbne .L4 - move.l -32(%a6),%d2 - btst #10,%d2 - jbeq .L38 - move.l -16(%a6),%a2 - moveq.l #1,%d3 - cmp.l %a2,%d3 - jbne .L39 - move.l -24(%a6),%a2 - clr.l %d0 - move.b (%a2),%d0 - jbra .L4 - .align 2 -.L39: - moveq.l #2,%d3 - cmp.l %a2,%d3 - jbne .L42 - move.l -24(%a6),%a2 - clr.l %d0 - move.w (%a2),%d0 - jbra .L4 - .align 2 -.L42: - moveq.l #4,%d3 - cmp.l %a2,%d3 - jbne .L44 - move.l -24(%a6),%a2 - move.l (%a2),%d0 - jbra .L4 - .align 2 -.L44: - moveq.l #8,%d3 - cmp.l %a2,%d3 - jbne .L38 - move.l -24(%a6),%a2 - move.l (%a2),%d0 - move.l 4(%a2),%d1 - jbra .L4 - .align 2 -.L38: - btst #0,%d2 - jbeq .L4 - move.l -24(%a6),%d0 -.L51: - move.l %d0,%a0 -.L4: - movm.l -44(%a6),#0x40c - unlk %a6 - rts -.Lfe1: - .size __vacall,.Lfe1-__vacall - .ident "GCC: (GNU) 2.95.2 19991024 (release)" DELETED ffcall/vacall/vacall-m88k.c Index: ffcall/vacall/vacall-m88k.c ================================================================== --- ffcall/vacall/vacall-m88k.c +++ /dev/null @@ -1,126 +0,0 @@ -/* vacall function for m88k CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifndef REENTRANT -#include "vacall.h.in" -#else /* REENTRANT */ -#include "vacall_r.h.in" -#endif - -#ifdef REENTRANT -#define __vacall __vacall_r -register struct { void (*vacall_function) (void*,va_alist); void* arg; } - * env __asm__("r11"); -#endif -register __vaword* sret __asm__("r12"); -register int iret __asm__("r2"); -register int iret2 __asm__("r3"); -register float fret __asm__("r2"); -register double dret __asm__("r2"); - -void /* the return type is variable, not void! */ -__vacall (__vaword word1, __vaword word2, __vaword word3, __vaword word4, - __vaword word5, __vaword word6, __vaword word7, __vaword word8, - __vaword firstword) -{ - __va_alist list; - /* gcc-2.6.3 source says: When a parameter is passed in a register, - * stack space is still allocated for it. - */ - /* Move the arguments passed in registers to their stack locations. */ - /* - * Is this correct?? I think struct arguments among the first 8 words - * are passed on the stack, not in registers, and we shouldn't overwrite - * them. - */ - (&firstword)[-8] = word1; - (&firstword)[-7] = word2; - (&firstword)[-6] = word3; - (&firstword)[-5] = word4; - (&firstword)[-4] = word5; - (&firstword)[-3] = word6; - (&firstword)[-2] = word7; - (&firstword)[-1] = word8; - /* Prepare the va_alist. */ - list.flags = 0; - list.aptr = (long)&firstword; - list.raddr = (void*)0; - list.rtype = __VAvoid; - list.structraddr = sret; - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*vacall_function) (&list); -#else /* REENTRANT */ - (*env->vacall_function) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong || list.rtype == __VAulonglong) { - iret = ((__vaword *) &list.tmp._longlong)[0]; - iret2 = ((__vaword *) &list.tmp._longlong)[1]; - } else - if (list.rtype == __VAfloat) { - fret = list.tmp._float; - } else - if (list.rtype == __VAdouble) { - dret = list.tmp._double; - } else - if (list.rtype == __VAvoidp) { - iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - iret = (long) list.raddr; - } else { - /* normal struct return convention */ - if (list.flags & __VA_SMALL_STRUCT_RETURN) { - if (list.rsize == sizeof(char)) { - iret = *(unsigned char *) list.raddr; - } else - if (list.rsize == sizeof(short)) { - iret = *(unsigned short *) list.raddr; - } else - if (list.rsize == sizeof(int)) { - iret = *(unsigned int *) list.raddr; - } - } - } - } -} DELETED ffcall/vacall/vacall-m88k.s Index: ffcall/vacall/vacall-m88k.s ================================================================== --- ffcall/vacall/vacall-m88k.s +++ /dev/null @@ -1,134 +0,0 @@ - version "03.00" - file "vacall-m88k.c" -data -gcc2_compiled.: -text - align 8 - global __vacall - type __vacall,#function -__vacall: - or.u #r13,#r0,#hi16(vacall_function) - ld #r11,#r13,#lo16(vacall_function) - subu #r31,#r31,80 - st #r1,#r31,36 -.Ltb0: - st #r2,#r31,80 - st #r3,#r31,84 - st #r4,#r31,88 - st #r5,#r31,92 - st #r6,#r31,96 - st #r7,#r31,100 - st #r8,#r31,104 - st #r9,#r31,108 - st #r0,#r31,40 - addu #r13,#r31,112 - st #r13,#r31,44 - st #r0,#r31,48 - st #r0,#r31,52 - addu #r2,#r31,40 - jsr.n #r11 - st #r12,#r31,72 - ld #r11,#r31,52 - bcnd.n #eq0,#r11,.L4 - cmp #r13,#r11,1 - bb0.n #ne,#r13,.L40 - cmp #r13,#r11,2 - bb1.n #ne,#r13,.L7 - cmp #r13,#r11,3 -.L40: - ld.b #r2,#r31,64 - br .L4 - align 4 -.L7: - bb1.n #ne,#r13,.L9 - cmp #r13,#r11,4 - ld.bu #r2,#r31,64 - br .L4 - align 4 -.L9: - bb1.n #ne,#r13,.L11 - cmp #r13,#r11,5 - ld.h #r2,#r31,64 - br .L4 - align 4 -.L11: - bb1.n #ne,#r13,.L13 - cmp #r13,#r11,6 - ld.hu #r2,#r31,64 - br .L4 - align 4 -.L13: - bb0.n #ne,#r13,.L41 - cmp #r13,#r11,7 - bb0.n #ne,#r13,.L41 - cmp #r13,#r11,8 - bb0.n #ne,#r13,.L41 - cmp #r13,#r11,9 - bb0.n #ne,#r13,.L41 - subu #r13,#r11,10 - cmp #r13,#r13,1 - bb0 #ls,#r13,.L23 - ld #r2,#r31,64 - ld #r3,#r31,68 - br .L4 - align 4 -.L23: - ld #r11,#r31,52 - cmp #r13,#r11,12 - bb1.n #ne,#r13,.L25 - cmp #r13,#r11,13 - ld #r2,#r31,64 - br .L4 - align 4 -.L25: - bb1.n #ne,#r13,.L27 - cmp #r13,#r11,14 - ld.d #r2,#r31,64 - br .L4 - align 4 -.L27: - bb1.n #ne,#r13,.L29 - cmp #r13,#r11,15 -.L41: - ld #r2,#r31,64 - br .L4 - align 4 -.L29: - bb0 #eq,#r13,.L4 - ld #r13,#r31,40 - bb0 (31-31),#r13,.L32 - ld #r2,#r31,48 - br .L4 - align 4 -.L32: - bb0 (31-30),#r13,.L4 - ld #r11,#r31,56 - cmp #r13,#r11,1 - bb1.n #ne,#r13,.L35 - cmp #r13,#r11,2 - ld #r13,#r31,48 - ld.bu #r2,#r0,#r13 - br .L4 - align 4 -.L35: - bb1.n #ne,#r13,.L37 - cmp #r13,#r11,4 - ld #r13,#r31,48 - ld.hu #r2,#r0,#r13 - br .L4 - align 4 -.L37: - bb1 #ne,#r13,.L4 - ld #r13,#r31,48 - ld #r2,#r0,#r13 -.L4: -.Lte0: - ld #r1,#r31,36 - jmp.n #r1 - addu #r31,#r31,80 - -section .tdesc,"a" - word 66,1,.Ltb0,.Lte0,0x100003f,0x50,0xffffffd4,0xffffffd4 -text -.Lfe1: - size __vacall,.Lfe1-__vacall DELETED ffcall/vacall/vacall-mips.c Index: ffcall/vacall/vacall-mips.c ================================================================== --- ffcall/vacall/vacall-mips.c +++ /dev/null @@ -1,128 +0,0 @@ -/* vacall function for mips CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifndef REENTRANT -#include "vacall.h.in" -#else /* REENTRANT */ -#include "vacall_r.h.in" -#endif - -#ifndef REENTRANT -typedef void (*func_pointer)(va_alist); -#else /* REENTRANT */ -#define __vacall __vacall_r -typedef void (*func_pointer)(void*,va_alist); -register struct { func_pointer vacall_function; void* arg; } - * env __asm__("$2"); -#endif -register func_pointer t9 __asm__("$25"); -register float farg1 __asm__("$f12"); -register float farg2 __asm__("$f14"); -register double darg1 __asm__("$f12"); -register double darg2 __asm__("$f14"); -register int iret __asm__("$2"); -register int iret2 __asm__("$3"); -register float fret __asm__("$f0"); -register double dret __asm__("$f0"); - -void /* the return type is variable, not void! */ -__vacall (__vaword word1, __vaword word2, __vaword word3, __vaword word4, - __vaword firstword) -{ - __va_alist list; - /* gcc-2.6.3 source says: When a parameter is passed in a register, - * stack space is still allocated for it. - */ - /* Move the arguments passed in registers to their stack locations. */ - (&firstword)[-4] = word1; - (&firstword)[-3] = word2; - (&firstword)[-2] = word3; - (&firstword)[-1] = word4; - list.darg[0] = darg1; - list.darg[1] = darg2; - list.farg[0] = farg1; - list.farg[1] = farg2; - /* Prepare the va_alist. */ - list.flags = 0; - list.aptr = (long)(&firstword - 4); - list.raddr = (void*)0; - list.rtype = __VAvoid; - list.memargptr = (long)&firstword; - list.anum = 0; - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*(t9 = vacall_function)) (&list); -#else /* REENTRANT */ - (*(t9 = env->vacall_function)) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong || list.rtype == __VAulonglong) { - iret = ((__vaword *) &list.tmp._longlong)[0]; - iret2 = ((__vaword *) &list.tmp._longlong)[1]; - } else - if (list.rtype == __VAfloat) { - fret = list.tmp._float; - } else - if (list.rtype == __VAdouble) { - dret = list.tmp._double; - } else - if (list.rtype == __VAvoidp) { - iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - iret = (long) list.raddr; - } else { - /* normal struct return convention */ - if (list.flags & __VA_SMALL_STRUCT_RETURN) { - if (list.rsize == sizeof(char)) { - iret = *(unsigned char *) list.raddr; - } else - if (list.rsize == sizeof(short)) { - iret = *(unsigned short *) list.raddr; - } else - if (list.rsize == sizeof(int)) { - iret = *(unsigned int *) list.raddr; - } - } - } - } -} DELETED ffcall/vacall/vacall-mips64.c Index: ffcall/vacall/vacall-mips64.c ================================================================== --- ffcall/vacall/vacall-mips64.c +++ /dev/null @@ -1,313 +0,0 @@ -/* vacall function for mips CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifndef REENTRANT -#include "vacall.h.in" -#else /* REENTRANT */ -#include "vacall_r.h.in" -#endif - -#ifndef REENTRANT -typedef void (*func_pointer)(va_alist); -#else /* REENTRANT */ -#define __vacall __vacall_r -typedef void (*func_pointer)(void*,va_alist); -register struct { func_pointer vacall_function; void* arg; } - * env __asm__("$2"); -#endif -register func_pointer t9 __asm__("$25"); -register void* sp __asm__("$sp"); -register long iarg0 __asm__("$4"); -register long iarg1 __asm__("$5"); -register long iarg2 __asm__("$6"); -register long iarg3 __asm__("$7"); -register long iarg4 __asm__("$8"); -register long iarg5 __asm__("$9"); -register long iarg6 __asm__("$10"); -register long iarg7 __asm__("$11"); -register float farg0 __asm__("$f12"); -register float farg1 __asm__("$f13"); -register float farg2 __asm__("$f14"); -register float farg3 __asm__("$f15"); -register float farg4 __asm__("$f16"); -register float farg5 __asm__("$f17"); -register float farg6 __asm__("$f18"); -register float farg7 __asm__("$f19"); -register double darg0 __asm__("$f12"); -register double darg1 __asm__("$f13"); -register double darg2 __asm__("$f14"); -register double darg3 __asm__("$f15"); -register double darg4 __asm__("$f16"); -register double darg5 __asm__("$f17"); -register double darg6 __asm__("$f18"); -register double darg7 __asm__("$f19"); -register long iret __asm__("$2"); -register long iret2 __asm__("$3"); -register float fret __asm__("$f0"); -register float fret2 __asm__("$f2"); -register double dret __asm__("$f0"); -register double dret2 __asm__("$f2"); - -void /* the return type is variable, not void! */ -__vacall (__vaword word1, __vaword word2, __vaword word3, __vaword word4, - __vaword word5, __vaword word6, __vaword word7, __vaword word8, - __vaword firstword) -{ - /* Move the arguments passed in registers to their stack locations. */ - (&firstword)[-8] = iarg0; /* word1 */ - (&firstword)[-7] = iarg1; /* word2 */ - (&firstword)[-6] = iarg2; /* word3 */ - (&firstword)[-5] = iarg3; /* word4 */ - (&firstword)[-4] = iarg4; /* word5 */ - (&firstword)[-3] = iarg5; /* word6 */ - (&firstword)[-2] = iarg6; /* word7 */ - (&firstword)[-1] = iarg7; /* word8 */ - {__va_alist list; - list.darg[0] = darg0; - list.darg[1] = darg1; - list.darg[2] = darg2; - list.darg[3] = darg3; - list.darg[4] = darg4; - list.darg[5] = darg5; - list.darg[6] = darg6; - list.darg[7] = darg7; - list.farg[0] = farg0; - list.farg[1] = farg1; - list.farg[2] = farg2; - list.farg[3] = farg3; - list.farg[4] = farg4; - list.farg[5] = farg5; - list.farg[6] = farg6; - list.farg[7] = farg7; - /* Prepare the va_alist. */ - list.flags = 0; - list.aptr = (long)(&firstword - 8); - list.raddr = (void*)0; - list.rtype = __VAvoid; - list.memargptr = (long)&firstword; - list.anum = 0; - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*(t9 = vacall_function)) (&list); -#else /* REENTRANT */ - (*(t9 = env->vacall_function)) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulonglong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAfloat) { - fret = list.tmp._float; - } else - if (list.rtype == __VAdouble) { - dret = list.tmp._double; - } else - if (list.rtype == __VAvoidp) { - iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - iret = (long) list.raddr; - } else { - /* normal struct return convention */ - if (list.flags & __VA_REGISTER_STRUCT_RETURN) { - if (list.flags & __VA_GCC_STRUCT_RETURN) { - /* gcc returns structs of size 1,2,4,8 in registers. */ - if (list.rsize == sizeof(char)) { - iret = *(unsigned char *) list.raddr; - } else - if (list.rsize == sizeof(short)) { - iret = *(unsigned short *) list.raddr; - } else - if (list.rsize == sizeof(int)) { - iret = *(unsigned int *) list.raddr; - } else - if (list.rsize == sizeof(long)) { - iret = *(unsigned long *) list.raddr; - } - } else { - /* cc returns structs of size <= 16 in registers. */ - /* Maybe this big if cascade could be replaced with - * if (list.rsize > 0 && list.rsize <= 16) - * __asm__ ("ldl $2,%0 ; ldr $2,%1" - * : : "m" (((unsigned char *) list.raddr)[0]), - * "m" (((unsigned char *) list.raddr)[7])); - */ - if (list.rsize > 0 && list.rsize <= 16) { - if (list.rsize == 1) { - iret = (__vaword)((unsigned char *) list.raddr)[0] << 56; - } else - if (list.rsize == 2) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48); - } else - if (list.rsize == 3) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40); - } else - if (list.rsize == 4) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40) - | ((__vaword)((unsigned char *) list.raddr)[3] << 32); - } else - if (list.rsize == 5) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40) - | ((__vaword)((unsigned char *) list.raddr)[3] << 32) - | ((__vaword)((unsigned char *) list.raddr)[4] << 24); - } else - if (list.rsize == 6) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40) - | ((__vaword)((unsigned char *) list.raddr)[3] << 32) - | ((__vaword)((unsigned char *) list.raddr)[4] << 24) - | ((__vaword)((unsigned char *) list.raddr)[5] << 16); - } else - if (list.rsize == 7) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40) - | ((__vaword)((unsigned char *) list.raddr)[3] << 32) - | ((__vaword)((unsigned char *) list.raddr)[4] << 24) - | ((__vaword)((unsigned char *) list.raddr)[5] << 16) - | ((__vaword)((unsigned char *) list.raddr)[6] << 8); - } else - if (list.rsize >= 8 && list.rsize <= 16) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40) - | ((__vaword)((unsigned char *) list.raddr)[3] << 32) - | ((__vaword)((unsigned char *) list.raddr)[4] << 24) - | ((__vaword)((unsigned char *) list.raddr)[5] << 16) - | ((__vaword)((unsigned char *) list.raddr)[6] << 8) - | (__vaword)((unsigned char *) list.raddr)[7]; - /* Maybe this big if cascade could be replaced with - * if (list.rsize > 8 && list.rsize <= 16) - * __asm__ ("ldl $3,%0 ; ldr $3,%1" - * : : "m" (((unsigned char *) list.raddr)[8]), - * "m" (((unsigned char *) list.raddr)[15])); - */ - if (list.rsize == 8) { - } else - if (list.rsize == 9) { - iret2 = (__vaword)((unsigned char *) list.raddr)[8] << 56; - } else - if (list.rsize == 10) { - iret2 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48); - } else - if (list.rsize == 11) { - iret2 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40); - } else - if (list.rsize == 12) { - iret2 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40) - | ((__vaword)((unsigned char *) list.raddr)[11] << 32); - } else - if (list.rsize == 13) { - iret2 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40) - | ((__vaword)((unsigned char *) list.raddr)[11] << 32) - | ((__vaword)((unsigned char *) list.raddr)[12] << 24); - } else - if (list.rsize == 14) { - iret2 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40) - | ((__vaword)((unsigned char *) list.raddr)[11] << 32) - | ((__vaword)((unsigned char *) list.raddr)[12] << 24) - | ((__vaword)((unsigned char *) list.raddr)[13] << 16); - } else - if (list.rsize == 15) { - iret2 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40) - | ((__vaword)((unsigned char *) list.raddr)[11] << 32) - | ((__vaword)((unsigned char *) list.raddr)[12] << 24) - | ((__vaword)((unsigned char *) list.raddr)[13] << 16) - | ((__vaword)((unsigned char *) list.raddr)[14] << 8); - } else - if (list.rsize == 16) { - iret2 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40) - | ((__vaword)((unsigned char *) list.raddr)[11] << 32) - | ((__vaword)((unsigned char *) list.raddr)[12] << 24) - | ((__vaword)((unsigned char *) list.raddr)[13] << 16) - | ((__vaword)((unsigned char *) list.raddr)[14] << 8) - | (__vaword)((unsigned char *) list.raddr)[15]; - } - } - } - if (list.flags & __VA_REGISTER_FLOATSTRUCT_RETURN) { - if (list.rsize == sizeof(float)) { - fret = *(float*)list.raddr; - } else - if (list.rsize == 2*sizeof(float)) { - fret = *(float*)list.raddr; - fret2 = *(float*)((char*)list.raddr + 4); - } - } - if (list.flags & __VA_REGISTER_DOUBLESTRUCT_RETURN) { - if (list.rsize == sizeof(double)) { - dret = *(double*)list.raddr; - } else - if (list.rsize == 2*sizeof(double)) { - dret = *(double*)list.raddr; - dret2 = *(double*)((char*)list.raddr + 8); - } - } - } - } - } - } -}} DELETED ffcall/vacall/vacall-mipsn32.c Index: ffcall/vacall/vacall-mipsn32.c ================================================================== --- ffcall/vacall/vacall-mipsn32.c +++ /dev/null @@ -1,317 +0,0 @@ -/* vacall function for mips CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifndef REENTRANT -#include "vacall.h.in" -#else /* REENTRANT */ -#include "vacall_r.h.in" -#endif - -#ifndef REENTRANT -typedef void (*func_pointer)(va_alist); -#else /* REENTRANT */ -#define __vacall __vacall_r -typedef void (*func_pointer)(void*,va_alist); -register struct { func_pointer vacall_function; void* arg; } - * env __asm__("$2"); -#endif -register func_pointer t9 __asm__("$25"); -register void* sp __asm__("$sp"); -register __vaword iarg0 __asm__("$4"); -register __vaword iarg1 __asm__("$5"); -register __vaword iarg2 __asm__("$6"); -register __vaword iarg3 __asm__("$7"); -register __vaword iarg4 __asm__("$8"); -register __vaword iarg5 __asm__("$9"); -register __vaword iarg6 __asm__("$10"); -register __vaword iarg7 __asm__("$11"); -register float farg0 __asm__("$f12"); -register float farg1 __asm__("$f13"); -register float farg2 __asm__("$f14"); -register float farg3 __asm__("$f15"); -register float farg4 __asm__("$f16"); -register float farg5 __asm__("$f17"); -register float farg6 __asm__("$f18"); -register float farg7 __asm__("$f19"); -register double darg0 __asm__("$f12"); -register double darg1 __asm__("$f13"); -register double darg2 __asm__("$f14"); -register double darg3 __asm__("$f15"); -register double darg4 __asm__("$f16"); -register double darg5 __asm__("$f17"); -register double darg6 __asm__("$f18"); -register double darg7 __asm__("$f19"); -register __vaword iret __asm__("$2"); -register __vaword iret2 __asm__("$3"); -register float fret __asm__("$f0"); -register float fret2 __asm__("$f2"); -register double dret __asm__("$f0"); -register double dret2 __asm__("$f2"); - -void /* the return type is variable, not void! */ -__vacall (__vaword word1, __vaword word2, __vaword word3, __vaword word4, - __vaword word5, __vaword word6, __vaword word7, __vaword word8, - __vaword firstword) -{ - /* gcc-2.95 does not allocate stack space for word1,...,word8. */ - /* The following account for the stack frame increase from 192 to 256 bytes - * done by postprocessing. */ -#define firstword (*(&firstword+8)) - /* Move the arguments passed in registers to their stack locations. */ - (&firstword)[-8] = iarg0; /* word1 */ - (&firstword)[-7] = iarg1; /* word2 */ - (&firstword)[-6] = iarg2; /* word3 */ - (&firstword)[-5] = iarg3; /* word4 */ - (&firstword)[-4] = iarg4; /* word5 */ - (&firstword)[-3] = iarg5; /* word6 */ - (&firstword)[-2] = iarg6; /* word7 */ - (&firstword)[-1] = iarg7; /* word8 */ - {__va_alist list; - list.darg[0] = darg0; - list.darg[1] = darg1; - list.darg[2] = darg2; - list.darg[3] = darg3; - list.darg[4] = darg4; - list.darg[5] = darg5; - list.darg[6] = darg6; - list.darg[7] = darg7; - list.farg[0] = farg0; - list.farg[1] = farg1; - list.farg[2] = farg2; - list.farg[3] = farg3; - list.farg[4] = farg4; - list.farg[5] = farg5; - list.farg[6] = farg6; - list.farg[7] = farg7; - /* Prepare the va_alist. */ - list.flags = 0; - list.aptr = (long)(&firstword - 8); - list.raddr = (void*)0; - list.rtype = __VAvoid; - list.memargptr = (long)&firstword; - list.anum = 0; - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*(t9 = vacall_function)) (&list); -#else /* REENTRANT */ - (*(t9 = env->vacall_function)) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong) { - iret = list.tmp._longlong; - } else - if (list.rtype == __VAulonglong) { - iret = list.tmp._ulonglong; - } else - if (list.rtype == __VAfloat) { - fret = list.tmp._float; - } else - if (list.rtype == __VAdouble) { - dret = list.tmp._double; - } else - if (list.rtype == __VAvoidp) { - iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - iret = (__vaword) list.raddr; - } else { - /* normal struct return convention */ - if (list.flags & __VA_REGISTER_STRUCT_RETURN) { - if (list.flags & __VA_GCC_STRUCT_RETURN) { - /* gcc returns structs of size 1,2,4,8 in registers. */ - if (list.rsize == sizeof(char)) { - iret = *(unsigned char *) list.raddr; - } else - if (list.rsize == sizeof(short)) { - iret = *(unsigned short *) list.raddr; - } else - if (list.rsize == sizeof(int)) { - iret = *(unsigned int *) list.raddr; - } else - if (list.rsize == sizeof(long long)) { - iret = *(unsigned long long *) list.raddr; - } - } else { - /* cc returns structs of size <= 16 in registers. */ - /* Maybe this big if cascade could be replaced with - * if (list.rsize > 0 && list.rsize <= 16) - * __asm__ ("ldl $2,%0 ; ldr $2,%1" - * : : "m" (((unsigned char *) list.raddr)[0]), - * "m" (((unsigned char *) list.raddr)[7])); - */ - if (list.rsize > 0 && list.rsize <= 16) { - if (list.rsize == 1) { - iret = (__vaword)((unsigned char *) list.raddr)[0] << 56; - } else - if (list.rsize == 2) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48); - } else - if (list.rsize == 3) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40); - } else - if (list.rsize == 4) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40) - | ((__vaword)((unsigned char *) list.raddr)[3] << 32); - } else - if (list.rsize == 5) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40) - | ((__vaword)((unsigned char *) list.raddr)[3] << 32) - | ((__vaword)((unsigned char *) list.raddr)[4] << 24); - } else - if (list.rsize == 6) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40) - | ((__vaword)((unsigned char *) list.raddr)[3] << 32) - | ((__vaword)((unsigned char *) list.raddr)[4] << 24) - | ((__vaword)((unsigned char *) list.raddr)[5] << 16); - } else - if (list.rsize == 7) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40) - | ((__vaword)((unsigned char *) list.raddr)[3] << 32) - | ((__vaword)((unsigned char *) list.raddr)[4] << 24) - | ((__vaword)((unsigned char *) list.raddr)[5] << 16) - | ((__vaword)((unsigned char *) list.raddr)[6] << 8); - } else - if (list.rsize >= 8 && list.rsize <= 16) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40) - | ((__vaword)((unsigned char *) list.raddr)[3] << 32) - | ((__vaword)((unsigned char *) list.raddr)[4] << 24) - | ((__vaword)((unsigned char *) list.raddr)[5] << 16) - | ((__vaword)((unsigned char *) list.raddr)[6] << 8) - | (__vaword)((unsigned char *) list.raddr)[7]; - /* Maybe this big if cascade could be replaced with - * if (list.rsize > 8 && list.rsize <= 16) - * __asm__ ("ldl $3,%0 ; ldr $3,%1" - * : : "m" (((unsigned char *) list.raddr)[8]), - * "m" (((unsigned char *) list.raddr)[15])); - */ - if (list.rsize == 8) { - } else - if (list.rsize == 9) { - iret2 = (__vaword)((unsigned char *) list.raddr)[8] << 56; - } else - if (list.rsize == 10) { - iret2 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48); - } else - if (list.rsize == 11) { - iret2 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40); - } else - if (list.rsize == 12) { - iret2 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40) - | ((__vaword)((unsigned char *) list.raddr)[11] << 32); - } else - if (list.rsize == 13) { - iret2 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40) - | ((__vaword)((unsigned char *) list.raddr)[11] << 32) - | ((__vaword)((unsigned char *) list.raddr)[12] << 24); - } else - if (list.rsize == 14) { - iret2 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40) - | ((__vaword)((unsigned char *) list.raddr)[11] << 32) - | ((__vaword)((unsigned char *) list.raddr)[12] << 24) - | ((__vaword)((unsigned char *) list.raddr)[13] << 16); - } else - if (list.rsize == 15) { - iret2 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40) - | ((__vaword)((unsigned char *) list.raddr)[11] << 32) - | ((__vaword)((unsigned char *) list.raddr)[12] << 24) - | ((__vaword)((unsigned char *) list.raddr)[13] << 16) - | ((__vaword)((unsigned char *) list.raddr)[14] << 8); - } else - if (list.rsize == 16) { - iret2 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40) - | ((__vaword)((unsigned char *) list.raddr)[11] << 32) - | ((__vaword)((unsigned char *) list.raddr)[12] << 24) - | ((__vaword)((unsigned char *) list.raddr)[13] << 16) - | ((__vaword)((unsigned char *) list.raddr)[14] << 8) - | (__vaword)((unsigned char *) list.raddr)[15]; - } - } - } - if (list.flags & __VA_REGISTER_FLOATSTRUCT_RETURN) { - if (list.rsize == sizeof(float)) { - fret = *(float*)list.raddr; - } else - if (list.rsize == 2*sizeof(float)) { - fret = *(float*)list.raddr; - fret2 = *(float*)((char*)list.raddr + 4); - } - } - if (list.flags & __VA_REGISTER_DOUBLESTRUCT_RETURN) { - if (list.rsize == sizeof(double)) { - dret = *(double*)list.raddr; - } else - if (list.rsize == 2*sizeof(double)) { - dret = *(double*)list.raddr; - dret2 = *(double*)((char*)list.raddr + 8); - } - } - } - } - } - } -}} DELETED ffcall/vacall/vacall-rs6000-aix.new.s Index: ffcall/vacall/vacall-rs6000-aix.new.s ================================================================== --- ffcall/vacall/vacall-rs6000-aix.new.s +++ /dev/null @@ -1,186 +0,0 @@ - .file "vacall-rs6000.c" -.toc -.csect .text[PR] -gcc2_compiled.: -__gnu_compiled_c: - .extern vacall_function[RW] -.toc -LC..0: - .tc vacall_function[TC],vacall_function[RW] -.csect .text[PR] - .align 2 - .globl __vacall - .globl .__vacall -.csect __vacall[DS] -__vacall: - .long .__vacall, TOC[tc0], 0 -.csect .text[PR] -.__vacall: - .extern __mulh - .extern __mull - .extern __divss - .extern __divus - .extern __quoss - .extern __quous - mflr 0 - stw 27,-20(1) - stw 28,-16(1) - stw 29,-12(1) - stw 30,-8(1) - stw 31,-4(1) - stw 0,8(1) - stwu 1,-224(1) - lwz 29,LC..0(2) - addi 11,1,280 - lwz 27,0(29) - stw 3,-32(11) - stw 9,-8(11) - stw 10,-4(11) - stw 5,-24(11) - stw 6,-20(11) - stw 7,-16(11) - stw 8,-12(11) - li 0,0 - addi 29,1,248 - addi 28,1,92 - stw 29,60(1) - stw 0,68(1) - stw 28,88(1) - stw 4,-28(11) - stfd 1,92(1) - stfd 2,100(1) - stfd 3,108(1) - stfd 4,116(1) - stfd 5,124(1) - stfd 6,132(1) - stfd 7,140(1) - stfd 8,148(1) - stfd 9,156(1) - stfd 10,164(1) - stfd 11,172(1) - stfd 12,180(1) - stfd 13,188(1) - stw 0,56(1) - stw 0,64(1) - addi 3,1,56 - stw 2,20(1) - lwz 0,0(27) - lwz 2,4(27) - mtlr 0 - lwz 11,8(27) - blrl - lwz 2,20(1) - lwz 9,68(1) - cmpwi 0,9,0 - bc 12,2,L..4 - cmpwi 0,9,1 - bc 12,2,L..42 - cmpwi 0,9,2 - bc 4,2,L..7 - lbz 0,80(1) - slwi 0,0,24 - srawi 3,0,24 - b L..4 -L..7: - cmpwi 0,9,3 - bc 4,2,L..9 -L..42: - lbz 3,80(1) - b L..4 -L..9: - cmpwi 0,9,4 - bc 4,2,L..11 - lha 3,80(1) - b L..4 -L..11: - cmpwi 0,9,5 - bc 4,2,L..13 - lhz 3,80(1) - b L..4 -L..13: - cmpwi 0,9,6 - bc 12,2,L..43 - cmpwi 0,9,7 - bc 12,2,L..43 - cmpwi 0,9,8 - bc 12,2,L..43 - cmpwi 0,9,9 - bc 12,2,L..43 - addi 0,9,-10 - cmplwi 0,0,1 - bc 12,1,L..23 - lwz 3,80(1) - lwz 4,84(1) - b L..4 -L..23: - lwz 0,68(1) - cmpwi 0,0,12 - bc 4,2,L..25 - lfs 1,80(1) - b L..4 -L..25: - cmpwi 0,0,13 - bc 4,2,L..27 - lfd 1,80(1) - b L..4 -L..27: - cmpwi 0,0,14 - bc 4,2,L..29 -L..43: - lwz 3,80(1) - b L..4 -L..29: - cmpwi 0,0,15 - bc 4,2,L..4 - lwz 0,56(1) - andi. 9,0,1 - bc 12,2,L..32 - lwz 3,64(1) - b L..4 -L..32: - andi. 9,0,1024 - bc 12,2,L..4 - lwz 0,72(1) - cmpwi 0,0,1 - bc 4,2,L..35 - lwz 9,64(1) - lbz 3,0(9) - b L..4 -L..35: - cmpwi 0,0,2 - bc 4,2,L..37 - lwz 9,64(1) - lhz 3,0(9) - b L..4 -L..37: - cmpwi 0,0,4 - bc 4,2,L..39 - lwz 9,64(1) - b L..44 -L..39: - cmpwi 0,0,8 - bc 4,2,L..4 - lwz 9,64(1) - lwz 4,4(9) -L..44: - lwz 3,0(9) -L..4: - la 1,224(1) - lwz 0,8(1) - mtlr 0 - lwz 27,-20(1) - lwz 28,-16(1) - lwz 29,-12(1) - lwz 30,-8(1) - lwz 31,-4(1) - blr -LT..__vacall: - .long 0 - .byte 0,0,32,65,128,5,8,0 - .long 0 - .long LT..__vacall-.__vacall - .short 8 - .byte "__vacall" -_section_.text: -.csect .data[RW],3 - .long _section_.text DELETED ffcall/vacall/vacall-rs6000-aix.old.s Index: ffcall/vacall/vacall-rs6000-aix.old.s ================================================================== --- ffcall/vacall/vacall-rs6000-aix.old.s +++ /dev/null @@ -1,186 +0,0 @@ - .file "vacall-rs6000.c" -.toc -.csect .text[PR] -gcc2_compiled.: -__gnu_compiled_c: - .extern vacall_function[RW] -.toc -LC..0: - .tc vacall_function[TC],vacall_function[RW] -.csect .text[PR] - .align 2 - .globl __vacall - .globl .__vacall -.csect __vacall[DS] -__vacall: - .long .__vacall, TOC[tc0], 0 -.csect .text[PR] -.__vacall: - .extern __mulh - .extern __mull - .extern __divss - .extern __divus - .extern __quoss - .extern __quous - mflr 0 - st 27,-20(1) - st 28,-16(1) - st 29,-12(1) - st 30,-8(1) - st 31,-4(1) - st 0,8(1) - stu 1,-224(1) - l 29,LC..0(2) - cal 11,280(1) - l 27,0(29) - st 3,-32(11) - st 9,-8(11) - st 10,-4(11) - st 5,-24(11) - st 6,-20(11) - st 7,-16(11) - st 8,-12(11) - lil 0,0 - cal 29,248(1) - cal 28,92(1) - st 29,60(1) - st 0,68(1) - st 28,88(1) - st 4,-28(11) - stfd 1,92(1) - stfd 2,100(1) - stfd 3,108(1) - stfd 4,116(1) - stfd 5,124(1) - stfd 6,132(1) - stfd 7,140(1) - stfd 8,148(1) - stfd 9,156(1) - stfd 10,164(1) - stfd 11,172(1) - stfd 12,180(1) - stfd 13,188(1) - st 0,56(1) - st 0,64(1) - cal 3,56(1) - st 2,20(1) - l 0,0(27) - l 2,4(27) - mtlr 0 - l 11,8(27) - brl - l 2,20(1) - l 9,68(1) - cmpi 0,9,0 - bc 12,2,L..4 - cmpi 0,9,1 - bc 12,2,L..42 - cmpi 0,9,2 - bc 4,2,L..7 - lbz 0,80(1) - sli 0,0,24 - srai 3,0,24 - b L..4 -L..7: - cmpi 0,9,3 - bc 4,2,L..9 -L..42: - lbz 3,80(1) - b L..4 -L..9: - cmpi 0,9,4 - bc 4,2,L..11 - lha 3,80(1) - b L..4 -L..11: - cmpi 0,9,5 - bc 4,2,L..13 - lhz 3,80(1) - b L..4 -L..13: - cmpi 0,9,6 - bc 12,2,L..43 - cmpi 0,9,7 - bc 12,2,L..43 - cmpi 0,9,8 - bc 12,2,L..43 - cmpi 0,9,9 - bc 12,2,L..43 - cal 0,-10(9) - cmpli 0,0,1 - bc 12,1,L..23 - l 3,80(1) - l 4,84(1) - b L..4 -L..23: - l 0,68(1) - cmpi 0,0,12 - bc 4,2,L..25 - lfs 1,80(1) - b L..4 -L..25: - cmpi 0,0,13 - bc 4,2,L..27 - lfd 1,80(1) - b L..4 -L..27: - cmpi 0,0,14 - bc 4,2,L..29 -L..43: - l 3,80(1) - b L..4 -L..29: - cmpi 0,0,15 - bc 4,2,L..4 - l 0,56(1) - andil. 9,0,1 - bc 12,2,L..32 - l 3,64(1) - b L..4 -L..32: - andil. 9,0,1024 - bc 12,2,L..4 - l 0,72(1) - cmpi 0,0,1 - bc 4,2,L..35 - l 9,64(1) - lbz 3,0(9) - b L..4 -L..35: - cmpi 0,0,2 - bc 4,2,L..37 - l 9,64(1) - lhz 3,0(9) - b L..4 -L..37: - cmpi 0,0,4 - bc 4,2,L..39 - l 9,64(1) - b L..44 -L..39: - cmpi 0,0,8 - bc 4,2,L..4 - l 9,64(1) - l 4,4(9) -L..44: - l 3,0(9) -L..4: - cal 1,224(1) - l 0,8(1) - mtlr 0 - l 27,-20(1) - l 28,-16(1) - l 29,-12(1) - l 30,-8(1) - l 31,-4(1) - br -LT..__vacall: - .long 0 - .byte 0,0,32,65,128,5,8,0 - .long 0 - .long LT..__vacall-.__vacall - .short 8 - .byte "__vacall" -_section_.text: -.csect .data[RW],3 - .long _section_.text DELETED ffcall/vacall/vacall-rs6000-linux.s Index: ffcall/vacall/vacall-rs6000-linux.s ================================================================== --- ffcall/vacall/vacall-rs6000-linux.s +++ /dev/null @@ -1,159 +0,0 @@ - .file "vacall-rs6000.c" -gcc2_compiled.: - .section ".text" - .align 2 - .globl __vacall - .type __vacall,@function -__vacall: - stwu 1,-208(1) - mflr 0 - stw 0,212(1) - stw 3,152(1) - stw 4,156(1) - stw 5,160(1) - stw 6,164(1) - stw 7,168(1) - stw 8,172(1) - stw 9,176(1) - stw 10,180(1) - stfd 1,48(1) - stfd 2,56(1) - stfd 3,64(1) - stfd 4,72(1) - stfd 5,80(1) - stfd 6,88(1) - stfd 7,96(1) - stfd 8,104(1) - li 9,0 - stw 9,8(1) - addi 0,1,152 - stw 0,12(1) - addi 0,1,216 - stw 0,184(1) - stw 9,188(1) - stw 9,16(1) - stw 9,20(1) - addi 0,1,48 - stw 0,40(1) - lis 9,vacall_function@ha - lwz 0,vacall_function@l(9) - addi 3,1,8 - mtlr 0 - blrl - lwz 0,20(1) - cmpwi 0,0,0 - bc 12,2,.L4 - cmpwi 0,0,1 - bc 12,2,.L42 - lwz 0,20(1) - cmpwi 0,0,2 - bc 4,2,.L7 - lbz 0,32(1) - extsb 3,0 - b .L4 -.L7: - lwz 0,20(1) - cmpwi 0,0,3 - bc 4,2,.L9 -.L42: - lbz 3,32(1) - b .L4 -.L9: - lwz 0,20(1) - cmpwi 0,0,4 - bc 4,2,.L11 - lha 3,32(1) - b .L4 -.L11: - lwz 0,20(1) - cmpwi 0,0,5 - bc 4,2,.L13 - lhz 3,32(1) - b .L4 -.L13: - lwz 0,20(1) - cmpwi 0,0,6 - bc 12,2,.L43 - lwz 0,20(1) - cmpwi 0,0,7 - bc 12,2,.L43 - lwz 0,20(1) - cmpwi 0,0,8 - bc 12,2,.L43 - lwz 0,20(1) - cmpwi 0,0,9 - bc 12,2,.L43 - lwz 9,20(1) - addi 9,9,-10 - cmplwi 0,9,1 - bc 12,1,.L23 - lwz 3,32(1) - lwz 4,36(1) - b .L4 -.L23: - lwz 0,20(1) - cmpwi 0,0,12 - bc 4,2,.L25 - lfs 1,32(1) - b .L4 -.L25: - lwz 0,20(1) - cmpwi 0,0,13 - bc 4,2,.L27 - lfd 1,32(1) - b .L4 -.L27: - lwz 0,20(1) - cmpwi 0,0,14 - bc 4,2,.L29 -.L43: - lwz 3,32(1) - b .L4 -.L29: - lwz 0,20(1) - cmpwi 0,0,15 - bc 4,2,.L4 - lwz 0,8(1) - andi. 9,0,1 - bc 12,2,.L32 - lwz 3,16(1) - b .L4 -.L32: - lwz 0,8(1) - andi. 9,0,1024 - bc 12,2,.L4 - lwz 0,24(1) - cmpwi 0,0,1 - bc 4,2,.L35 - lwz 9,16(1) - lbz 3,0(9) - b .L4 -.L35: - lwz 0,24(1) - cmpwi 0,0,2 - bc 4,2,.L37 - lwz 9,16(1) - lhz 3,0(9) - b .L4 -.L37: - lwz 0,24(1) - cmpwi 0,0,4 - bc 4,2,.L39 - lwz 9,16(1) - lwz 3,0(9) - b .L4 -.L39: - lwz 0,24(1) - cmpwi 0,0,8 - bc 4,2,.L4 - lwz 9,16(1) - lwz 3,0(9) - lwz 4,4(9) -.L4: - lwz 0,212(1) - mtlr 0 - la 1,208(1) - blr -.Lfe1: - .size __vacall,.Lfe1-__vacall - .ident "GCC: (GNU) 2.95.2 19991024 (release/franzo)" DELETED ffcall/vacall/vacall-rs6000-macos.s Index: ffcall/vacall/vacall-rs6000-macos.s ================================================================== --- ffcall/vacall/vacall-rs6000-macos.s +++ /dev/null @@ -1,147 +0,0 @@ -.text - .align 2 - .globl ___vacall -___vacall: - mflr r0 - stmw r29,-12(r1) - bcl 20,31,L1$pb -L1$pb: - stw r0,8(r1) - mflr r31 - stwu r1,-224(r1) - addis r29,r31,ha16(L_vacall_function$non_lazy_ptr-L1$pb) - li r11,0 - lwz r29,lo16(L_vacall_function$non_lazy_ptr-L1$pb)(r29) - addi r0,r1,248 - stw r0,68(r1) - addi r0,r1,100 - lwz r29,0(r29) - stw r3,248(r1) - addi r3,r1,64 - stw r9,272(r1) - mtctr r29 - stw r5,256(r1) - stw r6,260(r1) - stw r7,264(r1) - stw r8,268(r1) - stw r10,276(r1) - stw r11,76(r1) - stw r0,96(r1) - stw r4,252(r1) - stfd f1,100(r1) - stfd f2,108(r1) - stfd f3,116(r1) - stfd f4,124(r1) - stfd f5,132(r1) - stfd f6,140(r1) - stfd f7,148(r1) - stfd f8,156(r1) - stfd f9,164(r1) - stfd f10,172(r1) - stfd f11,180(r1) - stfd f12,188(r1) - stfd f13,196(r1) - stw r11,64(r1) - stw r11,72(r1) - bctrl - lwz r9,76(r1) - cmpwi cr0,r9,0 - beq- cr0,L1 - cmpwi cr0,r9,1 - beq- cr0,L43 - cmpwi cr0,r9,2 - beq- cr0,L43 - cmpwi cr0,r9,3 - beq- cr0,L44 - cmpwi cr0,r9,4 - beq- cr0,L45 - cmpwi cr0,r9,5 - beq- cr0,L46 - cmpwi cr0,r9,6 - beq- cr0,L42 - cmpwi cr0,r9,7 - beq- cr0,L42 - cmpwi cr0,r9,8 - beq- cr0,L42 - cmpwi cr0,r9,9 - beq- cr0,L42 - addi r0,r9,-10 - cmplwi cr0,r0,1 - bgt- cr0,L22 - lwz r3,88(r1) - lwz r4,92(r1) -L1: - addi r1,r1,224 - lwz r0,8(r1) - lmw r29,-12(r1) - mtlr r0 - blr -L22: - cmpwi cr0,r9,12 - beq- cr0,L47 - cmpwi cr0,r9,13 - beq- cr0,L48 - cmpwi cr0,r9,14 - beq- cr0,L42 - cmpwi cr0,r9,15 - bne+ cr0,L1 - lwz r0,64(r1) - andi. r9,r0,1 - beq- cr0,L31 - lwz r3,72(r1) - b L1 -L31: - andi. r9,r0,1024 - beq- cr0,L1 - lwz r0,80(r1) - cmpwi cr0,r0,1 - beq- cr0,L49 - cmpwi cr0,r0,2 - beq- cr0,L50 - cmpwi cr0,r0,4 - beq- cr0,L51 - cmpwi cr0,r0,8 - bne+ cr0,L1 - lwz r9,72(r1) - lwz r4,4(r9) -L41: - lwz r3,0(r9) - b L1 -L51: - lwz r9,72(r1) - b L41 -L50: - lwz r9,72(r1) - lhz r3,0(r9) - b L1 -L49: - lwz r9,72(r1) - lbz r3,0(r9) - b L1 -L42: - lwz r3,88(r1) - b L1 -L48: - lfd f1,88(r1) - b L1 -L47: - lfs f1,88(r1) - b L1 -L46: - lhz r3,88(r1) - b L1 -L45: - lha r3,88(r1) - b L1 -L44: - lbz r3,88(r1) - b L1 -L43: - lbz r0,88(r1) - extsb r3,r0 - b L1 -.data -.non_lazy_symbol_pointer -L_vacall_function$non_lazy_ptr: - .indirect_symbol _vacall_function - .long 0 DELETED ffcall/vacall/vacall-rs6000-sysv4.s Index: ffcall/vacall/vacall-rs6000-sysv4.s ================================================================== --- ffcall/vacall/vacall-rs6000-sysv4.s +++ /dev/null @@ -1,156 +0,0 @@ - .file "vacall-rs6000.c" -gcc2_compiled.: - .section ".text" - .align 2 - .globl __vacall - .type __vacall,@function -__vacall: - .extern __mulh - .extern __mull - .extern __divss - .extern __divus - .extern __quoss - .extern __quous - stwu 1,-176(1) - mflr 0 - stw 28,160(1) - stw 29,164(1) - stw 30,168(1) - stw 31,172(1) - stw 0,180(1) - lis 11,vacall_function@ha - addi 29,1,184 - lwz 12,vacall_function@l(11) - stw 3,-32(29) - stw 9,-8(29) - mtlr 12 - stw 10,-4(29) - stw 5,-24(29) - stw 6,-20(29) - stw 7,-16(29) - stw 8,-12(29) - li 0,0 - addi 11,1,152 - addi 28,1,48 - addi 3,1,8 - stw 11,12(1) - stw 0,20(1) - stw 28,40(1) - stw 4,-28(29) - stfd 1,48(1) - stfd 2,56(1) - stfd 3,64(1) - stfd 4,72(1) - stfd 5,80(1) - stfd 6,88(1) - stfd 7,96(1) - stfd 8,104(1) - stw 0,8(1) - stw 0,16(1) - blrl - lwz 9,20(1) - cmpwi 0,9,0 - bc 12,2,.L4 - cmpwi 0,9,1 - bc 12,2,.L42 - cmpwi 0,9,2 - bc 4,2,.L7 - lbz 0,32(1) - slwi 0,0,24 - srawi 3,0,24 - b .L4 -.L7: - cmpwi 0,9,3 - bc 4,2,.L9 -.L42: - lbz 3,32(1) - b .L4 -.L9: - cmpwi 0,9,4 - bc 4,2,.L11 - lha 3,32(1) - b .L4 -.L11: - cmpwi 0,9,5 - bc 4,2,.L13 - lhz 3,32(1) - b .L4 -.L13: - cmpwi 0,9,6 - bc 12,2,.L43 - cmpwi 0,9,7 - bc 12,2,.L43 - cmpwi 0,9,8 - bc 12,2,.L43 - cmpwi 0,9,9 - bc 12,2,.L43 - addi 0,9,-10 - cmplwi 0,0,1 - bc 12,1,.L23 - lwz 3,32(1) - lwz 4,36(1) - b .L4 -.L23: - lwz 0,20(1) - cmpwi 0,0,12 - bc 4,2,.L25 - lfs 1,32(1) - b .L4 -.L25: - cmpwi 0,0,13 - bc 4,2,.L27 - lfd 1,32(1) - b .L4 -.L27: - cmpwi 0,0,14 - bc 4,2,.L29 -.L43: - lwz 3,32(1) - b .L4 -.L29: - cmpwi 0,0,15 - bc 4,2,.L4 - lwz 0,8(1) - andi. 9,0,1 - bc 12,2,.L32 - lwz 3,16(1) - b .L4 -.L32: - andi. 9,0,1024 - bc 12,2,.L4 - lwz 0,24(1) - cmpwi 0,0,1 - bc 4,2,.L35 - lwz 9,16(1) - lbz 3,0(9) - b .L4 -.L35: - cmpwi 0,0,2 - bc 4,2,.L37 - lwz 9,16(1) - lhz 3,0(9) - b .L4 -.L37: - cmpwi 0,0,4 - bc 4,2,.L39 - lwz 9,16(1) - b .L44 -.L39: - cmpwi 0,0,8 - bc 4,2,.L4 - lwz 9,16(1) - lwz 4,4(9) -.L44: - lwz 3,0(9) -.L4: - lwz 0,180(1) - mtlr 0 - lwz 28,160(1) - lwz 29,164(1) - lwz 30,168(1) - lwz 31,172(1) - la 1,176(1) - blr -.Lfe1: - .size __vacall,.Lfe1-__vacall - .ident "GCC: (GNU) 2.95.2 19991024 (release)" DELETED ffcall/vacall/vacall-rs6000.c Index: ffcall/vacall/vacall-rs6000.c ================================================================== --- ffcall/vacall/vacall-rs6000.c +++ /dev/null @@ -1,173 +0,0 @@ -/* vacall function for rs6000 CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * Copyright 2000 Adam Fedor, - * Copyright 2004 Paul Guyot, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifndef REENTRANT -#include "vacall.h.in" -#else /* REENTRANT */ -#include "vacall_r.h.in" -#endif - -#ifdef REENTRANT -#define __vacall __vacall_r -register struct { void (*vacall_function) (void*,va_alist); void* arg; } - * env __asm__("r11"); -#endif -register double farg1 __asm__("fr1"); -register double farg2 __asm__("fr2"); -register double farg3 __asm__("fr3"); -register double farg4 __asm__("fr4"); -register double farg5 __asm__("fr5"); -register double farg6 __asm__("fr6"); -register double farg7 __asm__("fr7"); -register double farg8 __asm__("fr8"); -register double farg9 __asm__("fr9"); -register double farg10 __asm__("fr10"); -register double farg11 __asm__("fr11"); -register double farg12 __asm__("fr12"); -register double farg13 __asm__("fr13"); -register __vaword iret __asm__("r3"); -register __vaword iret2 __asm__("r4"); -register float fret __asm__("fr1"); -register double dret __asm__("fr1"); - -void /* the return type is variable, not void! */ -__vacall (__vaword word1, __vaword word2, __vaword word3, __vaword word4, - __vaword word5, __vaword word6, __vaword word7, __vaword word8, - __vaword firstword) -{ - __va_alist list; -#if defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)) - /* gcc-2.6.3 source says: When a parameter is passed in a register, - * stack space is still allocated for it. - */ - /* Move the arguments passed in registers to their stack locations. */ - (&firstword)[-8] = word1; - (&firstword)[-7] = word2; - (&firstword)[-6] = word3; - (&firstword)[-5] = word4; - (&firstword)[-4] = word5; - (&firstword)[-3] = word6; - (&firstword)[-2] = word7; - (&firstword)[-1] = word8; -#else - /* Move the arguments passed in registers to temp storage, since - moving them to the stack would mess up the stack */ - list.regarg[0] = word1; - list.regarg[1] = word2; - list.regarg[2] = word3; - list.regarg[3] = word4; - list.regarg[4] = word5; - list.regarg[5] = word6; - list.regarg[6] = word7; - list.regarg[7] = word8; -#endif - list.farg[0] = farg1; - list.farg[1] = farg2; - list.farg[2] = farg3; - list.farg[3] = farg4; - list.farg[4] = farg5; - list.farg[5] = farg6; - list.farg[6] = farg7; - list.farg[7] = farg8; -#if defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)) - list.farg[8] = farg9; - list.farg[9] = farg10; - list.farg[10] = farg11; - list.farg[11] = farg12; - list.farg[12] = farg13; -#endif - /* Prepare the va_alist. */ - list.flags = 0; -#if defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)) - list.aptr = (long)(&firstword - 8); -#else - list.aptr = (long)(&list.regarg[0]); - list.saptr = (long)(&firstword); - list.onstack = 0; -#endif - list.raddr = (void*)0; - list.rtype = __VAvoid; - list.memfargptr = &list.farg[0]; - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*vacall_function) (&list); -#else /* REENTRANT */ - (*env->vacall_function) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong || list.rtype == __VAulonglong) { - iret = ((__vaword *) &list.tmp._longlong)[0]; - iret2 = ((__vaword *) &list.tmp._longlong)[1]; - } else - if (list.rtype == __VAfloat) { - fret = list.tmp._float; - } else - if (list.rtype == __VAdouble) { - dret = list.tmp._double; - } else - if (list.rtype == __VAvoidp) { - iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - iret = (long) list.raddr; - } else { - /* normal struct return convention */ - if (list.flags & __VA_REGISTER_STRUCT_RETURN) { - if (list.rsize == sizeof(char)) { - iret = *(unsigned char *) list.raddr; - } else - if (list.rsize == sizeof(short)) { - iret = *(unsigned short *) list.raddr; - } else - if (list.rsize == sizeof(int)) { - iret = *(unsigned int *) list.raddr; - } else - if (list.rsize == 2*sizeof(__vaword)) { - iret = ((__vaword *) list.raddr)[0]; - iret2 = ((__vaword *) list.raddr)[1]; - } - } - } - } -} DELETED ffcall/vacall/vacall-s390.c Index: ffcall/vacall/vacall-s390.c ================================================================== --- ffcall/vacall/vacall-s390.c +++ /dev/null @@ -1,135 +0,0 @@ -/* vacall function for S/390 CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * Copyright 2000 Adam Fedor, - * Copyright 2001 Gerhard Tonn, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifndef REENTRANT -#include "vacall.h" -#else /* REENTRANT */ -#include "vacall_r.h.in" -#endif - -#ifdef REENTRANT -#define __vacall __vacall_r -register struct { void (*vacall_function) (void*,va_alist); void* arg; } - * env __asm__("r1"); -#endif -register float farg1 __asm__("f0"); -register float farg2 __asm__("f2"); -register double darg1 __asm__("f0"); -register double darg2 __asm__("f2"); -register __vaword iret __asm__("%r2"); -register __vaword iret2 __asm__("%r3"); -register float fret __asm__("%f0"); -register double dret __asm__("%f0"); - -void /* the return type is variable, not void! */ -__vacall (__vaword word1, __vaword word2, __vaword word3, __vaword word4, - __vaword word5, - __vaword firstword) -{ - __va_alist list; - /* Move the arguments passed in registers to temp storage, since - moving them to the stack would mess up the stack */ - list.regarg[0] = word1; - list.regarg[1] = word2; - list.regarg[2] = word3; - list.regarg[3] = word4; - list.regarg[4] = word5; - - list.darg[1] = darg2; - list.darg[0] = darg1; - - list.farg[1] = farg2; - list.farg[0] = farg1; - - /* Prepare the va_alist. */ - list.flags = 0; - list.aptr = (long)(&list.regarg[0]); - list.saptr = (long)(&firstword); - list.onstack = 0; - list.raddr = (void*)0; - list.rtype = __VAvoid; - list.memfargptr = &list.farg[0]; - list.memdargptr = &list.darg[0]; - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*vacall_function) (&list); -#else /* REENTRANT */ - (*env->vacall_function) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong || list.rtype == __VAulonglong) { - iret = ((__vaword *) &list.tmp._longlong)[0]; - iret2 = ((__vaword *) &list.tmp._longlong)[1]; - } else - if (list.rtype == __VAfloat) { - fret = list.tmp._float; - } else - if (list.rtype == __VAdouble) { - dret = list.tmp._double; - } else - if (list.rtype == __VAvoidp) { - iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - iret = (long) list.raddr; - } else { - /* normal struct return convention */ - if (list.flags & __VA_REGISTER_STRUCT_RETURN) { - if (list.rsize == sizeof(char)) { - iret = *(unsigned char *) list.raddr; - } else - if (list.rsize == sizeof(short)) { - iret = *(unsigned short *) list.raddr; - } else - if (list.rsize == sizeof(int)) { - iret = *(unsigned int *) list.raddr; - } else - if (list.rsize == 2*sizeof(__vaword)) { - iret = ((__vaword *) list.raddr)[0]; - iret2 = ((__vaword *) list.raddr)[1]; - } - } - } - } -} DELETED ffcall/vacall/vacall-s390.s Index: ffcall/vacall/vacall-s390.s ================================================================== --- ffcall/vacall/vacall-s390.s +++ /dev/null @@ -1,243 +0,0 @@ - .file "vacall-s390.c" - .version "01.01" -gcc2_compiled.: -.text - .align 4 -.globl __vacall - .type __vacall,@function -__vacall: -# leaf function 0 -# automatics 120 -# outgoing args 0 -# need frame pointer 1 -# call alloca 0 -# has varargs 0 -# incoming args (stack) 8 -# function length 642 -# register live 0111111000010110110000000000000011 - stm %r6,%r15,24(%r15) - bras %r13,.LTN0_0 -.LT0_0: -.LC0: - .long vacall_function -.LC1: - .long 0 -.LTN0_0: - lr %r1,%r15 - ahi %r15,-216 - st %r1,0(%r15) - lr %r11,%r15 - st %r2,96(%r11) - st %r3,100(%r11) - st %r4,104(%r11) - st %r5,108(%r11) - st %r6,112(%r11) - mvc 184(4,%r11),96(%r11) - mvc 188(4,%r11),100(%r11) - mvc 192(4,%r11),104(%r11) - mvc 196(4,%r11),108(%r11) - mvc 200(4,%r11),112(%r11) - std %f2,176(%r11) - std %f0,168(%r11) - ste %f2,164(%r11) - ste %f0,160(%r11) - lhi %r1,0 - st %r1,120(%r11) - lr %r1,%r11 - ahi %r1,120 - lr %r4,%r1 - ahi %r4,64 - st %r4,124(%r11) - la %r1,312(%r11) - st %r1,204(%r11) - lhi %r1,0 - st %r1,208(%r11) - lhi %r1,0 - st %r1,128(%r11) - lhi %r1,0 - st %r1,132(%r11) - lr %r1,%r11 - ahi %r1,120 - lr %r4,%r1 - ahi %r4,40 - st %r4,152(%r11) - lr %r1,%r11 - ahi %r1,120 - lr %r4,%r1 - ahi %r4,48 - st %r4,156(%r11) - l %r1,.LC0-.LT0_0(%r13) - lr %r4,%r11 - ahi %r4,120 - l %r1,0(%r1) - lr %r2,%r4 - basr %r14,%r1 - l %r1,132(%r11) - ltr %r1,%r1 - jne .L3 - j .L4 -.L3: - l %r1,132(%r11) - chi %r1,1 - jne .L5 - sr %r2,%r2 - ic %r2,144(%r11) - j .L4 -.L5: - l %r1,132(%r11) - chi %r1,2 - jne .L7 - icm %r2,8,144(%r11) - sra %r2,24 - j .L4 -.L7: - l %r1,132(%r11) - chi %r1,3 - jne .L9 - sr %r2,%r2 - ic %r2,144(%r11) - j .L4 -.L9: - l %r1,132(%r11) - chi %r1,4 - jne .L11 - lh %r2,144(%r11) - j .L4 -.L11: - l %r1,132(%r11) - chi %r1,5 - jne .L13 - icm %r2,12,144(%r11) - srl %r2,16 - j .L4 -.L13: - l %r1,132(%r11) - chi %r1,6 - jne .L15 - l %r2,144(%r11) - j .L4 -.L15: - l %r1,132(%r11) - chi %r1,7 - jne .L17 - l %r2,144(%r11) - j .L4 -.L17: - l %r1,132(%r11) - chi %r1,8 - jne .L19 - l %r2,144(%r11) - j .L4 -.L19: - l %r1,132(%r11) - chi %r1,9 - jne .L21 - l %r2,144(%r11) - j .L4 -.L21: - l %r1,132(%r11) - chi %r1,10 - je .L24 - l %r1,132(%r11) - chi %r1,11 - je .L24 - j .L23 -.L24: - l %r2,144(%r11) - l %r3,148(%r11) - j .L4 -.L23: - l %r1,132(%r11) - chi %r1,12 - jne .L26 - le %f0,144(%r11) - j .L4 -.L26: - l %r1,132(%r11) - chi %r1,13 - jne .L28 - ld %f0,144(%r11) - j .L4 -.L28: - l %r1,132(%r11) - chi %r1,14 - jne .L30 - l %r2,144(%r11) - j .L4 -.L30: - l %r1,132(%r11) - chi %r1,15 - jne .L4 - lhi %r4,1 - l %r1,120(%r11) - nr %r1,%r4 - ltr %r1,%r1 - je .L33 - l %r2,128(%r11) - j .L4 -.L33: - lhi %r4,1024 - l %r1,120(%r11) - nr %r1,%r4 - ltr %r1,%r1 - je .L4 - l %r1,136(%r11) - chi %r1,1 - jne .L36 - l %r1,128(%r11) - sr %r2,%r2 - ic %r2,0(%r1) - j .L4 -.L36: - l %r1,136(%r11) - chi %r1,2 - jne .L38 - l %r1,128(%r11) - icm %r2,12,0(%r1) - srl %r2,16 - j .L4 -.L38: - l %r1,136(%r11) - chi %r1,4 - jne .L40 - l %r1,128(%r11) - l %r2,0(%r1) - j .L4 -.L40: - l %r1,136(%r11) - chi %r1,8 - jne .L4 - l %r1,128(%r11) - l %r2,0(%r1) - l %r4,128(%r11) - lr %r1,%r4 - ahi %r1,4 - l %r3,0(%r1) -.L42: -.L41: -.L39: -.L37: -.L35: -.L34: -.L32: -.L31: -.L29: -.L27: -.L25: -.L22: -.L20: -.L18: -.L16: -.L14: -.L12: -.L10: -.L8: -.L6: -.L4: -.L2: - l %r4,272(%r11) - lm %r6,%r15,240(%r11) - br %r4 -.Lfe1: - .size __vacall,.Lfe1-__vacall - .ident "GCC: (GNU) 2.95.4 20011006 (Debian prerelease)" DELETED ffcall/vacall/vacall-sparc.c Index: ffcall/vacall/vacall-sparc.c ================================================================== --- ffcall/vacall/vacall-sparc.c +++ /dev/null @@ -1,142 +0,0 @@ -/* vacall function for sparc CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifndef REENTRANT -#include "vacall.h.in" -#else /* REENTRANT */ -#include "vacall_r.h.in" -#endif - -#ifdef REENTRANT -#define __vacall __vacall_r -register struct { void (*vacall_function) (void*,va_alist); void* arg; } - * env __asm__("%g2"); -#endif -register __vaword* fp __asm__("%fp"); /* our %fp, caller's %sp */ -register __vaword* ret __asm__("%i7"); /* %i7+8 = return address */ -register int iret __asm__("%i0"); -register int iret2 __asm__("%i1"); -register float fret __asm__("%f0"); /* %f0 */ -register double dret __asm__("%f0"); /* %f0,%f1 */ - -void /* the return type is variable, not void! */ -__vacall (__vaword word1, __vaword word2, __vaword word3, __vaword word4, - __vaword word5, __vaword word6, - __vaword firstword) -{ - __va_alist list; - /* gcc-2.6.3 source says: When a parameter is passed in a register, - * stack space is still allocated for it. - */ - /* Move the arguments passed in registers to their stack locations. */ - (&firstword)[-6] = word1; - (&firstword)[-5] = word2; - (&firstword)[-4] = word3; - (&firstword)[-3] = word4; - (&firstword)[-2] = word5; - (&firstword)[-1] = word6; - /* Prepare the va_alist. */ - list.flags = 0; - list.aptr = (long)(&firstword - 6); - list.raddr = (void*)0; - list.rtype = __VAvoid; - list.structraddr = (void*)((&firstword)[-7]); /* = (void*) fp[16] */ - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*vacall_function) (&list); -#else /* REENTRANT */ - (*env->vacall_function) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong || list.rtype == __VAulonglong) { - iret = ((__vaword *) &list.tmp._longlong)[0]; - iret2 = ((__vaword *) &list.tmp._longlong)[1]; - } else - if (list.rtype == __VAfloat) { - if (list.flags & __VA_SUNCC_FLOAT_RETURN) { - dret = (double)list.tmp._float; - } else { - fret = list.tmp._float; - } - } else - if (list.rtype == __VAdouble) { - dret = list.tmp._double; - } else - if (list.rtype == __VAvoidp) { - iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - if (list.flags & (__VA_SUNCC_STRUCT_RETURN | __VA_SUNPROCC_STRUCT_RETURN)) { - /* Sun cc struct return convention. */ - /* The desired struct return address was passed in fp[16], later on - * list.raddr = list.structraddr = fp[16]. Now the result has - * already been copied there. No need to copy the result once more. - * The caller expects to receive the struct return address in %o0. - */ - iret = (long) list.raddr; - if ((list.rsize & 0xfff) == ret[2]) - ret++; /* skip the "unimp n" instruction at the return address */ - /* else the "unimp n" instruction will cause a core dump */ - } else { - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - iret = (long) list.raddr; - } else { - /* normal struct return convention */ - if (list.flags & __VA_SMALL_STRUCT_RETURN) { - if (list.rsize == sizeof(char)) { - iret = *(unsigned char *) list.raddr; - goto done; - } else - if (list.rsize == sizeof(short)) { - iret = *(unsigned short *) list.raddr; - goto done; - } else - if (list.rsize == sizeof(int)) { - iret = *(unsigned int *) list.raddr; - goto done; - } - } - ret++; /* skip the "unimp n" instruction at the return address */ - done: ; - } - } - } -} DELETED ffcall/vacall/vacall-sparc64.c Index: ffcall/vacall/vacall-sparc64.c ================================================================== --- ffcall/vacall/vacall-sparc64.c +++ /dev/null @@ -1,394 +0,0 @@ -/* vacall function for sparc64 CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifndef REENTRANT -#include "vacall.h.in" -#else /* REENTRANT */ -#include "vacall_r.h.in" -#endif - -#ifdef REENTRANT -#define __vacall __vacall_r -register struct { void (*vacall_function) (void*,va_alist); void* arg; } - * env __asm__("%g5"); -#endif -register __vaword* fp __asm__("%fp"); /* our %fp, caller's %sp */ -register __vaword* ret __asm__("%i7"); /* %i7+8 = return address */ -register float farg0 __asm__("%f1"); -register float farg1 __asm__("%f3"); -register float farg2 __asm__("%f5"); -register float farg3 __asm__("%f7"); -register float farg4 __asm__("%f9"); -register float farg5 __asm__("%f11"); -register float farg6 __asm__("%f13"); -register float farg7 __asm__("%f15"); -register float farg8 __asm__("%f17"); -register float farg9 __asm__("%f19"); -register float farg10 __asm__("%f21"); -register float farg11 __asm__("%f23"); -register float farg12 __asm__("%f25"); -register float farg13 __asm__("%f27"); -register float farg14 __asm__("%f29"); -register float farg15 __asm__("%f31"); -register double darg0 __asm__("%f0"); -register double darg1 __asm__("%f2"); -register double darg2 __asm__("%f4"); -register double darg3 __asm__("%f6"); -register double darg4 __asm__("%f8"); -register double darg5 __asm__("%f10"); -register double darg6 __asm__("%f12"); -register double darg7 __asm__("%f14"); -register double darg8 __asm__("%f16"); -register double darg9 __asm__("%f18"); -register double darg10 __asm__("%f20"); -register double darg11 __asm__("%f22"); -register double darg12 __asm__("%f24"); -register double darg13 __asm__("%f26"); -register double darg14 __asm__("%f28"); -register double darg15 __asm__("%f30"); -register __vaword iret __asm__("%i0"); -register __vaword o1 __asm__("%i1"); -register __vaword o2 __asm__("%i2"); -register __vaword o3 __asm__("%i3"); -register __vaword o4 __asm__("%i4"); -register __vaword o5 __asm__("%i5"); -register float fret __asm__("%f0"); /* %f0 */ -register double dret __asm__("%f0"); /* %f0,%f1 */ - -void /* the return type is variable, not void! */ -__vacall (__vaword word1, __vaword word2, __vaword word3, __vaword word4, - __vaword word5, __vaword word6, - __vaword firstword) -{ - __va_alist list; - /* Move the arguments passed in registers to their stack locations. */ - (&firstword)[-6] = word1; - (&firstword)[-5] = word2; - (&firstword)[-4] = word3; - (&firstword)[-3] = word4; - (&firstword)[-2] = word5; - (&firstword)[-1] = word6; - list.darg[0] = darg0; - list.darg[1] = darg1; - list.darg[2] = darg2; - list.darg[3] = darg3; - list.darg[4] = darg4; - list.darg[5] = darg5; - list.darg[6] = darg6; - list.darg[7] = darg7; - list.darg[8] = darg8; - list.darg[9] = darg9; - list.darg[10] = darg10; - list.darg[11] = darg11; - list.darg[12] = darg12; - list.darg[13] = darg13; - list.darg[14] = darg14; - list.darg[15] = darg15; - list.farg[0] = farg0; - list.farg[1] = farg1; - list.farg[2] = farg2; - list.farg[3] = farg3; - list.farg[4] = farg4; - list.farg[5] = farg5; - list.farg[6] = farg6; - list.farg[7] = farg7; - list.farg[8] = farg8; - list.farg[9] = farg9; - list.farg[10] = farg10; - list.farg[11] = farg11; - list.farg[12] = farg12; - list.farg[13] = farg13; - list.farg[14] = farg14; - list.farg[15] = farg15; - /* Prepare the va_alist. */ - list.flags = 0; - list.aptr = (long)(&firstword - 6); - list.raddr = (void*)0; - list.rtype = __VAvoid; - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*vacall_function) (&list); -#else /* REENTRANT */ - (*env->vacall_function) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulonglong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAfloat) { - fret = list.tmp._float; - } else - if (list.rtype == __VAdouble) { - dret = list.tmp._double; - } else - if (list.rtype == __VAvoidp) { - iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - iret = (long) list.raddr; - } else { - /* normal struct return convention */ - if (list.flags & __VA_REGISTER_STRUCT_RETURN) { - /* Return structs of size <= 32 in registers. */ - if (list.rsize > 0 && list.rsize <= 32) { - if (list.rsize == 1) { - iret = (__vaword)((unsigned char *) list.raddr)[0] << 56; - } else - if (list.rsize == 2) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48); - } else - if (list.rsize == 3) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40); - } else - if (list.rsize == 4) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40) - | ((__vaword)((unsigned char *) list.raddr)[3] << 32); - } else - if (list.rsize == 5) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40) - | ((__vaword)((unsigned char *) list.raddr)[3] << 32) - | ((__vaword)((unsigned char *) list.raddr)[4] << 24); - } else - if (list.rsize == 6) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40) - | ((__vaword)((unsigned char *) list.raddr)[3] << 32) - | ((__vaword)((unsigned char *) list.raddr)[4] << 24) - | ((__vaword)((unsigned char *) list.raddr)[5] << 16); - } else - if (list.rsize == 7) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40) - | ((__vaword)((unsigned char *) list.raddr)[3] << 32) - | ((__vaword)((unsigned char *) list.raddr)[4] << 24) - | ((__vaword)((unsigned char *) list.raddr)[5] << 16) - | ((__vaword)((unsigned char *) list.raddr)[6] << 8); - } else - if (list.rsize >= 8 && list.rsize <= 32) { - iret = ((__vaword)((unsigned char *) list.raddr)[0] << 56) - | ((__vaword)((unsigned char *) list.raddr)[1] << 48) - | ((__vaword)((unsigned char *) list.raddr)[2] << 40) - | ((__vaword)((unsigned char *) list.raddr)[3] << 32) - | ((__vaword)((unsigned char *) list.raddr)[4] << 24) - | ((__vaword)((unsigned char *) list.raddr)[5] << 16) - | ((__vaword)((unsigned char *) list.raddr)[6] << 8) - | (__vaword)((unsigned char *) list.raddr)[7]; - if (list.rsize == 8) { - } else - if (list.rsize == 9) { - o1 = (__vaword)((unsigned char *) list.raddr)[8] << 56; - } else - if (list.rsize == 10) { - o1 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48); - } else - if (list.rsize == 11) { - o1 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40); - } else - if (list.rsize == 12) { - o1 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40) - | ((__vaword)((unsigned char *) list.raddr)[11] << 32); - } else - if (list.rsize == 13) { - o1 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40) - | ((__vaword)((unsigned char *) list.raddr)[11] << 32) - | ((__vaword)((unsigned char *) list.raddr)[12] << 24); - } else - if (list.rsize == 14) { - o1 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40) - | ((__vaword)((unsigned char *) list.raddr)[11] << 32) - | ((__vaword)((unsigned char *) list.raddr)[12] << 24) - | ((__vaword)((unsigned char *) list.raddr)[13] << 16); - } else - if (list.rsize == 15) { - o1 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40) - | ((__vaword)((unsigned char *) list.raddr)[11] << 32) - | ((__vaword)((unsigned char *) list.raddr)[12] << 24) - | ((__vaword)((unsigned char *) list.raddr)[13] << 16) - | ((__vaword)((unsigned char *) list.raddr)[14] << 8); - } else - if (list.rsize >= 16 && list.rsize <= 32) { - o1 = ((__vaword)((unsigned char *) list.raddr)[8] << 56) - | ((__vaword)((unsigned char *) list.raddr)[9] << 48) - | ((__vaword)((unsigned char *) list.raddr)[10] << 40) - | ((__vaword)((unsigned char *) list.raddr)[11] << 32) - | ((__vaword)((unsigned char *) list.raddr)[12] << 24) - | ((__vaword)((unsigned char *) list.raddr)[13] << 16) - | ((__vaword)((unsigned char *) list.raddr)[14] << 8) - | (__vaword)((unsigned char *) list.raddr)[15]; - if (list.rsize == 16) { - } else - if (list.rsize == 17) { - o2 = (__vaword)((unsigned char *) list.raddr)[16] << 56; - } else - if (list.rsize == 18) { - o2 = ((__vaword)((unsigned char *) list.raddr)[16] << 56) - | ((__vaword)((unsigned char *) list.raddr)[17] << 48); - } else - if (list.rsize == 19) { - o2 = ((__vaword)((unsigned char *) list.raddr)[16] << 56) - | ((__vaword)((unsigned char *) list.raddr)[17] << 48) - | ((__vaword)((unsigned char *) list.raddr)[18] << 40); - } else - if (list.rsize == 20) { - o2 = ((__vaword)((unsigned char *) list.raddr)[16] << 56) - | ((__vaword)((unsigned char *) list.raddr)[17] << 48) - | ((__vaword)((unsigned char *) list.raddr)[18] << 40) - | ((__vaword)((unsigned char *) list.raddr)[19] << 32); - } else - if (list.rsize == 21) { - o2 = ((__vaword)((unsigned char *) list.raddr)[16] << 56) - | ((__vaword)((unsigned char *) list.raddr)[17] << 48) - | ((__vaword)((unsigned char *) list.raddr)[18] << 40) - | ((__vaword)((unsigned char *) list.raddr)[19] << 32) - | ((__vaword)((unsigned char *) list.raddr)[20] << 24); - } else - if (list.rsize == 22) { - o2 = ((__vaword)((unsigned char *) list.raddr)[16] << 56) - | ((__vaword)((unsigned char *) list.raddr)[17] << 48) - | ((__vaword)((unsigned char *) list.raddr)[18] << 40) - | ((__vaword)((unsigned char *) list.raddr)[19] << 32) - | ((__vaword)((unsigned char *) list.raddr)[20] << 24) - | ((__vaword)((unsigned char *) list.raddr)[21] << 16); - } else - if (list.rsize == 23) { - o2 = ((__vaword)((unsigned char *) list.raddr)[16] << 56) - | ((__vaword)((unsigned char *) list.raddr)[17] << 48) - | ((__vaword)((unsigned char *) list.raddr)[18] << 40) - | ((__vaword)((unsigned char *) list.raddr)[19] << 32) - | ((__vaword)((unsigned char *) list.raddr)[20] << 24) - | ((__vaword)((unsigned char *) list.raddr)[21] << 16) - | ((__vaword)((unsigned char *) list.raddr)[22] << 8); - } else - if (list.rsize >= 24 && list.rsize <= 32) { - o2 = ((__vaword)((unsigned char *) list.raddr)[16] << 56) - | ((__vaword)((unsigned char *) list.raddr)[17] << 48) - | ((__vaword)((unsigned char *) list.raddr)[18] << 40) - | ((__vaword)((unsigned char *) list.raddr)[19] << 32) - | ((__vaword)((unsigned char *) list.raddr)[20] << 24) - | ((__vaword)((unsigned char *) list.raddr)[21] << 16) - | ((__vaword)((unsigned char *) list.raddr)[22] << 8) - | (__vaword)((unsigned char *) list.raddr)[23]; - if (list.rsize == 24) { - } else - if (list.rsize == 25) { - o3 = (__vaword)((unsigned char *) list.raddr)[24] << 56; - } else - if (list.rsize == 26) { - o3 = ((__vaword)((unsigned char *) list.raddr)[24] << 56) - | ((__vaword)((unsigned char *) list.raddr)[25] << 48); - } else - if (list.rsize == 27) { - o3 = ((__vaword)((unsigned char *) list.raddr)[24] << 56) - | ((__vaword)((unsigned char *) list.raddr)[25] << 48) - | ((__vaword)((unsigned char *) list.raddr)[26] << 40); - } else - if (list.rsize == 28) { - o3 = ((__vaword)((unsigned char *) list.raddr)[24] << 56) - | ((__vaword)((unsigned char *) list.raddr)[25] << 48) - | ((__vaword)((unsigned char *) list.raddr)[26] << 40) - | ((__vaword)((unsigned char *) list.raddr)[27] << 32); - } else - if (list.rsize == 29) { - o3 = ((__vaword)((unsigned char *) list.raddr)[24] << 56) - | ((__vaword)((unsigned char *) list.raddr)[25] << 48) - | ((__vaword)((unsigned char *) list.raddr)[26] << 40) - | ((__vaword)((unsigned char *) list.raddr)[27] << 32) - | ((__vaword)((unsigned char *) list.raddr)[28] << 24); - } else - if (list.rsize == 30) { - o3 = ((__vaword)((unsigned char *) list.raddr)[24] << 56) - | ((__vaword)((unsigned char *) list.raddr)[25] << 48) - | ((__vaword)((unsigned char *) list.raddr)[26] << 40) - | ((__vaword)((unsigned char *) list.raddr)[27] << 32) - | ((__vaword)((unsigned char *) list.raddr)[28] << 24) - | ((__vaword)((unsigned char *) list.raddr)[29] << 16); - } else - if (list.rsize == 31) { - o3 = ((__vaword)((unsigned char *) list.raddr)[24] << 56) - | ((__vaword)((unsigned char *) list.raddr)[25] << 48) - | ((__vaword)((unsigned char *) list.raddr)[26] << 40) - | ((__vaword)((unsigned char *) list.raddr)[27] << 32) - | ((__vaword)((unsigned char *) list.raddr)[28] << 24) - | ((__vaword)((unsigned char *) list.raddr)[29] << 16) - | ((__vaword)((unsigned char *) list.raddr)[30] << 8); - } else - if (list.rsize == 32) { - o3 = ((__vaword)((unsigned char *) list.raddr)[24] << 56) - | ((__vaword)((unsigned char *) list.raddr)[25] << 48) - | ((__vaword)((unsigned char *) list.raddr)[26] << 40) - | ((__vaword)((unsigned char *) list.raddr)[27] << 32) - | ((__vaword)((unsigned char *) list.raddr)[28] << 24) - | ((__vaword)((unsigned char *) list.raddr)[29] << 16) - | ((__vaword)((unsigned char *) list.raddr)[30] << 8) - | (__vaword)((unsigned char *) list.raddr)[31]; - } - } - } - } - } - } - } - } -} DELETED ffcall/vacall/vacall-x86_64.c Index: ffcall/vacall/vacall-x86_64.c ================================================================== --- ffcall/vacall/vacall-x86_64.c +++ /dev/null @@ -1,177 +0,0 @@ -/* vacall function for x86_64 CPU */ - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - -#ifndef REENTRANT -#include "vacall.h.in" -#else /* REENTRANT */ -#include "vacall_r.h.in" -#endif - -#ifdef REENTRANT -#define __vacall __vacall_r -register struct { void (*vacall_function) (void*,va_alist); void* arg; } - * env __asm__("r10"); -#endif - -register __vaword iarg1 __asm__("rdi"); -register __vaword iarg2 __asm__("rsi"); -register __vaword iarg3 __asm__("rdx"); -register __vaword iarg4 __asm__("rcx"); -register __vaword iarg5 __asm__("r8"); -register __vaword iarg6 __asm__("r9"); - -register double farg1 __asm__("xmm0"); -register double farg2 __asm__("xmm1"); -register double farg3 __asm__("xmm2"); -register double farg4 __asm__("xmm3"); -register double farg5 __asm__("xmm4"); -register double farg6 __asm__("xmm5"); -register double farg7 __asm__("xmm6"); -register double farg8 __asm__("xmm7"); - -register __vaword iret __asm__("rax"); -register __vaword iret2 __asm__("rdx"); -register float fret __asm__("xmm0"); -register double dret __asm__("xmm0"); - -/* - * Tell gcc to not use the call-saved registers %rbx, %rbp. - * This ensures that the return sequence does not need to restore registers - * from the stack. - */ -register void* dummy1 __asm__("%rbx"); -register void* dummy2 __asm__("%rbp"); - -void /* the return type is variable, not void! */ -__vacall (__vaword word1, __vaword word2, __vaword word3, __vaword word4, - __vaword word5, __vaword word6, - __vaword firstword) -{ - __va_alist list; - /* Move the arguments passed in registers to temp storage. */ - list.iarg[0] = iarg1; - list.iarg[1] = iarg2; - list.iarg[2] = iarg3; - list.iarg[3] = iarg4; - list.iarg[4] = iarg5; - list.iarg[5] = iarg6; - list.farg[0] = farg1; - list.farg[1] = farg2; - list.farg[2] = farg3; - list.farg[3] = farg4; - list.farg[4] = farg5; - list.farg[5] = farg6; - list.farg[6] = farg7; - list.farg[7] = farg8; - /* Prepare the va_alist. */ - list.flags = 0; - list.aptr = (long)&firstword; - list.raddr = (void*)0; - list.rtype = __VAvoid; - list.memiargptr = &list.iarg[0]; - list.memfargptr = &list.farg[0]; - /* Call vacall_function. The macros do all the rest. */ -#ifndef REENTRANT - (*vacall_function) (&list); -#else /* REENTRANT */ - (*env->vacall_function) (env->arg,&list); -#endif - /* Put return value into proper register. */ - if (list.rtype == __VAvoid) { - } else - if (list.rtype == __VAchar) { - iret = list.tmp._char; - } else - if (list.rtype == __VAschar) { - iret = list.tmp._schar; - } else - if (list.rtype == __VAuchar) { - iret = list.tmp._uchar; - } else - if (list.rtype == __VAshort) { - iret = list.tmp._short; - } else - if (list.rtype == __VAushort) { - iret = list.tmp._ushort; - } else - if (list.rtype == __VAint) { - iret = list.tmp._int; - } else - if (list.rtype == __VAuint) { - iret = list.tmp._uint; - } else - if (list.rtype == __VAlong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAlonglong) { - iret = list.tmp._long; - } else - if (list.rtype == __VAulonglong) { - iret = list.tmp._ulong; - } else - if (list.rtype == __VAfloat) { - fret = list.tmp._float; - } else - if (list.rtype == __VAdouble) { - dret = list.tmp._double; - } else - if (list.rtype == __VAvoidp) { - iret = (long)list.tmp._ptr; - } else - if (list.rtype == __VAstruct) { - if (list.flags & __VA_PCC_STRUCT_RETURN) { - /* pcc struct return convention */ - iret = (long) list.raddr; - } else { - /* normal struct return convention */ - if (list.flags & __VA_REGISTER_STRUCT_RETURN) { - /* Return structs of size <= 16 in registers. */ - if (list.rsize > 0 && list.rsize <= 16) { - iret = (__vaword)((unsigned char *) list.raddr)[0]; - if (list.rsize >= 2) - iret |= (__vaword)((unsigned char *) list.raddr)[1] << 8; - if (list.rsize >= 3) - iret |= (__vaword)((unsigned char *) list.raddr)[2] << 16; - if (list.rsize >= 4) - iret |= (__vaword)((unsigned char *) list.raddr)[3] << 24; - if (list.rsize >= 5) - iret |= (__vaword)((unsigned char *) list.raddr)[4] << 32; - if (list.rsize >= 6) - iret |= (__vaword)((unsigned char *) list.raddr)[5] << 40; - if (list.rsize >= 7) - iret |= (__vaword)((unsigned char *) list.raddr)[6] << 48; - if (list.rsize >= 8) - iret |= (__vaword)((unsigned char *) list.raddr)[7] << 56; - if (list.rsize >= 9) { - iret2 = (__vaword)((unsigned char *) list.raddr)[8]; - if (list.rsize >= 10) - iret2 |= (__vaword)((unsigned char *) list.raddr)[9] << 8; - if (list.rsize >= 11) - iret2 |= (__vaword)((unsigned char *) list.raddr)[10] << 16; - if (list.rsize >= 12) - iret2 |= (__vaword)((unsigned char *) list.raddr)[11] << 24; - if (list.rsize >= 13) - iret2 |= (__vaword)((unsigned char *) list.raddr)[12] << 32; - if (list.rsize >= 14) - iret2 |= (__vaword)((unsigned char *) list.raddr)[13] << 40; - if (list.rsize >= 15) - iret2 |= (__vaword)((unsigned char *) list.raddr)[14] << 48; - if (list.rsize >= 16) - iret2 |= (__vaword)((unsigned char *) list.raddr)[15] << 56; - } - } - } - } - } -} DELETED ffcall/vacall/vacall-x86_64.s Index: ffcall/vacall/vacall-x86_64.s ================================================================== --- ffcall/vacall/vacall-x86_64.s +++ /dev/null @@ -1,244 +0,0 @@ - .file "vacall-x86_64.c" - .text - .p2align 4,,15 -.globl __vacall - .type __vacall,@function -__vacall: -.LFB1: - pushq %r12 -.LCFI0: - subq $192, %rsp -.LCFI1: - leaq 136(%rsp), %r11 - leaq 208(%rsp), %r10 - movq %rdi, 136(%rsp) - movq %r11, 128(%rsp) - movq %r10, 8(%rsp) - movq %rsi, 144(%rsp) - leaq 64(%rsp), %r11 - movq %rdx, 152(%rsp) - movq %rcx, 160(%rsp) - movq %r8, 168(%rsp) - movq %r9, 176(%rsp) - movsd %xmm0, 64(%rsp) - movsd %xmm1, 72(%rsp) - movsd %xmm2, 80(%rsp) - movsd %xmm3, 88(%rsp) - movsd %xmm4, 96(%rsp) - movsd %xmm5, 104(%rsp) - movsd %xmm6, 112(%rsp) - movsd %xmm7, 120(%rsp) - movl $0, (%rsp) - movq $0, 16(%rsp) - movl $0, 24(%rsp) - movq %r11, 56(%rsp) - movq %rsp, %rdi - call *vacall_function(%rip) - movl 24(%rsp), %r10d - testl %r10d, %r10d - je .L1 - cmpl $1, %r10d - je .L53 - cmpl $2, %r10d - je .L53 - cmpl $3, %r10d - je .L54 - cmpl $4, %r10d - je .L55 - cmpl $5, %r10d - je .L56 - cmpl $6, %r10d - je .L57 - cmpl $7, %r10d - je .L58 - cmpl $8, %r10d - je .L52 - cmpl $9, %r10d - je .L52 - cmpl $10, %r10d - je .L52 - cmpl $11, %r10d - je .L52 - cmpl $12, %r10d - je .L59 - cmpl $13, %r10d - je .L60 - cmpl $14, %r10d - je .L52 - cmpl $15, %r10d - je .L61 - .p2align 4,,7 -.L1: - addq $192, %rsp - popq %r12 - ret -.L61: - movl (%rsp), %r10d - testl $1, %r10d - je .L33 - movq 16(%rsp), %rax - jmp .L1 -.L33: - andl $1024, %r10d - je .L1 - movq 32(%rsp), %r11 - leaq -1(%r11), %r10 - cmpq $15, %r10 - ja .L1 - movq 16(%rsp), %r12 - cmpq $1, %r11 - movzbq (%r12), %rax - jbe .L37 - movzbq 1(%r12), %r10 - salq $8, %r10 - orq %r10, %rax -.L37: - cmpq $2, %r11 - jbe .L38 - movzbq 2(%r12), %r10 - salq $16, %r10 - orq %r10, %rax -.L38: - cmpq $3, %r11 - jbe .L39 - movzbq 3(%r12), %r10 - salq $24, %r10 - orq %r10, %rax -.L39: - cmpq $4, %r11 - jbe .L40 - movzbq 4(%r12), %r10 - salq $32, %r10 - orq %r10, %rax -.L40: - cmpq $5, %r11 - jbe .L41 - movzbq 5(%r12), %r10 - salq $40, %r10 - orq %r10, %rax -.L41: - cmpq $6, %r11 - jbe .L42 - movzbq 6(%r12), %r10 - salq $48, %r10 - orq %r10, %rax -.L42: - cmpq $7, %r11 - jbe .L43 - movzbq 7(%r12), %r10 - salq $56, %r10 - orq %r10, %rax -.L43: - cmpq $8, %r11 - jbe .L1 - cmpq $9, %r11 - movzbq 8(%r12), %rdx - jbe .L45 - movzbq 9(%r12), %r10 - salq $8, %r10 - orq %r10, %rdx -.L45: - cmpq $10, %r11 - jbe .L46 - movzbq 10(%r12), %r10 - salq $16, %r10 - orq %r10, %rdx -.L46: - cmpq $11, %r11 - jbe .L47 - movzbq 11(%r12), %r10 - salq $24, %r10 - orq %r10, %rdx -.L47: - cmpq $12, %r11 - jbe .L48 - movzbq 12(%r12), %r10 - salq $32, %r10 - orq %r10, %rdx -.L48: - cmpq $13, %r11 - jbe .L49 - movzbq 13(%r12), %r10 - salq $40, %r10 - orq %r10, %rdx -.L49: - cmpq $14, %r11 - jbe .L50 - movzbq 14(%r12), %r10 - salq $48, %r10 - orq %r10, %rdx -.L50: - cmpq $15, %r11 - jbe .L1 - movzbq 15(%r12), %r10 - salq $56, %r10 - orq %r10, %rdx - jmp .L1 - .p2align 4,,7 -.L52: - movq 40(%rsp), %rax - jmp .L1 -.L60: - movlpd 40(%rsp), %xmm0 - jmp .L1 -.L59: - movss 40(%rsp), %xmm0 - jmp .L1 -.L58: - mov 40(%rsp), %eax - jmp .L1 -.L57: - movslq 40(%rsp),%rax - jmp .L1 -.L56: - movzwq 40(%rsp), %rax - jmp .L1 -.L55: - movswq 40(%rsp),%rax - jmp .L1 -.L54: - movzbq 40(%rsp), %rax - jmp .L1 - .p2align 4,,7 -.L53: - movsbq 40(%rsp),%rax - jmp .L1 -.LFE1: -.Lfe1: - .size __vacall,.Lfe1-__vacall - .section .eh_frame,"aw",@progbits -.Lframe1: - .long .LECIE1-.LSCIE1 -.LSCIE1: - .long 0x0 - .byte 0x1 - .string "" - .uleb128 0x1 - .sleb128 -8 - .byte 0x10 - .byte 0xc - .uleb128 0x7 - .uleb128 0x8 - .byte 0x90 - .uleb128 0x1 - .align 8 -.LECIE1: -.LSFDE1: - .long .LEFDE1-.LASFDE1 -.LASFDE1: - .long .LASFDE1-.Lframe1 - .quad .LFB1 - .quad .LFE1-.LFB1 - .byte 0x4 - .long .LCFI0-.LFB1 - .byte 0xe - .uleb128 0x10 - .byte 0x4 - .long .LCFI1-.LCFI0 - .byte 0xe - .uleb128 0xd0 - .byte 0x8c - .uleb128 0x2 - .align 8 -.LEFDE1: - .ident "GCC: (GNU) 3.2.2 (SuSE Linux)" DELETED ffcall/vacall/vacall.3 Index: ffcall/vacall/vacall.3 ================================================================== --- ffcall/vacall/vacall.3 +++ /dev/null @@ -1,287 +0,0 @@ -.TH VACALL 3 "14 January 2001" -.SH NAME -vacall \- C functions called with variable arguments -.SH SYNOPSIS -.B #include -.LP -.B extern void* vacall_function; -.LP -.nf -.BI "void " function " (" alist ")" -.BI " va_alist " alist ";" -.BI "{" -.BI " va_start_" type "(" alist "[, " return_type "]);" -.BI " " arg " = va_arg_" type "(" alist "[, " arg_type "]);" -.BI " va_return_" type "(" alist "[[, " return_type "], " return_value "]);" -.BI "}" -.fi -.LP -.BI "vacall_function = " "&function" ";" -.LP -.IB "val" " = ((" return_type " (*) ()) vacall) (" arg1 , arg2 , ... ");" -.SH DESCRIPTION -This set of macros permit a C function -.I function -to be called with variable arguments and to return variable return values. -This is much like the -.BR varargs (3) -facility, but also allows the return value to be specified at run time. - -Function calling conventions differ considerably on different machines, and -.I vacall -attempts to provide some degree of isolation from such architecture -dependencies. - -The function that can be called with any number and type of arguments -and which will return any type of return value is -.BR vacall . -It will do some magic and call the function stored in the variable -.BR vacall_function . -If you want to make more than one use of -.IR vacall , -use the -.IR trampoline (3) -facility to store -.I &function -into -.B vacall_function -just before calling -.BR vacall . - -Within -.IR function , -the following macros can be used to walk through the argument list and -specify a return value: -.RS 0 -.TP -.BI "va_start_" type "(" alist "[, " return_type "]);" -starts the walk through the argument list and specifies the return type. -.TP -.IB arg " = va_arg_" type "(" alist "[, " arg_type "]);" -fetches the next argument from the argument list. -.TP -.BI "va_return_" type "(" alist "[[, " return_type "], " return_value "]);" -ends the walk through the argument list and specifies the return value. -.RE - -The -.I type -in -.BI va_start_ type -and -.BI va_return_ type -shall be one of -.BR void ", " int ", " uint ", " long ", " ulong ", " longlong ", " ulonglong ", " double ", " struct ", " ptr -or (for ANSI C calling conventions only) -.BR char ", " schar ", " uchar ", " short ", " ushort ", " float , -depending on the class of -.IR return_type . - -The -.I type -specifiers in -.BI va_start_ type -and -.BI va_return_ type -must be the same. -The -.I return_type -specifiers passed to -.BI va_start_ type -and -.BI va_return_ type -must be the same. - -The -.I type -in -.BI va_arg_ type -shall be one of -.BR int ", " uint ", " long ", " ulong ", " longlong ", " ulonglong ", " double ", " struct ", " ptr -or (for ANSI C calling conventions only) -.BR char ", " schar ", " uchar ", " short ", " ushort ", " float , -depending on the class of -.IR arg_type . - -In -.BI "va_start_struct(" alist ", " return_type ", " splittable ); -the -.I splittable -flag specifies whether the struct -.I return_type -can be returned in registers such that every struct field fits entirely in -a single register. This needs to be specified for structs of size -2*sizeof(long). For structs of size <= sizeof(long), -.I splittable -is ignored and assumed to be 1. For structs of size > 2*sizeof(long), -.I splittable -is ignored and assumed to be 0. There are some handy macros for this: -.nf -.BI "va_word_splittable_1 (" type1 ) -.BI "va_word_splittable_2 (" type1 ", " type2 ) -.BI "va_word_splittable_3 (" type1 ", " type2 ", " type3 ) -.BI "va_word_splittable_4 (" type1 ", " type2 ", " type3 ", " type4 ) -.fi -For a struct with three slots -.nf -.BI "struct { " "type1 id1" "; " "type2 id2" "; " "type3 id3" "; }" -.fi -you can specify -.I splittable -as -.BI "va_word_splittable_3 (" type1 ", " type2 ", " type3 ) -.RB . - -.SH NOTES - -Functions which want to emulate Kernighan & Ritchie style functions (i.e., -in ANSI C, functions without a typed argument list) cannot use the -.I type -values -.BR char ", " schar ", " uchar ", " short ", " ushort ", " float . -As prescribed by the default K&R C expression promotions, they have -to use -.B int -instead of -.BR char ", " schar ", " uchar ", " short ", " ushort -and -.B double -instead of -.BR float . - -The macros -.BR va_start_longlong(\|) , -.BR va_start_ulonglong(\|) , -.BR va_return_longlong(\|) , -.BR va_return_ulonglong(\|) , -.B va_arg_longlong(\|) -and -.B va_arg_ulonglong(\|) -work only if the C compiler has a working -.B long long -64-bit integer type. - -The struct types used in -.B va_start_struct(\|) -and -.B va_struct(\|) -must only contain (signed or unsigned) int, long, long long or pointer fields. -Struct types containing (signed or unsigned) char, short, float, double or -other structs are not supported. - -.SH EXAMPLE - -This example, a possible implementation of -.BR execl (3) -on top of -.BR execv (2) -using -.BR varargs (3), - -.nf -.ft B -#include -#define MAXARGS 100 -/* execl is called by execl(file, arg1, arg2, ..., (char *)0); */ -int execl (va_alist) - va_dcl -{ - va_list ap; - char* file; - char* args[MAXARGS]; - int argno = 0; - va_start (ap); - file = va_arg(ap, char*); - while ((args[argno] = va_arg(ap, char*)) != (char *)0) - argno++; - va_end (ap); - return execv(file, args); -} -.ft -.fi - -looks like this using -.BR vacall (3): - -.nf -.ft B -#include -#define MAXARGS 100 -/* execl is called by vacall(file, arg1, arg2, ..., (char *)0); */ -void execl (ap) - va_alist ap; -{ - char* file; - char* args[MAXARGS]; - int argno = 0; - int retval; - va_start_int (ap); - file = va_arg_ptr(ap, char*); - while ((args[argno] = va_arg_ptr(ap, char*)) != (char *)0) - argno++; - retval = execv(file, args); - va_return_int (ap, retval); -} -vacall_function = &execl; -.ft -.fi - -.SH SEE ALSO -.BR varargs (3), -.BR trampoline (3), -.BR callback (3). - -.SH BUGS - -The current implementations have been tested on a selection of common -cases but there are probably still many bugs. - -There are typically built-in limits on the size of the argument-list, -which may also include the size of any structure arguments. - -The decision whether a struct is to be returned in registers or in memory -considers only the struct's size and alignment. This is inaccurate: for -example, gcc on m68k-next returns -.B "struct { char a,b,c; }" -in registers and -.B "struct { char a[3]; }" -in memory, although both types have the same size and the same alignment. - -.B -cannot be included when -.B -or -.B -is included. -(Name clash for -.BR va_alist ".)" - -The argument list can only be walked once. - -The use of the global variable -.B vacall_function -is not reentrant. This is fixed in the -.BR callback (3) -package. - -.SH PORTING - -Knowledge about argument passing conventions can be found in the gcc -source, file -.RI gcc-2.6.3/config/ cpu / cpu .h, -section "Stack layout; function entry, exit and calling." - -The implementation of varargs for gcc can be found in the gcc source, files -gcc-2.6.3/ginclude/va*.h. - -gcc's __builtin_saveregs() function is defined in the gcc source, file -gcc-2.6.3/libgcc2.c. - -.SH AUTHOR - -Bruno Haible - -.SH ACKNOWLEDGEMENTS - -Many ideas and a lot of code were cribbed from the gcc source. - DELETED ffcall/vacall/vacall.h.in Index: ffcall/vacall/vacall.h.in ================================================================== --- ffcall/vacall/vacall.h.in +++ /dev/null @@ -1,1288 +0,0 @@ -#ifndef _VACALL_H /*-*- C -*-*/ -#define _VACALL_H - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - - -/* These definitions are adjusted by `configure' automatically. */ - -/* CPU */ -#ifndef __i386__ -#undef __i386__ -#endif -#ifndef __m68k__ -#undef __m68k__ -#endif -#ifndef __mips__ -#undef __mips__ -#endif -#ifndef __mipsn32__ -#undef __mipsn32__ -#endif -#ifndef __mips64__ -#undef __mips64__ -#endif -#ifndef __sparc__ -#undef __sparc__ -#endif -#ifndef __sparc64__ -#undef __sparc64__ -#endif -#ifndef __alpha__ -#undef __alpha__ -#endif -#ifndef __hppa__ -#undef __hppa__ -#endif -#ifndef __arm__ -#undef __arm__ -#endif -#ifndef __rs6000__ -#undef __rs6000__ -#endif -#ifndef __s390__ -#undef __s390__ -#endif -#ifndef __m88k__ -#undef __m88k__ -#endif -#ifndef __convex__ -#undef __convex__ -#endif -#ifndef __ia64__ -#undef __ia64__ -#endif -#ifndef __x86_64__ -#undef __x86_64__ -#endif - -/* Calling convention */ -/* Define if using pcc non-reentrant struct return convention */ -#undef __PCC_STRUCT_RETURN__ -/* Define if small structs are returned in registers */ -#undef __SMALL_STRUCT_RETURN__ -/* Define if floating-point results are returned in the integer registers */ -#undef __IREG_FLOAT_RETURN__ - -/* CL_LONGLONG */ -/* Define if your compiler supports the `long long' type. */ -#ifndef HAVE_LONGLONG -#undef HAVE_LONGLONG -#endif - -/* AC_C_CHAR_UNSIGNED */ -#ifndef __CHAR_UNSIGNED__ -#undef __CHAR_UNSIGNED__ -#endif - -/* End of definitions adjusted by `configure'. */ - - -/* Max # words in argument-list and temporary structure storage. - */ -#ifndef __VA_ALIST_WORDS -#define __VA_ALIST_WORDS 256 -#endif - -/* The `signed' keyword. - */ -#if !defined(__STDC__) && !defined(__CHAR_UNSIGNED__) && !defined(signed) -#define signed -#endif - -/* Determine the alignment of a type at compile time. - */ -#if defined(__GNUC__) -#define __VA_alignof __alignof__ -#else -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) /* SGI compiler */ -#define __VA_alignof __builtin_alignof -#else -#define __VA_offsetof(type,ident) ((unsigned long)&(((type*)0)->ident)) -#define __VA_alignof(type) __VA_offsetof(struct { char __slot1; type __slot2; }, __slot2) -#endif -#endif - -/* C builtin types. - */ -#if defined(__mipsn32__) -typedef long long __vaword; -#else -typedef long __vaword; -#endif - -enum __VAtype -{ - __VAvoid, - __VAchar, - __VAschar, - __VAuchar, - __VAshort, - __VAushort, - __VAint, - __VAuint, - __VAlong, - __VAulong, - __VAlonglong, - __VAulonglong, - __VAfloat, - __VAdouble, - __VAvoidp, - __VAstruct -}; - -enum __VA_alist_flags -{ - - /* how to return structs */ - /* There are basically 3 ways to return structs: - * a. The called function returns a pointer to static data. Not reentrant. - * b. The caller passes the return structure address in a dedicated register - * or as a first (or last), invisible argument. The called function stores - * its result there. - * c. Like b, and the called function also returns the return structure - * address in the return value register. (This is not very distinguishable - * from b.) - * Independently of this, - * r. small structures (<= 4 or <= 8 bytes) may be returned in the return - * value register(s), or - * m. even small structures are passed in memory. - */ - /* gcc-2.6.3 employs the following strategy: - * - If PCC_STATIC_STRUCT_RETURN is defined in the machine description - * it uses method a, else method c. - * - If flag_pcc_struct_return is set (either by -fpcc-struct-return or if - * DEFAULT_PCC_STRUCT_RETURN is defined to 1 in the machine description) - * it uses method m, else (either by -freg-struct-return or if - * DEFAULT_PCC_STRUCT_RETURN is defined to 0 in the machine description) - * method r. - */ - __VA_PCC_STRUCT_RETURN = 1<<0, /* a: need to copy the struct */ - __VA_SMALL_STRUCT_RETURN = 1<<1, /* r: special case for small structs */ - __VA_GCC_STRUCT_RETURN = 1<<2, /* consider 8 byte structs as small */ -#if defined(__sparc__) && !defined(__sparc64__) - __VA_SUNCC_STRUCT_RETURN = 1<<3, - __VA_SUNPROCC_STRUCT_RETURN = 1<<4, -#else - __VA_SUNCC_STRUCT_RETURN = 0, - __VA_SUNPROCC_STRUCT_RETURN = 0, -#endif -#if defined(__i386__) - __VA_NEXTGCC_STRUCT_RETURN = 1<<3, - __VA_MSVC_STRUCT_RETURN = 1<<4, -#endif -#if defined(__hppa__) - __VA_OLDGCC_STRUCT_RETURN = 1<<3, -#endif - /* the default way to return structs */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another struct returning convention, - * just #define __VA_STRUCT_RETURN ... - * before or after #including . - */ -#ifndef __VA_STRUCT_RETURN - __VA_STRUCT_RETURN = -#if defined(__sparc__) && !defined(__sparc64__) && defined(sun) && defined(__SUNPRO_C) /* SUNWspro cc */ - __VA_SUNPROCC_STRUCT_RETURN, -#else -#if defined(__PCC_STRUCT_RETURN__) /* defined through configure, see above */ - __VA_PCC_STRUCT_RETURN | -#if defined(__sparc__) && !defined(__sparc64__) && defined(sun) && !(defined(__STDC__) || defined(__GNUC__)) /* sun cc */ - __VA_SUNCC_STRUCT_RETURN, -#else - 0, -#endif -#else -#if defined(__SMALL_STRUCT_RETURN__) || defined(__mipsn32__) || defined(__mips64__) /* defined through configure, see above */ - __VA_SMALL_STRUCT_RETURN | -#endif -#if defined(__GNUC__) - __VA_GCC_STRUCT_RETURN | -#endif -#if defined(__i386__) && defined(NeXT) && defined(__GNUC__) /* NeXT gcc-2.5.8 */ - __VA_NEXTGCC_STRUCT_RETURN | -#endif -#if defined(__i386__) && defined(_MSC_VER) /* MSVC 4.0 */ - __VA_MSVC_STRUCT_RETURN | -#endif -#if defined(__hppa__) && defined(__GNUC__) && (__GNUC__ < 3) && (__GNUC_MINOR__ < 7) - __VA_OLDGCC_STRUCT_RETURN | -#endif - 0, -#endif -#endif -#endif - - /* how to return floats */ -#if defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) - __VA_SUNCC_FLOAT_RETURN = 1<<5, -#endif -#if defined(__m68k__) - __VA_FREG_FLOAT_RETURN = 1<<6, -#endif - /* the default way to return floats */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float returning convention, - * just #define __VA_FLOAT_RETURN ... - * before or after #including . - */ -#ifndef __VA_FLOAT_RETURN -#if (defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__))) && !defined(__GNUC__) && defined(sun) && !defined(__SUNPRO_C) /* sun cc */ - __VA_FLOAT_RETURN = __VA_SUNCC_FLOAT_RETURN, -#elif (defined(__m68k__) && !defined(__IREG_FLOAT_RETURN__)) - __VA_FLOAT_RETURN = __VA_FREG_FLOAT_RETURN, -#else - __VA_FLOAT_RETURN = 0, -#endif -#endif - - /* how to pass structs */ -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) - __VA_SGICC_STRUCT_ARGS = 1<<7, -#endif -#if defined(__rs6000__) - __VA_AIXCC_STRUCT_ARGS = 1<<7, -#endif - /* the default way to pass floats */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float passing convention, - * just #define __VA_STRUCT_ARGS ... - * before or after #including . - */ -#ifndef __VA_STRUCT_ARGS -#if (defined(__mips__) || defined(__mipsn32__) || defined(__mips64__)) && !defined(__GNUC__) /* SGI mips cc */ - __VA_STRUCT_ARGS = __VA_SGICC_STRUCT_ARGS, -#else -#if defined(__rs6000__) && defined(_AIX) && !defined(__GNUC__) /* AIX cc, xlc */ - __VA_STRUCT_ARGS = __VA_AIXCC_STRUCT_ARGS, -#else - __VA_STRUCT_ARGS = 0, -#endif -#endif -#endif - - /* how to pass floats */ - /* ANSI C compilers and GNU gcc pass floats as floats. - * K&R C compilers pass floats as doubles. - * (Except some compilers like SGI MIPS "cc" and "cc -cckr" if a prototype is - * known for the called functions. But to compile a program with prototypes, - * "cc -ansi" is better anyway. - */ - __VA_ANSI_FLOAT_ARGS = 0, /* pass floats as floats */ - __VA_TRADITIONAL_FLOAT_ARGS = 1<<8, /* pass floats as doubles */ - /* the default way to pass floats */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float passing convention, - * just #define __VA_FLOAT_ARGS ... - * before or after #including . - */ -#ifndef __VA_FLOAT_ARGS -#if defined(__STDC__) || defined(__GNUC__) /* what about hppa "cc -Aa" ?? */ - __VA_FLOAT_ARGS = __VA_ANSI_FLOAT_ARGS, -#else - __VA_FLOAT_ARGS = __VA_TRADITIONAL_FLOAT_ARGS, -#endif -#endif - - /* how to pass and return small integer arguments */ - __VA_ANSI_INTEGERS = 0, /* no promotions */ - __VA_TRADITIONAL_INTEGERS = 0, /* promote [u]char, [u]short to [u]int */ - /* Fortunately these two methods are compatible. Our macros work with both. */ - /* the default way to pass and return small integer arguments */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float passing convention, - * just #define __VA_INTEGERS ... - * before or after #including . - */ -#ifndef __VA_INTEGERS -#if defined(__STDC__) || defined(__GNUC__) - __VA_INTEGERS = __VA_ANSI_INTEGERS, -#else - __VA_INTEGERS = __VA_TRADITIONAL_INTEGERS, -#endif -#endif - - /* stack cleanup policy */ - __VA_CDECL_CLEANUP = 0, /* caller pops args after return */ - __VA_STDCALL_CLEANUP = 1<<9, /* callee pops args before return */ - /* currently only supported on __i386__ */ -#ifndef __VA_CLEANUP - __VA_CLEANUP = __VA_CDECL_CLEANUP, -#endif - - /* These are for internal use only */ -#if defined(__i386__) || defined(__m68k__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc64__) || defined(__alpha__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__ia64__) || defined(__x86_64__) || defined(__s390__) - __VA_REGISTER_STRUCT_RETURN = 1<<10, -#endif -#if defined(__mips__) && !defined(__mipsn32__) - __VA_FLOAT_1 = 1<<11, - __VA_FLOAT_2 = 1<<12, -#endif -#if defined(__mipsn32__) || defined(__mips64__) - __VA_REGISTER_FLOATSTRUCT_RETURN = 1<<13, - __VA_REGISTER_DOUBLESTRUCT_RETURN = 1<<14, -#endif - - __VA_flag_for_broken_compilers_that_dont_like_trailing_commas -}; - -/* - * Definition of the `va_alist' type. - */ -typedef struct -{ - /* some va_... macros need these flags */ - int flags; - /* current pointer into the argument array */ - unsigned long aptr; - /* structure return pointer, return type, return type size */ - void* raddr; - enum __VAtype rtype; - unsigned long rsize; -#if defined(__i386__) || (defined(__rs6000__) && defined(__MACH__) && defined(__APPLE__)) - /* Filler word, needed if the numbers of words up to now in this structure */ - /* is odd (because on MSVC, alignof(double) = 8, normally = 4; similarly, */ - /* on MacOS X, the Apple compiler has alignof(double) = 8 whereas the */ - /* standard GCC has alignof(double) = 4. */ - __vaword filler1; -#endif - /* temporary storage for return value */ - union { - char _char; - signed char _schar; - unsigned char _uchar; - short _short; - unsigned short _ushort; - int _int; - unsigned int _uint; - long _long; - unsigned long _ulong; -#if !(defined(__mips64__) || defined(__alpha__)) && defined(HAVE_LONGLONG) - long long _longlong; - unsigned long long _ulonglong; -#endif - float _float; - double _double; - void* _ptr; - __vaword _words[2]; - } tmp; -#if defined(__i386__) || defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__hppa__) || defined(__m88k__) || defined(__ia64__) - void* structraddr; -#endif -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) || defined(__alpha__) || defined(__hppa__) - long memargptr; -#endif -#if defined(__hppa__) - long farg_offset; - long darg_offset; - float farg[4]; - double darg[2]; -#endif -#if defined(__mips__) && !defined(__mipsn32__) - int anum; - float farg[2]; - double darg[2]; -#endif -#if defined(__mipsn32__) || defined(__mips64__) - int anum; - float farg[8]; - double darg[8]; -#endif -#if defined(__sparc64__) - int anum; - float farg[16]; - double darg[16]; -#endif -#if defined(__rs6000__) - double* memfargptr; - double farg[13]; -#if !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) - __vaword regarg[8]; - unsigned long saptr; - int onstack; -#endif -#endif -#if defined(__s390__) - float* memfargptr; - double* memdargptr; - float farg[2]; - double darg[2]; - __vaword regarg[5]; - unsigned long saptr; - int onstack; -#endif -#if defined(__ia64__) - __vaword* saptr; - double* memfargptr; - double farg[8]; -#endif -#if defined(__x86_64__) - double* memfargptr; - double farg[8]; - __vaword* memiargptr; - __vaword iarg[6]; -#endif -} __va_alist; - -typedef __va_alist* va_alist; - - -/* - * Definition of the va_start_xxx macros. - */ -#define __VA_START_FLAGS \ - __VA_STRUCT_RETURN | __VA_FLOAT_RETURN | __VA_STRUCT_ARGS | __VA_FLOAT_ARGS | __VA_INTEGERS | __VA_CLEANUP -#define __va_start(LIST,RETTYPE) \ - ((LIST)->flags = __VA_START_FLAGS, \ - (LIST)->rtype = (RETTYPE) \ - ) -#define va_start_void(LIST) __va_start(LIST,__VAvoid) -#define va_start_char(LIST) __va_start(LIST,__VAchar) -#define va_start_schar(LIST) __va_start(LIST,__VAschar) -#define va_start_uchar(LIST) __va_start(LIST,__VAuchar) -#define va_start_short(LIST) __va_start(LIST,__VAshort) -#define va_start_ushort(LIST) __va_start(LIST,__VAushort) -#define va_start_int(LIST) __va_start(LIST,__VAint) -#define va_start_uint(LIST) __va_start(LIST,__VAuint) -#define va_start_long(LIST) __va_start(LIST,__VAlong) -#define va_start_ulong(LIST) __va_start(LIST,__VAulong) -#define va_start_longlong(LIST) __va_start(LIST,__VAlonglong) -#define va_start_ulonglong(LIST) __va_start(LIST,__VAulonglong) -#define va_start_float(LIST) __va_start(LIST,__VAfloat) -#define va_start_double(LIST) __va_start(LIST,__VAdouble) -#define va_start_ptr(LIST,TYPE) __va_start(LIST,__VAvoidp) - -/* - * va_start_struct: Preparing structure return. - */ -#define va_start_struct(LIST,TYPE,TYPE_SPLITTABLE) \ - _va_start_struct(LIST,sizeof(TYPE),__VA_alignof(TYPE),TYPE_SPLITTABLE) -/* _va_start_struct() is like va_start_struct(), except that you pass - * the type's size and alignment instead of the type itself. - */ -#define _va_start_struct(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - (__va_start(LIST,__VAstruct), \ - (LIST)->rsize = (TYPE_SIZE), \ - ((LIST)->flags & __VA_SUNPROCC_STRUCT_RETURN \ - ? __va_start_struct2(LIST) \ - : ((LIST)->flags & (__VA_PCC_STRUCT_RETURN | __VA_SUNCC_STRUCT_RETURN) \ - ? ((TYPE_SIZE) <= sizeof(__va_struct_buffer) || __va_error2(TYPE_SIZE), \ - (LIST)->raddr = &__va_struct_buffer, \ - 0 \ - ) \ - : (((LIST)->flags & __VA_SMALL_STRUCT_RETURN) \ - && __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ? ((LIST)->raddr = &(LIST)->tmp, \ - __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ) \ - : __va_start_struct2(LIST) \ - )) ) ) -/* Determines whether a structure is returned in registers, - * depending on its size and its word-splittable flag. - */ -#if (defined(__i386__) && defined(_WIN32)) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 \ - || ((TYPE_SIZE) == 8 \ - && (((LIST)->flags & __VA_MSVC_STRUCT_RETURN) \ - || ((TYPE_SPLITTABLE) \ - && ((LIST)->flags & __VA_GCC_STRUCT_RETURN) \ - ) ) ) ) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, 0) -#endif -#if (defined(__i386__) && !defined(_WIN32)) || defined(__m68k__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__s390__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 \ - || ((TYPE_SIZE) == 8 && (TYPE_SPLITTABLE) \ - && ((LIST)->flags & __VA_GCC_STRUCT_RETURN) \ - ) ) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, 0) -#endif -#if defined(__alpha__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 || (TYPE_SIZE) == 8 \ - || ((TYPE_SIZE) == 16 && (TYPE_SPLITTABLE) \ - && ((LIST)->flags & __VA_GCC_STRUCT_RETURN) \ - ) ) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, 0) -#endif -#if defined(__hppa__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((LIST)->flags & __VA_OLDGCC_STRUCT_RETURN \ - ? ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4) \ - : ((TYPE_SIZE) <= 8) \ - ) -/* Test both __VA_OLDGCC_STRUCT_RETURN and __VA_SMALL_STRUCT_RETURN at run time. */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - 0 -#endif -#if defined(__mips__) && !defined(__mipsn32__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__m88k__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4) -/* Test __VA_SMALL_STRUCT_RETURN instead of __VA_REGISTER_STRUCT_RETURN. */ -#if defined(__mips__) && !defined(__mipsn32__) -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->anum++, \ - 0 \ - ) -#else -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - 0 -#endif -#endif -#if defined(__mipsn32__) || defined(__mips64__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((LIST)->flags & __VA_GCC_STRUCT_RETURN \ - ? ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 || (TYPE_SIZE) == 8) \ - : ((TYPE_SIZE) <= 16) \ - ) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. Also turn on - * __VA_REGISTER_FLOATSTRUCT_RETURN or __VA_REGISTER_DOUBLESTRUCT_RETURN if - * the struct will be returned in floating-point registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, \ - (TYPE_ALIGN) == sizeof(float) && (TYPE_SPLITTABLE) \ - && ((TYPE_SIZE) == sizeof(float) || (TYPE_SIZE) == 2*sizeof(float)) \ - && ((LIST)->flags |= __VA_REGISTER_FLOATSTRUCT_RETURN), \ - (TYPE_ALIGN) == sizeof(double) && (TYPE_SPLITTABLE) \ - && ((TYPE_SIZE) == sizeof(double) || (TYPE_SIZE) == 2*sizeof(double)) \ - && ((LIST)->flags |= __VA_REGISTER_DOUBLESTRUCT_RETURN), \ - 0) -#endif -#if defined(__sparc64__) || defined(__ia64__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) <= 32) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, \ - 0) -#endif -#if defined(__x86_64__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) <= 16) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, \ - 0) -#endif -/* - * Preparing structure return in memory. - */ -#if defined(__i386__) -/* Return structure pointer is passed in a special register or as first arg. */ -#define __va_start_struct2(LIST) \ - ((LIST)->flags & __VA_NEXTGCC_STRUCT_RETURN \ - ? ((LIST)->raddr = (LIST)->structraddr, 0) /* special register */ \ - : ((LIST)->raddr = *(void* *)((LIST)->aptr), /* first arg */ \ - (LIST)->aptr += sizeof(void*), \ - 0 \ - ) ) -#endif -#if defined(__alpha__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__s390__) -/* Return structure pointer is passed as first arg. */ -#define __va_start_struct2(LIST) \ - ((LIST)->raddr = *(void* *)((LIST)->aptr), \ - (LIST)->aptr += sizeof(void*), \ - 0 \ - ) -#endif -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc64__) -/* Return structure pointer is passed as first arg. */ -#define __va_start_struct2(LIST) \ - ((LIST)->raddr = *(void* *)((LIST)->aptr), \ - (LIST)->aptr += sizeof(void*), \ - (LIST)->anum++, \ - 0 \ - ) -#endif -#if defined(__x86_64__) -/* Return structure pointer is passed as first arg. */ -#define __va_start_struct2(LIST) \ - ((LIST)->raddr = (void *)(*(LIST)->memiargptr++), \ - 0 \ - ) -#endif -#if defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__hppa__) || defined(__m88k__) || defined(__ia64__) -/* Return structure pointer is passed in a special register. */ -#define __va_start_struct2(LIST) \ - ((LIST)->raddr = (LIST)->structraddr, 0) -#endif - - -/* - * Definition of the va_arg_xxx macros. - */ - -/* Padding of non-struct arguments. */ -#define __va_argsize(TYPE_SIZE) \ - (((TYPE_SIZE) + sizeof(__vaword)-1) & -(long)sizeof(__vaword)) -#if defined(__i386__) || defined(__m68k__) || defined(__mips__) && !defined(__mipsn32__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__alpha__) || defined(__arm__) || (defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__m88k__) || defined(__convex__) || defined(__ia64__) || defined(__x86_64__) -/* args grow up */ -/* small structures < 1 word are adjusted depending on compiler */ -#define __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - __va_argsize(TYPE_SIZE) \ - ) -#define __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - ((TYPE_SIZE) < sizeof(__vaword) \ - ? (TYPE_SIZE) \ - : __va_argsize(TYPE_SIZE) \ - ) \ - ) -#endif -#if defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) -/* args grow up */ -/* small structures < 1 word are adjusted depending on compiler */ -/* Also make sure we switch to the stack pointer after 8 args */ -#define __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((((LIST)->onstack == 0 && (LIST)->aptr >= (long)&(LIST)->regarg[8]) \ - ? ((LIST)->onstack=1, (LIST)->aptr = (LIST)->saptr) : 0), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - __va_argsize(TYPE_SIZE) \ - ) -#define __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((((LIST)->onstack == 0 && (LIST)->aptr >= (long)&(LIST)->regarg[8]) \ - ? ((LIST)->onstack=1, (LIST)->aptr = (LIST)->saptr) : 0), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - ((TYPE_SIZE) < sizeof(__vaword) \ - ? (TYPE_SIZE) \ - : __va_argsize(TYPE_SIZE) \ - ) \ - ) -#endif -#if defined(__s390__) -/* args grow up */ -/* small structures < 1 word are adjusted depending on compiler */ -/* Also make sure we switch to the stack pointer after 5 args */ -#define __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((((LIST)->onstack == 0 && (LIST)->aptr >= (long)&(LIST)->regarg[5]) \ - ? ((LIST)->onstack=1, (LIST)->aptr = (LIST)->saptr) : 0), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - __va_argsize(TYPE_SIZE) \ - ) -#define __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (((((LIST)->onstack == 0 && ((LIST)->aptr >= (long)&(LIST)->regarg[5])) \ - || ((TYPE_SIZE) > sizeof(__vaword) && (LIST)->aptr >= (long)&(LIST)->regarg[4])) \ - ? ((LIST)->onstack=1, (LIST)->aptr = (LIST)->saptr) : 0), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - ((TYPE_SIZE) < sizeof(__vaword) \ - ? (TYPE_SIZE) \ - : __va_argsize(TYPE_SIZE) \ - ) \ - ) -#endif -#if defined(__mipsn32__) || defined(__mips64__) || defined(__sparc64__) -/* args grow up */ -/* small structures < 1 word are adjusted depending on compiler */ -#define __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->anum += __va_argsize(TYPE_SIZE)/sizeof(__vaword), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - __va_argsize(TYPE_SIZE) \ - ) -#define __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->anum += __va_argsize(TYPE_SIZE)/sizeof(__vaword), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - ((TYPE_SIZE) < sizeof(__vaword) \ - ? (TYPE_SIZE) \ - : __va_argsize(TYPE_SIZE) \ - ) \ - ) -#endif -#if defined(__hppa__) -/* args grow down */ -#define __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->aptr = (LIST)->aptr - __va_argsize(TYPE_SIZE), \ - ((TYPE_SIZE) > 4 && ((LIST)->aptr &= -8)), \ - (LIST)->aptr \ - ) -#define __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->aptr = (LIST)->aptr - __va_argsize(TYPE_SIZE), \ - ((TYPE_SIZE) > 4 && ((LIST)->aptr &= -8)), \ - (LIST)->aptr + ((-(TYPE_SIZE)) & 3) \ - ) -#endif -#if defined(__i386__) || defined(__alpha__) || defined(__ia64__) -/* little endian -> small args < 1 word are adjusted to the left */ -#define __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) -#endif -#if defined(__m68k__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc__) || defined(__sparc64__) || defined(__hppa__) || defined(__arm__) || defined(__rs6000__) || defined(__m88k__) || defined(__convex__) || defined(__s390__) -/* big endian -> small args < 1 word are adjusted to the right */ -#define __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) -#endif -#if defined(__mips__) && !defined(__mipsn32__) -/* big endian -> small args < 1 word are adjusted to the right */ -#define __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->anum++, __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN)) -#endif -#if defined(__x86_64__) -/* the first 6 argument words are passed in registers */ -#define __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->memiargptr + ((TYPE_SIZE) + sizeof(__vaword)-1) / sizeof(__vaword) <= &(LIST)->iarg[6] \ - ? ((LIST)->memiargptr += ((TYPE_SIZE) + sizeof(__vaword)-1) / sizeof(__vaword), \ - (LIST)->memiargptr - ((TYPE_SIZE) + sizeof(__vaword)-1) / sizeof(__vaword) \ - ) \ - : (void*)__va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ) -#endif -#define __va_arg(LIST,TYPE) \ - *(TYPE*)__va_arg_adjusted(LIST,sizeof(TYPE),__VA_alignof(TYPE)) - -/* Integer arguments. */ - -#define va_arg_char(LIST) __va_arg(LIST,char) -#define va_arg_schar(LIST) __va_arg(LIST,signed char) -#define va_arg_uchar(LIST) __va_arg(LIST,unsigned char) -#define va_arg_short(LIST) __va_arg(LIST,short) -#define va_arg_ushort(LIST) __va_arg(LIST,unsigned short) -#define va_arg_int(LIST) __va_arg(LIST,int) -#define va_arg_uint(LIST) __va_arg(LIST,unsigned int) -#define va_arg_long(LIST) __va_arg(LIST,long) -#define va_arg_ulong(LIST) __va_arg(LIST,unsigned long) - -#if defined(__mips64__) || defined(__sparc64__) || defined(__alpha__) || defined(__ia64__) || defined(__x86_64__) -/* `long long' and `long' are identical. */ -#define va_arg_longlong va_arg_long -#define va_arg_ulonglong va_arg_ulong -#elif defined(__mipsn32__) -/* `long long' fits in __vaword. */ -#define va_arg_longlong(LIST) __va_arg(LIST,long long) -#define va_arg_ulonglong(LIST) __va_arg(LIST,unsigned long long) -#elif defined(__i386__) || defined(__m68k__) || defined(__mips__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__hppa__) || defined(__arm__) || defined(__rs6000__) || defined(__m88k__) || defined(__convex__) || defined(__s390__) -/* `long long's are passed embedded on the arg stack. */ -#define va_arg_longlong(LIST) __va_arg_longlong(LIST,long long) -#define va_arg_ulonglong(LIST) __va_arg_longlong(LIST,unsigned long long) -#if defined(__i386__) || defined(__m68k__) || defined(__arm__) || (defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__convex__) -/* `long long's are (at most) word-aligned. */ -#define __va_arg_longlong(LIST,TYPE) __va_arg(LIST,TYPE) -#endif -#if defined(__mips__) || (defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__m88k__) -/* `long long's have alignment 8. */ -#define __va_arg_longlong(LIST,TYPE) \ - ((LIST)->aptr = (((LIST)->aptr+__VA_alignof(TYPE)-1) & -(long)__VA_alignof(TYPE)), \ - __va_arg(LIST,TYPE)) -#endif -#if (defined(__sparc__) && !defined(__sparc64__)) || defined(__s390__) -/* Within the arg stack, the alignment is only 4, not 8. */ -/* Beware against unaligned accesses! */ -#define __va_arg_longlong(LIST,TYPE) \ - ((LIST)->tmp._words[0] = ((__vaword*)((LIST)->aptr))[0], \ - (LIST)->tmp._words[1] = ((__vaword*)((LIST)->aptr))[1], \ - (LIST)->aptr += sizeof(TYPE), \ - (TYPE)((LIST)->tmp._longlong) \ - ) -#endif -#if defined(__hppa__) -/* `long long's have alignment 8. */ -#define __va_arg_longlong(LIST,TYPE) \ - ((LIST)->aptr = ((LIST)->aptr & -(long)__VA_alignof(TYPE)), \ - __va_arg(LIST,TYPE)) -#endif -#endif - -/* Floating point arguments. */ - -#define va_arg_float(LIST) \ - ((LIST)->flags & __VA_TRADITIONAL_FLOAT_ARGS \ - ? (float)va_arg_double(LIST) \ - : __va_arg_float(LIST) \ - ) - -#if defined(__i386__) || defined(__m68k__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc__) || defined(__sparc64__) || defined(__alpha__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__ia64__) || defined(__x86_64__) || defined(__s390__) -#define __va_align_double(LIST) -#endif -#if defined(__mips__) && !defined(__mipsn32__) || defined(__m88k__) -/* __VA_alignof(double) > sizeof(__vaword) */ -#define __va_align_double(LIST) \ - (LIST)->aptr = ((LIST)->aptr + sizeof(double)-1) & -(long)sizeof(double), -#endif -#if defined(__hppa__) -#define __va_align_double(LIST) \ - (LIST)->aptr = (LIST)->aptr & -(long)sizeof(double), -#endif - -#if defined(__sparc__) && !defined(__sparc64__) -/* Beware against unaligned `double' accesses! */ -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->tmp._words[0] = ((__vaword*)((LIST)->aptr))[0], \ - (LIST)->tmp._words[1] = ((__vaword*)((LIST)->aptr))[1], \ - (LIST)->aptr += sizeof(double), \ - (LIST)->tmp._double \ - ) -#endif -#if defined(__alpha__) -/* The first 6 floating point registers have been stored in another place. */ -#define va_arg_double(LIST) \ - (((LIST)->aptr += sizeof(double)) <= (LIST)->memargptr \ - ? *(double*)((LIST)->aptr - sizeof(double) - 6*sizeof(double)) \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - ) -#define __va_arg_float(LIST) \ - (((LIST)->aptr += sizeof(double)) <= (LIST)->memargptr \ - ? /* The first 6 args have been put into memory by "stt" instructions */\ - /* (see vacall-alpha.s!). Therefore load them as doubles. */ \ - /* When viewed as floats, the value will be the correct one. */ \ - (float)*(double*)((LIST)->aptr - sizeof(double) - 6*sizeof(double)) \ - : /* These args have been put into memory by "sts" instructions, */ \ - /* therefore load them as floats. */ \ - *(float*)((LIST)->aptr - sizeof(double)) \ - ) -#endif -#if defined(__hppa__) -/* The first 4 float registers and the first 2 double registers are stored - * elsewhere. - */ -#if 1 /* gcc-2.5.2 passes these args in general registers! A bug, I think. */ -#define __va_arg_float(LIST) \ - (*(float*)((LIST)->aptr -= sizeof(float))) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - *(double*)((LIST)->aptr -= sizeof(double)) \ - ) -#else /* this would be correct if the args were passed in float registers. */ -#define __va_arg_float(LIST) \ - (((LIST)->aptr -= sizeof(float)) >= (LIST)->memargptr \ - ? /* The first 4 float args are stored separately. */ \ - *(float*)((LIST)->aptr + (LIST)->farg_offset) \ - : *(float*)((LIST)->aptr) \ - ) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (((LIST)->aptr -= sizeof(double)) >= (LIST)->memargptr \ - ? /* The first 2 double args are stored separately. */ \ - *(double*)((LIST)->aptr + (LIST)->darg_offset) \ - : *(double*)((LIST)->aptr) \ - )) -#endif -#endif -#if defined(__mips__) && !defined(__mipsn32__) -/* The first 0,1,2 registers are stored elsewhere if they are floating-point - * parameters. - */ -#define __va_arg_float(LIST) \ - ((LIST)->aptr += sizeof(float), \ - (LIST)->anum++, \ - ((LIST)->anum == 1 \ - ? ((LIST)->flags |= __VA_FLOAT_1, (LIST)->farg[0]) \ - : ((LIST)->anum == 2 && ((LIST)->flags & __VA_FLOAT_1) \ - ? (/* (LIST)->flags |= __VA_FLOAT_2, */ (LIST)->farg[1]) \ - : *(float*)((LIST)->aptr - sizeof(float)) \ - )) ) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - (LIST)->anum++, \ - ((LIST)->anum == 1 \ - ? ((LIST)->flags |= __VA_FLOAT_1, (LIST)->darg[0]) \ - : ((LIST)->anum == 2 && ((LIST)->flags & __VA_FLOAT_1) \ - ? (/* (LIST)->flags |= __VA_FLOAT_2, */ (LIST)->darg[1]) \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - )) ) -#endif -#if defined(__mipsn32__) || defined(__mips64__) -/* The first 0,..,8 registers are stored elsewhere if they are floating-point - * parameters. - */ -#define __va_arg_float(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - (++(LIST)->anum <= 8 \ - ? (LIST)->farg[(LIST)->anum - 1] \ - : *(float*)((LIST)->aptr - sizeof(double)) \ - )) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - (++(LIST)->anum <= 8 \ - ? (LIST)->darg[(LIST)->anum - 1] \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__sparc64__) -/* The first 0,..,16 registers are stored elsewhere if they are floating-point - * parameters. - */ -#define __va_arg_float(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - (++(LIST)->anum <= 16 \ - ? (LIST)->farg[(LIST)->anum - 1] \ - : *(float*)((LIST)->aptr - sizeof(double)) \ - )) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - (++(LIST)->anum <= 16 \ - ? (LIST)->darg[(LIST)->anum - 1] \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) -/* The first 13 floating-point args have been stored elsewhere. */ -#define __va_arg_float(LIST) \ - ((LIST)->aptr += sizeof(float), \ - ((LIST)->memfargptr < &(LIST)->farg[13] \ - ? (float) *((LIST)->memfargptr++) \ - : *(float*)((LIST)->aptr - sizeof(float)) \ - )) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - ((LIST)->memfargptr < &(LIST)->farg[13] \ - ? *((LIST)->memfargptr++) \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) -/* The first 8 floating-point args have been stored elsewhere. */ -#define __va_arg_float(LIST) \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? (float) *((LIST)->memfargptr++) \ - : ((LIST)->aptr = ((LIST)->onstack == 0 \ - ? ((LIST)->onstack=1, (LIST)->saptr) \ - : (LIST)->aptr \ - ), \ - (LIST)->aptr += sizeof(float), \ - *(float*)((LIST)->aptr - sizeof(float)) \ - )) -#define va_arg_double(LIST) \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? *((LIST)->memfargptr++) \ - : ((LIST)->aptr = ((LIST)->onstack == 0 \ - ? ((LIST)->onstack=1, (LIST)->saptr) \ - : (LIST)->aptr \ - ), \ - __va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__s390__) -/* The first 2 floating-point args have been stored elsewhere. */ -#define __va_arg_float(LIST) \ - ((LIST)->memfargptr < &(LIST)->farg[2] \ - ? (LIST)->memdargptr++, (float) *((LIST)->memfargptr++) \ - : ((LIST)->aptr = ((LIST)->onstack == 0 \ - ? ((LIST)->onstack=1, (LIST)->saptr) \ - : (LIST)->aptr \ - ), \ - (LIST)->aptr += sizeof(float), \ - *(float*)((LIST)->aptr - sizeof(float)) \ - )) -#define va_arg_double(LIST) \ - ((LIST)->memdargptr < &(LIST)->darg[2] \ - ? (LIST)->memfargptr++, *((LIST)->memdargptr++) \ - : ((LIST)->aptr = ((LIST)->onstack == 0 \ - ? ((LIST)->onstack=1, (LIST)->saptr) \ - : (LIST)->aptr \ - ), \ - __va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__ia64__) -/* The first 8 floating-point args have been stored elsewhere. */ -#define __va_arg_float(LIST) \ - ((LIST)->aptr += sizeof(__vaword), \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? (float) *((LIST)->memfargptr++) \ - : *(float*)((LIST)->aptr - sizeof(__vaword)) \ - )) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? *((LIST)->memfargptr++) \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__x86_64__) -/* The first 8 floating-point args have been stored elsewhere. */ -#define __va_arg_float(LIST) \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? ((LIST)->memfargptr++, \ - *(float*)((LIST)->memfargptr - 1) \ - ) \ - : ((LIST)->aptr += sizeof(__vaword), \ - *(float*)((LIST)->aptr - sizeof(__vaword)) \ - ) ) -#define va_arg_double(LIST) \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? *(LIST)->memfargptr++ \ - : ((LIST)->aptr += sizeof(__vaword), \ - *(double*)((LIST)->aptr - sizeof(__vaword)) \ - ) ) -#endif -#ifndef __va_arg_float -#define __va_arg_float(LIST) __va_arg(LIST,float) -#endif -#ifndef va_arg_double -#define va_arg_double(LIST) \ - (__va_align_double(LIST) __va_arg(LIST,double)) -#endif - -/* Pointer arguments. */ -#define va_arg_ptr(LIST,TYPE) __va_arg(LIST,TYPE) - -/* Structure arguments. */ -#define va_arg_struct(LIST,TYPE) \ - *(TYPE*)__va_arg_struct(LIST,sizeof(TYPE),__VA_alignof(TYPE)) -/* _va_arg_struct() is like va_arg_struct(), except that you pass the type's - * size and alignment instead of the type and get the value's address instead - * of the value itself. - */ -#define _va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (void*)__va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) -/* Structure argument alignment. */ -#if defined(__i386__) && defined(_MSC_VER) -/* In MSVC, doubles inside structures have alignment 8, i.e. - * __VA_alignof(double) = 8, but doubles (and also structures containing - * doubles) are passed on the stack with alignment 4. Looks really weird. - */ -#define __va_struct_alignment(TYPE_ALIGN) \ - ((TYPE_ALIGN) <= 4 ? (TYPE_ALIGN) : 4) -#else -#define __va_struct_alignment(TYPE_ALIGN) \ - (TYPE_ALIGN) -#endif -#define __va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (LIST)->aptr = ((LIST)->aptr + __va_struct_alignment(TYPE_ALIGN)-1) & -(long)__va_struct_alignment(TYPE_ALIGN), -#if defined(__i386__) || defined(__m68k__) || defined(__alpha__) || defined(__arm__) || defined(__m88k__) || defined(__convex__) || defined(__x86_64__) -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ) -#endif -#if defined(__mips__) && !defined(__mipsn32__) -/* small structures < 1 word are adjusted depending on compiler */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->flags & __VA_SGICC_STRUCT_ARGS \ - ? /* SGI MIPS cc passes small structures left-adjusted, although big-endian! */\ - __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - : /* SGI MIPS gcc passes small structures within the first four words left- \ - * adjusted, for compatibility with cc. But structures in memory are passed \ - * right-adjusted!! See gcc-2.6.3/config/mips/mips.c:function_arg(). \ - */ \ - ((LIST)->aptr < (LIST)->memargptr \ - ? __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - : __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - )) ) -#endif -#if defined(__mipsn32__) || defined(__mips64__) -/* small structures < 1 word are adjusted depending on compiler */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->flags & __VA_SGICC_STRUCT_ARGS \ - ? /* SGI MIPS cc passes small structures left-adjusted, although big-endian! */\ - __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - : /* SGI MIPS gcc passes small structures right-adjusted. */ \ - __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - )) -#endif -#if defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) -/* small structures < 1 word are adjusted depending on compiler */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->flags & __VA_AIXCC_STRUCT_ARGS \ - ? /* AIX cc and xlc pass small structures left-adjusted, although big-endian! */\ - __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - : /* gcc passes small structures right-adjusted. */ \ - __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - )) -#endif -#if defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) -/* Structures are passed as pointers to caller-made local copies. */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - va_arg_ptr(LIST,void*) -#endif -#if defined(__sparc__) && !defined(__sparc64__) -/* Structures are passed as pointers to caller-made local copies. */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - va_arg_ptr(LIST,void*) -#endif -#if defined(__sparc64__) -/* Small structures are passed left-adjusted, although big-endian! */ -/* Big structures are passed as pointers to caller-made local copies. */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((TYPE_SIZE) <= 16 \ - ? (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN)) \ - : va_arg_ptr(LIST,void*) \ - ) -#endif -#if defined(__s390__) -/* Structures <= 8 bytes are passed as embedded copies on the arg stack. - * Big structures are passed as pointers to caller-made local copies. - */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((TYPE_SIZE) != 1 && (TYPE_SIZE) != 2 && (TYPE_SIZE) != 4 && (TYPE_SIZE) != 8 \ - ? va_arg_ptr(LIST,void*) \ - : (void*)__va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ) -#endif -#if defined(__hppa__) -/* Structures <= 8 bytes are passed as embedded copies on the arg stack. - * Big structures are passed as pointers to caller-made local copies. - */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((TYPE_SIZE) > 8 \ - ? va_arg_ptr(LIST,void*) \ - : /* FIXME: gcc-2.6.3 passes structures <= 4 bytes in memory left-adjusted! ?? */\ - (void*)__va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ) -#endif -#if defined(__ia64__) -/* Types larger than a word have 2-word alignment. */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((TYPE_SIZE) > sizeof(__vaword) && (((__vaword*)(LIST)->aptr - (LIST)->saptr) & 1) ? (LIST)->aptr += sizeof(__vaword) : 0), \ - __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ) -#endif - - -/* - * Definition of the va_return_xxx macros. - */ -#define __va_return(LIST,RETTYPE) \ - (((LIST)->rtype == (RETTYPE)) || __va_error1((LIST)->rtype,RETTYPE)) -#define va_return_void(LIST) \ - __va_return(LIST,__VAvoid) -#define va_return_char(LIST,VAL) \ - (__va_return(LIST,__VAchar), (LIST)->tmp._char = (VAL)) -#define va_return_schar(LIST,VAL) \ - (__va_return(LIST,__VAschar), (LIST)->tmp._schar = (VAL)) -#define va_return_uchar(LIST,VAL) \ - (__va_return(LIST,__VAuchar), (LIST)->tmp._uchar = (VAL)) -#define va_return_short(LIST,VAL) \ - (__va_return(LIST,__VAshort), (LIST)->tmp._short = (VAL)) -#define va_return_ushort(LIST,VAL) \ - (__va_return(LIST,__VAushort), (LIST)->tmp._ushort = (VAL)) -#define va_return_int(LIST,VAL) \ - (__va_return(LIST,__VAint), (LIST)->tmp._int = (VAL)) -#define va_return_uint(LIST,VAL) \ - (__va_return(LIST,__VAuint), (LIST)->tmp._uint = (VAL)) -#define va_return_long(LIST,VAL) \ - (__va_return(LIST,__VAlong), (LIST)->tmp._long = (VAL)) -#define va_return_ulong(LIST,VAL) \ - (__va_return(LIST,__VAulong), (LIST)->tmp._ulong = (VAL)) -#if defined(__mips64__) || defined(__sparc64__) || defined(__alpha__) || defined(__ia64__) || defined(__x86_64__) -#define va_return_longlong(LIST,VAL) \ - (__va_return(LIST,__VAlonglong), (LIST)->tmp._long = (VAL)) -#define va_return_ulonglong(LIST,VAL) \ - (__va_return(LIST,__VAulonglong), (LIST)->tmp._ulong = (VAL)) -#else -#define va_return_longlong(LIST,VAL) \ - (__va_return(LIST,__VAlonglong), (LIST)->tmp._longlong = (VAL)) -#define va_return_ulonglong(LIST,VAL) \ - (__va_return(LIST,__VAulonglong), (LIST)->tmp._ulonglong = (VAL)) -#endif -#define va_return_float(LIST,VAL) \ - (__va_return(LIST,__VAfloat), (LIST)->tmp._float = (VAL)) -#define va_return_double(LIST,VAL) \ - (__va_return(LIST,__VAdouble), (LIST)->tmp._double = (VAL)) -#define va_return_ptr(LIST,TYPE,VAL) \ - (__va_return(LIST,__VAvoidp), (LIST)->tmp._ptr = (void*)(TYPE)(VAL)) -#define va_return_struct(LIST,TYPE,VAL) \ - (__va_return(LIST,__VAstruct), *(TYPE*)((LIST)->raddr) = (VAL)) -#define _va_return_struct(LIST,TYPE_SIZE,TYPE_ALIGN,VAL_ADDR) \ - (__va_return(LIST,__VAstruct), \ - __structcpy((void*)((LIST)->raddr),VAL_ADDR,TYPE_SIZE,TYPE_ALIGN) \ - ) - - -/* Determine whether a struct type is word-splittable, i.e. whether each of - * its components fit into a register. - * The entire computation is done at compile time. - */ -#define va_word_splittable_1(slot1) \ - (__va_offset1(slot1)/sizeof(__vaword) == (__va_offset1(slot1)+sizeof(slot1)-1)/sizeof(__vaword)) -#define va_word_splittable_2(slot1,slot2) \ - ((__va_offset1(slot1)/sizeof(__vaword) == (__va_offset1(slot1)+sizeof(slot1)-1)/sizeof(__vaword)) \ - && (__va_offset2(slot1,slot2)/sizeof(__vaword) == (__va_offset2(slot1,slot2)+sizeof(slot2)-1)/sizeof(__vaword)) \ - ) -#define va_word_splittable_3(slot1,slot2,slot3) \ - ((__va_offset1(slot1)/sizeof(__vaword) == (__va_offset1(slot1)+sizeof(slot1)-1)/sizeof(__vaword)) \ - && (__va_offset2(slot1,slot2)/sizeof(__vaword) == (__va_offset2(slot1,slot2)+sizeof(slot2)-1)/sizeof(__vaword)) \ - && (__va_offset3(slot1,slot2,slot3)/sizeof(__vaword) == (__va_offset3(slot1,slot2,slot3)+sizeof(slot3)-1)/sizeof(__vaword)) \ - ) -#define va_word_splittable_4(slot1,slot2,slot3,slot4) \ - ((__va_offset1(slot1)/sizeof(__vaword) == (__va_offset1(slot1)+sizeof(slot1)-1)/sizeof(__vaword)) \ - && (__va_offset2(slot1,slot2)/sizeof(__vaword) == (__va_offset2(slot1,slot2)+sizeof(slot2)-1)/sizeof(__vaword)) \ - && (__va_offset3(slot1,slot2,slot3)/sizeof(__vaword) == (__va_offset3(slot1,slot2,slot3)+sizeof(slot3)-1)/sizeof(__vaword)) \ - && (__va_offset4(slot1,slot2,slot3,slot4)/sizeof(__vaword) == (__va_offset4(slot1,slot2,slot3,slot4)+sizeof(slot4)-1)/sizeof(__vaword)) \ - ) -#define __va_offset1(slot1) \ - 0 -#define __va_offset2(slot1,slot2) \ - ((__va_offset1(slot1)+sizeof(slot1)+__VA_alignof(slot2)-1) & -(long)__VA_alignof(slot2)) -#define __va_offset3(slot1,slot2,slot3) \ - ((__va_offset2(slot1,slot2)+sizeof(slot2)+__VA_alignof(slot3)-1) & -(long)__VA_alignof(slot3)) -#define __va_offset4(slot1,slot2,slot3,slot4) \ - ((__va_offset3(slot1,slot2,slot3)+sizeof(slot3)+__VA_alignof(slot4)-1) & -(long)__VA_alignof(slot4)) - - -/* - * Miscellaneous declarations. - */ -#ifdef __cplusplus -extern "C" void (*vacall) (); /* the return type is variable, not void! */ -#else -extern void (*vacall) (); /* the return type is variable, not void! */ -#endif -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -extern void (* vacall_function) (va_alist); -extern int __va_error1 (enum __VAtype, enum __VAtype); -extern int __va_error2 (unsigned int); -extern void __structcpy (void* dest, void* src, unsigned long size, unsigned long alignment); -#else -extern void (* vacall_function) (); -extern int __va_error1 (); -extern int __va_error2 (); -extern void __structcpy (); -#endif -typedef union { __vaword room[__VA_ALIST_WORDS]; double align; } __va_struct_buffer_t; -extern __va_struct_buffer_t __va_struct_buffer; - - -#endif /* _VACALL_H */ DELETED ffcall/vacall/vacall.h.mingw32 Index: ffcall/vacall/vacall.h.mingw32 ================================================================== --- ffcall/vacall/vacall.h.mingw32 +++ /dev/null @@ -1,1288 +0,0 @@ -#ifndef _VACALL_H /*-*- C -*-*/ -#define _VACALL_H - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - - -/* These definitions are adjusted by `configure' automatically. */ - -/* CPU */ -#ifndef __i386__ -#define __i386__ 1 -#endif -#ifndef __m68k__ -#undef __m68k__ -#endif -#ifndef __mips__ -#undef __mips__ -#endif -#ifndef __mipsn32__ -#undef __mipsn32__ -#endif -#ifndef __mips64__ -#undef __mips64__ -#endif -#ifndef __sparc__ -#undef __sparc__ -#endif -#ifndef __sparc64__ -#undef __sparc64__ -#endif -#ifndef __alpha__ -#undef __alpha__ -#endif -#ifndef __hppa__ -#undef __hppa__ -#endif -#ifndef __arm__ -#undef __arm__ -#endif -#ifndef __rs6000__ -#undef __rs6000__ -#endif -#ifndef __s390__ -#undef __s390__ -#endif -#ifndef __m88k__ -#undef __m88k__ -#endif -#ifndef __convex__ -#undef __convex__ -#endif -#ifndef __ia64__ -#undef __ia64__ -#endif -#ifndef __x86_64__ -#undef __x86_64__ -#endif - -/* Calling convention */ -/* Define if using pcc non-reentrant struct return convention */ -#undef __PCC_STRUCT_RETURN__ -/* Define if small structs are returned in registers */ -#define __SMALL_STRUCT_RETURN__ 1 -/* Define if floating-point results are returned in the integer registers */ -#undef __IREG_FLOAT_RETURN__ - -/* CL_LONGLONG */ -/* Define if your compiler supports the `long long' type. */ -#ifndef HAVE_LONGLONG -#undef HAVE_LONGLONG -#endif - -/* AC_C_CHAR_UNSIGNED */ -#ifndef __CHAR_UNSIGNED__ -#undef __CHAR_UNSIGNED__ -#endif - -/* End of definitions adjusted by `configure'. */ - - -/* Max # words in argument-list and temporary structure storage. - */ -#ifndef __VA_ALIST_WORDS -#define __VA_ALIST_WORDS 256 -#endif - -/* The `signed' keyword. - */ -#if !defined(__STDC__) && !defined(__CHAR_UNSIGNED__) && !defined(signed) -#define signed -#endif - -/* Determine the alignment of a type at compile time. - */ -#if defined(__GNUC__) -#define __VA_alignof __alignof__ -#else -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) /* SGI compiler */ -#define __VA_alignof __builtin_alignof -#else -#define __VA_offsetof(type,ident) ((unsigned long)&(((type*)0)->ident)) -#define __VA_alignof(type) __VA_offsetof(struct { char __slot1; type __slot2; }, __slot2) -#endif -#endif - -/* C builtin types. - */ -#if defined(__mipsn32__) -typedef long long __vaword; -#else -typedef long __vaword; -#endif - -enum __VAtype -{ - __VAvoid, - __VAchar, - __VAschar, - __VAuchar, - __VAshort, - __VAushort, - __VAint, - __VAuint, - __VAlong, - __VAulong, - __VAlonglong, - __VAulonglong, - __VAfloat, - __VAdouble, - __VAvoidp, - __VAstruct -}; - -enum __VA_alist_flags -{ - - /* how to return structs */ - /* There are basically 3 ways to return structs: - * a. The called function returns a pointer to static data. Not reentrant. - * b. The caller passes the return structure address in a dedicated register - * or as a first (or last), invisible argument. The called function stores - * its result there. - * c. Like b, and the called function also returns the return structure - * address in the return value register. (This is not very distinguishable - * from b.) - * Independently of this, - * r. small structures (<= 4 or <= 8 bytes) may be returned in the return - * value register(s), or - * m. even small structures are passed in memory. - */ - /* gcc-2.6.3 employs the following strategy: - * - If PCC_STATIC_STRUCT_RETURN is defined in the machine description - * it uses method a, else method c. - * - If flag_pcc_struct_return is set (either by -fpcc-struct-return or if - * DEFAULT_PCC_STRUCT_RETURN is defined to 1 in the machine description) - * it uses method m, else (either by -freg-struct-return or if - * DEFAULT_PCC_STRUCT_RETURN is defined to 0 in the machine description) - * method r. - */ - __VA_PCC_STRUCT_RETURN = 1<<0, /* a: need to copy the struct */ - __VA_SMALL_STRUCT_RETURN = 1<<1, /* r: special case for small structs */ - __VA_GCC_STRUCT_RETURN = 1<<2, /* consider 8 byte structs as small */ -#if defined(__sparc__) && !defined(__sparc64__) - __VA_SUNCC_STRUCT_RETURN = 1<<3, - __VA_SUNPROCC_STRUCT_RETURN = 1<<4, -#else - __VA_SUNCC_STRUCT_RETURN = 0, - __VA_SUNPROCC_STRUCT_RETURN = 0, -#endif -#if defined(__i386__) - __VA_NEXTGCC_STRUCT_RETURN = 1<<3, - __VA_MSVC_STRUCT_RETURN = 1<<4, -#endif -#if defined(__hppa__) - __VA_OLDGCC_STRUCT_RETURN = 1<<3, -#endif - /* the default way to return structs */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another struct returning convention, - * just #define __VA_STRUCT_RETURN ... - * before or after #including . - */ -#ifndef __VA_STRUCT_RETURN - __VA_STRUCT_RETURN = -#if defined(__sparc__) && !defined(__sparc64__) && defined(sun) && defined(__SUNPRO_C) /* SUNWspro cc */ - __VA_SUNPROCC_STRUCT_RETURN, -#else -#if defined(__PCC_STRUCT_RETURN__) /* defined through configure, see above */ - __VA_PCC_STRUCT_RETURN | -#if defined(__sparc__) && !defined(__sparc64__) && defined(sun) && !(defined(__STDC__) || defined(__GNUC__)) /* sun cc */ - __VA_SUNCC_STRUCT_RETURN, -#else - 0, -#endif -#else -#if defined(__SMALL_STRUCT_RETURN__) || defined(__mipsn32__) || defined(__mips64__) /* defined through configure, see above */ - __VA_SMALL_STRUCT_RETURN | -#endif -#if defined(__GNUC__) - __VA_GCC_STRUCT_RETURN | -#endif -#if defined(__i386__) && defined(NeXT) && defined(__GNUC__) /* NeXT gcc-2.5.8 */ - __VA_NEXTGCC_STRUCT_RETURN | -#endif -#if defined(__i386__) && defined(_MSC_VER) /* MSVC 4.0 */ - __VA_MSVC_STRUCT_RETURN | -#endif -#if defined(__hppa__) && defined(__GNUC__) && (__GNUC__ < 3) && (__GNUC_MINOR__ < 7) - __VA_OLDGCC_STRUCT_RETURN | -#endif - 0, -#endif -#endif -#endif - - /* how to return floats */ -#if defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) - __VA_SUNCC_FLOAT_RETURN = 1<<5, -#endif -#if defined(__m68k__) - __VA_FREG_FLOAT_RETURN = 1<<6, -#endif - /* the default way to return floats */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float returning convention, - * just #define __VA_FLOAT_RETURN ... - * before or after #including . - */ -#ifndef __VA_FLOAT_RETURN -#if (defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__))) && !defined(__GNUC__) && defined(sun) && !defined(__SUNPRO_C) /* sun cc */ - __VA_FLOAT_RETURN = __VA_SUNCC_FLOAT_RETURN, -#elif (defined(__m68k__) && !defined(__IREG_FLOAT_RETURN__)) - __VA_FLOAT_RETURN = __VA_FREG_FLOAT_RETURN, -#else - __VA_FLOAT_RETURN = 0, -#endif -#endif - - /* how to pass structs */ -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) - __VA_SGICC_STRUCT_ARGS = 1<<7, -#endif -#if defined(__rs6000__) - __VA_AIXCC_STRUCT_ARGS = 1<<7, -#endif - /* the default way to pass floats */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float passing convention, - * just #define __VA_STRUCT_ARGS ... - * before or after #including . - */ -#ifndef __VA_STRUCT_ARGS -#if (defined(__mips__) || defined(__mipsn32__) || defined(__mips64__)) && !defined(__GNUC__) /* SGI mips cc */ - __VA_STRUCT_ARGS = __VA_SGICC_STRUCT_ARGS, -#else -#if defined(__rs6000__) && defined(_AIX) && !defined(__GNUC__) /* AIX cc, xlc */ - __VA_STRUCT_ARGS = __VA_AIXCC_STRUCT_ARGS, -#else - __VA_STRUCT_ARGS = 0, -#endif -#endif -#endif - - /* how to pass floats */ - /* ANSI C compilers and GNU gcc pass floats as floats. - * K&R C compilers pass floats as doubles. - * (Except some compilers like SGI MIPS "cc" and "cc -cckr" if a prototype is - * known for the called functions. But to compile a program with prototypes, - * "cc -ansi" is better anyway. - */ - __VA_ANSI_FLOAT_ARGS = 0, /* pass floats as floats */ - __VA_TRADITIONAL_FLOAT_ARGS = 1<<8, /* pass floats as doubles */ - /* the default way to pass floats */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float passing convention, - * just #define __VA_FLOAT_ARGS ... - * before or after #including . - */ -#ifndef __VA_FLOAT_ARGS -#if defined(__STDC__) || defined(__GNUC__) /* what about hppa "cc -Aa" ?? */ - __VA_FLOAT_ARGS = __VA_ANSI_FLOAT_ARGS, -#else - __VA_FLOAT_ARGS = __VA_TRADITIONAL_FLOAT_ARGS, -#endif -#endif - - /* how to pass and return small integer arguments */ - __VA_ANSI_INTEGERS = 0, /* no promotions */ - __VA_TRADITIONAL_INTEGERS = 0, /* promote [u]char, [u]short to [u]int */ - /* Fortunately these two methods are compatible. Our macros work with both. */ - /* the default way to pass and return small integer arguments */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float passing convention, - * just #define __VA_INTEGERS ... - * before or after #including . - */ -#ifndef __VA_INTEGERS -#if defined(__STDC__) || defined(__GNUC__) - __VA_INTEGERS = __VA_ANSI_INTEGERS, -#else - __VA_INTEGERS = __VA_TRADITIONAL_INTEGERS, -#endif -#endif - - /* stack cleanup policy */ - __VA_CDECL_CLEANUP = 0, /* caller pops args after return */ - __VA_STDCALL_CLEANUP = 1<<9, /* callee pops args before return */ - /* currently only supported on __i386__ */ -#ifndef __VA_CLEANUP - __VA_CLEANUP = __VA_CDECL_CLEANUP, -#endif - - /* These are for internal use only */ -#if defined(__i386__) || defined(__m68k__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc64__) || defined(__alpha__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__ia64__) || defined(__x86_64__) || defined(__s390__) - __VA_REGISTER_STRUCT_RETURN = 1<<10, -#endif -#if defined(__mips__) && !defined(__mipsn32__) - __VA_FLOAT_1 = 1<<11, - __VA_FLOAT_2 = 1<<12, -#endif -#if defined(__mipsn32__) || defined(__mips64__) - __VA_REGISTER_FLOATSTRUCT_RETURN = 1<<13, - __VA_REGISTER_DOUBLESTRUCT_RETURN = 1<<14, -#endif - - __VA_flag_for_broken_compilers_that_dont_like_trailing_commas -}; - -/* - * Definition of the `va_alist' type. - */ -typedef struct -{ - /* some va_... macros need these flags */ - int flags; - /* current pointer into the argument array */ - unsigned long aptr; - /* structure return pointer, return type, return type size */ - void* raddr; - enum __VAtype rtype; - unsigned long rsize; -#if defined(__i386__) || (defined(__rs6000__) && defined(__MACH__) && defined(__APPLE__)) - /* Filler word, needed if the numbers of words up to now in this structure */ - /* is odd (because on MSVC, alignof(double) = 8, normally = 4; similarly, */ - /* on MacOS X, the Apple compiler has alignof(double) = 8 whereas the */ - /* standard GCC has alignof(double) = 4. */ - __vaword filler1; -#endif - /* temporary storage for return value */ - union { - char _char; - signed char _schar; - unsigned char _uchar; - short _short; - unsigned short _ushort; - int _int; - unsigned int _uint; - long _long; - unsigned long _ulong; -#if !(defined(__mips64__) || defined(__alpha__)) && defined(HAVE_LONGLONG) - long long _longlong; - unsigned long long _ulonglong; -#endif - float _float; - double _double; - void* _ptr; - __vaword _words[2]; - } tmp; -#if defined(__i386__) || defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__hppa__) || defined(__m88k__) || defined(__ia64__) - void* structraddr; -#endif -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) || defined(__alpha__) || defined(__hppa__) - long memargptr; -#endif -#if defined(__hppa__) - long farg_offset; - long darg_offset; - float farg[4]; - double darg[2]; -#endif -#if defined(__mips__) && !defined(__mipsn32__) - int anum; - float farg[2]; - double darg[2]; -#endif -#if defined(__mipsn32__) || defined(__mips64__) - int anum; - float farg[8]; - double darg[8]; -#endif -#if defined(__sparc64__) - int anum; - float farg[16]; - double darg[16]; -#endif -#if defined(__rs6000__) - double* memfargptr; - double farg[13]; -#if !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) - __vaword regarg[8]; - unsigned long saptr; - int onstack; -#endif -#endif -#if defined(__s390__) - float* memfargptr; - double* memdargptr; - float farg[2]; - double darg[2]; - __vaword regarg[5]; - unsigned long saptr; - int onstack; -#endif -#if defined(__ia64__) - __vaword* saptr; - double* memfargptr; - double farg[8]; -#endif -#if defined(__x86_64__) - double* memfargptr; - double farg[8]; - __vaword* memiargptr; - __vaword iarg[6]; -#endif -} __va_alist; - -typedef __va_alist* va_alist; - - -/* - * Definition of the va_start_xxx macros. - */ -#define __VA_START_FLAGS \ - __VA_STRUCT_RETURN | __VA_FLOAT_RETURN | __VA_STRUCT_ARGS | __VA_FLOAT_ARGS | __VA_INTEGERS | __VA_CLEANUP -#define __va_start(LIST,RETTYPE) \ - ((LIST)->flags = __VA_START_FLAGS, \ - (LIST)->rtype = (RETTYPE) \ - ) -#define va_start_void(LIST) __va_start(LIST,__VAvoid) -#define va_start_char(LIST) __va_start(LIST,__VAchar) -#define va_start_schar(LIST) __va_start(LIST,__VAschar) -#define va_start_uchar(LIST) __va_start(LIST,__VAuchar) -#define va_start_short(LIST) __va_start(LIST,__VAshort) -#define va_start_ushort(LIST) __va_start(LIST,__VAushort) -#define va_start_int(LIST) __va_start(LIST,__VAint) -#define va_start_uint(LIST) __va_start(LIST,__VAuint) -#define va_start_long(LIST) __va_start(LIST,__VAlong) -#define va_start_ulong(LIST) __va_start(LIST,__VAulong) -#define va_start_longlong(LIST) __va_start(LIST,__VAlonglong) -#define va_start_ulonglong(LIST) __va_start(LIST,__VAulonglong) -#define va_start_float(LIST) __va_start(LIST,__VAfloat) -#define va_start_double(LIST) __va_start(LIST,__VAdouble) -#define va_start_ptr(LIST,TYPE) __va_start(LIST,__VAvoidp) - -/* - * va_start_struct: Preparing structure return. - */ -#define va_start_struct(LIST,TYPE,TYPE_SPLITTABLE) \ - _va_start_struct(LIST,sizeof(TYPE),__VA_alignof(TYPE),TYPE_SPLITTABLE) -/* _va_start_struct() is like va_start_struct(), except that you pass - * the type's size and alignment instead of the type itself. - */ -#define _va_start_struct(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - (__va_start(LIST,__VAstruct), \ - (LIST)->rsize = (TYPE_SIZE), \ - ((LIST)->flags & __VA_SUNPROCC_STRUCT_RETURN \ - ? __va_start_struct2(LIST) \ - : ((LIST)->flags & (__VA_PCC_STRUCT_RETURN | __VA_SUNCC_STRUCT_RETURN) \ - ? ((TYPE_SIZE) <= sizeof(__va_struct_buffer) || __va_error2(TYPE_SIZE), \ - (LIST)->raddr = &__va_struct_buffer, \ - 0 \ - ) \ - : (((LIST)->flags & __VA_SMALL_STRUCT_RETURN) \ - && __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ? ((LIST)->raddr = &(LIST)->tmp, \ - __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ) \ - : __va_start_struct2(LIST) \ - )) ) ) -/* Determines whether a structure is returned in registers, - * depending on its size and its word-splittable flag. - */ -#if (defined(__i386__) && defined(_WIN32)) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 \ - || ((TYPE_SIZE) == 8 \ - && (((LIST)->flags & __VA_MSVC_STRUCT_RETURN) \ - || ((TYPE_SPLITTABLE) \ - && ((LIST)->flags & __VA_GCC_STRUCT_RETURN) \ - ) ) ) ) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, 0) -#endif -#if (defined(__i386__) && !defined(_WIN32)) || defined(__m68k__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__s390__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 \ - || ((TYPE_SIZE) == 8 && (TYPE_SPLITTABLE) \ - && ((LIST)->flags & __VA_GCC_STRUCT_RETURN) \ - ) ) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, 0) -#endif -#if defined(__alpha__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 || (TYPE_SIZE) == 8 \ - || ((TYPE_SIZE) == 16 && (TYPE_SPLITTABLE) \ - && ((LIST)->flags & __VA_GCC_STRUCT_RETURN) \ - ) ) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, 0) -#endif -#if defined(__hppa__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((LIST)->flags & __VA_OLDGCC_STRUCT_RETURN \ - ? ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4) \ - : ((TYPE_SIZE) <= 8) \ - ) -/* Test both __VA_OLDGCC_STRUCT_RETURN and __VA_SMALL_STRUCT_RETURN at run time. */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - 0 -#endif -#if defined(__mips__) && !defined(__mipsn32__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__m88k__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4) -/* Test __VA_SMALL_STRUCT_RETURN instead of __VA_REGISTER_STRUCT_RETURN. */ -#if defined(__mips__) && !defined(__mipsn32__) -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->anum++, \ - 0 \ - ) -#else -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - 0 -#endif -#endif -#if defined(__mipsn32__) || defined(__mips64__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((LIST)->flags & __VA_GCC_STRUCT_RETURN \ - ? ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 || (TYPE_SIZE) == 8) \ - : ((TYPE_SIZE) <= 16) \ - ) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. Also turn on - * __VA_REGISTER_FLOATSTRUCT_RETURN or __VA_REGISTER_DOUBLESTRUCT_RETURN if - * the struct will be returned in floating-point registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, \ - (TYPE_ALIGN) == sizeof(float) && (TYPE_SPLITTABLE) \ - && ((TYPE_SIZE) == sizeof(float) || (TYPE_SIZE) == 2*sizeof(float)) \ - && ((LIST)->flags |= __VA_REGISTER_FLOATSTRUCT_RETURN), \ - (TYPE_ALIGN) == sizeof(double) && (TYPE_SPLITTABLE) \ - && ((TYPE_SIZE) == sizeof(double) || (TYPE_SIZE) == 2*sizeof(double)) \ - && ((LIST)->flags |= __VA_REGISTER_DOUBLESTRUCT_RETURN), \ - 0) -#endif -#if defined(__sparc64__) || defined(__ia64__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) <= 32) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, \ - 0) -#endif -#if defined(__x86_64__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) <= 16) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, \ - 0) -#endif -/* - * Preparing structure return in memory. - */ -#if defined(__i386__) -/* Return structure pointer is passed in a special register or as first arg. */ -#define __va_start_struct2(LIST) \ - ((LIST)->flags & __VA_NEXTGCC_STRUCT_RETURN \ - ? ((LIST)->raddr = (LIST)->structraddr, 0) /* special register */ \ - : ((LIST)->raddr = *(void* *)((LIST)->aptr), /* first arg */ \ - (LIST)->aptr += sizeof(void*), \ - 0 \ - ) ) -#endif -#if defined(__alpha__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__s390__) -/* Return structure pointer is passed as first arg. */ -#define __va_start_struct2(LIST) \ - ((LIST)->raddr = *(void* *)((LIST)->aptr), \ - (LIST)->aptr += sizeof(void*), \ - 0 \ - ) -#endif -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc64__) -/* Return structure pointer is passed as first arg. */ -#define __va_start_struct2(LIST) \ - ((LIST)->raddr = *(void* *)((LIST)->aptr), \ - (LIST)->aptr += sizeof(void*), \ - (LIST)->anum++, \ - 0 \ - ) -#endif -#if defined(__x86_64__) -/* Return structure pointer is passed as first arg. */ -#define __va_start_struct2(LIST) \ - ((LIST)->raddr = (void *)(*(LIST)->memiargptr++), \ - 0 \ - ) -#endif -#if defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__hppa__) || defined(__m88k__) || defined(__ia64__) -/* Return structure pointer is passed in a special register. */ -#define __va_start_struct2(LIST) \ - ((LIST)->raddr = (LIST)->structraddr, 0) -#endif - - -/* - * Definition of the va_arg_xxx macros. - */ - -/* Padding of non-struct arguments. */ -#define __va_argsize(TYPE_SIZE) \ - (((TYPE_SIZE) + sizeof(__vaword)-1) & -(long)sizeof(__vaword)) -#if defined(__i386__) || defined(__m68k__) || defined(__mips__) && !defined(__mipsn32__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__alpha__) || defined(__arm__) || (defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__m88k__) || defined(__convex__) || defined(__ia64__) || defined(__x86_64__) -/* args grow up */ -/* small structures < 1 word are adjusted depending on compiler */ -#define __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - __va_argsize(TYPE_SIZE) \ - ) -#define __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - ((TYPE_SIZE) < sizeof(__vaword) \ - ? (TYPE_SIZE) \ - : __va_argsize(TYPE_SIZE) \ - ) \ - ) -#endif -#if defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) -/* args grow up */ -/* small structures < 1 word are adjusted depending on compiler */ -/* Also make sure we switch to the stack pointer after 8 args */ -#define __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((((LIST)->onstack == 0 && (LIST)->aptr >= (long)&(LIST)->regarg[8]) \ - ? ((LIST)->onstack=1, (LIST)->aptr = (LIST)->saptr) : 0), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - __va_argsize(TYPE_SIZE) \ - ) -#define __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((((LIST)->onstack == 0 && (LIST)->aptr >= (long)&(LIST)->regarg[8]) \ - ? ((LIST)->onstack=1, (LIST)->aptr = (LIST)->saptr) : 0), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - ((TYPE_SIZE) < sizeof(__vaword) \ - ? (TYPE_SIZE) \ - : __va_argsize(TYPE_SIZE) \ - ) \ - ) -#endif -#if defined(__s390__) -/* args grow up */ -/* small structures < 1 word are adjusted depending on compiler */ -/* Also make sure we switch to the stack pointer after 5 args */ -#define __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((((LIST)->onstack == 0 && (LIST)->aptr >= (long)&(LIST)->regarg[5]) \ - ? ((LIST)->onstack=1, (LIST)->aptr = (LIST)->saptr) : 0), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - __va_argsize(TYPE_SIZE) \ - ) -#define __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (((((LIST)->onstack == 0 && ((LIST)->aptr >= (long)&(LIST)->regarg[5])) \ - || ((TYPE_SIZE) > sizeof(__vaword) && (LIST)->aptr >= (long)&(LIST)->regarg[4])) \ - ? ((LIST)->onstack=1, (LIST)->aptr = (LIST)->saptr) : 0), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - ((TYPE_SIZE) < sizeof(__vaword) \ - ? (TYPE_SIZE) \ - : __va_argsize(TYPE_SIZE) \ - ) \ - ) -#endif -#if defined(__mipsn32__) || defined(__mips64__) || defined(__sparc64__) -/* args grow up */ -/* small structures < 1 word are adjusted depending on compiler */ -#define __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->anum += __va_argsize(TYPE_SIZE)/sizeof(__vaword), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - __va_argsize(TYPE_SIZE) \ - ) -#define __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->anum += __va_argsize(TYPE_SIZE)/sizeof(__vaword), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - ((TYPE_SIZE) < sizeof(__vaword) \ - ? (TYPE_SIZE) \ - : __va_argsize(TYPE_SIZE) \ - ) \ - ) -#endif -#if defined(__hppa__) -/* args grow down */ -#define __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->aptr = (LIST)->aptr - __va_argsize(TYPE_SIZE), \ - ((TYPE_SIZE) > 4 && ((LIST)->aptr &= -8)), \ - (LIST)->aptr \ - ) -#define __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->aptr = (LIST)->aptr - __va_argsize(TYPE_SIZE), \ - ((TYPE_SIZE) > 4 && ((LIST)->aptr &= -8)), \ - (LIST)->aptr + ((-(TYPE_SIZE)) & 3) \ - ) -#endif -#if defined(__i386__) || defined(__alpha__) || defined(__ia64__) -/* little endian -> small args < 1 word are adjusted to the left */ -#define __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) -#endif -#if defined(__m68k__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc__) || defined(__sparc64__) || defined(__hppa__) || defined(__arm__) || defined(__rs6000__) || defined(__m88k__) || defined(__convex__) || defined(__s390__) -/* big endian -> small args < 1 word are adjusted to the right */ -#define __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) -#endif -#if defined(__mips__) && !defined(__mipsn32__) -/* big endian -> small args < 1 word are adjusted to the right */ -#define __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->anum++, __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN)) -#endif -#if defined(__x86_64__) -/* the first 6 argument words are passed in registers */ -#define __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->memiargptr + ((TYPE_SIZE) + sizeof(__vaword)-1) / sizeof(__vaword) <= &(LIST)->iarg[6] \ - ? ((LIST)->memiargptr += ((TYPE_SIZE) + sizeof(__vaword)-1) / sizeof(__vaword), \ - (LIST)->memiargptr - ((TYPE_SIZE) + sizeof(__vaword)-1) / sizeof(__vaword) \ - ) \ - : (void*)__va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ) -#endif -#define __va_arg(LIST,TYPE) \ - *(TYPE*)__va_arg_adjusted(LIST,sizeof(TYPE),__VA_alignof(TYPE)) - -/* Integer arguments. */ - -#define va_arg_char(LIST) __va_arg(LIST,char) -#define va_arg_schar(LIST) __va_arg(LIST,signed char) -#define va_arg_uchar(LIST) __va_arg(LIST,unsigned char) -#define va_arg_short(LIST) __va_arg(LIST,short) -#define va_arg_ushort(LIST) __va_arg(LIST,unsigned short) -#define va_arg_int(LIST) __va_arg(LIST,int) -#define va_arg_uint(LIST) __va_arg(LIST,unsigned int) -#define va_arg_long(LIST) __va_arg(LIST,long) -#define va_arg_ulong(LIST) __va_arg(LIST,unsigned long) - -#if defined(__mips64__) || defined(__sparc64__) || defined(__alpha__) || defined(__ia64__) || defined(__x86_64__) -/* `long long' and `long' are identical. */ -#define va_arg_longlong va_arg_long -#define va_arg_ulonglong va_arg_ulong -#elif defined(__mipsn32__) -/* `long long' fits in __vaword. */ -#define va_arg_longlong(LIST) __va_arg(LIST,long long) -#define va_arg_ulonglong(LIST) __va_arg(LIST,unsigned long long) -#elif defined(__i386__) || defined(__m68k__) || defined(__mips__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__hppa__) || defined(__arm__) || defined(__rs6000__) || defined(__m88k__) || defined(__convex__) || defined(__s390__) -/* `long long's are passed embedded on the arg stack. */ -#define va_arg_longlong(LIST) __va_arg_longlong(LIST,long long) -#define va_arg_ulonglong(LIST) __va_arg_longlong(LIST,unsigned long long) -#if defined(__i386__) || defined(__m68k__) || defined(__arm__) || (defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__convex__) -/* `long long's are (at most) word-aligned. */ -#define __va_arg_longlong(LIST,TYPE) __va_arg(LIST,TYPE) -#endif -#if defined(__mips__) || (defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__m88k__) -/* `long long's have alignment 8. */ -#define __va_arg_longlong(LIST,TYPE) \ - ((LIST)->aptr = (((LIST)->aptr+__VA_alignof(TYPE)-1) & -(long)__VA_alignof(TYPE)), \ - __va_arg(LIST,TYPE)) -#endif -#if (defined(__sparc__) && !defined(__sparc64__)) || defined(__s390__) -/* Within the arg stack, the alignment is only 4, not 8. */ -/* Beware against unaligned accesses! */ -#define __va_arg_longlong(LIST,TYPE) \ - ((LIST)->tmp._words[0] = ((__vaword*)((LIST)->aptr))[0], \ - (LIST)->tmp._words[1] = ((__vaword*)((LIST)->aptr))[1], \ - (LIST)->aptr += sizeof(TYPE), \ - (TYPE)((LIST)->tmp._longlong) \ - ) -#endif -#if defined(__hppa__) -/* `long long's have alignment 8. */ -#define __va_arg_longlong(LIST,TYPE) \ - ((LIST)->aptr = ((LIST)->aptr & -(long)__VA_alignof(TYPE)), \ - __va_arg(LIST,TYPE)) -#endif -#endif - -/* Floating point arguments. */ - -#define va_arg_float(LIST) \ - ((LIST)->flags & __VA_TRADITIONAL_FLOAT_ARGS \ - ? (float)va_arg_double(LIST) \ - : __va_arg_float(LIST) \ - ) - -#if defined(__i386__) || defined(__m68k__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc__) || defined(__sparc64__) || defined(__alpha__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__ia64__) || defined(__x86_64__) || defined(__s390__) -#define __va_align_double(LIST) -#endif -#if defined(__mips__) && !defined(__mipsn32__) || defined(__m88k__) -/* __VA_alignof(double) > sizeof(__vaword) */ -#define __va_align_double(LIST) \ - (LIST)->aptr = ((LIST)->aptr + sizeof(double)-1) & -(long)sizeof(double), -#endif -#if defined(__hppa__) -#define __va_align_double(LIST) \ - (LIST)->aptr = (LIST)->aptr & -(long)sizeof(double), -#endif - -#if defined(__sparc__) && !defined(__sparc64__) -/* Beware against unaligned `double' accesses! */ -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->tmp._words[0] = ((__vaword*)((LIST)->aptr))[0], \ - (LIST)->tmp._words[1] = ((__vaword*)((LIST)->aptr))[1], \ - (LIST)->aptr += sizeof(double), \ - (LIST)->tmp._double \ - ) -#endif -#if defined(__alpha__) -/* The first 6 floating point registers have been stored in another place. */ -#define va_arg_double(LIST) \ - (((LIST)->aptr += sizeof(double)) <= (LIST)->memargptr \ - ? *(double*)((LIST)->aptr - sizeof(double) - 6*sizeof(double)) \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - ) -#define __va_arg_float(LIST) \ - (((LIST)->aptr += sizeof(double)) <= (LIST)->memargptr \ - ? /* The first 6 args have been put into memory by "stt" instructions */\ - /* (see vacall-alpha.s!). Therefore load them as doubles. */ \ - /* When viewed as floats, the value will be the correct one. */ \ - (float)*(double*)((LIST)->aptr - sizeof(double) - 6*sizeof(double)) \ - : /* These args have been put into memory by "sts" instructions, */ \ - /* therefore load them as floats. */ \ - *(float*)((LIST)->aptr - sizeof(double)) \ - ) -#endif -#if defined(__hppa__) -/* The first 4 float registers and the first 2 double registers are stored - * elsewhere. - */ -#if 1 /* gcc-2.5.2 passes these args in general registers! A bug, I think. */ -#define __va_arg_float(LIST) \ - (*(float*)((LIST)->aptr -= sizeof(float))) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - *(double*)((LIST)->aptr -= sizeof(double)) \ - ) -#else /* this would be correct if the args were passed in float registers. */ -#define __va_arg_float(LIST) \ - (((LIST)->aptr -= sizeof(float)) >= (LIST)->memargptr \ - ? /* The first 4 float args are stored separately. */ \ - *(float*)((LIST)->aptr + (LIST)->farg_offset) \ - : *(float*)((LIST)->aptr) \ - ) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (((LIST)->aptr -= sizeof(double)) >= (LIST)->memargptr \ - ? /* The first 2 double args are stored separately. */ \ - *(double*)((LIST)->aptr + (LIST)->darg_offset) \ - : *(double*)((LIST)->aptr) \ - )) -#endif -#endif -#if defined(__mips__) && !defined(__mipsn32__) -/* The first 0,1,2 registers are stored elsewhere if they are floating-point - * parameters. - */ -#define __va_arg_float(LIST) \ - ((LIST)->aptr += sizeof(float), \ - (LIST)->anum++, \ - ((LIST)->anum == 1 \ - ? ((LIST)->flags |= __VA_FLOAT_1, (LIST)->farg[0]) \ - : ((LIST)->anum == 2 && ((LIST)->flags & __VA_FLOAT_1) \ - ? (/* (LIST)->flags |= __VA_FLOAT_2, */ (LIST)->farg[1]) \ - : *(float*)((LIST)->aptr - sizeof(float)) \ - )) ) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - (LIST)->anum++, \ - ((LIST)->anum == 1 \ - ? ((LIST)->flags |= __VA_FLOAT_1, (LIST)->darg[0]) \ - : ((LIST)->anum == 2 && ((LIST)->flags & __VA_FLOAT_1) \ - ? (/* (LIST)->flags |= __VA_FLOAT_2, */ (LIST)->darg[1]) \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - )) ) -#endif -#if defined(__mipsn32__) || defined(__mips64__) -/* The first 0,..,8 registers are stored elsewhere if they are floating-point - * parameters. - */ -#define __va_arg_float(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - (++(LIST)->anum <= 8 \ - ? (LIST)->farg[(LIST)->anum - 1] \ - : *(float*)((LIST)->aptr - sizeof(double)) \ - )) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - (++(LIST)->anum <= 8 \ - ? (LIST)->darg[(LIST)->anum - 1] \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__sparc64__) -/* The first 0,..,16 registers are stored elsewhere if they are floating-point - * parameters. - */ -#define __va_arg_float(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - (++(LIST)->anum <= 16 \ - ? (LIST)->farg[(LIST)->anum - 1] \ - : *(float*)((LIST)->aptr - sizeof(double)) \ - )) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - (++(LIST)->anum <= 16 \ - ? (LIST)->darg[(LIST)->anum - 1] \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) -/* The first 13 floating-point args have been stored elsewhere. */ -#define __va_arg_float(LIST) \ - ((LIST)->aptr += sizeof(float), \ - ((LIST)->memfargptr < &(LIST)->farg[13] \ - ? (float) *((LIST)->memfargptr++) \ - : *(float*)((LIST)->aptr - sizeof(float)) \ - )) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - ((LIST)->memfargptr < &(LIST)->farg[13] \ - ? *((LIST)->memfargptr++) \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) -/* The first 8 floating-point args have been stored elsewhere. */ -#define __va_arg_float(LIST) \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? (float) *((LIST)->memfargptr++) \ - : ((LIST)->aptr = ((LIST)->onstack == 0 \ - ? ((LIST)->onstack=1, (LIST)->saptr) \ - : (LIST)->aptr \ - ), \ - (LIST)->aptr += sizeof(float), \ - *(float*)((LIST)->aptr - sizeof(float)) \ - )) -#define va_arg_double(LIST) \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? *((LIST)->memfargptr++) \ - : ((LIST)->aptr = ((LIST)->onstack == 0 \ - ? ((LIST)->onstack=1, (LIST)->saptr) \ - : (LIST)->aptr \ - ), \ - __va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__s390__) -/* The first 2 floating-point args have been stored elsewhere. */ -#define __va_arg_float(LIST) \ - ((LIST)->memfargptr < &(LIST)->farg[2] \ - ? (LIST)->memdargptr++, (float) *((LIST)->memfargptr++) \ - : ((LIST)->aptr = ((LIST)->onstack == 0 \ - ? ((LIST)->onstack=1, (LIST)->saptr) \ - : (LIST)->aptr \ - ), \ - (LIST)->aptr += sizeof(float), \ - *(float*)((LIST)->aptr - sizeof(float)) \ - )) -#define va_arg_double(LIST) \ - ((LIST)->memdargptr < &(LIST)->darg[2] \ - ? (LIST)->memfargptr++, *((LIST)->memdargptr++) \ - : ((LIST)->aptr = ((LIST)->onstack == 0 \ - ? ((LIST)->onstack=1, (LIST)->saptr) \ - : (LIST)->aptr \ - ), \ - __va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__ia64__) -/* The first 8 floating-point args have been stored elsewhere. */ -#define __va_arg_float(LIST) \ - ((LIST)->aptr += sizeof(__vaword), \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? (float) *((LIST)->memfargptr++) \ - : *(float*)((LIST)->aptr - sizeof(__vaword)) \ - )) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? *((LIST)->memfargptr++) \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__x86_64__) -/* The first 8 floating-point args have been stored elsewhere. */ -#define __va_arg_float(LIST) \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? ((LIST)->memfargptr++, \ - *(float*)((LIST)->memfargptr - 1) \ - ) \ - : ((LIST)->aptr += sizeof(__vaword), \ - *(float*)((LIST)->aptr - sizeof(__vaword)) \ - ) ) -#define va_arg_double(LIST) \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? *(LIST)->memfargptr++ \ - : ((LIST)->aptr += sizeof(__vaword), \ - *(double*)((LIST)->aptr - sizeof(__vaword)) \ - ) ) -#endif -#ifndef __va_arg_float -#define __va_arg_float(LIST) __va_arg(LIST,float) -#endif -#ifndef va_arg_double -#define va_arg_double(LIST) \ - (__va_align_double(LIST) __va_arg(LIST,double)) -#endif - -/* Pointer arguments. */ -#define va_arg_ptr(LIST,TYPE) __va_arg(LIST,TYPE) - -/* Structure arguments. */ -#define va_arg_struct(LIST,TYPE) \ - *(TYPE*)__va_arg_struct(LIST,sizeof(TYPE),__VA_alignof(TYPE)) -/* _va_arg_struct() is like va_arg_struct(), except that you pass the type's - * size and alignment instead of the type and get the value's address instead - * of the value itself. - */ -#define _va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (void*)__va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) -/* Structure argument alignment. */ -#if defined(__i386__) && defined(_MSC_VER) -/* In MSVC, doubles inside structures have alignment 8, i.e. - * __VA_alignof(double) = 8, but doubles (and also structures containing - * doubles) are passed on the stack with alignment 4. Looks really weird. - */ -#define __va_struct_alignment(TYPE_ALIGN) \ - ((TYPE_ALIGN) <= 4 ? (TYPE_ALIGN) : 4) -#else -#define __va_struct_alignment(TYPE_ALIGN) \ - (TYPE_ALIGN) -#endif -#define __va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (LIST)->aptr = ((LIST)->aptr + __va_struct_alignment(TYPE_ALIGN)-1) & -(long)__va_struct_alignment(TYPE_ALIGN), -#if defined(__i386__) || defined(__m68k__) || defined(__alpha__) || defined(__arm__) || defined(__m88k__) || defined(__convex__) || defined(__x86_64__) -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ) -#endif -#if defined(__mips__) && !defined(__mipsn32__) -/* small structures < 1 word are adjusted depending on compiler */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->flags & __VA_SGICC_STRUCT_ARGS \ - ? /* SGI MIPS cc passes small structures left-adjusted, although big-endian! */\ - __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - : /* SGI MIPS gcc passes small structures within the first four words left- \ - * adjusted, for compatibility with cc. But structures in memory are passed \ - * right-adjusted!! See gcc-2.6.3/config/mips/mips.c:function_arg(). \ - */ \ - ((LIST)->aptr < (LIST)->memargptr \ - ? __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - : __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - )) ) -#endif -#if defined(__mipsn32__) || defined(__mips64__) -/* small structures < 1 word are adjusted depending on compiler */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->flags & __VA_SGICC_STRUCT_ARGS \ - ? /* SGI MIPS cc passes small structures left-adjusted, although big-endian! */\ - __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - : /* SGI MIPS gcc passes small structures right-adjusted. */ \ - __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - )) -#endif -#if defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) -/* small structures < 1 word are adjusted depending on compiler */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->flags & __VA_AIXCC_STRUCT_ARGS \ - ? /* AIX cc and xlc pass small structures left-adjusted, although big-endian! */\ - __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - : /* gcc passes small structures right-adjusted. */ \ - __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - )) -#endif -#if defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) -/* Structures are passed as pointers to caller-made local copies. */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - va_arg_ptr(LIST,void*) -#endif -#if defined(__sparc__) && !defined(__sparc64__) -/* Structures are passed as pointers to caller-made local copies. */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - va_arg_ptr(LIST,void*) -#endif -#if defined(__sparc64__) -/* Small structures are passed left-adjusted, although big-endian! */ -/* Big structures are passed as pointers to caller-made local copies. */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((TYPE_SIZE) <= 16 \ - ? (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN)) \ - : va_arg_ptr(LIST,void*) \ - ) -#endif -#if defined(__s390__) -/* Structures <= 8 bytes are passed as embedded copies on the arg stack. - * Big structures are passed as pointers to caller-made local copies. - */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((TYPE_SIZE) != 1 && (TYPE_SIZE) != 2 && (TYPE_SIZE) != 4 && (TYPE_SIZE) != 8 \ - ? va_arg_ptr(LIST,void*) \ - : (void*)__va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ) -#endif -#if defined(__hppa__) -/* Structures <= 8 bytes are passed as embedded copies on the arg stack. - * Big structures are passed as pointers to caller-made local copies. - */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((TYPE_SIZE) > 8 \ - ? va_arg_ptr(LIST,void*) \ - : /* FIXME: gcc-2.6.3 passes structures <= 4 bytes in memory left-adjusted! ?? */\ - (void*)__va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ) -#endif -#if defined(__ia64__) -/* Types larger than a word have 2-word alignment. */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((TYPE_SIZE) > sizeof(__vaword) && (((__vaword*)(LIST)->aptr - (LIST)->saptr) & 1) ? (LIST)->aptr += sizeof(__vaword) : 0), \ - __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ) -#endif - - -/* - * Definition of the va_return_xxx macros. - */ -#define __va_return(LIST,RETTYPE) \ - (((LIST)->rtype == (RETTYPE)) || __va_error1((LIST)->rtype,RETTYPE)) -#define va_return_void(LIST) \ - __va_return(LIST,__VAvoid) -#define va_return_char(LIST,VAL) \ - (__va_return(LIST,__VAchar), (LIST)->tmp._char = (VAL)) -#define va_return_schar(LIST,VAL) \ - (__va_return(LIST,__VAschar), (LIST)->tmp._schar = (VAL)) -#define va_return_uchar(LIST,VAL) \ - (__va_return(LIST,__VAuchar), (LIST)->tmp._uchar = (VAL)) -#define va_return_short(LIST,VAL) \ - (__va_return(LIST,__VAshort), (LIST)->tmp._short = (VAL)) -#define va_return_ushort(LIST,VAL) \ - (__va_return(LIST,__VAushort), (LIST)->tmp._ushort = (VAL)) -#define va_return_int(LIST,VAL) \ - (__va_return(LIST,__VAint), (LIST)->tmp._int = (VAL)) -#define va_return_uint(LIST,VAL) \ - (__va_return(LIST,__VAuint), (LIST)->tmp._uint = (VAL)) -#define va_return_long(LIST,VAL) \ - (__va_return(LIST,__VAlong), (LIST)->tmp._long = (VAL)) -#define va_return_ulong(LIST,VAL) \ - (__va_return(LIST,__VAulong), (LIST)->tmp._ulong = (VAL)) -#if defined(__mips64__) || defined(__sparc64__) || defined(__alpha__) || defined(__ia64__) || defined(__x86_64__) -#define va_return_longlong(LIST,VAL) \ - (__va_return(LIST,__VAlonglong), (LIST)->tmp._long = (VAL)) -#define va_return_ulonglong(LIST,VAL) \ - (__va_return(LIST,__VAulonglong), (LIST)->tmp._ulong = (VAL)) -#else -#define va_return_longlong(LIST,VAL) \ - (__va_return(LIST,__VAlonglong), (LIST)->tmp._longlong = (VAL)) -#define va_return_ulonglong(LIST,VAL) \ - (__va_return(LIST,__VAulonglong), (LIST)->tmp._ulonglong = (VAL)) -#endif -#define va_return_float(LIST,VAL) \ - (__va_return(LIST,__VAfloat), (LIST)->tmp._float = (VAL)) -#define va_return_double(LIST,VAL) \ - (__va_return(LIST,__VAdouble), (LIST)->tmp._double = (VAL)) -#define va_return_ptr(LIST,TYPE,VAL) \ - (__va_return(LIST,__VAvoidp), (LIST)->tmp._ptr = (void*)(TYPE)(VAL)) -#define va_return_struct(LIST,TYPE,VAL) \ - (__va_return(LIST,__VAstruct), *(TYPE*)((LIST)->raddr) = (VAL)) -#define _va_return_struct(LIST,TYPE_SIZE,TYPE_ALIGN,VAL_ADDR) \ - (__va_return(LIST,__VAstruct), \ - __structcpy((void*)((LIST)->raddr),VAL_ADDR,TYPE_SIZE,TYPE_ALIGN) \ - ) - - -/* Determine whether a struct type is word-splittable, i.e. whether each of - * its components fit into a register. - * The entire computation is done at compile time. - */ -#define va_word_splittable_1(slot1) \ - (__va_offset1(slot1)/sizeof(__vaword) == (__va_offset1(slot1)+sizeof(slot1)-1)/sizeof(__vaword)) -#define va_word_splittable_2(slot1,slot2) \ - ((__va_offset1(slot1)/sizeof(__vaword) == (__va_offset1(slot1)+sizeof(slot1)-1)/sizeof(__vaword)) \ - && (__va_offset2(slot1,slot2)/sizeof(__vaword) == (__va_offset2(slot1,slot2)+sizeof(slot2)-1)/sizeof(__vaword)) \ - ) -#define va_word_splittable_3(slot1,slot2,slot3) \ - ((__va_offset1(slot1)/sizeof(__vaword) == (__va_offset1(slot1)+sizeof(slot1)-1)/sizeof(__vaword)) \ - && (__va_offset2(slot1,slot2)/sizeof(__vaword) == (__va_offset2(slot1,slot2)+sizeof(slot2)-1)/sizeof(__vaword)) \ - && (__va_offset3(slot1,slot2,slot3)/sizeof(__vaword) == (__va_offset3(slot1,slot2,slot3)+sizeof(slot3)-1)/sizeof(__vaword)) \ - ) -#define va_word_splittable_4(slot1,slot2,slot3,slot4) \ - ((__va_offset1(slot1)/sizeof(__vaword) == (__va_offset1(slot1)+sizeof(slot1)-1)/sizeof(__vaword)) \ - && (__va_offset2(slot1,slot2)/sizeof(__vaword) == (__va_offset2(slot1,slot2)+sizeof(slot2)-1)/sizeof(__vaword)) \ - && (__va_offset3(slot1,slot2,slot3)/sizeof(__vaword) == (__va_offset3(slot1,slot2,slot3)+sizeof(slot3)-1)/sizeof(__vaword)) \ - && (__va_offset4(slot1,slot2,slot3,slot4)/sizeof(__vaword) == (__va_offset4(slot1,slot2,slot3,slot4)+sizeof(slot4)-1)/sizeof(__vaword)) \ - ) -#define __va_offset1(slot1) \ - 0 -#define __va_offset2(slot1,slot2) \ - ((__va_offset1(slot1)+sizeof(slot1)+__VA_alignof(slot2)-1) & -(long)__VA_alignof(slot2)) -#define __va_offset3(slot1,slot2,slot3) \ - ((__va_offset2(slot1,slot2)+sizeof(slot2)+__VA_alignof(slot3)-1) & -(long)__VA_alignof(slot3)) -#define __va_offset4(slot1,slot2,slot3,slot4) \ - ((__va_offset3(slot1,slot2,slot3)+sizeof(slot3)+__VA_alignof(slot4)-1) & -(long)__VA_alignof(slot4)) - - -/* - * Miscellaneous declarations. - */ -#ifdef __cplusplus -extern "C" void (*vacall) (); /* the return type is variable, not void! */ -#else -extern void (*vacall) (); /* the return type is variable, not void! */ -#endif -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -extern void (* vacall_function) (va_alist); -extern int __va_error1 (enum __VAtype, enum __VAtype); -extern int __va_error2 (unsigned int); -extern void __structcpy (void* dest, void* src, unsigned long size, unsigned long alignment); -#else -extern void (* vacall_function) (); -extern int __va_error1 (); -extern int __va_error2 (); -extern void __structcpy (); -#endif -typedef union { __vaword room[__VA_ALIST_WORDS]; double align; } __va_struct_buffer_t; -extern __va_struct_buffer_t __va_struct_buffer; - - -#endif /* _VACALL_H */ DELETED ffcall/vacall/vacall.h.msvc Index: ffcall/vacall/vacall.h.msvc ================================================================== --- ffcall/vacall/vacall.h.msvc +++ /dev/null @@ -1,1288 +0,0 @@ -#ifndef _VACALL_H /*-*- C -*-*/ -#define _VACALL_H - -/* - * Copyright 1995-2004 Bruno Haible, - * - * This is free software distributed under the GNU General Public Licence - * described in the file COPYING. Contact the author if you don't have this - * or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, - * on this software. - */ - - -/* These definitions are adjusted by `configure' automatically. */ - -/* CPU */ -#ifndef __i386__ -#define __i386__ 1 -#endif -#ifndef __m68k__ -#undef __m68k__ -#endif -#ifndef __mips__ -#undef __mips__ -#endif -#ifndef __mipsn32__ -#undef __mipsn32__ -#endif -#ifndef __mips64__ -#undef __mips64__ -#endif -#ifndef __sparc__ -#undef __sparc__ -#endif -#ifndef __sparc64__ -#undef __sparc64__ -#endif -#ifndef __alpha__ -#undef __alpha__ -#endif -#ifndef __hppa__ -#undef __hppa__ -#endif -#ifndef __arm__ -#undef __arm__ -#endif -#ifndef __rs6000__ -#undef __rs6000__ -#endif -#ifndef __s390__ -#undef __s390__ -#endif -#ifndef __m88k__ -#undef __m88k__ -#endif -#ifndef __convex__ -#undef __convex__ -#endif -#ifndef __ia64__ -#undef __ia64__ -#endif -#ifndef __x86_64__ -#undef __x86_64__ -#endif - -/* Calling convention */ -/* Define if using pcc non-reentrant struct return convention */ -#undef __PCC_STRUCT_RETURN__ -/* Define if small structs are returned in registers */ -#define __SMALL_STRUCT_RETURN__ 1 -/* Define if floating-point results are returned in the integer registers */ -#undef __IREG_FLOAT_RETURN__ - -/* CL_LONGLONG */ -/* Define if your compiler supports the `long long' type. */ -#ifndef HAVE_LONGLONG -#undef HAVE_LONGLONG -#endif - -/* AC_C_CHAR_UNSIGNED */ -#ifndef __CHAR_UNSIGNED__ -#undef __CHAR_UNSIGNED__ -#endif - -/* End of definitions adjusted by `configure'. */ - - -/* Max # words in argument-list and temporary structure storage. - */ -#ifndef __VA_ALIST_WORDS -#define __VA_ALIST_WORDS 256 -#endif - -/* The `signed' keyword. - */ -#if !defined(__STDC__) && !defined(__CHAR_UNSIGNED__) && !defined(signed) -#define signed -#endif - -/* Determine the alignment of a type at compile time. - */ -#if defined(__GNUC__) -#define __VA_alignof __alignof__ -#else -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) /* SGI compiler */ -#define __VA_alignof __builtin_alignof -#else -#define __VA_offsetof(type,ident) ((unsigned long)&(((type*)0)->ident)) -#define __VA_alignof(type) __VA_offsetof(struct { char __slot1; type __slot2; }, __slot2) -#endif -#endif - -/* C builtin types. - */ -#if defined(__mipsn32__) -typedef long long __vaword; -#else -typedef long __vaword; -#endif - -enum __VAtype -{ - __VAvoid, - __VAchar, - __VAschar, - __VAuchar, - __VAshort, - __VAushort, - __VAint, - __VAuint, - __VAlong, - __VAulong, - __VAlonglong, - __VAulonglong, - __VAfloat, - __VAdouble, - __VAvoidp, - __VAstruct -}; - -enum __VA_alist_flags -{ - - /* how to return structs */ - /* There are basically 3 ways to return structs: - * a. The called function returns a pointer to static data. Not reentrant. - * b. The caller passes the return structure address in a dedicated register - * or as a first (or last), invisible argument. The called function stores - * its result there. - * c. Like b, and the called function also returns the return structure - * address in the return value register. (This is not very distinguishable - * from b.) - * Independently of this, - * r. small structures (<= 4 or <= 8 bytes) may be returned in the return - * value register(s), or - * m. even small structures are passed in memory. - */ - /* gcc-2.6.3 employs the following strategy: - * - If PCC_STATIC_STRUCT_RETURN is defined in the machine description - * it uses method a, else method c. - * - If flag_pcc_struct_return is set (either by -fpcc-struct-return or if - * DEFAULT_PCC_STRUCT_RETURN is defined to 1 in the machine description) - * it uses method m, else (either by -freg-struct-return or if - * DEFAULT_PCC_STRUCT_RETURN is defined to 0 in the machine description) - * method r. - */ - __VA_PCC_STRUCT_RETURN = 1<<0, /* a: need to copy the struct */ - __VA_SMALL_STRUCT_RETURN = 1<<1, /* r: special case for small structs */ - __VA_GCC_STRUCT_RETURN = 1<<2, /* consider 8 byte structs as small */ -#if defined(__sparc__) && !defined(__sparc64__) - __VA_SUNCC_STRUCT_RETURN = 1<<3, - __VA_SUNPROCC_STRUCT_RETURN = 1<<4, -#else - __VA_SUNCC_STRUCT_RETURN = 0, - __VA_SUNPROCC_STRUCT_RETURN = 0, -#endif -#if defined(__i386__) - __VA_NEXTGCC_STRUCT_RETURN = 1<<3, - __VA_MSVC_STRUCT_RETURN = 1<<4, -#endif -#if defined(__hppa__) - __VA_OLDGCC_STRUCT_RETURN = 1<<3, -#endif - /* the default way to return structs */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another struct returning convention, - * just #define __VA_STRUCT_RETURN ... - * before or after #including . - */ -#ifndef __VA_STRUCT_RETURN - __VA_STRUCT_RETURN = -#if defined(__sparc__) && !defined(__sparc64__) && defined(sun) && defined(__SUNPRO_C) /* SUNWspro cc */ - __VA_SUNPROCC_STRUCT_RETURN, -#else -#if defined(__PCC_STRUCT_RETURN__) /* defined through configure, see above */ - __VA_PCC_STRUCT_RETURN | -#if defined(__sparc__) && !defined(__sparc64__) && defined(sun) && !(defined(__STDC__) || defined(__GNUC__)) /* sun cc */ - __VA_SUNCC_STRUCT_RETURN, -#else - 0, -#endif -#else -#if defined(__SMALL_STRUCT_RETURN__) || defined(__mipsn32__) || defined(__mips64__) /* defined through configure, see above */ - __VA_SMALL_STRUCT_RETURN | -#endif -#if defined(__GNUC__) - __VA_GCC_STRUCT_RETURN | -#endif -#if defined(__i386__) && defined(NeXT) && defined(__GNUC__) /* NeXT gcc-2.5.8 */ - __VA_NEXTGCC_STRUCT_RETURN | -#endif -#if defined(__i386__) && defined(_MSC_VER) /* MSVC 4.0 */ - __VA_MSVC_STRUCT_RETURN | -#endif -#if defined(__hppa__) && defined(__GNUC__) && (__GNUC__ < 3) && (__GNUC_MINOR__ < 7) - __VA_OLDGCC_STRUCT_RETURN | -#endif - 0, -#endif -#endif -#endif - - /* how to return floats */ -#if defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) - __VA_SUNCC_FLOAT_RETURN = 1<<5, -#endif -#if defined(__m68k__) - __VA_FREG_FLOAT_RETURN = 1<<6, -#endif - /* the default way to return floats */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float returning convention, - * just #define __VA_FLOAT_RETURN ... - * before or after #including . - */ -#ifndef __VA_FLOAT_RETURN -#if (defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__))) && !defined(__GNUC__) && defined(sun) && !defined(__SUNPRO_C) /* sun cc */ - __VA_FLOAT_RETURN = __VA_SUNCC_FLOAT_RETURN, -#elif (defined(__m68k__) && !defined(__IREG_FLOAT_RETURN__)) - __VA_FLOAT_RETURN = __VA_FREG_FLOAT_RETURN, -#else - __VA_FLOAT_RETURN = 0, -#endif -#endif - - /* how to pass structs */ -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) - __VA_SGICC_STRUCT_ARGS = 1<<7, -#endif -#if defined(__rs6000__) - __VA_AIXCC_STRUCT_ARGS = 1<<7, -#endif - /* the default way to pass floats */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float passing convention, - * just #define __VA_STRUCT_ARGS ... - * before or after #including . - */ -#ifndef __VA_STRUCT_ARGS -#if (defined(__mips__) || defined(__mipsn32__) || defined(__mips64__)) && !defined(__GNUC__) /* SGI mips cc */ - __VA_STRUCT_ARGS = __VA_SGICC_STRUCT_ARGS, -#else -#if defined(__rs6000__) && defined(_AIX) && !defined(__GNUC__) /* AIX cc, xlc */ - __VA_STRUCT_ARGS = __VA_AIXCC_STRUCT_ARGS, -#else - __VA_STRUCT_ARGS = 0, -#endif -#endif -#endif - - /* how to pass floats */ - /* ANSI C compilers and GNU gcc pass floats as floats. - * K&R C compilers pass floats as doubles. - * (Except some compilers like SGI MIPS "cc" and "cc -cckr" if a prototype is - * known for the called functions. But to compile a program with prototypes, - * "cc -ansi" is better anyway. - */ - __VA_ANSI_FLOAT_ARGS = 0, /* pass floats as floats */ - __VA_TRADITIONAL_FLOAT_ARGS = 1<<8, /* pass floats as doubles */ - /* the default way to pass floats */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float passing convention, - * just #define __VA_FLOAT_ARGS ... - * before or after #including . - */ -#ifndef __VA_FLOAT_ARGS -#if defined(__STDC__) || defined(__GNUC__) /* what about hppa "cc -Aa" ?? */ - __VA_FLOAT_ARGS = __VA_ANSI_FLOAT_ARGS, -#else - __VA_FLOAT_ARGS = __VA_TRADITIONAL_FLOAT_ARGS, -#endif -#endif - - /* how to pass and return small integer arguments */ - __VA_ANSI_INTEGERS = 0, /* no promotions */ - __VA_TRADITIONAL_INTEGERS = 0, /* promote [u]char, [u]short to [u]int */ - /* Fortunately these two methods are compatible. Our macros work with both. */ - /* the default way to pass and return small integer arguments */ - /* This choice here is based on the assumption that the function you are - * going to call has been compiled with the same compiler you are using to - * include this file. - * If you want to call functions with another float passing convention, - * just #define __VA_INTEGERS ... - * before or after #including . - */ -#ifndef __VA_INTEGERS -#if defined(__STDC__) || defined(__GNUC__) - __VA_INTEGERS = __VA_ANSI_INTEGERS, -#else - __VA_INTEGERS = __VA_TRADITIONAL_INTEGERS, -#endif -#endif - - /* stack cleanup policy */ - __VA_CDECL_CLEANUP = 0, /* caller pops args after return */ - __VA_STDCALL_CLEANUP = 1<<9, /* callee pops args before return */ - /* currently only supported on __i386__ */ -#ifndef __VA_CLEANUP - __VA_CLEANUP = __VA_CDECL_CLEANUP, -#endif - - /* These are for internal use only */ -#if defined(__i386__) || defined(__m68k__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc64__) || defined(__alpha__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__ia64__) || defined(__x86_64__) || defined(__s390__) - __VA_REGISTER_STRUCT_RETURN = 1<<10, -#endif -#if defined(__mips__) && !defined(__mipsn32__) - __VA_FLOAT_1 = 1<<11, - __VA_FLOAT_2 = 1<<12, -#endif -#if defined(__mipsn32__) || defined(__mips64__) - __VA_REGISTER_FLOATSTRUCT_RETURN = 1<<13, - __VA_REGISTER_DOUBLESTRUCT_RETURN = 1<<14, -#endif - - __VA_flag_for_broken_compilers_that_dont_like_trailing_commas -}; - -/* - * Definition of the `va_alist' type. - */ -typedef struct -{ - /* some va_... macros need these flags */ - int flags; - /* current pointer into the argument array */ - unsigned long aptr; - /* structure return pointer, return type, return type size */ - void* raddr; - enum __VAtype rtype; - unsigned long rsize; -#if defined(__i386__) || (defined(__rs6000__) && defined(__MACH__) && defined(__APPLE__)) - /* Filler word, needed if the numbers of words up to now in this structure */ - /* is odd (because on MSVC, alignof(double) = 8, normally = 4; similarly, */ - /* on MacOS X, the Apple compiler has alignof(double) = 8 whereas the */ - /* standard GCC has alignof(double) = 4. */ - __vaword filler1; -#endif - /* temporary storage for return value */ - union { - char _char; - signed char _schar; - unsigned char _uchar; - short _short; - unsigned short _ushort; - int _int; - unsigned int _uint; - long _long; - unsigned long _ulong; -#if !(defined(__mips64__) || defined(__alpha__)) && defined(HAVE_LONGLONG) - long long _longlong; - unsigned long long _ulonglong; -#endif - float _float; - double _double; - void* _ptr; - __vaword _words[2]; - } tmp; -#if defined(__i386__) || defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__hppa__) || defined(__m88k__) || defined(__ia64__) - void* structraddr; -#endif -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) || defined(__alpha__) || defined(__hppa__) - long memargptr; -#endif -#if defined(__hppa__) - long farg_offset; - long darg_offset; - float farg[4]; - double darg[2]; -#endif -#if defined(__mips__) && !defined(__mipsn32__) - int anum; - float farg[2]; - double darg[2]; -#endif -#if defined(__mipsn32__) || defined(__mips64__) - int anum; - float farg[8]; - double darg[8]; -#endif -#if defined(__sparc64__) - int anum; - float farg[16]; - double darg[16]; -#endif -#if defined(__rs6000__) - double* memfargptr; - double farg[13]; -#if !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) - __vaword regarg[8]; - unsigned long saptr; - int onstack; -#endif -#endif -#if defined(__s390__) - float* memfargptr; - double* memdargptr; - float farg[2]; - double darg[2]; - __vaword regarg[5]; - unsigned long saptr; - int onstack; -#endif -#if defined(__ia64__) - __vaword* saptr; - double* memfargptr; - double farg[8]; -#endif -#if defined(__x86_64__) - double* memfargptr; - double farg[8]; - __vaword* memiargptr; - __vaword iarg[6]; -#endif -} __va_alist; - -typedef __va_alist* va_alist; - - -/* - * Definition of the va_start_xxx macros. - */ -#define __VA_START_FLAGS \ - __VA_STRUCT_RETURN | __VA_FLOAT_RETURN | __VA_STRUCT_ARGS | __VA_FLOAT_ARGS | __VA_INTEGERS | __VA_CLEANUP -#define __va_start(LIST,RETTYPE) \ - ((LIST)->flags = __VA_START_FLAGS, \ - (LIST)->rtype = (RETTYPE) \ - ) -#define va_start_void(LIST) __va_start(LIST,__VAvoid) -#define va_start_char(LIST) __va_start(LIST,__VAchar) -#define va_start_schar(LIST) __va_start(LIST,__VAschar) -#define va_start_uchar(LIST) __va_start(LIST,__VAuchar) -#define va_start_short(LIST) __va_start(LIST,__VAshort) -#define va_start_ushort(LIST) __va_start(LIST,__VAushort) -#define va_start_int(LIST) __va_start(LIST,__VAint) -#define va_start_uint(LIST) __va_start(LIST,__VAuint) -#define va_start_long(LIST) __va_start(LIST,__VAlong) -#define va_start_ulong(LIST) __va_start(LIST,__VAulong) -#define va_start_longlong(LIST) __va_start(LIST,__VAlonglong) -#define va_start_ulonglong(LIST) __va_start(LIST,__VAulonglong) -#define va_start_float(LIST) __va_start(LIST,__VAfloat) -#define va_start_double(LIST) __va_start(LIST,__VAdouble) -#define va_start_ptr(LIST,TYPE) __va_start(LIST,__VAvoidp) - -/* - * va_start_struct: Preparing structure return. - */ -#define va_start_struct(LIST,TYPE,TYPE_SPLITTABLE) \ - _va_start_struct(LIST,sizeof(TYPE),__VA_alignof(TYPE),TYPE_SPLITTABLE) -/* _va_start_struct() is like va_start_struct(), except that you pass - * the type's size and alignment instead of the type itself. - */ -#define _va_start_struct(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - (__va_start(LIST,__VAstruct), \ - (LIST)->rsize = (TYPE_SIZE), \ - ((LIST)->flags & __VA_SUNPROCC_STRUCT_RETURN \ - ? __va_start_struct2(LIST) \ - : ((LIST)->flags & (__VA_PCC_STRUCT_RETURN | __VA_SUNCC_STRUCT_RETURN) \ - ? ((TYPE_SIZE) <= sizeof(__va_struct_buffer) || __va_error2(TYPE_SIZE), \ - (LIST)->raddr = &__va_struct_buffer, \ - 0 \ - ) \ - : (((LIST)->flags & __VA_SMALL_STRUCT_RETURN) \ - && __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ? ((LIST)->raddr = &(LIST)->tmp, \ - __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ) \ - : __va_start_struct2(LIST) \ - )) ) ) -/* Determines whether a structure is returned in registers, - * depending on its size and its word-splittable flag. - */ -#if (defined(__i386__) && defined(_WIN32)) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 \ - || ((TYPE_SIZE) == 8 \ - && (((LIST)->flags & __VA_MSVC_STRUCT_RETURN) \ - || ((TYPE_SPLITTABLE) \ - && ((LIST)->flags & __VA_GCC_STRUCT_RETURN) \ - ) ) ) ) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, 0) -#endif -#if (defined(__i386__) && !defined(_WIN32)) || defined(__m68k__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__s390__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 \ - || ((TYPE_SIZE) == 8 && (TYPE_SPLITTABLE) \ - && ((LIST)->flags & __VA_GCC_STRUCT_RETURN) \ - ) ) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, 0) -#endif -#if defined(__alpha__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 || (TYPE_SIZE) == 8 \ - || ((TYPE_SIZE) == 16 && (TYPE_SPLITTABLE) \ - && ((LIST)->flags & __VA_GCC_STRUCT_RETURN) \ - ) ) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, 0) -#endif -#if defined(__hppa__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((LIST)->flags & __VA_OLDGCC_STRUCT_RETURN \ - ? ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4) \ - : ((TYPE_SIZE) <= 8) \ - ) -/* Test both __VA_OLDGCC_STRUCT_RETURN and __VA_SMALL_STRUCT_RETURN at run time. */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - 0 -#endif -#if defined(__mips__) && !defined(__mipsn32__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__m88k__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4) -/* Test __VA_SMALL_STRUCT_RETURN instead of __VA_REGISTER_STRUCT_RETURN. */ -#if defined(__mips__) && !defined(__mipsn32__) -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->anum++, \ - 0 \ - ) -#else -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - 0 -#endif -#endif -#if defined(__mipsn32__) || defined(__mips64__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((LIST)->flags & __VA_GCC_STRUCT_RETURN \ - ? ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 || (TYPE_SIZE) == 8) \ - : ((TYPE_SIZE) <= 16) \ - ) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. Also turn on - * __VA_REGISTER_FLOATSTRUCT_RETURN or __VA_REGISTER_DOUBLESTRUCT_RETURN if - * the struct will be returned in floating-point registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, \ - (TYPE_ALIGN) == sizeof(float) && (TYPE_SPLITTABLE) \ - && ((TYPE_SIZE) == sizeof(float) || (TYPE_SIZE) == 2*sizeof(float)) \ - && ((LIST)->flags |= __VA_REGISTER_FLOATSTRUCT_RETURN), \ - (TYPE_ALIGN) == sizeof(double) && (TYPE_SPLITTABLE) \ - && ((TYPE_SIZE) == sizeof(double) || (TYPE_SIZE) == 2*sizeof(double)) \ - && ((LIST)->flags |= __VA_REGISTER_DOUBLESTRUCT_RETURN), \ - 0) -#endif -#if defined(__sparc64__) || defined(__ia64__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) <= 32) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, \ - 0) -#endif -#if defined(__x86_64__) -#define __va_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ - ((TYPE_SIZE) <= 16) -/* Turn on __VA_REGISTER_STRUCT_RETURN if __VA_SMALL_STRUCT_RETURN was set - * and the struct will actually be returned in registers. - */ -#define __va_start_struct1(LIST,TYPE_SIZE,TYPE_ALIGN,TYPE_SPLITTABLE) \ - ((LIST)->flags |= __VA_REGISTER_STRUCT_RETURN, \ - 0) -#endif -/* - * Preparing structure return in memory. - */ -#if defined(__i386__) -/* Return structure pointer is passed in a special register or as first arg. */ -#define __va_start_struct2(LIST) \ - ((LIST)->flags & __VA_NEXTGCC_STRUCT_RETURN \ - ? ((LIST)->raddr = (LIST)->structraddr, 0) /* special register */ \ - : ((LIST)->raddr = *(void* *)((LIST)->aptr), /* first arg */ \ - (LIST)->aptr += sizeof(void*), \ - 0 \ - ) ) -#endif -#if defined(__alpha__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__s390__) -/* Return structure pointer is passed as first arg. */ -#define __va_start_struct2(LIST) \ - ((LIST)->raddr = *(void* *)((LIST)->aptr), \ - (LIST)->aptr += sizeof(void*), \ - 0 \ - ) -#endif -#if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc64__) -/* Return structure pointer is passed as first arg. */ -#define __va_start_struct2(LIST) \ - ((LIST)->raddr = *(void* *)((LIST)->aptr), \ - (LIST)->aptr += sizeof(void*), \ - (LIST)->anum++, \ - 0 \ - ) -#endif -#if defined(__x86_64__) -/* Return structure pointer is passed as first arg. */ -#define __va_start_struct2(LIST) \ - ((LIST)->raddr = (void *)(*(LIST)->memiargptr++), \ - 0 \ - ) -#endif -#if defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__hppa__) || defined(__m88k__) || defined(__ia64__) -/* Return structure pointer is passed in a special register. */ -#define __va_start_struct2(LIST) \ - ((LIST)->raddr = (LIST)->structraddr, 0) -#endif - - -/* - * Definition of the va_arg_xxx macros. - */ - -/* Padding of non-struct arguments. */ -#define __va_argsize(TYPE_SIZE) \ - (((TYPE_SIZE) + sizeof(__vaword)-1) & -(long)sizeof(__vaword)) -#if defined(__i386__) || defined(__m68k__) || defined(__mips__) && !defined(__mipsn32__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__alpha__) || defined(__arm__) || (defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__m88k__) || defined(__convex__) || defined(__ia64__) || defined(__x86_64__) -/* args grow up */ -/* small structures < 1 word are adjusted depending on compiler */ -#define __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - __va_argsize(TYPE_SIZE) \ - ) -#define __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - ((TYPE_SIZE) < sizeof(__vaword) \ - ? (TYPE_SIZE) \ - : __va_argsize(TYPE_SIZE) \ - ) \ - ) -#endif -#if defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) -/* args grow up */ -/* small structures < 1 word are adjusted depending on compiler */ -/* Also make sure we switch to the stack pointer after 8 args */ -#define __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((((LIST)->onstack == 0 && (LIST)->aptr >= (long)&(LIST)->regarg[8]) \ - ? ((LIST)->onstack=1, (LIST)->aptr = (LIST)->saptr) : 0), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - __va_argsize(TYPE_SIZE) \ - ) -#define __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((((LIST)->onstack == 0 && (LIST)->aptr >= (long)&(LIST)->regarg[8]) \ - ? ((LIST)->onstack=1, (LIST)->aptr = (LIST)->saptr) : 0), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - ((TYPE_SIZE) < sizeof(__vaword) \ - ? (TYPE_SIZE) \ - : __va_argsize(TYPE_SIZE) \ - ) \ - ) -#endif -#if defined(__s390__) -/* args grow up */ -/* small structures < 1 word are adjusted depending on compiler */ -/* Also make sure we switch to the stack pointer after 5 args */ -#define __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((((LIST)->onstack == 0 && (LIST)->aptr >= (long)&(LIST)->regarg[5]) \ - ? ((LIST)->onstack=1, (LIST)->aptr = (LIST)->saptr) : 0), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - __va_argsize(TYPE_SIZE) \ - ) -#define __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (((((LIST)->onstack == 0 && ((LIST)->aptr >= (long)&(LIST)->regarg[5])) \ - || ((TYPE_SIZE) > sizeof(__vaword) && (LIST)->aptr >= (long)&(LIST)->regarg[4])) \ - ? ((LIST)->onstack=1, (LIST)->aptr = (LIST)->saptr) : 0), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - ((TYPE_SIZE) < sizeof(__vaword) \ - ? (TYPE_SIZE) \ - : __va_argsize(TYPE_SIZE) \ - ) \ - ) -#endif -#if defined(__mipsn32__) || defined(__mips64__) || defined(__sparc64__) -/* args grow up */ -/* small structures < 1 word are adjusted depending on compiler */ -#define __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->anum += __va_argsize(TYPE_SIZE)/sizeof(__vaword), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - __va_argsize(TYPE_SIZE) \ - ) -#define __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->anum += __va_argsize(TYPE_SIZE)/sizeof(__vaword), \ - (LIST)->aptr += __va_argsize(TYPE_SIZE), \ - (LIST)->aptr - ((TYPE_SIZE) < sizeof(__vaword) \ - ? (TYPE_SIZE) \ - : __va_argsize(TYPE_SIZE) \ - ) \ - ) -#endif -#if defined(__hppa__) -/* args grow down */ -#define __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->aptr = (LIST)->aptr - __va_argsize(TYPE_SIZE), \ - ((TYPE_SIZE) > 4 && ((LIST)->aptr &= -8)), \ - (LIST)->aptr \ - ) -#define __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->aptr = (LIST)->aptr - __va_argsize(TYPE_SIZE), \ - ((TYPE_SIZE) > 4 && ((LIST)->aptr &= -8)), \ - (LIST)->aptr + ((-(TYPE_SIZE)) & 3) \ - ) -#endif -#if defined(__i386__) || defined(__alpha__) || defined(__ia64__) -/* little endian -> small args < 1 word are adjusted to the left */ -#define __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) -#endif -#if defined(__m68k__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc__) || defined(__sparc64__) || defined(__hppa__) || defined(__arm__) || defined(__rs6000__) || defined(__m88k__) || defined(__convex__) || defined(__s390__) -/* big endian -> small args < 1 word are adjusted to the right */ -#define __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) -#endif -#if defined(__mips__) && !defined(__mipsn32__) -/* big endian -> small args < 1 word are adjusted to the right */ -#define __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->anum++, __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN)) -#endif -#if defined(__x86_64__) -/* the first 6 argument words are passed in registers */ -#define __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->memiargptr + ((TYPE_SIZE) + sizeof(__vaword)-1) / sizeof(__vaword) <= &(LIST)->iarg[6] \ - ? ((LIST)->memiargptr += ((TYPE_SIZE) + sizeof(__vaword)-1) / sizeof(__vaword), \ - (LIST)->memiargptr - ((TYPE_SIZE) + sizeof(__vaword)-1) / sizeof(__vaword) \ - ) \ - : (void*)__va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ) -#endif -#define __va_arg(LIST,TYPE) \ - *(TYPE*)__va_arg_adjusted(LIST,sizeof(TYPE),__VA_alignof(TYPE)) - -/* Integer arguments. */ - -#define va_arg_char(LIST) __va_arg(LIST,char) -#define va_arg_schar(LIST) __va_arg(LIST,signed char) -#define va_arg_uchar(LIST) __va_arg(LIST,unsigned char) -#define va_arg_short(LIST) __va_arg(LIST,short) -#define va_arg_ushort(LIST) __va_arg(LIST,unsigned short) -#define va_arg_int(LIST) __va_arg(LIST,int) -#define va_arg_uint(LIST) __va_arg(LIST,unsigned int) -#define va_arg_long(LIST) __va_arg(LIST,long) -#define va_arg_ulong(LIST) __va_arg(LIST,unsigned long) - -#if defined(__mips64__) || defined(__sparc64__) || defined(__alpha__) || defined(__ia64__) || defined(__x86_64__) -/* `long long' and `long' are identical. */ -#define va_arg_longlong va_arg_long -#define va_arg_ulonglong va_arg_ulong -#elif defined(__mipsn32__) -/* `long long' fits in __vaword. */ -#define va_arg_longlong(LIST) __va_arg(LIST,long long) -#define va_arg_ulonglong(LIST) __va_arg(LIST,unsigned long long) -#elif defined(__i386__) || defined(__m68k__) || defined(__mips__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__hppa__) || defined(__arm__) || defined(__rs6000__) || defined(__m88k__) || defined(__convex__) || defined(__s390__) -/* `long long's are passed embedded on the arg stack. */ -#define va_arg_longlong(LIST) __va_arg_longlong(LIST,long long) -#define va_arg_ulonglong(LIST) __va_arg_longlong(LIST,unsigned long long) -#if defined(__i386__) || defined(__m68k__) || defined(__arm__) || (defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__convex__) -/* `long long's are (at most) word-aligned. */ -#define __va_arg_longlong(LIST,TYPE) __va_arg(LIST,TYPE) -#endif -#if defined(__mips__) || (defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__m88k__) -/* `long long's have alignment 8. */ -#define __va_arg_longlong(LIST,TYPE) \ - ((LIST)->aptr = (((LIST)->aptr+__VA_alignof(TYPE)-1) & -(long)__VA_alignof(TYPE)), \ - __va_arg(LIST,TYPE)) -#endif -#if (defined(__sparc__) && !defined(__sparc64__)) || defined(__s390__) -/* Within the arg stack, the alignment is only 4, not 8. */ -/* Beware against unaligned accesses! */ -#define __va_arg_longlong(LIST,TYPE) \ - ((LIST)->tmp._words[0] = ((__vaword*)((LIST)->aptr))[0], \ - (LIST)->tmp._words[1] = ((__vaword*)((LIST)->aptr))[1], \ - (LIST)->aptr += sizeof(TYPE), \ - (TYPE)((LIST)->tmp._longlong) \ - ) -#endif -#if defined(__hppa__) -/* `long long's have alignment 8. */ -#define __va_arg_longlong(LIST,TYPE) \ - ((LIST)->aptr = ((LIST)->aptr & -(long)__VA_alignof(TYPE)), \ - __va_arg(LIST,TYPE)) -#endif -#endif - -/* Floating point arguments. */ - -#define va_arg_float(LIST) \ - ((LIST)->flags & __VA_TRADITIONAL_FLOAT_ARGS \ - ? (float)va_arg_double(LIST) \ - : __va_arg_float(LIST) \ - ) - -#if defined(__i386__) || defined(__m68k__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc__) || defined(__sparc64__) || defined(__alpha__) || defined(__arm__) || defined(__rs6000__) || defined(__convex__) || defined(__ia64__) || defined(__x86_64__) || defined(__s390__) -#define __va_align_double(LIST) -#endif -#if defined(__mips__) && !defined(__mipsn32__) || defined(__m88k__) -/* __VA_alignof(double) > sizeof(__vaword) */ -#define __va_align_double(LIST) \ - (LIST)->aptr = ((LIST)->aptr + sizeof(double)-1) & -(long)sizeof(double), -#endif -#if defined(__hppa__) -#define __va_align_double(LIST) \ - (LIST)->aptr = (LIST)->aptr & -(long)sizeof(double), -#endif - -#if defined(__sparc__) && !defined(__sparc64__) -/* Beware against unaligned `double' accesses! */ -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->tmp._words[0] = ((__vaword*)((LIST)->aptr))[0], \ - (LIST)->tmp._words[1] = ((__vaword*)((LIST)->aptr))[1], \ - (LIST)->aptr += sizeof(double), \ - (LIST)->tmp._double \ - ) -#endif -#if defined(__alpha__) -/* The first 6 floating point registers have been stored in another place. */ -#define va_arg_double(LIST) \ - (((LIST)->aptr += sizeof(double)) <= (LIST)->memargptr \ - ? *(double*)((LIST)->aptr - sizeof(double) - 6*sizeof(double)) \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - ) -#define __va_arg_float(LIST) \ - (((LIST)->aptr += sizeof(double)) <= (LIST)->memargptr \ - ? /* The first 6 args have been put into memory by "stt" instructions */\ - /* (see vacall-alpha.s!). Therefore load them as doubles. */ \ - /* When viewed as floats, the value will be the correct one. */ \ - (float)*(double*)((LIST)->aptr - sizeof(double) - 6*sizeof(double)) \ - : /* These args have been put into memory by "sts" instructions, */ \ - /* therefore load them as floats. */ \ - *(float*)((LIST)->aptr - sizeof(double)) \ - ) -#endif -#if defined(__hppa__) -/* The first 4 float registers and the first 2 double registers are stored - * elsewhere. - */ -#if 1 /* gcc-2.5.2 passes these args in general registers! A bug, I think. */ -#define __va_arg_float(LIST) \ - (*(float*)((LIST)->aptr -= sizeof(float))) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - *(double*)((LIST)->aptr -= sizeof(double)) \ - ) -#else /* this would be correct if the args were passed in float registers. */ -#define __va_arg_float(LIST) \ - (((LIST)->aptr -= sizeof(float)) >= (LIST)->memargptr \ - ? /* The first 4 float args are stored separately. */ \ - *(float*)((LIST)->aptr + (LIST)->farg_offset) \ - : *(float*)((LIST)->aptr) \ - ) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (((LIST)->aptr -= sizeof(double)) >= (LIST)->memargptr \ - ? /* The first 2 double args are stored separately. */ \ - *(double*)((LIST)->aptr + (LIST)->darg_offset) \ - : *(double*)((LIST)->aptr) \ - )) -#endif -#endif -#if defined(__mips__) && !defined(__mipsn32__) -/* The first 0,1,2 registers are stored elsewhere if they are floating-point - * parameters. - */ -#define __va_arg_float(LIST) \ - ((LIST)->aptr += sizeof(float), \ - (LIST)->anum++, \ - ((LIST)->anum == 1 \ - ? ((LIST)->flags |= __VA_FLOAT_1, (LIST)->farg[0]) \ - : ((LIST)->anum == 2 && ((LIST)->flags & __VA_FLOAT_1) \ - ? (/* (LIST)->flags |= __VA_FLOAT_2, */ (LIST)->farg[1]) \ - : *(float*)((LIST)->aptr - sizeof(float)) \ - )) ) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - (LIST)->anum++, \ - ((LIST)->anum == 1 \ - ? ((LIST)->flags |= __VA_FLOAT_1, (LIST)->darg[0]) \ - : ((LIST)->anum == 2 && ((LIST)->flags & __VA_FLOAT_1) \ - ? (/* (LIST)->flags |= __VA_FLOAT_2, */ (LIST)->darg[1]) \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - )) ) -#endif -#if defined(__mipsn32__) || defined(__mips64__) -/* The first 0,..,8 registers are stored elsewhere if they are floating-point - * parameters. - */ -#define __va_arg_float(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - (++(LIST)->anum <= 8 \ - ? (LIST)->farg[(LIST)->anum - 1] \ - : *(float*)((LIST)->aptr - sizeof(double)) \ - )) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - (++(LIST)->anum <= 8 \ - ? (LIST)->darg[(LIST)->anum - 1] \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__sparc64__) -/* The first 0,..,16 registers are stored elsewhere if they are floating-point - * parameters. - */ -#define __va_arg_float(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - (++(LIST)->anum <= 16 \ - ? (LIST)->farg[(LIST)->anum - 1] \ - : *(float*)((LIST)->aptr - sizeof(double)) \ - )) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - (++(LIST)->anum <= 16 \ - ? (LIST)->darg[(LIST)->anum - 1] \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) -/* The first 13 floating-point args have been stored elsewhere. */ -#define __va_arg_float(LIST) \ - ((LIST)->aptr += sizeof(float), \ - ((LIST)->memfargptr < &(LIST)->farg[13] \ - ? (float) *((LIST)->memfargptr++) \ - : *(float*)((LIST)->aptr - sizeof(float)) \ - )) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - ((LIST)->memfargptr < &(LIST)->farg[13] \ - ? *((LIST)->memfargptr++) \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) -/* The first 8 floating-point args have been stored elsewhere. */ -#define __va_arg_float(LIST) \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? (float) *((LIST)->memfargptr++) \ - : ((LIST)->aptr = ((LIST)->onstack == 0 \ - ? ((LIST)->onstack=1, (LIST)->saptr) \ - : (LIST)->aptr \ - ), \ - (LIST)->aptr += sizeof(float), \ - *(float*)((LIST)->aptr - sizeof(float)) \ - )) -#define va_arg_double(LIST) \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? *((LIST)->memfargptr++) \ - : ((LIST)->aptr = ((LIST)->onstack == 0 \ - ? ((LIST)->onstack=1, (LIST)->saptr) \ - : (LIST)->aptr \ - ), \ - __va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__s390__) -/* The first 2 floating-point args have been stored elsewhere. */ -#define __va_arg_float(LIST) \ - ((LIST)->memfargptr < &(LIST)->farg[2] \ - ? (LIST)->memdargptr++, (float) *((LIST)->memfargptr++) \ - : ((LIST)->aptr = ((LIST)->onstack == 0 \ - ? ((LIST)->onstack=1, (LIST)->saptr) \ - : (LIST)->aptr \ - ), \ - (LIST)->aptr += sizeof(float), \ - *(float*)((LIST)->aptr - sizeof(float)) \ - )) -#define va_arg_double(LIST) \ - ((LIST)->memdargptr < &(LIST)->darg[2] \ - ? (LIST)->memfargptr++, *((LIST)->memdargptr++) \ - : ((LIST)->aptr = ((LIST)->onstack == 0 \ - ? ((LIST)->onstack=1, (LIST)->saptr) \ - : (LIST)->aptr \ - ), \ - __va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__ia64__) -/* The first 8 floating-point args have been stored elsewhere. */ -#define __va_arg_float(LIST) \ - ((LIST)->aptr += sizeof(__vaword), \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? (float) *((LIST)->memfargptr++) \ - : *(float*)((LIST)->aptr - sizeof(__vaword)) \ - )) -#define va_arg_double(LIST) \ - (__va_align_double(LIST) \ - (LIST)->aptr += sizeof(double), \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? *((LIST)->memfargptr++) \ - : *(double*)((LIST)->aptr - sizeof(double)) \ - )) -#endif -#if defined(__x86_64__) -/* The first 8 floating-point args have been stored elsewhere. */ -#define __va_arg_float(LIST) \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? ((LIST)->memfargptr++, \ - *(float*)((LIST)->memfargptr - 1) \ - ) \ - : ((LIST)->aptr += sizeof(__vaword), \ - *(float*)((LIST)->aptr - sizeof(__vaword)) \ - ) ) -#define va_arg_double(LIST) \ - ((LIST)->memfargptr < &(LIST)->farg[8] \ - ? *(LIST)->memfargptr++ \ - : ((LIST)->aptr += sizeof(__vaword), \ - *(double*)((LIST)->aptr - sizeof(__vaword)) \ - ) ) -#endif -#ifndef __va_arg_float -#define __va_arg_float(LIST) __va_arg(LIST,float) -#endif -#ifndef va_arg_double -#define va_arg_double(LIST) \ - (__va_align_double(LIST) __va_arg(LIST,double)) -#endif - -/* Pointer arguments. */ -#define va_arg_ptr(LIST,TYPE) __va_arg(LIST,TYPE) - -/* Structure arguments. */ -#define va_arg_struct(LIST,TYPE) \ - *(TYPE*)__va_arg_struct(LIST,sizeof(TYPE),__VA_alignof(TYPE)) -/* _va_arg_struct() is like va_arg_struct(), except that you pass the type's - * size and alignment instead of the type and get the value's address instead - * of the value itself. - */ -#define _va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (void*)__va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) -/* Structure argument alignment. */ -#if defined(__i386__) && defined(_MSC_VER) -/* In MSVC, doubles inside structures have alignment 8, i.e. - * __VA_alignof(double) = 8, but doubles (and also structures containing - * doubles) are passed on the stack with alignment 4. Looks really weird. - */ -#define __va_struct_alignment(TYPE_ALIGN) \ - ((TYPE_ALIGN) <= 4 ? (TYPE_ALIGN) : 4) -#else -#define __va_struct_alignment(TYPE_ALIGN) \ - (TYPE_ALIGN) -#endif -#define __va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (LIST)->aptr = ((LIST)->aptr + __va_struct_alignment(TYPE_ALIGN)-1) & -(long)__va_struct_alignment(TYPE_ALIGN), -#if defined(__i386__) || defined(__m68k__) || defined(__alpha__) || defined(__arm__) || defined(__m88k__) || defined(__convex__) || defined(__x86_64__) -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ) -#endif -#if defined(__mips__) && !defined(__mipsn32__) -/* small structures < 1 word are adjusted depending on compiler */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->flags & __VA_SGICC_STRUCT_ARGS \ - ? /* SGI MIPS cc passes small structures left-adjusted, although big-endian! */\ - __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - : /* SGI MIPS gcc passes small structures within the first four words left- \ - * adjusted, for compatibility with cc. But structures in memory are passed \ - * right-adjusted!! See gcc-2.6.3/config/mips/mips.c:function_arg(). \ - */ \ - ((LIST)->aptr < (LIST)->memargptr \ - ? __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - : __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - )) ) -#endif -#if defined(__mipsn32__) || defined(__mips64__) -/* small structures < 1 word are adjusted depending on compiler */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->flags & __VA_SGICC_STRUCT_ARGS \ - ? /* SGI MIPS cc passes small structures left-adjusted, although big-endian! */\ - __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - : /* SGI MIPS gcc passes small structures right-adjusted. */ \ - __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - )) -#endif -#if defined(__rs6000__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) -/* small structures < 1 word are adjusted depending on compiler */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((LIST)->flags & __VA_AIXCC_STRUCT_ARGS \ - ? /* AIX cc and xlc pass small structures left-adjusted, although big-endian! */\ - __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - : /* gcc passes small structures right-adjusted. */ \ - __va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - )) -#endif -#if defined(__rs6000__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) -/* Structures are passed as pointers to caller-made local copies. */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - va_arg_ptr(LIST,void*) -#endif -#if defined(__sparc__) && !defined(__sparc64__) -/* Structures are passed as pointers to caller-made local copies. */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - va_arg_ptr(LIST,void*) -#endif -#if defined(__sparc64__) -/* Small structures are passed left-adjusted, although big-endian! */ -/* Big structures are passed as pointers to caller-made local copies. */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((TYPE_SIZE) <= 16 \ - ? (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - __va_arg_leftadjusted(LIST,TYPE_SIZE,TYPE_ALIGN)) \ - : va_arg_ptr(LIST,void*) \ - ) -#endif -#if defined(__s390__) -/* Structures <= 8 bytes are passed as embedded copies on the arg stack. - * Big structures are passed as pointers to caller-made local copies. - */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((TYPE_SIZE) != 1 && (TYPE_SIZE) != 2 && (TYPE_SIZE) != 4 && (TYPE_SIZE) != 8 \ - ? va_arg_ptr(LIST,void*) \ - : (void*)__va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ) -#endif -#if defined(__hppa__) -/* Structures <= 8 bytes are passed as embedded copies on the arg stack. - * Big structures are passed as pointers to caller-made local copies. - */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((TYPE_SIZE) > 8 \ - ? va_arg_ptr(LIST,void*) \ - : /* FIXME: gcc-2.6.3 passes structures <= 4 bytes in memory left-adjusted! ?? */\ - (void*)__va_arg_rightadjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ) -#endif -#if defined(__ia64__) -/* Types larger than a word have 2-word alignment. */ -#define __va_arg_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - (__va_align_struct(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ((TYPE_SIZE) > sizeof(__vaword) && (((__vaword*)(LIST)->aptr - (LIST)->saptr) & 1) ? (LIST)->aptr += sizeof(__vaword) : 0), \ - __va_arg_adjusted(LIST,TYPE_SIZE,TYPE_ALIGN) \ - ) -#endif - - -/* - * Definition of the va_return_xxx macros. - */ -#define __va_return(LIST,RETTYPE) \ - (((LIST)->rtype == (RETTYPE)) || __va_error1((LIST)->rtype,RETTYPE)) -#define va_return_void(LIST) \ - __va_return(LIST,__VAvoid) -#define va_return_char(LIST,VAL) \ - (__va_return(LIST,__VAchar), (LIST)->tmp._char = (VAL)) -#define va_return_schar(LIST,VAL) \ - (__va_return(LIST,__VAschar), (LIST)->tmp._schar = (VAL)) -#define va_return_uchar(LIST,VAL) \ - (__va_return(LIST,__VAuchar), (LIST)->tmp._uchar = (VAL)) -#define va_return_short(LIST,VAL) \ - (__va_return(LIST,__VAshort), (LIST)->tmp._short = (VAL)) -#define va_return_ushort(LIST,VAL) \ - (__va_return(LIST,__VAushort), (LIST)->tmp._ushort = (VAL)) -#define va_return_int(LIST,VAL) \ - (__va_return(LIST,__VAint), (LIST)->tmp._int = (VAL)) -#define va_return_uint(LIST,VAL) \ - (__va_return(LIST,__VAuint), (LIST)->tmp._uint = (VAL)) -#define va_return_long(LIST,VAL) \ - (__va_return(LIST,__VAlong), (LIST)->tmp._long = (VAL)) -#define va_return_ulong(LIST,VAL) \ - (__va_return(LIST,__VAulong), (LIST)->tmp._ulong = (VAL)) -#if defined(__mips64__) || defined(__sparc64__) || defined(__alpha__) || defined(__ia64__) || defined(__x86_64__) -#define va_return_longlong(LIST,VAL) \ - (__va_return(LIST,__VAlonglong), (LIST)->tmp._long = (VAL)) -#define va_return_ulonglong(LIST,VAL) \ - (__va_return(LIST,__VAulonglong), (LIST)->tmp._ulong = (VAL)) -#else -#define va_return_longlong(LIST,VAL) \ - (__va_return(LIST,__VAlonglong), (LIST)->tmp._longlong = (VAL)) -#define va_return_ulonglong(LIST,VAL) \ - (__va_return(LIST,__VAulonglong), (LIST)->tmp._ulonglong = (VAL)) -#endif -#define va_return_float(LIST,VAL) \ - (__va_return(LIST,__VAfloat), (LIST)->tmp._float = (VAL)) -#define va_return_double(LIST,VAL) \ - (__va_return(LIST,__VAdouble), (LIST)->tmp._double = (VAL)) -#define va_return_ptr(LIST,TYPE,VAL) \ - (__va_return(LIST,__VAvoidp), (LIST)->tmp._ptr = (void*)(TYPE)(VAL)) -#define va_return_struct(LIST,TYPE,VAL) \ - (__va_return(LIST,__VAstruct), *(TYPE*)((LIST)->raddr) = (VAL)) -#define _va_return_struct(LIST,TYPE_SIZE,TYPE_ALIGN,VAL_ADDR) \ - (__va_return(LIST,__VAstruct), \ - __structcpy((void*)((LIST)->raddr),VAL_ADDR,TYPE_SIZE,TYPE_ALIGN) \ - ) - - -/* Determine whether a struct type is word-splittable, i.e. whether each of - * its components fit into a register. - * The entire computation is done at compile time. - */ -#define va_word_splittable_1(slot1) \ - (__va_offset1(slot1)/sizeof(__vaword) == (__va_offset1(slot1)+sizeof(slot1)-1)/sizeof(__vaword)) -#define va_word_splittable_2(slot1,slot2) \ - ((__va_offset1(slot1)/sizeof(__vaword) == (__va_offset1(slot1)+sizeof(slot1)-1)/sizeof(__vaword)) \ - && (__va_offset2(slot1,slot2)/sizeof(__vaword) == (__va_offset2(slot1,slot2)+sizeof(slot2)-1)/sizeof(__vaword)) \ - ) -#define va_word_splittable_3(slot1,slot2,slot3) \ - ((__va_offset1(slot1)/sizeof(__vaword) == (__va_offset1(slot1)+sizeof(slot1)-1)/sizeof(__vaword)) \ - && (__va_offset2(slot1,slot2)/sizeof(__vaword) == (__va_offset2(slot1,slot2)+sizeof(slot2)-1)/sizeof(__vaword)) \ - && (__va_offset3(slot1,slot2,slot3)/sizeof(__vaword) == (__va_offset3(slot1,slot2,slot3)+sizeof(slot3)-1)/sizeof(__vaword)) \ - ) -#define va_word_splittable_4(slot1,slot2,slot3,slot4) \ - ((__va_offset1(slot1)/sizeof(__vaword) == (__va_offset1(slot1)+sizeof(slot1)-1)/sizeof(__vaword)) \ - && (__va_offset2(slot1,slot2)/sizeof(__vaword) == (__va_offset2(slot1,slot2)+sizeof(slot2)-1)/sizeof(__vaword)) \ - && (__va_offset3(slot1,slot2,slot3)/sizeof(__vaword) == (__va_offset3(slot1,slot2,slot3)+sizeof(slot3)-1)/sizeof(__vaword)) \ - && (__va_offset4(slot1,slot2,slot3,slot4)/sizeof(__vaword) == (__va_offset4(slot1,slot2,slot3,slot4)+sizeof(slot4)-1)/sizeof(__vaword)) \ - ) -#define __va_offset1(slot1) \ - 0 -#define __va_offset2(slot1,slot2) \ - ((__va_offset1(slot1)+sizeof(slot1)+__VA_alignof(slot2)-1) & -(long)__VA_alignof(slot2)) -#define __va_offset3(slot1,slot2,slot3) \ - ((__va_offset2(slot1,slot2)+sizeof(slot2)+__VA_alignof(slot3)-1) & -(long)__VA_alignof(slot3)) -#define __va_offset4(slot1,slot2,slot3,slot4) \ - ((__va_offset3(slot1,slot2,slot3)+sizeof(slot3)+__VA_alignof(slot4)-1) & -(long)__VA_alignof(slot4)) - - -/* - * Miscellaneous declarations. - */ -#ifdef __cplusplus -extern "C" void (*vacall) (); /* the return type is variable, not void! */ -#else -extern void (*vacall) (); /* the return type is variable, not void! */ -#endif -#if defined(__STDC__) || defined(__GNUC__) || defined(__cplusplus) -extern void (* vacall_function) (va_alist); -extern int __va_error1 (enum __VAtype, enum __VAtype); -extern int __va_error2 (unsigned int); -extern void __structcpy (void* dest, void* src, unsigned long size, unsigned long alignment); -#else -extern void (* vacall_function) (); -extern int __va_error1 (); -extern int __va_error2 (); -extern void __structcpy (); -#endif -typedef union { __vaword room[__VA_ALIST_WORDS]; double align; } __va_struct_buffer_t; -extern __va_struct_buffer_t __va_struct_buffer; - - -#endif /* _VACALL_H */ DELETED ffcall/vacall/vacall.html Index: ffcall/vacall/vacall.html ================================================================== --- ffcall/vacall/vacall.html +++ /dev/null @@ -1,299 +0,0 @@ - - VACALL manual page - - -

VACALL manual page

- - -

- -


- - -

Name

-
- -vacall - C functions called with variable arguments - - -

Synopsis

-
- -
-#include <vacall.h>
-
-

-

-extern void* vacall_function;
-
-

-

-void function (alist)
-  va_alist alist;
-{
-  va_start_type(alist[, return_type]);
-  arg = va_arg_type(alist[, arg_type]);
-  va_return_type(alist[[, return_type], return_value]);
-}
-
-

-

-vacall_function = &function;
-
-

-

-val = ((return_type (*) ()) vacall) (arg1,arg2,...);
-
- - -

Description

-
- -This set of macros permit a C function function to be -called with variable arguments and to return variable -return values. This is much like the varargs(3) facility, -but also allows the return value to be specified at run -time. -

-Function calling conventions differ considerably on different -machines, and vacall attempts to provide some -degree of isolation from such architecture dependencies. -

-The function that can be called with any number and type -of arguments and which will return any type of return -value is vacall. It will do some magic and call the function -stored in the variable vacall_function. If you want -to make more than one use of vacall, -use the trampoline(3) -facility to store &function - into vacall_function just -before calling vacall. -

-Within function, the following macros can be used to walk -through the argument list and specify a return value: -

-

-va_start_type(alist[, return_type]);
-
-starts the walk through the argument list and specifies the return type. -

-

-arg = va_arg_type(alist[, arg_type]);
-
-fetches the next argument from the argument list. -

-

-va_return_type(alist[[, return_type], return_value]);
-
-ends the walk through the argument list and specifies the return value. -

-The type in va_start_type - and va_return_type shall be one -of void, int, uint, long, -ulong, longlong, ulonglong, -double, struct, ptr -or -(for ANSI C calling conventions only) -char, schar, uchar, -short, ushort, float, -depending on the class of return_type. -

-The type specifiers in -va_start_type and va_return_type - must be the same. -The return_type specifiers passed to -va_start_type and va_return_type - must be the same. -

-The type in va_arg_type -shall be one of int, uint, long, -ulong, longlong, ulonglong, -double, struct, ptr -or (for ANSI C calling conventions only) -char, schar, uchar, -short, ushort, float, -depending on the class of arg_type. -

-In va_start_struct(alist, return_type, splittable); the -splittable flag specifies whether the struct return_type can -be returned in registers such that every struct field fits -entirely in a single register. This needs to be specified -for structs of size 2*sizeof(long). For structs of size -<= sizeof(long), splittable is ignored and assumed to be 1. -For structs of size > 2*sizeof(long), splittable is -ignored and assumed to be 0. There are some handy macros -for this: -

-va_word_splittable_1 (type1)
-va_word_splittable_2 (type1, type2)
-va_word_splittable_3 (type1, type2, type3)
-va_word_splittable_4 (type1, type2, type3, type4)
-
-For a struct with three slots -
-struct { type1 id1; type2 id2; type3 id3; }
-
-you can specify splittable as -va_word_splittable_3 (type1, type2, type3). - - -

Notes

-
- -
    -
  1. Functions which want to emulate Kernighan & Ritchie style -functions (i.e., in ANSI C, functions without a typed -argument list) cannot use the type values -char, schar, uchar, -short, ushort, float. -As prescribed by the default -K&R C expression promotions, they have to use int instead -of char, schar, uchar, -short, ushort and double instead of -float. -

    -

  2. The macros va_start_longlong(), -va_start_ulonglong(), va_return_longlong(), -va_return_ulonglong(), va_arg_longlong() and -va_arg_ulonglong() work only if the C compiler has a working -long long 64-bit integer type. -

    -

  3. The struct types used in va_start_struct() and -va_struct() must only contain (signed or unsigned) int, -long, long long or pointer fields. Struct types containing -(signed or unsigned) char, short, float, double or other -structs are not supported. -

    -

- - -

Example

-
- -This example, a possible implementation of execl(3) on top -of execv(2) using varargs(3), -
#include <varargs.h>
-#define MAXARGS 100
-/* execl is called by execl(file, arg1, arg2, ..., (char *)0); */
-int execl (va_alist)
-  va_dcl
-{
-  va_list ap;
-  char* file;
-  char* args[MAXARGS];
-  int argno = 0;
-  va_start (ap);
-  file = va_arg(ap, char*);
-  while ((args[argno] = va_arg(ap, char*)) != (char *)0)
-    argno++;
-  va_end (ap);
-  return execv(file, args);
-}
-
-looks like this using vacall(3): -
#include <vacall.h>
-#define MAXARGS 100
-/* execl is called by vacall(file, arg1, arg2, ..., (char *)0); */
-void execl (ap)
-  va_alist ap;
-{
-  char* file;
-  char* args[MAXARGS];
-  int argno = 0;
-  int retval;
-  va_start_int (ap);
-  file = va_arg_ptr(ap, char*);
-  while ((args[argno] = va_arg_ptr(ap, char*)) != (char *)0)
-    argno++;
-  retval = execv(file, args);
-  va_return_int (ap, retval);
-}
-vacall_function = &execl;
-
-

- - -

See also

- - -varargs(3), trampoline(3), callback(3). - - -

Bugs

-
- -The current implementations have been tested on a selection -of common cases but there are probably still many -bugs. -

-There are typically built-in limits on the size of the -argument-list, which may also include the size of any -structure arguments. -

-The decision whether a struct is to be returned in registers or in memory -considers only the struct's size and alignment. This is inaccurate: for -example, gcc on m68k-next returns -struct { char a,b,c; } -in registers and -struct { char a[3]; } -in memory, although both types have the same size and the same alignment. -

-<vacall.h> cannot be included when <varargs.h> or -<stdarg.h> is included. (Name clash for va_alist.) -

-The argument list can only be walked once. -

-The use of the global variable vacall_function is not -reentrant. This is fixed in the callback(3) package. - - -

Porting

- - -Knowledge about argument passing conventions can be found -in the gcc source, file -gcc-2.6.3/config/cpu/cpu.h, -section "Stack layout; function entry, exit and calling." -

-The implementation of varargs for gcc can be found in the -gcc source, files gcc-2.6.3/ginclude/va*.h. -

-gcc's __builtin_saveregs() function is defined in the gcc -source, file gcc-2.6.3/libgcc2.c. -

- - -

Author

- - -Bruno Haible <bruno@clisp.org> - - -

Acknowledgements

-
- -Many ideas and a lot of code were cribbed from the gcc -source. -

- -


- -
VACALL manual page
-Bruno Haible <bruno@clisp.org> -
-

-Last modified: 14 January 2001. - - - DELETED ffcall/vacall/vacall.man Index: ffcall/vacall/vacall.man ================================================================== --- ffcall/vacall/vacall.man +++ /dev/null @@ -1,264 +0,0 @@ - - - -VACALL(3) VACALL(3) - - -NNAAMMEE - vacall - C functions called with variable arguments - -SSYYNNOOPPSSIISS - ##iinncclluuddee <> - - eexxtteerrnn vvooiidd** vvaaccaallll__ffuunnccttiioonn;; - - vvooiidd _f_u_n_c_t_i_o_n ((_a_l_i_s_t)) - vvaa__aalliisstt _a_l_i_s_t;; - {{ - vvaa__ssttaarrtt___t_y_p_e((_a_l_i_s_t[[,, _r_e_t_u_r_n___t_y_p_e]]));; - _a_r_g == vvaa__aarrgg___t_y_p_e((_a_l_i_s_t[[,, _a_r_g___t_y_p_e]]));; - vvaa__rreettuurrnn___t_y_p_e((_a_l_i_s_t[[[[,, _r_e_t_u_r_n___t_y_p_e]],, _r_e_t_u_r_n___v_a_l_u_e]]));; - }} - - vvaaccaallll__ffuunnccttiioonn == _&_f_u_n_c_t_i_o_n;; - - _v_a_l == ((((_r_e_t_u_r_n___t_y_p_e ((**)) (()))) vvaaccaallll)) ((_a_r_g_1,,_a_r_g_2,,_._._.));; - -DDEESSCCRRIIPPTTIIOONN - This set of macros permit a C function _f_u_n_c_t_i_o_n to be - called with variable arguments and to return variable - return values. This is much like the vvaarraarrggss(3) facility, - but also allows the return value to be specified at run - time. - - Function calling conventions differ considerably on dif- - ferent machines, and _v_a_c_a_l_l attempts to provide some - degree of isolation from such architecture dependencies. - - The function that can be called with any number and type - of arguments and which will return any type of return - value is vvaaccaallll. It will do some magic and call the func- - tion stored in the variable vvaaccaallll__ffuunnccttiioonn. If you want - to make more than one use of _v_a_c_a_l_l, use the _t_r_a_m_p_o_l_i_n_e(3) - facility to store _&_f_u_n_c_t_i_o_n into vvaaccaallll__ffuunnccttiioonn just - before calling vvaaccaallll. - - Within _f_u_n_c_t_i_o_n, the following macros can be used to walk - through the argument list and specify a return value: - - vvaa__ssttaarrtt___t_y_p_e((_a_l_i_s_t[[,, _r_e_t_u_r_n___t_y_p_e]]));; - starts the walk through the argument list and spec- - ifies the return type. - - _a_r_g == vvaa__aarrgg___t_y_p_e((_a_l_i_s_t[[,, _a_r_g___t_y_p_e]]));; - fetches the next argument from the argument list. - - vvaa__rreettuurrnn___t_y_p_e((_a_l_i_s_t[[[[,, _r_e_t_u_r_n___t_y_p_e]],, _r_e_t_u_r_n___v_a_l_u_e]]));; - ends the walk through the argument list and speci- - fies the return value. - - The _t_y_p_e in vvaa__ssttaarrtt___t_y_p_e and vvaa__rreettuurrnn___t_y_p_e shall be one - - - - 14 January 2001 1 - - - - - -VACALL(3) VACALL(3) - - - of vvooiidd, iinntt, uuiinntt, lloonngg, uulloonngg, lloonngglloonngg, uulloonngglloonngg, ddoouu-- - bbllee, ssttrruucctt, ppttrr or (for ANSI C calling conventions only) - cchhaarr, sscchhaarr, uucchhaarr, sshhoorrtt, uusshhoorrtt, ffllooaatt, depending on the - class of _r_e_t_u_r_n___t_y_p_e. - - The _t_y_p_e specifiers in vvaa__ssttaarrtt___t_y_p_e and vvaa__rreettuurrnn___t_y_p_e - must be the same. The _r_e_t_u_r_n___t_y_p_e specifiers passed to - vvaa__ssttaarrtt___t_y_p_e and vvaa__rreettuurrnn___t_y_p_e must be the same. - - The _t_y_p_e in vvaa__aarrgg___t_y_p_e shall be one of iinntt, uuiinntt, lloonngg, - uulloonngg, lloonngglloonngg, uulloonngglloonngg, ddoouubbllee, ssttrruucctt, ppttrr or (for - ANSI C calling conventions only) cchhaarr, sscchhaarr, uucchhaarr, - sshhoorrtt, uusshhoorrtt, ffllooaatt, depending on the class of _a_r_g___t_y_p_e. - - In vvaa__ssttaarrtt__ssttrruucctt((_a_l_i_s_t,, _r_e_t_u_r_n___t_y_p_e,, _s_p_l_i_t_t_a_b_l_e));; the - _s_p_l_i_t_t_a_b_l_e flag specifies whether the struct _r_e_t_u_r_n___t_y_p_e - can be returned in registers such that every struct field - fits entirely in a single register. This needs to be spec- - ified for structs of size 2*sizeof(long). For structs of - size <= sizeof(long), _s_p_l_i_t_t_a_b_l_e is ignored and assumed to - be 1. For structs of size > 2*sizeof(long), _s_p_l_i_t_t_a_b_l_e is - ignored and assumed to be 0. There are some handy macros - for this: - vvaa__wwoorrdd__sspplliittttaabbllee__11 ((_t_y_p_e_1)) - vvaa__wwoorrdd__sspplliittttaabbllee__22 ((_t_y_p_e_1,, _t_y_p_e_2)) - vvaa__wwoorrdd__sspplliittttaabbllee__33 ((_t_y_p_e_1,, _t_y_p_e_2,, _t_y_p_e_3)) - vvaa__wwoorrdd__sspplliittttaabbllee__44 ((_t_y_p_e_1,, _t_y_p_e_2,, _t_y_p_e_3,, _t_y_p_e_4)) - For a struct with three slots - ssttrruucctt {{ _t_y_p_e_1 _i_d_1;; _t_y_p_e_2 _i_d_2;; _t_y_p_e_3 _i_d_3;; }} - you can specify _s_p_l_i_t_t_a_b_l_e as vvaa__wwoorrdd__sspplliittttaabbllee__33 ((_t_y_p_e_1,, - _t_y_p_e_2,, _t_y_p_e_3)) . - - -NNOOTTEESS - Functions which want to emulate Kernighan & Ritchie style - functions (i.e., in ANSI C, functions without a typed - argument list) cannot use the _t_y_p_e values cchhaarr, sscchhaarr, - uucchhaarr, sshhoorrtt, uusshhoorrtt, ffllooaatt. As prescribed by the default - K&R C expression promotions, they have to use iinntt instead - of cchhaarr, sscchhaarr, uucchhaarr, sshhoorrtt, uusshhoorrtt and ddoouubbllee instead of - ffllooaatt. - - The macros vvaa__ssttaarrtt__lloonngglloonngg(()), vvaa__ssttaarrtt__uulloonngglloonngg(()), - vvaa__rreettuurrnn__lloonngglloonngg(()), vvaa__rreettuurrnn__uulloonngglloonngg(()), - vvaa__aarrgg__lloonngglloonngg(()) and vvaa__aarrgg__uulloonngglloonngg(()) work only if the - C compiler has a working lloonngg lloonngg 64-bit integer type. - - The struct types used in vvaa__ssttaarrtt__ssttrruucctt(()) and vvaa__ssttrruucctt(()) - must only contain (signed or unsigned) int, long, long - long or pointer fields. Struct types containing (signed - or unsigned) char, short, float, double or other structs - are not supported. - - - - - - 14 January 2001 2 - - - - - -VACALL(3) VACALL(3) - - -EEXXAAMMPPLLEE - This example, a possible implementation of eexxeeccll(3) on top - of eexxeeccvv(2) using vvaarraarrggss(3), - - ##iinncclluuddee <> - ##ddeeffiinnee MMAAXXAARRGGSS 110000 - //** eexxeeccll iiss ccaalllleedd bbyy eexxeeccll((ffiillee,, aarrgg11,, aarrgg22,, ......,, ((cchhaarr **))00));; **// - iinntt eexxeeccll ((vvaa__aalliisstt)) - vvaa__ddccll - {{ - vvaa__lliisstt aapp;; - cchhaarr** ffiillee;; - cchhaarr** aarrggss[[MMAAXXAARRGGSS]];; - iinntt aarrggnnoo == 00;; - vvaa__ssttaarrtt ((aapp));; - ffiillee == vvaa__aarrgg((aapp,, cchhaarr**));; - wwhhiillee ((((aarrggss[[aarrggnnoo]] == vvaa__aarrgg((aapp,, cchhaarr**)))) !!== ((cchhaarr **))00)) - aarrggnnoo++++;; - vvaa__eenndd ((aapp));; - rreettuurrnn eexxeeccvv((ffiillee,, aarrggss));; - }} - - looks like this using vvaaccaallll(3): - - ##iinncclluuddee <> - ##ddeeffiinnee MMAAXXAARRGGSS 110000 - //** eexxeeccll iiss ccaalllleedd bbyy vvaaccaallll((ffiillee,, aarrgg11,, aarrgg22,, ......,, ((cchhaarr **))00));; **// - vvooiidd eexxeeccll ((aapp)) - vvaa__aalliisstt aapp;; - {{ - cchhaarr** ffiillee;; - cchhaarr** aarrggss[[MMAAXXAARRGGSS]];; - iinntt aarrggnnoo == 00;; - iinntt rreettvvaall;; - vvaa__ssttaarrtt__iinntt ((aapp));; - ffiillee == vvaa__aarrgg__ppttrr((aapp,, cchhaarr**));; - wwhhiillee ((((aarrggss[[aarrggnnoo]] == vvaa__aarrgg__ppttrr((aapp,, cchhaarr**)))) !!== ((cchhaarr **))00)) - aarrggnnoo++++;; - rreettvvaall == eexxeeccvv((ffiillee,, aarrggss));; - vvaa__rreettuurrnn__iinntt ((aapp,, rreettvvaall));; - }} - vvaaccaallll__ffuunnccttiioonn == &&eexxeeccll;; - - -SSEEEE AALLSSOO - vvaarraarrggss(3), ttrraammppoolliinnee(3), ccaallllbbaacckk(3). - - -BBUUGGSS - The current implementations have been tested on a selec- - tion of common cases but there are probably still many - bugs. - - There are typically built-in limits on the size of the - - - - 14 January 2001 3 - - - - - -VACALL(3) VACALL(3) - - - argument-list, which may also include the size of any - structure arguments. - - The decision whether a struct is to be returned in regis- - ters or in memory considers only the struct's size and - alignment. This is inaccurate: for example, gcc on m68k- - next returns ssttrruucctt {{ cchhaarr aa,,bb,,cc;; }} in registers and - ssttrruucctt {{ cchhaarr aa[[33]];; }} in memory, although both types have - the same size and the same alignment. - - <> cannot be included when <> or - <> is included. (Name clash for vvaa__aalliisstt.) - - The argument list can only be walked once. - - The use of the global variable vvaaccaallll__ffuunnccttiioonn is not - reentrant. This is fixed in the ccaallllbbaacckk(3) package. - - -PPOORRTTIINNGG - Knowledge about argument passing conventions can be found - in the gcc source, file gcc-2.6.3/config/_c_p_u/_c_p_u.h, sec- - tion "Stack layout; function entry, exit and calling." - - The implementation of varargs for gcc can be found in the - gcc source, files gcc-2.6.3/ginclude/va*.h. - - gcc's __builtin_saveregs() function is defined in the gcc - source, file gcc-2.6.3/libgcc2.c. - - -AAUUTTHHOORR - Bruno Haible - - -AACCKKNNOOWWLLEEDDGGEEMMEENNTTSS - Many ideas and a lot of code were cribbed from the gcc - source. - - - - - - - - - - - - - - - - - - - - 14 January 2001 4 - - ADDED ref/Makefile Index: ref/Makefile ================================================================== --- /dev/null +++ ref/Makefile @@ -0,0 +1,87 @@ +LIB_SRCS = rasclDict.ml rasclParser.ml rasclLexer.ml rasclObject.ml rascl.ml +BYTE_OBJS = $(LIB_SRCS:.ml=.cmo) +NAT_OBJS = $(LIB_SRCS:.ml=.cmx) + +.PHONY: all opt byte lib-opt lib-byte install uninstall doc clean + +all : lib-byte lib-opt pa_rascl.cmo + +byte : lib-byte pa_rascl.cmo + +opt : lib-opt pa_rascl.cmo + +lib-byte : $(BYTE_OBJS) + ocamlc -a -o rascl.cma $(BYTE_OBJS) + +lib-opt : $(NAT_OBJS) + ocamlopt -a -o rascl.cmxa $(NAT_OBJS) + + +rasclDict.cmo : rasclDict.cmi rasclDict.ml + ocamlc -c rasclDict.ml +rasclDict.cmx : rasclDict.cmi rasclDict.ml + ocamlopt -c rasclDict.ml + + +rasclParser.cmo : rasclDict.cmo rasclParser.ml + -rm rasclParser.mli + ocamlc -c rasclDict.cmo rasclParser.ml +rasclParser.cmx : rasclDict.cmx rasclParser.ml + -rm rasclParser.mli + ocamlopt -c rasclDict.cmx rasclParser.ml + +rasclParser.ml : rasclParser.mly + ocamlyacc rasclParser.mly + + +rasclLexer.cmo : rasclDict.cmo rasclParser.cmo rasclLexer.ml + ocamlc -c rasclParser.cmo rasclLexer.ml +rasclLexer.cmx : rasclDict.cmx rasclParser.cmx rasclLexer.ml + ocamlopt -c rasclParser.cmx rasclLexer.ml + +rasclLexer.ml : rasclLexer.mll + ocamllex rasclLexer.mll + + +rasclObject.cmo : rasclDict.cmo rasclParser.cmo rasclLexer.cmo + ocamlc -c rasclParser.cmo rasclLexer.cmo rasclObject.ml +rasclObject.cmx : rasclDict.cmx rasclParser.cmx rasclLexer.cmx + ocamlopt -c rasclParser.cmx rasclLexer.cmx rasclObject.ml + + +rascl.cmo : rascl.ml rascl.cmi +rascl.cmx : rascl.ml rascl.cmi + + +%.cmo : %.ml + ocamlc -c $< +%.cmx : %.ml + ocamlopt -c $< +%.cmi : %.mli + ocamlc -c $< + + +pa_rascl.cmo : + ocamlc -c -I +camlp4 -pp 'camlp4o pa_extend.cmo q_MLast.cmo -loc loc' \ + pa_rascl.ml + +install : uninstall + files=$$( \ + for f in rascl.cma rascl.cmxa rascl.a rascl.cmi rascl.mli \ + pa_rascl.cmo META; do \ + if [ -f "$$f" ]; then echo $$f; fi; \ + done; \ + ) && \ + ocamlfind install rascl $$files + +uninstall : + ocamlfind remove rascl + +doc : + ocamldoc -html -css-style mcg.css -d doc/ocaml/api rascl.mli + +clean: + -rm -f *.cmo *.cmi *.o *.cmx rasclParser.ml rasclLexer.ml + +realclean : clean + -rm -f *.cma *.cmxa *.a ADDED ref/Makefile.bantam Index: ref/Makefile.bantam ================================================================== --- /dev/null +++ ref/Makefile.bantam @@ -0,0 +1,44 @@ +BANTAM_HOME = /usr/local +BINDIR = $(BANTAM_HOME)/bin +LIBDIR = $(BANTAM_HOME)/lib/bantam +DATADIR = $(BANTAM_HOME)/share/bantam + +DEFAULT_TARGET = opt + +#SRCS = bantam.ml +#BYTE_OBJS = $(SRCS:.ml=.cmo) +#NAT_OBJS = $(SRCS:.ml=.cmx) + +include Makefile.build + +.PHONY : all byte opt install clean test + +install : + install -d $(BINDIR) + $$(for sub in config scripts; do \ + install -d $(DATADIR)/skeleton/$$sub; \ + done) + install bantam.bin $(BINDIR) + install bantam.sh $(BINDIR)/bantam + install -m 644 skeleton/config/* $(DATADIR)/skeleton/config + install skeleton/scripts/* $(DATADIR)/skeleton/scripts + install -m 644 VERSION skeleton/logo.png $(DATADIR) + +clean : + -rm -f *.cm? *.o *.a bantam.ml + -rm -rf testdata + +distclean : clean + -rm -f Makefile* bantam.sh awtest.ml new_add_watch_test.sh *.ml + +realclean : clean + -rm -f bantam bantam.sh bantam.bin + +test : + #export BANTAM_USER_DIR=./skeleton + #export PATH=$$BANTAM_USER_DIR/scripts:$$PATH + #export BANTAM_BINDIR=. + #export BANTAM_DATA=. + #exec bantam.bin + cp -R skeleton testdata + BANTAM_USER_DIR=./testdata PATH=./testdata/scripts:$$PATH ./bantam.bin ADDED ref/Makefile.build.bantam Index: ref/Makefile.build.bantam ================================================================== --- /dev/null +++ ref/Makefile.build.bantam @@ -0,0 +1,89 @@ +OCAMLC = ocamlc +OCAMLOPT = ocamlopt +OCAMLFIND = ocamlfind +CC = gcc + +BASE_SRCS = common.ml util.ml bConfig.ml +SRCS = $(BASE_SRCS) bantam_.ml +#BASE_BYTE_OBJS = $(BASE_SRCS:.ml=.cmo) +BASE_BYTE_OBJS = prefs.cmo $(BASE_SRCS:.ml=.cmo) +BYTE_OBJS = $(BASE_BYTE_OBJS) bantam.cmo +#BYTE_OBJS = prefs.cmo $(BASE_BYTE_OBJS) bantam.cmo +#NAT_OBJS = $(BASE_SRCS:.ml=.cmx) bantam.cmx +BASE_NAT_OBJS = prefs.cmx $(BASE_SRCS:.ml=.cmx) +#NAT_OBJS = prefs.cmx $(BASE_SRCS:.ml=.cmx) bantam.cmx +NAT_OBJS = $(BASE_NAT_OBJS) bantam.cmx +DEPS = "unix str lablgtk2 rascl" + +NEW_ADD_WATCH = $(shell ./new_add_watch_test.sh) +ifeq ($(strip $(NEW_ADD_WATCH)), true) + IN_COND = "[\`IN]" + HUP_COND = "[\`HUP]" +else + IN_COND = "\`IN" + HUP_COND = "\`HUP" +endif + +RELIEF = $(shell bash -c '\ + version=`ocamlc -version`; \ + major=$${version:0:4}; \ + minor=$${version:5}; \ + if [ $$major = "3.08" ] && [ $$minor ] && [ $$minor -ge 3 ]; then \ + echo "Solid"; \ + else \ + echo "Flat"; \ + fi' ) + +.PHONY : all byte opt install clean + +all : $(DEFAULT_TARGET) + +opt : $(NAT_OBJS) usleep.o bantam.sh + $(OCAMLFIND) $(OCAMLOPT) -package $(DEPS) -predicates init \ + -linkpkg -o bantam.bin usleep.o $(NAT_OBJS) + +byte : $(BYTE_OBJS) usleep.o bantam.sh + $(OCAMLFIND) $(OCAMLC) -package $(DEPS) -predicates init \ + -linkpkg -custom -o bantam.bin usleep.o $(BYTE_OBJS) + +bantam.sh : bantam.sh.0 bantam.sh.2 + -rm -f bantam.sh + cat bantam.sh.0 >> bantam.sh + echo " BANTAM_HOME=$(BANTAM_HOME)" >> bantam.sh + cat bantam.sh.2 >> bantam.sh + +usleep.o : usleep.c + $(CC) -I`ocamlc -where` -c usleep.c + +prefs.cmo : prefs.ml + $(OCAMLFIND) $(OCAMLC) -package rascl -pp \ + 'camlp4o -I `ocamlfind query rascl` pa_extend.cmo q_MLast.cmo \ + pa_rascl.cmo' -c prefs.ml + cp config.example skeleton/config/prefs +prefs.cmx : prefs.ml + $(OCAMLFIND) $(OCAMLOPT) -package rascl -pp \ + 'camlp4o -I `ocamlfind query rascl` pa_extend.cmo q_MLast.cmo \ + pa_rascl.cmo' -c prefs.ml + cp config.example skeleton/config/prefs + +bantam.cmx : bantam.ml + #$(OCAMLFIND) $(OCAMLOPT) -package $(DEPS) \ + # -pp "camlp4o pa_ifdef.cmo $(SOLID)" -c $< + $(OCAMLFIND) $(OCAMLOPT) -package $(DEPS) -c $< + #-pp "camlp4o pa_macro.cmo" $(NEW_ADD_WATCH) $< + +bantam.cmo : bantam.ml + #$(OCAMLFIND) $(OCAMLC) -package $(DEPS) \ + # -pp "camlp4o pa_ifdef.cmo $(SOLID)" -c $< + $(OCAMLFIND) $(OCAMLC) -package $(DEPS) -c $< + #-pp "camlp4o pa_macro.cmo" $(NEW_ADD_WATCH) $< + +bantam.ml : bantam_.ml + sed "s/@IN_COND@/$(IN_COND)/" bantam_.ml \ + | sed "s/@HUP_COND@/$(HUP_COND)/" >bantam.ml + +%.cmx : %.ml + $(OCAMLFIND) $(OCAMLOPT) -package $(DEPS) -c $< + +%.cmo : %.ml + $(OCAMLFIND) $(OCAMLC) -package $(DEPS) -c $< ADDED ref/Makefile.mw Index: ref/Makefile.mw ================================================================== --- /dev/null +++ ref/Makefile.mw @@ -0,0 +1,38 @@ +# This is more to help me remember all the steps than for building :) +# In fact right now this does *not* work as a Makefile. Sorry! + +CSC_OPTIONS=-IC:/mylibs/iup/include -LC:/mylibs/iup + +eh : + @echo "Read the make file eh." + +chicken-4.6.5 + cd c:/mylibs/src/chicken-4.6.5 + $(MAKE) PLATFORM=mingw PREFIX=c:/chicken + +iup-module : + chicken-install -D no-library-checks iup + +canvas-draw-module : + chicken-install -D no-library-checks canvas-draw + +eggs : + apropos trace regex-case regex-literals format big-chicken pdf sql-de-lite coops tinyclos test regex slime + +sqlite3 : + set CSC_OPTIONS=-IC:/chicken/include -LC:/chicken + sqlite3 + +examples-inst : + mkdir -p c:/chicken/examples + cp examples/*.scm c:/chicken/examples + +setup-chicken-iup.exe : Output/setup.exe + cp Output/setup.exe setup-chicken-iup.exe + +all : iup-module canvas-draw-module examples-inst # setup-chicken-iup.exe + +iup : + cd iup;CSC_OPTIONS='-IC:/programs/chicken/include -LC:/programs/chicken/lib' chicken-install -D no-library-checks iup + +CSC_OPTIONS='-IC:/programs/chicken/lib/include -LC:/programs/chicken/lib' chicken-install -D no-library-checks -D disable-iup-web ADDED ref/chicken-iup-2.iss Index: ref/chicken-iup-2.iss ================================================================== --- /dev/null +++ ref/chicken-iup-2.iss @@ -0,0 +1,51 @@ +; Script generated by the Inno Setup Script Wizard. +; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES! + +#define MyAppName "chicken-iup" +#define MyAppVersion "0.3" +#define MyAppPublisher "Call/CC" +#define MyAppURL "http://www.call-cc.org" +#define MyAppExeName "chicken.exe" + +[Setup] +; NOTE: The value of AppId uniquely identifies this application. +; Do not use the same AppId value in installers for other applications. +; (To generate a new GUID, click Tools | Generate GUID inside the IDE.) +AppId={{4F7C0F81-A72A-451E-8AD8-696DBE75D645} +AppName={#MyAppName} +AppVersion={#MyAppVersion} +;AppVerName={#MyAppName} {#MyAppVersion} +AppPublisher={#MyAppPublisher} +AppPublisherURL={#MyAppURL} +AppSupportURL={#MyAppURL} +AppUpdatesURL={#MyAppURL} +DefaultDirName={pf}\{#MyAppName} +DefaultGroupName={#MyAppName} +LicenseFile=C:\MinGW\msys\1.0\home\build-chicken-iup\chicken-4.8.0.5\LICENSE +OutputBaseFilename=setup +Compression=lzma +SolidCompression=yes + +[Languages] +Name: "english"; MessagesFile: "compiler:Default.isl" + +[Tasks] +Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked + +[Files] +Source: "C:\chicken\bin\chicken.exe"; DestDir: "{app}"; Flags: ignoreversion +Source: "C:\chicken\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs +Source: "C:\MinGW\bin\libgcc_s_dw2-1.dll"; DestDir: "{app}"; Flags: ignoreversion +Source: "C:\MinGW\msys\1.0\home\build-chicken-iup\examples\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs +; NOTE: Don't use "Flags: ignoreversion" on any shared system files + +[Icons] +Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}" +Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon + +[Run] +Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent + +[Registry] +Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Control\Session Manager\Environment"; + ValueType: expandsz; ValueName: "Path"; ValueData: "{olddata};C:\chicken\bin;C:\chicken\lib" ADDED ref/chicken-iup.iss Index: ref/chicken-iup.iss ================================================================== --- /dev/null +++ ref/chicken-iup.iss @@ -0,0 +1,54 @@ +; Script generated by the Inno Setup Script Wizard. +; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES! + +;; SEE http://stackoverflow.com/questions/3304463/how-do-i-modify-the-path-environment-variable-when-running-an-inno-setup-install +;; For information on how to cleanly tweak the path. +;; Actual relevant sources are here: http://legroom.net/software/modpath + +[Setup] +; NOTE: The value of AppId uniquely identifies this application. +; Do not use the same AppId value in installers for other applications. +; (To generate a new GUID, click Tools | Generate GUID inside the IDE.) +AppId={{9052599F-B5C1-4617-AF81-C6E2F9AB8E8C} +AppName=chicken-iup +AppVersion=0.3 +;AppVerName=chicken-iup 0.2 +AppPublisher=Call/Cc +AppPublisherURL=http://www.call-cc.org +AppSupportURL=http://www.call-cc.org +AppUpdatesURL=http://www.call-cc.org +DefaultDirName=\chicken +DefaultGroupName=chicken-iup +LicenseFile=C:\MinGW\msys\1.0\home\build-chicken-iup\chicken-4.8.0.5\LICENSE +OutputBaseFilename=setup +Compression=lzma +SolidCompression=yes + +[Languages] +Name: "english"; MessagesFile: "compiler:Default.isl" + +[Tasks] +Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked + +[Files] +Source: "C:\chicken\bin\csi.exe"; DestDir: "{app}\bin"; Flags: ignoreversion +Source: "C:\chicken\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs +;Source: "C:\mylibs\iup\*"; DestDir: "{app}\bin"; Flags: ignoreversion recursesubdirs createallsubdirs +;Source: "C:\mylibs\ffcall\*"; DestDir: "{app}\bin"; Flags: ignoreversion recursesubdirs createallsubdirs +; NOTE: Don't use "Flags: ignoreversion" on any shared system files +Source: "C:\MinGW\bin\libgcc_s_dw2-1.dll"; DestDir: "{app}\bin"; +Source: "C:\MinGW\bin\libstdc++-6.dll"; DestDir: "{app}\bin"; +Source: "C:\MinGW\msys\1.0\home\build-chicken-iup\examples\*"; DestDir: "{app}\examples"; Flags: ignoreversion recursesubdirs createallsubdirs + +[Icons] +Name: "{group}\chicken-iup"; Filename: "{app}\bin\csi.exe" +Name: "{commondesktop}\chicken-iup"; Filename: "{app}\bin\csi.exe"; Tasks: desktopicon + +[Run] +Filename: "{app}\bin\csi.exe"; Description: "{cm:LaunchProgram,chicken-iup}"; Flags: nowait postinstall skipifsilent + +[Registry] +Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Control\Session Manager\Environment";ValueType: expandsz; ValueName: "Path"; ValueData: "{olddata};C:\chicken\bin;C:\chicken\lib" +Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Control\Session Manager\Environment";ValueType: expandsz; ValueName: "CHICKEN_PREFIX"; ValueData: "C:\chicken" +Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Control\Session Manager\Environment";ValueType: expandsz; ValueName: "CHICKEN_INSTALL_PREFIX"; ValueData: "C:\chicken\lib\chicken\6" + ADDED ref/chicken-iup.iss.mw Index: ref/chicken-iup.iss.mw ================================================================== --- /dev/null +++ ref/chicken-iup.iss.mw @@ -0,0 +1,54 @@ +; Script generated by the Inno Setup Script Wizard. +; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES! + +;; SEE http://stackoverflow.com/questions/3304463/how-do-i-modify-the-path-environment-variable-when-running-an-inno-setup-install +;; For information on how to cleanly tweak the path. +;; Actual relevant sources are here: http://legroom.net/software/modpath + +[Setup] +; NOTE: The value of AppId uniquely identifies this application. +; Do not use the same AppId value in installers for other applications. +; (To generate a new GUID, click Tools | Generate GUID inside the IDE.) +AppId={{9052599F-B5C1-4617-AF81-C6E2F9AB8E8C} +AppName=chicken-iup +AppVersion=0.3 +;AppVerName=chicken-iup 0.2 +AppPublisher=Call/Cc +AppPublisherURL=http://www.call-cc.org +AppSupportURL=http://www.call-cc.org +AppUpdatesURL=http://www.call-cc.org +DefaultDirName=\chicken +DefaultGroupName=chicken-iup +LicenseFile=C:\MinGW\msys\1.0\home\build-chicken-iup\chicken-4.8.0.5\LICENSE +OutputBaseFilename=setup +Compression=lzma +SolidCompression=yes + +[Languages] +Name: "english"; MessagesFile: "compiler:Default.isl" + +[Tasks] +Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked + +[Files] +Source: "C:\chicken\bin\csi.exe"; DestDir: "{app}\bin"; Flags: ignoreversion +Source: "C:\chicken\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs +;Source: "C:\mylibs\iup\*"; DestDir: "{app}\bin"; Flags: ignoreversion recursesubdirs createallsubdirs +;Source: "C:\mylibs\ffcall\*"; DestDir: "{app}\bin"; Flags: ignoreversion recursesubdirs createallsubdirs +; NOTE: Don't use "Flags: ignoreversion" on any shared system files +Source: "C:\MinGW\bin\libgcc_s_dw2-1.dll"; DestDir: "{app}\bin"; +Source: "C:\MinGW\bin\libstdc++-6.dll"; DestDir: "{app}\bin"; +Source: "C:\MinGW\msys\1.0\home\build-chicken-iup\examples\*"; DestDir: "{app}\examples"; Flags: ignoreversion recursesubdirs createallsubdirs + +[Icons] +Name: "{group}\chicken-iup"; Filename: "{app}\bin\csi.exe" +Name: "{commondesktop}\chicken-iup"; Filename: "{app}\bin\csi.exe"; Tasks: desktopicon + +[Run] +Filename: "{app}\bin\csi.exe"; Description: "{cm:LaunchProgram,chicken-iup}"; Flags: nowait postinstall skipifsilent + +[Registry] +Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Control\Session Manager\Environment";ValueType: expandsz; ValueName: "Path"; ValueData: "{olddata};C:\chicken\bin;C:\chicken\lib" +Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Control\Session Manager\Environment";ValueType: expandsz; ValueName: "CHICKEN_PREFIX"; ValueData: "C:\chicken" +Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Control\Session Manager\Environment";ValueType: expandsz; ValueName: "CHICKEN_INSTALL_PREFIX"; ValueData: "C:\chicken\lib\chicken\6" + ADDED scripts/mcgbuild.sh Index: scripts/mcgbuild.sh ================================================================== --- /dev/null +++ scripts/mcgbuild.sh @@ -0,0 +1,108 @@ +#!/bin/sh + +# ========================================================================== +# - USER CONFIGURATION ----------------------------------------------------- + +PREFIX=c:/chicken-iup + +FFCALL_SITE=http://www.haible.de/bruno/gnu +FFCALL_DEFAULT_VERSION=cvs + +#CHICKEN_SITE=http://code.call-cc.org/releases/4.9.0/chicken-4.9.0.1.tar.gz +CHICKEN_SITE=http://code.call-cc.org/releases +CHICKEN_DEFAULT_VERSION="4.9.0" +CHICKEN_DEFAULT_PATCHLEVEL=".1" + +IUP_SITE=http://sourceforge.net/projects +IUP_PLATFORM="Win32_dllw4" +IM_DEFAULT_VERSION="3.9" +CD_DEFAULT_VERSION="5.8.1" +IUP_DEFAULT_VERSION="3.13" + + +# ========================================================================== +# - AUTOMATIC CONFIGURATION ------------------------------------------------ + +STARTDIR=`pwd` + + +# ========================================================================== +# - BUILD FFCALL ----------------------------------------------------------- + +# if [ "x$FFCALL_VERSION" = "x" ]; then +# FFCALL_VERSION=${FFCALL_DEFAULT_VERSION} +# fi +# if [ "$FFCALL_VERSION" = "cvs" ]; then +# cvs -z3 -d:pserver:anonymous@cvs.savannah.gnu.org:/sources/libffcall co ffcall +# FFCALL_DIR=ffcall +# else +# wget ${FFCALL_SITE}/ffcall-${FFCALL_VERSION}.tar.gz +# tar zxvf ffcall-${FFCALL_VERSION}.tar.gz +# FFCALL_DIR=ffcall-${FFCALL_VERSION} +# fi +# +# cd ${FFCALL_DIR} +# ./configure --prefix=${PREFIX} +# make +# make install +# make clean +# +# cd ${STARTDIR} + + +# ========================================================================== +# - BUILD CHICKEN ---------------------------------------------------------- + +# if [ "x$CHICKEN_VERSION" = "x" ]; then +# CHICKEN_VERSION=${CHICKEN_DEFAULT_VERSION} +# CHICKEN_PATCHLEVEL=${CHICKEN_DEFAULT_PATCHLEVEL} +# fi +# CHICKEN_PKGNAME=chicken-${CHICKEN_VERSION}${CHICKEN_PATCHLEVEL} +# +# wget ${CHICKEN_SITE}/${CHICKEN_VERSION}/${CHICKEN_PKGNAME}.tar.gz +# md5_ok=`md5sum -c ${CHICKEN_PKGNAME}.md5 2>&1 |grep OK` +# if [ "x$md5_ok" = "x" ]; then +# echo "ERROR: Bad checksum for ${CHICKEN_PKGNAME}" +# exit 1 +# fi +# +# tar zxvf ${CHICKEN_PKGNAME}.tar.gz +# cd ${CHICKEN_PKGNAME} +# +# patch -p0 < ../0001-Disable-getc_unlocked.patch +# +# make PLATFORM=mingw-msys PREFIX=${PREFIX} +# make PLATFORM=mingw-msys PREFIX=${PREFIX} install +# make PLATFORM=mingw-msys clean +# +# cd ${STARTDIR} + + +# ========================================================================== +# - INSTALL IUP & RELATED BINARIES ----------------------------------------- + +if [ "x$IM_VERSION" = "x" ]; then + IM_VERSION=${IM_DEFAULT_VERSION} +fi +if [ "x$CD_VERSION" = "x" ]; then + CD_VERSION=${CD_DEFAULT_VERSION} +fi +if [ "x$IUP_VERSION" = "x" ]; then + IUP_VERSION=${IUP_DEFAULT_VERSION} +fi + +IM_LONGNAME="imtoolkit" +CD_LONGNAME="canvasdraw" + +wget ${IUP_SITE}/${IM_LONGNAME}/files/${IM_VERSION}/Windows%20Libraries/Dynamic/im-${IM_VERSION}_${IUP_PLATFORM}_lib.zip +wget ${IUP_SITE}/${CD_LONGNAME}/files/${CD_VERSION}/Windows%20Libraries/Dynamic/cd-${CD_VERSION}_${IUP_PLATFORM}_lib.zip +wget ${IUP_SITE}/iup/files/${IUP_VERSION}/Windows%20Libraries/Dynamic/iup-${IUP_VERSION}_${IUP_PLATFORM}_lib.zip + + + +# ========================================================================== +# -------------------------------------------------------------------------- +# ========================================================================== +# -------------------------------------------------------------------------- +# ========================================================================== +# -------------------------------------------------------------------------- DELETED setup-chicken-iup-alt.exe Index: setup-chicken-iup-alt.exe ================================================================== --- setup-chicken-iup-alt.exe +++ /dev/null cannot compute difference between binary files DELETED setup-chicken-iup.exe Index: setup-chicken-iup.exe ================================================================== --- setup-chicken-iup.exe +++ /dev/null cannot compute difference between binary files ADDED wget.exe Index: wget.exe ================================================================== --- /dev/null +++ wget.exe cannot compute difference between binary files