Commit Graph

365 Commits

Author SHA1 Message Date
Clinton Popetz
bb29b5f2bc Add XCOFF64 support.
bfd:
	* Makefile.am (coff64-rs6000.lo): New rule.
	* Makefile.in: Regenerate.
	* coff-rs6000.c (xcoff_mkobject, xcoff_copy_private_bfd_data,
	xcoff_is_local_label_name, xcoff_rtype2howto,
	xcoff_reloc_type_lookup, xcoff_slurp_armap, xcoff_archive_p,
	xcoff_read_ar_hdr, xcoff_openr_next_archived_file, xcoff_write_armap,
	xcoff_write_archive_contents): No longer static, and prefix with _bfd_.
	(NO_COFF_SYMBOLS): Define.
	(xcoff64_swap_sym_in, xcoff64_swap_sym_out, xcoff64_swap_aux_in,
	xcoff64_swap_aux_out): New functions; handle xcoff symbol tables
	internally.
	(MINUS_ONE): New macro.
	(xcoff_howto_tabl, xcoff_reloc_type_lookup): Add 64 bit POS
	relocation.
	(coff_SWAP_sym_in, coff_SWAP_sym_out, coff_SWAP_aux_in,
	coff_SWAP_aux_out): Map to the new functions.
	* coff64-rs6000.c: New file.
	* libcoff.h (bfd_coff_backend_data): Add new fields
	_bfd_coff_force_symnames_in_strings and
	_bfd_coff_debug_string_prefix_length.
	(bfd_coff_force_symnames_in_strings,
	bfd_coff_debug_string_prefix_length): New macros for above fields.
	* coffcode.h (coff_set_arch_mach_hook): Handle XCOFF64 magic.
	Set machine to 620 for XCOFF64.  Use bfd_coff_swap_sym_in instead
	of using coff_swap_sym_in directly.
	(FORCE_SYMNAMES_IN_STRINGS): New macro, defined for XCOFF64.
	(coff_set_flags) Set magic for XCOFF64.
	(coff_compute_section_file_positions): Add symbol name length to
	string section length if bfd_coff_debug_string_prefix_length is
	true.
	(coff_write_object_contents): Don't do reloc overflow for XCOFF64.
	(coff_slurp_line_table): Use bfd_coff_swap_lineno_in instead of
	using coff_swap_lineno_in directly.
	(bfd_coff_backend_data): Add _bfd_coff_force_symnames_in_strings
	and _bfd_coff_debug_string_prefix_length fields.
	* coffgen.c (coff_fix_symbol_name, coff_write_symbols): Force
	symbol names into strings table when
	bfd_coff_force_symnames_in_strings is true.
	* coffswap.h (MAX_SCNHDR_NRELOC, MAX_SCNHDR_NLNNO, GET_RELOC_VADDR,
	SET_RELOC_VADDR): New macros.
	(coff_swap_reloc_in, coff_swap_reloc_out): Use above macros.
	(coff_swap_aux_in, coff_swap_aux_out): Remove RS6000COFF_C
	code.
	(coff_swap_aouthdr_in, coff_swap_aouthdr_out): Handle XCOFF64
	changes within RS6000COFF_C specific code.
	(coff_swap_scnhdr_out): Use PUT_SCNHDR_NLNNO, PUT_SCNHDR_NRELOC,
	MAX_SCNHDR_NRELOC, and MAX_SCNHDR_NLNNO.
	* reloc.c (bfd_perform_relocation, bfd_install_relocation):
	Extend existing hack on target name.
	* xcofflink.c (XCOFF_XVECP): Extend existing hack on
	target name.
	* coff-tic54x.c (ticof): Keep up to date with new fields
	in bfd_coff_backend_data.
	* config.bfd: Add bfd_powerpc_64_arch to targ_arch and define
	targ_selvecs to include rs6000coff64_vec for rs6000.
	* configure.in: Add rs6000coff64_vec case.
 	* cpu-powerpc.c: New bfd_arch_info_type.

	gas:
	* as.c (parse_args): Allow md_parse_option to override -a listing
	option.
	* config/obj-coff.c (add_lineno): Change type of offset parameter
	from "int" to "bfd_vma."
	* config/tc-ppc.c (md_pseudo_table): Add "llong" and "machine."
	(ppc_mach, ppc_subseg_align, ppc_target_format): New.
	(ppc_change_csect): Align correctly for XCOFF64.
	(ppc_machine): New function, which discards "ppc_machine" line.
	(ppc_tc): Cons for 8 when code is 64 bit.
	(md_apply_fix3): Don't check operand->insert.  Handle 64 bit
	relocations.
	(md_parse_option): Handle -a64 and -a32.
	(ppc_xcoff64): New.
	* config/tc-ppc.h (TARGET_MACH): Define.
	(TARGET_FORMAT): Move to function.
	(SUB_SEGMENT_ALIGN): Use ppc_subseg_align.

	include:
	* include/coff/rs6k64.h: New file.

	opcodes:
	* configure.in: Add bfd_powerpc_64_arch.
	* disassemble.c (disassembler): Use print_insn_big_powerpc for
	64 bit code.
2000-04-26 15:09:44 +00:00
Christopher Faylor
3cac739aca Add another INTERNET_OPTION. 2000-04-26 15:04:53 +00:00
Christopher Faylor
55fc91b9d6 * exceptions.cc (interruptible): Allocate slightly more space for directory
name check.  Windows 95 seems to null-terminate the directory otherwise.
(interrupt_on_return): Issue a fatal error if we can't find the caller's stack.
* spawn.cc (find_exec): Accept a path_conv argument rather than a buffer so
that the caller can find things out about a translated path.
(perhaps_suffix): Ditto.
(spawn_guts): Allocate path_conv stuff here so that we can find out stuff about
the translated path (this is work in progress).
* environ.cc (environ_init): Accept an as-yet unused argument indicating
whether we were invoked from a cygwin parent or not.
(winenv): Ditto.
(posify): Accept an argument indicating whether the path has already been
translated.
* dlfcn.cc (check_access): Provide a path_conv buffer to find_exec.
* exec.cc (sexecvpe): Ditto.
* path.cc (path_conv::check): Rename from path_conv::path_conv.
(mount_item::getmntent): Recognize "Cygwin executable" bit.
(symlink_info::check): Remove debugging statements.
* path.h (class path_conv): Add iscygexec method.  Rewrite constructor to call
"check" method to allow multiple operations on a path_conv variable.
* pinfo.cc (pinfo_init): Pass argument to environ_init.
* shared.h: Bump PROC_MAGIC.
* winsup.h: Reflect above changes to function arguments.
* include/sys/mount.h: Add MOUNT_CYGWIN_EXEC type.
2000-04-26 05:13:32 +00:00
Corinna Vinschen
47eaa6c421 * syscalls.cc (stat_worker): Previous patch failed to stat
each drives root dir on 9X.
2000-04-25 19:39:05 +00:00
Mumit Khan
8017cc0edd 2000-04-25 Mumit Khan <khan@xraylith.wisc.edu>
* include/winspool.h: Add 2 more PRINTER_ATTRIBUTE_* macros.
2000-04-25 19:22:31 +00:00
Mumit Khan
84364d972c 2000-04-25 Martin Kotulla <martin-k@softmaker.de>
* include/ddeml.h (DdeCreateStringHandle{A,W}): Fix prototype.
	* include/shlobj.h (IShellLink{A,W}::GetPath): Fix prototype.
	* include/wingdi.h: Add LPFNDEVMODE and LPFNDEVCAPS callbacks.
	* include/winuser.h: Add WM_* macros. Add PCOPYDATASTRUCT typedef.
2000-04-25 19:13:51 +00:00
Corinna Vinschen
d6581f44d4 * fhandler.cc (fhandler_disk_file::open): Check for allow_ntsec
when determining exec flag.
        * path.cc (symlink_info::check): Remove call to get_file_attribute().
        * security.cc (read_sd): Rename, ditto for variables to conform
        to common naming convention. Use GetFileSecurity() instead of
        BackupRead() to avoid permission problems when reading ACLs.
        (write_sd): Same renaming as for read_sd().
        (alloc_sd): Change default permissions according to Linux permissions
        for group and world when write permission is set.
        * syscalls.cc (stat_worker): Avoid different permission problems
        when requesting file informations.
2000-04-25 16:31:14 +00:00
Corinna Vinschen
efadc1c152 Forgot ChangeLog 2000-04-25 08:51:40 +00:00
Corinna Vinschen
e77d29a973 * net.cc: Avoid a warning in declaration inet_network. 2000-04-25 08:50:22 +00:00
Christopher Faylor
698c627424 * fhandler_console.cc (fhandler_console::read): Detect extended keycode
information for Windows 9x so that function keys will work correctly.
2000-04-24 21:41:11 +00:00
DJ Delorie
046069e449 * net.cc (cygwin_inet_network): new function.
* cygwin.din (inet_network): new export
2000-04-24 15:44:11 +00:00
Eli Zaretskii
86f6bd9104 * djunpack.bat: New file.
* config/djgpp/README: Explain how to unpack using djunpack.bat.
2000-04-23 07:23:05 +00:00
Jeff Law
2d6fec0fc1 * hppa.h (pa_opcodes): New opcodes for PA2.0 wide mode
forms of ld/st{b,h,w,d} and fld/fst{w,d} (16-bit displacements).
        New operand types l,y,&,fe,fE,fx added to support above forms.
        (pa_opcodes): Replaced usage of 'x' as source/target for
        floating point double-word loads/stores with 'fx'.

Fr
2000-04-21 21:04:04 +00:00
Jim Wilson
4501dfbc42 IA-64 ELF support. 2000-04-21 20:22:23 +00:00
Richard Henderson
81588bd21b * config.sub (d30v): Add d30v as a basic machine type. 2000-04-21 17:22:35 +00:00
Christopher Faylor
7203adb1cc Fix handling of /.filename 2000-04-21 14:37:48 +00:00
Christopher Faylor
6b762a4ec6 * path.cc (normalize_posix_path): Previous two patches were still incorrect so
rewrite this function to deal with trailing dots.
(mount_info::conv_to_win32_path): Just check for '/' where appropriate.
Eliminate nofinalslash call since it is handled in normalize_posix_path now.
2000-04-21 05:32:19 +00:00
Christopher Faylor
60bebb0318 * exceptions.cc (handle_exceptions): Search further for stack info to
accomodate Windows 95.
2000-04-20 21:33:58 +00:00
Christopher Faylor
db64ab89f0 * path.cc (normalize_posix_path): Previous change failed to take root
access into account.
2000-04-20 20:42:14 +00:00
Corinna Vinschen
bf921462e7 * syscalls.cc (_link): Check new link path for trailing dot. 2000-04-20 13:52:41 +00:00
Christopher Faylor
d7aac2acf5 * fhandler.h (fhandler_base::hclose): New virtual method.
(fhandler_base::set_inheritance): Make this a method so that we can use the
appropriate close methods.
* fhandler.cc (fhandler_base::set_inheritance): Ditto.
* path.cc (normalize_posix_path): Eliminate /.  trailing path component.
2000-04-20 04:38:10 +00:00
Corinna Vinschen
f06a3648d5 * syscalls.cc (setuid): Allow switching user context after
successful call to ImpersonateLogedOnUser (NT only).
	(setgid): Ditto.
	(seteuid): Call setuid.
	(setegid): Call setgid.
2000-04-19 22:33:20 +00:00
Corinna Vinschen
ceba50edbe * uinfo.cc (internal_getlogin): Use NetGetDCName() instead
of NetGetAnyDCName().
2000-04-19 20:03:51 +00:00
Christopher Faylor
8c63f3b872 * configure.in: Change HEADER_SUBDIR to mingw32.
* configure: Regenerate.
2000-04-19 17:11:59 +00:00
Andrew Cagney
4a05c280a8 Pass MD5PROG to sub-makes when building .tar.bz2 archive. 2000-04-19 06:00:03 +00:00
DJ Delorie
ef6581f9ff * syscalls.cc (_rename): Try MoveFile() at first before
MoveFileEx(..., MOVEFILE_REPLACE_EXISTING).
2000-04-19 03:21:13 +00:00
DJ Delorie
7916b1efda don't put api internals in general tarball 2000-04-19 02:35:06 +00:00
DJ Delorie
ca271663ab add commands for building a doc kitchen-sink-tarball 2000-04-19 02:31:45 +00:00
DJ Delorie
05357ffef2 clean up SGML for latest version of jade/docbook 2000-04-19 00:55:19 +00:00
Christopher Faylor
25ba8f306f * dcrt0.cc (globify): Don't use \ quoting when apparently quoting a DOS path
spec, even within a quoted string.
2000-04-18 23:16:56 +00:00
Christopher Faylor
c845acffda * dcrt0.cc (globify): Don't use \ quoting when apparently quoting a DOS path
spec.
2000-04-18 21:28:45 +00:00
Tim Wall
e11ddfb02d Clean up load page support for tic54x. 2000-04-18 02:21:27 +00:00
DJ Delorie
2cf2f0980f * remove dependence on where pwd is 2000-04-18 00:37:04 +00:00
Jim Wilson
14be1d4417 Initial patches for IA-64 EFI (64-bit PE) support.
* pe.h (PEP64AOUTHDR): New header for PE+.
	(PEP64AOUTSZ): New macro.
	(IMAGE_SUBSYSTEM_UNKNOWN): New macro.
	(IMAGE_SUBSYSTEM_NATIVE): Ditto.
	(IMAGE_SUBSYSTEM_WINDOWS_GUI): Ditto.
	(IMAGE_SUBSYSTEM_WINDOWS_CUI): Ditto.
	(IMAGE_SUBSYSTEM_POSIX_CUI): Ditto.
	(IMAGE_SUBSYSTEM_WINDOWS_CE_GUI): Ditto.
	(IMAGE_SUBSYSTEM_EFI_APPLICATION): Ditto.
	(IMAGE_SUBSYSTEM_EFI_BOOT_SERVICE_DRIVER): Ditto.
	(IMAGE_SUBSYSTEM_EFI_RUNTIME_DRIVER): Ditto.
	* internal.h (PE_DEF_FILE_ALIGNMENT): Define only if not defined
	already.
	* ia64.h: New file.
2000-04-17 23:45:22 +00:00
Jeff Johnston
c87be3e4d6 Mon Apr 17 12:46:00 2000 Marek Michalkiewicz <marekm@linux.org.pl>
* libc/signal/signal.c (_signal_r) : Removed unused local variable temp.        * libc/stdio/findfp.c (std): Added declaration of flags and file.
        * libc/stdio/mktemp.c (_gettemp, _mkstemp_r, mkstemp): Added int
        return type.
        * libc/stdio/putchar.c (putchar): Added return statement.
        * libc/stdio/refill.c (lflush): Added correct parentheses.
        * libc/stdio/vfprintf.c (_VFPRINTF_R): Ditto.
        * libc/stdio/vfscanf.c (__svfscanf): Changed sprintf call which
        prints long value to use l qualifier.
        * libc/stdlib/dtoa.c (_dtoa_r): Added parentheses to remove warning
        messages and initialized local values: ilim, ilim1, and spec_case.
        * libc/stdlib/ecvtbuf.c (print_e): Removed unused variable dp.
        * libc/stdlib/mbctype.h (_issjis1, _issjis2): Added parentheses.
        * libc/stdlib/mprec.c: Ditto.
        * libc/stdlib/setenv_r.c: Ditto.
        * libc/stdlib/strtod.c: Ditto.
        * libc/stdlib/strtol.c: Ditto.
        * libc/stdlib/strtoul.c: Ditto.
        * libm/common/sf_expm1.c: Added curly braces to if else clauses.
        * libm/common/sf_log1p.c: Ditto.
        * libm/common/sf_scalbn.c: Ditto.
        * libm/math/ef_log.c: Ditto.
2000-04-17 17:10:18 +00:00
Christopher Faylor
08ce80eac2 Remove obsolete setting. 2000-04-16 23:00:38 +00:00
Christopher Faylor
fbf23e34c5 * init.cc (dll_entry): Use better check for determining when to set thread
specific stuff.
* syscalls.cc (_unlink): Continue with chmod'ing file even if DELETE_ON_CLOSE
succeeds, if file still exists.
2000-04-16 22:57:05 +00:00
Corinna Vinschen
11f5b06579 * libc/posix/execvp.c (execvp): Check path for
trailing slash.
2000-04-16 10:53:02 +00:00
Corinna Vinschen
0ac91154fc * mkpasswd.c (main): Use GetDCName instead of GetAnyDCName.
Don't create extra passwd entry for administrators group
        if local_groups is set.
        (usage): Change usage text slightly.
        (enum_users): Loop while ERROR_MORE_DATA is returned.
        (enum_local_groups): Ditto.
        * mkgroup.c (enum_local_groups): Ditto.
        (enum_groups) Ditto.
        (usage): Change usage text slightly.
2000-04-15 22:30:49 +00:00
Christopher Faylor
eed11cf2bb * fhandler_console.cc (keytable): Add support for keypad 5 key, which MS seems
to think is equivalent to VK_CLEAR.
* debug.cc (thread_stub): Eliminate initialization of reent stuff.
* init.cc (dll_entry): Move it here.
2000-04-15 03:52:24 +00:00
H.J. Lu
405713cfb3 2000-04-14 H.J. Lu <hjl@gnu.org>
* common.h (ELFOSABI_TRUE64): Renamed to ELFOSABI_TRU64.
2000-04-14 19:32:44 +00:00
H.J. Lu
f234d21a3c 2000-04-14 H.J. Lu <hjl@gnu.org>
* common.h (ELFOSABI_NETBSD): Defined.
	(ELFOSABI_HURD): Likewise.
	(ELFOSABI_SOLARIS): Likewise.
	(ELFOSABI_MONTEREY): Likewise.
	(ELFOSABI_IRIX): Likewise.
	(ELFOSABI_FREEBSD): Likewise.
	(ELFOSABI_TRUE64): Likewise.
2000-04-14 19:14:15 +00:00
Christopher Faylor
2cf9359a8a * dcrt0.cc (insert_file): Avoid freeing previously allocated argument list.
* path.cc (symlink_info::check): Rename from symlink_check_one.  Use new
symlink_info struct for communication.
(path_conv::path_conv): Use symlink_info structure for communication with
symlink_info::check.  Fix typo which resulted in symbolic links always being
resolved.
(readlink): Use stat_suffixes array when resolving a link.
* syscalls.cc (stat_suffixes): Make global.
2000-04-13 22:43:48 +00:00
Corinna Vinschen
8a06963c1c * include/cygwin/version.h: Bump minor api to reflect export change. 2000-04-13 18:52:12 +00:00
Corinna Vinschen
b53881fd27 * cygwin.din: Add symbol for `lacl'.
* security.cc (ReadSD): Add debug output.
	(acl_worker):  New static function.
	(acl): Call acl_worker now.
	(lacl): New function.
	(facl): Call acl_worker now.
	* include/cygwin/acl.h: Add prototype for `lacl'.
2000-04-13 06:53:24 +00:00
Corinna Vinschen
a4bf66dd75 * path.cc (conv_to_win32_path): Detect a win32 path
if path contains backslashes.
2000-04-13 06:48:14 +00:00
Christopher Faylor
418068d4b0 * cygpath.cc (main): Add -a -o and -c options.
(doit): Ditto.
2000-04-13 05:23:30 +00:00
Andrew Cagney
ac5ec41ef6 * Makefile.in (gdb-taz): New target. GDB specific archive.
(do-md5sum): New target.
(MD5PROG): Define.
(PACKAGE): Default to TOOL.
(VER): Default to a shell script.
(taz): Rewrite target.  Move real work to do-proto-toplev.  Include
md5 checksum generation.
(do-proto-toplev): New target. Create $(PACKAGE)-$(VER) link.
(do-tar-bz2): Delete creation of $(PACKAGE)-$(VER) link.
(gdb.tar.bz2, dejagnu.tar.bz2, gdb+dejagnu.tar.bz2,
insight.tar.bz2): Use gdb-taz to create archive.
2000-04-13 02:17:35 +00:00
Alan Modra
88adca8b0e Remove U suffix from constants for K&R compilers.
Fix a couple of 64 bit nits.
2000-04-13 01:08:05 +00:00
Christopher Faylor
7ef25eb606 Fix typo. 2000-04-13 01:00:59 +00:00